@metagptx/deepflow-suite-cli 0.2.11-dev.20261020.1 → 0.3.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.
- package/README.md +44 -50
- package/bin/deepflow-suite.js +4 -4
- package/bundle/deepflow-release.json +21 -46
- package/bundle/skills/deepflow-suite/SKILL.md +7 -1
- package/bundle/skills/df-agentctrl/SKILL.md +5 -1
- package/bundle/skills/df-agentrt/SKILL.md +15 -0
- package/bundle/skills/df-agentrt-repo/SKILL.md +4 -0
- package/bundle/skills/df-task/SKILL.md +4 -0
- package/bundle/skills/df-taskdriver/SKILL.md +5 -1
- package/bundle/skills/df-workbench/SKILL.md +10 -2
- package/manifest.json +12 -30
- package/package.json +8 -17
- package/runtime/df-agentctrl/commands.mjs +93 -0
- package/runtime/df-agentctrl/df-agentctrl.mjs +119 -0
- package/runtime/df-agentctrl/release.json +1 -0
- package/runtime/df-agentrt/agentrt.mjs +3 -0
- package/runtime/df-agentrt/df-agentrt.mjs +3 -0
- package/runtime/df-agentrt/release.json +1 -0
- package/runtime/df-agentrt/result.mjs +44 -0
- package/runtime/df-agentrt/runtime.mjs +358 -0
- package/runtime/df-agentrt/usage.mjs +16 -0
- package/runtime/df-task/commands.mjs +188 -0
- package/runtime/df-task/df-task.mjs +167 -0
- package/runtime/df-task/protocol.mjs +3 -0
- package/runtime/df-task/read.mjs +127 -0
- package/runtime/df-task/release.json +1 -0
- package/runtime/df-taskdriver/df-taskdriver.mjs +131 -0
- package/runtime/df-taskdriver/release.json +1 -0
- package/runtime/{df-workbench.mjs → df-workbench/df-workbench.mjs} +11 -2
- package/runtime/df-workbench/release.json +1 -0
- package/scripts/build-package.mjs +29 -25
- package/src/bundle.mjs +4 -1
- package/src/cli-install.mjs +35 -125
- package/src/commands/doctor.mjs +2 -0
- package/src/linker.mjs +2 -2
- package/src/manifest.mjs +7 -13
- package/src/package-cli.mjs +44 -60
- package/bin/df-agentctrl.js +0 -10
- package/bin/df-agentrt.js +0 -10
- package/bin/df-task.js +0 -10
- package/bin/df-taskdriver.js +0 -10
- package/bin/df-workbench.js +0 -10
- package/bundle/skills/deepflow-suite/manifest.yaml +0 -20
- package/bundle/skills/df-task/skill_test.go +0 -201
- package/bundle/skills/df-workbench/manifest.yaml +0 -5
- package/scripts/build-runtime-packages.mjs +0 -38
- package/skills/deepflow-suite/SKILL.md +0 -81
- package/skills/deepflow-suite/manifest.yaml +0 -20
- package/src/cli-launcher.mjs +0 -71
- package/src/runtime-build.mjs +0 -193
- package/src/runtime-package.mjs +0 -31
package/README.md
CHANGED
|
@@ -1,72 +1,66 @@
|
|
|
1
1
|
# `@metagptx/deepflow-suite-cli`
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
DeepFlow ships one portable Node package containing `deepflow-suite`, five service
|
|
4
|
+
CLIs and seven Skills. Node.js 22.13+ is required. Users do not need Go, Make, a
|
|
5
|
+
workspace checkout, optional dependencies or an OS-specific runtime package.
|
|
6
6
|
|
|
7
|
-
## Install
|
|
7
|
+
## Install and check
|
|
8
8
|
|
|
9
9
|
```bash
|
|
10
10
|
npm install -g @metagptx/deepflow-suite-cli
|
|
11
|
-
deepflow-suite
|
|
12
|
-
deepflow-suite
|
|
13
|
-
deepflow-suite doctor --source package --json
|
|
11
|
+
deepflow-suite install
|
|
12
|
+
deepflow-suite doctor --json
|
|
14
13
|
```
|
|
15
14
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
The service Skills cover `local`, `dev`, and domestic production `prod-cn`.
|
|
35
|
-
Select the environment explicitly, then configure the service URL described in
|
|
36
|
-
its Skill; installing the package does not select an environment or log in.
|
|
37
|
-
The package release does not update deployed Runtime images, existing Session
|
|
38
|
-
Skill snapshots, or Agent Control definitions.
|
|
15
|
+
npm registers `deepflow-suite`, `df-workbench`, `df-task`, `df-taskdriver`,
|
|
16
|
+
`df-agentctrl` and `df-agentrt` through `package.json#bin`. The installer copies
|
|
17
|
+
bundled Skills to `$CODEX_HOME/skills` (or `~/.codex/skills`); `--target` chooses
|
|
18
|
+
another Skill directory. Existing regular Skill directories require `--force`.
|
|
19
|
+
Skills contain instructions and references; they rely on Suite-provided commands
|
|
20
|
+
and do not carry CLI implementations. `--source package` remains supported and
|
|
21
|
+
is the default. npm installation does not modify the user's Skill directories.
|
|
22
|
+
|
|
23
|
+
`doctor` checks the installed Skill contents, all six entrypoints, their Suite
|
|
24
|
+
version, and the command actually selected by PATH. It reports stale commands
|
|
25
|
+
from previous installations without overwriting them. Each service CLI supports
|
|
26
|
+
`--cli-version --json`, separate from Agent definition `--version` arguments.
|
|
27
|
+
`npm install --ignore-scripts --omit=optional` is supported.
|
|
28
|
+
|
|
29
|
+
Select local/dev/prod explicitly before service calls, then configure the URL
|
|
30
|
+
and identity documented by the relevant Skill. Installation performs no login
|
|
31
|
+
or service calls. CLI releases do not update services, Agent definitions or
|
|
32
|
+
existing Session snapshots.
|
|
39
33
|
|
|
40
34
|
## Workspace development
|
|
41
35
|
|
|
42
|
-
|
|
43
|
-
|
|
36
|
+
CLI source belongs to each service's `cli/` directory. Suite bundles those
|
|
37
|
+
sources without maintaining another client implementation. Development links
|
|
38
|
+
point directly to Node entries and do not compile services:
|
|
44
39
|
|
|
45
40
|
```bash
|
|
46
|
-
deepflow-suite install --source workspace
|
|
47
|
-
deepflow-suite doctor --source workspace --json
|
|
41
|
+
node tools/deepflow-cli/bin/deepflow-suite.js install --source workspace
|
|
42
|
+
node tools/deepflow-cli/bin/deepflow-suite.js doctor --source workspace --json
|
|
48
43
|
```
|
|
49
44
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
`df-agentrt-
|
|
54
|
-
and are not part of the ordinary distribution.
|
|
45
|
+
Use `--bin-dir` to choose a command directory. Replacing a different existing
|
|
46
|
+
command requires `--force`. The normal Skill set is `deepflow-suite`,
|
|
47
|
+
`df-workbench`, `df-task`, `df-taskdriver`, `df-agentctrl`, `df-agentrt` and
|
|
48
|
+
`df-agentrt-repo`; Runtime-specific variant Skills remain separate.
|
|
55
49
|
|
|
56
|
-
##
|
|
50
|
+
## Build and release
|
|
57
51
|
|
|
58
|
-
|
|
52
|
+
Run service CLI contract tests and Node tests, then:
|
|
59
53
|
|
|
60
54
|
```bash
|
|
61
|
-
npm
|
|
62
|
-
npm
|
|
63
|
-
npm run check:runtime
|
|
64
|
-
npm run pack:dry-run
|
|
55
|
+
npm test
|
|
56
|
+
npm pack
|
|
65
57
|
npm publish
|
|
66
58
|
```
|
|
67
59
|
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
60
|
+
`prepack` gathers the five Node clients and seven Skills and generates release
|
|
61
|
+
metadata from the npm package version. The package has no native build or
|
|
62
|
+
runtime download step. Cross-platform install tests use the same npm tarball.
|
|
63
|
+
Old platform packages remain available for pinned 0.2.x releases; mark them
|
|
64
|
+
deprecated after the portable release is available, rather than unpublishing
|
|
65
|
+
packages still referenced by older versions. The legacy `@metagptx/deepflow-cli`
|
|
66
|
+
package and its `deepflow` command are a separate product entrypoint.
|
package/bin/deepflow-suite.js
CHANGED
|
@@ -14,7 +14,7 @@ function parseArgs(argv) {
|
|
|
14
14
|
const [first, ...rest] = argv;
|
|
15
15
|
const command = first?.startsWith("-") ? undefined : first;
|
|
16
16
|
const argumentsToParse = command ? rest : argv;
|
|
17
|
-
const options = { source: "
|
|
17
|
+
const options = { source: "package", workspaceRoot: process.cwd() };
|
|
18
18
|
for (let index = 0; index < argumentsToParse.length; index += 1) {
|
|
19
19
|
const argument = argumentsToParse[index];
|
|
20
20
|
if (argument === "--source") options.source = argumentsToParse[++index];
|
|
@@ -27,14 +27,14 @@ function parseArgs(argv) {
|
|
|
27
27
|
else if (argument === "--skip-cli") options.skipCli = true;
|
|
28
28
|
else if (argument === "--json") options.json = true;
|
|
29
29
|
else if (argument === "--help" || argument === "-h") options.help = true;
|
|
30
|
-
else if (argument === "--version" || argument === "-v") options.version = true;
|
|
30
|
+
else if (argument === "--version" || argument === "--cli-version" || argument === "-v") options.version = true;
|
|
31
31
|
else throw new Error(`unknown option: ${argument}`);
|
|
32
32
|
}
|
|
33
33
|
return { command, options };
|
|
34
34
|
}
|
|
35
35
|
|
|
36
36
|
function printHelp() {
|
|
37
|
-
console.log(`${CLI_NAME} — DeepFlow distribution installer\n\nCommands:\n install
|
|
37
|
+
console.log(`${CLI_NAME} — DeepFlow distribution installer\n\nCommands:\n install [--target <path>] [--force] Install bundled Skills; npm provides all five CLIs\n doctor [--json] Check Skills, CLI versions and PATH\n install --source workspace [--root <path>] [--bin-dir <path>] [--skip-cli]\n doctor --source workspace [--root <path>] [--bin-dir <path>]\n bundle --root <path> --output <path>\n\nThe default source is package.`);
|
|
38
38
|
}
|
|
39
39
|
|
|
40
40
|
function output(value, json) {
|
|
@@ -47,7 +47,7 @@ const manifestPath = path.join(packageRoot, "manifest.json");
|
|
|
47
47
|
|
|
48
48
|
if (options.version) {
|
|
49
49
|
const packageJson = JSON.parse(await readFile(path.join(packageRoot, "package.json"), "utf8"));
|
|
50
|
-
console.log(packageJson.version);
|
|
50
|
+
console.log(options.json ? JSON.stringify({ name: CLI_NAME, version: packageJson.version, entry: fileURLToPath(import.meta.url) }) : packageJson.version);
|
|
51
51
|
process.exit(0);
|
|
52
52
|
}
|
|
53
53
|
|
|
@@ -2,13 +2,13 @@
|
|
|
2
2
|
"schemaVersion": 1,
|
|
3
3
|
"distribution": "deepflow-suite",
|
|
4
4
|
"package": "@metagptx/deepflow-suite-cli",
|
|
5
|
-
"version": "0.
|
|
5
|
+
"version": "0.3.1",
|
|
6
6
|
"platform": "any",
|
|
7
7
|
"arch": "any",
|
|
8
8
|
"cli": {
|
|
9
9
|
"name": "deepflow-suite",
|
|
10
10
|
"package": "@metagptx/deepflow-suite-cli",
|
|
11
|
-
"version": "0.
|
|
11
|
+
"version": "0.3.1",
|
|
12
12
|
"command": "deepflow-suite"
|
|
13
13
|
},
|
|
14
14
|
"skills": [
|
|
@@ -16,15 +16,10 @@
|
|
|
16
16
|
"name": "deepflow-suite",
|
|
17
17
|
"source": "tools/deepflow-cli/skills/deepflow-suite",
|
|
18
18
|
"files": [
|
|
19
|
-
{
|
|
20
|
-
"path": "manifest.yaml",
|
|
21
|
-
"size": 362,
|
|
22
|
-
"sha256": "03089402b9a59b0605c582e968226f7868928043daea37d5944468d1f4b41b92"
|
|
23
|
-
},
|
|
24
19
|
{
|
|
25
20
|
"path": "SKILL.md",
|
|
26
|
-
"size":
|
|
27
|
-
"sha256": "
|
|
21
|
+
"size": 4018,
|
|
22
|
+
"sha256": "ebd8b217b9ce1ca5dc50024838db41ad8afae08a2bc6d2b2cebd6cd5f46fd0b1"
|
|
28
23
|
}
|
|
29
24
|
]
|
|
30
25
|
},
|
|
@@ -32,15 +27,10 @@
|
|
|
32
27
|
"name": "df-workbench",
|
|
33
28
|
"source": "deepflow-workbench/skills/df-workbench",
|
|
34
29
|
"files": [
|
|
35
|
-
{
|
|
36
|
-
"path": "manifest.yaml",
|
|
37
|
-
"size": 84,
|
|
38
|
-
"sha256": "e7e7697d875a49b5d3d4dd4d38fb8479d8a1fb175ab65ab6a2c79addbb171457"
|
|
39
|
-
},
|
|
40
30
|
{
|
|
41
31
|
"path": "SKILL.md",
|
|
42
|
-
"size":
|
|
43
|
-
"sha256": "
|
|
32
|
+
"size": 6670,
|
|
33
|
+
"sha256": "f85fb71550d67a607a0507fe1259b1da753aeede5704a33035fff4f67029700e"
|
|
44
34
|
}
|
|
45
35
|
]
|
|
46
36
|
},
|
|
@@ -103,15 +93,10 @@
|
|
|
103
93
|
"size": 1953,
|
|
104
94
|
"sha256": "94bc4eb79b3f560b5bf0eb1cc728a1b2594dc698de02917f0ea53aea3d9c59f2"
|
|
105
95
|
},
|
|
106
|
-
{
|
|
107
|
-
"path": "skill_test.go",
|
|
108
|
-
"size": 9146,
|
|
109
|
-
"sha256": "88dfe1f8104812ff1c9c8dd2c869e116a0774e0972fde7e2bd3329f0b2cd332e"
|
|
110
|
-
},
|
|
111
96
|
{
|
|
112
97
|
"path": "SKILL.md",
|
|
113
|
-
"size":
|
|
114
|
-
"sha256": "
|
|
98
|
+
"size": 13393,
|
|
99
|
+
"sha256": "cd1ffc54bf884f02e540ddd4b75c805ed868e32d298d20abcecb3c8af51feb8b"
|
|
115
100
|
}
|
|
116
101
|
]
|
|
117
102
|
},
|
|
@@ -121,8 +106,8 @@
|
|
|
121
106
|
"files": [
|
|
122
107
|
{
|
|
123
108
|
"path": "SKILL.md",
|
|
124
|
-
"size":
|
|
125
|
-
"sha256": "
|
|
109
|
+
"size": 13523,
|
|
110
|
+
"sha256": "e336448764276e9043c7cbf0db57b66ed417be084d086ac161e42b7ca4013df7"
|
|
126
111
|
}
|
|
127
112
|
]
|
|
128
113
|
},
|
|
@@ -157,8 +142,8 @@
|
|
|
157
142
|
},
|
|
158
143
|
{
|
|
159
144
|
"path": "SKILL.md",
|
|
160
|
-
"size":
|
|
161
|
-
"sha256": "
|
|
145
|
+
"size": 5411,
|
|
146
|
+
"sha256": "11f9127b58bfc7b6d28dfa6c0e588a9f458a9d3f9cc33aefee815d19c04327dc"
|
|
162
147
|
}
|
|
163
148
|
]
|
|
164
149
|
},
|
|
@@ -188,8 +173,8 @@
|
|
|
188
173
|
},
|
|
189
174
|
{
|
|
190
175
|
"path": "SKILL.md",
|
|
191
|
-
"size":
|
|
192
|
-
"sha256": "
|
|
176
|
+
"size": 11934,
|
|
177
|
+
"sha256": "8710e7ec3da45b8363006bc09befa79b07e8edde4f8f46d98841b8761d1ea228"
|
|
193
178
|
}
|
|
194
179
|
]
|
|
195
180
|
},
|
|
@@ -199,8 +184,8 @@
|
|
|
199
184
|
"files": [
|
|
200
185
|
{
|
|
201
186
|
"path": "SKILL.md",
|
|
202
|
-
"size":
|
|
203
|
-
"sha256": "
|
|
187
|
+
"size": 3492,
|
|
188
|
+
"sha256": "f04a22e7967727217003071b7ad7c9268fde9058af4e1f8d3de22e28e18ac718"
|
|
204
189
|
}
|
|
205
190
|
]
|
|
206
191
|
}
|
|
@@ -209,37 +194,27 @@
|
|
|
209
194
|
{
|
|
210
195
|
"name": "df-workbench",
|
|
211
196
|
"project": "deepflow-workbench",
|
|
212
|
-
"
|
|
213
|
-
"package": "@metagptx/deepflow-suite-cli",
|
|
214
|
-
"mode": "node"
|
|
197
|
+
"entry": "cli/df-workbench.mjs"
|
|
215
198
|
},
|
|
216
199
|
{
|
|
217
200
|
"name": "df-task",
|
|
218
201
|
"project": "deepflow-task",
|
|
219
|
-
"
|
|
220
|
-
"package": "platform-runtime",
|
|
221
|
-
"mode": "binary"
|
|
202
|
+
"entry": "cli/df-task.mjs"
|
|
222
203
|
},
|
|
223
204
|
{
|
|
224
205
|
"name": "df-taskdriver",
|
|
225
206
|
"project": "deepflow-task-driver",
|
|
226
|
-
"
|
|
227
|
-
"package": "platform-runtime",
|
|
228
|
-
"mode": "binary"
|
|
207
|
+
"entry": "cli/df-taskdriver.mjs"
|
|
229
208
|
},
|
|
230
209
|
{
|
|
231
210
|
"name": "df-agentctrl",
|
|
232
211
|
"project": "deepflow-agent-ctrl",
|
|
233
|
-
"
|
|
234
|
-
"package": "platform-runtime",
|
|
235
|
-
"mode": "binary"
|
|
212
|
+
"entry": "cli/df-agentctrl.mjs"
|
|
236
213
|
},
|
|
237
214
|
{
|
|
238
215
|
"name": "df-agentrt",
|
|
239
216
|
"project": "deepflow-agent-runtime",
|
|
240
|
-
"
|
|
241
|
-
"package": "platform-runtime",
|
|
242
|
-
"mode": "binary"
|
|
217
|
+
"entry": "cli/df-agentrt.mjs"
|
|
243
218
|
}
|
|
244
219
|
]
|
|
245
220
|
}
|
|
@@ -5,6 +5,10 @@ description: DeepFlow 统一入口。常规任务默认使用 df-workbench;只
|
|
|
5
5
|
|
|
6
6
|
# DeepFlow Suite
|
|
7
7
|
|
|
8
|
+
## CLI 依赖
|
|
9
|
+
|
|
10
|
+
CLI 由 `@metagptx/deepflow-suite-cli` 统一安装,本 Skill 不携带 CLI 实现。使用前应已完成 Suite 安装;缺少命令或版本不匹配时,用 `deepflow-suite doctor --json` 核对。Run 内缺少工具属于执行环境异常,不临时安装或编译。
|
|
11
|
+
|
|
8
12
|
这是 DeepFlow 的统一用户和开发者入口。它开放完整的 DeepFlow 能力,但不默认调用整条链路:普通任务先走 `df-workbench`,只有确实需要解释推进、Agent 或 Runtime 问题时才升级到其他项目 CLI。
|
|
9
13
|
|
|
10
14
|
## 依赖
|
|
@@ -22,7 +26,9 @@ description: DeepFlow 统一入口。常规任务默认使用 df-workbench;只
|
|
|
22
26
|
|
|
23
27
|
## 环境门禁
|
|
24
28
|
|
|
25
|
-
|
|
29
|
+
以下门禁适用于连接环境内服务。纯离线证据分析、源码审查或能力编写无需选择环境;不能借离线分析自动连接材料里引用的服务。
|
|
30
|
+
|
|
31
|
+
需要连接服务、用户尚未明确说 `local`、本地、`dev`、开发环境或 `prod`、生产环境时,先询问:
|
|
26
32
|
|
|
27
33
|
```text
|
|
28
34
|
请指定目标环境:local(本地)、dev(开发环境)还是 prod(生产环境)?
|
|
@@ -5,7 +5,11 @@ description: 使用df-agentctrl CLI查询DeepFlow Agent控制面的可用智能
|
|
|
5
5
|
|
|
6
6
|
# DeepFlow Agent Control
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
## CLI 依赖
|
|
9
|
+
|
|
10
|
+
CLI 由 `@metagptx/deepflow-suite-cli` 统一安装,本 Skill 不携带 CLI 实现。使用前应已完成 Suite 安装;缺少命令或版本不匹配时,用 `deepflow-suite doctor --json` 核对。Run 内缺少工具属于执行环境异常,不临时安装或编译。
|
|
11
|
+
|
|
12
|
+
通过`df-agentctrl`操作Agent定义和版本。运行命令前确认CLI已在PATH中;服务地址由`DF_AGENTCTRL_BASE_URL`或`--base-url`提供,默认`http://127.0.0.1:8080`。本 Skill 不安装 CLI,也不自动启动服务。
|
|
9
13
|
|
|
10
14
|
## 环境与可用性
|
|
11
15
|
|
|
@@ -5,6 +5,10 @@ description: 在 DeepFlow Agent Runtime 里执行任务时使用。说明你所
|
|
|
5
5
|
|
|
6
6
|
# DeepFlow Agent Runtime
|
|
7
7
|
|
|
8
|
+
## CLI 依赖
|
|
9
|
+
|
|
10
|
+
CLI 由 `@metagptx/deepflow-suite-cli` 统一安装,本 Skill 不携带 CLI 实现。使用前应已完成 Suite 安装;缺少命令或版本不匹配时,用 `deepflow-suite doctor --json` 核对。Run 内缺少工具属于执行环境异常,不临时安装或编译。
|
|
11
|
+
|
|
8
12
|
你运行在 **DeepFlow Agent Runtime** 上。这是一个把「会话 + 多轮消息 + 代码仓库」
|
|
9
13
|
管起来的服务,你现在执行的是其中一轮。
|
|
10
14
|
|
|
@@ -49,6 +53,17 @@ Run 中 `df-agentrt` 只使用部署注入的 `MULTICA_SERVER_URL`,忽略 `AGE
|
|
|
49
53
|
需要交付文件内容时,用文字描述,或者把关键片段直接贴进回复。**不要**写成本地路径链接,
|
|
50
54
|
也不要写得像文件已经送到了——读的人会去找一个根本不存在的附件。
|
|
51
55
|
|
|
56
|
+
## 修改已发布的普通文件
|
|
57
|
+
|
|
58
|
+
用户要求修改已发布的文件时,由你判断直接覆盖原文件还是另存新文件:同一份成果的修订通常覆盖原路径,内容已是另一份交付时另存新文件名。
|
|
59
|
+
|
|
60
|
+
覆盖已发布文件时:
|
|
61
|
+
- 在该文件所在目录的 `改动记录.md` 末尾追加一条:时间、文件名、改了什么、为什么改;文件不存在时新建,不改写已有记录。
|
|
62
|
+
- 写完后用本轮已加载的事实写入技能重新发布该文件的真实路径,让成果卡片更新到本轮。
|
|
63
|
+
- 同时把 `改动记录.md` 也发布一次(ref 写它的相对路径);用户只能从成果卡片打开它,不发布就看不到改动记录。
|
|
64
|
+
|
|
65
|
+
文件仍依赖所属 Worker 工作目录,不是归档或永久可用承诺;未发布或仍在生成的文件不能宣称已交付。
|
|
66
|
+
|
|
52
67
|
## 工作目录:跨轮复用,检出是同级目录
|
|
53
68
|
|
|
54
69
|
- 同一个会话的多轮**复用同一个工作目录**,上一轮留下的文件这一轮还在。
|
|
@@ -5,6 +5,10 @@ description: 任务进行中发现需要另一个代码仓库时使用。查看
|
|
|
5
5
|
|
|
6
6
|
# 中途添加代码仓库
|
|
7
7
|
|
|
8
|
+
## CLI 依赖
|
|
9
|
+
|
|
10
|
+
CLI 由 `@metagptx/deepflow-suite-cli` 统一安装,本 Skill 不携带 CLI 实现。使用前应已完成 Suite 安装;缺少命令或版本不匹配时,用 `deepflow-suite doctor --json` 核对。Run 内缺少工具属于执行环境异常,不临时安装或编译。
|
|
11
|
+
|
|
8
12
|
会话创建时定下的配置里,只有**代码仓库**这一项是可以在任务进行中追加的。
|
|
9
13
|
|
|
10
14
|
你可能在分析到一半时才发现答案不在手上这几个仓库里——这时不需要中断任务回报、
|
|
@@ -5,6 +5,10 @@ description: 在一次 Run 里用 df-task 读写 DeepFlow Task 事实日志 —
|
|
|
5
5
|
|
|
6
6
|
# df-task
|
|
7
7
|
|
|
8
|
+
## CLI 依赖
|
|
9
|
+
|
|
10
|
+
CLI 由 `@metagptx/deepflow-suite-cli` 统一安装,本 Skill 不携带 CLI 实现。使用前应已完成 Suite 安装;缺少命令或版本不匹配时,用 `deepflow-suite doctor --json` 核对。Run 内缺少工具属于执行环境异常,不临时安装或编译。
|
|
11
|
+
|
|
8
12
|
`df-task` 是 DeepFlow Task 事实日志的命令行入口。Task 是一件工作的身份,它下面挂着一本**只追加**的事实日志:谁在什么时候写下了什么。**没有状态字段,也没有状态机** —— 「这件工作到哪一步了」是从这本日志里读出来的,不是查出来的。
|
|
9
13
|
|
|
10
14
|
服务地址取自 `DF_TASK_BASE_URL`,默认 `http://127.0.0.1:8090`。写事实的身份取自 `DF_TASK_ACTOR_KIND` 与 `DF_TASK_ACTOR_ID`,由 runtime 在起进程时注入 —— **不要自己改这两个环境变量**,身份决定了你能写哪些事实。
|
|
@@ -5,6 +5,10 @@ description: 使用df-taskdriver CLI诊断DeepFlow任务推进器的运行状态
|
|
|
5
5
|
|
|
6
6
|
# DeepFlow Task Driver
|
|
7
7
|
|
|
8
|
+
## CLI 依赖
|
|
9
|
+
|
|
10
|
+
CLI 由 `@metagptx/deepflow-suite-cli` 统一安装,本 Skill 不携带 CLI 实现。使用前应已完成 Suite 安装;缺少命令或版本不匹配时,用 `deepflow-suite doctor --json` 核对。Run 内缺少工具属于执行环境异常,不临时安装或编译。
|
|
11
|
+
|
|
8
12
|
通过`df-taskdriver`查看一个正在运行的driver实例。运行命令前确认CLI已在PATH中;实例地址由`DF_TASKDRIVER_BASE_URL`或`--base-url`提供,默认`http://127.0.0.1:8081`。本Skill不安装二进制,也不启动服务。
|
|
9
13
|
|
|
10
14
|
## 目标环境门禁与地址
|
|
@@ -38,7 +42,7 @@ df-taskdriver help
|
|
|
38
42
|
df-taskdriver task <task-id>
|
|
39
43
|
```
|
|
40
44
|
|
|
41
|
-
若命令不存在,说明缺少CLI
|
|
45
|
+
若命令不存在,说明缺少 Suite CLI 安装;向调用方说明需要安装 `@metagptx/deepflow-suite-cli` 并提供实例地址。driver的地址不是事实服务的地址,也不是runtime的地址。
|
|
42
46
|
|
|
43
47
|
## driver做什么,不做什么
|
|
44
48
|
|
|
@@ -5,6 +5,10 @@ description: 面向普通用户的 DeepFlow Workbench 入口。使用 df-workben
|
|
|
5
5
|
|
|
6
6
|
# df-workbench
|
|
7
7
|
|
|
8
|
+
## CLI 依赖
|
|
9
|
+
|
|
10
|
+
CLI 由 `@metagptx/deepflow-suite-cli` 统一安装,本 Skill 不携带 CLI 实现。使用前应已完成 Suite 安装;缺少命令或版本不匹配时,用 `deepflow-suite doctor --json` 核对。Run 内缺少工具属于执行环境异常,不临时安装或编译。
|
|
11
|
+
|
|
8
12
|
`df-workbench` 是普通用户的轻量入口。它保持与 Workbench 人工操作一致:先确定当前身份和工作区,再通过 Workbench 的用户 API 创建任务和发送消息。不要直接调用数据库、`df-task` 的写接口或伪造 `DF_TASK_ACTOR_*` 身份。
|
|
9
13
|
|
|
10
14
|
## 环境和身份
|
|
@@ -36,7 +40,11 @@ df-workbench config --json
|
|
|
36
40
|
|
|
37
41
|
`me` 返回当前用户和可访问工作区;`config` 返回认证模式、当前工作区、Task 写入能力和 Workbench UI 能力。不要打印 Token、Cookie 或其他凭据。
|
|
38
42
|
|
|
39
|
-
local
|
|
43
|
+
local 环境只允许从本机回环地址访问,无需 Token;OIDC 环境使用 Workbench personal token。
|
|
44
|
+
|
|
45
|
+
Token 获取入口:使用公司账号登录目标环境 Workbench,打开「头像 → 个人设置 → 个人 Token → 创建 Token」,填写用途名称和到期时间。完整 Token 只在创建时显示一次,将其配置为 `DF_WORKBENCH_TOKEN`;`DF_WORKBENCH_BASE_URL` 使用同一环境的 Workbench 根地址。也可通过公司内部配置或 Skill 平台的个人凭据配置提供,不在命令参数中传递,不打印凭据。
|
|
46
|
+
|
|
47
|
+
列表仅显示前缀和使用状态,无法找回完整 Token;遗失、到期或不再使用时,在同一入口撤销并按需新建。独立管理员账号不支持创建个人 Token,需使用公司账号登录。网页退出不会撤销 Token。
|
|
40
48
|
|
|
41
49
|
## 用户任务流程
|
|
42
50
|
|
|
@@ -103,4 +111,4 @@ Token、工作区或服务地址配置错误。
|
|
|
103
111
|
|
|
104
112
|
## 缺少依赖
|
|
105
113
|
|
|
106
|
-
如果
|
|
114
|
+
如果 CLI 或本 Skill 缺失,提示用户安装 `@metagptx/deepflow-suite-cli` 后运行 `deepflow-suite install`;Run 内不执行安装、编译或目录复制。
|
package/manifest.json
CHANGED
|
@@ -1,78 +1,60 @@
|
|
|
1
1
|
{
|
|
2
2
|
"distribution": "deepflow-suite",
|
|
3
|
-
"version": "0.2.11-dev.20261020.1",
|
|
4
3
|
"skills": [
|
|
5
4
|
{
|
|
6
5
|
"name": "deepflow-suite",
|
|
7
|
-
"source": "tools/deepflow-cli/skills/deepflow-suite"
|
|
8
|
-
"packageSource": "skills/deepflow-suite"
|
|
6
|
+
"source": "tools/deepflow-cli/skills/deepflow-suite"
|
|
9
7
|
},
|
|
10
8
|
{
|
|
11
9
|
"name": "df-workbench",
|
|
12
|
-
"source": "deepflow-workbench/skills/df-workbench"
|
|
13
|
-
"packageSource": "skills/df-workbench"
|
|
10
|
+
"source": "deepflow-workbench/skills/df-workbench"
|
|
14
11
|
},
|
|
15
12
|
{
|
|
16
13
|
"name": "df-task",
|
|
17
|
-
"source": "deepflow-task/skills/df-task"
|
|
18
|
-
"packageSource": "skills/df-task"
|
|
14
|
+
"source": "deepflow-task/skills/df-task"
|
|
19
15
|
},
|
|
20
16
|
{
|
|
21
17
|
"name": "df-taskdriver",
|
|
22
|
-
"source": "deepflow-task-driver/skills/df-taskdriver"
|
|
23
|
-
"packageSource": "skills/df-taskdriver"
|
|
18
|
+
"source": "deepflow-task-driver/skills/df-taskdriver"
|
|
24
19
|
},
|
|
25
20
|
{
|
|
26
21
|
"name": "df-agentctrl",
|
|
27
|
-
"source": "deepflow-agent-ctrl/skills/df-agentctrl"
|
|
28
|
-
"packageSource": "skills/df-agentctrl"
|
|
22
|
+
"source": "deepflow-agent-ctrl/skills/df-agentctrl"
|
|
29
23
|
},
|
|
30
24
|
{
|
|
31
25
|
"name": "df-agentrt",
|
|
32
|
-
"source": "deepflow-agent-runtime/skills/df-agentrt"
|
|
33
|
-
"packageSource": "skills/df-agentrt"
|
|
26
|
+
"source": "deepflow-agent-runtime/skills/df-agentrt"
|
|
34
27
|
},
|
|
35
28
|
{
|
|
36
29
|
"name": "df-agentrt-repo",
|
|
37
|
-
"source": "deepflow-agent-runtime/skills/df-agentrt-repo"
|
|
38
|
-
"packageSource": "skills/df-agentrt-repo"
|
|
30
|
+
"source": "deepflow-agent-runtime/skills/df-agentrt-repo"
|
|
39
31
|
}
|
|
40
32
|
],
|
|
41
33
|
"clis": [
|
|
42
34
|
{
|
|
43
35
|
"name": "df-workbench",
|
|
44
36
|
"project": "deepflow-workbench",
|
|
45
|
-
"
|
|
46
|
-
"package": "@metagptx/deepflow-suite-cli",
|
|
47
|
-
"mode": "node"
|
|
37
|
+
"entry": "cli/df-workbench.mjs"
|
|
48
38
|
},
|
|
49
39
|
{
|
|
50
40
|
"name": "df-task",
|
|
51
41
|
"project": "deepflow-task",
|
|
52
|
-
"
|
|
53
|
-
"package": "platform-runtime",
|
|
54
|
-
"mode": "binary"
|
|
42
|
+
"entry": "cli/df-task.mjs"
|
|
55
43
|
},
|
|
56
44
|
{
|
|
57
45
|
"name": "df-taskdriver",
|
|
58
46
|
"project": "deepflow-task-driver",
|
|
59
|
-
"
|
|
60
|
-
"package": "platform-runtime",
|
|
61
|
-
"mode": "binary"
|
|
47
|
+
"entry": "cli/df-taskdriver.mjs"
|
|
62
48
|
},
|
|
63
49
|
{
|
|
64
50
|
"name": "df-agentctrl",
|
|
65
51
|
"project": "deepflow-agent-ctrl",
|
|
66
|
-
"
|
|
67
|
-
"package": "platform-runtime",
|
|
68
|
-
"mode": "binary"
|
|
52
|
+
"entry": "cli/df-agentctrl.mjs"
|
|
69
53
|
},
|
|
70
54
|
{
|
|
71
55
|
"name": "df-agentrt",
|
|
72
56
|
"project": "deepflow-agent-runtime",
|
|
73
|
-
"
|
|
74
|
-
"package": "platform-runtime",
|
|
75
|
-
"mode": "binary"
|
|
57
|
+
"entry": "cli/df-agentrt.mjs"
|
|
76
58
|
}
|
|
77
59
|
]
|
|
78
60
|
}
|
package/package.json
CHANGED
|
@@ -1,23 +1,22 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@metagptx/deepflow-suite-cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.1",
|
|
4
4
|
"description": "Agent-friendly installer and distribution CLI for the DeepFlow suite.",
|
|
5
5
|
"license": "UNLICENSED",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"bin": {
|
|
8
8
|
"deepflow-suite": "bin/deepflow-suite.js",
|
|
9
|
-
"df-workbench": "
|
|
10
|
-
"df-task": "
|
|
11
|
-
"df-taskdriver": "
|
|
12
|
-
"df-agentctrl": "
|
|
13
|
-
"df-agentrt": "
|
|
9
|
+
"df-workbench": "runtime/df-workbench/df-workbench.mjs",
|
|
10
|
+
"df-task": "runtime/df-task/df-task.mjs",
|
|
11
|
+
"df-taskdriver": "runtime/df-taskdriver/df-taskdriver.mjs",
|
|
12
|
+
"df-agentctrl": "runtime/df-agentctrl/df-agentctrl.mjs",
|
|
13
|
+
"df-agentrt": "runtime/df-agentrt/df-agentrt.mjs"
|
|
14
14
|
},
|
|
15
15
|
"files": [
|
|
16
16
|
"bin/",
|
|
17
17
|
"bundle/",
|
|
18
18
|
"manifest.json",
|
|
19
19
|
"runtime/",
|
|
20
|
-
"skills/",
|
|
21
20
|
"src/",
|
|
22
21
|
"scripts/",
|
|
23
22
|
"README.md"
|
|
@@ -25,21 +24,13 @@
|
|
|
25
24
|
"publishConfig": {
|
|
26
25
|
"access": "public"
|
|
27
26
|
},
|
|
28
|
-
"optionalDependencies": {
|
|
29
|
-
"@metagptx/deepflow-suite-cli-darwin-arm64": "0.2.11-dev.20261020.1",
|
|
30
|
-
"@metagptx/deepflow-suite-cli-darwin-x64": "0.2.11-dev.20261020.1",
|
|
31
|
-
"@metagptx/deepflow-suite-cli-linux-arm64": "0.2.11-dev.20261020.1",
|
|
32
|
-
"@metagptx/deepflow-suite-cli-linux-x64": "0.2.11-dev.20261020.1",
|
|
33
|
-
"@metagptx/deepflow-suite-cli-win32-x64": "0.2.11-dev.20261020.1"
|
|
34
|
-
},
|
|
35
27
|
"engines": {
|
|
36
28
|
"node": ">=22.13.0"
|
|
37
29
|
},
|
|
38
30
|
"scripts": {
|
|
39
31
|
"test": "node --test tests/*.test.mjs",
|
|
40
|
-
"build:runtime": "node scripts/build-runtime-packages.mjs",
|
|
41
|
-
"check:runtime": "node scripts/build-runtime-packages.mjs --check",
|
|
42
32
|
"prepack": "node scripts/build-package.mjs",
|
|
43
|
-
"pack:dry-run": "npm pack --dry-run"
|
|
33
|
+
"pack:dry-run": "npm pack --dry-run",
|
|
34
|
+
"build": "node scripts/build-package.mjs"
|
|
44
35
|
}
|
|
45
36
|
}
|