@zhushanwen/pi-subagent-cli 0.1.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/bin/pi-subagent-cli.mjs +41 -0
- package/dist/chunk-SDXGJXQR.js +2502 -0
- package/dist/index.cjs +2538 -0
- package/dist/index.d.cts +784 -0
- package/dist/index.d.ts +784 -0
- package/dist/index.js +90 -0
- package/dist/main.cjs +2425 -0
- package/dist/main.d.cts +2 -0
- package/dist/main.d.ts +2 -0
- package/dist/main.js +20 -0
- package/package.json +79 -0
package/dist/main.d.cts
ADDED
package/dist/main.d.ts
ADDED
package/dist/main.js
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import {
|
|
2
|
+
EngineProtocolServer
|
|
3
|
+
} from "./chunk-SDXGJXQR.js";
|
|
4
|
+
|
|
5
|
+
// src/main.ts
|
|
6
|
+
import {
|
|
7
|
+
armEngineSelfDestruct,
|
|
8
|
+
runEngineCliEntry
|
|
9
|
+
} from "@zhushanwen/subagent-engine-sdk";
|
|
10
|
+
var clock = armEngineSelfDestruct({ stdin: process.stdin });
|
|
11
|
+
runEngineCliEntry({
|
|
12
|
+
component: "pi-engine-cli",
|
|
13
|
+
server: new EngineProtocolServer({
|
|
14
|
+
write: (frame) => {
|
|
15
|
+
process.stdout.write(`${JSON.stringify(frame)}
|
|
16
|
+
`);
|
|
17
|
+
},
|
|
18
|
+
reverseClock: clock
|
|
19
|
+
})
|
|
20
|
+
});
|
package/package.json
ADDED
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@zhushanwen/pi-subagent-cli",
|
|
3
|
+
"version": "0.1.1",
|
|
4
|
+
"description": "pi subagent engine as an independent CLI package (W7 of subagent-engine-protocolization): speaks engine-protocol v1 over NDJSON stdio, depends only on @zhushanwen/subagent-engine-sdk (never subagent-core)",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"engines": {
|
|
8
|
+
"node": ">=22.19.0"
|
|
9
|
+
},
|
|
10
|
+
"bin": {
|
|
11
|
+
"pi-subagent-cli": "bin/pi-subagent-cli.mjs"
|
|
12
|
+
},
|
|
13
|
+
"main": "dist/index.cjs",
|
|
14
|
+
"module": "dist/index.js",
|
|
15
|
+
"types": "dist/index.d.ts",
|
|
16
|
+
"exports": {
|
|
17
|
+
".": {
|
|
18
|
+
"import": {
|
|
19
|
+
"types": "./dist/index.d.ts",
|
|
20
|
+
"default": "./dist/index.js"
|
|
21
|
+
},
|
|
22
|
+
"require": {
|
|
23
|
+
"types": "./dist/index.d.cts",
|
|
24
|
+
"default": "./dist/index.cjs"
|
|
25
|
+
},
|
|
26
|
+
"default": "./dist/index.js"
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
"xyz-agent": {
|
|
30
|
+
"subagentEngine": {
|
|
31
|
+
"id": "pi",
|
|
32
|
+
"bin": "pi-subagent-cli",
|
|
33
|
+
"protocol": 1,
|
|
34
|
+
"envPrefixes": [
|
|
35
|
+
"PI_"
|
|
36
|
+
],
|
|
37
|
+
"capabilities": {
|
|
38
|
+
"schemaEnforcement": "native",
|
|
39
|
+
"steer": "unsupported",
|
|
40
|
+
"conversation": "native",
|
|
41
|
+
"personaInjection": "flag",
|
|
42
|
+
"eventGranularity": "stream",
|
|
43
|
+
"sandbox": "emulated",
|
|
44
|
+
"sessionRead": "full",
|
|
45
|
+
"resume": "native",
|
|
46
|
+
"interrupt": "kill-only",
|
|
47
|
+
"permissionMode": "native",
|
|
48
|
+
"maxTurns": true
|
|
49
|
+
},
|
|
50
|
+
"modelCatalog": {
|
|
51
|
+
"dynamic": true,
|
|
52
|
+
"models": []
|
|
53
|
+
},
|
|
54
|
+
"displayName": "pi",
|
|
55
|
+
"description": "pi coding-agent engine (spawn pi --mode rpc task subprocesses, protocolized host callbacks)"
|
|
56
|
+
}
|
|
57
|
+
},
|
|
58
|
+
"$comment": "W7 (impl-plan §2.7): 引擎包只依赖 SDK,禁止依赖 @zhushanwen/subagent-core(check-engine-package-boundary 同精神,W9 落守卫)。manifest 按 §2.4 schema:capabilities 与 core engines/pi 的 PiEngine.capabilities() 逐位一致(快照权威);envPrefixes 按实态 = PI_(PI_WORKFLOW_SCHEMA / PI_CODING_AGENT_DIR 等 pi 域 env;XYZ_* 是保留前缀不可声明,经 SDK env 三层 L0/L1 通道走)。modelCatalog dynamic:true(pi 模型面运行期可变,宿主同步成员读 manifest 快照,运行期真相经协议 listModels 诊断面)。过渡期 core 侧 engines/pi/ 保留不动(XYZ_SUBAGENT_ENGINE_MODE 双模,W11 删)。发布形态(MF-4/MF-5 修复,约束 C-proc-11):CLI 包——bin 是唯一 npm 消费面(仓内零生产 import),files 不带 src/(Node 拒载 node_modules 内 .ts,TS 源发布只产出误导 + __tests__/__golden__ 测试资产泄漏),npm 消费走 publishConfig -> dist(双形态约定同 subagent-core D4);构建 = tsup(src 内部 import 带 .ts 后缀 + allowImportingTsExtensions,tsc emit 不可行),SDK 保持 external 经宿主 node_modules 解析;bin = dist-first + 仅 workspace 形态回退 src(node_modules 判据禁用 npm 形态回退),见 bin/pi-subagent-cli.mjs。main/module/types 顶层字段恒指 dist:npm pack 会强制包含 main 指向的文件(无视 files 白名单),指 src 会把 TS 源塞进不含 src/ 的 tarball;workspace 消费恒走 exports 的 import 条件 → src,顶层字段只是 exports 缺席时的 fallback,无 workspace DX 影响。",
|
|
59
|
+
"files": [
|
|
60
|
+
"bin/",
|
|
61
|
+
"dist/"
|
|
62
|
+
],
|
|
63
|
+
"dependencies": {
|
|
64
|
+
"@zhushanwen/subagent-engine-sdk": "0.2.0"
|
|
65
|
+
},
|
|
66
|
+
"devDependencies": {
|
|
67
|
+
"@types/node": "^24.0.0",
|
|
68
|
+
"@vitest/coverage-v8": "^4.1.9",
|
|
69
|
+
"tsup": "^8.5.1",
|
|
70
|
+
"typescript": "^5.7.0",
|
|
71
|
+
"vitest": "^4.1.8"
|
|
72
|
+
},
|
|
73
|
+
"scripts": {
|
|
74
|
+
"build": "tsup",
|
|
75
|
+
"test": "vitest run",
|
|
76
|
+
"typecheck": "tsc --noEmit",
|
|
77
|
+
"gen:model-catalog": "node scripts/gen-model-catalog.mjs"
|
|
78
|
+
}
|
|
79
|
+
}
|