@zmice/zc 0.2.1 → 0.2.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.
- package/LICENSE +21 -0
- package/README.md +201 -55
- package/dist/cli/__tests__/platform.test.js +573 -34
- package/dist/cli/__tests__/platform.test.js.map +1 -1
- package/dist/cli/__tests__/toolkit.test.js +35 -0
- package/dist/cli/__tests__/toolkit.test.js.map +1 -1
- package/dist/cli/platform.d.ts +15 -1
- package/dist/cli/platform.d.ts.map +1 -1
- package/dist/cli/platform.js +1195 -87
- package/dist/cli/platform.js.map +1 -1
- package/dist/cli/toolkit.d.ts.map +1 -1
- package/dist/cli/toolkit.js +26 -1
- package/dist/cli/toolkit.js.map +1 -1
- package/dist/platform-state/doctor.d.ts +3 -0
- package/dist/platform-state/doctor.d.ts.map +1 -0
- package/dist/platform-state/doctor.js +96 -0
- package/dist/platform-state/doctor.js.map +1 -0
- package/dist/platform-state/index.d.ts +2 -1
- package/dist/platform-state/index.d.ts.map +1 -1
- package/dist/platform-state/index.js +1 -0
- package/dist/platform-state/index.js.map +1 -1
- package/dist/platform-state/receipt.d.ts +5 -0
- package/dist/platform-state/receipt.d.ts.map +1 -1
- package/dist/platform-state/receipt.js +5 -0
- package/dist/platform-state/receipt.js.map +1 -1
- package/dist/platform-state/types.d.ts +16 -0
- package/dist/platform-state/types.d.ts.map +1 -1
- package/dist/utils/install-target.d.ts +1 -1
- package/dist/utils/install-target.d.ts.map +1 -1
- package/dist/utils/install-target.js +16 -6
- package/dist/utils/install-target.js.map +1 -1
- package/dist/utils/install-target.test.js +19 -10
- package/dist/utils/install-target.test.js.map +1 -1
- package/dist/utils/platform-install-cleanup.d.ts +7 -0
- package/dist/utils/platform-install-cleanup.d.ts.map +1 -0
- package/dist/utils/platform-install-cleanup.js +34 -0
- package/dist/utils/platform-install-cleanup.js.map +1 -0
- package/dist/utils/platform-install-cleanup.test.d.ts +2 -0
- package/dist/utils/platform-install-cleanup.test.d.ts.map +1 -0
- package/dist/utils/platform-install-cleanup.test.js +30 -0
- package/dist/utils/platform-install-cleanup.test.js.map +1 -0
- package/dist/utils/platform-install-receipt.d.ts +1 -0
- package/dist/utils/platform-install-receipt.d.ts.map +1 -1
- package/dist/utils/platform-install-receipt.js +10 -2
- package/dist/utils/platform-install-receipt.js.map +1 -1
- package/dist/utils/platform-install-receipt.test.js +30 -2
- package/dist/utils/platform-install-receipt.test.js.map +1 -1
- package/dist/utils/qwen-extension-cli.d.ts +52 -0
- package/dist/utils/qwen-extension-cli.d.ts.map +1 -0
- package/dist/utils/qwen-extension-cli.js +169 -0
- package/dist/utils/qwen-extension-cli.js.map +1 -0
- package/dist/utils/qwen-extension-cli.test.d.ts +2 -0
- package/dist/utils/qwen-extension-cli.test.d.ts.map +1 -0
- package/dist/utils/qwen-extension-cli.test.js +100 -0
- package/dist/utils/qwen-extension-cli.test.js.map +1 -0
- package/package.json +5 -4
- package/vendor/node_modules/@zmice/platform-core/dist/index.d.ts +54 -1
- package/vendor/node_modules/@zmice/platform-core/dist/index.d.ts.map +1 -1
- package/vendor/node_modules/@zmice/platform-core/dist/index.js +53 -0
- package/vendor/node_modules/@zmice/platform-core/dist/index.js.map +1 -1
- package/vendor/node_modules/@zmice/platform-core/dist/index.test.js +1 -1
- package/vendor/node_modules/@zmice/platform-core/dist/index.test.js.map +1 -1
- package/vendor/node_modules/@zmice/platform-core/package.json +1 -1
- package/vendor/packages/platform-claude/dist/generate.d.ts +2 -0
- package/vendor/packages/platform-claude/dist/generate.d.ts.map +1 -0
- package/vendor/packages/platform-claude/dist/generate.js +2 -0
- package/vendor/packages/platform-claude/dist/generate.js.map +1 -0
- package/vendor/packages/platform-claude/dist/index.d.ts +50 -0
- package/vendor/packages/platform-claude/dist/index.d.ts.map +1 -0
- package/vendor/packages/platform-claude/dist/index.js +250 -0
- package/vendor/packages/platform-claude/dist/index.js.map +1 -0
- package/vendor/packages/platform-claude/dist/index.test.js +81 -0
- package/vendor/packages/platform-claude/dist/index.test.js.map +1 -0
- package/vendor/packages/platform-claude/dist/install.d.ts +2 -0
- package/vendor/packages/platform-claude/dist/install.d.ts.map +1 -0
- package/vendor/packages/platform-claude/dist/install.js +2 -0
- package/vendor/packages/platform-claude/dist/install.js.map +1 -0
- package/vendor/packages/platform-claude/package.json +46 -0
- package/vendor/packages/platform-claude/templates/.gitkeep +1 -0
- package/vendor/packages/platform-claude/templates/CLAUDE.md +1 -0
- package/vendor/packages/platform-codex/dist/index.d.ts +36 -2
- package/vendor/packages/platform-codex/dist/index.d.ts.map +1 -1
- package/vendor/packages/platform-codex/dist/index.js +231 -6
- package/vendor/packages/platform-codex/dist/index.js.map +1 -1
- package/vendor/packages/platform-codex/dist/index.test.js +40 -10
- package/vendor/packages/platform-codex/dist/index.test.js.map +1 -1
- package/vendor/packages/platform-opencode/dist/generate.d.ts +2 -0
- package/vendor/packages/platform-opencode/dist/generate.d.ts.map +1 -0
- package/vendor/packages/platform-opencode/dist/generate.js +2 -0
- package/vendor/packages/platform-opencode/dist/generate.js.map +1 -0
- package/vendor/packages/platform-opencode/dist/index.d.ts +46 -0
- package/vendor/packages/platform-opencode/dist/index.d.ts.map +1 -0
- package/vendor/packages/platform-opencode/dist/index.js +308 -0
- package/vendor/packages/platform-opencode/dist/index.js.map +1 -0
- package/vendor/packages/platform-opencode/dist/index.test.d.ts +2 -0
- package/vendor/packages/platform-opencode/dist/index.test.d.ts.map +1 -0
- package/vendor/packages/platform-opencode/dist/index.test.js +106 -0
- package/vendor/packages/platform-opencode/dist/index.test.js.map +1 -0
- package/vendor/packages/platform-opencode/dist/install.d.ts +2 -0
- package/vendor/packages/platform-opencode/dist/install.d.ts.map +1 -0
- package/vendor/packages/platform-opencode/dist/install.js +2 -0
- package/vendor/packages/platform-opencode/dist/install.js.map +1 -0
- package/vendor/packages/{platform-qoder → platform-opencode}/package.json +2 -2
- package/vendor/packages/platform-opencode/templates/AGENTS.md +1 -0
- package/vendor/packages/platform-qwen/dist/index.d.ts +55 -2
- package/vendor/packages/platform-qwen/dist/index.d.ts.map +1 -1
- package/vendor/packages/platform-qwen/dist/index.js +229 -11
- package/vendor/packages/platform-qwen/dist/index.js.map +1 -1
- package/vendor/packages/platform-qwen/dist/index.test.js +54 -16
- package/vendor/packages/platform-qwen/dist/index.test.js.map +1 -1
- package/vendor/packages/toolkit/dist/loaders.test.js +1 -1
- package/vendor/packages/toolkit/dist/loaders.test.js.map +1 -1
- package/vendor/packages/toolkit/dist/manifests.test.js +29 -2
- package/vendor/packages/toolkit/dist/manifests.test.js.map +1 -1
- package/vendor/packages/toolkit/dist/query/toolkit-query.d.ts +4 -6
- package/vendor/packages/toolkit/dist/query/toolkit-query.d.ts.map +1 -1
- package/vendor/packages/toolkit/dist/query/toolkit-query.js +99 -1
- package/vendor/packages/toolkit/dist/query/toolkit-query.js.map +1 -1
- package/vendor/packages/toolkit/dist/query.test.js +209 -0
- package/vendor/packages/toolkit/dist/query.test.js.map +1 -1
- package/vendor/packages/toolkit/dist/schema/asset-meta.d.ts.map +1 -1
- package/vendor/packages/toolkit/dist/schema/asset-meta.js +105 -1
- package/vendor/packages/toolkit/dist/schema/asset-meta.js.map +1 -1
- package/vendor/packages/toolkit/dist/types.d.ts +41 -1
- package/vendor/packages/toolkit/dist/types.d.ts.map +1 -1
- package/vendor/packages/toolkit/dist/types.js +26 -1
- package/vendor/packages/toolkit/dist/types.js.map +1 -1
- package/vendor/packages/toolkit/package.json +1 -1
- package/vendor/packages/toolkit/src/content/agents/architect/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/agents/backend-specialist/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/agents/code-reviewer/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/agents/frontend-specialist/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/agents/performance-engineer/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/agents/product-owner/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/agents/security-auditor/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/agents/test-engineer/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/commands/api/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/commands/build/body.md +15 -20
- package/vendor/packages/toolkit/src/content/commands/build/meta.yaml +12 -1
- package/vendor/packages/toolkit/src/content/commands/careful/body.md +21 -11
- package/vendor/packages/toolkit/src/content/commands/careful/meta.yaml +16 -1
- package/vendor/packages/toolkit/src/content/commands/ci/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/commands/commit/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/commands/ctx-health/body.md +16 -16
- package/vendor/packages/toolkit/src/content/commands/ctx-health/meta.yaml +11 -1
- package/vendor/packages/toolkit/src/content/commands/debug/body.md +16 -17
- package/vendor/packages/toolkit/src/content/commands/debug/meta.yaml +12 -1
- package/vendor/packages/toolkit/src/content/commands/doc/body.md +15 -16
- package/vendor/packages/toolkit/src/content/commands/doc/meta.yaml +11 -1
- package/vendor/packages/toolkit/src/content/commands/freeze/body.md +20 -9
- package/vendor/packages/toolkit/src/content/commands/freeze/meta.yaml +16 -1
- package/vendor/packages/toolkit/src/content/commands/guard/body.md +21 -10
- package/vendor/packages/toolkit/src/content/commands/guard/meta.yaml +16 -1
- package/vendor/packages/toolkit/src/content/commands/idea/body.md +15 -16
- package/vendor/packages/toolkit/src/content/commands/idea/meta.yaml +12 -1
- package/vendor/packages/toolkit/src/content/commands/learn/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/commands/migrate/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/commands/onboard/body.md +15 -17
- package/vendor/packages/toolkit/src/content/commands/onboard/meta.yaml +11 -1
- package/vendor/packages/toolkit/src/content/commands/perf/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/commands/plan-review/body.md +21 -20
- package/vendor/packages/toolkit/src/content/commands/plan-review/meta.yaml +12 -1
- package/vendor/packages/toolkit/src/content/commands/product-analysis/body.md +52 -0
- package/vendor/packages/toolkit/src/content/commands/product-analysis/meta.yaml +35 -0
- package/vendor/packages/toolkit/src/content/commands/qa/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/commands/quality-review/body.md +13 -18
- package/vendor/packages/toolkit/src/content/commands/quality-review/meta.yaml +13 -1
- package/vendor/packages/toolkit/src/content/commands/retro/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/commands/sdd-tdd/body.md +29 -29
- package/vendor/packages/toolkit/src/content/commands/sdd-tdd/meta.yaml +11 -1
- package/vendor/packages/toolkit/src/content/commands/secure/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/commands/ship/body.md +16 -11
- package/vendor/packages/toolkit/src/content/commands/ship/meta.yaml +11 -1
- package/vendor/packages/toolkit/src/content/commands/simplify/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/commands/spec/body.md +16 -21
- package/vendor/packages/toolkit/src/content/commands/spec/meta.yaml +12 -1
- package/vendor/packages/toolkit/src/content/commands/start/body.md +148 -0
- package/vendor/packages/toolkit/src/content/commands/start/meta.yaml +55 -0
- package/vendor/packages/toolkit/src/content/commands/task-plan/body.md +13 -18
- package/vendor/packages/toolkit/src/content/commands/task-plan/meta.yaml +12 -1
- package/vendor/packages/toolkit/src/content/commands/ui/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/commands/verify/body.md +12 -17
- package/vendor/packages/toolkit/src/content/commands/verify/meta.yaml +15 -1
- package/vendor/packages/toolkit/src/content/skills/api-and-interface-design/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/brainstorming-and-design/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/branch-finish-and-cleanup/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/browser-qa-testing/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/ci-cd-and-automation/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/code-review-and-quality/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/code-simplification/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/codebase-onboarding/body.md +6 -3
- package/vendor/packages/toolkit/src/content/skills/codebase-onboarding/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/context-budget-audit/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/context-engineering/body.md +7 -5
- package/vendor/packages/toolkit/src/content/skills/context-engineering/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/continuous-learning/body.md +15 -15
- package/vendor/packages/toolkit/src/content/skills/continuous-learning/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/debugging-and-error-recovery/body.md +9 -6
- package/vendor/packages/toolkit/src/content/skills/debugging-and-error-recovery/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/deprecation-and-migration/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/developer-experience-audit/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/documentation-and-adrs/body.md +7 -11
- package/vendor/packages/toolkit/src/content/skills/documentation-and-adrs/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/engineering-principles/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/frontend-ui-engineering/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/git-workflow-and-versioning/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/idea-refine/body.md +31 -160
- package/vendor/packages/toolkit/src/content/skills/idea-refine/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/incremental-implementation/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/multi-perspective-review/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/parallel-agent-dispatch/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/performance-optimization/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/planning-and-task-breakdown/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/release-documentation-sync/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/review-response-and-resolution/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/safety-guardrails/body.md +6 -2
- package/vendor/packages/toolkit/src/content/skills/safety-guardrails/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/sdd-tdd-workflow/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/security-and-hardening/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/shipping-and-launch/body.md +7 -11
- package/vendor/packages/toolkit/src/content/skills/shipping-and-launch/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/source-driven-development/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/spec-driven-development/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/sprint-retrospective/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/subagent-driven-development/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/team-orchestration/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/test-driven-development/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/using-agent-skills/meta.yaml +2 -1
- package/vendor/packages/toolkit/src/content/skills/verification-before-completion/meta.yaml +2 -1
- package/vendor/packages/platform-qoder/dist/generate.d.ts +0 -2
- package/vendor/packages/platform-qoder/dist/generate.d.ts.map +0 -1
- package/vendor/packages/platform-qoder/dist/generate.js +0 -2
- package/vendor/packages/platform-qoder/dist/generate.js.map +0 -1
- package/vendor/packages/platform-qoder/dist/index.d.ts +0 -15
- package/vendor/packages/platform-qoder/dist/index.d.ts.map +0 -1
- package/vendor/packages/platform-qoder/dist/index.js +0 -46
- package/vendor/packages/platform-qoder/dist/index.js.map +0 -1
- package/vendor/packages/platform-qoder/dist/index.test.js +0 -38
- package/vendor/packages/platform-qoder/dist/index.test.js.map +0 -1
- package/vendor/packages/platform-qoder/dist/install.d.ts +0 -2
- package/vendor/packages/platform-qoder/dist/install.d.ts.map +0 -1
- package/vendor/packages/platform-qoder/dist/install.js +0 -2
- package/vendor/packages/platform-qoder/dist/install.js.map +0 -1
- package/vendor/packages/platform-qoder/templates/instructions.md +0 -7
- /package/vendor/packages/{platform-qoder → platform-claude}/dist/index.test.d.ts +0 -0
- /package/vendor/packages/{platform-qoder → platform-claude}/dist/index.test.d.ts.map +0 -0
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
# 文档与 ADR
|
|
2
2
|
|
|
3
|
+
这是 `command:start` 判型后进入的专项 skill:当任务核心是沉淀决策、修正文档 drift、补齐长期说明时,进入这里,而不是继续把工作只理解成“写代码”。
|
|
4
|
+
|
|
3
5
|
## 何时使用
|
|
4
6
|
|
|
5
7
|
- 做了重要架构或公共接口决策时
|
|
@@ -47,15 +49,9 @@
|
|
|
47
49
|
- 最有价值的文档是帮助后人少走弯路
|
|
48
50
|
- “代码完成”不等于“知识完成”,发布后 drift 也算未收尾
|
|
49
51
|
|
|
50
|
-
##
|
|
51
|
-
|
|
52
|
-
- 本 skill 负责判断要记录什么、为什么要更新,以及哪些长期文档已经失真
|
|
53
|
-
- `release-documentation-sync` 负责发布后的同步清单、最小验收和收尾核对
|
|
54
|
-
- `shipping-and-launch` 负责发布 gate,不替代长期文档沉淀和 ADR 记录
|
|
55
|
-
|
|
56
|
-
## 与其他技能的衔接
|
|
52
|
+
## 回到主流程
|
|
57
53
|
|
|
58
|
-
-
|
|
59
|
-
-
|
|
60
|
-
-
|
|
61
|
-
-
|
|
54
|
+
- 如果发现文档问题其实来自需求或方案不清:回到 `spec-driven-development`
|
|
55
|
+
- 如果文档 drift 暴露实现缺口:回到 `incremental-implementation`
|
|
56
|
+
- 发布前后的同步收尾:继续接 `shipping-and-launch` 或 `release-documentation-sync`
|
|
57
|
+
- 规格、计划和实现完成后,可回到这里做最终沉淀
|
|
@@ -1,173 +1,44 @@
|
|
|
1
|
-
#
|
|
1
|
+
# 想法细化
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
这是 `command:start` 判型后进入的专项 skill:当任务还停留在粗糙想法、方向不清或方案需要先发散再收敛时,进入这里,而不是立刻开始写规格或实现。
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## 何时使用
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
- 只有一个模糊想法,还没有清晰问题定义
|
|
8
|
+
- 需要先比较几种方向,再决定是否值得进入规格阶段
|
|
9
|
+
- 当前最大的风险不是实现,而是做错事情
|
|
10
|
+
- 想先把“要做什么”收成可执行的一页纸
|
|
10
11
|
|
|
11
|
-
##
|
|
12
|
+
## 输入前提
|
|
12
13
|
|
|
13
|
-
|
|
14
|
+
- 愿意先讨论目标用户、成功标准和约束
|
|
15
|
+
- 接受发散探索后再收敛,而不是第一反应就定方案
|
|
16
|
+
- 目标是形成下一步行动,不是当场进入实现
|
|
14
17
|
|
|
15
|
-
|
|
16
|
-
# Optional: Initialize the ideas directory
|
|
17
|
-
bash /mnt/skills/user/idea-refine/scripts/idea-refine.sh
|
|
18
|
-
```
|
|
18
|
+
## 执行步骤
|
|
19
19
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
20
|
+
1. **理解与扩展**:把原始想法改写成更清晰的问题陈述,问少量关键问题
|
|
21
|
+
2. **方案发散**:生成几种明显不同的方向,而不是只补充同一路径
|
|
22
|
+
3. **收敛评估**:从用户价值、可行性、差异化和关键假设四个维度筛选
|
|
23
|
+
4. **形成一页纸**:输出推荐方向、关键假设、MVP 范围和明确的“不做什么”
|
|
24
24
|
|
|
25
|
-
##
|
|
25
|
+
## 成功标准
|
|
26
26
|
|
|
27
|
-
|
|
28
|
-
-
|
|
29
|
-
-
|
|
30
|
-
-
|
|
31
|
-
-
|
|
32
|
-
- Not Doing list
|
|
27
|
+
- 问题陈述已经清楚,不再只是模糊口号
|
|
28
|
+
- 目标用户、成功标准和约束是明确的
|
|
29
|
+
- 至少探索了几个方向,而不是直接锁死第一个方案
|
|
30
|
+
- 关键假设和最小验证路径已经写清
|
|
31
|
+
- 产出能被后续规格或计划直接消费
|
|
33
32
|
|
|
34
|
-
##
|
|
33
|
+
## 相关原则
|
|
35
34
|
|
|
36
|
-
|
|
35
|
+
- 先把问题讲清楚,再谈实现
|
|
36
|
+
- 好的想法依赖取舍,而不是堆更多功能
|
|
37
|
+
- “不做什么”与“做什么”同样重要
|
|
38
|
+
- 简洁优先于炫技
|
|
37
39
|
|
|
38
|
-
|
|
40
|
+
## 回到主流程
|
|
39
41
|
|
|
40
|
-
-
|
|
41
|
-
-
|
|
42
|
-
-
|
|
43
|
-
- Challenge every assumption. "How it's usually done" is not a reason.
|
|
44
|
-
- Show people the future — don't just give them better horses.
|
|
45
|
-
- The parts you can't see should be as beautiful as the parts you can.
|
|
46
|
-
|
|
47
|
-
### Process
|
|
48
|
-
|
|
49
|
-
When the user invokes this skill with an idea (`$ARGUMENTS`), guide them through three phases. Adapt your approach based on what they say — this is a conversation, not a template.
|
|
50
|
-
|
|
51
|
-
#### Phase 1: Understand & Expand (Divergent)
|
|
52
|
-
|
|
53
|
-
**Goal:** Take the raw idea and open it up.
|
|
54
|
-
|
|
55
|
-
1. **Restate the idea** as a crisp "How Might We" problem statement. This forces clarity on what's actually being solved.
|
|
56
|
-
|
|
57
|
-
2. **Ask 3-5 sharpening questions** — no more. Focus on:
|
|
58
|
-
- Who is this for, specifically?
|
|
59
|
-
- What does success look like?
|
|
60
|
-
- What are the real constraints (time, tech, resources)?
|
|
61
|
-
- What's been tried before?
|
|
62
|
-
- Why now?
|
|
63
|
-
|
|
64
|
-
Use the `AskUserQuestion` tool to gather this input. Do NOT proceed until you understand who this is for and what success looks like.
|
|
65
|
-
|
|
66
|
-
3. **Generate 5-8 idea variations** using these lenses:
|
|
67
|
-
- **Inversion:** "What if we did the opposite?"
|
|
68
|
-
- **Constraint removal:** "What if budget/time/tech weren't factors?"
|
|
69
|
-
- **Audience shift:** "What if this were for [different user]?"
|
|
70
|
-
- **Combination:** "What if we merged this with [adjacent idea]?"
|
|
71
|
-
- **Simplification:** "What's the version that's 10x simpler?"
|
|
72
|
-
- **10x version:** "What would this look like at massive scale?"
|
|
73
|
-
- **Expert lens:** "What would [domain] experts find obvious that outsiders wouldn't?"
|
|
74
|
-
|
|
75
|
-
Push beyond what the user initially asked for. Create products people don't know they need yet.
|
|
76
|
-
|
|
77
|
-
**If running inside a codebase:** Use `Glob`, `Grep`, and `Read` to scan for relevant context — existing architecture, patterns, constraints, prior art. Ground your variations in what actually exists. Reference specific files and patterns when relevant.
|
|
78
|
-
|
|
79
|
-
Read `frameworks.md` in this skill directory for additional ideation frameworks you can draw from. Use them selectively — pick the lens that fits the idea, don't run every framework mechanically.
|
|
80
|
-
|
|
81
|
-
#### Phase 2: Evaluate & Converge
|
|
82
|
-
|
|
83
|
-
After the user reacts to Phase 1 (indicates which ideas resonate, pushes back, adds context), shift to convergent mode:
|
|
84
|
-
|
|
85
|
-
1. **Cluster** the ideas that resonated into 2-3 distinct directions. Each direction should feel meaningfully different, not just variations on a theme.
|
|
86
|
-
|
|
87
|
-
2. **Stress-test** each direction against three criteria:
|
|
88
|
-
- **User value:** Who benefits and how much? Is this a painkiller or a vitamin?
|
|
89
|
-
- **Feasibility:** What's the technical and resource cost? What's the hardest part?
|
|
90
|
-
- **Differentiation:** What makes this genuinely different? Would someone switch from their current solution?
|
|
91
|
-
|
|
92
|
-
Read `refinement-criteria.md` in this skill directory for the full evaluation rubric.
|
|
93
|
-
|
|
94
|
-
3. **Surface hidden assumptions.** For each direction, explicitly name:
|
|
95
|
-
- What you're betting is true (but haven't validated)
|
|
96
|
-
- What could kill this idea
|
|
97
|
-
- What you're choosing to ignore (and why that's okay for now)
|
|
98
|
-
|
|
99
|
-
This is where most ideation fails. Don't skip it.
|
|
100
|
-
|
|
101
|
-
**Be honest, not supportive.** If an idea is weak, say so with kindness. A good ideation partner is not a yes-machine. Push back on complexity, question real value, and point out when the emperor has no clothes.
|
|
102
|
-
|
|
103
|
-
#### Phase 3: Sharpen & Ship
|
|
104
|
-
|
|
105
|
-
Produce a concrete artifact — a markdown one-pager that moves work forward:
|
|
106
|
-
|
|
107
|
-
```markdown
|
|
108
|
-
# [Idea Name]
|
|
109
|
-
|
|
110
|
-
## Problem Statement
|
|
111
|
-
[One-sentence "How Might We" framing]
|
|
112
|
-
|
|
113
|
-
## Recommended Direction
|
|
114
|
-
[The chosen direction and why — 2-3 paragraphs max]
|
|
115
|
-
|
|
116
|
-
## Key Assumptions to Validate
|
|
117
|
-
- [ ] [Assumption 1 — how to test it]
|
|
118
|
-
- [ ] [Assumption 2 — how to test it]
|
|
119
|
-
- [ ] [Assumption 3 — how to test it]
|
|
120
|
-
|
|
121
|
-
## MVP Scope
|
|
122
|
-
[The minimum version that tests the core assumption. What's in, what's out.]
|
|
123
|
-
|
|
124
|
-
## Not Doing (and Why)
|
|
125
|
-
- [Thing 1] — [reason]
|
|
126
|
-
- [Thing 2] — [reason]
|
|
127
|
-
- [Thing 3] — [reason]
|
|
128
|
-
|
|
129
|
-
## Open Questions
|
|
130
|
-
- [Question that needs answering before building]
|
|
131
|
-
```
|
|
132
|
-
|
|
133
|
-
**The "Not Doing" list is arguably the most valuable part.** Focus is about saying no to good ideas. Make the trade-offs explicit.
|
|
134
|
-
|
|
135
|
-
Ask the user if they'd like to save this to `docs/ideas/[idea-name].md` (or a location of their choosing). Only save if they confirm.
|
|
136
|
-
|
|
137
|
-
### Anti-patterns to Avoid
|
|
138
|
-
|
|
139
|
-
- **Don't generate 20+ ideas.** Quality over quantity. 5-8 well-considered variations beat 20 shallow ones.
|
|
140
|
-
- **Don't be a yes-machine.** Push back on weak ideas with specificity and kindness.
|
|
141
|
-
- **Don't skip "who is this for."** Every good idea starts with a person and their problem.
|
|
142
|
-
- **Don't produce a plan without surfacing assumptions.** Untested assumptions are the #1 killer of good ideas.
|
|
143
|
-
- **Don't over-engineer the process.** Three phases, each doing one thing well. Resist adding steps.
|
|
144
|
-
- **Don't just list ideas — tell a story.** Each variation should have a reason it exists, not just be a bullet point.
|
|
145
|
-
- **Don't ignore the codebase.** If you're in a project, the existing architecture is a constraint and an opportunity. Use it.
|
|
146
|
-
|
|
147
|
-
### Tone
|
|
148
|
-
|
|
149
|
-
Direct, thoughtful, slightly provocative. You're a sharp thinking partner, not a facilitator reading from a script. Channel the energy of "that's interesting, but what if..." -- always pushing one step further without being exhausting.
|
|
150
|
-
|
|
151
|
-
Read `examples.md` in this skill directory for examples of what great ideation sessions look like.
|
|
152
|
-
|
|
153
|
-
## Red Flags
|
|
154
|
-
|
|
155
|
-
- Generating 20+ shallow variations instead of 5-8 considered ones
|
|
156
|
-
- Skipping the "who is this for" question
|
|
157
|
-
- No assumptions surfaced before committing to a direction
|
|
158
|
-
- Yes-machining weak ideas instead of pushing back with specificity
|
|
159
|
-
- Producing a plan without a "Not Doing" list
|
|
160
|
-
- Ignoring existing codebase constraints when ideating inside a project
|
|
161
|
-
- Jumping straight to Phase 3 output without running Phases 1 and 2
|
|
162
|
-
|
|
163
|
-
## Verification
|
|
164
|
-
|
|
165
|
-
After completing an ideation session:
|
|
166
|
-
|
|
167
|
-
- [ ] A clear "How Might We" problem statement exists
|
|
168
|
-
- [ ] The target user and success criteria are defined
|
|
169
|
-
- [ ] Multiple directions were explored, not just the first idea
|
|
170
|
-
- [ ] Hidden assumptions are explicitly listed with validation strategies
|
|
171
|
-
- [ ] A "Not Doing" list makes trade-offs explicit
|
|
172
|
-
- [ ] The output is a concrete artifact (markdown one-pager), not just conversation
|
|
173
|
-
- [ ] The user confirmed the final direction before any implementation work
|
|
42
|
+
- 想法已经收敛成可定义需求:回到 `spec-driven-development`
|
|
43
|
+
- 方向仍不成立或假设太弱:继续留在这里,不要抢跑
|
|
44
|
+
- 如果只是缺少项目背景而非想法本身:转给 `codebase-onboarding` 或 `context-engineering`
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
# 安全护栏
|
|
2
2
|
|
|
3
|
+
这是 `command:start` 判型后进入的支撑型 skill:当任务本身仍然是实现、验证、发布或迁移,但风险已经高到需要先加操作防护时,进入这里。
|
|
4
|
+
|
|
3
5
|
## 何时使用
|
|
4
6
|
|
|
5
7
|
- 即将执行可能破坏文件、数据库、Git 历史或配置的操作时
|
|
@@ -37,7 +39,9 @@
|
|
|
37
39
|
- 不确定时宁可先警告、先冻结
|
|
38
40
|
- 可逆操作和不可逆操作应区别对待
|
|
39
41
|
|
|
40
|
-
##
|
|
42
|
+
## 回到主流程
|
|
41
43
|
|
|
44
|
+
- 防护模式确定后,回到原任务主线继续执行
|
|
45
|
+
- 实现类任务回到 `incremental-implementation`
|
|
46
|
+
- 验证或发布类任务回到 `verification-before-completion` 或 `shipping-and-launch`
|
|
42
47
|
- 与 `security-and-hardening` 互补:一个防漏洞,一个防误操作
|
|
43
|
-
- 在 `shipping-and-launch`、迁移、数据库操作和批量改动前特别重要
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
# 发布上线
|
|
2
2
|
|
|
3
|
+
这是 `command:start` 判型后进入的专项 skill:当任务核心是发布准备、上线决策和回滚预案时,进入这里,而不是继续停留在实现或审查阶段。
|
|
4
|
+
|
|
3
5
|
## 何时使用
|
|
4
6
|
|
|
5
7
|
- 要把功能首次发布到生产环境时
|
|
@@ -41,15 +43,9 @@
|
|
|
41
43
|
- 监控和观察窗口是发布的一部分
|
|
42
44
|
- 未同步的发布说明、安装升级指引和回滚说明,本质上也是发布风险
|
|
43
45
|
|
|
44
|
-
##
|
|
45
|
-
|
|
46
|
-
- 本 skill 负责把文档同步纳入发布 gate,确保上线前后有明确责任和验收
|
|
47
|
-
- `documentation-and-adrs` 负责长期记录、ADR 和 drift 触发判断
|
|
48
|
-
- `release-documentation-sync` 负责发布后逐项核对 README、安装说明、行为变更记录等同步对象
|
|
49
|
-
|
|
50
|
-
## 与其他技能的衔接
|
|
46
|
+
## 回到主流程
|
|
51
47
|
|
|
52
|
-
-
|
|
53
|
-
-
|
|
54
|
-
-
|
|
55
|
-
-
|
|
48
|
+
- 如果发布检查暴露实现缺口:回到 `incremental-implementation`
|
|
49
|
+
- 如果发布检查暴露规格或范围问题:回到 `spec-driven-development` 或 `planning-and-task-breakdown`
|
|
50
|
+
- 发布前需要最后证据确认:交给 `verification-before-completion`
|
|
51
|
+
- 高风险上线需要额外防护时,结合 `safety-guardrails`
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../src/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,EACzB,WAAW,EACX,YAAY,EACZ,aAAa,EACb,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,GACzB,MAAM,YAAY,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../src/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,EACzB,WAAW,EACX,YAAY,EACZ,aAAa,GAMd,MAAM,YAAY,CAAC"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { type GenerationPlan, type InstallPlan, type InstallPlanOptions, type PlatformArtifact, type ToolkitAssetLike, type ToolkitManifestLike } from "@zmice/platform-core";
|
|
2
|
-
export interface GenerationOptions {
|
|
3
|
-
readonly packageName?: string;
|
|
4
|
-
readonly manifestSource?: string;
|
|
5
|
-
}
|
|
6
|
-
export type InstallOptions = GenerationOptions & InstallPlanOptions;
|
|
7
|
-
export declare const platformName: "qoder";
|
|
8
|
-
export declare const packageName: "@zmice/platform-qoder";
|
|
9
|
-
export type { GenerationPlan, InstallPlan, PlatformArtifact, ToolkitAssetLike, ToolkitManifestLike, };
|
|
10
|
-
export declare const templateFiles: {
|
|
11
|
-
readonly agents: "AGENTS.md";
|
|
12
|
-
};
|
|
13
|
-
export declare function createQoderGenerationPlan(manifest: ToolkitManifestLike, options?: GenerationOptions): GenerationPlan;
|
|
14
|
-
export declare function createQoderInstallPlan(manifest: ToolkitManifestLike, options: InstallOptions): InstallPlan;
|
|
15
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACzB,MAAM,sBAAsB,CAAC;AAE9B,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;CAClC;AAED,MAAM,MAAM,cAAc,GAAG,iBAAiB,GAAG,kBAAkB,CAAC;AAEpE,eAAO,MAAM,YAAY,EAAG,OAAgB,CAAC;AAC7C,eAAO,MAAM,WAAW,EAAG,uBAAgC,CAAC;AAE5D,YAAY,EACV,cAAc,EACd,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,GACpB,CAAC;AAEF,eAAO,MAAM,aAAa;;CAEhB,CAAC;AAwBX,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,mBAAmB,EAC7B,OAAO,GAAE,iBAAsB,GAC9B,cAAc,CAiBhB;AAED,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,mBAAmB,EAC7B,OAAO,EAAE,cAAc,GACtB,WAAW,CAEb"}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { createInstallPlan, describeAsset, selectMatchedAssets, } from "@zmice/platform-core";
|
|
2
|
-
export const platformName = "qoder";
|
|
3
|
-
export const packageName = "@zmice/platform-qoder";
|
|
4
|
-
export const templateFiles = {
|
|
5
|
-
agents: "AGENTS.md",
|
|
6
|
-
};
|
|
7
|
-
function renderAssetList(assets) {
|
|
8
|
-
if (assets.length === 0) {
|
|
9
|
-
return "- 尚未匹配到任何工具包资产。";
|
|
10
|
-
}
|
|
11
|
-
return assets
|
|
12
|
-
.map((asset) => `- \`${asset.kind}\` \`${asset.id}\`: ${describeAsset(asset)}`)
|
|
13
|
-
.join("\n");
|
|
14
|
-
}
|
|
15
|
-
function renderAgentsFile(manifestSource, assets) {
|
|
16
|
-
return `# Qoder 平台说明
|
|
17
|
-
|
|
18
|
-
此工件由工具包资产生成。
|
|
19
|
-
|
|
20
|
-
- 清单来源:\`${manifestSource}\`
|
|
21
|
-
- 匹配到的资产:${assets.length}
|
|
22
|
-
|
|
23
|
-
${renderAssetList(assets)}
|
|
24
|
-
`;
|
|
25
|
-
}
|
|
26
|
-
export function createQoderGenerationPlan(manifest, options = {}) {
|
|
27
|
-
const matchedAssets = selectMatchedAssets(manifest, platformName);
|
|
28
|
-
const manifestSource = options.manifestSource ?? manifest.source ?? "toolkit-manifest";
|
|
29
|
-
const resolvedPackageName = options.packageName ?? packageName;
|
|
30
|
-
return {
|
|
31
|
-
platform: platformName,
|
|
32
|
-
packageName: resolvedPackageName,
|
|
33
|
-
manifestSource,
|
|
34
|
-
matchedAssets,
|
|
35
|
-
artifacts: [
|
|
36
|
-
{
|
|
37
|
-
path: templateFiles.agents,
|
|
38
|
-
content: renderAgentsFile(manifestSource, matchedAssets),
|
|
39
|
-
},
|
|
40
|
-
],
|
|
41
|
-
};
|
|
42
|
-
}
|
|
43
|
-
export function createQoderInstallPlan(manifest, options) {
|
|
44
|
-
return createInstallPlan(createQoderGenerationPlan(manifest, options), options);
|
|
45
|
-
}
|
|
46
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,mBAAmB,GAOpB,MAAM,sBAAsB,CAAC;AAS9B,MAAM,CAAC,MAAM,YAAY,GAAG,OAAgB,CAAC;AAC7C,MAAM,CAAC,MAAM,WAAW,GAAG,uBAAgC,CAAC;AAU5D,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,MAAM,EAAE,WAAW;CACX,CAAC;AAEX,SAAS,eAAe,CAAC,MAAmC;IAC1D,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IAED,OAAO,MAAM;SACV,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,KAAK,CAAC,IAAI,QAAQ,KAAK,CAAC,EAAE,OAAO,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;SAC9E,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED,SAAS,gBAAgB,CAAC,cAAsB,EAAE,MAAmC;IACnF,OAAO;;;;WAIE,cAAc;WACd,MAAM,CAAC,MAAM;;EAEtB,eAAe,CAAC,MAAM,CAAC;CACxB,CAAC;AACF,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,QAA6B,EAC7B,UAA6B,EAAE;IAE/B,MAAM,aAAa,GAAG,mBAAmB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IAClE,MAAM,cAAc,GAAG,OAAO,CAAC,cAAc,IAAI,QAAQ,CAAC,MAAM,IAAI,kBAAkB,CAAC;IACvF,MAAM,mBAAmB,GAAG,OAAO,CAAC,WAAW,IAAI,WAAW,CAAC;IAE/D,OAAO;QACL,QAAQ,EAAE,YAAY;QACtB,WAAW,EAAE,mBAAmB;QAChC,cAAc;QACd,aAAa;QACb,SAAS,EAAE;YACT;gBACE,IAAI,EAAE,aAAa,CAAC,MAAM;gBAC1B,OAAO,EAAE,gBAAgB,CAAC,cAAc,EAAE,aAAa,CAAC;aACzD;SACF;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,QAA6B,EAC7B,OAAuB;IAEvB,OAAO,iBAAiB,CAAC,yBAAyB,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC;AAClF,CAAC"}
|