artifact-chain-assistant 0.8.0 → 0.8.2

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 (121) hide show
  1. package/.claude-plugin/plugin.json +18 -3
  2. package/.codex-plugin/plugin.json +4 -13
  3. package/AGENT-METHOD-REGISTRY.md +238 -0
  4. package/AGENT-METHOD-REGISTRY.zh-CN.md +229 -0
  5. package/CHANGELOG.md +29 -0
  6. package/CONTRIBUTING.md +6 -1
  7. package/EXTENDED-ARTIFACT-CATALOG.md +3 -0
  8. package/EXTENDED-ARTIFACT-CATALOG.zh-CN.md +3 -0
  9. package/INSTALL.md +30 -16
  10. package/README.md +59 -275
  11. package/README.zh-CN.md +24 -176
  12. package/adapters/claude/.claude-plugin/plugin.json +18 -3
  13. package/adapters/claude/EXTENDED-ARTIFACT-CATALOG.md +3 -0
  14. package/adapters/claude/EXTENDED-ARTIFACT-CATALOG.zh-CN.md +3 -0
  15. package/adapters/claude/INSTALL.md +33 -16
  16. package/adapters/claude/agent-methods/catalog.yaml +40 -4
  17. package/adapters/claude/compatibility.json +4 -4
  18. package/adapters/claude/scripts/lib/compatibility-policy.mjs +0 -65
  19. package/adapters/claude/skills/artifact-chain-bootstrap/SKILL.md +1 -1
  20. package/adapters/claude/skills/artifact-chain-maintainer/SKILL.md +1 -1
  21. package/adapters/claude/skills/artifact-review/SKILL.md +1 -1
  22. package/adapters/claude/skills/help/SKILL.md +96 -0
  23. package/adapters/claude/skills/prd-feature/author/references/compose.md +43 -0
  24. package/adapters/claude/skills/prd-feature/author/references/inspect.md +94 -0
  25. package/adapters/claude/skills/prd-feature/author/references/validate.md +65 -0
  26. package/adapters/claude/skills/prd-feature/review/references/compose.md +43 -0
  27. package/adapters/claude/skills/prd-feature/review/references/inspect.md +94 -0
  28. package/adapters/claude/skills/prd-feature/review/references/validate.md +65 -0
  29. package/adapters/claude/skills/quickstart/SKILL.md +113 -0
  30. package/adapters/claude/skills/scenario-script/author/references/compose.md +43 -0
  31. package/adapters/claude/skills/scenario-script/author/references/inspect.md +105 -0
  32. package/adapters/claude/skills/scenario-script/author/references/validate.md +72 -0
  33. package/adapters/claude/skills/scenario-script/review/references/compose.md +43 -0
  34. package/adapters/claude/skills/scenario-script/review/references/inspect.md +105 -0
  35. package/adapters/claude/skills/scenario-script/review/references/validate.md +72 -0
  36. package/adapters/claude/skills/setup/SKILL.md +118 -0
  37. package/adapters/claude/skills/where-am-i/SKILL.md +1 -1
  38. package/adapters/codex/.codex-plugin/plugin.json +3 -12
  39. package/adapters/codex/EXTENDED-ARTIFACT-CATALOG.md +3 -0
  40. package/adapters/codex/EXTENDED-ARTIFACT-CATALOG.zh-CN.md +3 -0
  41. package/adapters/codex/INSTALL.md +33 -16
  42. package/adapters/codex/agent-methods/catalog.yaml +40 -4
  43. package/adapters/codex/compatibility.json +4 -4
  44. package/adapters/codex/scripts/lib/compatibility-policy.mjs +0 -65
  45. package/adapters/codex/skills/artifact-chain-bootstrap/SKILL.md +1 -1
  46. package/adapters/codex/skills/artifact-chain-maintainer/SKILL.md +1 -1
  47. package/adapters/codex/skills/artifact-review/SKILL.md +1 -1
  48. package/adapters/codex/skills/help/SKILL.md +96 -0
  49. package/adapters/codex/skills/prd-feature/author/references/compose.md +43 -0
  50. package/adapters/codex/skills/prd-feature/author/references/inspect.md +94 -0
  51. package/adapters/codex/skills/prd-feature/author/references/validate.md +65 -0
  52. package/adapters/codex/skills/prd-feature/review/references/compose.md +43 -0
  53. package/adapters/codex/skills/prd-feature/review/references/inspect.md +94 -0
  54. package/adapters/codex/skills/prd-feature/review/references/validate.md +65 -0
  55. package/adapters/codex/skills/quickstart/SKILL.md +113 -0
  56. package/adapters/codex/skills/scenario-script/author/references/compose.md +43 -0
  57. package/adapters/codex/skills/scenario-script/author/references/inspect.md +105 -0
  58. package/adapters/codex/skills/scenario-script/author/references/validate.md +72 -0
  59. package/adapters/codex/skills/scenario-script/review/references/compose.md +43 -0
  60. package/adapters/codex/skills/scenario-script/review/references/inspect.md +105 -0
  61. package/adapters/codex/skills/scenario-script/review/references/validate.md +72 -0
  62. package/adapters/codex/skills/setup/SKILL.md +118 -0
  63. package/adapters/codex/skills/where-am-i/SKILL.md +1 -1
  64. package/agent-methods/catalog.yaml +40 -4
  65. package/compatibility.json +4 -4
  66. package/package.json +5 -3
  67. package/scripts/build-adapters.mjs +22 -20
  68. package/scripts/check-method-registry.mjs +8 -5
  69. package/scripts/lib/compatibility-policy.mjs +0 -65
  70. package/scripts/sync-skills.mjs +169 -1
  71. package/skills/artifact-audit/SKILL.md +80 -0
  72. package/skills/artifact-batch/SKILL.md +115 -0
  73. package/skills/artifact-chain-bootstrap/SKILL.md +343 -0
  74. package/skills/artifact-chain-maintainer/SKILL.md +167 -0
  75. package/skills/artifact-generate/SKILL.md +89 -0
  76. package/skills/artifact-repair/SKILL.md +124 -0
  77. package/skills/artifact-review/SKILL.md +122 -0
  78. package/skills/artifact-workflow-worker/SKILL.md +90 -0
  79. package/skills/help/SKILL.md +96 -0
  80. package/skills/prd-feature/SKILL.md +68 -0
  81. package/skills/prd-feature/author/SKILL.md +92 -0
  82. package/skills/prd-feature/author/references/compose.md +43 -0
  83. package/skills/prd-feature/author/references/inspect.md +94 -0
  84. package/skills/prd-feature/author/references/validate.md +65 -0
  85. package/skills/prd-feature/references/compose.md +43 -0
  86. package/skills/prd-feature/references/inspect.md +94 -0
  87. package/skills/prd-feature/references/validate.md +65 -0
  88. package/skills/prd-feature/repair/SKILL.md +135 -0
  89. package/skills/prd-feature/review/SKILL.md +134 -0
  90. package/skills/prd-feature/review/references/compose.md +43 -0
  91. package/skills/prd-feature/review/references/inspect.md +94 -0
  92. package/skills/prd-feature/review/references/validate.md +65 -0
  93. package/skills/quickstart/SKILL.md +113 -0
  94. package/skills/scenario-script/SKILL.md +76 -0
  95. package/skills/scenario-script/author/SKILL.md +111 -0
  96. package/skills/scenario-script/author/references/compose.md +43 -0
  97. package/skills/scenario-script/author/references/inspect.md +105 -0
  98. package/skills/scenario-script/author/references/validate.md +72 -0
  99. package/skills/scenario-script/references/compose.md +43 -0
  100. package/skills/scenario-script/references/inspect.md +105 -0
  101. package/skills/scenario-script/references/validate.md +72 -0
  102. package/skills/scenario-script/repair/SKILL.md +135 -0
  103. package/skills/scenario-script/review/SKILL.md +137 -0
  104. package/skills/scenario-script/review/references/compose.md +43 -0
  105. package/skills/scenario-script/review/references/inspect.md +105 -0
  106. package/skills/scenario-script/review/references/validate.md +72 -0
  107. package/skills/setup/SKILL.md +118 -0
  108. package/skills/where-am-i/SKILL.md +233 -0
  109. package/skills-src/artifact-chain-bootstrap/SKILL.md +1 -1
  110. package/skills-src/artifact-chain-maintainer/SKILL.md +1 -1
  111. package/skills-src/artifact-review/SKILL.md +1 -1
  112. package/skills-src/help/SKILL.md +96 -0
  113. package/skills-src/quickstart/SKILL.md +113 -0
  114. package/skills-src/setup/SKILL.md +118 -0
  115. package/skills-src/where-am-i/SKILL.md.tpl +1 -1
  116. package/templates/claude/plugin.json.tpl +17 -2
  117. package/templates/codex/plugin.json.tpl +2 -11
  118. package/.agents/plugins/marketplace.json +0 -20
  119. package/.claude-plugin/marketplace.json +0 -20
  120. package/templates/claude/marketplace.json.tpl +0 -20
  121. package/templates/codex/marketplace.json.tpl +0 -20
@@ -1,11 +1,26 @@
1
1
  {
2
2
  "name": "artifact-chain-assistant",
3
- "displayName": "Artifact Chain Assistant",
4
- "version": "0.8.0",
3
+ "version": "0.8.2",
5
4
  "description": "Artifact-chain intake, review/repair/batch/audit workflows, diagnostics, hooks, and version-lock maintenance helpers.",
6
5
  "author": {
7
6
  "name": "Artifact Graph Maintainers"
8
7
  },
9
8
  "license": "Apache-2.0",
10
- "keywords": ["artifact-graph", "traceability", "codex", "claude-code"]
9
+ "keywords": ["artifact-graph", "traceability", "codex", "claude-code"],
10
+ "skills": "./skills/",
11
+ "interface": {
12
+ "displayName": "Artifact Chain Assistant",
13
+ "shortDescription": "Artifact-chain context, review workflows, and version-lock maintenance.",
14
+ "longDescription": "Reusable skills for artifact-graph projects, including intake routing, generic artifact review/repair/batch/audit workflows, diagnostics, and version-lock refresh guidance.",
15
+ "developerName": "Artifact Graph Maintainers",
16
+ "category": "Productivity",
17
+ "capabilities": ["Write"],
18
+ "defaultPrompt": [
19
+ "Check where this artifact-chain task should start.",
20
+ "Review a design-spec artifact for traceability and completeness.",
21
+ "Run a batch review on multiple artifacts.",
22
+ "Refresh version locks for my staged changes.",
23
+ "Run artifact-chain doctor for this project."
24
+ ]
25
+ }
11
26
  }
@@ -1,27 +1,18 @@
1
1
  {
2
2
  "name": "artifact-chain-assistant",
3
- "version": "0.8.0",
3
+ "displayName": "Artifact Chain Assistant",
4
+ "version": "0.8.2",
4
5
  "description": "Artifact-chain intake, review/repair/batch/audit workflows, diagnostics, and version-lock maintenance helpers.",
5
6
  "author": {
6
7
  "name": "Artifact Graph Maintainers"
7
8
  },
8
9
  "license": "Apache-2.0",
9
10
  "keywords": ["artifact-graph", "traceability", "codex", "claude-code"],
10
- "skills": "./skills/",
11
+ "skills": "./adapters/codex/skills/",
11
12
  "hooks": {},
12
13
  "interface": {
13
14
  "displayName": "Artifact Chain Assistant",
14
15
  "shortDescription": "Artifact-chain context, review workflows, and version-lock maintenance.",
15
- "longDescription": "Reusable skills for artifact-graph projects, including intake routing, generic artifact review/repair/batch/audit workflows, diagnostics, and version-lock refresh guidance.",
16
- "developerName": "Artifact Graph Maintainers",
17
- "category": "Productivity",
18
- "capabilities": ["Write"],
19
- "defaultPrompt": [
20
- "Check where this artifact-chain task should start.",
21
- "Review a design-spec artifact for traceability and completeness.",
22
- "Run a batch review on multiple artifacts.",
23
- "Refresh version locks for my staged changes.",
24
- "Run artifact-chain doctor for this project."
25
- ]
16
+ "category": "Productivity"
26
17
  }
27
18
  }
@@ -0,0 +1,238 @@
1
+ # Agent Method Registry
2
+
3
+ [中文](AGENT-METHOD-REGISTRY.zh-CN.md)
4
+
5
+ The plugin bundles a deterministic agent-method-registry integration covering catalog resolution,
6
+ provider verification, and CLI diagnostics.
7
+
8
+ ## Default Catalog
9
+
10
+ The default catalog is at `<plugin-root>/agent-methods/catalog.yaml` and registers **13 workflow
11
+ entries**: 8 specialized entries across the `prd-feature` and `scenario-script` families plus 5
12
+ generic review, repair, batch, audit, and generate entries. Generic entries exclude PRD/scenario
13
+ types, so every supported type+intent query remains unique.
14
+
15
+ The catalog also includes 3 `kind: operation` entries (`artifact.help`, `artifact.setup`,
16
+ `artifact.quickstart`) for read-only discovery and diagnostics; they are not workflow entries
17
+ and are omitted from the table below.
18
+
19
+ | Ref | Family | Entry |
20
+ |-----|--------|-------|
21
+ | `artifact.prd-feature.default` | prd-feature | Default routing entry |
22
+ | `artifact.prd-feature.author` | prd-feature | Author |
23
+ | `artifact.prd-feature.review` | prd-feature | Review |
24
+ | `artifact.prd-feature.repair` | prd-feature | Repair |
25
+ | `artifact.scenario-script.default` | scenario-script | Default routing entry |
26
+ | `artifact.scenario-script.author` | scenario-script | Author |
27
+ | `artifact.scenario-script.review` | scenario-script | Review |
28
+ | `artifact.scenario-script.repair` | scenario-script | Repair |
29
+ | `artifact.review` | artifact-review | Review |
30
+ | `artifact.repair` | artifact-repair | Repair |
31
+ | `artifact.batch` | artifact-batch | Batch |
32
+ | `artifact.audit` | artifact-audit | Audit / health |
33
+ | `artifact.generate` | artifact-generate | Generate |
34
+
35
+ ## Standalone Install
36
+
37
+ Install `agent-method-registry@0.2.0` as a separate dependency if you only need the registry
38
+ capabilities:
39
+
40
+ ```bash
41
+ npm install agent-method-registry@0.2.0
42
+ ```
43
+
44
+ The CLI is available as `agent-method-registry` after installation.
45
+
46
+ ## Building the Effective Index
47
+
48
+ The effective index is built from the catalog plus an optional project overlay. First, locate
49
+ the installed plugin root from the host CLI. Do **not** use `require.resolve` — marketplace
50
+ installations do not place the plugin into the target project's `node_modules`.
51
+
52
+ **Codex** — use `codex plugin list --json` and the `CODEX_HOME` cache layout:
53
+
54
+ ```bash
55
+ export CODEX_HOME="${CODEX_HOME:-$HOME/.codex}"
56
+ PLUGIN_ROOT=$(codex plugin list --json 2>/dev/null \
57
+ | node -e "
58
+ let d='';process.stdin.on('data',c=>d+=c);process.stdin.on('end',()=>{
59
+ const data=JSON.parse(d);
60
+ const p=data.installed.find(x=>x.pluginId==='artifact-chain-assistant@artifact-skill-set');
61
+ if(!p||!p.installed||!p.enabled||!p.marketplaceName||!p.name||!p.version){process.stderr.write('artifact-chain-assistant record incomplete\n');process.exit(1);}
62
+ console.log(require('path').join(process.env.CODEX_HOME,'plugins','cache',p.marketplaceName,p.name,p.version));
63
+ });
64
+ ")
65
+ [ -f "$PLUGIN_ROOT/agent-methods/catalog.yaml" ] || { echo "catalog not found at $PLUGIN_ROOT"; exit 1; }
66
+ ```
67
+
68
+ **Claude Code** — use `claude plugin list --json` and `installPath` directly:
69
+
70
+ ```bash
71
+ PLUGIN_ROOT=$(claude plugin list --json 2>/dev/null \
72
+ | node -e "
73
+ let d='';process.stdin.on('data',c=>d+=c);process.stdin.on('end',()=>{
74
+ const p=JSON.parse(d).find(x=>x.id==='artifact-chain-assistant@artifact-skill-set');
75
+ if(!p||!p.enabled||!p.installPath){process.stderr.write('artifact-chain-assistant not found, not enabled, or installPath missing\n');process.exit(1);}
76
+ console.log(p.installPath);
77
+ });
78
+ ")
79
+ [ -f "$PLUGIN_ROOT/agent-methods/catalog.yaml" ] || { echo "catalog not found at $PLUGIN_ROOT"; exit 1; }
80
+ ```
81
+
82
+ > For monorepo development only, the source checkout plugin root is `plugins/artifact-chain-assistant`.
83
+ > Marketplace users must use the host CLI discovery above.
84
+
85
+ After resolving `PLUGIN_ROOT`, verify the target project before running a generic workflow. This
86
+ check is read-only:
87
+
88
+ ```bash
89
+ node "$PLUGIN_ROOT/scripts/check-workflow-profile.mjs" \
90
+ --root . --action review --domain design-spec --format json
91
+ ```
92
+
93
+ Exit code 0 means the required project marker and worker mapping exist. Exit code 2 returns
94
+ `NEEDS_INPUT`; add the missing project profile or worker instead of claiming workflow success.
95
+
96
+ For batch operations, use the split and merge scripts from the same resolved plugin root:
97
+
98
+ ```bash
99
+ # Split artifacts into batches (JSON array to stdout)
100
+ node "$PLUGIN_ROOT/scripts/batch-split.mjs" ./artifacts/design --batch-size 40000
101
+
102
+ # Merge batch results from a results directory (merged JSON to stdout)
103
+ node "$PLUGIN_ROOT/scripts/batch-merge.mjs" ./batch-results --run-id my-run
104
+ ```
105
+
106
+ Then build the index:
107
+
108
+ ```bash
109
+ # Catalog only (no project provider)
110
+ agent-method-registry index \
111
+ --catalog "$PLUGIN_ROOT/agent-methods/catalog.yaml" \
112
+ --out .agent-method-registry/effective-index.json
113
+ ```
114
+
115
+ When no project provider file exists, the registry does **not** create an empty overlay file.
116
+ It builds the effective index from the catalog alone. The `--project` flag is only needed when
117
+ the project defines overrides or disables:
118
+
119
+ ```bash
120
+ # Catalog + project overlay
121
+ agent-method-registry index \
122
+ --catalog "$PLUGIN_ROOT/agent-methods/catalog.yaml" \
123
+ --project agent-methods/project.yaml \
124
+ --out .agent-method-registry/effective-index.json
125
+ ```
126
+
127
+ ## Project-Level Override
128
+
129
+ When the target project defines its own complete entries, put an
130
+ `agent-methods/project.yaml` file in the project root. For example, to override the default
131
+ `prd-feature` routing entry with a project-local skill:
132
+
133
+ ```yaml
134
+ schemaVersion: 1
135
+ overrides:
136
+ artifact.prd-feature.default:
137
+ provider:
138
+ scope: project
139
+ skill: prd-feature
140
+ ```
141
+
142
+ The project overlay can also add new entries (via `entries`) and disable plugin entries
143
+ (via `disabled`).
144
+
145
+ ## Effective Index Is a Generated Cache
146
+
147
+ `.agent-method-registry/effective-index.json` is a **generated build artifact**, not a source
148
+ of truth. It is derived from `catalog.yaml` plus the optional `project.yaml` overlay.
149
+
150
+ - Do not edit it manually.
151
+ - Rebuild it when the catalog or project overlay changes.
152
+ - Do not commit it to version control unless the project explicitly opts in.
153
+
154
+ ## Compact Query for Planners
155
+
156
+ Use `--format compact` to get a minimal view for planning. Compact queries return only
157
+ `ref`, `kind`, and `summary` -- enough for the planner to select an entry without loading
158
+ full metadata. After selection, use `resolve` to get the provider path:
159
+
160
+ ```bash
161
+ # Compact query: planner sees ref/kind/summary only
162
+ agent-method-registry query \
163
+ --index .agent-method-registry/effective-index.json \
164
+ --domain artifact --artifact-type prd-feature \
165
+ --kind workflow --format compact
166
+
167
+ # Resolve after selection: get full provider path
168
+ agent-method-registry resolve \
169
+ --index .agent-method-registry/effective-index.json \
170
+ --ref artifact.prd-feature.author \
171
+ --host claude-code \
172
+ --plugin-root "$PLUGIN_ROOT/skills"
173
+ ```
174
+
175
+ ## Closed-Loop Workflow Entries
176
+
177
+ All 8 specialized entries have `kind: workflow`. A `workflow` entry is a **closed-loop leaf** -- it
178
+ self-completes its own inspect, compose, review, validate, and repair cycle. The outer
179
+ planner should not schedule separate review or repair steps for a workflow entry.
180
+
181
+ ## Registry Unavailable: Fallback Behavior
182
+
183
+ When `agent-method-registry` is not installed or the effective index does not exist,
184
+ `where-am-i` follows this behavior:
185
+
186
+ 1. Outputs a `"registry unavailable"` diagnostic.
187
+ 2. For contract-backed services, returns `NEEDS_INPUT` with registry unavailable message — **no fallback to builtin or config routing**.
188
+ 3. For generic non-contract-backed entries, may fall back to existing project configuration and plugin routing logic.
189
+ 4. Does **not** attempt to merge catalogs manually or create an empty effective index.
190
+
191
+ ## Locating the Plugin Root
192
+
193
+ To find the installed plugin root, use your host CLI. Do **not** use `require.resolve` —
194
+ marketplace installations do not place the plugin into the target project's `node_modules`.
195
+
196
+ **Codex**:
197
+
198
+ ```bash
199
+ export CODEX_HOME="${CODEX_HOME:-$HOME/.codex}"
200
+ PLUGIN_ROOT=$(codex plugin list --json 2>/dev/null \
201
+ | node -e "
202
+ let d='';process.stdin.on('data',c=>d+=c);process.stdin.on('end',()=>{
203
+ const data=JSON.parse(d);
204
+ const p=data.installed.find(x=>x.pluginId==='artifact-chain-assistant@artifact-skill-set');
205
+ if(!p||!p.installed||!p.enabled||!p.marketplaceName||!p.name||!p.version){process.stderr.write('plugin record incomplete\n');process.exit(1);}
206
+ console.log(require('path').join(process.env.CODEX_HOME,'plugins','cache',p.marketplaceName,p.name,p.version));
207
+ });
208
+ ")
209
+ ```
210
+
211
+ **Claude Code**:
212
+
213
+ ```bash
214
+ PLUGIN_ROOT=$(claude plugin list --json 2>/dev/null \
215
+ | node -e "
216
+ let d='';process.stdin.on('data',c=>d+=c);process.stdin.on('end',()=>{
217
+ const p=JSON.parse(d).find(x=>x.id==='artifact-chain-assistant@artifact-skill-set');
218
+ if(!p||!p.enabled||!p.installPath){process.stderr.write('plugin not found, not enabled, or installPath missing\n');process.exit(1);}
219
+ console.log(p.installPath);
220
+ });
221
+ ")
222
+ ```
223
+
224
+ Then use it in resolve commands:
225
+
226
+ ```bash
227
+ agent-method-registry resolve \
228
+ --index .agent-method-registry/effective-index.json \
229
+ --ref artifact.prd-feature.author \
230
+ --host codex \
231
+ --plugin-root "$PLUGIN_ROOT/skills"
232
+
233
+ agent-method-registry resolve \
234
+ --index .agent-method-registry/effective-index.json \
235
+ --ref artifact.prd-feature.author \
236
+ --host claude-code \
237
+ --plugin-root "$PLUGIN_ROOT/skills"
238
+ ```
@@ -0,0 +1,229 @@
1
+ # Agent Method Registry(代理方法注册表)
2
+
3
+ [English](AGENT-METHOD-REGISTRY.md)
4
+
5
+ 插件内置了确定性的 agent-method-registry 集成,提供目录解析、provider 验证和 CLI 诊断。
6
+
7
+ ## 默认目录
8
+
9
+ 默认目录位于 `<plugin-root>/agent-methods/catalog.yaml`,注册了 **13 个 workflow 入口**:
10
+ `prd-feature` 和 `scenario-script` 两个技能族的 8 个专业入口,加上 review、repair、
11
+ batch、audit、generate 五个通用入口。通用入口不含 PRD/场景类型,因此每个受支持的
12
+ type+intent 查询都唯一命中。
13
+
14
+ 目录还包含 3 个 `kind: operation` 条目(`artifact.help`、`artifact.setup`、
15
+ `artifact.quickstart`),用于只读发现和诊断;它们不是 workflow 入口,下表省略。
16
+
17
+ | Ref | 技能族 | 入口 |
18
+ |-----|--------|------|
19
+ | `artifact.prd-feature.default` | prd-feature | 默认路由入口 |
20
+ | `artifact.prd-feature.author` | prd-feature | 编写 |
21
+ | `artifact.prd-feature.review` | prd-feature | 审阅 |
22
+ | `artifact.prd-feature.repair` | prd-feature | 修复 |
23
+ | `artifact.scenario-script.default` | scenario-script | 默认路由入口 |
24
+ | `artifact.scenario-script.author` | scenario-script | 编写 |
25
+ | `artifact.scenario-script.review` | scenario-script | 审阅 |
26
+ | `artifact.scenario-script.repair` | scenario-script | 修复 |
27
+ | `artifact.review` | artifact-review | 审阅 |
28
+ | `artifact.repair` | artifact-repair | 修复 |
29
+ | `artifact.batch` | artifact-batch | 批处理 |
30
+ | `artifact.audit` | artifact-audit | 审计 / health |
31
+ | `artifact.generate` | artifact-generate | 生成 |
32
+
33
+ ## 单独安装
34
+
35
+ 只需要注册表能力时,可以单独安装 `agent-method-registry@0.2.0`:
36
+
37
+ ```bash
38
+ npm install agent-method-registry@0.2.0
39
+ ```
40
+
41
+ 安装后即可使用 `agent-method-registry` CLI。
42
+
43
+ ## 构建有效索引
44
+
45
+ 有效索引由目录加上可选的项目覆盖层构建。首先通过宿主 CLI 定位已安装的插件根目录。
46
+ **不要**使用 `require.resolve`——marketplace 安装不会把插件放进目标项目的 `node_modules`。
47
+
48
+ **Codex**——使用 `codex plugin list --json` 和 `CODEX_HOME` 缓存布局:
49
+
50
+ ```bash
51
+ export CODEX_HOME="${CODEX_HOME:-$HOME/.codex}"
52
+ PLUGIN_ROOT=$(codex plugin list --json 2>/dev/null \
53
+ | node -e "
54
+ let d='';process.stdin.on('data',c=>d+=c);process.stdin.on('end',()=>{
55
+ const data=JSON.parse(d);
56
+ const p=data.installed.find(x=>x.pluginId==='artifact-chain-assistant@artifact-skill-set');
57
+ if(!p||!p.installed||!p.enabled||!p.marketplaceName||!p.name||!p.version){process.stderr.write('artifact-chain-assistant record incomplete\n');process.exit(1);}
58
+ console.log(require('path').join(process.env.CODEX_HOME,'plugins','cache',p.marketplaceName,p.name,p.version));
59
+ });
60
+ ")
61
+ [ -f "$PLUGIN_ROOT/agent-methods/catalog.yaml" ] || { echo "catalog not found at $PLUGIN_ROOT"; exit 1; }
62
+ ```
63
+
64
+ **Claude Code**——使用 `claude plugin list --json` 和 `installPath`:
65
+
66
+ ```bash
67
+ PLUGIN_ROOT=$(claude plugin list --json 2>/dev/null \
68
+ | node -e "
69
+ let d='';process.stdin.on('data',c=>d+=c);process.stdin.on('end',()=>{
70
+ const p=JSON.parse(d).find(x=>x.id==='artifact-chain-assistant@artifact-skill-set');
71
+ if(!p||!p.enabled||!p.installPath){process.stderr.write('artifact-chain-assistant not found, not enabled, or installPath missing\n');process.exit(1);}
72
+ console.log(p.installPath);
73
+ });
74
+ ")
75
+ [ -f "$PLUGIN_ROOT/agent-methods/catalog.yaml" ] || { echo "catalog not found at $PLUGIN_ROOT"; exit 1; }
76
+ ```
77
+
78
+ > 仅限 monorepo 开发时,源码检出的插件根目录为 `plugins/artifact-chain-assistant`。
79
+ > 市场用户必须使用上述宿主 CLI 发现方式。
80
+
81
+ 定位 `PLUGIN_ROOT` 后,运行通用工作流前先验证目标项目(只读):
82
+
83
+ ```bash
84
+ node "$PLUGIN_ROOT/scripts/check-workflow-profile.mjs" \
85
+ --root . --action review --domain design-spec --format json
86
+ ```
87
+
88
+ 退出码 0 表示所需的项目标记和 worker 映射均存在。退出码 2 返回 `NEEDS_INPUT`;
89
+ 请补充缺失的项目 profile 或 worker,而非声称工作流已成功。
90
+
91
+ 批量操作使用同一插件根目录下的切分和合并脚本:
92
+
93
+ ```bash
94
+ # 切分制品为批次(JSON 数组输出到 stdout)
95
+ node "$PLUGIN_ROOT/scripts/batch-split.mjs" ./artifacts/design --batch-size 40000
96
+
97
+ # 从结果目录合并批次结果(合并后的 JSON 输出到 stdout)
98
+ node "$PLUGIN_ROOT/scripts/batch-merge.mjs" ./batch-results --run-id my-run
99
+ ```
100
+
101
+ 然后构建索引:
102
+
103
+ ```bash
104
+ # 仅目录(无项目 provider)
105
+ agent-method-registry index \
106
+ --catalog "$PLUGIN_ROOT/agent-methods/catalog.yaml" \
107
+ --out .agent-method-registry/effective-index.json
108
+ ```
109
+
110
+ 项目没有 provider 文件时,注册表**不会**创建空的覆盖层文件,只根据目录构建有效索引。
111
+ 只有项目定义了覆盖或禁用项时才需要 `--project` 参数:
112
+
113
+ ```bash
114
+ # 目录 + 项目覆盖层
115
+ agent-method-registry index \
116
+ --catalog "$PLUGIN_ROOT/agent-methods/catalog.yaml" \
117
+ --project agent-methods/project.yaml \
118
+ --out .agent-method-registry/effective-index.json
119
+ ```
120
+
121
+ ## 项目级覆盖
122
+
123
+ 目标项目有自己的完整入口定义时,在项目根目录放置 `agent-methods/project.yaml`。
124
+ 例如把默认的 `prd-feature` 路由入口覆盖为项目本地技能:
125
+
126
+ ```yaml
127
+ schemaVersion: 1
128
+ overrides:
129
+ artifact.prd-feature.default:
130
+ provider:
131
+ scope: project
132
+ skill: prd-feature
133
+ ```
134
+
135
+ 项目覆盖层还可以通过 `entries` 添加新入口、通过 `disabled` 禁用插件入口。
136
+
137
+ ## 有效索引是生成缓存
138
+
139
+ `.agent-method-registry/effective-index.json` 是**生成的构建产物**,不是事实来源,
140
+ 由 `catalog.yaml` 加上可选的 `project.yaml` 覆盖层派生而来。
141
+
142
+ - 不要手工编辑。
143
+ - 目录或项目覆盖层变更后要重新构建。
144
+ - 除非项目明确选择提交,否则不要纳入版本控制。
145
+
146
+ ## 面向规划器的紧凑查询
147
+
148
+ 用 `--format compact` 获取规划所需的最小视图。紧凑查询只返回 `ref`、`kind` 和
149
+ `summary`,规划器据此选定入口即可,无需加载完整元数据;选定后再用 `resolve` 获取
150
+ provider 路径:
151
+
152
+ ```bash
153
+ # 紧凑查询:规划器只看到 ref/kind/summary
154
+ agent-method-registry query \
155
+ --index .agent-method-registry/effective-index.json \
156
+ --domain artifact --artifact-type prd-feature \
157
+ --kind workflow --format compact
158
+
159
+ # 选定后解析:获取完整提供者路径
160
+ agent-method-registry resolve \
161
+ --index .agent-method-registry/effective-index.json \
162
+ --ref artifact.prd-feature.author \
163
+ --host claude-code \
164
+ --plugin-root "$PLUGIN_ROOT/skills"
165
+ ```
166
+
167
+ ## 闭环 workflow 入口
168
+
169
+ 8 个专业入口的 `kind` 均为 `workflow`。`workflow` 入口是**闭环叶子**:进入后自行完成
170
+ inspect、compose、review、validate、repair 整个循环,外层规划器不要再为它安排独立的
171
+ review 或 repair 步骤。
172
+
173
+ ## Registry 不可用时的 fallback 行为
174
+
175
+ `agent-method-registry` 未安装或有效索引不存在时,`where-am-i` 按以下方式回退:
176
+
177
+ 1. 输出 `"registry unavailable"` 诊断信息。
178
+ 2. 对于有契约支撑的服务,返回 `NEEDS_INPUT` 并附带 registry 不可用信息——**不会回落到内置或配置路由**。
179
+ 3. 对于无契约支撑的通用条目,可回落到现有项目配置和插件路由逻辑。
180
+ 4. **不会**尝试手工合并目录,也不会创建空的有效索引。
181
+
182
+ ## 定位插件根目录
183
+
184
+ 用宿主 CLI 查找已安装的插件根目录。**不要**使用 `require.resolve`——marketplace 安装
185
+ 不会把插件放进目标项目的 `node_modules`。
186
+
187
+ **Codex**:
188
+
189
+ ```bash
190
+ export CODEX_HOME="${CODEX_HOME:-$HOME/.codex}"
191
+ PLUGIN_ROOT=$(codex plugin list --json 2>/dev/null \
192
+ | node -e "
193
+ let d='';process.stdin.on('data',c=>d+=c);process.stdin.on('end',()=>{
194
+ const data=JSON.parse(d);
195
+ const p=data.installed.find(x=>x.pluginId==='artifact-chain-assistant@artifact-skill-set');
196
+ if(!p||!p.installed||!p.enabled||!p.marketplaceName||!p.name||!p.version){process.stderr.write('plugin record incomplete\n');process.exit(1);}
197
+ console.log(require('path').join(process.env.CODEX_HOME,'plugins','cache',p.marketplaceName,p.name,p.version));
198
+ });
199
+ ")
200
+ ```
201
+
202
+ **Claude Code**:
203
+
204
+ ```bash
205
+ PLUGIN_ROOT=$(claude plugin list --json 2>/dev/null \
206
+ | node -e "
207
+ let d='';process.stdin.on('data',c=>d+=c);process.stdin.on('end',()=>{
208
+ const p=JSON.parse(d).find(x=>x.id==='artifact-chain-assistant@artifact-skill-set');
209
+ if(!p||!p.enabled||!p.installPath){process.stderr.write('plugin not found, not enabled, or installPath missing\n');process.exit(1);}
210
+ console.log(p.installPath);
211
+ });
212
+ ")
213
+ ```
214
+
215
+ 然后在 resolve 命令中使用:
216
+
217
+ ```bash
218
+ agent-method-registry resolve \
219
+ --index .agent-method-registry/effective-index.json \
220
+ --ref artifact.prd-feature.author \
221
+ --host codex \
222
+ --plugin-root "$PLUGIN_ROOT/skills"
223
+
224
+ agent-method-registry resolve \
225
+ --index .agent-method-registry/effective-index.json \
226
+ --ref artifact.prd-feature.author \
227
+ --host claude-code \
228
+ --plugin-root "$PLUGIN_ROOT/skills"
229
+ ```
package/CHANGELOG.md CHANGED
@@ -1,5 +1,34 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.8.2
4
+
5
+ ### Fixed
6
+
7
+ - **Nested `author/review` skill reference file projection**: `sync-skills.mjs` now correctly
8
+ projects family-level reference files (`references/{inspect,compose,validate}.md`) into nested
9
+ `author/review` skill directories for `prd-feature` and `scenario-script` families. Both Codex
10
+ and Claude Code adapter surfaces, as well as the root `skills/` tree, include the projected
11
+ reference files. Skills that do not consume reference files no longer receive stale copies.
12
+
13
+ ### Changed
14
+
15
+ - **Runtime compatibility pinned to `artifact-graph@0.8.2`**: plugin and runtime compatibility,
16
+ marketplace manifests, and adapter manifests verify `artifact-graph@0.8.2` exactly.
17
+
18
+ ## 0.8.1
19
+
20
+ ### Breaking Changes
21
+
22
+ - **`artifact-chain-help` renamed to `help`**: the `artifact-chain-help` skill is now `help`. The old name is not preserved as an alias. Update any prompts or scripts that reference `artifact-chain-help`.
23
+ - **New entry skills `setup` and `quickstart`**: `setup` provides read-only environment diagnostics; `quickstart` routes user intent to the correct skill. Both are `kind: operation` in the agent-method catalog.
24
+ - **Self-marketplace removed**: the plugin no longer ships `.agents/plugins/marketplace.json` or `.claude-plugin/marketplace.json`. Installation now uses the external `ifoohoo/artifact-skill-set` marketplace. Root `.claude-plugin/plugin.json` and `.codex-plugin/plugin.json` are retained for external marketplace discovery.
25
+
26
+ ### Changed
27
+
28
+ - **Deterministic release manifests clarified**: root plugin manifests now describe external marketplace
29
+ installation flow — the marketplace entry uses these root manifests to discover host-specific adapter
30
+ skills at `./adapters/claude` and `./adapters/codex`.
31
+
3
32
  ## 0.8.0
4
33
 
5
34
  ### Changed
package/CONTRIBUTING.md CHANGED
@@ -2,6 +2,11 @@
2
2
 
3
3
  Thanks for your interest in contributing.
4
4
 
5
+ > **This repository is a release snapshot.** Documentation (README, CHANGELOG, INSTALL,
6
+ > NOTICE) and shared files are rendered from a private workspace. Direct pull requests
7
+ > against these files will be overwritten by the next render — please open an issue
8
+ > instead, and the maintainers will make the change at the source.
9
+
5
10
  ## Development
6
11
 
7
12
  Use Node.js `>=22.0.0`.
@@ -15,7 +20,7 @@ pnpm test
15
20
  ## Pull Requests
16
21
 
17
22
  - Keep changes focused.
18
- - Update README, CHANGELOG, and tests when behavior changes.
23
+ - Documentation changes should be proposed as issues (see above); code changes should update tests when behavior changes.
19
24
  - Run the package validation commands before opening a pull request.
20
25
  - Do not include private parent-repository artifacts or local machine paths.
21
26
 
@@ -1,5 +1,8 @@
1
1
  # Extended Artifact Catalog
2
2
 
3
+ <!-- generated by scripts/render-public-docs.mjs from docs/public/** — do not edit directly -->
4
+
5
+
3
6
  This document summarizes the extended artifact type catalog for `artifact-chain-assistant`. It
4
7
  covers type classification, recommended paths and ID patterns, template adoption rules, and the
5
8
  three-tier authority boundary between `artifact-graph`, the plugin, and target projects.
@@ -1,5 +1,8 @@
1
1
  # 扩展制品目录
2
2
 
3
+ <!-- generated by scripts/render-public-docs.mjs from docs/public/** — do not edit directly -->
4
+
5
+
3
6
  [English](EXTENDED-ARTIFACT-CATALOG.md)
4
7
 
5
8
  本文档汇总 `artifact-chain-assistant` 的扩展制品类型目录,内容包括类型分类、推荐路径与 ID 模式、