docs: rename s19 to integrated harness

This commit is contained in:
Haoran
2026-07-31 03:35:17 +08:00
parent 2d69019342
commit 4a14529774
28 changed files with 70 additions and 70 deletions

View File

@@ -262,7 +262,7 @@ def agent_loop(messages):
| 旧 s10 | 現行 s15 | Team Protocols | | 旧 s10 | 現行 s15 | Team Protocols |
| 旧 s11 | 現行 s16 | Autonomous Agents | | 旧 s11 | 現行 s16 | Autonomous Agents |
| 旧 s12 | 現行 s17 | Worktree Isolation | | 旧 s12 | 現行 s17 | Worktree Isolation |
| 現行版のみ | s03、s04、s09、s10、s11、s14、s18、s19、s20、s21 | Permission、Hooks、Memory、Context Assembly、Error Recovery、Cron、MCP、Comprehensive Agent、Workflow Runtime、Goal Loop | | 現行版のみ | s03、s04、s09、s10、s11、s14、s18、s19、s20、s21 | Permission、Hooks、Memory、Context Assembly、Error Recovery、Cron、MCP、Integrated Harness、Workflow Runtime、Goal Loop |
## コースの範囲 ## コースの範囲
@@ -335,7 +335,7 @@ flowchart TD
S5["<b>第5段階複数 Agent の協作</b><br/>━━━━━━━━━━━━━<br/><b>s15 Agent Teams</b><br/>└─ チームメイト + 配信 + プロトコル<br/><br/><b>s16 Autonomous Agents</b><br/>└─ 実行可能な仕事をボードから認領<br/><br/><b>s17 Worktree Isolation</b><br/>└─ 別ディレクトリで作業"]:::stage5 S5["<b>第5段階複数 Agent の協作</b><br/>━━━━━━━━━━━━━<br/><b>s15 Agent Teams</b><br/>└─ チームメイト + 配信 + プロトコル<br/><br/><b>s16 Autonomous Agents</b><br/>└─ 実行可能な仕事をボードから認領<br/><br/><b>s17 Worktree Isolation</b><br/>└─ 別ディレクトリで作業"]:::stage5
S6["<b>第6段階外部能力と統合</b><br/>━━━━━━━━━━━━━<br/><b>s07 Skill Loading</b><br/>└─ スキルを必要時に展開<br/><br/><b>s18 MCP Plugin</b><br/>└─ 外部ツールを同じプールへ<br/><br/><b>s19 Comprehensive Agent</b><br/>└─ すべてを1つのループへ"]:::stage6 S6["<b>第6段階外部能力と統合</b><br/>━━━━━━━━━━━━━<br/><b>s07 Skill Loading</b><br/>└─ スキルを必要時に展開<br/><br/><b>s18 MCP Plugin</b><br/>└─ 外部ツールを同じプールへ<br/><br/><b>s19 Integrated Harness</b><br/>└─ すべてを1つのループへ"]:::stage6
S4 ==> S5 ==> S6 S4 ==> S5 ==> S6
end end
@@ -375,7 +375,7 @@ flowchart TD
| [s16](./s16_autonomous_agents/) | Autonomous Agents | タスクボード走査 / 原子的認領 / 自己組織化 | | [s16](./s16_autonomous_agents/) | Autonomous Agents | タスクボード走査 / 原子的認領 / 自己組織化 |
| [s17](./s17_worktree_isolation/) | Worktree Isolation | `WorktreeRecord` / タスク-ディレクトリ紐付け | | [s17](./s17_worktree_isolation/) | Worktree Isolation | `WorktreeRecord` / タスク-ディレクトリ紐付け |
| [s18](./s18_mcp_plugin/) | MCP Plugin | ツール発見 / 名前空間 / ツールプール組み立て | | [s18](./s18_mcp_plugin/) | MCP Plugin | ツール発見 / 名前空間 / ツールプール組み立て |
| [s19](./s19_comprehensive/) | Comprehensive Agent | すべての仕組みを 1 つのループへ | | [s19](./s19_comprehensive/) | Integrated Harness | すべての仕組みを 1 つのループへ |
| [s20](./s20_workflow_runtime/) | Workflow Runtime | スクリプト編成 / バックグラウンド実行 / ジャーナル再開 | | [s20](./s20_workflow_runtime/) | Workflow Runtime | スクリプト編成 / バックグラウンド実行 / ジャーナル再開 |
| [s21](./s21_goal_loop/) | Goal Loop | 目標ゲート / 信頼できる証拠 / 自動継続 | | [s21](./s21_goal_loop/) | Goal Loop | 目標ゲート / 信頼できる証拠 / 自動継続 |

View File

@@ -198,7 +198,7 @@ Claude Code = 一个 agent loop
> >
> **s18** &nbsp; *"能力不够? 插上 MCP"* &mdash; 把外部工具接进同一个工具池 > **s18** &nbsp; *"能力不够? 插上 MCP"* &mdash; 把外部工具接进同一个工具池
> >
> **s19** &nbsp; *"机制很多,循环一个"* &mdash; 前面所有机制回到一个完整 harness > **s19** &nbsp; *"机制很多,循环一个"* &mdash; 前面所有机制集成到同一个 harness
> >
> **s20** &nbsp; *"编排形状固定时,就把它写进代码"* &mdash; 可恢复 journal 支撑确定性 workflow > **s20** &nbsp; *"编排形状固定时,就把它写进代码"* &mdash; 可恢复 journal 支撑确定性 workflow
> >
@@ -262,7 +262,7 @@ def agent_loop(messages):
| 旧 s10 | 新 s15 | Team Protocols | | 旧 s10 | 新 s15 | Team Protocols |
| 旧 s11 | 新 s16 | Autonomous Agents | | 旧 s11 | 新 s16 | Autonomous Agents |
| 旧 s12 | 新 s17 | Worktree Isolation | | 旧 s12 | 新 s17 | Worktree Isolation |
| 新版新增 | s03、s04、s09、s10、s11、s14、s18、s19、s20、s21 | Permission、Hooks、Memory、Context Assembly、Error Recovery、Cron、MCP、Comprehensive Agent、Workflow Runtime、Goal Loop | | 新版新增 | s03、s04、s09、s10、s11、s14、s18、s19、s20、s21 | Permission、Hooks、Memory、Context Assembly、Error Recovery、Cron、MCP、Agent Harness 集成、Workflow Runtime、Goal Loop |
## 课程边界 ## 课程边界
@@ -335,7 +335,7 @@ flowchart TD
S5["<b>第五阶段:让多个 Agent 协作</b><br/>━━━━━━━━━━━━━<br/><b>s15 Agent Teams</b><br/>└─ 队友 + 消息投递 + 协作协议<br/><br/><b>s16 Autonomous Agents</b><br/>└─ 自己看板认领就绪任务<br/><br/><b>s17 Worktree Isolation</b><br/>└─ 隔离目录"]:::stage5 S5["<b>第五阶段:让多个 Agent 协作</b><br/>━━━━━━━━━━━━━<br/><b>s15 Agent Teams</b><br/>└─ 队友 + 消息投递 + 协作协议<br/><br/><b>s16 Autonomous Agents</b><br/>└─ 自己看板认领就绪任务<br/><br/><b>s17 Worktree Isolation</b><br/>└─ 隔离目录"]:::stage5
S6["<b>第六阶段:接外部能力合体</b><br/>━━━━━━━━━━━━━<br/><b>s07 Skill Loading</b><br/>└─ 技能按需展开<br/><br/><b>s18 MCP Plugin</b><br/>└─ 外部接进工具池<br/><br/><b>s19 Comprehensive Agent</b><br/>└─ 全机制回单循环"]:::stage6 S6["<b>第六阶段:接外部能力合体</b><br/>━━━━━━━━━━━━━<br/><b>s07 Skill Loading</b><br/>└─ 技能按需展开<br/><br/><b>s18 MCP Plugin</b><br/>└─ 外部接进工具池<br/><br/><b>s19 Agent Harness 集成</b><br/>└─ 全机制回单循环"]:::stage6
S4 ==> S5 ==> S6 S4 ==> S5 ==> S6
end end
@@ -376,7 +376,7 @@ flowchart TD
| [s16](./s16_autonomous_agents/) | Autonomous Agents | 扫描任务板 / 原子认领 / 自组织 | | [s16](./s16_autonomous_agents/) | Autonomous Agents | 扫描任务板 / 原子认领 / 自组织 |
| [s17](./s17_worktree_isolation/) | Worktree Isolation | `WorktreeRecord` / 任务-目录绑定 | | [s17](./s17_worktree_isolation/) | Worktree Isolation | `WorktreeRecord` / 任务-目录绑定 |
| [s18](./s18_mcp_plugin/) | MCP Plugin | 工具发现 / 命名空间 / 工具池组装 | | [s18](./s18_mcp_plugin/) | MCP Plugin | 工具发现 / 命名空间 / 工具池组装 |
| [s19](./s19_comprehensive/) | Comprehensive Agent | 全部机制归到一个循环 | | [s19](./s19_comprehensive/) | Agent Harness 集成 | 全部机制归到一个循环 |
| [s20](./s20_workflow_runtime/) | Workflow Runtime | 脚本编排 / 后台运行 / journal 续跑 | | [s20](./s20_workflow_runtime/) | Workflow Runtime | 脚本编排 / 后台运行 / journal 续跑 |
| [s21](./s21_goal_loop/) | Goal Loop | 目标闸门 / 可信证据 / 自动续轮 | | [s21](./s21_goal_loop/) | Goal Loop | 目标闸门 / 可信证据 / 自动续轮 |

View File

@@ -190,7 +190,7 @@ If you are starting now, read the root-level `s01_agent_loop/` through `s21_goal
| old s10 | new s15 | Team Protocols | | old s10 | new s15 | Team Protocols |
| old s11 | new s16 | Autonomous Agents | | old s11 | new s16 | Autonomous Agents |
| old s12 | new s17 | Worktree Isolation | | old s12 | new s17 | Worktree Isolation |
| new only | s03, s04, s09, s10, s11, s14, s18, s19, s20, s21 | Permission, Hooks, Memory, Context Assembly, Error Recovery, Cron, MCP, Comprehensive Agent, Workflow Runtime, Goal Loop | | new only | s03, s04, s09, s10, s11, s14, s18, s19, s20, s21 | Permission, Hooks, Memory, Context Assembly, Error Recovery, Cron, MCP, Integrated Harness, Workflow Runtime, Goal Loop |
--- ---
@@ -240,7 +240,7 @@ This is a 0-to-1 harness engineering course. Each chapter isolates one mechanism
> >
> **s18** &nbsp; *"Not enough capability? Plug in more via MCP"* &mdash; connect external tools into the same tool pool > **s18** &nbsp; *"Not enough capability? Plug in more via MCP"* &mdash; connect external tools into the same tool pool
> >
> **s19** &nbsp; *"Many mechanisms, one loop"* &mdash; all previous mechanisms return to one complete harness > **s19** &nbsp; *"Many mechanisms, one loop"* &mdash; all previous mechanisms return to one integrated harness
> >
> **s20** &nbsp; *"When the orchestration shape is fixed, put it in code"* &mdash; deterministic workflows with resumable journals > **s20** &nbsp; *"When the orchestration shape is fixed, put it in code"* &mdash; deterministic workflows with resumable journals
> >
@@ -284,7 +284,7 @@ flowchart TD
S5["<b>5. Coordinate many Agents</b><br/>━━━━━━━━━━━━━<br/><b>s15 Agent Teams</b><br/>└─ teammates + delivery + protocols<br/><br/><b>s16 Autonomous Agents</b><br/>└─ claim ready work from the board<br/><br/><b>s17 Worktree Isolation</b><br/>└─ separate directories"]:::stage5 S5["<b>5. Coordinate many Agents</b><br/>━━━━━━━━━━━━━<br/><b>s15 Agent Teams</b><br/>└─ teammates + delivery + protocols<br/><br/><b>s16 Autonomous Agents</b><br/>└─ claim ready work from the board<br/><br/><b>s17 Worktree Isolation</b><br/>└─ separate directories"]:::stage5
S6["<b>6. Extend and assemble</b><br/>━━━━━━━━━━━━━<br/><b>s07 Skill Loading</b><br/>└─ expand skills on demand<br/><br/><b>s18 MCP Plugin</b><br/>└─ external tools, one pool<br/><br/><b>s19 Comprehensive Agent</b><br/>└─ all mechanisms, one loop"]:::stage6 S6["<b>6. Extend and assemble</b><br/>━━━━━━━━━━━━━<br/><b>s07 Skill Loading</b><br/>└─ expand skills on demand<br/><br/><b>s18 MCP Plugin</b><br/>└─ external tools, one pool<br/><br/><b>s19 Integrated Harness</b><br/>└─ all mechanisms, one loop"]:::stage6
S4 ==> S5 ==> S6 S4 ==> S5 ==> S6
end end
@@ -326,7 +326,7 @@ flowchart TD
| [s16](./s16_autonomous_agents/) | Autonomous Agents | task-board scan / atomic claim / self-organization | | [s16](./s16_autonomous_agents/) | Autonomous Agents | task-board scan / atomic claim / self-organization |
| [s17](./s17_worktree_isolation/) | Worktree Isolation | `WorktreeRecord` / task-directory binding | | [s17](./s17_worktree_isolation/) | Worktree Isolation | `WorktreeRecord` / task-directory binding |
| [s18](./s18_mcp_plugin/) | MCP Plugin | tool discovery / namespaced tools / tool pool assembly | | [s18](./s18_mcp_plugin/) | MCP Plugin | tool discovery / namespaced tools / tool pool assembly |
| [s19](./s19_comprehensive/) | Comprehensive Agent | all mechanisms around one loop | | [s19](./s19_comprehensive/) | Integrated Harness | all mechanisms around one loop |
| [s20](./s20_workflow_runtime/) | Workflow Runtime | script orchestration / background execution / journal resume | | [s20](./s20_workflow_runtime/) | Workflow Runtime | script orchestration / background execution / journal resume |
| [s21](./s21_goal_loop/) | Goal Loop | goal gate / trusted evidence / automatic continuation | | [s21](./s21_goal_loop/) | Goal Loop | goal gate / trusted evidence / automatic continuation |

View File

@@ -176,7 +176,7 @@ Agent は標準プロトコルで外部ツールに接続できるようにな
tools、permissions、hooks、todo、task graph、memory、compact、background work、cron、teams、worktree、MCP は、別々の例ではなく同じ loop に接続されるべきです。 tools、permissions、hooks、todo、task graph、memory、compact、background work、cron、teams、worktree、MCP は、別々の例ではなく同じ loop に接続されるべきです。
s19 Comprehensive Agent → s01-s18 の仕組みを 1 つの完全な harness に統合。仕組みは多く、loop は 1 つ。 s19 Integrated Harness → s01-s18 の仕組みを 1 つの harness に統合。仕組みは多く、loop は 1 つ。
<!-- translation-sync: zh@v2, en@v2, ja@v2 --> <!-- translation-sync: zh@v2, en@v2, ja@v2 -->

View File

@@ -176,7 +176,7 @@ The Agent can now connect external tools through a standard protocol. The first
Tools, permissions, hooks, todo, task graph, memory, compact, background work, cron, teams, worktrees, and MCP should all attach to the same loop, not live in separate examples. Tools, permissions, hooks, todo, task graph, memory, compact, background work, cron, teams, worktrees, and MCP should all attach to the same loop, not live in separate examples.
s19 Comprehensive Agent → Combine the mechanisms from s01-s18 into one complete harness. Many mechanisms, one loop. s19 Integrated Harness → Combine the mechanisms from s01-s18 into one harness. Many mechanisms, one loop.
<!-- translation-sync: zh@v2, en@v2, ja@v0 --> <!-- translation-sync: zh@v2, en@v2, ja@v0 -->

View File

@@ -176,7 +176,7 @@ python s18_mcp_plugin/code.py
工具、权限、hooks、todo、任务图、记忆、压缩、后台、cron、团队、worktree、MCP 这些机制应该挂在同一个循环上,而不是散在 19 个 demo 里。 工具、权限、hooks、todo、任务图、记忆、压缩、后台、cron、团队、worktree、MCP 这些机制应该挂在同一个循环上,而不是散在 19 个 demo 里。
s19 Comprehensive Agent → 把 s01-s18 的机制合回一个完整 harness。机制很多循环一个。 s19 Agent Harness 集成 → 把 s01-s18 的机制合回一个 harness。机制很多循环一个。
<!-- translation-sync: zh@v2, en@v0, ja@v0 --> <!-- translation-sync: zh@v2, en@v0, ja@v0 -->

View File

@@ -1,4 +1,4 @@
# s19: Comprehensive Agent — すべての仕組みを 1 つのループへ # s19: Integrated Harness — 多くの仕組みを 1 つのループへ
[English](README.md) · [中文](README.zh.md) · [日本語](README.ja.md) [English](README.md) · [中文](README.zh.md) · [日本語](README.ja.md)
@@ -6,7 +6,7 @@ s01 → ... → s17 → s18 → `s19` → [s20](../s20_workflow_runtime/) → s2
> *"仕組みは多い、ループは 1 つ"* — tools、permissions、memory、tasks、teams、plugins はすべて同じ `while True` に接続される。 > *"仕組みは多い、ループは 1 つ"* — tools、permissions、memory、tasks、teams、plugins はすべて同じ `while True` に接続される。
> >
> **Harness レイヤー**: 合 — s01-s18 の仕組みを 1 つの実行可能なシステムへ戻す。 > **Harness レイヤー**: 合 — s01-s18 の仕組みを 1 つの実行可能なシステムへ戻す。
--- ---
@@ -34,7 +34,7 @@ s01 → ... → s17 → s18 → `s19` → [s20](../s20_workflow_runtime/) → s2
![System Architecture](images/system-architecture.ja.svg) ![System Architecture](images/system-architecture.ja.svg)
S19 は新しい mechanism を追加せず、前章までの component を 1 つの完全な harness に統合する: S19 は新しい mechanism を追加せず、前章までの component を同じ harness に統合する:
```text ```text
user input user input

View File

@@ -1,4 +1,4 @@
# s19: Comprehensive Agent — All Mechanisms, One Loop # s19: Integrated Harness — Many Mechanisms, One Loop
[English](README.md) · [中文](README.zh.md) · [日本語](README.ja.md) [English](README.md) · [中文](README.zh.md) · [日本語](README.ja.md)
@@ -6,7 +6,7 @@ s01 → ... → s17 → s18 → `s19` → [s20](../s20_workflow_runtime/) → s2
> *"Many mechanisms, one loop"* — tools, permissions, memory, tasks, teams, and plugins all hang off the same `while True`. > *"Many mechanisms, one loop"* — tools, permissions, memory, tasks, teams, and plugins all hang off the same `while True`.
> >
> **Harness layer**: Comprehensive — put the mechanisms from s01-s18 into one runnable system. > **Harness layer**: Integration — put the mechanisms from s01-s18 into one runnable system.
--- ---
@@ -34,7 +34,7 @@ The hard part is not piling up features. The hard part is seeing where each mech
![System Architecture](images/system-architecture.en.svg) ![System Architecture](images/system-architecture.en.svg)
S19 does not introduce a new mechanism. It connects the components from the earlier chapters in one complete harness: S19 does not introduce a new mechanism. It connects the components from the earlier chapters in one integrated harness:
```text ```text
user input user input

View File

@@ -1,4 +1,4 @@
# s19: Comprehensive Agent — 全部机制,归到一个循环 # s19: Agent Harness 集成 — 多种机制,一个循环
[English](README.md) · [中文](README.zh.md) · [日本語](README.ja.md) [English](README.md) · [中文](README.zh.md) · [日本語](README.ja.md)
@@ -6,7 +6,7 @@ s01 → ... → s17 → s18 → `s19` → [s20](../s20_workflow_runtime/) → s2
> *"机制很多,循环一个"* — 工具、权限、记忆、任务、团队、插件都挂在同一个 while True 上。 > *"机制很多,循环一个"* — 工具、权限、记忆、任务、团队、插件都挂在同一个 while True 上。
> >
> **Harness 层**: 综合 — 把 s01-s18 的机制放回同一个可运行系统。 > **Harness 层**: 集成 — 把 s01-s18 的机制放回同一个可运行系统。
--- ---
@@ -34,7 +34,7 @@ s01 → ... → s17 → s18 → `s19` → [s20](../s20_workflow_runtime/) → s2
![System Architecture](images/system-architecture.svg) ![System Architecture](images/system-architecture.svg)
S19 不再引入新机制,而是把前面各章的组件接入一个完整 harness S19 不再引入新机制,而是把前面各章的组件集成到同一个 harness
```text ```text
用户输入 用户输入

View File

@@ -1,6 +1,6 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
""" """
s19: Comprehensive Agent — all course mechanisms in one loop. s19: Integrated Harness — many mechanisms in one loop.
Run: python s19_comprehensive/code.py Run: python s19_comprehensive/code.py
Need: pip install anthropic python-dotenv pyyaml + .env with ANTHROPIC_API_KEY Need: pip install anthropic python-dotenv pyyaml + .env with ANTHROPIC_API_KEY
@@ -2259,7 +2259,7 @@ def async_event_loop(history: list, context: dict):
if __name__ == "__main__": if __name__ == "__main__":
CLI_ACTIVE = True CLI_ACTIVE = True
print("s19: comprehensive agent") print("s19: integrated harness")
print("Enter a question, press Enter to send. Type q to quit.\n") print("Enter a question, press Enter to send. Type q to quit.\n")
history = [] history = []
context = update_context({}, []) context = update_context({}, [])

View File

@@ -20,7 +20,7 @@
<rect width="920" height="620" rx="8" fill="#fafbfc"/> <rect width="920" height="620" rx="8" fill="#fafbfc"/>
<rect x="0" y="0" width="920" height="46" rx="8" fill="url(#header)"/> <rect x="0" y="0" width="920" height="46" rx="8" fill="url(#header)"/>
<rect x="0" y="38" width="920" height="8" fill="url(#header)"/> <rect x="0" y="38" width="920" height="8" fill="url(#header)"/>
<text x="460" y="29" text-anchor="middle" fill="#fff" font-size="17" font-weight="700">s19 Comprehensive Agent — Every Mechanism Around One Loop</text> <text x="460" y="29" text-anchor="middle" fill="#fff" font-size="17" font-weight="700">s19 Integrated Harness — Many Mechanisms, One Loop</text>
<rect x="40" y="76" width="840" height="212" rx="8" fill="#eef2ff" stroke="#2563eb" stroke-width="1.8"/> <rect x="40" y="76" width="840" height="212" rx="8" fill="#eef2ff" stroke="#2563eb" stroke-width="1.8"/>
<text x="460" y="101" text-anchor="middle" fill="#1e3a8a" font-size="13" font-weight="700">Core Agent Loop</text> <text x="460" y="101" text-anchor="middle" fill="#1e3a8a" font-size="13" font-weight="700">Core Agent Loop</text>
<rect x="70" y="128" width="110" height="48" rx="7" fill="#fff" stroke="#2563eb" stroke-width="1.4"/> <rect x="70" y="128" width="110" height="48" rx="7" fill="#fff" stroke="#2563eb" stroke-width="1.4"/>

Before

Width:  |  Height:  |  Size: 7.6 KiB

After

Width:  |  Height:  |  Size: 7.6 KiB

View File

@@ -20,7 +20,7 @@
<rect width="920" height="620" rx="8" fill="#fafbfc"/> <rect width="920" height="620" rx="8" fill="#fafbfc"/>
<rect x="0" y="0" width="920" height="46" rx="8" fill="url(#header)"/> <rect x="0" y="0" width="920" height="46" rx="8" fill="url(#header)"/>
<rect x="0" y="38" width="920" height="8" fill="url(#header)"/> <rect x="0" y="38" width="920" height="8" fill="url(#header)"/>
<text x="460" y="29" text-anchor="middle" fill="#fff" font-size="17" font-weight="700">s19 Comprehensive Agent — すべての仕組みを 1 つのループへ</text> <text x="460" y="29" text-anchor="middle" fill="#fff" font-size="17" font-weight="700">s19 Integrated Harness — 多くの仕組みを 1 つのループへ</text>
<rect x="40" y="76" width="840" height="212" rx="8" fill="#eef2ff" stroke="#2563eb" stroke-width="1.8"/> <rect x="40" y="76" width="840" height="212" rx="8" fill="#eef2ff" stroke="#2563eb" stroke-width="1.8"/>
<text x="460" y="101" text-anchor="middle" fill="#1e3a8a" font-size="13" font-weight="700">Core Agent Loop</text> <text x="460" y="101" text-anchor="middle" fill="#1e3a8a" font-size="13" font-weight="700">Core Agent Loop</text>
<rect x="70" y="128" width="110" height="48" rx="7" fill="#fff" stroke="#2563eb" stroke-width="1.4"/> <rect x="70" y="128" width="110" height="48" rx="7" fill="#fff" stroke="#2563eb" stroke-width="1.4"/>

Before

Width:  |  Height:  |  Size: 7.7 KiB

After

Width:  |  Height:  |  Size: 7.7 KiB

View File

@@ -21,7 +21,7 @@
<rect width="920" height="620" rx="8" fill="#fafbfc"/> <rect width="920" height="620" rx="8" fill="#fafbfc"/>
<rect x="0" y="0" width="920" height="46" rx="8" fill="url(#header)"/> <rect x="0" y="0" width="920" height="46" rx="8" fill="url(#header)"/>
<rect x="0" y="38" width="920" height="8" fill="url(#header)"/> <rect x="0" y="38" width="920" height="8" fill="url(#header)"/>
<text x="460" y="29" text-anchor="middle" fill="#fff" font-size="17" font-weight="700">s19 Comprehensive Agent — 全部机制挂在同一个循环</text> <text x="460" y="29" text-anchor="middle" fill="#fff" font-size="17" font-weight="700">s19 Agent Harness 集成 — 多种机制,一个循环</text>
<!-- Main loop band --> <!-- Main loop band -->
<rect x="40" y="76" width="840" height="212" rx="8" fill="#eef2ff" stroke="#2563eb" stroke-width="1.8"/> <rect x="40" y="76" width="840" height="212" rx="8" fill="#eef2ff" stroke="#2563eb" stroke-width="1.8"/>

Before

Width:  |  Height:  |  Size: 7.8 KiB

After

Width:  |  Height:  |  Size: 7.8 KiB

View File

@@ -201,7 +201,7 @@ async def sample_workflow(ctx, args):
## s19 からの変更点 ## s19 からの変更点
| | s19 Comprehensive Agent | s20 Workflow Runtime | | | s19 Integrated Harness | s20 Workflow Runtime |
|--|-----------|---------------------| |--|-----------|---------------------|
| loop | 1 つ、モデル駆動 | main loop は不変。その上に決定的 orchestration を追加 | | loop | 1 つ、モデル駆動 | main loop は不変。その上に決定的 orchestration を追加 |
| 次の step を決めるもの | モデルが毎ラウンド判断 | script が orchestration flow を事前に定義 | | 次の step を決めるもの | モデルが毎ラウンド判断 | script が orchestration flow を事前に定義 |

View File

@@ -201,7 +201,7 @@ async def sample_workflow(ctx, args):
## Changes from s19 ## Changes from s19
| | s19 Comprehensive Agent | s20 Workflow Runtime | | | s19 Integrated Harness | s20 Workflow Runtime |
|--|-----------|---------------------| |--|-----------|---------------------|
| Loop | One model-driven loop | Main loop unchanged; deterministic orchestration added above it | | Loop | One model-driven loop | Main loop unchanged; deterministic orchestration added above it |
| Who decides the next step | Model decides each round | Script declares the orchestration in advance | | Who decides the next step | Model decides each round | Script declares the orchestration in advance |

View File

@@ -201,7 +201,7 @@ async def sample_workflow(ctx, args):
## 相对 s19 的变更 ## 相对 s19 的变更
| | s19 综合体 | s20 Workflow Runtime | | | s19 Agent Harness 集成 | s20 Workflow Runtime |
|--|-----------|---------------------| |--|-----------|---------------------|
| 循环 | 单个、模型驱动 | 主循环不变;上面加一层确定的编排 | | 循环 | 单个、模型驱动 | 主循环不变;上面加一层确定的编排 |
| 谁决定下一步 | 模型逐轮决定 | 脚本预先写好编排流程 | | 谁决定下一步 | 模型逐轮决定 | 脚本预先写好编排流程 |

View File

@@ -20,7 +20,7 @@
<rect width="920" height="620" rx="8" fill="#fafbfc"/> <rect width="920" height="620" rx="8" fill="#fafbfc"/>
<rect x="0" y="0" width="920" height="46" rx="8" fill="url(#header)"/> <rect x="0" y="0" width="920" height="46" rx="8" fill="url(#header)"/>
<rect x="0" y="38" width="920" height="8" fill="url(#header)"/> <rect x="0" y="38" width="920" height="8" fill="url(#header)"/>
<text x="460" y="29" text-anchor="middle" fill="#fff" font-size="17" font-weight="700">s19 Comprehensive Agent — Every Mechanism Around One Loop</text> <text x="460" y="29" text-anchor="middle" fill="#fff" font-size="17" font-weight="700">s19 Integrated Harness — Many Mechanisms, One Loop</text>
<rect x="40" y="76" width="840" height="212" rx="8" fill="#eef2ff" stroke="#2563eb" stroke-width="1.8"/> <rect x="40" y="76" width="840" height="212" rx="8" fill="#eef2ff" stroke="#2563eb" stroke-width="1.8"/>
<text x="460" y="101" text-anchor="middle" fill="#1e3a8a" font-size="13" font-weight="700">Core Agent Loop</text> <text x="460" y="101" text-anchor="middle" fill="#1e3a8a" font-size="13" font-weight="700">Core Agent Loop</text>
<rect x="70" y="128" width="110" height="48" rx="7" fill="#fff" stroke="#2563eb" stroke-width="1.4"/> <rect x="70" y="128" width="110" height="48" rx="7" fill="#fff" stroke="#2563eb" stroke-width="1.4"/>

Before

Width:  |  Height:  |  Size: 7.6 KiB

After

Width:  |  Height:  |  Size: 7.6 KiB

View File

@@ -20,7 +20,7 @@
<rect width="920" height="620" rx="8" fill="#fafbfc"/> <rect width="920" height="620" rx="8" fill="#fafbfc"/>
<rect x="0" y="0" width="920" height="46" rx="8" fill="url(#header)"/> <rect x="0" y="0" width="920" height="46" rx="8" fill="url(#header)"/>
<rect x="0" y="38" width="920" height="8" fill="url(#header)"/> <rect x="0" y="38" width="920" height="8" fill="url(#header)"/>
<text x="460" y="29" text-anchor="middle" fill="#fff" font-size="17" font-weight="700">s19 Comprehensive Agent — すべての仕組みを 1 つのループへ</text> <text x="460" y="29" text-anchor="middle" fill="#fff" font-size="17" font-weight="700">s19 Integrated Harness — 多くの仕組みを 1 つのループへ</text>
<rect x="40" y="76" width="840" height="212" rx="8" fill="#eef2ff" stroke="#2563eb" stroke-width="1.8"/> <rect x="40" y="76" width="840" height="212" rx="8" fill="#eef2ff" stroke="#2563eb" stroke-width="1.8"/>
<text x="460" y="101" text-anchor="middle" fill="#1e3a8a" font-size="13" font-weight="700">Core Agent Loop</text> <text x="460" y="101" text-anchor="middle" fill="#1e3a8a" font-size="13" font-weight="700">Core Agent Loop</text>
<rect x="70" y="128" width="110" height="48" rx="7" fill="#fff" stroke="#2563eb" stroke-width="1.4"/> <rect x="70" y="128" width="110" height="48" rx="7" fill="#fff" stroke="#2563eb" stroke-width="1.4"/>

Before

Width:  |  Height:  |  Size: 7.7 KiB

After

Width:  |  Height:  |  Size: 7.7 KiB

View File

@@ -21,7 +21,7 @@
<rect width="920" height="620" rx="8" fill="#fafbfc"/> <rect width="920" height="620" rx="8" fill="#fafbfc"/>
<rect x="0" y="0" width="920" height="46" rx="8" fill="url(#header)"/> <rect x="0" y="0" width="920" height="46" rx="8" fill="url(#header)"/>
<rect x="0" y="38" width="920" height="8" fill="url(#header)"/> <rect x="0" y="38" width="920" height="8" fill="url(#header)"/>
<text x="460" y="29" text-anchor="middle" fill="#fff" font-size="17" font-weight="700">s19 Comprehensive Agent — 全部机制挂在同一个循环</text> <text x="460" y="29" text-anchor="middle" fill="#fff" font-size="17" font-weight="700">s19 Agent Harness 集成 — 多种机制,一个循环</text>
<!-- Main loop band --> <!-- Main loop band -->
<rect x="40" y="76" width="840" height="212" rx="8" fill="#eef2ff" stroke="#2563eb" stroke-width="1.8"/> <rect x="40" y="76" width="840" height="212" rx="8" fill="#eef2ff" stroke="#2563eb" stroke-width="1.8"/>

Before

Width:  |  Height:  |  Size: 7.8 KiB

After

Width:  |  Height:  |  Size: 7.8 KiB

View File

@@ -101,7 +101,7 @@ const STEPS: {
}[] = [ }[] = [
{ {
title: "A Turn Starts as a Packet", title: "A Turn Starts as a Packet",
desc: "The comprehensive agent first gathers everything the model should see, instead of scattering context across hidden places.", desc: "The integrated harness first gathers everything the model should see, instead of scattering context across hidden places.",
stage: "intake", stage: "intake",
used: ["intake"], used: ["intake"],
packet: { packet: {
@@ -281,7 +281,7 @@ export default function ComprehensiveVisualization({ title }: { title?: string }
return ( return (
<section className="min-h-[500px] space-y-4"> <section className="min-h-[500px] space-y-4">
<h2 className="text-xl font-semibold text-zinc-900 dark:text-zinc-100"> <h2 className="text-xl font-semibold text-zinc-900 dark:text-zinc-100">
{title || "Comprehensive Agent Turn"} {title || "Integrated Harness Turn"}
</h2> </h2>
<div className="rounded-lg border border-zinc-200 bg-white p-4 dark:border-zinc-700 dark:bg-zinc-900"> <div className="rounded-lg border border-zinc-200 bg-white p-4 dark:border-zinc-700 dark:bg-zinc-900">

View File

@@ -3,16 +3,16 @@
"decisions": [ "decisions": [
{ {
"id": "composition-over-new-loop", "id": "composition-over-new-loop",
"title": "The Final Agent Composes Previous Layers", "title": "The Harness Composes Previous Layers",
"description": "The comprehensive agent does not replace the loop with a new architecture. It composes memory, tasks, skills, background work, teams, worktrees, and MCP around the same core model-tool-result cycle.", "description": "The integrated harness does not replace the loop with a new architecture. It composes memory, tasks, skills, background work, teams, worktrees, and MCP around the same core model-tool-result cycle.",
"alternatives": "A new orchestration framework would look more impressive, but it would hide the continuity across the course.", "alternatives": "A new orchestration framework would look more impressive, but it would hide the continuity across the course.",
"zh": { "zh": {
"title": "最终 Agent 是组合既有层,而不是换掉循环", "title": "Harness 组合既有层,而不是换掉循环",
"description": "综合 Agent 没有用新架构替换循环,而是把 memory、task、skill、后台任务、团队、worktree、MCP 组合到同一个模型-工具-结果循环周围。" "description": "集成后的 Harness 没有用新架构替换循环,而是把 memory、task、skill、后台任务、团队、worktree、MCP 组合到同一个模型-工具-结果循环周围。"
}, },
"ja": { "ja": {
"title": "最終エージェントは既存レイヤーの合成", "title": "Harness は既存レイヤーを統合する",
"description": "総合エージェントはループを新しい構造で置き換えません。memory、task、skill、バックグラウンド処理、チーム、worktree、MCP を同じ model-tool-result サイクルの周囲に合成します。" "description": "統合された Harness はループを新しい構造で置き換えません。memory、task、skill、バックグラウンド処理、チーム、worktree、MCP を同じ model-tool-result サイクルの周囲に合成します。"
} }
}, },
{ {

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1,7 +1,7 @@
{ {
"version": "s19", "version": "s19",
"title": "Comprehensive Agent", "title": "Integrated Harness",
"description": "The final agent composes context assembly, tools, memory, teams, background work, cron, worktrees, and MCP.", "description": "The harness composes context assembly, tools, memory, teams, background work, cron, worktrees, and MCP.",
"steps": [ "steps": [
{ {
"type": "user_message", "type": "user_message",
@@ -51,7 +51,7 @@
{ {
"type": "assistant_text", "type": "assistant_text",
"content": "Release preparation is ready: checks passed, docs are updated in the teammate worktree, and deployment status is available.", "content": "Release preparation is ready: checks passed, docs are updated in the teammate worktree, and deployment status is available.",
"annotation": "The comprehensive agent returns a single user-facing outcome." "annotation": "The integrated harness returns a single user-facing outcome."
} }
] ]
} }

View File

@@ -57,7 +57,7 @@
"s16": "Autonomous Agents", "s16": "Autonomous Agents",
"s17": "Worktree Isolation", "s17": "Worktree Isolation",
"s18": "MCP Tools", "s18": "MCP Tools",
"s19": "Comprehensive Agent", "s19": "Integrated Harness",
"s20": "Workflow Runtime", "s20": "Workflow Runtime",
"s21": "Goal Loop" "s21": "Goal Loop"
}, },
@@ -87,7 +87,7 @@
"s16": "Autonomous Agent Cycle", "s16": "Autonomous Agent Cycle",
"s17": "Worktree Task Isolation", "s17": "Worktree Task Isolation",
"s18": "MCP Tool Bridge", "s18": "MCP Tool Bridge",
"s19": "Comprehensive Agent Turn", "s19": "Integrated Harness Turn",
"s20": "Workflow Runtime", "s20": "Workflow Runtime",
"s21": "Goal Completion Gate" "s21": "Goal Completion Gate"
} }

View File

@@ -57,7 +57,7 @@
"s16": "自律エージェント", "s16": "自律エージェント",
"s17": "Worktree 分離", "s17": "Worktree 分離",
"s18": "MCP ツール", "s18": "MCP ツール",
"s19": "Comprehensive Agent", "s19": "Integrated Harness",
"s20": "Workflow Runtime", "s20": "Workflow Runtime",
"s21": "Goal Loop" "s21": "Goal Loop"
}, },
@@ -87,7 +87,7 @@
"s16": "自律エージェントサイクル", "s16": "自律エージェントサイクル",
"s17": "Worktree タスク分離", "s17": "Worktree タスク分離",
"s18": "MCP ツールブリッジ", "s18": "MCP ツールブリッジ",
"s19": "Comprehensive Agent Turn", "s19": "Integrated Harness のターン",
"s20": "Workflow Runtime", "s20": "Workflow Runtime",
"s21": "目標完了ゲート" "s21": "目標完了ゲート"
} }

View File

@@ -57,7 +57,7 @@
"s16": "Autonomous Agents", "s16": "Autonomous Agents",
"s17": "Worktree Isolation", "s17": "Worktree Isolation",
"s18": "MCP Tools", "s18": "MCP Tools",
"s19": "Comprehensive Agent", "s19": "Agent Harness 集成",
"s20": "Workflow Runtime", "s20": "Workflow Runtime",
"s21": "Goal Loop" "s21": "Goal Loop"
}, },
@@ -87,7 +87,7 @@
"s16": "Autonomous Agent Cycle", "s16": "Autonomous Agent Cycle",
"s17": "Worktree Task Isolation", "s17": "Worktree Task Isolation",
"s18": "MCP Tool Bridge", "s18": "MCP Tool Bridge",
"s19": "Comprehensive Agent Turn", "s19": "Agent Harness 集成流程",
"s20": "Workflow Runtime", "s20": "Workflow Runtime",
"s21": "目标完成闸门" "s21": "目标完成闸门"
} }

View File

@@ -181,10 +181,10 @@ export const VERSION_META: Record<string, {
prevVersion: "s17", prevVersion: "s17",
}, },
s19: { s19: {
title: "Comprehensive Agent", title: "Integrated Harness",
subtitle: "All Mechanisms, One Loop", subtitle: "Many Mechanisms, One Loop",
coreAddition: "Integrated harness", coreAddition: "Integrated harness",
keyInsight: "The complete harness is still one loop, surrounded by the systems introduced across the course.", keyInsight: "The integrated harness is still one loop, surrounded by the systems introduced across the course.",
layer: "collaboration", layer: "collaboration",
prevVersion: "s18", prevVersion: "s18",
}, },