developing-agent-forge 1.0.0 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/README.md +42 -39
  2. package/README.zh-CN.md +42 -39
  3. package/developing-forge.yaml +43 -28
  4. package/dist/agents/developer.d.ts +15 -1
  5. package/dist/agents/developer.d.ts.map +1 -1
  6. package/dist/agents/developer.js +41 -4
  7. package/dist/agents/developer.js.map +1 -1
  8. package/dist/agents/manager.d.ts +7 -4
  9. package/dist/agents/manager.d.ts.map +1 -1
  10. package/dist/agents/manager.js +26 -13
  11. package/dist/agents/manager.js.map +1 -1
  12. package/dist/agents/reviewer.js +2 -2
  13. package/dist/agents/trajectory-optimizer.d.ts +1 -2
  14. package/dist/agents/trajectory-optimizer.d.ts.map +1 -1
  15. package/dist/agents/trajectory-optimizer.js +5 -8
  16. package/dist/agents/trajectory-optimizer.js.map +1 -1
  17. package/dist/index.d.ts +2 -2
  18. package/dist/index.d.ts.map +1 -1
  19. package/dist/index.js +1 -1
  20. package/dist/index.js.map +1 -1
  21. package/dist/pipeline/factory.d.ts +3 -0
  22. package/dist/pipeline/factory.d.ts.map +1 -0
  23. package/dist/pipeline/factory.js +7 -0
  24. package/dist/pipeline/factory.js.map +1 -0
  25. package/dist/pipeline/index.d.ts +2 -2
  26. package/dist/pipeline/index.d.ts.map +1 -1
  27. package/dist/pipeline/index.js +2 -2
  28. package/dist/pipeline/index.js.map +1 -1
  29. package/dist/pipeline/pipeline.d.ts +49 -29
  30. package/dist/pipeline/pipeline.d.ts.map +1 -1
  31. package/dist/pipeline/pipeline.js +37 -24
  32. package/dist/pipeline/pipeline.js.map +1 -1
  33. package/dist/pipeline/pipelineskill.d.ts +43 -25
  34. package/dist/pipeline/pipelineskill.d.ts.map +1 -1
  35. package/dist/pipeline/pipelineskill.js +4 -5
  36. package/dist/pipeline/pipelineskill.js.map +1 -1
  37. package/dist/pipeline/project-devloop.d.ts +15 -0
  38. package/dist/pipeline/project-devloop.d.ts.map +1 -0
  39. package/dist/pipeline/project-devloop.js +59 -0
  40. package/dist/pipeline/project-devloop.js.map +1 -0
  41. package/dist/pipeline/task-devloop.d.ts +11 -0
  42. package/dist/pipeline/task-devloop.d.ts.map +1 -0
  43. package/dist/pipeline/task-devloop.js +77 -0
  44. package/dist/pipeline/task-devloop.js.map +1 -0
  45. package/package.json +3 -2
  46. package/skills/coding-style/SKILL.md +4 -4
  47. package/dist/pipeline/development.d.ts +0 -14
  48. package/dist/pipeline/development.d.ts.map +0 -1
  49. package/dist/pipeline/development.js +0 -55
  50. package/dist/pipeline/development.js.map +0 -1
  51. package/dist/pipeline/revision.d.ts +0 -10
  52. package/dist/pipeline/revision.d.ts.map +0 -1
  53. package/dist/pipeline/revision.js +0 -52
  54. package/dist/pipeline/revision.js.map +0 -1
package/README.md CHANGED
@@ -10,17 +10,18 @@ The usual entry point is [`develop.sh`](develop.sh), which calls `npm run develo
10
10
 
11
11
  - the goal file passed with `--goal-path`
12
12
  - `skills/coding-style/SKILL.md`
13
- - the artifact directory containing `TODO.md`
13
+ - the project progress memory directory passed with `--project-progress-memory-path`
14
+ - the code design memory directory passed with `--code-design-memory-path`
14
15
  - the target codebase directory
15
16
  - the development archive directory, passed through the current CLI option name `--achive-dir`
16
17
 
17
- The pipeline works in the configured `--target-path`, reads the current high-level objective from `--goal-path`, maintains `TODO.md` under the configured `--artifact-path`, and archives per-iteration task/review artifacts under the configured archive directory.
18
+ The pipeline works in the configured `--target-path`, reads the current high-level objective from `--goal-path`, recalls and updates project progress memory under `--project-progress-memory-path`, recalls and updates code design memory under `--code-design-memory-path`, and archives per-iteration task/review artifacts under the configured archive directory.
18
19
 
19
20
  The package exposes a TypeScript API from [`src/index.ts`](src/index.ts) and a CLI from [`src/cli.ts`](src/cli.ts).
20
21
 
21
22
  ## Core Idea: Developing And Coding Style
22
23
 
23
- `src` turns the current goal into a repeatable code-writing trajectory. `coding-manager` reads the current repository, the goal, and `TODO.md`, chooses one concrete developer task, `developer` edits the target repository, and `code-reviewer` either returns `ACCEPT` or sends revision feedback back into the same task.
24
+ `src` turns the current goal into a repeatable code-writing trajectory. `coding-manager` reads the current repository, the goal, and remembered context, chooses one concrete developing task, `developer` edits the target repository, and `code-reviewer` either returns `ACCEPT` or sends task feedback back into the same task.
24
25
 
25
26
  The coding-style skill is [`skills/coding-style/SKILL.md`](skills/coding-style/SKILL.md). Its job is to control the code-writing agent's code structure and style. The upstream user task decides what to implement; this skill decides how to keep the implementation readable, local, low-coupling, and consistent with the current framework.
26
27
 
@@ -63,15 +64,13 @@ npm run build
63
64
 
64
65
  For local CLI development, use `npm run dev -- developing ...` or the prepared `npm run developing` and `npm run developing-skill` script aliases.
65
66
 
66
- ## Goal File And Temporary TODO Context
67
+ ## Goal File And Memory Context
67
68
 
68
- `developing` and `developing-skill` now both accept `--goal-path <path>`. The pipeline reads that file once at the start of the run and passes its contents to `coding-manager`, `developer`, `code-reviewer`, and `trajectory-optimizer` as the current high-level objective.
69
+ `developing` and `developing-skill` both accept `--goal-path <path>`. The pipeline reads that file once at the start of the run and passes its contents to `coding-manager`, `developer`, `code-reviewer`, and `trajectory-optimizer` as the current high-level objective.
69
70
 
70
71
  Each time you want to execute the next new task, update the file passed to `--goal-path` before rerunning [`develop.sh`](develop.sh) or [`develop-skill.sh`](develop-skill.sh). Put any stable project contract, task context paths, constraints, or task focus directly in that goal file.
71
72
 
72
- `TODO.md` under the configured `--artifact-path` is the current temporary task-memory file maintained by `coding-manager`. If the existing TODO content starts to mix old and new task context, you can manually delete the current TODO file, for example `output/developing/TODO.md`, before the next run. The pipeline will recreate an empty TODO file automatically.
73
-
74
- This `TODO.md` workflow is a temporary memory mechanism. A more advanced memory mechanism should replace or extend it later, so treat the current file as a practical bridge for task continuity rather than the final long-term memory design.
73
+ The configured `--project-progress-memory-path` stores project progress memory used by `coding-manager` for task selection and project continuity. The configured `--code-design-memory-path` stores code design memory used by `developer` while completing the selected task. If old context is no longer useful, delete or edit the memory files under the relevant directory before rerunning the pipeline.
75
74
 
76
75
  ## Direct Command
77
76
 
@@ -83,48 +82,52 @@ npm run developing -- \
83
82
  --config "secret.yaml" \
84
83
  --target-path "output/codebase" \
85
84
  --achive-dir "output/developing-archives" \
86
- --artifact-path "output/developing" \
85
+ --project-progress-memory-path "output/developing/project-progress-memory" \
86
+ --code-design-memory-path "output/developing/code-design-memory" \
87
87
  --coding-style-skill-path "skills/coding-style" \
88
88
  --goal-path "output/goal.md" \
89
89
  --max-iterations "100" \
90
- --max-revision-iterations "10"
90
+ --max-task-devloop-iterations "10" \
91
+ --max-memory-rounds "3"
91
92
  ```
92
93
 
93
94
  The current CLI option name is `--achive-dir`.
94
95
 
95
96
  ## Options Reference
96
97
 
97
- | Option | Description |
98
- | --------------------------- | --------------------------------------------------------------------- |
99
- | `--config` | One or more YAML config files loaded with `coding-agent-forge`. |
100
- | `--target-path` | Target codebase directory. |
101
- | `--achive-dir` | Development archive directory. |
102
- | `--artifact-path` | Artifact directory containing `TODO.md`. |
103
- | `--coding-style-skill-path` | Configured coding-style skill. |
104
- | `--goal-path` | Markdown file containing the current objective and task context. |
105
- | `--max-iterations` | Stops the outer loop if `coding-manager` has not returned `FINISHED`. |
106
- | `--max-revision-iterations` | Limits the inner developer/reviewer repair loop. |
98
+ | Option | Description |
99
+ | -------------------------------- | --------------------------------------------------------------------- |
100
+ | `--config` | One or more YAML config files loaded with `coding-agent-forge`. |
101
+ | `--target-path` | Target codebase directory. |
102
+ | `--achive-dir` | Project development archive directory. |
103
+ | `--project-progress-memory-path` | Memory directory used for project progress continuity. |
104
+ | `--code-design-memory-path` | Memory directory used for code design continuity. |
105
+ | `--coding-style-skill-path` | Configured coding-style skill. |
106
+ | `--goal-path` | Markdown file containing the current objective and task context. |
107
+ | `--max-iterations` | Stops the outer loop if `coding-manager` has not returned `FINISHED`. |
108
+ | `--max-task-devloop-iterations` | Limits developer/reviewer attempts for each selected task. |
109
+ | `--max-memory-rounds` | Limits memory recall and remember refinement rounds. |
107
110
 
108
111
  ## Main Flow
109
112
 
110
- [`pipeline/pipeline.ts`](src/pipeline/pipeline.ts) parses CLI options and delegates the development loop to [`pipeline/development.ts`](src/pipeline/development.ts).
113
+ [`pipeline/pipeline.ts`](src/pipeline/pipeline.ts) parses CLI options and delegates the project development workflow to [`pipeline/project-devloop.ts`](src/pipeline/project-devloop.ts).
111
114
 
112
115
  Each iteration does the following:
113
116
 
114
- 1. `coding-manager` scans the current repository, the goal from `--goal-path`, and `TODO.md` in the artifact directory, then chooses one developer task.
117
+ 1. `coding-manager` decides what should be recalled, the pipeline recalls the matching memory, then `coding-manager` scans the current repository, the goal from `--goal-path`, and remembered context before choosing one developing task.
115
118
  2. `developer` loads the configured coding-style skill, edits the repository, and reports what changed for review.
116
- 3. `code-reviewer` reads the code and developer report, then returns exactly `ACCEPT` or revision feedback.
119
+ 3. `code-reviewer` reads the code and developer report, then returns exactly `ACCEPT` or task feedback.
117
120
  4. If the reviewer returns feedback, `developer` fixes the same task and `code-reviewer` reviews again.
118
- 5. After the review loop ends, the pipeline archives the task and reports, then asks `coding-manager` to update the TODO file.
121
+ 5. After the review loop ends, the pipeline archives the task and reports, asks `coding-manager` to output what should be remembered, and stores that content through `memory-agent-forge`.
119
122
  6. The pipeline stops when `coding-manager` returns `FINISHED` or `--max-iterations` is reached.
120
123
 
121
124
  ## Developing-Skill And Trajectory Feedback
122
125
 
123
- [`develop-skill.sh`](develop-skill.sh) calls the related `developing-skill` pipeline in [`pipeline/pipelineskill.ts`](src/pipeline/pipelineskill.ts). It runs the same development loop, adds `--metaskill-path`, and invokes `trajectory-optimizer` before the revision loop and after TODO updates so the coding-style skill can be improved from concrete development feedback.
126
+ [`develop-skill.sh`](develop-skill.sh) calls the related `developing-skill` pipeline in [`pipeline/pipelineskill.ts`](src/pipeline/pipelineskill.ts). It runs the same project development workflow, adds `--metaskill-path`, and invokes `trajectory-optimizer` before and after the developer/reviewer loop so the coding-style skill can be improved from concrete development feedback.
124
127
 
125
128
  The first `trajectory-optimizer` call runs in `scan` mode before the developer starts. It reads the target repository, the current coding-style skill, and the goal context so the optimizer has the same project context as the code-writing loop.
126
129
 
127
- The second `trajectory-optimizer` call runs in `optimize` mode after the TODO update report is produced. It reads the metaskill, target repository, goal context, current task, revision report, and TODO update report; evaluates whether the skill produced a good modification trajectory; then edits the coding-style skill directly. The prompt focuses the optimizer on missing, misleading, or redundant guidance that affected task selection, coding, review, or TODO update.
130
+ The second `trajectory-optimizer` call runs in `optimize` mode after the iteration finishes. It reads the metaskill, target repository, goal context, current task, and the Developer reports and Reviewer feedback; evaluates whether the skill produced a good modification trajectory; then edits the coding-style skill directly. The prompt focuses the optimizer on missing, misleading, or redundant guidance that affected task selection, coding, or review.
128
131
 
129
132
  The intended loop is:
130
133
 
@@ -139,31 +142,31 @@ This is the coding-style version of skill self-improvement: the metaskill states
139
142
 
140
143
  The pipeline maintains:
141
144
 
142
- | Artifact | Where it lives |
143
- | --------------------------- | ------------------------------------------------------------------------------------------------------------------- |
144
- | `TODO.md` | Under the configured artifact directory; the temporary coding-manager-maintained task-memory file. |
145
- | Timestamped archive folders | Under the configured archive directory; contains each selected task, per-revision reports, and TODO update reports. |
145
+ | Artifact | Where it lives |
146
+ | --------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
147
+ | Memory files | Under the configured project progress and code design memory directories; maintained by `memory-agent-forge`. |
148
+ | Timestamped archive folders | Under the configured archive directory; contains each selected task, memory recall guidance, recalled memory, Developer reports, Reviewer feedback, and things to remember. |
146
149
 
147
150
  ## Important Files
148
151
 
149
152
  | Path | Purpose |
150
153
  | ---------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- |
151
154
  | [`pipeline/pipeline.ts`](src/pipeline/pipeline.ts) | CLI argument parsing and the base `developing` pipeline wrapper. |
152
- | [`pipeline/development.ts`](src/pipeline/development.ts) | Outer development loop, archive creation, TODO updates, and per-agent handoff. |
153
- | [`pipeline/revision.ts`](src/pipeline/revision.ts) | Inner developer/reviewer revision loop for one selected task. |
155
+ | [`pipeline/project-devloop.ts`](src/pipeline/project-devloop.ts) | Outer project workflow, archive creation, memory recall/update, and per-agent handoff. |
156
+ | [`pipeline/task-devloop.ts`](src/pipeline/task-devloop.ts) | Inner developer/reviewer loop for one selected task. |
154
157
  | [`pipeline/pipelineskill.ts`](src/pipeline/pipelineskill.ts) | `developing-skill` wrapper that adds trajectory optimization callbacks around the base loop. |
155
158
  | [`agents/factory.ts`](src/agents/factory.ts) | Registers the developing coding manager, developer, and reviewer agents. |
156
159
  | [`agents/types.ts`](src/agents/types.ts) | Shared workspace-aware base class and variables. |
157
- | [`agents/manager.ts`](src/agents/manager.ts) | Maintains the TODO file and selects outer-loop tasks. |
160
+ | [`agents/manager.ts`](src/agents/manager.ts) | Decides what to recall, selects outer-loop tasks, and outputs what should be remembered. |
158
161
  | [`agents/developer.ts`](src/agents/developer.ts) | Edits the target repository using the shared coding-style skill. |
159
162
  | [`agents/reviewer.ts`](src/agents/reviewer.ts) | Performs the read-only code review gate. |
160
163
  | [`agents/trajectory-optimizer.ts`](src/agents/trajectory-optimizer.ts) | Scans the trajectory and proposes coding-style skill improvements for `developing-skill`. |
161
164
 
162
165
  ## Troubleshooting
163
166
 
164
- | Problem | Likely cause | Fix |
165
- | ---------------------------------------- | ------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------- |
166
- | The loop stops with `FINISHED` | `coding-manager` decided no further developer task is needed. | Inspect `TODO.md` in the artifact directory and the latest archive. |
167
- | A task keeps returning revision feedback | The inner developer/reviewer repair loop has not reached `ACCEPT`. | Read the per-revision reports in the timestamped archive folder. |
168
- | A new goal keeps inheriting old context | The temporary `TODO.md` still contains old task state. | Update `--goal-path`; if needed, delete `output/developing/TODO.md` before rerunning the wrapper. |
169
- | The archive option looks misspelled | The current CLI option name is `--achive-dir`. | Use the current option name until the CLI changes. |
167
+ | Problem | Likely cause | Fix |
168
+ | --------------------------------------- | -------------------------------------------------------------- | ------------------------------------------------------------------------------------------------ |
169
+ | The loop stops with `FINISHED` | `coding-manager` decided no further developing task is needed. | Inspect the memory directory and the latest archive. |
170
+ | A task keeps returning task feedback | The inner developer/reviewer loop has not reached `ACCEPT`. | Read the Developer reports and Reviewer feedback in the timestamped archive folder. |
171
+ | A new goal keeps inheriting old context | One of the memory directories still contains old task state. | Update `--goal-path`; if needed, edit or delete stale memory files before rerunning the wrapper. |
172
+ | The archive option looks misspelled | The current CLI option name is `--achive-dir`. | Use the current option name until the CLI changes. |
package/README.zh-CN.md CHANGED
@@ -10,17 +10,18 @@
10
10
 
11
11
  - 通过 `--goal-path` 传入的目标文件
12
12
  - `skills/coding-style/SKILL.md`
13
- - 包含 `TODO.md` artifact 目录
13
+ - 通过 `--project-progress-memory-path` 传入的项目进度 memory 目录
14
+ - 通过 `--code-design-memory-path` 传入的代码设计 memory 目录
14
15
  - 目标代码库目录
15
16
  - development archive 目录;当前 CLI 参数名仍是 `--achive-dir`
16
17
 
17
- pipeline 会在配置的 `--target-path` 中继续写代码,从 `--goal-path` 读取当前高层任务目标,维护配置的 `--artifact-path` 下的 `TODO.md`,并把每轮 task/review 产物归档到 archive 目录。
18
+ pipeline 会在配置的 `--target-path` 中继续写代码,从 `--goal-path` 读取当前高层任务目标,召回并更新 `--project-progress-memory-path` 下的项目进度记忆,召回并更新 `--code-design-memory-path` 下的代码设计记忆,并把每轮 task/review 产物归档到 archive 目录。
18
19
 
19
20
  TypeScript API 从 [`src/index.ts`](src/index.ts) 导出,CLI 入口在 [`src/cli.ts`](src/cli.ts)。
20
21
 
21
22
  ## 核心思想:Developing 和 Coding Style
22
23
 
23
- `src` 会把当前 goal 变成一条可重复执行的代码编写 trajectory。`coding-manager` 读取当前 repo、goal `TODO.md`,选择一个具体 developer task;`developer` 修改目标 repo;`code-reviewer` 返回严格的 `ACCEPT`,或者把 revision feedback 送回同一个 task。
24
+ `src` 会把当前 goal 变成一条可重复执行的代码编写 trajectory。`coding-manager` 读取当前 repo、goal 和记下来的上下文,选择一个具体 developing task;`developer` 修改目标 repo;`code-reviewer` 返回严格的 `ACCEPT`,或者把 task feedback 送回同一个 task。
24
25
 
25
26
  coding-style skill 是 [`skills/coding-style/SKILL.md`](skills/coding-style/SKILL.md)。它的功能是控制写代码 agent 的代码结构和代码风格。上游用户任务决定要实现什么;这个 skill 决定如何让实现保持 readable、local、low-coupling,并和当前 framework 保持一致。
26
27
 
@@ -63,15 +64,13 @@ npm run build
63
64
 
64
65
  本地调试 CLI 时,可以使用 `npm run dev -- developing ...`,也可以继续使用预设的 `npm run developing` 和 `npm run developing-skill` 脚本别名。
65
66
 
66
- ## Goal 文件和临时 TODO 上下文
67
+ ## Goal 文件和 Memory 上下文
67
68
 
68
- `developing` 和 `developing-skill` 现在都接受 `--goal-path <path>`。pipeline 会在运行开始时读取这个文件,并把其中内容作为当前 high-level objective 传给 `coding-manager`、`developer`、`code-reviewer` 和 `trajectory-optimizer`。
69
+ `developing` 和 `developing-skill` 都接受 `--goal-path <path>`。pipeline 会在运行开始时读取这个文件,并把其中内容作为当前 high-level objective 传给 `coding-manager`、`developer`、`code-reviewer` 和 `trajectory-optimizer`。
69
70
 
70
71
  每次想执行下一个新任务时,先更新 `--goal-path` 指向的文件,再重新运行 [`develop.sh`](develop.sh) 或 [`develop-skill.sh`](develop-skill.sh)。稳定的项目 contract、任务上下文路径、约束和这一次的任务重点都直接写进这个 goal 文件。
71
72
 
72
- 配置的 `--artifact-path` 下的 `TODO.md` 是当前由 `coding-manager` 维护的临时任务记忆文件。如果现有 TODO 内容开始把旧任务和新任务上下文串味,可以在下一次运行前手动删除当前 TODO 文件,例如 `output/developing/TODO.md`。pipeline 会自动重新创建一个空 TODO 文件。
73
-
74
- 这个 `TODO.md` workflow 是临时记忆机制。之后会实现更高级的记忆机制来替代或扩展它,所以现在可以把这个文件理解成用于保持任务连续性的过渡方案,而不是最终的长期记忆设计。
73
+ 配置的 `--project-progress-memory-path` 存放给 `coding-manager` 做任务选择和项目连续性判断的项目进度记忆。配置的 `--code-design-memory-path` 存放给 `developer` 完成当前任务时使用的代码设计记忆。如果旧上下文不再有用,可以在下一次运行前删除或编辑对应目录下的 memory 文件。
75
74
 
76
75
  ## 直接命令
77
76
 
@@ -83,48 +82,52 @@ npm run developing -- \
83
82
  --config "secret.yaml" \
84
83
  --target-path "output/codebase" \
85
84
  --achive-dir "output/developing-archives" \
86
- --artifact-path "output/developing" \
85
+ --project-progress-memory-path "output/developing/project-progress-memory" \
86
+ --code-design-memory-path "output/developing/code-design-memory" \
87
87
  --coding-style-skill-path "skills/coding-style" \
88
88
  --goal-path "output/goal.md" \
89
89
  --max-iterations "100" \
90
- --max-revision-iterations "10"
90
+ --max-task-devloop-iterations "10" \
91
+ --max-memory-rounds "3"
91
92
  ```
92
93
 
93
94
  当前 CLI 参数名是 `--achive-dir`。
94
95
 
95
96
  ## 参数参考
96
97
 
97
- | 参数 | 说明 |
98
- | --------------------------- | ---------------------------------------------------------------- |
99
- | `--config` | 用 `coding-agent-forge` 加载的一个或多个 YAML config 文件。 |
100
- | `--target-path` | 目标代码库目录。 |
101
- | `--achive-dir` | Development archive 目录。 |
102
- | `--artifact-path` | 包含 `TODO.md` 的 artifact 目录。 |
103
- | `--coding-style-skill-path` | 配置的 coding-style skill。 |
104
- | `--goal-path` | 包含当前 high-level objective 和 task context 的 Markdown 文件。 |
105
- | `--max-iterations` | `coding-manager` 尚未返回 `FINISHED` 时限制外层循环。 |
106
- | `--max-revision-iterations` | 限制内层 developer/reviewer 修复循环。 |
98
+ | 参数 | 说明 |
99
+ | -------------------------------- | ---------------------------------------------------------------- |
100
+ | `--config` | 用 `coding-agent-forge` 加载的一个或多个 YAML config 文件。 |
101
+ | `--target-path` | 目标代码库目录。 |
102
+ | `--achive-dir` | Project development archive 目录。 |
103
+ | `--project-progress-memory-path` | 用于保持项目进度连续性的 memory 目录。 |
104
+ | `--code-design-memory-path` | 用于保持代码设计连续性的 memory 目录。 |
105
+ | `--coding-style-skill-path` | 配置的 coding-style skill。 |
106
+ | `--goal-path` | 包含当前 high-level objective task context 的 Markdown 文件。 |
107
+ | `--max-iterations` | `coding-manager` 尚未返回 `FINISHED` 时限制外层循环。 |
108
+ | `--max-task-devloop-iterations` | 限制每个 selected task 的 developer/reviewer 尝试次数。 |
109
+ | `--max-memory-rounds` | 限制 memory recall 和 remember 的 refinement 轮数。 |
107
110
 
108
111
  ## 主流程
109
112
 
110
- [`pipeline/pipeline.ts`](src/pipeline/pipeline.ts) 负责解析 CLI 参数,并把开发循环交给 [`pipeline/development.ts`](src/pipeline/development.ts)。
113
+ [`pipeline/pipeline.ts`](src/pipeline/pipeline.ts) 负责解析 CLI 参数,并把 project development workflow 交给 [`pipeline/project-devloop.ts`](src/pipeline/project-devloop.ts)。
111
114
 
112
115
  每轮迭代执行以下步骤:
113
116
 
114
- 1. `coding-manager` 扫描当前 repo、`--goal-path` 中的 goal,以及 artifact 目录中的 `TODO.md`,然后选择一个 developer task。
117
+ 1. `coding-manager` 先判断需要回忆什么,pipeline 再召回匹配的记忆,然后 `coding-manager` 扫描当前 repo、`--goal-path` 中的 goal 和记下来的上下文,选择一个 developing task。
115
118
  2. `developer` 加载配置的 coding-style skill,修改 repo,并报告自己改了哪些内容给 reviewer。
116
- 3. `code-reviewer` 阅读代码和 developer report,返回严格的 `ACCEPT` 或 revision feedback。
119
+ 3. `code-reviewer` 阅读代码和 developer report,返回严格的 `ACCEPT` 或 task feedback。
117
120
  4. 如果 reviewer 返回 feedback,`developer` 继续修同一个任务,然后 `code-reviewer` 再审。
118
- 5. review 循环结束后,pipeline 归档 task 和 reports,然后让 `coding-manager` 更新 TODO 文件。
121
+ 5. review 循环结束后,pipeline 归档 task 和 reports,让 `coding-manager` 输出有什么需要记下,并通过 `memory-agent-forge` 写入记忆。
119
122
  6. 当 `coding-manager` 返回 `FINISHED` 或达到 `--max-iterations` 时停止。
120
123
 
121
124
  ## developing-skill 和 Trajectory Feedback
122
125
 
123
- [`develop-skill.sh`](develop-skill.sh) 会调用 [`pipeline/pipelineskill.ts`](src/pipeline/pipelineskill.ts) 中的 `developing-skill` pipeline。它复用同一套开发循环,额外传入 `--metaskill-path`,并在 revision loop 前和 TODO 更新后调用 `trajectory-optimizer`,让 coding-style skill 能根据具体开发反馈继续优化。
126
+ [`develop-skill.sh`](develop-skill.sh) 会调用 [`pipeline/pipelineskill.ts`](src/pipeline/pipelineskill.ts) 中的 `developing-skill` pipeline。它复用同一套 project development workflow,额外传入 `--metaskill-path`,并在 developer/reviewer 循环前后调用 `trajectory-optimizer`,让 coding-style skill 能根据具体开发反馈继续优化。
124
127
 
125
128
  第一次 `trajectory-optimizer` 调用发生在 developer 开始前,使用 `scan` 模式。它会读取目标 repo、当前 coding-style skill 和 goal context,让 optimizer 拿到和代码编写循环相同的项目上下文。
126
129
 
127
- 第二次 `trajectory-optimizer` 调用发生在 TODO update report 生成后,使用 `optimize` 模式。它会读取 metaskill、target repo、goal context、current task、revision reportTODO update report;根据 [`metaskills/coding-style/METASKILL.md`](metaskills/coding-style/METASKILL.md) 中写的偏好评估这次修改 trajectory 的质量;然后直接修改 coding-style skill。这个 prompt 会重点检查哪些 guidance 缺失、误导或冗余,并看这些问题是否影响 task selection、coding、reviewTODO update
130
+ 第二次 `trajectory-optimizer` 调用发生在迭代结束后,使用 `optimize` 模式。它会读取 metaskill、target repo、goal context、current task、Developer reportsReviewer feedback;根据 [`metaskills/coding-style/METASKILL.md`](metaskills/coding-style/METASKILL.md) 中写的偏好评估这次修改 trajectory 的质量;然后直接修改 coding-style skill。这个 prompt 会重点检查哪些 guidance 缺失、误导或冗余,并看这些问题是否影响 task selection、coding 或 review
128
131
 
129
132
  推荐的使用循环是:
130
133
 
@@ -139,31 +142,31 @@ npm run developing -- \
139
142
 
140
143
  pipeline 会维护:
141
144
 
142
- | Artifact | 位置 |
143
- | -------------------- | -------------------------------------------------------------------------------------------- |
144
- | `TODO.md` | 配置的 artifact 目录下,由 coding-manager 维护的临时任务记忆文件。 |
145
- | 按时间戳归档的文件夹 | 配置的 archive 目录下,保存 selected task、每次 revision reports 和 TODO update reports。 |
145
+ | Artifact | 位置 |
146
+ | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
147
+ | Memory files | 配置的 project progress 和 code design memory 目录下,由 `memory-agent-forge` 维护。 |
148
+ | 按时间戳归档的文件夹 | 配置的 archive 目录下,保存 selected task、memory recall guidance、recalled memory、Developer reports、Reviewer feedback things to remember。 |
146
149
 
147
150
  ## 重要文件
148
151
 
149
152
  | 路径 | 作用 |
150
153
  | ---------------------------------------------------------------------- | --------------------------------------------------------------------------------- |
151
154
  | [`pipeline/pipeline.ts`](src/pipeline/pipeline.ts) | CLI 参数解析和基础 `developing` pipeline 包装。 |
152
- | [`pipeline/development.ts`](src/pipeline/development.ts) | 外层开发循环、archive 创建、TODO 更新和各 agent 之间的交接。 |
153
- | [`pipeline/revision.ts`](src/pipeline/revision.ts) | 针对一个 selected task 的内层 developer/reviewer revision loop。 |
155
+ | [`pipeline/project-devloop.ts`](src/pipeline/project-devloop.ts) | 外层 project workflow、archive 创建、memory recall/update 和各 agent 之间的交接。 |
156
+ | [`pipeline/task-devloop.ts`](src/pipeline/task-devloop.ts) | 针对一个 selected task 的内层 developer/reviewer 循环。 |
154
157
  | [`pipeline/pipelineskill.ts`](src/pipeline/pipelineskill.ts) | 给基础开发循环增加 trajectory optimization callbacks 的 `developing-skill` 包装。 |
155
158
  | [`agents/factory.ts`](src/agents/factory.ts) | 注册 developing coding manager、developer 和 reviewer agents。 |
156
159
  | [`agents/types.ts`](src/agents/types.ts) | 共享的 workspace-aware base class 和变量定义。 |
157
- | [`agents/manager.ts`](src/agents/manager.ts) | 维护 TODO 文件并选择外层任务。 |
160
+ | [`agents/manager.ts`](src/agents/manager.ts) | 判断需要回忆什么、选择外层任务,并输出有什么需要记下。 |
158
161
  | [`agents/developer.ts`](src/agents/developer.ts) | 使用共享 coding-style skill 修改目标 repo。 |
159
162
  | [`agents/reviewer.ts`](src/agents/reviewer.ts) | 执行只读代码审阅 gate。 |
160
163
  | [`agents/trajectory-optimizer.ts`](src/agents/trajectory-optimizer.ts) | 扫描开发轨迹,并为 `developing-skill` 提出 coding-style skill 优化建议。 |
161
164
 
162
165
  ## 常见问题
163
166
 
164
- | 问题 | 常见原因 | 解决办法 |
165
- | ---------------------------------- | ---------------------------------------------------- | ---------------------------------------------------------------------------------- |
166
- | Loop 以 `FINISHED` 停止 | `coding-manager` 判断不需要继续选择 developer task。 | 检查 artifact 目录中的 `TODO.md` 和最新 archive。 |
167
- | 某个任务持续返回 revision feedback | 内层 developer/reviewer 修复循环尚未达到 `ACCEPT`。 | 阅读按时间戳归档的 per-revision reports。 |
168
- | 新 goal 仍然继承旧上下文 | 临时 `TODO.md` 里还保留旧任务状态。 | 更新 `--goal-path`;必要时先删除 `output/developing/TODO.md`,再重新运行 wrapper。 |
169
- | Archive 参数看起来拼错 | 当前 CLI 参数名就是 `--achive-dir`。 | 在 CLI 改名前继续使用当前参数名。 |
167
+ | 问题 | 常见原因 | 解决办法 |
168
+ | ------------------------------ | ----------------------------------------------------- | -------------------------------------------------------------------------- |
169
+ | Loop 以 `FINISHED` 停止 | `coding-manager` 判断不需要继续选择 developing task。 | 检查 memory 目录和最新 archive。 |
170
+ | 某个任务持续返回 task feedback | 内层 developer/reviewer 循环尚未达到 `ACCEPT`。 | 阅读按时间戳归档的 Developer reports 和 Reviewer feedback |
171
+ | 新 goal 仍然继承旧上下文 | 某个 memory 目录里还保留旧任务状态。 | 更新 `--goal-path`;必要时编辑或删除过时 memory 文件,再重新运行 wrapper。 |
172
+ | Archive 参数看起来拼错 | 当前 CLI 参数名就是 `--achive-dir`。 | 在 CLI 改名前继续使用当前参数名。 |
@@ -1,61 +1,76 @@
1
- # Sample configuration for developing-agent-forge.
2
- #
3
- # Keep these paths consistent:
4
- # - the CLI's --target-path
5
- # - each developing agent's constants.workspacePath
6
- # - the developer/reviewer threads' workingDirectory
7
- #
8
- # Put provider credentials in secret.yaml (git-ignored) and pass it after this
9
- # file: --config developing-forge.yaml --config secret.yaml
10
-
11
1
  runtimes:
12
2
  codex:
13
3
  kind: codex
14
4
 
15
5
  threads:
16
- coding-manager-runner:
6
+ skill:
17
7
  runtime: codex
18
8
  options:
19
9
  model: gpt-5.5
20
10
  sandboxMode: danger-full-access
21
- workingDirectory: &targetWorkspace output/codebase
11
+ workingDirectory: .
22
12
 
23
- developer-runner:
13
+ develop:
24
14
  runtime: codex
25
15
  options:
26
- model: gpt-5.3-codex-spark
16
+ model: gpt-5.5
27
17
  sandboxMode: danger-full-access
28
- workingDirectory: *targetWorkspace
18
+ workingDirectory: &developerWorkspacePath output/codebase
29
19
 
30
- code-reviewer-runner:
20
+ develop-cheap:
31
21
  runtime: codex
32
22
  options:
33
- model: gpt-5.5
34
- sandboxMode: danger-full-access # read-only review agent
35
- workingDirectory: *targetWorkspace
23
+ model: gpt-5.3-codex-spark
24
+ sandboxMode: danger-full-access
25
+ workingDirectory: *developerWorkspacePath
36
26
 
37
- trajectory-optimizer-runner:
27
+ memory:
38
28
  runtime: codex
39
29
  options:
40
30
  model: gpt-5.5
41
31
  sandboxMode: danger-full-access
42
- workingDirectory: .
32
+ workingDirectory: &memoryWorkingDir output/developing
43
33
 
44
34
  agents:
45
35
  coding-manager:
46
- thread: coding-manager-runner
36
+ thread: develop
47
37
  constants:
48
- workspacePath: *targetWorkspace
38
+ workspacePath: *developerWorkspacePath
49
39
 
50
40
  developer:
51
- thread: developer-runner
41
+ thread: develop-cheap
52
42
  constants:
53
- workspacePath: *targetWorkspace
43
+ workspacePath: *developerWorkspacePath
54
44
 
55
45
  code-reviewer:
56
- thread: code-reviewer-runner
46
+ thread: develop
57
47
  constants:
58
- workspacePath: *targetWorkspace
48
+ workspacePath: *developerWorkspacePath
59
49
 
60
50
  trajectory-optimizer:
61
- thread: trajectory-optimizer-runner
51
+ thread: skill
52
+
53
+ memory-reader:
54
+ thread: memory
55
+ constants:
56
+ workingDir: *memoryWorkingDir
57
+
58
+ memory-modify-planner:
59
+ thread: memory
60
+ constants:
61
+ workingDir: *memoryWorkingDir
62
+
63
+ memory-modifier:
64
+ thread: memory
65
+ constants:
66
+ workingDir: *memoryWorkingDir
67
+
68
+ memory-create-planner:
69
+ thread: memory
70
+ constants:
71
+ workingDir: *memoryWorkingDir
72
+
73
+ memory-creator:
74
+ thread: memory
75
+ constants:
76
+ workingDir: *memoryWorkingDir
@@ -1,9 +1,23 @@
1
1
  import { DevelopingAgent, type DevelopingAgentVariables } from "./types.js";
2
- export type DeveloperVariables = DevelopingAgentVariables & {
2
+ type RecallDeveloperVariables = DevelopingAgentVariables & {
3
3
  currentTask: string;
4
+ phase: "recall";
5
+ };
6
+ type DevelopDeveloperVariables = DevelopingAgentVariables & {
7
+ currentTask: string;
8
+ memory: string;
9
+ phase: "develop";
4
10
  reviewerReport?: string;
5
11
  };
12
+ type UpdateDeveloperVariables = DevelopingAgentVariables & {
13
+ currentTask: string;
14
+ memory: string;
15
+ phase: "update";
16
+ taskDevReport: string;
17
+ };
18
+ export type DeveloperVariables = RecallDeveloperVariables | DevelopDeveloperVariables | UpdateDeveloperVariables;
6
19
  export declare class DeveloperAgent extends DevelopingAgent<DeveloperVariables> {
7
20
  protected buildPrompt(variables: Readonly<DeveloperVariables>): string;
8
21
  }
22
+ export {};
9
23
  //# sourceMappingURL=developer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"developer.d.ts","sourceRoot":"","sources":["../../src/agents/developer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,KAAK,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAE5E,MAAM,MAAM,kBAAkB,GAAG,wBAAwB,GAAG;IAC1D,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,qBAAa,cAAe,SAAQ,eAAe,CAAC,kBAAkB,CAAC;IACrE,SAAS,CAAC,WAAW,CAAC,SAAS,EAAE,QAAQ,CAAC,kBAAkB,CAAC,GAAG,MAAM;CAyBvE"}
1
+ {"version":3,"file":"developer.d.ts","sourceRoot":"","sources":["../../src/agents/developer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,KAAK,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAE5E,KAAK,wBAAwB,GAAG,wBAAwB,GAAG;IACzD,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,QAAQ,CAAC;CACjB,CAAC;AAEF,KAAK,yBAAyB,GAAG,wBAAwB,GAAG;IAC1D,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,SAAS,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,KAAK,wBAAwB,GAAG,wBAAwB,GAAG;IACzD,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,QAAQ,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAC1B,wBAAwB,GACxB,yBAAyB,GACzB,wBAAwB,CAAC;AAE7B,qBAAa,cAAe,SAAQ,eAAe,CAAC,kBAAkB,CAAC;IACrE,SAAS,CAAC,WAAW,CAAC,SAAS,EAAE,QAAQ,CAAC,kBAAkB,CAAC,GAAG,MAAM;CAgEvE"}
@@ -4,17 +4,54 @@ export class DeveloperAgent extends DevelopingAgent {
4
4
  buildPrompt(variables) {
5
5
  const codingStyleSkillPath = this.workspaceRelativePath(variables.codingStyleSkillPath);
6
6
  const targetPath = this.workspaceRelativePath(variables.targetPath);
7
- const reviewerReport = variables.reviewerReport ?? "(none)";
8
7
  const codingStyleSkillInstructionText = codingStyleSkillInstruction(codingStyleSkillPath);
9
8
  const goalInstructionText = goalInstruction(variables.goal);
10
- return `
9
+ if (variables.phase === "recall") {
10
+ return `
11
11
  ${codingStyleSkillInstructionText}
12
12
 
13
- Work in the target repository at ${targetPath}/.
13
+ ${goalInstructionText}
14
+
15
+ Current task:
16
+ ${variables.currentTask}
17
+
18
+ Scan the target repository at ${targetPath}/ and decide what code design memory helps complete the current task.
19
+
20
+ Output concise code design memory recall guidance.
21
+ `;
22
+ }
23
+ if (variables.phase === "update") {
24
+ return `
25
+ ${codingStyleSkillInstructionText}
14
26
 
15
27
  ${goalInstructionText}
16
28
 
17
- Current developer task:
29
+ Current task:
30
+ ${variables.currentTask}
31
+
32
+ Related code design memory before the current task:
33
+ ${variables.memory}
34
+
35
+ Revision process for completing the current task:
36
+ ${variables.taskDevReport}
37
+
38
+ Scan the target repository at ${targetPath}/ and consider what code logic relationships and design reasons should be remembered after the current task.
39
+
40
+ Remember code logic relationships and why the current design matches the repository.
41
+ `;
42
+ }
43
+ const reviewerReport = variables.reviewerReport ?? "(none)";
44
+ return `
45
+ ${codingStyleSkillInstructionText}
46
+
47
+ ${goalInstructionText}
48
+
49
+ Related code design memory:
50
+ ${variables.memory}
51
+
52
+ Work in the target repository at ${targetPath}/.
53
+
54
+ Current task:
18
55
  ${variables.currentTask}
19
56
 
20
57
  Reviewer report:
@@ -1 +1 @@
1
- {"version":3,"file":"developer.js","sourceRoot":"","sources":["../../src/agents/developer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAiC,MAAM,YAAY,CAAC;AAO5E,MAAM,OAAO,cAAe,SAAQ,eAAmC;IAC3D,WAAW,CAAC,SAAuC;QAC3D,MAAM,oBAAoB,GAAG,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QACxF,MAAM,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QACpE,MAAM,cAAc,GAAG,SAAS,CAAC,cAAc,IAAI,QAAQ,CAAC;QAC5D,MAAM,+BAA+B,GAAG,2BAA2B,CAAC,oBAAoB,CAAC,CAAC;QAC1F,MAAM,mBAAmB,GAAG,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAE5D,OAAO;EACT,+BAA+B;;mCAEE,UAAU;;EAE3C,mBAAmB;;;EAGnB,SAAS,CAAC,WAAW;;;EAGrB,cAAc;;;;;CAKf,CAAC;IACA,CAAC;CACF"}
1
+ {"version":3,"file":"developer.js","sourceRoot":"","sources":["../../src/agents/developer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAiC,MAAM,YAAY,CAAC;AA0B5E,MAAM,OAAO,cAAe,SAAQ,eAAmC;IAC3D,WAAW,CAAC,SAAuC;QAC3D,MAAM,oBAAoB,GAAG,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QACxF,MAAM,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QACpE,MAAM,+BAA+B,GAAG,2BAA2B,CAAC,oBAAoB,CAAC,CAAC;QAC1F,MAAM,mBAAmB,GAAG,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAE5D,IAAI,SAAS,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YACjC,OAAO;EACX,+BAA+B;;EAE/B,mBAAmB;;;EAGnB,SAAS,CAAC,WAAW;;gCAES,UAAU;;;CAGzC,CAAC;QACE,CAAC;QAED,IAAI,SAAS,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YACjC,OAAO;EACX,+BAA+B;;EAE/B,mBAAmB;;;EAGnB,SAAS,CAAC,WAAW;;;EAGrB,SAAS,CAAC,MAAM;;;EAGhB,SAAS,CAAC,aAAa;;gCAEO,UAAU;;;CAGzC,CAAC;QACE,CAAC;QAED,MAAM,cAAc,GAAG,SAAS,CAAC,cAAc,IAAI,QAAQ,CAAC;QAC5D,OAAO;EACT,+BAA+B;;EAE/B,mBAAmB;;;EAGnB,SAAS,CAAC,MAAM;;mCAEiB,UAAU;;;EAG3C,SAAS,CAAC,WAAW;;;EAGrB,cAAc;;;;;CAKf,CAAC;IACA,CAAC;CACF"}
@@ -1,17 +1,20 @@
1
1
  import { DevelopingAgent, type DevelopingAgentVariables } from "./types.js";
2
+ type RecallCodingManagerVariables = DevelopingAgentVariables & {
3
+ phase: "recall";
4
+ };
2
5
  type SelectCodingManagerVariables = DevelopingAgentVariables & {
3
- todoPath: string;
6
+ memory: string;
4
7
  finishMark: string;
5
8
  phase: "select";
6
9
  };
7
10
  type UpdateCodingManagerVariables = DevelopingAgentVariables & {
8
- todoPath: string;
11
+ memory: string;
9
12
  finishMark: string;
10
13
  phase: "update";
11
14
  currentTask: string;
12
- revisionReport: string;
15
+ taskDevReport: string;
13
16
  };
14
- export type CodingManagerVariables = SelectCodingManagerVariables | UpdateCodingManagerVariables;
17
+ export type CodingManagerVariables = RecallCodingManagerVariables | SelectCodingManagerVariables | UpdateCodingManagerVariables;
15
18
  export declare class CodingManagerAgent extends DevelopingAgent<CodingManagerVariables> {
16
19
  protected buildPrompt(variables: Readonly<CodingManagerVariables>): string;
17
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/agents/manager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,KAAK,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAE5E,KAAK,4BAA4B,GAAG,wBAAwB,GAAG;IAC7D,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,QAAQ,CAAC;CACjB,CAAC;AAEF,KAAK,4BAA4B,GAAG,wBAAwB,GAAG;IAC7D,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,QAAQ,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,4BAA4B,GAAG,4BAA4B,CAAC;AAEjG,qBAAa,kBAAmB,SAAQ,eAAe,CAAC,sBAAsB,CAAC;IAC7E,SAAS,CAAC,WAAW,CAAC,SAAS,EAAE,QAAQ,CAAC,sBAAsB,CAAC,GAAG,MAAM;CA0C3E"}
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/agents/manager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,KAAK,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAE5E,KAAK,4BAA4B,GAAG,wBAAwB,GAAG;IAC7D,KAAK,EAAE,QAAQ,CAAC;CACjB,CAAC;AAEF,KAAK,4BAA4B,GAAG,wBAAwB,GAAG;IAC7D,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,QAAQ,CAAC;CACjB,CAAC;AAEF,KAAK,4BAA4B,GAAG,wBAAwB,GAAG;IAC7D,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,QAAQ,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAC9B,4BAA4B,GAC5B,4BAA4B,GAC5B,4BAA4B,CAAC;AAEjC,qBAAa,kBAAmB,SAAQ,eAAe,CAAC,sBAAsB,CAAC;IAC7E,SAAS,CAAC,WAAW,CAAC,SAAS,EAAE,QAAQ,CAAC,sBAAsB,CAAC,GAAG,MAAM;CAwD3E"}