Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 17 additions & 17 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<img width="640" alt="Agently" src="https://github.com/user-attachments/assets/c645d031-c8b0-4dba-a515-9d7a4b0a6881" />

# Agently 4.1.4.3 - AI Application Runtime Framework
# Agently 4.1.4.4 - AI Application Runtime Framework

> Build AI service backends with structured outputs, observable Actions, runtime Skills, MCP capabilities, process streams, and recoverable workflows.

Expand Down Expand Up @@ -32,14 +32,14 @@ Agently is for teams moving from "the model can do it once" to "the application

The main design question is simple: how do you keep model behavior useful while still giving application code stable contracts, observable execution, and restart-safe workflow boundaries?

Agently 4.1.4.3 is a structured-output compatibility patch over the 4.1.4.2
owner-boundary release. Direct Pydantic v2 `BaseModel` classes now work as
first-class `.output(...)` contracts for `ModelRequest` and `AgentExecution`,
including nested models, while the 4.1.4.2 runtime ownership boundaries remain
unchanged. Read the
[4.1.4.3 Release Notes](docs/en/development/release-notes-4.1.4.3.md),
[4.1.4 Release Notes](docs/en/development/release-notes-4.1.4.md), and
[4.1.3.9 Release Notes](docs/en/development/release-notes-4.1.3.9.md) for the
Agently 4.1.4.4 strengthens Pydantic field-constraint prompting and correction
retries, adds recovery-aware TriggerFlow snapshot projection and bounded local
snapshot retention, and moves default release validation away from local
Ollama dependencies. The 4.1.4.2 runtime ownership boundaries and companion
protocols remain unchanged. Read the
[4.1.4.4 Release Notes](docs/en/development/release-notes-4.1.4.4.md),
[4.1.4.3 Release Notes](docs/en/development/release-notes-4.1.4.3.md), and
[4.1.4 Release Notes](docs/en/development/release-notes-4.1.4.md) for the
current release and upgrade path.

## Why Agently
Expand All @@ -48,7 +48,7 @@ Many AI frameworks are strong at exploration or at assembling broad integration

Agently is a good fit when you care about:

- **AI services should be runtime executions, not prompt glue** - `AgentExecution` owns one run's prompt, strategy, Actions, Skill bindings, process stream, TaskContext evidence, and result views across direct, flat, and TaskBoard strategies. Read [4.1.4.3 Release Notes](docs/en/development/release-notes-4.1.4.3.md), [4.1.4 Release Notes](docs/en/development/release-notes-4.1.4.md), and [Agent Auto Orchestration examples](examples/agent_auto_orchestration/).
- **AI services should be runtime executions, not prompt glue** - `AgentExecution` owns one run's prompt, strategy, Actions, Skill bindings, process stream, TaskContext evidence, and result views across direct, flat, and TaskBoard strategies. Read [4.1.4.4 Release Notes](docs/en/development/release-notes-4.1.4.4.md), [4.1.4 Release Notes](docs/en/development/release-notes-4.1.4.md), and [Agent Auto Orchestration examples](examples/agent_auto_orchestration/).
- **Model switching should not rewrite business logic** - Agently normalizes provider setup, prompt slots, response parsing, action execution, and response reading into one request/runtime contract. Read [Model Setup](docs/en/start/model-setup.md), [Models Overview](docs/en/models/overview.md), and [Requests Overview](docs/en/requests/overview.md).
- **Structured output should be a framework guarantee, not only a provider feature** - `.output(...)` schemas, required field extraction, parser feedback, retries, `ensure_keys`, `ensure_all_keys`, and validation handlers work together inside Agently. Read [Schema as Prompt](docs/en/requests/schema-as-prompt.md), [Output Control](docs/en/requests/output-control.md), and examples in [`examples/basic/`](examples/basic/).
- **Streaming should expose structure before the final token** - `instant` mode lets consumers react to structured fields while the model is still streaming, which is useful for UI updates, SSE routes, and workflow signals. Read [Model Response](docs/en/requests/model-response.md), [FastAPI Service Exposure](docs/en/services/fastapi.md), and [`examples/fastapi/`](examples/fastapi/).
Expand All @@ -60,7 +60,7 @@ Agently is a good fit when you care about:
- **Common model-app patterns should be composable** - router, To-Do/dependency execution, planning, reflection, evaluator/reviser, and multi-agent collaboration can be built from the same request/action/signal primitives. Read [Playbooks](docs/en/playbooks/overview.md), [TriggerFlow Model Integration](docs/en/triggerflow/model-integration.md), and [`examples/step_by_step/`](examples/step_by_step/).
- **Services should keep clean project boundaries** - async APIs, FastAPI helpers, settings files, prompt files, DevTools observation, and companion coding-agent skills fit non-trivial projects. Read [Project Framework](docs/en/start/project-framework.md), [FastAPI Service Exposure](docs/en/services/fastapi.md), and [Observability](docs/en/observability/overview.md).

Current framework version: `4.1.4.3`.
Current framework version: `4.1.4.4`.

Python: `>=3.10`.

Expand Down Expand Up @@ -208,7 +208,7 @@ Prompts are composed from named slots. That keeps application intent, constraint
result = (
agent
.role("You are a concise release-note writer.")
.info({"version": "4.1.4.3", "audience": "framework users"})
.info({"version": "4.1.4.4", "audience": "framework users"})
.instruct("Return only facts grounded in the input.")
.input("Summarize this release line for an engineering changelog.")
.output({
Expand Down Expand Up @@ -346,7 +346,7 @@ The older `tool_func` / `use_tools` / `use_mcp` / `use_sandbox` family remains a

### 5. Runtime Skills

Skills are reusable task guidance packages. In 4.1.4.3, `SkillLibrary` owns
Skills are reusable task guidance packages. In 4.1.4.4, `SkillLibrary` owns
immutable installed revisions, AgentExecution owns selection and exact-revision
binding, and TaskContext owns progressive disclosure. `agent.use_skills(...)`
is the normal candidate-binding surface; `agent.require_skills(...)` binds a
Expand Down Expand Up @@ -517,7 +517,7 @@ pip install agently-devtools
agently-devtools init my_project
```

Agently 4.1.4.3 recommends `agently-devtools >=0.1.10,<0.2.0`.
Agently 4.1.4.4 recommends `agently-devtools >=0.1.10,<0.2.0`.

## Architecture

Expand Down Expand Up @@ -692,7 +692,7 @@ Agently-Skills gives coding agents current Agently implementation guidance.
- Repository: https://github.com/AgentEra/Agently-Skills
- Current catalog generation: `v2`
- Recommended bundle: `app`
- Agently 4.1.4.3 compatibility: Skills authoring protocol `agently-skills.authoring.v2`
- Agently 4.1.4.4 compatibility: Skills authoring protocol `agently-skills.authoring.v2`

Use it when asking Codex, Claude Code, Cursor, or another coding agent to implement Agently patterns.

Expand Down Expand Up @@ -767,8 +767,8 @@ Use the async request APIs directly or wrap agents, requests, generators, Trigge

## Compatibility Notes

- The current package version is `4.1.4.3`.
- The current release manifest is `compatibility/releases/4.1.4.3.json`.
- The current package version is `4.1.4.4`.
- The current release manifest is `compatibility/releases/4.1.4.4.json`.
- Development-line planning belongs in `compatibility/in-development.json`; do not treat planned future versions as released.
- `AgentExecutionResult.get_data()` returns business data; callers that need status, TaskBoard, diagnostics, or other route/task internals use `get_full_data()`.
- An explicitly captured `AgentExecution` represents one run. Create a fresh execution for the next request after it starts.
Expand Down
31 changes: 15 additions & 16 deletions README_CN.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<img width="640" alt="Agently" src="https://github.com/user-attachments/assets/c645d031-c8b0-4dba-a515-9d7a4b0a6881" />

# Agently 4.1.4.3 - AI 应用运行时框架
# Agently 4.1.4.4 - AI 应用运行时框架

> 构建具备结构化输出、可观测 Actions、运行时 Skills、MCP 能力、过程流和可恢复工作流的 AI 服务后端。

Expand Down Expand Up @@ -32,13 +32,12 @@ Agently 面向的是正在从“模型偶尔能做对”走向“应用必须稳

核心设计问题是:怎样保留模型能力,同时让应用代码拥有稳定契约、可观测执行和可重启的工作流边界?

Agently 4.1.4.3 是建立在 4.1.4.2 owner-boundary release 上的结构化输出兼容性
补丁。Pydantic v2 `BaseModel` 类型现在可以直接作为 `ModelRequest` 和
`AgentExecution` 的 `.output(...)` 契约,并支持嵌套模型;4.1.4.2 的运行时所有权
边界保持不变。阅读
[4.1.4.3 Release Notes](docs/cn/development/release-notes-4.1.4.3.md)、
[4.1.4 Release Notes](docs/cn/development/release-notes-4.1.4.md) 和
[4.1.3.9 Release Notes](docs/cn/development/release-notes-4.1.3.9.md)
Agently 4.1.4.4 加强了 Pydantic 字段约束提示与修正重试,增加具备恢复语义的
TriggerFlow 快照投影和有界本地快照保留,并让默认发布校验不再依赖本地
Ollama。4.1.4.2 的运行时所有权边界和 companion protocol 保持不变。阅读
[4.1.4.4 Release Notes](docs/cn/development/release-notes-4.1.4.4.md)、
[4.1.4.3 Release Notes](docs/cn/development/release-notes-4.1.4.3.md) 和
[4.1.4 Release Notes](docs/cn/development/release-notes-4.1.4.md)
了解当前发布与升级路径。

## 为什么选择 Agently
Expand All @@ -47,7 +46,7 @@ Agently 4.1.4.3 是建立在 4.1.4.2 owner-boundary release 上的结构化输

当你关心这些问题时,Agently 会比较合适:

- **AI 服务应该是运行时执行,不是 prompt glue** - `AgentExecution` 统一管理单次运行的 Prompt、strategy、Actions、Skill bindings、process stream、TaskContext evidence 和 result views,覆盖 direct、flat、TaskBoard strategy。阅读 [4.1.4.3 Release Notes](docs/cn/development/release-notes-4.1.4.3.md)、[4.1.4 Release Notes](docs/cn/development/release-notes-4.1.4.md) 和 [Agent Auto Orchestration 示例](examples/agent_auto_orchestration/)。
- **AI 服务应该是运行时执行,不是 prompt glue** - `AgentExecution` 统一管理单次运行的 Prompt、strategy、Actions、Skill bindings、process stream、TaskContext evidence 和 result views,覆盖 direct、flat、TaskBoard strategy。阅读 [4.1.4.4 Release Notes](docs/cn/development/release-notes-4.1.4.4.md)、[4.1.4 Release Notes](docs/cn/development/release-notes-4.1.4.md) 和 [Agent Auto Orchestration 示例](examples/agent_auto_orchestration/)。
- **换模型不应重写业务逻辑** - Agently 把 provider setup、Prompt 槽位、响应解析、Action 执行和响应读取归一到同一套 request/runtime contract。阅读 [模型设置](docs/cn/start/model-setup.md)、[模型概览](docs/cn/models/overview.md) 和 [Requests 概览](docs/cn/requests/overview.md)。
- **结构化输出应是框架保障,不只是 provider 能力** - `.output(...)` schema、必填字段提取、parser feedback、重试、`ensure_keys`、`ensure_all_keys` 和 validation handlers 在 Agently 内部协同工作。阅读 [Schema as Prompt](docs/cn/requests/schema-as-prompt.md)、[输出控制](docs/cn/requests/output-control.md) 和 [`examples/basic/`](examples/basic/)。
- **流式输出应在最后一个 token 前暴露结构** - `instant` mode 允许消费者在模型仍在流式输出时响应结构化字段,适合 UI 更新、SSE routes 和 workflow signals。阅读 [模型响应](docs/cn/requests/model-response.md)、[FastAPI 服务封装](docs/cn/services/fastapi.md) 和 [`examples/fastapi/`](examples/fastapi/)。
Expand All @@ -59,7 +58,7 @@ Agently 4.1.4.3 是建立在 4.1.4.2 owner-boundary release 上的结构化输
- **常见模型应用模式应该可组合** - router、To-Do/dependency execution、planning、reflection、evaluator/reviser 和多 Agent 协作,都可以由同一套 request/action/signal primitives 组合出来。阅读 [Playbooks](docs/cn/playbooks/overview.md)、[TriggerFlow 模型集成](docs/cn/triggerflow/model-integration.md) 和 [`examples/step_by_step/`](examples/step_by_step/)。
- **服务应保持清晰项目边界** - async API、FastAPI helpers、settings 文件、prompt 文件、DevTools 观测和 companion coding-agent skills 适合非一次性项目。阅读 [项目结构](docs/cn/start/project-framework.md)、[FastAPI 服务封装](docs/cn/services/fastapi.md) 和 [观测概览](docs/cn/observability/overview.md)。

当前框架版本:`4.1.4.3`。
当前框架版本:`4.1.4.4`。

Python:`>=3.10`。

Expand Down Expand Up @@ -206,7 +205,7 @@ Prompt 由命名槽位组成。这样应用意图、约束、上下文和输出
result = (
agent
.role("你是简洁的 release note 作者。")
.info({"version": "4.1.4.3", "audience": "framework users"})
.info({"version": "4.1.4.4", "audience": "framework users"})
.instruct("只基于输入事实作答。")
.input("为工程 changelog 总结这个发布线。")
.output({
Expand Down Expand Up @@ -341,7 +340,7 @@ raw = agent.action.read_action_artifact(

### 5. Runtime Skills

Skills 是可复用的任务指导包。在 4.1.4.3 中,`SkillLibrary` 负责不可变的已安装
Skills 是可复用的任务指导包。在 4.1.4.4 中,`SkillLibrary` 负责不可变的已安装
revision,AgentExecution 负责选择和精确 revision binding,TaskContext 负责渐进
disclosure。`agent.use_skills(...)` 是普通候选绑定入口;已知精确 revision 时使用
`agent.require_skills(...)`。`Agently.skills_executor` 只保留安装、检查、context
Expand Down Expand Up @@ -503,7 +502,7 @@ pip install agently-devtools
agently-devtools init my_project
```

Agently 4.1.4.3 推荐 `agently-devtools >=0.1.10,<0.2.0`。
Agently 4.1.4.4 推荐 `agently-devtools >=0.1.10,<0.2.0`。

## 架构

Expand Down Expand Up @@ -678,7 +677,7 @@ Agently-Skills 为 coding agent 提供当前 Agently 实现指导。
- Repository: https://github.com/AgentEra/Agently-Skills
- 当前 catalog generation: `v2`
- 推荐 bundle: `app`
- Agently 4.1.4.3 compatibility: Skills authoring protocol `agently-skills.authoring.v2`
- Agently 4.1.4.4 compatibility: Skills authoring protocol `agently-skills.authoring.v2`

当你让 Codex、Claude Code、Cursor 或其他 coding agent 实现 Agently 模式时,应使用它。

Expand Down Expand Up @@ -753,8 +752,8 @@ CrewAI 和 AutoGen 在以 agent 协作为核心的设计里很强。Agently 是

## 兼容说明

- 当前 package version 是 `4.1.4.3`。
- 当前 release manifest 是 `compatibility/releases/4.1.4.3.json`。
- 当前 package version 是 `4.1.4.4`。
- 当前 release manifest 是 `compatibility/releases/4.1.4.4.json`。
- 开发线计划写入 `compatibility/in-development.json`;不要把未来计划版本当作已发布版本。
- `AgentExecutionResult.get_data()` 返回业务数据;需要 status、TaskBoard、diagnostics 或其他 route/task 内部信息时使用 `get_full_data()`。
- 显式捕获的 `AgentExecution` 代表一次运行;启动后,下一次请求应创建新的 execution。
Expand Down
Loading