@shgroup/opencode-serenity-plugin 0.3.4 → 0.4.0
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 +98 -78
- package/dist/activation.d.ts.map +1 -1
- package/dist/activation.js +26 -1
- package/dist/activation.js.map +1 -1
- package/dist/config-schema.d.ts +2 -1
- package/dist/config-schema.d.ts.map +1 -1
- package/dist/config-schema.js +1 -0
- package/dist/config-schema.js.map +1 -1
- package/dist/git/cc-git-tool.d.ts +19 -0
- package/dist/git/cc-git-tool.d.ts.map +1 -0
- package/dist/git/cc-git-tool.js +170 -0
- package/dist/git/cc-git-tool.js.map +1 -0
- package/dist/git/index.d.ts +2 -0
- package/dist/git/index.d.ts.map +1 -0
- package/dist/git/index.js +2 -0
- package/dist/git/index.js.map +1 -0
- package/dist/hooks/compacting.d.ts.map +1 -1
- package/dist/hooks/compacting.js +38 -1
- package/dist/hooks/compacting.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/init/init-wizard.d.ts +19 -13
- package/dist/init/init-wizard.d.ts.map +1 -1
- package/dist/init/init-wizard.js +247 -123
- package/dist/init/init-wizard.js.map +1 -1
- package/dist/skills/template-loader.d.ts +3 -1
- package/dist/skills/template-loader.d.ts.map +1 -1
- package/dist/skills/template-loader.js +6 -5
- package/dist/skills/template-loader.js.map +1 -1
- package/dist/state.d.ts +2 -0
- package/dist/state.d.ts.map +1 -1
- package/dist/state.js +6 -0
- package/dist/state.js.map +1 -1
- package/dist/types/index.d.ts +4 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +2 -0
- package/dist/types/index.js.map +1 -1
- package/package.json +2 -2
package/dist/hooks/compacting.js
CHANGED
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
* 通过检查 output.system 是否已包含目标内容实现 idempotent dedup(无状态)
|
|
16
16
|
* - compacting 保留:避免 serenity 关键状态被压缩丢失
|
|
17
17
|
*/
|
|
18
|
-
import { getState, ensureReady } from '../state.js';
|
|
18
|
+
import { getState, ensureReady, clearPhase2Flag } from '../state.js';
|
|
19
19
|
import { safeCreateHook } from './util.js';
|
|
20
20
|
import pkg from '../../package.json' with { type: 'json' };
|
|
21
21
|
const VERSION = pkg.version;
|
|
@@ -70,6 +70,42 @@ const systemTransformImpl = async (_input, output) => {
|
|
|
70
70
|
return;
|
|
71
71
|
output.system.push(state.skillContent);
|
|
72
72
|
};
|
|
73
|
+
/**
|
|
74
|
+
* messages.transform — Phase 2 强制访谈(DCP 同款模式)。
|
|
75
|
+
*
|
|
76
|
+
* 当 activation 检测到 SKILL.md 为骨架模板(needsPhase2=true),
|
|
77
|
+
* 将最后一条用户消息替换为 Phase 2 访谈提示词,实现"无论用户发了什么都进入初始化"。
|
|
78
|
+
*
|
|
79
|
+
* 替换后立即清除 needsPhase2,确保后续消息不被重复注入。
|
|
80
|
+
*/
|
|
81
|
+
const messagesTransformImpl = async (_input, output) => {
|
|
82
|
+
try {
|
|
83
|
+
await ensureReady();
|
|
84
|
+
}
|
|
85
|
+
catch {
|
|
86
|
+
return;
|
|
87
|
+
}
|
|
88
|
+
const state = getState();
|
|
89
|
+
if (!state.needsPhase2 || !state.phase2Prompt)
|
|
90
|
+
return;
|
|
91
|
+
// 从后往前找最后一个真实用户消息(跳过 synthetic / ignored / non-user)
|
|
92
|
+
const messages = output.messages ?? [];
|
|
93
|
+
for (let i = messages.length - 1; i >= 0; i--) {
|
|
94
|
+
const msg = messages[i];
|
|
95
|
+
if (!msg || msg.info.role !== 'user')
|
|
96
|
+
continue;
|
|
97
|
+
for (const part of msg.parts) {
|
|
98
|
+
if (part.type !== 'text')
|
|
99
|
+
continue;
|
|
100
|
+
if (part.ignored || part.synthetic)
|
|
101
|
+
continue;
|
|
102
|
+
// 替换消息文本为 Phase 2 访谈提示词
|
|
103
|
+
part.text = state.phase2Prompt;
|
|
104
|
+
clearPhase2Flag();
|
|
105
|
+
return;
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
};
|
|
73
109
|
const sessionCompactingImpl = async (_input, output) => {
|
|
74
110
|
try {
|
|
75
111
|
await ensureReady();
|
|
@@ -146,6 +182,7 @@ const toolDefinitionImpl = async (input, output) => {
|
|
|
146
182
|
export function createCompactingHooks(config) {
|
|
147
183
|
const hooks = {};
|
|
148
184
|
hooks['experimental.chat.system.transform'] = safeCreateHook('experimental.chat.system.transform', () => systemTransformImpl, config);
|
|
185
|
+
hooks['experimental.chat.messages.transform'] = safeCreateHook('experimental.chat.messages.transform', () => messagesTransformImpl, config);
|
|
149
186
|
hooks['experimental.session.compacting'] = safeCreateHook('experimental.session.compacting', () => sessionCompactingImpl, config);
|
|
150
187
|
hooks['tool.definition'] = safeCreateHook('tool.definition', () => toolDefinitionImpl, config);
|
|
151
188
|
return hooks;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compacting.js","sourceRoot":"","sources":["../../src/hooks/compacting.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"compacting.js","sourceRoot":"","sources":["../../src/hooks/compacting.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAS,MAAM,qBAAqB,CAAC;;;;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAS,MAAM,qBAAqB,CAAC;;;;;AA4DzD,wBAGE"}
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* opencode-serenity-plugin — server entry
|
|
3
3
|
*
|
|
4
|
-
* 职责:注册
|
|
4
|
+
* 职责:注册 9 个自定义工具 + 6 个 system hook,实现 serenity 认知基础设施的
|
|
5
5
|
* plugin 层(MSM 框架、文件系统操作、会话管理、路径守卫、skill 注入等)。
|
|
6
6
|
*
|
|
7
7
|
* 设计文档见 docs/:
|
|
@@ -24,6 +24,7 @@ import { sessionTool } from './session/session-tool.js';
|
|
|
24
24
|
import { cccStatusTool } from './ccc-status.js';
|
|
25
25
|
import { eapTool } from './eap-tool.js';
|
|
26
26
|
import { neatTool } from './neat-tool.js';
|
|
27
|
+
import { ccGitTool } from './git/cc-git-tool.js';
|
|
27
28
|
import { createPermissionGuards } from './hooks/permission-guards.js';
|
|
28
29
|
import { createCompactingHooks } from './hooks/compacting.js';
|
|
29
30
|
import { createShellEnv } from './hooks/shell-env.js';
|
|
@@ -50,6 +51,7 @@ const plugin = async (input) => {
|
|
|
50
51
|
cc_ck: cccStatusTool, // v0.3 D18: CCC 三原则状态检查
|
|
51
52
|
eap: eapTool, // v0.3: EAP 认知质量框架 (渐进式披露)
|
|
52
53
|
neat: neatTool, // v0.3: Neat 设计协作协议 (渐进式披露)
|
|
54
|
+
cc_git: ccGitTool, // v0.4: CCC git 管理工具 (status/commit/push/log)
|
|
53
55
|
},
|
|
54
56
|
...createPermissionGuards(),
|
|
55
57
|
...createCompactingHooks(),
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAGH,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EACL,WAAW,EACX,WAAW,EACX,YAAY,GAEb,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,gCAAgC,EAAE,MAAM,kCAAkC,CAAC;AACpF,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AAEpC,MAAM,MAAM,GAAW,KAAK,EAAE,KAAK,EAAE,EAAE;IACrC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,gBAAgB,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IAE9F,+BAA+B;IAC/B,MAAM,UAAU,GAAG,eAAe,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAE9D,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;QACnB,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,sBAAsB,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;QACzE,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,+CAA+C;IAC/C,8CAA8C;IAE9C,+DAA+D;IAC/D,MAAM,KAAK,GAAU;QACnB,IAAI,EAAE;YACJ,QAAQ,EAAE,WAAW;YACrB,QAAQ,EAAE,WAAW;YACrB,SAAS,EAAE,YAAY;YACvB,KAAK,EAAE,cAAc,EAAE,6CAA6C;YACpE,OAAO,EAAE,WAAW,EAAE,oBAAoB;YAC1C,KAAK,EAAE,aAAa,EAAE,wBAAwB;YAC9C,GAAG,EAAE,OAAO,EAAS,2BAA2B;YAChD,IAAI,EAAE,QAAQ,EAAO,4BAA4B;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAGH,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EACL,WAAW,EACX,WAAW,EACX,YAAY,GAEb,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,gCAAgC,EAAE,MAAM,kCAAkC,CAAC;AACpF,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AAEpC,MAAM,MAAM,GAAW,KAAK,EAAE,KAAK,EAAE,EAAE;IACrC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,gBAAgB,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IAE9F,+BAA+B;IAC/B,MAAM,UAAU,GAAG,eAAe,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAE9D,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;QACnB,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,sBAAsB,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;QACzE,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,+CAA+C;IAC/C,8CAA8C;IAE9C,+DAA+D;IAC/D,MAAM,KAAK,GAAU;QACnB,IAAI,EAAE;YACJ,QAAQ,EAAE,WAAW;YACrB,QAAQ,EAAE,WAAW;YACrB,SAAS,EAAE,YAAY;YACvB,KAAK,EAAE,cAAc,EAAE,6CAA6C;YACpE,OAAO,EAAE,WAAW,EAAE,oBAAoB;YAC1C,KAAK,EAAE,aAAa,EAAE,wBAAwB;YAC9C,GAAG,EAAE,OAAO,EAAS,2BAA2B;YAChD,IAAI,EAAE,QAAQ,EAAO,4BAA4B;YACjD,MAAM,EAAE,SAAS,EAAI,8CAA8C;SACpE;QACD,GAAG,sBAAsB,EAAE;QAC3B,GAAG,qBAAqB,EAAE;QAC1B,GAAG,cAAc,EAAE;QACnB,KAAK,EAAE,gCAAgC,CAAC;YACtC,YAAY,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,SAAS;SACpC,CAAC;KACH,CAAC;IAEF,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,2CAA2C,EAAE,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;IAChG,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,kBAAkB,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;IAChF,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,eAAe;IACb,EAAE,EAAE,iCAAiC;IACrC,MAAM,EAAE,MAAM;CACf,CAAC"}
|
|
@@ -1,28 +1,33 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* init-wizard.ts — D1 Init 向导 Phase 1
|
|
3
3
|
*
|
|
4
|
-
* CLI 交互式创建认知容器 (CCC)
|
|
4
|
+
* CLI 交互式创建认知容器 (CCC) 的目录骨架、git 初始化并复制标准技能模板。
|
|
5
|
+
*
|
|
6
|
+
* 设计文档:docs/ccc-init-flow-design.md(home-serenity 仓)
|
|
5
7
|
*
|
|
6
8
|
* 流程:
|
|
7
|
-
* 1.
|
|
8
|
-
* 2.
|
|
9
|
-
* 3.
|
|
10
|
-
* 4.
|
|
11
|
-
* 5.
|
|
12
|
-
* 6.
|
|
9
|
+
* 1. 交互问答 4 题(prefix / description / remote / scope)
|
|
10
|
+
* 2. git init → add → commit(Phase 1 写骨架前)
|
|
11
|
+
* 3. 创建目录骨架(.serenity, opencode.json, AGENT_SESSIONS/, docs/)
|
|
12
|
+
* 4. 复制 3 个标准技能模板到 .opencode/skills/
|
|
13
|
+
* 5. git remote add → push(如果提供了 remote)
|
|
14
|
+
* 6. 写入 Phase 2 Agent prompt
|
|
15
|
+
* 7. 输出完成信息
|
|
13
16
|
*/
|
|
14
17
|
export interface InitOptions {
|
|
15
18
|
/** 目标路径 */
|
|
16
19
|
targetPath: string;
|
|
17
|
-
/** 实例前缀(如 home,
|
|
20
|
+
/** 实例前缀(如 home, work) */
|
|
18
21
|
prefix?: string;
|
|
19
|
-
/**
|
|
20
|
-
name?: string;
|
|
21
|
-
/** 实例描述(一句话) */
|
|
22
|
+
/** 一句话描述 */
|
|
22
23
|
description?: string;
|
|
24
|
+
/** Git SSH URL(如 git@github.com:user/work-serenity.git) */
|
|
25
|
+
remote?: string;
|
|
26
|
+
/** 规模:单人/小团队/多人/企业 */
|
|
27
|
+
scope?: string;
|
|
23
28
|
/** Plugin 根路径(用于定位模板) */
|
|
24
29
|
pluginRoot: string;
|
|
25
|
-
/**
|
|
30
|
+
/** 非交互模式(必须提供 prefix + description + remote) */
|
|
26
31
|
nonInteractive?: boolean;
|
|
27
32
|
/** 强制覆盖已有文件 */
|
|
28
33
|
force?: boolean;
|
|
@@ -30,10 +35,11 @@ export interface InitOptions {
|
|
|
30
35
|
export interface InitResult {
|
|
31
36
|
success: boolean;
|
|
32
37
|
prefix: string;
|
|
33
|
-
|
|
38
|
+
cccName: string;
|
|
34
39
|
message: string;
|
|
35
40
|
createdDirs: string[];
|
|
36
41
|
installedSkills: string[];
|
|
42
|
+
gitPushed: boolean;
|
|
37
43
|
}
|
|
38
44
|
export declare function initWizard(opts: InitOptions): Promise<InitResult>;
|
|
39
45
|
//# sourceMappingURL=init-wizard.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init-wizard.d.ts","sourceRoot":"","sources":["../../src/init/init-wizard.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"init-wizard.d.ts","sourceRoot":"","sources":["../../src/init/init-wizard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAiBH,MAAM,WAAW,WAAW;IAC1B,WAAW;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,yBAAyB;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY;IACZ,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,2DAA2D;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sBAAsB;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yBAAyB;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,gDAAgD;IAChD,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,SAAS,EAAE,OAAO,CAAC;CACpB;AAuSD,wBAAsB,UAAU,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CAmKvE"}
|