academic-army 0.1.2 → 0.1.3
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.
package/README.md
CHANGED
|
@@ -76,13 +76,18 @@ The repo scaffold skill does not implement paper methods, harness logic, tests,
|
|
|
76
76
|
|
|
77
77
|
### 5. Run the development loop
|
|
78
78
|
|
|
79
|
-
After the planning artifacts are ready, run:
|
|
79
|
+
After the planning artifacts are ready, write the next high-level development objective into `output/goal.md`, then run:
|
|
80
80
|
|
|
81
81
|
```bash
|
|
82
|
+
$EDITOR output/goal.md
|
|
82
83
|
bash runs/develop.sh
|
|
83
84
|
```
|
|
84
85
|
|
|
85
|
-
Run [`runs/develop.sh`](runs/develop.sh) to call the TypeScript `developing` pipeline, which reads the three planning artifacts and iteratively writes code under `output/codebase`.
|
|
86
|
+
Run [`runs/develop.sh`](runs/develop.sh) to call the TypeScript `developing` pipeline, which reads the three planning artifacts plus the current `--goal-path` file and iteratively writes code under `output/codebase`. Each time you want the next new task, update `output/goal.md` before rerunning the wrapper.
|
|
87
|
+
|
|
88
|
+
The development loop currently uses `output/developing/TODO.md` as a temporary task-memory file. If a new goal starts inheriting old context, manually delete that TODO file before rerunning; the pipeline will recreate it. This TODO-based memory is a temporary solution, and a more advanced memory mechanism should replace or extend it later.
|
|
89
|
+
|
|
90
|
+
See [`src/README.md`](src/README.md) for the TypeScript entry points and [`src/developing/README.md`](src/developing/README.md) for the development loop implementation.
|
|
86
91
|
|
|
87
92
|
## Common Tasks
|
|
88
93
|
|
|
@@ -104,6 +109,8 @@ npm run evolve-skill
|
|
|
104
109
|
|
|
105
110
|
For the shared CLI and pipeline structure, see [`src/README.md`](src/README.md).
|
|
106
111
|
|
|
112
|
+
For `developing` and `developing-skill`, update the file passed to `--goal-path` when you want to run a new task focus. The prepared wrappers use `output/goal.md`.
|
|
113
|
+
|
|
107
114
|
### Call DeepResearch
|
|
108
115
|
|
|
109
116
|
AcademicArmy includes a local stdio MCP implementation in the [`mcp-server`](mcp-server) directory. It exposes one tool:
|
package/README.zh-CN.md
CHANGED
|
@@ -76,13 +76,18 @@ repo scaffold skill 不实现论文方法、harness 逻辑、测试、metric、l
|
|
|
76
76
|
|
|
77
77
|
### 5. 运行开发循环
|
|
78
78
|
|
|
79
|
-
|
|
79
|
+
三份规划产物准备好后,先把下一轮高层开发目标写进 `output/goal.md`,然后运行:
|
|
80
80
|
|
|
81
81
|
```bash
|
|
82
|
+
$EDITOR output/goal.md
|
|
82
83
|
bash runs/develop.sh
|
|
83
84
|
```
|
|
84
85
|
|
|
85
|
-
运行 [`runs/develop.sh`](runs/develop.sh) 来调用 TypeScript 的 `developing` pipeline
|
|
86
|
+
运行 [`runs/develop.sh`](runs/develop.sh) 来调用 TypeScript 的 `developing` pipeline,读取三份规划产物和当前 `--goal-path` 文件,并在 `output/codebase` 下迭代写代码。每次想执行下一个新任务时,先更新 `output/goal.md`,再重新运行 wrapper。
|
|
87
|
+
|
|
88
|
+
开发循环现在使用 `output/developing/TODO.md` 作为临时任务记忆文件。如果新 goal 开始继承旧上下文,可以在重新运行前手动删除这个 TODO 文件;pipeline 会自动重新创建它。这个基于 TODO 的记忆机制是临时方案,之后会实现更高级的记忆机制来替代或扩展它。
|
|
89
|
+
|
|
90
|
+
TypeScript 入口和目录结构见 [`src/README.zh-CN.md`](src/README.zh-CN.md),开发循环实现见 [`src/developing/README.zh-CN.md`](src/developing/README.zh-CN.md)。
|
|
86
91
|
|
|
87
92
|
## 常见任务
|
|
88
93
|
|
|
@@ -104,6 +109,8 @@ npm run evolve-skill
|
|
|
104
109
|
|
|
105
110
|
TypeScript pipeline 的目录结构和实现说明见 [`src/README.zh-CN.md`](src/README.zh-CN.md)。
|
|
106
111
|
|
|
112
|
+
对于 `developing` 和 `developing-skill`,每次想切换到新的任务重点时,更新传给 `--goal-path` 的文件即可。预设 wrappers 使用的是 `output/goal.md`。
|
|
113
|
+
|
|
107
114
|
### 调用 DeepResearch
|
|
108
115
|
|
|
109
116
|
AcademicArmy 在 [`mcp-server`](mcp-server) 目录下提供了本地 stdio MCP 实现。它只暴露一个工具:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../src/developing/pipeline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAuB,MAAM,oBAAoB,CAAC;AAKpE,OAAO,EAAkB,KAAK,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACzE,OAAO,EAEL,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,EACxB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAElE,MAAM,MAAM,8BAA8B,GAAG;IAC3C,gBAAgB,EAAE,sBAAsB,CAAC;IACzC,SAAS,EAAE,kBAAkB,CAAC;IAC9B,eAAe,EAAE,qBAAqB,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,KAAK,CAAC,EAAE,eAAe,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,kBAAkB,CAAC,EAAE,CACnB,cAAc,EAAE,wBAAwB,EACxC,WAAW,EAAE,MAAM,KAChB,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC1B,aAAa,CAAC,EAAE,CACd,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,wBAAwB,EACxC,WAAW,EAAE,MAAM,EACnB,eAAe,EAAE,MAAM,EACvB,cAAc,EAAE,MAAM,EACtB,eAAe,EAAE,SAAS,MAAM,EAAE,KAC/B,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC1B,eAAe,CAAC,EAAE,CAChB,cAAc,EAAE,wBAAwB,EACxC,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,MAAM,EACtB,gBAAgB,EAAE,MAAM,KACrB,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CAC3B,CAAC;AAoBF,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,SAAS,MAAM,EAAE,GACtB,kBAAkB,CAAC,iBAAiB,CAAC,CA6DvC;AAED,wBAAsB,UAAU,CAC9B,IAAI,EAAE,SAAS,CAAC,8BAA8B,CAAC,EAC/C,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../src/developing/pipeline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAuB,MAAM,oBAAoB,CAAC;AAKpE,OAAO,EAAkB,KAAK,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACzE,OAAO,EAEL,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,EACxB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAElE,MAAM,MAAM,8BAA8B,GAAG;IAC3C,gBAAgB,EAAE,sBAAsB,CAAC;IACzC,SAAS,EAAE,kBAAkB,CAAC;IAC9B,eAAe,EAAE,qBAAqB,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,KAAK,CAAC,EAAE,eAAe,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,kBAAkB,CAAC,EAAE,CACnB,cAAc,EAAE,wBAAwB,EACxC,WAAW,EAAE,MAAM,KAChB,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC1B,aAAa,CAAC,EAAE,CACd,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,wBAAwB,EACxC,WAAW,EAAE,MAAM,EACnB,eAAe,EAAE,MAAM,EACvB,cAAc,EAAE,MAAM,EACtB,eAAe,EAAE,SAAS,MAAM,EAAE,KAC/B,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC1B,eAAe,CAAC,EAAE,CAChB,cAAc,EAAE,wBAAwB,EACxC,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,MAAM,EACtB,gBAAgB,EAAE,MAAM,KACrB,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CAC3B,CAAC;AAoBF,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,SAAS,MAAM,EAAE,GACtB,kBAAkB,CAAC,iBAAiB,CAAC,CA6DvC;AAED,wBAAsB,UAAU,CAC9B,IAAI,EAAE,SAAS,CAAC,8BAA8B,CAAC,EAC/C,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,IAAI,CAAC,CAgJf;AAeD,eAAO,MAAM,kBAAkB,gGAI7B,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { existsSync } from "node:fs";
|
|
2
|
-
import {
|
|
2
|
+
import { mkdir, readFile, writeFile } from "node:fs/promises";
|
|
3
3
|
import path from "node:path";
|
|
4
4
|
import { parseArgs } from "node:util";
|
|
5
5
|
import { definePipeline } from "../pipeline.js";
|
|
@@ -151,7 +151,6 @@ export async function developing(team, options) {
|
|
|
151
151
|
revisionReport,
|
|
152
152
|
}, logRecord)).trim();
|
|
153
153
|
await writeText(path.join(archiveDir, "todo_update_report.md"), todoUpdateReport);
|
|
154
|
-
await cp(artifactPath, path.join(archiveDir, "artifacts"), { recursive: true });
|
|
155
154
|
await options.hooks?.afterTodoUpdate?.(agentVariables, currentTask, revisionReport, todoUpdateReport);
|
|
156
155
|
}
|
|
157
156
|
throw new Error(`Reached --max-iterations ${String(options.maxIterations)} before the coding-manager returned ${FINISH_MARK}.`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../src/developing/pipeline.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../src/developing/pipeline.ts"],"names":[],"mappings":"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"}
|