@rpamis/comet 0.3.9 → 0.4.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -21
- package/README.md +371 -222
- package/assets/manifest.json +33 -12
- package/assets/skills/comet/SKILL.md +87 -102
- package/assets/skills/comet/reference/auto-transition.md +1 -1
- package/assets/skills/comet/reference/comet-yaml-fields.md +11 -4
- package/assets/skills/comet/reference/context-recovery.md +12 -2
- package/assets/skills/comet/reference/debug-gate.md +17 -1
- package/assets/skills/comet/reference/decision-point.md +13 -2
- package/assets/skills/comet/reference/intent-frame.md +74 -0
- package/assets/skills/comet/reference/scripts.md +69 -0
- package/assets/skills/comet/reference/subagent-dispatch.md +79 -23
- package/assets/skills/comet/rules/comet-phase-guard.en.md +18 -10
- package/assets/skills/comet/rules/comet-phase-guard.md +17 -10
- package/assets/skills/comet/runtime/classic/checks.yaml +6 -0
- package/assets/skills/comet/runtime/classic/guardrails.yaml +13 -0
- package/assets/skills/comet/runtime/classic/skill.yaml +122 -0
- package/assets/skills/comet/scripts/comet-archive.mjs +3 -0
- package/assets/skills/comet/scripts/comet-env.mjs +15 -0
- package/assets/skills/comet/scripts/comet-guard.mjs +3 -0
- package/assets/skills/comet/scripts/comet-handoff.mjs +3 -0
- package/assets/skills/comet/scripts/comet-hook-guard.mjs +3 -0
- package/assets/skills/comet/scripts/comet-intent.mjs +3 -0
- package/assets/skills/comet/scripts/comet-runtime.mjs +12857 -0
- package/assets/skills/comet/scripts/comet-state.mjs +3 -0
- package/assets/skills/comet/scripts/comet-yaml-validate.mjs +3 -0
- package/assets/skills/comet-any/SKILL.md +118 -0
- package/assets/skills/comet-any/reference/authored-zone-example.md +100 -0
- package/assets/skills/comet-any/reference/authoring-protocol.json +91 -0
- package/assets/skills/comet-any/reference/authoring-subagents.md +102 -0
- package/assets/skills/comet-any/reference/bundle-authoring.md +166 -0
- package/assets/skills/comet-any/reference/eval-provider.md +83 -0
- package/assets/skills/comet-any/reference/subagents/pause-points-author.md +75 -0
- package/assets/skills/comet-any/reference/subagents/reference-author.md +77 -0
- package/assets/skills/comet-any/reference/subagents/script-author.md +81 -0
- package/assets/skills/comet-any/reference/subagents/skill-core-author.md +129 -0
- package/assets/skills/comet-any/reference/subagents/skill-reviewer.md +124 -0
- package/assets/skills/comet-any/reference/subagents/workflow-entry-author.md +100 -0
- package/assets/skills/comet-archive/SKILL.md +25 -15
- package/assets/skills/comet-build/SKILL.md +51 -40
- package/assets/skills/comet-design/SKILL.md +14 -18
- package/assets/skills/comet-hotfix/SKILL.md +33 -43
- package/assets/skills/comet-open/SKILL.md +10 -20
- package/assets/skills/comet-tweak/SKILL.md +71 -65
- package/assets/skills/comet-verify/SKILL.md +31 -35
- package/assets/skills-zh/comet/SKILL.md +87 -101
- package/assets/skills-zh/comet/reference/auto-transition.md +3 -3
- package/assets/skills-zh/comet/reference/comet-yaml-fields.md +8 -4
- package/assets/skills-zh/comet/reference/context-recovery.md +11 -1
- package/assets/skills-zh/comet/reference/debug-gate.md +17 -1
- package/assets/skills-zh/comet/reference/decision-point.md +13 -2
- package/assets/skills-zh/comet/reference/intent-frame.md +74 -0
- package/assets/skills-zh/comet/reference/scripts.md +69 -0
- package/assets/skills-zh/comet/reference/subagent-dispatch.md +67 -18
- package/assets/skills-zh/comet/runtime/classic/checks.yaml +6 -0
- package/assets/skills-zh/comet/runtime/classic/guardrails.yaml +13 -0
- package/assets/skills-zh/comet/runtime/classic/skill.yaml +122 -0
- package/assets/skills-zh/comet-any/SKILL.md +118 -0
- package/assets/skills-zh/comet-any/reference/authored-zone-example.md +100 -0
- package/assets/skills-zh/comet-any/reference/authoring-protocol.json +91 -0
- package/assets/skills-zh/comet-any/reference/authoring-subagents.md +107 -0
- package/assets/skills-zh/comet-any/reference/bundle-authoring.md +166 -0
- package/assets/skills-zh/comet-any/reference/eval-provider.md +66 -0
- package/assets/skills-zh/comet-any/reference/subagents/pause-points-author.md +79 -0
- package/assets/skills-zh/comet-any/reference/subagents/reference-author.md +81 -0
- package/assets/skills-zh/comet-any/reference/subagents/script-author.md +84 -0
- package/assets/skills-zh/comet-any/reference/subagents/skill-core-author.md +129 -0
- package/assets/skills-zh/comet-any/reference/subagents/skill-reviewer.md +124 -0
- package/assets/skills-zh/comet-any/reference/subagents/workflow-entry-author.md +98 -0
- package/assets/skills-zh/comet-archive/SKILL.md +25 -15
- package/assets/skills-zh/comet-build/SKILL.md +41 -43
- package/assets/skills-zh/comet-design/SKILL.md +14 -18
- package/assets/skills-zh/comet-hotfix/SKILL.md +37 -47
- package/assets/skills-zh/comet-open/SKILL.md +12 -22
- package/assets/skills-zh/comet-tweak/SKILL.md +70 -63
- package/assets/skills-zh/comet-verify/SKILL.md +28 -30
- package/bin/comet.js +1 -1
- package/dist/{cli → app/cli}/index.d.ts.map +1 -1
- package/dist/app/cli/index.js +430 -0
- package/dist/app/cli/index.js.map +1 -0
- package/dist/app/commands/bundle.d.ts +51 -0
- package/dist/app/commands/bundle.d.ts.map +1 -0
- package/dist/app/commands/bundle.js +387 -0
- package/dist/app/commands/bundle.js.map +1 -0
- package/dist/app/commands/creator.d.ts +14 -0
- package/dist/app/commands/creator.d.ts.map +1 -0
- package/dist/app/commands/creator.js +82 -0
- package/dist/app/commands/creator.js.map +1 -0
- package/dist/app/commands/dashboard.d.ts +16 -0
- package/dist/app/commands/dashboard.d.ts.map +1 -0
- package/dist/app/commands/dashboard.js +53 -0
- package/dist/app/commands/dashboard.js.map +1 -0
- package/dist/{commands → app/commands}/doctor.d.ts +1 -1
- package/dist/app/commands/doctor.d.ts.map +1 -0
- package/dist/{commands → app/commands}/doctor.js +110 -60
- package/dist/app/commands/doctor.js.map +1 -0
- package/dist/app/commands/eval.d.ts +17 -0
- package/dist/app/commands/eval.d.ts.map +1 -0
- package/dist/app/commands/eval.js +169 -0
- package/dist/app/commands/eval.js.map +1 -0
- package/dist/app/commands/i18n.d.ts +4 -0
- package/dist/app/commands/i18n.d.ts.map +1 -0
- package/dist/{commands → app/commands}/i18n.js +22 -2
- package/dist/app/commands/i18n.js.map +1 -0
- package/dist/{commands → app/commands}/init.d.ts +3 -1
- package/dist/app/commands/init.d.ts.map +1 -0
- package/dist/{commands → app/commands}/init.js +81 -31
- package/dist/app/commands/init.js.map +1 -0
- package/dist/app/commands/platform-select-prompt.d.ts +38 -0
- package/dist/app/commands/platform-select-prompt.d.ts.map +1 -0
- package/dist/app/commands/platform-select-prompt.js +141 -0
- package/dist/app/commands/platform-select-prompt.js.map +1 -0
- package/dist/app/commands/publish.d.ts +7 -0
- package/dist/app/commands/publish.d.ts.map +1 -0
- package/dist/app/commands/publish.js +14 -0
- package/dist/app/commands/publish.js.map +1 -0
- package/dist/app/commands/skill.d.ts +23 -0
- package/dist/app/commands/skill.d.ts.map +1 -0
- package/dist/app/commands/skill.js +208 -0
- package/dist/app/commands/skill.js.map +1 -0
- package/dist/app/commands/status.d.ts.map +1 -0
- package/dist/app/commands/status.js +159 -0
- package/dist/app/commands/status.js.map +1 -0
- package/dist/{commands → app/commands}/uninstall.d.ts +1 -1
- package/dist/app/commands/uninstall.d.ts.map +1 -0
- package/dist/{commands → app/commands}/uninstall.js +3 -3
- package/dist/app/commands/uninstall.js.map +1 -0
- package/dist/{commands → app/commands}/update.d.ts +4 -3
- package/dist/app/commands/update.d.ts.map +1 -0
- package/dist/{commands → app/commands}/update.js +33 -10
- package/dist/app/commands/update.js.map +1 -0
- package/dist/config/repository-layout.json +98 -0
- package/dist/domains/bundle/authoring.d.ts +82 -0
- package/dist/domains/bundle/authoring.d.ts.map +1 -0
- package/dist/domains/bundle/authoring.js +185 -0
- package/dist/domains/bundle/authoring.js.map +1 -0
- package/dist/domains/bundle/bundle-platform.d.ts +39 -0
- package/dist/domains/bundle/bundle-platform.d.ts.map +1 -0
- package/dist/domains/bundle/bundle-platform.js +287 -0
- package/dist/domains/bundle/bundle-platform.js.map +1 -0
- package/dist/domains/bundle/candidates.d.ts +29 -0
- package/dist/domains/bundle/candidates.d.ts.map +1 -0
- package/dist/domains/bundle/candidates.js +37 -0
- package/dist/domains/bundle/candidates.js.map +1 -0
- package/dist/domains/bundle/compatibility-benchmark.d.ts +12 -0
- package/dist/domains/bundle/compatibility-benchmark.d.ts.map +1 -0
- package/dist/domains/bundle/compatibility-benchmark.js +224 -0
- package/dist/domains/bundle/compatibility-benchmark.js.map +1 -0
- package/dist/domains/bundle/compiler.d.ts +5 -0
- package/dist/domains/bundle/compiler.d.ts.map +1 -0
- package/dist/domains/bundle/compiler.js +106 -0
- package/dist/domains/bundle/compiler.js.map +1 -0
- package/dist/domains/bundle/distribute.d.ts +33 -0
- package/dist/domains/bundle/distribute.d.ts.map +1 -0
- package/dist/domains/bundle/distribute.js +166 -0
- package/dist/domains/bundle/distribute.js.map +1 -0
- package/dist/domains/bundle/draft.d.ts +19 -0
- package/dist/domains/bundle/draft.d.ts.map +1 -0
- package/dist/domains/bundle/draft.js +82 -0
- package/dist/domains/bundle/draft.js.map +1 -0
- package/dist/domains/bundle/eval.d.ts +36 -0
- package/dist/domains/bundle/eval.d.ts.map +1 -0
- package/dist/domains/bundle/eval.js +501 -0
- package/dist/domains/bundle/eval.js.map +1 -0
- package/dist/domains/bundle/factory-compose.d.ts +12 -0
- package/dist/domains/bundle/factory-compose.d.ts.map +1 -0
- package/dist/domains/bundle/factory-compose.js +309 -0
- package/dist/domains/bundle/factory-compose.js.map +1 -0
- package/dist/domains/bundle/factory-guide.d.ts +37 -0
- package/dist/domains/bundle/factory-guide.d.ts.map +1 -0
- package/dist/domains/bundle/factory-guide.js +96 -0
- package/dist/domains/bundle/factory-guide.js.map +1 -0
- package/dist/domains/bundle/factory-plan.d.ts +48 -0
- package/dist/domains/bundle/factory-plan.d.ts.map +1 -0
- package/dist/domains/bundle/factory-plan.js +172 -0
- package/dist/domains/bundle/factory-plan.js.map +1 -0
- package/dist/domains/bundle/factory-proposal.d.ts +31 -0
- package/dist/domains/bundle/factory-proposal.d.ts.map +1 -0
- package/dist/domains/bundle/factory-proposal.js +225 -0
- package/dist/domains/bundle/factory-proposal.js.map +1 -0
- package/dist/domains/bundle/factory-resolve.d.ts +11 -0
- package/dist/domains/bundle/factory-resolve.d.ts.map +1 -0
- package/dist/domains/bundle/factory-resolve.js +121 -0
- package/dist/domains/bundle/factory-resolve.js.map +1 -0
- package/dist/domains/bundle/factory.d.ts +17 -0
- package/dist/domains/bundle/factory.d.ts.map +1 -0
- package/dist/domains/bundle/factory.js +511 -0
- package/dist/domains/bundle/factory.js.map +1 -0
- package/dist/domains/bundle/hash.d.ts +3 -0
- package/dist/domains/bundle/hash.d.ts.map +1 -0
- package/dist/domains/bundle/hash.js +72 -0
- package/dist/domains/bundle/hash.js.map +1 -0
- package/dist/domains/bundle/load.d.ts +4 -0
- package/dist/domains/bundle/load.d.ts.map +1 -0
- package/dist/domains/bundle/load.js +355 -0
- package/dist/domains/bundle/load.js.map +1 -0
- package/dist/domains/bundle/next-action.d.ts +37 -0
- package/dist/domains/bundle/next-action.d.ts.map +1 -0
- package/dist/domains/bundle/next-action.js +185 -0
- package/dist/domains/bundle/next-action.js.map +1 -0
- package/dist/domains/bundle/platform.d.ts +21 -0
- package/dist/domains/bundle/platform.d.ts.map +1 -0
- package/dist/domains/bundle/platform.js +170 -0
- package/dist/domains/bundle/platform.js.map +1 -0
- package/dist/domains/bundle/preferences.d.ts +11 -0
- package/dist/domains/bundle/preferences.d.ts.map +1 -0
- package/dist/domains/bundle/preferences.js +17 -0
- package/dist/domains/bundle/preferences.js.map +1 -0
- package/dist/domains/bundle/publish.d.ts +14 -0
- package/dist/domains/bundle/publish.d.ts.map +1 -0
- package/dist/domains/bundle/publish.js +159 -0
- package/dist/domains/bundle/publish.js.map +1 -0
- package/dist/domains/bundle/readiness-user-summary.d.ts +25 -0
- package/dist/domains/bundle/readiness-user-summary.d.ts.map +1 -0
- package/dist/domains/bundle/readiness-user-summary.js +186 -0
- package/dist/domains/bundle/readiness-user-summary.js.map +1 -0
- package/dist/domains/bundle/review-summary.d.ts +36 -0
- package/dist/domains/bundle/review-summary.d.ts.map +1 -0
- package/dist/domains/bundle/review-summary.js +348 -0
- package/dist/domains/bundle/review-summary.js.map +1 -0
- package/dist/domains/bundle/state.d.ts +7 -0
- package/dist/domains/bundle/state.d.ts.map +1 -0
- package/dist/domains/bundle/state.js +132 -0
- package/dist/domains/bundle/state.js.map +1 -0
- package/dist/domains/bundle/types.d.ts +347 -0
- package/dist/domains/bundle/types.d.ts.map +1 -0
- package/dist/domains/bundle/types.js.map +1 -0
- package/dist/domains/bundle/user-facing.d.ts +48 -0
- package/dist/domains/bundle/user-facing.d.ts.map +1 -0
- package/dist/domains/bundle/user-facing.js +73 -0
- package/dist/domains/bundle/user-facing.js.map +1 -0
- package/dist/domains/bundle/validate.d.ts +5 -0
- package/dist/domains/bundle/validate.d.ts.map +1 -0
- package/dist/domains/bundle/validate.js +292 -0
- package/dist/domains/bundle/validate.js.map +1 -0
- package/dist/domains/comet-classic/classic-archive-entry.d.ts +2 -0
- package/dist/domains/comet-classic/classic-archive-entry.d.ts.map +1 -0
- package/dist/domains/comet-classic/classic-archive-entry.js +4 -0
- package/dist/domains/comet-classic/classic-archive-entry.js.map +1 -0
- package/dist/domains/comet-classic/classic-archive.d.ts +3 -0
- package/dist/domains/comet-classic/classic-archive.d.ts.map +1 -0
- package/dist/domains/comet-classic/classic-archive.js +392 -0
- package/dist/domains/comet-classic/classic-archive.js.map +1 -0
- package/dist/domains/comet-classic/classic-cli.d.ts +15 -0
- package/dist/domains/comet-classic/classic-cli.d.ts.map +1 -0
- package/dist/domains/comet-classic/classic-cli.js +94 -0
- package/dist/domains/comet-classic/classic-cli.js.map +1 -0
- package/dist/domains/comet-classic/classic-diagnostics.d.ts +16 -0
- package/dist/domains/comet-classic/classic-diagnostics.d.ts.map +1 -0
- package/dist/domains/comet-classic/classic-diagnostics.js +57 -0
- package/dist/domains/comet-classic/classic-diagnostics.js.map +1 -0
- package/dist/domains/comet-classic/classic-evidence.d.ts +10 -0
- package/dist/domains/comet-classic/classic-evidence.d.ts.map +1 -0
- package/dist/domains/comet-classic/classic-evidence.js +114 -0
- package/dist/domains/comet-classic/classic-evidence.js.map +1 -0
- package/dist/domains/comet-classic/classic-guard-entry.d.ts +2 -0
- package/dist/domains/comet-classic/classic-guard-entry.d.ts.map +1 -0
- package/dist/domains/comet-classic/classic-guard-entry.js +4 -0
- package/dist/domains/comet-classic/classic-guard-entry.js.map +1 -0
- package/dist/domains/comet-classic/classic-guard.d.ts +3 -0
- package/dist/domains/comet-classic/classic-guard.d.ts.map +1 -0
- package/dist/domains/comet-classic/classic-guard.js +833 -0
- package/dist/domains/comet-classic/classic-guard.js.map +1 -0
- package/dist/domains/comet-classic/classic-handoff-entry.d.ts +2 -0
- package/dist/domains/comet-classic/classic-handoff-entry.d.ts.map +1 -0
- package/dist/domains/comet-classic/classic-handoff-entry.js +4 -0
- package/dist/domains/comet-classic/classic-handoff-entry.js.map +1 -0
- package/dist/domains/comet-classic/classic-handoff.d.ts +3 -0
- package/dist/domains/comet-classic/classic-handoff.d.ts.map +1 -0
- package/dist/domains/comet-classic/classic-handoff.js +478 -0
- package/dist/domains/comet-classic/classic-handoff.js.map +1 -0
- package/dist/domains/comet-classic/classic-hook-guard-entry.d.ts +2 -0
- package/dist/domains/comet-classic/classic-hook-guard-entry.d.ts.map +1 -0
- package/dist/domains/comet-classic/classic-hook-guard-entry.js +4 -0
- package/dist/domains/comet-classic/classic-hook-guard-entry.js.map +1 -0
- package/dist/domains/comet-classic/classic-hook-guard.d.ts +3 -0
- package/dist/domains/comet-classic/classic-hook-guard.d.ts.map +1 -0
- package/dist/domains/comet-classic/classic-hook-guard.js +302 -0
- package/dist/domains/comet-classic/classic-hook-guard.js.map +1 -0
- package/dist/domains/comet-classic/classic-intent-command.d.ts +3 -0
- package/dist/domains/comet-classic/classic-intent-command.d.ts.map +1 -0
- package/dist/domains/comet-classic/classic-intent-command.js +40 -0
- package/dist/domains/comet-classic/classic-intent-command.js.map +1 -0
- package/dist/domains/comet-classic/classic-intent-entry.d.ts +2 -0
- package/dist/domains/comet-classic/classic-intent-entry.d.ts.map +1 -0
- package/dist/domains/comet-classic/classic-intent-entry.js +4 -0
- package/dist/domains/comet-classic/classic-intent-entry.js.map +1 -0
- package/dist/domains/comet-classic/classic-intent.d.ts +79 -0
- package/dist/domains/comet-classic/classic-intent.d.ts.map +1 -0
- package/dist/domains/comet-classic/classic-intent.js +307 -0
- package/dist/domains/comet-classic/classic-intent.js.map +1 -0
- package/dist/domains/comet-classic/classic-migrate.d.ts +18 -0
- package/dist/domains/comet-classic/classic-migrate.d.ts.map +1 -0
- package/dist/domains/comet-classic/classic-migrate.js +184 -0
- package/dist/domains/comet-classic/classic-migrate.js.map +1 -0
- package/dist/domains/comet-classic/classic-paths.d.ts +8 -0
- package/dist/domains/comet-classic/classic-paths.d.ts.map +1 -0
- package/dist/domains/comet-classic/classic-paths.js +61 -0
- package/dist/domains/comet-classic/classic-paths.js.map +1 -0
- package/dist/domains/comet-classic/classic-resolver.d.ts +10 -0
- package/dist/domains/comet-classic/classic-resolver.d.ts.map +1 -0
- package/dist/domains/comet-classic/classic-resolver.js +89 -0
- package/dist/domains/comet-classic/classic-resolver.js.map +1 -0
- package/dist/domains/comet-classic/classic-runtime-evals.d.ts +9 -0
- package/dist/domains/comet-classic/classic-runtime-evals.d.ts.map +1 -0
- package/dist/domains/comet-classic/classic-runtime-evals.js +45 -0
- package/dist/domains/comet-classic/classic-runtime-evals.js.map +1 -0
- package/dist/domains/comet-classic/classic-runtime-run.d.ts +7 -0
- package/dist/domains/comet-classic/classic-runtime-run.d.ts.map +1 -0
- package/dist/domains/comet-classic/classic-runtime-run.js +105 -0
- package/dist/domains/comet-classic/classic-runtime-run.js.map +1 -0
- package/dist/domains/comet-classic/classic-script-entry.d.ts +3 -0
- package/dist/domains/comet-classic/classic-script-entry.d.ts.map +1 -0
- package/dist/domains/comet-classic/classic-script-entry.js +31 -0
- package/dist/domains/comet-classic/classic-script-entry.js.map +1 -0
- package/dist/domains/comet-classic/classic-state-command.d.ts +3 -0
- package/dist/domains/comet-classic/classic-state-command.d.ts.map +1 -0
- package/dist/domains/comet-classic/classic-state-command.js +984 -0
- package/dist/domains/comet-classic/classic-state-command.js.map +1 -0
- package/dist/domains/comet-classic/classic-state-entry.d.ts +2 -0
- package/dist/domains/comet-classic/classic-state-entry.d.ts.map +1 -0
- package/dist/domains/comet-classic/classic-state-entry.js +4 -0
- package/dist/domains/comet-classic/classic-state-entry.js.map +1 -0
- package/dist/domains/comet-classic/classic-state-events.d.ts +18 -0
- package/dist/domains/comet-classic/classic-state-events.d.ts.map +1 -0
- package/dist/domains/comet-classic/classic-state-events.js +15 -0
- package/dist/domains/comet-classic/classic-state-events.js.map +1 -0
- package/dist/domains/comet-classic/classic-state.d.ts +69 -0
- package/dist/domains/comet-classic/classic-state.d.ts.map +1 -0
- package/dist/domains/comet-classic/classic-state.js +238 -0
- package/dist/domains/comet-classic/classic-state.js.map +1 -0
- package/dist/domains/comet-classic/classic-store.d.ts +7 -0
- package/dist/domains/comet-classic/classic-store.d.ts.map +1 -0
- package/dist/domains/comet-classic/classic-store.js +127 -0
- package/dist/domains/comet-classic/classic-store.js.map +1 -0
- package/dist/domains/comet-classic/classic-transitions.d.ts +24 -0
- package/dist/domains/comet-classic/classic-transitions.d.ts.map +1 -0
- package/dist/domains/comet-classic/classic-transitions.js +124 -0
- package/dist/domains/comet-classic/classic-transitions.js.map +1 -0
- package/dist/domains/comet-classic/classic-validate-command.d.ts +3 -0
- package/dist/domains/comet-classic/classic-validate-command.d.ts.map +1 -0
- package/dist/domains/comet-classic/classic-validate-command.js +154 -0
- package/dist/domains/comet-classic/classic-validate-command.js.map +1 -0
- package/dist/domains/comet-classic/classic-validate-entry.d.ts +2 -0
- package/dist/domains/comet-classic/classic-validate-entry.d.ts.map +1 -0
- package/dist/domains/comet-classic/classic-validate-entry.js +4 -0
- package/dist/domains/comet-classic/classic-validate-entry.js.map +1 -0
- package/dist/domains/comet-classic/index.d.ts +20 -0
- package/dist/domains/comet-classic/index.d.ts.map +1 -0
- package/dist/domains/comet-classic/index.js +20 -0
- package/dist/domains/comet-classic/index.js.map +1 -0
- package/dist/domains/dashboard/collector.d.ts +12 -0
- package/dist/domains/dashboard/collector.d.ts.map +1 -0
- package/dist/domains/dashboard/collector.js +475 -0
- package/dist/domains/dashboard/collector.js.map +1 -0
- package/dist/domains/dashboard/git.d.ts +8 -0
- package/dist/domains/dashboard/git.d.ts.map +1 -0
- package/dist/domains/dashboard/git.js +69 -0
- package/dist/domains/dashboard/git.js.map +1 -0
- package/dist/domains/dashboard/next-action.d.ts +17 -0
- package/dist/domains/dashboard/next-action.d.ts.map +1 -0
- package/dist/domains/dashboard/next-action.js +83 -0
- package/dist/domains/dashboard/next-action.js.map +1 -0
- package/dist/domains/dashboard/open-browser.d.ts +9 -0
- package/dist/domains/dashboard/open-browser.d.ts.map +1 -0
- package/dist/domains/dashboard/open-browser.js +40 -0
- package/dist/domains/dashboard/open-browser.js.map +1 -0
- package/dist/domains/dashboard/risk.d.ts +24 -0
- package/dist/domains/dashboard/risk.d.ts.map +1 -0
- package/dist/domains/dashboard/risk.js +97 -0
- package/dist/domains/dashboard/risk.js.map +1 -0
- package/dist/domains/dashboard/server.d.ts +21 -0
- package/dist/domains/dashboard/server.d.ts.map +1 -0
- package/dist/domains/dashboard/server.js +149 -0
- package/dist/domains/dashboard/server.js.map +1 -0
- package/dist/domains/dashboard/task-parser.d.ts +13 -0
- package/dist/domains/dashboard/task-parser.d.ts.map +1 -0
- package/dist/domains/dashboard/task-parser.js +82 -0
- package/dist/domains/dashboard/task-parser.js.map +1 -0
- package/dist/domains/dashboard/types.d.ts +122 -0
- package/dist/domains/dashboard/types.d.ts.map +1 -0
- package/dist/domains/dashboard/types.js +10 -0
- package/dist/domains/dashboard/types.js.map +1 -0
- package/dist/domains/dashboard/verify-parser.d.ts +18 -0
- package/dist/domains/dashboard/verify-parser.d.ts.map +1 -0
- package/dist/domains/dashboard/verify-parser.js +94 -0
- package/dist/domains/dashboard/verify-parser.js.map +1 -0
- package/dist/domains/dashboard/web/assets/demo-DQyfozbi.js +1 -0
- package/dist/domains/dashboard/web/assets/index-BcO3_QlT.css +1 -0
- package/dist/domains/dashboard/web/assets/index-CjU3VXVu.js +22 -0
- package/dist/domains/dashboard/web/favicon.png +0 -0
- package/dist/domains/dashboard/web/index.html +16 -0
- package/dist/domains/dashboard/yaml.d.ts +13 -0
- package/dist/domains/dashboard/yaml.d.ts.map +1 -0
- package/dist/domains/dashboard/yaml.js +61 -0
- package/dist/domains/dashboard/yaml.js.map +1 -0
- package/dist/domains/engine/evals.d.ts +4 -0
- package/dist/domains/engine/evals.d.ts.map +1 -0
- package/dist/domains/engine/evals.js +25 -0
- package/dist/domains/engine/evals.js.map +1 -0
- package/dist/domains/engine/guardrails.d.ts +10 -0
- package/dist/domains/engine/guardrails.d.ts.map +1 -0
- package/dist/domains/engine/guardrails.js +25 -0
- package/dist/domains/engine/guardrails.js.map +1 -0
- package/dist/domains/engine/loop.d.ts +15 -0
- package/dist/domains/engine/loop.d.ts.map +1 -0
- package/dist/domains/engine/loop.js +126 -0
- package/dist/domains/engine/loop.js.map +1 -0
- package/dist/domains/engine/manual-run.d.ts +30 -0
- package/dist/domains/engine/manual-run.d.ts.map +1 -0
- package/dist/domains/engine/manual-run.js +184 -0
- package/dist/domains/engine/manual-run.js.map +1 -0
- package/dist/domains/engine/resolver.d.ts +20 -0
- package/dist/domains/engine/resolver.d.ts.map +1 -0
- package/dist/domains/engine/resolver.js +36 -0
- package/dist/domains/engine/resolver.js.map +1 -0
- package/dist/domains/engine/run-store.d.ts +13 -0
- package/dist/domains/engine/run-store.d.ts.map +1 -0
- package/dist/domains/engine/run-store.js +100 -0
- package/dist/domains/engine/run-store.js.map +1 -0
- package/dist/domains/engine/runtime-types.d.ts +11 -0
- package/dist/domains/engine/runtime-types.d.ts.map +1 -0
- package/dist/domains/engine/runtime-types.js +2 -0
- package/dist/domains/engine/runtime-types.js.map +1 -0
- package/dist/domains/engine/standalone-run.d.ts +13 -0
- package/dist/domains/engine/standalone-run.d.ts.map +1 -0
- package/dist/domains/engine/standalone-run.js +27 -0
- package/dist/domains/engine/standalone-run.js.map +1 -0
- package/dist/domains/engine/state.d.ts +10 -0
- package/dist/domains/engine/state.d.ts.map +1 -0
- package/dist/domains/engine/state.js +160 -0
- package/dist/domains/engine/state.js.map +1 -0
- package/dist/domains/engine/types.d.ts +51 -0
- package/dist/domains/engine/types.d.ts.map +1 -0
- package/dist/domains/engine/types.js +2 -0
- package/dist/domains/engine/types.js.map +1 -0
- package/dist/domains/eval/index.d.ts +7 -0
- package/dist/domains/eval/index.d.ts.map +1 -0
- package/dist/domains/eval/index.js +11 -0
- package/dist/domains/eval/index.js.map +1 -0
- package/dist/domains/eval/repository-benchmarks.d.ts +6 -0
- package/dist/domains/eval/repository-benchmarks.d.ts.map +1 -0
- package/dist/domains/eval/repository-benchmarks.js +10 -0
- package/dist/domains/eval/repository-benchmarks.js.map +1 -0
- package/dist/domains/factory/artifacts.d.ts +53 -0
- package/dist/domains/factory/artifacts.d.ts.map +1 -0
- package/dist/domains/factory/artifacts.js +8 -0
- package/dist/domains/factory/artifacts.js.map +1 -0
- package/dist/domains/factory/package.d.ts +7 -0
- package/dist/domains/factory/package.d.ts.map +1 -0
- package/dist/domains/factory/package.js +1511 -0
- package/dist/domains/factory/package.js.map +1 -0
- package/dist/domains/factory/types.d.ts +127 -0
- package/dist/domains/factory/types.d.ts.map +1 -0
- package/dist/domains/factory/types.js +2 -0
- package/dist/domains/factory/types.js.map +1 -0
- package/dist/{core → domains/integrations}/codegraph.d.ts +1 -1
- package/dist/domains/integrations/codegraph.d.ts.map +1 -0
- package/dist/{core → domains/integrations}/codegraph.js +1 -1
- package/dist/domains/integrations/codegraph.js.map +1 -0
- package/dist/domains/integrations/openspec.d.ts +18 -0
- package/dist/domains/integrations/openspec.d.ts.map +1 -0
- package/dist/{core → domains/integrations}/openspec.js +102 -25
- package/dist/domains/integrations/openspec.js.map +1 -0
- package/dist/{core → domains/integrations}/superpowers.d.ts +10 -2
- package/dist/domains/integrations/superpowers.d.ts.map +1 -0
- package/dist/{core → domains/integrations}/superpowers.js +59 -13
- package/dist/domains/integrations/superpowers.js.map +1 -0
- package/dist/domains/skill/discovery.d.ts +17 -0
- package/dist/domains/skill/discovery.d.ts.map +1 -0
- package/dist/domains/skill/discovery.js +80 -0
- package/dist/domains/skill/discovery.js.map +1 -0
- package/dist/domains/skill/find.d.ts +41 -0
- package/dist/domains/skill/find.d.ts.map +1 -0
- package/dist/domains/skill/find.js +251 -0
- package/dist/domains/skill/find.js.map +1 -0
- package/dist/domains/skill/install.d.ts +11 -0
- package/dist/domains/skill/install.d.ts.map +1 -0
- package/dist/domains/skill/install.js +82 -0
- package/dist/domains/skill/install.js.map +1 -0
- package/dist/domains/skill/inventory.d.ts +19 -0
- package/dist/domains/skill/inventory.d.ts.map +1 -0
- package/dist/domains/skill/inventory.js +64 -0
- package/dist/domains/skill/inventory.js.map +1 -0
- package/dist/domains/skill/languages.d.ts +19 -0
- package/dist/domains/skill/languages.d.ts.map +1 -0
- package/dist/domains/skill/languages.js +21 -0
- package/dist/domains/skill/languages.js.map +1 -0
- package/dist/domains/skill/load.d.ts +5 -0
- package/dist/domains/skill/load.d.ts.map +1 -0
- package/dist/domains/skill/load.js +313 -0
- package/dist/domains/skill/load.js.map +1 -0
- package/dist/domains/skill/platform-install.d.ts +87 -0
- package/dist/domains/skill/platform-install.d.ts.map +1 -0
- package/dist/{core/skills.js → domains/skill/platform-install.js} +243 -51
- package/dist/domains/skill/platform-install.js.map +1 -0
- package/dist/domains/skill/preferences.d.ts +42 -0
- package/dist/domains/skill/preferences.d.ts.map +1 -0
- package/dist/domains/skill/preferences.js +118 -0
- package/dist/domains/skill/preferences.js.map +1 -0
- package/dist/domains/skill/snapshot.d.ts +8 -0
- package/dist/domains/skill/snapshot.d.ts.map +1 -0
- package/dist/domains/skill/snapshot.js +184 -0
- package/dist/domains/skill/snapshot.js.map +1 -0
- package/dist/domains/skill/types.d.ts +85 -0
- package/dist/domains/skill/types.d.ts.map +1 -0
- package/dist/domains/skill/types.js +2 -0
- package/dist/{core → domains/skill}/types.js.map +1 -1
- package/dist/{core → domains/skill}/uninstall.d.ts +2 -18
- package/dist/domains/skill/uninstall.d.ts.map +1 -0
- package/dist/{core → domains/skill}/uninstall.js +15 -66
- package/dist/domains/skill/uninstall.js.map +1 -0
- package/dist/domains/skill/validate.d.ts +3 -0
- package/dist/domains/skill/validate.d.ts.map +1 -0
- package/dist/domains/skill/validate.js +81 -0
- package/dist/domains/skill/validate.js.map +1 -0
- package/dist/domains/workflow-contract/builtins.d.ts +8 -0
- package/dist/domains/workflow-contract/builtins.d.ts.map +1 -0
- package/dist/domains/workflow-contract/builtins.js +229 -0
- package/dist/domains/workflow-contract/builtins.js.map +1 -0
- package/dist/domains/workflow-contract/hash.d.ts +3 -0
- package/dist/domains/workflow-contract/hash.d.ts.map +1 -0
- package/dist/domains/workflow-contract/hash.js +16 -0
- package/dist/domains/workflow-contract/hash.js.map +1 -0
- package/dist/domains/workflow-contract/index.d.ts +6 -0
- package/dist/domains/workflow-contract/index.d.ts.map +1 -0
- package/dist/domains/workflow-contract/index.js +5 -0
- package/dist/domains/workflow-contract/index.js.map +1 -0
- package/dist/domains/workflow-contract/normalize.d.ts +3 -0
- package/dist/domains/workflow-contract/normalize.d.ts.map +1 -0
- package/dist/domains/workflow-contract/normalize.js +146 -0
- package/dist/domains/workflow-contract/normalize.js.map +1 -0
- package/dist/domains/workflow-contract/types.d.ts +128 -0
- package/dist/domains/workflow-contract/types.d.ts.map +1 -0
- package/dist/domains/workflow-contract/types.js +2 -0
- package/dist/domains/workflow-contract/types.js.map +1 -0
- package/dist/domains/workflow-contract/validation.d.ts +3 -0
- package/dist/domains/workflow-contract/validation.d.ts.map +1 -0
- package/dist/domains/workflow-contract/validation.js +180 -0
- package/dist/domains/workflow-contract/validation.js.map +1 -0
- package/dist/platform/fs/file-system.d.ts.map +1 -0
- package/dist/platform/fs/file-system.js.map +1 -0
- package/dist/platform/install/detect.d.ts.map +1 -0
- package/dist/{core → platform/install}/detect.js +4 -3
- package/dist/platform/install/detect.js.map +1 -0
- package/dist/platform/install/platforms.d.ts.map +1 -0
- package/dist/{core → platform/install}/platforms.js +41 -0
- package/dist/platform/install/platforms.js.map +1 -0
- package/dist/platform/install/types.d.ts +3 -0
- package/dist/platform/install/types.d.ts.map +1 -0
- package/dist/platform/install/types.js +2 -0
- package/dist/platform/install/types.js.map +1 -0
- package/dist/platform/paths/repository-layout.d.ts +22 -0
- package/dist/platform/paths/repository-layout.d.ts.map +1 -0
- package/dist/platform/paths/repository-layout.js +11 -0
- package/dist/platform/paths/repository-layout.js.map +1 -0
- package/dist/platform/process/command-error.d.ts.map +1 -0
- package/dist/platform/process/command-error.js.map +1 -0
- package/dist/platform/process/shell-quote.d.ts +22 -0
- package/dist/platform/process/shell-quote.d.ts.map +1 -0
- package/dist/platform/process/shell-quote.js +34 -0
- package/dist/platform/process/shell-quote.js.map +1 -0
- package/dist/platform/version/version.d.ts.map +1 -0
- package/dist/{core → platform/version}/version.js +16 -3
- package/dist/platform/version/version.js.map +1 -0
- package/package.json +39 -13
- package/assets/skills/comet/scripts/comet-archive.sh +0 -311
- package/assets/skills/comet/scripts/comet-env.sh +0 -110
- package/assets/skills/comet/scripts/comet-guard.sh +0 -778
- package/assets/skills/comet/scripts/comet-handoff.sh +0 -390
- package/assets/skills/comet/scripts/comet-hook-guard.sh +0 -336
- package/assets/skills/comet/scripts/comet-state.sh +0 -1338
- package/assets/skills/comet/scripts/comet-yaml-validate.sh +0 -225
- package/dist/cli/index.js +0 -84
- package/dist/cli/index.js.map +0 -1
- package/dist/commands/doctor.d.ts.map +0 -1
- package/dist/commands/doctor.js.map +0 -1
- package/dist/commands/i18n.d.ts +0 -4
- package/dist/commands/i18n.d.ts.map +0 -1
- package/dist/commands/i18n.js.map +0 -1
- package/dist/commands/init.d.ts.map +0 -1
- package/dist/commands/init.js.map +0 -1
- package/dist/commands/status.d.ts.map +0 -1
- package/dist/commands/status.js +0 -108
- package/dist/commands/status.js.map +0 -1
- package/dist/commands/uninstall.d.ts.map +0 -1
- package/dist/commands/uninstall.js.map +0 -1
- package/dist/commands/update.d.ts.map +0 -1
- package/dist/commands/update.js.map +0 -1
- package/dist/core/codegraph.d.ts.map +0 -1
- package/dist/core/codegraph.js.map +0 -1
- package/dist/core/command-error.d.ts.map +0 -1
- package/dist/core/command-error.js.map +0 -1
- package/dist/core/detect.d.ts.map +0 -1
- package/dist/core/detect.js.map +0 -1
- package/dist/core/openspec.d.ts +0 -11
- package/dist/core/openspec.d.ts.map +0 -1
- package/dist/core/openspec.js.map +0 -1
- package/dist/core/platforms.d.ts.map +0 -1
- package/dist/core/platforms.js.map +0 -1
- package/dist/core/skills.d.ts +0 -58
- package/dist/core/skills.d.ts.map +0 -1
- package/dist/core/skills.js.map +0 -1
- package/dist/core/superpowers.d.ts.map +0 -1
- package/dist/core/superpowers.js.map +0 -1
- package/dist/core/types.d.ts +0 -2
- package/dist/core/types.d.ts.map +0 -1
- package/dist/core/uninstall.d.ts.map +0 -1
- package/dist/core/uninstall.js.map +0 -1
- package/dist/core/version.d.ts.map +0 -1
- package/dist/core/version.js.map +0 -1
- package/dist/utils/file-system.d.ts.map +0 -1
- package/dist/utils/file-system.js.map +0 -1
- /package/dist/{cli → app/cli}/index.d.ts +0 -0
- /package/dist/{commands → app/commands}/status.d.ts +0 -0
- /package/dist/{core → domains/bundle}/types.js +0 -0
- /package/dist/{utils → platform/fs}/file-system.d.ts +0 -0
- /package/dist/{utils → platform/fs}/file-system.js +0 -0
- /package/dist/{core → platform/install}/detect.d.ts +0 -0
- /package/dist/{core → platform/install}/platforms.d.ts +0 -0
- /package/dist/{core → platform/process}/command-error.d.ts +0 -0
- /package/dist/{core → platform/process}/command-error.js +0 -0
- /package/dist/{core → platform/version}/version.d.ts +0 -0
- /package/scripts/{postinstall.js → install/postinstall.js} +0 -0
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
# reference 作者 subagent
|
|
2
|
+
|
|
3
|
+
本文件是 portable lane brief,不是 platform-native custom agent;如需 Claude Code custom agent,必须另行生成平台 agent 资源和 frontmatter。
|
|
4
|
+
|
|
5
|
+
## 职责
|
|
6
|
+
|
|
7
|
+
编写和整理候选 Skill 的 reference 层,让审计、恢复、评审和后续维护有真实依据。
|
|
8
|
+
reference 层承载证据,不把内部审计内容塞进用户可见 `SKILL.md`。
|
|
9
|
+
|
|
10
|
+
必须覆盖:
|
|
11
|
+
|
|
12
|
+
- `reference/workflow-protocol.json`
|
|
13
|
+
- `reference/resolved-skills.json`
|
|
14
|
+
- `reference/composition-report.md`
|
|
15
|
+
- `reference/authoring-lanes.json`
|
|
16
|
+
|
|
17
|
+
## 输入
|
|
18
|
+
|
|
19
|
+
读取主会话提供的通用输入,尤其关注:
|
|
20
|
+
|
|
21
|
+
- resolved Skill 的名称、来源、description、hash、reference、rules、scripts、hooks。
|
|
22
|
+
- `sourceSummaries`,必须来自真实 `SKILL.md` 正文和直接 reference。
|
|
23
|
+
- 项目级偏好、缺失/歧义候选处理、偏离原因和可执行披露。
|
|
24
|
+
- `/comet` 定制时保留的五阶段语义。
|
|
25
|
+
|
|
26
|
+
使用文件交接:主会话提供路径,不粘贴大段全文。不要读取主会话历史,也不要把来源 Skill 原文整段搬进
|
|
27
|
+
reference。
|
|
28
|
+
|
|
29
|
+
## 派发模板
|
|
30
|
+
|
|
31
|
+
主会话派发时使用当前平台的 subagent 机制,形状应包含:
|
|
32
|
+
|
|
33
|
+
```text
|
|
34
|
+
description: "整理 <bundle-name> 的 reference 证据"
|
|
35
|
+
model: <必须显式指定 model>
|
|
36
|
+
prompt:
|
|
37
|
+
你是 reference 作者 subagent。
|
|
38
|
+
先读取本 brief、通用输入路径、resolved skills 路径、workflow protocol 路径和报告文件路径。
|
|
39
|
+
开始前先提出问题:如果来源证据、hash、偏好决策或可执行披露不清楚,先返回 NEEDS_CONTEXT。
|
|
40
|
+
不要猜测或自行补全缺失来源。
|
|
41
|
+
只产出 reference 草稿和 claims,不写 Bundle state,不执行候选脚本。
|
|
42
|
+
把完整 reference 草稿写入报告文件路径,并只返回 15 行以内状态摘要。
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
## 输出要求
|
|
46
|
+
|
|
47
|
+
返回 reference 草稿,说明:
|
|
48
|
+
|
|
49
|
+
- workflow protocol 中每个阶段的目标、守卫、下一阶段条件和恢复点。
|
|
50
|
+
- resolved Skill 证据如何支持组合流程。
|
|
51
|
+
- 组合与用户偏好哪里一致、哪里偏离、为什么偏离。
|
|
52
|
+
- 哪些内容属于用户可见流程,哪些内容只保留在 reference 审计层。
|
|
53
|
+
|
|
54
|
+
不要把 reference 写成原 Skill 的复制粘贴;必须提炼为组合 Skill 可用的证据和协议。
|
|
55
|
+
|
|
56
|
+
## 自检
|
|
57
|
+
|
|
58
|
+
返回前逐项检查:
|
|
59
|
+
|
|
60
|
+
- 每个 source summary 都能追溯到真实 `SKILL.md` 或直接 reference。
|
|
61
|
+
- workflow protocol 能解释阶段目标、守卫、自动推进和恢复。
|
|
62
|
+
- 偏好、缺失、歧义、偏离和可执行披露都有记录。
|
|
63
|
+
- 用户可见流程和内部审计内容边界清楚。
|
|
64
|
+
- 没有把原 Skill 全文复制进 reference。
|
|
65
|
+
|
|
66
|
+
## 必须返回的 claim
|
|
67
|
+
|
|
68
|
+
- `reference:workflow-protocol`
|
|
69
|
+
- `reference:resolved-skills`
|
|
70
|
+
- `reference:composition-report`
|
|
71
|
+
- `reference:authoring-lanes`
|
|
72
|
+
|
|
73
|
+
缺少任一 claim 时,Skill 审查必须阻塞。
|
|
74
|
+
|
|
75
|
+
## 状态返回
|
|
76
|
+
|
|
77
|
+
状态必须是 `DONE`、`DONE_WITH_CONCERNS`、`NEEDS_CONTEXT`、`BLOCKED`。
|
|
78
|
+
|
|
79
|
+
完整报告写入报告文件路径。返回给主会话的摘要只返回 15 行以内状态摘要,包含状态、报告文件路径、
|
|
80
|
+
claim 列表、证据缺口和疑虑。若状态是 `BLOCKED` 或 `NEEDS_CONTEXT`,必须直接说明缺什么来源、
|
|
81
|
+
尝试过什么、需要主会话如何处理。
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
# 脚本作者 subagent
|
|
2
|
+
|
|
3
|
+
本文件是 portable lane brief,不是 platform-native custom agent;如需 Claude Code custom agent,必须另行生成平台 agent 资源和 frontmatter。
|
|
4
|
+
|
|
5
|
+
## 职责
|
|
6
|
+
|
|
7
|
+
设计候选 Skill 的脚本契约,而不是复制 Comet Classic 的脚本。脚本必须根据当前 workflow protocol、
|
|
8
|
+
用户选择的阶段名和组合 Skill 的真实产物,定义自动推进、退出检查、断点恢复和证据记录。
|
|
9
|
+
|
|
10
|
+
必须覆盖:
|
|
11
|
+
|
|
12
|
+
- `scripts/workflow-state.mjs`
|
|
13
|
+
- `scripts/workflow-guard.mjs`
|
|
14
|
+
- `scripts/workflow-handoff.mjs`
|
|
15
|
+
|
|
16
|
+
factory 还会从同一份 `workflow-protocol.json` 确定性生成 `scripts/comet-plan.mjs`、`scripts/comet-check.mjs`、`scripts/comet-hook-guard.mjs`。不要重复设计这三个脚本;你的契约只针对 skill-core 作者与 entry 作者引用的 `workflow-*.mjs`。
|
|
17
|
+
|
|
18
|
+
## 输入
|
|
19
|
+
|
|
20
|
+
读取主会话提供的通用输入,尤其关注:
|
|
21
|
+
|
|
22
|
+
- `reference/workflow-protocol.json`
|
|
23
|
+
- `plan.json` 的 `workflow.kind`、`workflow.nodes`、`engineMode`、`runnerMode`,以及规范化后的 `workflow-protocol.json`
|
|
24
|
+
- `reference/resolved-skills.json`
|
|
25
|
+
- `/comet` 定制时的 `.comet.yaml` 受保护语义;`comet-five-phase-overlay` 的主状态只来自 `openspec/changes/<name>/.comet.yaml`,不得创建 `.comet/runs/<workflow>/state.json` 作为 Comet overlay 主状态
|
|
26
|
+
|
|
27
|
+
使用文件交接:主会话提供路径,不粘贴大段全文。不要读取主会话历史,也不要要求用户重新解释已经写入
|
|
28
|
+
artifact 的内容。
|
|
29
|
+
|
|
30
|
+
## 派发模板
|
|
31
|
+
|
|
32
|
+
主会话派发时使用当前平台的 subagent 机制,形状应包含:
|
|
33
|
+
|
|
34
|
+
```text
|
|
35
|
+
description: "编写 <bundle-name> 的脚本契约"
|
|
36
|
+
model: <必须显式指定 model>
|
|
37
|
+
prompt:
|
|
38
|
+
你是脚本作者 subagent。
|
|
39
|
+
先读取本 brief、通用输入路径、workflow protocol 路径、resolved skills 路径和报告文件路径。
|
|
40
|
+
开始前先提出问题:如果脚本边界、Node 完成条件、状态写入或恢复语义不清楚,先返回 NEEDS_CONTEXT。
|
|
41
|
+
不要猜测或自行补全缺失协议。
|
|
42
|
+
不要调用 comet bundle、comet publish、comet skill,也不要执行候选 Skill 的脚本。
|
|
43
|
+
把完整脚本契约写入报告文件路径,并只返回 15 行以内状态摘要。
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
## 输出要求
|
|
47
|
+
|
|
48
|
+
返回脚本契约草稿,说明每个脚本:
|
|
49
|
+
|
|
50
|
+
- 读取哪些状态。
|
|
51
|
+
- 写入哪些状态和 evidence。
|
|
52
|
+
- 对 `comet-five-phase-overlay`,如何在没有 active change 或多个 active changes 时阻塞并请用户选择。
|
|
53
|
+
- 如何判断当前阶段目标是否完成。
|
|
54
|
+
- 如何输出 `NEXT:`、`SKILL:` 和阻塞原因。
|
|
55
|
+
- 如何在阶段未完成时继续停留,而不是强制退出。
|
|
56
|
+
- 如何支持跨设备断点恢复。
|
|
57
|
+
|
|
58
|
+
退出检查必须来自当前 workflow protocol 和组合 Skill 的目标,不得照搬 Comet Classic 脚本。
|
|
59
|
+
|
|
60
|
+
## 自检
|
|
61
|
+
|
|
62
|
+
返回前逐项检查:
|
|
63
|
+
|
|
64
|
+
- 每个脚本都有输入、输出、状态读写、evidence 写入和失败行为。
|
|
65
|
+
- Node 完成条件来自 workflow protocol,而不是来自固定阶段名。
|
|
66
|
+
- `NEXT:` 和 `SKILL:` 的输出条件可被 Skill 核心作者直接引用。
|
|
67
|
+
- 跨设备恢复不依赖当前会话记忆。
|
|
68
|
+
- 没有执行候选脚本,也没有写入 Bundle state。
|
|
69
|
+
|
|
70
|
+
## 必须返回的 claim
|
|
71
|
+
|
|
72
|
+
- `script:workflow-state`
|
|
73
|
+
- `script:workflow-guard`
|
|
74
|
+
- `script:workflow-handoff`
|
|
75
|
+
|
|
76
|
+
缺少任一 claim 时,Skill 审查必须阻塞。
|
|
77
|
+
|
|
78
|
+
## 状态返回
|
|
79
|
+
|
|
80
|
+
状态必须是 `DONE`、`DONE_WITH_CONCERNS`、`NEEDS_CONTEXT`、`BLOCKED`。
|
|
81
|
+
|
|
82
|
+
完整报告写入报告文件路径。返回给主会话的摘要只返回 15 行以内状态摘要,包含状态、报告文件路径、
|
|
83
|
+
claim 列表、测试/校验说明和疑虑。若状态是 `BLOCKED` 或 `NEEDS_CONTEXT`,必须直接说明缺什么上下文、
|
|
84
|
+
尝试过什么、需要主会话如何处理。
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
# Skill 核心作者 subagent
|
|
2
|
+
|
|
3
|
+
本文件是 portable lane brief,不是 platform-native custom agent;如需 Claude Code custom agent,必须另行生成平台 agent 资源和 frontmatter。
|
|
4
|
+
|
|
5
|
+
## 职责
|
|
6
|
+
|
|
7
|
+
编写 internal Node Skill 的用户可见核心内容。entry Skill 由 workflow entry 作者单独负责。目标是产出 Comet-like 的多 Node workflow,
|
|
8
|
+
不得把来源 Skill 简单串联,也不复制粘贴原 Skill 全文。
|
|
9
|
+
|
|
10
|
+
必须覆盖:
|
|
11
|
+
|
|
12
|
+
- 每个 internal Node Skill
|
|
13
|
+
- `comet/skill.yaml` 中的阶段调用语义
|
|
14
|
+
- 每个 `node-skill:<skill-name>` claim
|
|
15
|
+
|
|
16
|
+
## 创作区(你写什么)
|
|
17
|
+
|
|
18
|
+
生成器把每个 Node SKILL.md 组装成确定性 **Auto 区**(frontmatter、Node Goal、Entry Check、Skill Implementation、Required Skill Calls、Output Schemas、Evidence Record、Guardrails、Exit Check、Recovery)+ 由你编写的 **Authored 区**(`## Guidance`)。**你只写 Guidance 正文,不写整个文件**。主会话通过 `comet creator authoring-record <name> --lane skill-core --file <out.json>` 记录你的产出;artifact `../<node-skill>/SKILL.md` 的 `content` 即 Guidance 正文。
|
|
19
|
+
|
|
20
|
+
质量标尺:真实的 Comet 阶段 skill(如 `comet-build/SKILL.md`);完整 substance 节点 Guidance 范例见 `reference/authored-zone-example.md`。写决策内容,不写套话。在 Guidance 内用 `###` 子标题(嵌套在 `## Guidance` 之下):
|
|
21
|
+
|
|
22
|
+
- `### Prerequisites` — 本 Node 开始前必须成立的前提。
|
|
23
|
+
- `### Steps` — 有序、领域相关的步骤;按名引用绑定的 Skill 并说明何时调用(不要复制它的正文)。
|
|
24
|
+
- `### Completion reasoning` — 本 Node 真正完成的判定(超出机械的 Exit Check),以及其中的判断取舍。
|
|
25
|
+
- `### Red flags` — 看似进展、实则不然的失败模式。
|
|
26
|
+
|
|
27
|
+
下面是"Research" substance 节点的具体摘录,展示预期深度。注意它是**决策内容**(何时停止、什么算充分、什么该拒绝),不是重述路由表或 output schema。
|
|
28
|
+
|
|
29
|
+
```markdown
|
|
30
|
+
### Prerequisites
|
|
31
|
+
|
|
32
|
+
- entry 的 Decision Core 已确认研究主题与范围。
|
|
33
|
+
- `research-skill` 在项目 Skill 池中可解析;若缺失,先停下询问用户,不要临时替代。
|
|
34
|
+
|
|
35
|
+
### Steps
|
|
36
|
+
|
|
37
|
+
1. 加载 `research-skill` 并按其发现方法处理已确认主题。当项目 Skill 定义了特定来源顺序时,不要用通用网络搜索替代。
|
|
38
|
+
2. 按优先级收集来源;为每个来源记录来源、日期和你要复用的论点。不通过项目可信度门槛的来源应直接剔除,而不是标注为"偏弱"。
|
|
39
|
+
3. 把发现提炼到 `notes/*.md` 笔记文件——每条独立论点一份,含逐字引用与来源指针。综合写在 writer 节点,不在这里。
|
|
40
|
+
4. 记录 `research.notes.v1` 的 `summary` evidence:一段提炼 + 产出的笔记数量。
|
|
41
|
+
|
|
42
|
+
### Completion reasoning
|
|
43
|
+
|
|
44
|
+
本节点完成当且仅当两条同时成立:(a) 已记录 `summary` evidence;(b) 至少一个 artifact 匹配 `notes/*.md`。不要仅仅因为步骤清单走完就退出——如果相对主题范围笔记仍偏稀疏,应继续研究而非宣布完成。Exit Check 脚本会机械地强制 artifact + evidence 要求;你的职责是判断研究是否真正充分。
|
|
45
|
+
|
|
46
|
+
### Red flags
|
|
47
|
+
|
|
48
|
+
- 记录了 `summary` 却没有产出任何 `notes/*.md` 就退出(guardrail 会阻塞——不要试图绕过)。
|
|
49
|
+
- 把来源原文复制进笔记却不加引用标记或来源指针。
|
|
50
|
+
- 某来源仍"待核实"就推进到 Write 节点——核实属于本节点。
|
|
51
|
+
- 对需要多视角的主题,仅凭单一来源就认为充分。
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
节点模式(来自 protocol):
|
|
55
|
+
|
|
56
|
+
- **substance** 节点(workflow-kernel 默认):必须有富 Guidance。缺失时该节点渲染为 `AUTHORING PENDING`,Bundle 不得 ready。
|
|
57
|
+
- **delegates** 节点(comet-five-phase-overlay,委托给已安装的富 Skill):短 Guidance 注即可——富内容由被委托 Skill 承载,不要复制。
|
|
58
|
+
|
|
59
|
+
## 输入
|
|
60
|
+
|
|
61
|
+
读取主会话提供的通用输入,尤其关注:
|
|
62
|
+
|
|
63
|
+
- 用户确认的阶段名和可输入名字项。
|
|
64
|
+
- `reference/workflow-protocol.json` 的阶段目标、`requiredSkillCalls` 与自动推进条件。
|
|
65
|
+
- `reference/resolved-skills.json` 的真实 Skill 摘要。
|
|
66
|
+
- 脚本作者返回的 `NEXT:`、`SKILL:`、guard 和 recovery 契约。
|
|
67
|
+
|
|
68
|
+
使用文件交接:主会话提供路径,不粘贴大段全文。不要继承主会话历史;只使用本 brief、通用输入、
|
|
69
|
+
脚本契约和 reference 证据。
|
|
70
|
+
|
|
71
|
+
## 派发模板
|
|
72
|
+
|
|
73
|
+
主会话派发时使用当前平台的 subagent 机制,形状应包含:
|
|
74
|
+
|
|
75
|
+
```text
|
|
76
|
+
description: "编写 <bundle-name> 的 Skill 核心内容"
|
|
77
|
+
model: <必须显式指定 model>
|
|
78
|
+
prompt:
|
|
79
|
+
你是 Skill 核心作者 subagent。
|
|
80
|
+
先读取本 brief、通用输入路径、脚本契约路径、reference 证据路径和报告文件路径。
|
|
81
|
+
开始前先提出问题:如果阶段名、必须调用的 Skill、自动推进或用户停顿点不清楚,先返回 NEEDS_CONTEXT。
|
|
82
|
+
不要猜测或自行补全缺失流程。
|
|
83
|
+
只写 internal Node Skill 草稿,不写 entry Skill,不写 Bundle state,不执行候选脚本。
|
|
84
|
+
把完整 Skill 草稿写入报告文件路径,并只返回 15 行以内状态摘要。
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
## 输出要求
|
|
88
|
+
|
|
89
|
+
返回 internal Node Skill 草稿,必须体现:
|
|
90
|
+
|
|
91
|
+
- internal Node Skill 负责单 Node 目标、必须调用的 Skill、Node 完成证据和脚本守卫。
|
|
92
|
+
- 若 protocol 声明 `requiredSkillCalls`,对应阶段必须明确写出目标槽位、必调 Skill、适用范围和证据要求;subagent 场景必须写明子代理任务提示中也要加载该 Skill。
|
|
93
|
+
- 阶段未达成目标时继续工作,不因为流程清单走完就退出。
|
|
94
|
+
- 自动推进必须来自脚本输出的 `NEXT:` 和 `SKILL:`,而不是让 Agent 猜下一步。
|
|
95
|
+
- 嵌套 Skill 调用只写 Skill 名字,不写 provider 前缀。
|
|
96
|
+
- 对 `/comet` 定制,保留 `open / design / build / verify / archive` 与 `.comet.yaml` 语义。
|
|
97
|
+
- 对任意 Skill 组合,整理为 Comet-like 多 Node workflow。
|
|
98
|
+
|
|
99
|
+
禁止:
|
|
100
|
+
|
|
101
|
+
- 复制粘贴原 Skill 全文。
|
|
102
|
+
- 写 `Superpowers writing-plans`、`OpenSpec openspec-propose` 这类 provider 前缀。
|
|
103
|
+
- 在中文 Skill 中混入英文流程句。
|
|
104
|
+
- 把审计报告、source hash、内部 metadata 泄漏到用户可见 `SKILL.md`。
|
|
105
|
+
|
|
106
|
+
## 自检
|
|
107
|
+
|
|
108
|
+
返回前逐项检查:
|
|
109
|
+
|
|
110
|
+
- 每个阶段都说明必须调用的 Skill、完成证据、脚本守卫和恢复入口。
|
|
111
|
+
- 每个 `requiredSkillCalls` 都能在对应Node Skill 中找到明确加载指令和证据要求。
|
|
112
|
+
- 自动推进引用脚本输出的 `NEXT:` 和 `SKILL:`。
|
|
113
|
+
- Skill 调用只写 Skill 名字,不写 provider 前缀。
|
|
114
|
+
- 中文用户可见文案没有混入英文流程句。
|
|
115
|
+
- 没有复制粘贴原 Skill 全文。
|
|
116
|
+
|
|
117
|
+
## 必须返回的 claim
|
|
118
|
+
|
|
119
|
+
- 每个 internal Node Skill 的 `node-skill:<skill-name>`
|
|
120
|
+
|
|
121
|
+
缺少任一 claim 时,Skill 审查必须阻塞。
|
|
122
|
+
|
|
123
|
+
## 状态返回
|
|
124
|
+
|
|
125
|
+
状态必须是 `DONE`、`DONE_WITH_CONCERNS`、`NEEDS_CONTEXT`、`BLOCKED`。
|
|
126
|
+
|
|
127
|
+
完整报告写入报告文件路径。返回给主会话的摘要只返回 15 行以内状态摘要,包含状态、报告文件路径、
|
|
128
|
+
claim 列表、未解决疑虑和建议返工点。若状态是 `BLOCKED` 或 `NEEDS_CONTEXT`,必须直接说明缺什么上下文、
|
|
129
|
+
尝试过什么、需要主会话如何处理。
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
# Skill 审查 subagent
|
|
2
|
+
|
|
3
|
+
本文件是 portable lane brief,不是 platform-native custom agent;如需 Claude Code custom agent,必须另行生成平台 agent 资源和 frontmatter。
|
|
4
|
+
|
|
5
|
+
## 职责
|
|
6
|
+
|
|
7
|
+
审查其他 subagent 的 artifacts 和 claims,判断候选 Skill 是否已经像 Comet 一样可用。
|
|
8
|
+
审查必须给出明确结论:`Review passed` 或 blocking findings。
|
|
9
|
+
|
|
10
|
+
必须覆盖:
|
|
11
|
+
|
|
12
|
+
- `reference/skill-review.md`
|
|
13
|
+
- `reference/authoring-lanes.json`
|
|
14
|
+
|
|
15
|
+
## 输入
|
|
16
|
+
|
|
17
|
+
读取主会话提供的通用输入,以及其他五个作者角色返回的全部 artifacts、claims 和 findings。
|
|
18
|
+
|
|
19
|
+
使用文件交接:主会话提供路径,不粘贴大段全文。读取总览、通用输入、五个作者报告文件、artifact 路径和
|
|
20
|
+
claims。不得读取主会话历史来替代 artifact 证据。
|
|
21
|
+
|
|
22
|
+
## 派发模板
|
|
23
|
+
|
|
24
|
+
主会话派发时使用当前平台的 subagent 机制,形状应包含:
|
|
25
|
+
|
|
26
|
+
```text
|
|
27
|
+
description: "审查 <bundle-name> 的 Comet-like Skill 产物"
|
|
28
|
+
model: <必须显式指定 model>
|
|
29
|
+
prompt:
|
|
30
|
+
你是 Skill 审查 subagent。
|
|
31
|
+
先读取本 brief、通用输入路径、五个作者报告路径、artifact 路径、claim 清单和报告文件路径。
|
|
32
|
+
审查不信任作者报告;作者报告只是 claim,必须用 artifact 和 claim 交叉验证。
|
|
33
|
+
不要告诉审查者不要标记某问题,也不要预设某问题只能是 Minor。
|
|
34
|
+
审查是只读任务,不得修改工作树、索引、HEAD 或分支状态。
|
|
35
|
+
把完整审查写入报告文件路径,并返回两个 verdict。
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## 审查方法
|
|
39
|
+
|
|
40
|
+
审查不信任作者报告。先看 artifact 和 claim,再判断作者声称是否成立。不得用“作者说这是刻意设计”
|
|
41
|
+
来降低问题严重性。
|
|
42
|
+
|
|
43
|
+
审查必须给两个 verdict:
|
|
44
|
+
|
|
45
|
+
- Skill 契约符合度:是否满足用户确认的目标、workflow protocol、`requiredSkillCalls`、claim、阶段推进、脚本守卫、停顿点和恢复要求。
|
|
46
|
+
- 可用性质量:是否像 Comet 一样好用,是否清晰、可恢复、可审计、不会过度暴露内部 metadata。
|
|
47
|
+
|
|
48
|
+
证据必须引用 artifact 路径和 claim。不能只写“看起来可以”。
|
|
49
|
+
|
|
50
|
+
## 阻塞条件
|
|
51
|
+
|
|
52
|
+
出现以下任一情况必须给出 blocking findings:
|
|
53
|
+
|
|
54
|
+
- 缺少 `reference/skill-review.md`。
|
|
55
|
+
- 缺少 `reference/authoring-lanes.json`。
|
|
56
|
+
- 缺少 workflow entry 作者、脚本作者、reference 作者、Skill 核心作者或停顿点作者的关键 claim。
|
|
57
|
+
- entry Skill 把阶段路线写成多个 `**立即执行:**` Node Skill,而不是通过状态脚本只路由当前阶段。
|
|
58
|
+
- 缺少 `workflow-state.mjs`、`workflow-guard.mjs` 或 `workflow-handoff.mjs` 契约。
|
|
59
|
+
- 包内缺少六个生成脚本中的任何一个(`workflow-state`、`workflow-guard`、`workflow-handoff`、`comet-plan`、`comet-check`、`comet-hook-guard`)。
|
|
60
|
+
- workflow entry 缺失,或 Skill 核心没有 internal Node Skill。
|
|
61
|
+
- 阶段推进没有通过脚本输出 `NEXT:` 和 `SKILL:` 表达。
|
|
62
|
+
- workflow protocol 声明的 `requiredSkillCalls` 没有在对应Node Skill 中明确要求加载,或 subagent 槽位没有要求子代理任务提示加载该 Skill。
|
|
63
|
+
- 用户停顿点缺失,或停顿点可被默认值绕过。
|
|
64
|
+
- 中文 Skill 混入英文流程句。
|
|
65
|
+
- 嵌套 Skill 调用使用 provider 前缀。
|
|
66
|
+
- 用户可见 `SKILL.md` 泄漏生成审计章节、source hash 或内部 metadata。
|
|
67
|
+
- `/comet` 定制替换或删除了 `open / design / build / verify / archive`、`.comet.yaml`、decision point、verify-result-transition 或 archive-delta-sync。
|
|
68
|
+
- 任意 Skill 组合缺少自动推进、脚本守卫、用户停顿点、恢复或当前 draft hash 的 eval evidence。
|
|
69
|
+
|
|
70
|
+
## 严重级别
|
|
71
|
+
|
|
72
|
+
- Critical:会让生成 Skill 不可用、不可恢复、不可审计,或破坏 `/comet` 受保护语义。
|
|
73
|
+
- Important:会让阶段流程、脚本守卫、停顿点、Skill 调用或证据链不可信;必须修复后才能 ready。
|
|
74
|
+
- Minor:不阻塞 ready 的清晰度、命名或维护性改进。
|
|
75
|
+
|
|
76
|
+
## 输出要求
|
|
77
|
+
|
|
78
|
+
返回:
|
|
79
|
+
|
|
80
|
+
- `reference/skill-review.md`
|
|
81
|
+
- `reference/authoring-lanes.json`
|
|
82
|
+
- `review:skill-review`
|
|
83
|
+
- 最终 `Review passed` 或 blocking findings。
|
|
84
|
+
|
|
85
|
+
输出必须包含:
|
|
86
|
+
|
|
87
|
+
- 两个 verdict:Skill 契约符合度、可用性质量。
|
|
88
|
+
- Strengths:具体说明做得好的 artifact。
|
|
89
|
+
- Issues:按 Critical、Important、Minor 分组。
|
|
90
|
+
- 每个 finding 的 artifact 路径、claim、问题、影响和建议修复方式。
|
|
91
|
+
- `Review passed` 或 blocking findings。
|
|
92
|
+
|
|
93
|
+
如果存在 Critical 或 Important,不得给出 `Review passed`。如果作者状态是 `BLOCKED` 或 `NEEDS_CONTEXT`,
|
|
94
|
+
必须返回 blocking findings,主会话必须补上下文、拆小任务、换更强模型或询问用户;不得继续组装。
|
|
95
|
+
|
|
96
|
+
## 多视角审查(按 depth)
|
|
97
|
+
|
|
98
|
+
skill-review lane 是 DAG 的 barrier,在所有创作 lane 之后运行。其裁决用 `comet creator authoring-record <name> --lane skill-review --file <review.json>` 记录,成为真实的 `skill-review.md` / `authoring-lanes.json` 证据——绝不是硬编码的批准。
|
|
99
|
+
|
|
100
|
+
- `depth: full`:派发 N=3 个独立审查者,每人只持一个 lens(`contract-fit`、`usability`、`evidence-trace`、`self-consistency`),互不见彼此结论。跨审查者的 findings 去重后,仅多数确认才成立。重复直到连续 `dryThreshold` 轮无新的 Critical/Important(上限 `maxRounds`)。`self-consistency` 必须交叉校验:引用的命令可解析、声明产物 == 实际产物、无幽灵命令引用(未注册的命令名)残留。
|
|
101
|
+
- `depth: quick`:单审查者、单轮。
|
|
102
|
+
- 仅当无 Critical/Important 残留时 `passed` 为 `true`。Minor 记录但不阻塞。
|
|
103
|
+
|
|
104
|
+
记录的 review 对象必须符合此形状(由 `authoring-record` 校验):
|
|
105
|
+
|
|
106
|
+
```json
|
|
107
|
+
{
|
|
108
|
+
"lane": "skill-review",
|
|
109
|
+
"status": "DONE",
|
|
110
|
+
"review": {
|
|
111
|
+
"passed": true,
|
|
112
|
+
"evidenceSource": "llm-multivote",
|
|
113
|
+
"voters": 3,
|
|
114
|
+
"lenses": ["contract-fit", "usability", "evidence-trace", "self-consistency"],
|
|
115
|
+
"rounds": 2,
|
|
116
|
+
"findings": [
|
|
117
|
+
{ "severity": "minor", "path": "SKILL.md", "problem": "措辞小问题。", "fix": "改写。" }
|
|
118
|
+
],
|
|
119
|
+
"reviewedAt": "2026-06-28T00:00:00.000Z"
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
`passed: false` 的审查是 readiness blocker(不得 publish);缺失审查是 warning(包仍带诚实的 `deterministic-check-only` 占位,绝不伪造批准)。
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
# Workflow Entry 作者 subagent
|
|
2
|
+
|
|
3
|
+
本文件是 portable lane brief,不是 platform-native custom agent;如需 Claude Code custom agent,必须另行生成平台 agent 资源和 frontmatter。
|
|
4
|
+
|
|
5
|
+
## 职责
|
|
6
|
+
|
|
7
|
+
编写生成 Skill 的 entry `SKILL.md`。entry 只负责入口、恢复、主路由说明和用户停顿点;不得把阶段路线写成会立即触发多个 Skill 的执行清单。
|
|
8
|
+
|
|
9
|
+
必须覆盖:
|
|
10
|
+
|
|
11
|
+
- entry Skill
|
|
12
|
+
- workflow-state / workflow-guard / workflow-handoff 的入口说明
|
|
13
|
+
- `workflow-entry` claim
|
|
14
|
+
|
|
15
|
+
## 创作区(你写什么)
|
|
16
|
+
|
|
17
|
+
生成器把 entry SKILL.md 组装成确定性 **Auto 区**(frontmatter、Workflow Nodes 路由表、Skill Bindings、Guardrails And Evidence、Runtime And Recovery)+ 由你编写的 **Authored 区**(`## Decision Core`)。**你只写 Decision Core 正文,不写整个文件**。主会话通过 `comet creator authoring-record <name> --lane workflow-entry --file <out.json>` 记录;artifact `SKILL.md` 的 `content` 即 Decision Core 正文。
|
|
18
|
+
|
|
19
|
+
质量标尺:`comet/SKILL.md` 的 Decision Core(完整 entry Decision Core 范例见 `reference/authored-zone-example.md`)。写 agent 可读的决策规则——机械路由已由 Auto 区的 `workflow-state.mjs next` 处理,所以聚焦判断:
|
|
20
|
+
|
|
21
|
+
- **语义化当前节点检测** — 如何判断用户在哪个 Node,而非只跑脚本。建模 comet 的 Step 0(从用户消息检测意图,检查 Node 顺序,处理"属于前序/后序 Node"的冲突)+ Step 1(读状态,文件优先于过期状态)。
|
|
22
|
+
- **Resume 与 drift 规则** — 上下文恢复时怎么办(从头重新检测,永远不信任对话历史),状态说 DONE 但 artifact 缺失时怎么办,用户在 Node 中途换话题时怎么办。
|
|
23
|
+
- **决策点** — 必须暂停等用户确认的情况的显式表格(首次调用确认范围、Node 歧义、用户确认、guard 失败)。
|
|
24
|
+
- **Red flags** — "agent 想法 → 实际风险"模式,抓自欺(如"用户提到了主题所以研究已确认" → 提到 ≠ 确认)。
|
|
25
|
+
|
|
26
|
+
没有这四个子节的 Decision Core 是 stub,不是 Decision Core。entry 是每次调用最先读取的文件——它决定了 Skill 感觉"智能"还是"机械"。
|
|
27
|
+
|
|
28
|
+
Auto 区的 Node 路由表仅供参考——不要复制成执行清单,不要发出多个立即 Skill 加载。
|
|
29
|
+
|
|
30
|
+
## 输入
|
|
31
|
+
|
|
32
|
+
读取主会话提供的通用输入,尤其关注:
|
|
33
|
+
|
|
34
|
+
- 用户确认的目标、语言和阶段名。
|
|
35
|
+
- `reference/workflow-protocol.json` 的阶段顺序、插槽、`requiredSkillCalls` 和恢复路径。
|
|
36
|
+
- 脚本作者返回的 `status`、`init`、`next`、`NEXT:`、`SKILL:` 和 guard 契约。
|
|
37
|
+
- `/comet` 定制场景下必须保留的 open / design / build / verify / archive 边界。
|
|
38
|
+
|
|
39
|
+
使用文件交接:主会话提供路径,不粘贴大段全文。不要继承主会话历史;只使用本 brief、通用输入、脚本契约和 reference 证据。
|
|
40
|
+
|
|
41
|
+
## 派发模板
|
|
42
|
+
|
|
43
|
+
主会话派发时使用当前平台的 subagent 机制,形状应包含:
|
|
44
|
+
|
|
45
|
+
```text
|
|
46
|
+
description: "编写 <bundle-name> 的 workflow entry"
|
|
47
|
+
model: <必须显式指定 model>
|
|
48
|
+
prompt:
|
|
49
|
+
你是 workflow entry 作者 subagent。
|
|
50
|
+
先读取本 brief、通用输入路径、脚本契约路径、workflow protocol 路径和报告文件路径。
|
|
51
|
+
开始前先提出问题:如果启动路由、恢复路径、当前阶段判定或用户停顿点不清楚,先返回 NEEDS_CONTEXT。
|
|
52
|
+
不要猜测或自行补全缺失流程。
|
|
53
|
+
只写 entry SKILL.md 草稿,不写 internal Node Skill,不写 Bundle state,不执行候选脚本。
|
|
54
|
+
Decision Core 必须包含四个子节:### 自动节点检测(Step 0 意图检测 + Step 1 状态读取 + Resume 规则)、### 决策点(显式暂停表格)、### Red Flags(agent 想法 → 实际风险表格)。没有这些子节的 Decision Core 是 stub。
|
|
55
|
+
把完整 entry 草稿写入报告文件路径,并只返回 15 行以内状态摘要。
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## 输出要求
|
|
59
|
+
|
|
60
|
+
entry 草稿必须体现:
|
|
61
|
+
|
|
62
|
+
- 进入 Skill 后先读取 workflow 状态,不直接加载Node Skill。
|
|
63
|
+
- 未启动时先初始化状态,再查询 `next`。
|
|
64
|
+
- 只有脚本输出 `NEXT: auto` 和 `SKILL: <node-skill>` 后,才加载这一个 Node Skill。
|
|
65
|
+
- 阶段路线只能作为参考表,不能使用“立即执行”或“必须加载”这类执行指令。
|
|
66
|
+
- 对 `/comet` 定制,entry 必须列出必调槽位 Skill,但只能作为阶段内义务说明,不能变成 entry 立即执行清单。
|
|
67
|
+
- 用户停顿点、恢复路径和参考文件清楚可见。
|
|
68
|
+
- 对 `/comet` 定制,说明保留 open / design / build / verify / archive 主路径和阶段守卫。
|
|
69
|
+
|
|
70
|
+
禁止:
|
|
71
|
+
|
|
72
|
+
- 在 entry `SKILL.md` 中写多个 `**立即执行:**` Node Skill。
|
|
73
|
+
- 复制粘贴原 Skill 全文。
|
|
74
|
+
- 写 provider 前缀。
|
|
75
|
+
- 把审计报告、source hash、内部 metadata 泄漏到用户可见 `SKILL.md`。
|
|
76
|
+
|
|
77
|
+
## 自检
|
|
78
|
+
|
|
79
|
+
返回前逐项检查:
|
|
80
|
+
|
|
81
|
+
- Decision Core 包含全部四个必须子节:自动节点检测、决策点、Red Flags、Error Handling 或 Resume Rules。
|
|
82
|
+
- entry 只有一个主路由启动协议。
|
|
83
|
+
- entry 没有立即加载Node Skill 的清单。
|
|
84
|
+
- 阶段路线是参考,不是执行步骤。
|
|
85
|
+
- 自动推进引用脚本输出的 `NEXT:` 和 `SKILL:`。
|
|
86
|
+
- 中文用户可见文案没有混入英文流程句。
|
|
87
|
+
|
|
88
|
+
## 必须返回的 claim
|
|
89
|
+
|
|
90
|
+
- `workflow-entry`
|
|
91
|
+
|
|
92
|
+
缺少该 claim 时,Skill 审查必须阻塞。
|
|
93
|
+
|
|
94
|
+
## 状态返回
|
|
95
|
+
|
|
96
|
+
状态必须是 `DONE`、`DONE_WITH_CONCERNS`、`NEEDS_CONTEXT`、`BLOCKED`。
|
|
97
|
+
|
|
98
|
+
完整报告写入报告文件路径。返回给主会话的摘要只返回 15 行以内状态摘要,包含状态、报告文件路径、claim 列表、未解决疑虑和建议返工点。若状态是 `BLOCKED` 或 `NEEDS_CONTEXT`,必须直接说明缺什么上下文、尝试过什么、需要主会话如何处理。
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: comet-archive
|
|
3
|
-
description: "
|
|
3
|
+
description: "Use when Comet change 验证已通过,需要用户确认归档、合并 delta spec,或恢复 archive 阶段。"
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Comet 阶段 5:归档(Archive)
|
|
@@ -15,27 +15,21 @@ description: "Comet 阶段 5:归档。用 /comet-archive 调用。按 OpenSpec
|
|
|
15
15
|
|
|
16
16
|
### 0. 输出语言约束
|
|
17
17
|
|
|
18
|
-
|
|
18
|
+
归档摘要和生命周期闭环说明必须使用 `"$COMET_BASH" "$COMET_STATE" get <name> language` 读取到的 Comet 配置产物语言。
|
|
19
19
|
|
|
20
20
|
### 0b. 入口状态验证(Entry Check)
|
|
21
21
|
|
|
22
|
-
|
|
22
|
+
按 `comet/reference/scripts.md` 定位脚本(定位 `comet-env.mjs`),然后执行入口验证;从任意入口恢复时先按 `comet/reference/context-recovery.md` 运行恢复检查:
|
|
23
23
|
|
|
24
24
|
```bash
|
|
25
|
-
|
|
26
|
-
if [ -z "$COMET_ENV" ]; then
|
|
27
|
-
echo "ERROR: comet-env.sh not found. Ensure the comet skill is installed." >&2
|
|
28
|
-
return 1
|
|
29
|
-
fi
|
|
30
|
-
. "$COMET_ENV"
|
|
31
|
-
"$COMET_BASH" "$COMET_STATE" check <name> archive
|
|
25
|
+
node "$COMET_STATE" check <name> archive
|
|
32
26
|
```
|
|
33
27
|
|
|
34
28
|
验证通过后继续 Step 1。验证失败时脚本会输出具体失败原因。
|
|
35
29
|
|
|
36
30
|
### 1. 归档前最终确认(阻塞点)
|
|
37
31
|
|
|
38
|
-
入口验证通过后,**必须按 `comet/reference/decision-point.md` 的协议暂停并等待用户确认是否立即归档**。不得在用户确认前运行 `
|
|
32
|
+
入口验证通过后,**必须按 `comet/reference/decision-point.md` 的协议暂停并等待用户确认是否立即归档**。不得在用户确认前运行 `node "$COMET_ARCHIVE" "<change-name>"`。
|
|
39
33
|
|
|
40
34
|
确认前必须向用户展示简短摘要:
|
|
41
35
|
- change 名称
|
|
@@ -45,7 +39,7 @@ fi
|
|
|
45
39
|
|
|
46
40
|
用户确认问题必须以单选题形式呈现,包含以下选项:
|
|
47
41
|
- 「确认归档」— 立即执行归档脚本,完成 spec 合并和 change 移动
|
|
48
|
-
- 「需要调整或重新验证」— 不执行归档;运行 `
|
|
42
|
+
- 「需要调整或重新验证」— 不执行归档;运行 `node "$COMET_STATE" transition <change-name> archive-reopen` 回到 `phase: verify`,再调用 `/comet-verify`。若验证阶段确认需要修复,再按 `/comet-verify` 的验证失败决策回到 `/comet-build`
|
|
49
43
|
- 「暂不归档」— 不执行归档,保留当前 `phase: archive` 状态,等待用户稍后再次调用 `/comet-archive`
|
|
50
44
|
|
|
51
45
|
只有用户选择「确认归档」后,才允许继续 Step 2。用户选择「需要调整或重新验证」后,必须先执行 `archive-reopen` 状态回退,不得手动编辑 `.comet.yaml`。
|
|
@@ -55,7 +49,7 @@ fi
|
|
|
55
49
|
运行归档脚本,自动完成以下全部步骤:
|
|
56
50
|
|
|
57
51
|
```bash
|
|
58
|
-
|
|
52
|
+
node "$COMET_ARCHIVE" "<change-name>"
|
|
59
53
|
```
|
|
60
54
|
|
|
61
55
|
脚本自动执行:
|
|
@@ -64,7 +58,7 @@ fi
|
|
|
64
58
|
3. Plan 前置元数据标注(archived-with)
|
|
65
59
|
4. 调用 OpenSpec archive 按 delta 语义合并主 spec 并移动 change 到归档目录
|
|
66
60
|
5. 校验主 spec 未残留 delta-only section 标题
|
|
67
|
-
6.
|
|
61
|
+
6. 在 OpenSpec 实际归档目录中更新 archived 状态,并协调 pending recovery 元数据
|
|
68
62
|
|
|
69
63
|
如脚本返回非零退出码,报告错误并停止。
|
|
70
64
|
如脚本返回零退出码,归档完成。
|
|
@@ -81,6 +75,22 @@ Spec 生命周期在此完成:
|
|
|
81
75
|
brainstorming → delta spec → 实施 → 验证 → 主 spec 合并 → design doc 标注 → 归档
|
|
82
76
|
```
|
|
83
77
|
|
|
78
|
+
### 4. 提交归档改动
|
|
79
|
+
|
|
80
|
+
归档脚本只移动文件和合并 spec,不会自动提交。归档完成后工作区会有以下未提交改动:
|
|
81
|
+
- change 目录从 `openspec/changes/<name>/` 移动到 `openspec/changes/archive/YYYY-MM-DD-<name>/`
|
|
82
|
+
- 主 spec 按 delta 语义合并的内容
|
|
83
|
+
- design doc / plan 的归档元数据标注
|
|
84
|
+
|
|
85
|
+
**必须提示用户提交这些归档改动**,否则归档成果会停留在工作区。展示待提交文件后建议执行:
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
git add -A
|
|
89
|
+
git commit -m "chore: archive <change-name>"
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
如分支处理(阶段 4)选择尚未合并到主分支,提交后按所选方式(合并 / PR / 保持分支)一并收尾。
|
|
93
|
+
|
|
84
94
|
## 退出条件
|
|
85
95
|
|
|
86
96
|
- 归档脚本执行成功(退出码 0)
|
|
@@ -89,7 +99,7 @@ brainstorming → delta spec → 实施 → 验证 → 主 spec 合并 → desig
|
|
|
89
99
|
|
|
90
100
|
归档脚本会把 `openspec/changes/<name>/` 移动到 `openspec/changes/archive/YYYY-MM-DD-<name>/`。
|
|
91
101
|
|
|
92
|
-
> **WARNING**: 归档成功后**不要再对原 change 名运行** `
|
|
102
|
+
> **WARNING**: 归档成功后**不要再对原 change 名运行** `node "$COMET_GUARD" <change-name> archive`,因为原活跃目录已经不存在。误调会导致 guard 报错"change directory not found"。归档完整性以脚本退出码和归档目录状态为准。
|
|
93
103
|
|
|
94
104
|
## 完成
|
|
95
105
|
|