@devcxl/opencode-cabbage 0.3.2 → 1.1.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.
Files changed (179) hide show
  1. package/README.md +34 -19
  2. package/README.zh.md +34 -19
  3. package/assets/agents/dev-lifecycle.md +60 -49
  4. package/assets/agents/team/architect.md +8 -1
  5. package/assets/agents/team/developer.md +89 -0
  6. package/assets/agents/team/goal-verify.md +5 -1
  7. package/assets/agents/team/reviewer.md +6 -0
  8. package/assets/commands/code.md +3 -2
  9. package/assets/commands/design.md +3 -2
  10. package/assets/commands/release.md +3 -2
  11. package/assets/commands/requirements.md +3 -2
  12. package/assets/commands/review.md +3 -2
  13. package/assets/commands/setup.md +3 -2
  14. package/assets/commands/tasks.md +2 -1
  15. package/assets/prompts/bootstrap.md +9 -8
  16. package/assets/prompts/stage-contract.md +55 -0
  17. package/assets/skills/flow-code/SKILL.md +38 -140
  18. package/assets/skills/flow-design/SKILL.md +28 -79
  19. package/assets/skills/flow-release/SKILL.md +31 -51
  20. package/assets/skills/flow-requirements/SKILL.md +31 -196
  21. package/assets/skills/flow-review/SKILL.md +26 -123
  22. package/assets/skills/flow-setup/SKILL.md +40 -43
  23. package/assets/skills/flow-tasks/SKILL.md +23 -153
  24. package/assets/skills/flow-tdd/SKILL.md +30 -31
  25. package/dist/kernel/caller.d.ts +48 -0
  26. package/dist/kernel/caller.js +88 -0
  27. package/dist/kernel/caller.js.map +1 -0
  28. package/dist/kernel/context.d.ts +27 -0
  29. package/dist/kernel/context.js +84 -0
  30. package/dist/kernel/context.js.map +1 -0
  31. package/dist/kernel/flow.d.ts +175 -0
  32. package/dist/kernel/flow.js +467 -0
  33. package/dist/kernel/flow.js.map +1 -0
  34. package/dist/kernel/legacy.d.ts +19 -0
  35. package/dist/kernel/legacy.js +34 -0
  36. package/dist/kernel/legacy.js.map +1 -0
  37. package/dist/kernel/mutex.d.ts +8 -0
  38. package/dist/kernel/mutex.js +23 -0
  39. package/dist/kernel/mutex.js.map +1 -0
  40. package/dist/kernel/permission.d.ts +21 -0
  41. package/dist/kernel/permission.js +45 -0
  42. package/dist/kernel/permission.js.map +1 -0
  43. package/dist/kernel/profile.d.ts +35 -0
  44. package/dist/kernel/profile.js +147 -0
  45. package/dist/kernel/profile.js.map +1 -0
  46. package/dist/kernel/records.d.ts +103 -0
  47. package/dist/kernel/records.js +240 -0
  48. package/dist/kernel/records.js.map +1 -0
  49. package/dist/kernel/release.d.ts +106 -0
  50. package/dist/kernel/release.js +241 -0
  51. package/dist/kernel/release.js.map +1 -0
  52. package/dist/kernel/review.d.ts +34 -0
  53. package/dist/kernel/review.js +82 -0
  54. package/dist/kernel/review.js.map +1 -0
  55. package/dist/kernel/session-index.d.ts +45 -0
  56. package/dist/kernel/session-index.js +136 -0
  57. package/dist/kernel/session-index.js.map +1 -0
  58. package/dist/kernel/setup.d.ts +95 -0
  59. package/dist/kernel/setup.js +401 -0
  60. package/dist/kernel/setup.js.map +1 -0
  61. package/dist/kernel/slug.d.ts +23 -0
  62. package/dist/kernel/slug.js +67 -0
  63. package/dist/kernel/slug.js.map +1 -0
  64. package/dist/kernel/task.d.ts +213 -0
  65. package/dist/kernel/task.js +873 -0
  66. package/dist/kernel/task.js.map +1 -0
  67. package/dist/{flowrun → kernel/tdd}/adapter.d.ts +1 -1
  68. package/dist/{flowrun → kernel/tdd}/adapter.js +27 -26
  69. package/dist/kernel/tdd/adapter.js.map +1 -0
  70. package/dist/{flowrun → kernel/tdd}/digest.d.ts +2 -1
  71. package/dist/{flowrun → kernel/tdd}/digest.js +6 -4
  72. package/dist/kernel/tdd/digest.js.map +1 -0
  73. package/dist/{flowrun → kernel/tdd}/evaluator.d.ts +1 -1
  74. package/dist/{flowrun → kernel/tdd}/evaluator.js +1 -1
  75. package/dist/kernel/tdd/evaluator.js.map +1 -0
  76. package/dist/kernel/tdd/evidence.d.ts +42 -0
  77. package/dist/kernel/tdd/evidence.js +48 -0
  78. package/dist/kernel/tdd/evidence.js.map +1 -0
  79. package/dist/{flowrun → kernel/tdd}/state.d.ts +2 -2
  80. package/dist/{flowrun → kernel/tdd}/state.js +1 -1
  81. package/dist/kernel/tdd/state.js.map +1 -0
  82. package/dist/kernel/types.d.ts +180 -0
  83. package/dist/kernel/types.js +2 -0
  84. package/dist/kernel/types.js.map +1 -0
  85. package/dist/kernel/worktree.d.ts +45 -0
  86. package/dist/kernel/worktree.js +156 -0
  87. package/dist/kernel/worktree.js.map +1 -0
  88. package/dist/plugin/agents.d.ts +5 -17
  89. package/dist/plugin/agents.js +0 -23
  90. package/dist/plugin/agents.js.map +1 -1
  91. package/dist/plugin/flow-control.d.ts +91 -0
  92. package/dist/plugin/flow-control.js +287 -0
  93. package/dist/plugin/flow-control.js.map +1 -0
  94. package/dist/plugin/goal.d.ts +17 -46
  95. package/dist/plugin/goal.js +47 -117
  96. package/dist/plugin/goal.js.map +1 -1
  97. package/dist/plugin/prompt-lint.js +78 -6
  98. package/dist/plugin/prompt-lint.js.map +1 -1
  99. package/dist/plugin/release-control.d.ts +39 -0
  100. package/dist/plugin/release-control.js +343 -0
  101. package/dist/plugin/release-control.js.map +1 -0
  102. package/dist/plugin/server.d.ts +19 -0
  103. package/dist/plugin/server.js +198 -320
  104. package/dist/plugin/server.js.map +1 -1
  105. package/dist/plugin/setup-control.d.ts +59 -0
  106. package/dist/plugin/setup-control.js +111 -0
  107. package/dist/plugin/setup-control.js.map +1 -0
  108. package/dist/plugin/shell.d.ts +7 -34
  109. package/dist/plugin/shell.js +12 -137
  110. package/dist/plugin/shell.js.map +1 -1
  111. package/dist/plugin/skills.d.ts +1 -1
  112. package/dist/plugin/skills.js +1 -7
  113. package/dist/plugin/skills.js.map +1 -1
  114. package/dist/plugin/task-control.d.ts +90 -0
  115. package/dist/plugin/task-control.js +208 -0
  116. package/dist/plugin/task-control.js.map +1 -0
  117. package/dist/plugin/tdd-checkpoint.d.ts +128 -0
  118. package/dist/plugin/tdd-checkpoint.js +664 -0
  119. package/dist/plugin/tdd-checkpoint.js.map +1 -0
  120. package/dist/util/gh.d.ts +5 -0
  121. package/dist/util/gh.js +12 -0
  122. package/dist/util/gh.js.map +1 -1
  123. package/dist/util/paths.d.ts +6 -2
  124. package/dist/util/paths.js +15 -7
  125. package/dist/util/paths.js.map +1 -1
  126. package/package.json +4 -4
  127. package/assets/agents/team/backend.md +0 -100
  128. package/assets/agents/team/frontend.md +0 -98
  129. package/assets/commands/handoff.md +0 -4
  130. package/assets/commands/test.md +0 -4
  131. package/assets/context/CONTEXT.md +0 -41
  132. package/assets/skills/flow-handoff/SKILL.md +0 -76
  133. package/assets/skills/flow-test/SKILL.md +0 -75
  134. package/dist/flowrun/adapter.js.map +0 -1
  135. package/dist/flowrun/audit.d.ts +0 -5
  136. package/dist/flowrun/audit.js +0 -67
  137. package/dist/flowrun/audit.js.map +0 -1
  138. package/dist/flowrun/ci.d.ts +0 -64
  139. package/dist/flowrun/ci.js +0 -184
  140. package/dist/flowrun/ci.js.map +0 -1
  141. package/dist/flowrun/coverage.d.ts +0 -70
  142. package/dist/flowrun/coverage.js +0 -207
  143. package/dist/flowrun/coverage.js.map +0 -1
  144. package/dist/flowrun/digest.js.map +0 -1
  145. package/dist/flowrun/evaluator.js.map +0 -1
  146. package/dist/flowrun/gate.d.ts +0 -28
  147. package/dist/flowrun/gate.js +0 -139
  148. package/dist/flowrun/gate.js.map +0 -1
  149. package/dist/flowrun/github.d.ts +0 -24
  150. package/dist/flowrun/github.js +0 -154
  151. package/dist/flowrun/github.js.map +0 -1
  152. package/dist/flowrun/index.d.ts +0 -14
  153. package/dist/flowrun/index.js +0 -15
  154. package/dist/flowrun/index.js.map +0 -1
  155. package/dist/flowrun/merge.d.ts +0 -57
  156. package/dist/flowrun/merge.js +0 -180
  157. package/dist/flowrun/merge.js.map +0 -1
  158. package/dist/flowrun/migration.d.ts +0 -11
  159. package/dist/flowrun/migration.js +0 -276
  160. package/dist/flowrun/migration.js.map +0 -1
  161. package/dist/flowrun/resilience.d.ts +0 -18
  162. package/dist/flowrun/resilience.js +0 -80
  163. package/dist/flowrun/resilience.js.map +0 -1
  164. package/dist/flowrun/state.js.map +0 -1
  165. package/dist/flowrun/transitions.d.ts +0 -66
  166. package/dist/flowrun/transitions.js +0 -168
  167. package/dist/flowrun/transitions.js.map +0 -1
  168. package/dist/flowrun/types.d.ts +0 -356
  169. package/dist/flowrun/types.js +0 -21
  170. package/dist/flowrun/types.js.map +0 -1
  171. package/dist/flowrun/validator.d.ts +0 -19
  172. package/dist/flowrun/validator.js +0 -209
  173. package/dist/flowrun/validator.js.map +0 -1
  174. package/dist/plugin/broker.d.ts +0 -73
  175. package/dist/plugin/broker.js +0 -140
  176. package/dist/plugin/broker.js.map +0 -1
  177. package/dist/plugin/tdd-tool.d.ts +0 -62
  178. package/dist/plugin/tdd-tool.js +0 -336
  179. package/dist/plugin/tdd-tool.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/plugin/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/plugin/server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,59 @@
1
+ import { type CallerSessionClient } from "../kernel/caller.js";
2
+ import { type SetupProbeReport } from "../kernel/setup.js";
3
+ /** setup_control 工具依赖:项目目录 + caller 判定所需的 session client */
4
+ export interface SetupControlDeps {
5
+ projectDir: string;
6
+ sessionClient: CallerSessionClient;
7
+ }
8
+ export type SetupControlResponse = {
9
+ ok: boolean;
10
+ readiness?: SetupProbeReport;
11
+ profileConfirmed?: boolean;
12
+ created?: string[];
13
+ updated?: string[];
14
+ existing?: string[];
15
+ prNumber?: number | null;
16
+ initialized?: boolean;
17
+ committed?: boolean;
18
+ remoteCreated?: boolean;
19
+ error?: {
20
+ code: string;
21
+ message: string;
22
+ };
23
+ };
24
+ /**
25
+ * setup_control 工具工厂(spec §2.3)。
26
+ * 三 op:probe(readiness 报告) / generate-workflows(缺失时生成草案 + Setup PR) / confirm-profile(Profile 写回 AGENTS.md)。
27
+ * caller:primary。server.ts 接线由后续批次统一处理(本批不注册,避免文件冲突)。
28
+ */
29
+ export declare function createSetupControlTool(deps: SetupControlDeps): {
30
+ description: string;
31
+ args: {
32
+ op: import("zod").ZodEnum<{
33
+ probe: "probe";
34
+ "generate-workflows": "generate-workflows";
35
+ "confirm-profile": "confirm-profile";
36
+ "init-repo": "init-repo";
37
+ }>;
38
+ pr_title: import("zod").ZodOptional<import("zod").ZodString>;
39
+ test_command: import("zod").ZodOptional<import("zod").ZodString>;
40
+ profile_overrides: import("zod").ZodOptional<import("zod").ZodString>;
41
+ create_remote: import("zod").ZodOptional<import("zod").ZodBoolean>;
42
+ remote_name: import("zod").ZodOptional<import("zod").ZodString>;
43
+ private: import("zod").ZodOptional<import("zod").ZodBoolean>;
44
+ };
45
+ execute(args: {
46
+ op: "probe" | "generate-workflows" | "confirm-profile" | "init-repo";
47
+ pr_title?: string | undefined;
48
+ test_command?: string | undefined;
49
+ profile_overrides?: string | undefined;
50
+ create_remote?: boolean | undefined;
51
+ remote_name?: string | undefined;
52
+ private?: boolean | undefined;
53
+ }, context: import("@opencode-ai/plugin/tool").ToolContext): Promise<import("@opencode-ai/plugin/tool").ToolResult>;
54
+ };
55
+ /**
56
+ * 独立注册辅助:把 setup_control 挂到工具注册表。
57
+ * 供后续批次(批 8-11 或最终接线)在 server.ts 统一接线时调用。
58
+ */
59
+ export declare function registerSetupControl(registry: Record<string, unknown>, deps: SetupControlDeps): void;
@@ -0,0 +1,111 @@
1
+ import { tool } from "@opencode-ai/plugin/tool";
2
+ import { requireCaller, CALLER_NOT_AUTHORIZED } from "../kernel/caller.js";
3
+ import { resolveProjectDir } from "../util/paths.js";
4
+ import { probe, generateWorkflows, confirmProjectProfile, initRepo, } from "../kernel/setup.js";
5
+ const DEFAULT_PR_TITLE = "chore: add CI/release workflow drafts";
6
+ /**
7
+ * setup_control 工具工厂(spec §2.3)。
8
+ * 三 op:probe(readiness 报告) / generate-workflows(缺失时生成草案 + Setup PR) / confirm-profile(Profile 写回 AGENTS.md)。
9
+ * caller:primary。server.ts 接线由后续批次统一处理(本批不注册,避免文件冲突)。
10
+ */
11
+ export function createSetupControlTool(deps) {
12
+ return tool({
13
+ description: `Detect project setup readiness, generate missing CI/release workflow drafts, and confirm the project profile.
14
+
15
+ Operations:
16
+ - probe: Detect git/gh availability, AGENTS.md Profile, CI/release workflows, and branch protection. Returns a readiness report (development-ready / release-ready).
17
+ - generate-workflows: Generate missing CI/release workflow drafts under .github/workflows/ (tech-stack agnostic), then create a chore/setup-workflows branch, commit, push, and open a Setup PR for manual merge.
18
+ - confirm-profile: After user confirmation, write the Project Profile block (from profile_overrides) back to the root AGENTS.md.
19
+
20
+ Caller: primary.`,
21
+ args: {
22
+ op: tool.schema.enum(["probe", "generate-workflows", "confirm-profile", "init-repo"]).describe("Setup operation"),
23
+ pr_title: tool.schema.string().optional().describe("PR title for generate-workflows"),
24
+ test_command: tool.schema
25
+ .string()
26
+ .optional()
27
+ .describe("Test command to inject into the generated ci.yml (falls back to the confirmed Profile testCommand; keeps <test-command> placeholder when both are absent)"),
28
+ profile_overrides: tool.schema.string().optional().describe("JSON of user-confirmed profile fields for confirm-profile"),
29
+ create_remote: tool.schema.boolean().optional().describe("Create a GitHub remote (gh repo create --source . --push) for init-repo"),
30
+ remote_name: tool.schema.string().optional().describe("Remote repository name for init-repo (defaults to the directory name)"),
31
+ private: tool.schema.boolean().optional().describe("Create the remote repository as private for init-repo"),
32
+ },
33
+ async execute(args, ctx) {
34
+ const op = args.op;
35
+ const denied = await requireCaller(ctx, ["primary"], op, deps.sessionClient);
36
+ if (denied)
37
+ return errorResponse(CALLER_NOT_AUTHORIZED, denied);
38
+ // 会话级项目目录优先(workspace root 异常会话下插件级 projectDir 可能是 `/`)
39
+ const projectDir = resolveProjectDir(ctx.directory, deps.projectDir);
40
+ try {
41
+ switch (op) {
42
+ case "probe": {
43
+ const readiness = await probe(projectDir);
44
+ return okResponse({ readiness });
45
+ }
46
+ case "generate-workflows": {
47
+ const prTitle = args.pr_title ?? DEFAULT_PR_TITLE;
48
+ const testCommand = args.test_command;
49
+ const result = await generateWorkflows(projectDir, { prTitle, testCommand });
50
+ if (!result.ok) {
51
+ return errorResponse("SETUP_FAILED", result.error ?? "failed to generate workflows");
52
+ }
53
+ return okResponse({
54
+ created: result.created,
55
+ updated: result.updated,
56
+ existing: result.existing,
57
+ prNumber: result.prNumber,
58
+ });
59
+ }
60
+ case "confirm-profile": {
61
+ const overrides = args.profile_overrides;
62
+ if (!overrides) {
63
+ return errorResponse("POLICY_INVALID", "profile_overrides is required for confirm-profile");
64
+ }
65
+ const result = await confirmProjectProfile(projectDir, overrides);
66
+ if (!result.ok) {
67
+ return errorResponse(result.code ?? "POLICY_INVALID", result.message ?? "failed to confirm profile");
68
+ }
69
+ return okResponse({ profileConfirmed: true });
70
+ }
71
+ case "init-repo": {
72
+ const result = await initRepo(projectDir, {
73
+ createRemote: args.create_remote === true,
74
+ remoteName: args.remote_name,
75
+ private: args.private === true,
76
+ });
77
+ if (!result.ok) {
78
+ return errorResponse("SETUP_FAILED", result.error ?? "failed to initialize repository");
79
+ }
80
+ return okResponse({
81
+ initialized: result.initialized,
82
+ committed: result.committed,
83
+ remoteCreated: result.remoteCreated,
84
+ });
85
+ }
86
+ default:
87
+ return errorResponse("UNKNOWN_OP", `Unknown op: "${op}"`);
88
+ }
89
+ }
90
+ catch (err) {
91
+ return errorResponse("INTERNAL_ERROR", String(err));
92
+ }
93
+ },
94
+ });
95
+ }
96
+ /**
97
+ * 独立注册辅助:把 setup_control 挂到工具注册表。
98
+ * 供后续批次(批 8-11 或最终接线)在 server.ts 统一接线时调用。
99
+ */
100
+ export function registerSetupControl(registry, deps) {
101
+ registry.setup_control = createSetupControlTool(deps);
102
+ }
103
+ function okResponse(overrides = {}) {
104
+ const resp = { ok: true, ...overrides };
105
+ return JSON.stringify(resp, null, 2);
106
+ }
107
+ function errorResponse(code, message) {
108
+ const resp = { ok: false, error: { code, message } };
109
+ return JSON.stringify(resp, null, 2);
110
+ }
111
+ //# sourceMappingURL=setup-control.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-control.js","sourceRoot":"","sources":["../../src/plugin/setup-control.ts"],"names":[],"mappings":"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"}
@@ -1,37 +1,10 @@
1
- import type { AgentEntry } from "./agents.js";
2
- export interface AmbientCredentialSource {
3
- source: string;
4
- /** "env" | "config_file" | "credential_helper" */
5
- kind: "env" | "config_file" | "credential_helper";
6
- /** 具体位置(如 "GH_TOKEN" 或 "~/.config/gh/hosts.yml") */
7
- location: string;
8
- }
9
- export interface AmbientCredentialReport {
10
- hasWriteCredentials: boolean;
11
- hasGitCredentialHelper: boolean;
12
- sources: AmbientCredentialSource[];
13
- }
14
1
  /**
15
- * 检测宿主环境中的 GitHub 写凭证。
2
+ * 为 Agent 生成 shell 环境变量。
16
3
  *
17
- * 检查内容:
18
- * - GH_TOKEN / GITHUB_TOKEN / GH_ENTERPRISE_TOKEN 环境变量
19
- * - ~/.config/gh/hosts.yml(GitHub CLI OAuth token)
20
- * - ~/.gitconfig 中的 credential helper
21
- *
22
- * 注意:这只能检测常见模式,不是完备的安全审计。
23
- */
24
- export declare function detectAmbientCredentials(): AmbientCredentialReport;
25
- /**
26
- * 为 Worker agent 创建隔离 shell 环境变量。
27
- *
28
- * 隔离措施:
29
- * - HOME 设为临时目录(避免访问宿主 ~/.ssh, ~/.gitconfig 等)
30
- * - GH_CONFIG_DIR 设为临时目录下的隔离路径
31
- * - GH_TOKEN / GITHUB_TOKEN 显式清空
32
- * - GIT_CONFIG_PARAMETERS 不传递(避免继承宿主 git config)
33
- *
34
- * 重要:shell.env 只作为附加措施,不作为唯一隔离边界。
35
- * 真正的权限控制来自 agent permission 字段 + ambient credential 检测。
4
+ * 复用宿主 gh auth:不再清空 GH_TOKEN/GITHUB_TOKEN、不替换 HOME/GH_CONFIG_DIR,
5
+ * Agent shell 内只读 gh/git 可用(PRD R4「模型可直接只读 git/gh」)。
6
+ * 安全边界:写操作凭据与模型 shell 共享宿主 auth,因此**写操作靠 permission 规则
7
+ * (deny 置尾、最后匹配优先、auto 模式 deny 生效)收敛到生命周期工具**,
8
+ * 而非依赖凭据隔离——见 spec §7.3 的取舍说明。
36
9
  */
37
- export declare function createIsolatedShellEnv(agent: AgentEntry): Record<string, string>;
10
+ export declare function createAgentShellEnv(): Record<string, string>;
@@ -1,144 +1,19 @@
1
- import fs from "node:fs";
2
- import path from "node:path";
3
- import os from "node:os";
4
- // ─── 凭证检测 ───
5
- const GITHUB_WRITE_TOKEN_PATTERNS = [
6
- /^ghp_/, // classic PAT
7
- /^github_pat_/, // fine-grained PAT
8
- /^gho_/, // OAuth token
9
- /^ghu_/, // user-to-server token
10
- /^ghs_/, // server-to-server token
11
- /^ghr_/, // refresh token
12
- ];
1
+ // ─── Shell 环境 ───
13
2
  /**
14
- * 检测 token 值是否看起来是 GitHub 写凭证。
15
- */
16
- function looksLikeGithubToken(value) {
17
- const trimmed = value.trim();
18
- if (!trimmed)
19
- return false;
20
- return GITHUB_WRITE_TOKEN_PATTERNS.some(p => p.test(trimmed));
21
- }
22
- /**
23
- * 检测环境变量中的 GitHub API 凭证。
24
- */
25
- function detectEnvTokens() {
26
- const sources = [];
27
- const keys = ["GH_TOKEN", "GITHUB_TOKEN", "GH_ENTERPRISE_TOKEN"];
28
- for (const key of keys) {
29
- const value = process.env[key];
30
- if (value && looksLikeGithubToken(value)) {
31
- sources.push({
32
- source: key,
33
- kind: "env",
34
- location: `$${key}`,
35
- });
36
- }
37
- }
38
- return sources;
39
- }
40
- /**
41
- * 检测 ~/.config/gh/hosts.yml 中的 oauth_token。
42
- */
43
- function detectGhHostsConfig() {
44
- const sources = [];
45
- const home = process.env.HOME || os.homedir();
46
- const hostsPath = path.join(home, ".config", "gh", "hosts.yml");
47
- try {
48
- if (!fs.existsSync(hostsPath))
49
- return sources;
50
- const content = fs.readFileSync(hostsPath, "utf8");
51
- // 简单检测 oauth_token 字段
52
- if (/oauth_token\s*:\s*\S+/.test(content)) {
53
- sources.push({
54
- source: "gh_hosts_config",
55
- kind: "config_file",
56
- location: hostsPath,
57
- });
58
- }
59
- }
60
- catch {
61
- // 读取失败时静默忽略
62
- }
63
- return sources;
64
- }
65
- /**
66
- * 检测 git credential helper 配置。
67
- * 检查 ~/.gitconfig 中是否配置了 credential.helper。
68
- */
69
- function detectGitCredentialHelper() {
70
- const sources = [];
71
- const home = process.env.HOME || os.homedir();
72
- const gitconfigPath = path.join(home, ".gitconfig");
73
- let hasHelper = false;
74
- try {
75
- if (!fs.existsSync(gitconfigPath))
76
- return { hasHelper, sources };
77
- const content = fs.readFileSync(gitconfigPath, "utf8");
78
- if (/credential\s*\]\s*\n\s*helper\s*=/.test(content) || /\[credential\s+"[^"]*"\]/.test(content)) {
79
- hasHelper = true;
80
- sources.push({
81
- source: "git_credential_helper",
82
- kind: "credential_helper",
83
- location: gitconfigPath,
84
- });
85
- }
86
- }
87
- catch {
88
- // 读取失败静默忽略
89
- }
90
- return { hasHelper, sources };
91
- }
92
- /**
93
- * 检测宿主环境中的 GitHub 写凭证。
94
- *
95
- * 检查内容:
96
- * - GH_TOKEN / GITHUB_TOKEN / GH_ENTERPRISE_TOKEN 环境变量
97
- * - ~/.config/gh/hosts.yml(GitHub CLI OAuth token)
98
- * - ~/.gitconfig 中的 credential helper
3
+ * 为 Agent 生成 shell 环境变量。
99
4
  *
100
- * 注意:这只能检测常见模式,不是完备的安全审计。
5
+ * 复用宿主 gh auth:不再清空 GH_TOKEN/GITHUB_TOKEN、不替换 HOME/GH_CONFIG_DIR,
6
+ * Agent shell 内只读 gh/git 可用(PRD R4「模型可直接只读 git/gh」)。
7
+ * 安全边界:写操作凭据与模型 shell 共享宿主 auth,因此**写操作靠 permission 规则
8
+ * (deny 置尾、最后匹配优先、auto 模式 deny 生效)收敛到生命周期工具**,
9
+ * 而非依赖凭据隔离——见 spec §7.3 的取舍说明。
101
10
  */
102
- export function detectAmbientCredentials() {
103
- const envSources = detectEnvTokens();
104
- const ghConfigSources = detectGhHostsConfig();
105
- const { hasHelper, sources: helperSources } = detectGitCredentialHelper();
106
- const allSources = [...envSources, ...ghConfigSources, ...helperSources];
107
- const hasWriteCredentials = allSources.length > 0;
11
+ export function createAgentShellEnv() {
108
12
  return {
109
- hasWriteCredentials,
110
- hasGitCredentialHelper: hasHelper,
111
- sources: allSources,
112
- };
113
- }
114
- // ─── Shell 隔离 ───
115
- /**
116
- * 为 Worker agent 创建隔离 shell 环境变量。
117
- *
118
- * 隔离措施:
119
- * - HOME 设为临时目录(避免访问宿主 ~/.ssh, ~/.gitconfig 等)
120
- * - GH_CONFIG_DIR 设为临时目录下的隔离路径
121
- * - GH_TOKEN / GITHUB_TOKEN 显式清空
122
- * - GIT_CONFIG_PARAMETERS 不传递(避免继承宿主 git config)
123
- *
124
- * 重要:shell.env 只作为附加措施,不作为唯一隔离边界。
125
- * 真正的权限控制来自 agent permission 字段 + ambient credential 检测。
126
- */
127
- export function createIsolatedShellEnv(agent) {
128
- const shellHome = fs.mkdtempSync(path.join(os.tmpdir(), "cabbage-shell-"));
129
- const ghConfigDir = path.join(shellHome, ".config", "gh");
130
- fs.mkdirSync(ghConfigDir, { recursive: true });
131
- const env = {
132
- HOME: shellHome,
133
- GH_CONFIG_DIR: ghConfigDir,
13
+ // 防系统 gitconfig 干扰
14
+ GIT_CONFIG_NOSYSTEM: "1",
15
+ // 禁止交互式凭据提示(失败即失败,不挂起等待输入)
16
+ GIT_TERMINAL_PROMPT: "0",
134
17
  };
135
- // 清除所有 GitHub API token 环境变量
136
- // shell.env 是附加措施 — 主要隔离由 agent permission 提供
137
- env.GH_TOKEN = "";
138
- env.GITHUB_TOKEN = "";
139
- env.GH_ENTERPRISE_TOKEN = "";
140
- // 不传递宿主 git config(隔离 HOME 已处理此问题,但显式清空更安全)
141
- env.GIT_CONFIG_NOSYSTEM = "1";
142
- return env;
143
18
  }
144
19
  //# sourceMappingURL=shell.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shell.js","sourceRoot":"","sources":["../../src/plugin/shell.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shell.js","sourceRoot":"","sources":["../../src/plugin/shell.ts"],"names":[],"mappings":"AAAA,mBAAmB;AAEnB;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB;IACjC,OAAO;QACL,mBAAmB;QACnB,mBAAmB,EAAE,GAAG;QACxB,2BAA2B;QAC3B,mBAAmB,EAAE,GAAG;KACzB,CAAA;AACH,CAAC"}
@@ -1 +1 @@
1
- export declare function setupSkillsDir(sourceSkillsDir: string, contextDir?: string, promptsDir?: string): Promise<string>;
1
+ export declare function setupSkillsDir(sourceSkillsDir: string, promptsDir?: string): Promise<string>;
@@ -11,18 +11,12 @@ function resolveSkillsPath() {
11
11
  }
12
12
  return path.join(homedir(), ".config", "opencode", "cabbage", "skills");
13
13
  }
14
- export async function setupSkillsDir(sourceSkillsDir, contextDir, promptsDir) {
14
+ export async function setupSkillsDir(sourceSkillsDir, promptsDir) {
15
15
  const destDir = resolveSkillsPath();
16
16
  // 清理旧内容,确保与插件版本一致
17
17
  await rm(destDir, { recursive: true, force: true });
18
18
  await mkdir(destDir, { recursive: true });
19
19
  await cp(sourceSkillsDir, destDir, { recursive: true });
20
- if (contextDir) {
21
- try {
22
- await cp(contextDir, path.join(destDir, "_context"), { recursive: true });
23
- }
24
- catch { }
25
- }
26
20
  if (promptsDir) {
27
21
  try {
28
22
  await cp(promptsDir, path.join(destDir, "_prompts"), { recursive: true });
@@ -1 +1 @@
1
- {"version":3,"file":"skills.js","sourceRoot":"","sources":["../../src/plugin/skills.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC9E,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B;;;GAGG;AACH,SAAS,iBAAiB;IACxB,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC;QACnC,OAAO,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAA;IACvC,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAA;AACzE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,eAAuB,EAAE,UAAmB,EAAE,UAAmB;IACpG,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAA;IAEnC,kBAAkB;IAClB,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;IACnD,MAAM,KAAK,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAEzC,MAAM,EAAE,CAAC,eAAe,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAEvD,IAAI,UAAU,EAAE,CAAC;QACf,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QAC3E,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACZ,CAAC;IAED,IAAI,UAAU,EAAE,CAAC;QACf,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QAC3E,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACZ,CAAC;IAED,KAAK,UAAU,UAAU,CAAC,GAAW;QACnC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAA;QAC3D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;YAC3C,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBACxB,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAA;gBAC1B,SAAQ;YACV,CAAC;YACD,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBAC9B,IAAI,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;gBAC9C,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,mBAAmB,EAAE,GAAG,OAAO,GAAG,CAAC,CAAA;gBAChE,MAAM,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;YAC5C,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,UAAU,CAAC,OAAO,CAAC,CAAA;IAEzB,OAAO,OAAO,CAAA;AAChB,CAAC"}
1
+ {"version":3,"file":"skills.js","sourceRoot":"","sources":["../../src/plugin/skills.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC9E,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B;;;GAGG;AACH,SAAS,iBAAiB;IACxB,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC;QACnC,OAAO,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAA;IACvC,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAA;AACzE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,eAAuB,EAAE,UAAmB;IAC/E,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAA;IAEnC,kBAAkB;IAClB,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;IACnD,MAAM,KAAK,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAEzC,MAAM,EAAE,CAAC,eAAe,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAEvD,IAAI,UAAU,EAAE,CAAC;QACf,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QAC3E,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACZ,CAAC;IAED,KAAK,UAAU,UAAU,CAAC,GAAW;QACnC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAA;QAC3D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;YAC3C,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBACxB,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAA;gBAC1B,SAAQ;YACV,CAAC;YACD,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBAC9B,IAAI,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;gBAC9C,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,mBAAmB,EAAE,GAAG,OAAO,GAAG,CAAC,CAAA;gBAChE,MAAM,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;YAC5C,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,UAAU,CAAC,OAAO,CAAC,CAAA;IAEzB,OAAO,OAAO,CAAA;AAChB,CAAC"}
@@ -0,0 +1,90 @@
1
+ /** task_control 工具依赖 */
2
+ export interface TaskControlDeps {
3
+ projectDir: string;
4
+ sessionClient: {
5
+ session: {
6
+ get(input: {
7
+ sessionID: string;
8
+ }): Promise<{
9
+ data?: {
10
+ parentID?: string | null;
11
+ };
12
+ }>;
13
+ };
14
+ };
15
+ }
16
+ export type TaskControlResponse = {
17
+ ok: boolean;
18
+ task?: {
19
+ parentIssueNumber?: number;
20
+ taskId?: string;
21
+ issueNumber?: number;
22
+ };
23
+ issueNumber?: number;
24
+ branch?: string;
25
+ worktreePath?: string;
26
+ policy?: unknown;
27
+ baseline?: unknown;
28
+ prNumber?: number;
29
+ evidenceRevision?: number;
30
+ verdict?: string;
31
+ risk?: string;
32
+ warning?: string;
33
+ reason?: string;
34
+ report?: unknown;
35
+ missing?: string[];
36
+ error?: {
37
+ code: string;
38
+ message: string;
39
+ };
40
+ };
41
+ /**
42
+ * task_control 工具工厂(spec §2.3)。
43
+ * caller 门禁:primary 全量;developer 拒绝(无门禁绕过面)。
44
+ */
45
+ export declare function createTaskControlTool(deps: TaskControlDeps): {
46
+ description: string;
47
+ args: {
48
+ op: import("zod").ZodEnum<{
49
+ "create-task": "create-task";
50
+ "start-task": "start-task";
51
+ "submit-task": "submit-task";
52
+ "submit-review": "submit-review";
53
+ "merge-task": "merge-task";
54
+ "cancel-task": "cancel-task";
55
+ "destroy-worktree": "destroy-worktree";
56
+ "status-task": "status-task";
57
+ }>;
58
+ title: import("zod").ZodOptional<import("zod").ZodString>;
59
+ parent_issue_number: import("zod").ZodOptional<import("zod").ZodNumber>;
60
+ task_id: import("zod").ZodOptional<import("zod").ZodString>;
61
+ acceptance_criteria: import("zod").ZodOptional<import("zod").ZodString>;
62
+ depends_on: import("zod").ZodOptional<import("zod").ZodString>;
63
+ pr_number: import("zod").ZodOptional<import("zod").ZodNumber>;
64
+ risk: import("zod").ZodOptional<import("zod").ZodEnum<{
65
+ high: "high";
66
+ low: "low";
67
+ }>>;
68
+ verdict: import("zod").ZodOptional<import("zod").ZodEnum<{
69
+ approve: "approve";
70
+ "request-changes": "request-changes";
71
+ }>>;
72
+ comment: import("zod").ZodOptional<import("zod").ZodString>;
73
+ user_confirmed: import("zod").ZodOptional<import("zod").ZodBoolean>;
74
+ };
75
+ execute(args: {
76
+ op: "create-task" | "start-task" | "submit-task" | "submit-review" | "merge-task" | "cancel-task" | "destroy-worktree" | "status-task";
77
+ title?: string | undefined;
78
+ parent_issue_number?: number | undefined;
79
+ task_id?: string | undefined;
80
+ acceptance_criteria?: string | undefined;
81
+ depends_on?: string | undefined;
82
+ pr_number?: number | undefined;
83
+ risk?: "high" | "low" | undefined;
84
+ verdict?: "approve" | "request-changes" | undefined;
85
+ comment?: string | undefined;
86
+ user_confirmed?: boolean | undefined;
87
+ }, context: import("@opencode-ai/plugin/tool").ToolContext): Promise<import("@opencode-ai/plugin/tool").ToolResult>;
88
+ };
89
+ /** 独立注册辅助:把 task_control 挂到工具注册表(后续接线批次使用) */
90
+ export declare function registerTaskControl(registry: Record<string, unknown>, deps: TaskControlDeps): void;