@jennie-shawn/starwork 0.1.0-alpha.2 → 0.1.0-alpha.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +111 -99
- package/adapters/README.md +34 -0
- package/adapters/claude-code/profile.json +55 -0
- package/adapters/claude-code/rules.md +13 -0
- package/adapters/claude-code/safety.md +6 -0
- package/adapters/codex/profile.json +55 -0
- package/adapters/codex/rules.md +12 -0
- package/adapters/codex/safety.md +5 -0
- package/adapters/contract.md +64 -0
- package/adapters/cursor/profile.json +60 -0
- package/adapters/cursor/rules.md +7 -0
- package/adapters/cursor/safety.md +6 -0
- package/adapters/trae/profile.json +61 -0
- package/adapters/trae/rules.md +7 -0
- package/adapters/trae/safety.md +7 -0
- package/cli/README.md +50 -9
- package/cli/audit-spec.md +403 -0
- package/cli/doctor-spec.md +109 -17
- package/cli/init-spec.md +81 -53
- package/cli/repair-spec.md +361 -0
- package/cli/spawn-blueprint-spec.md +18 -18
- package/cli/spawn-spec.md +103 -108
- package/cli/src/cli.js +9403 -1059
- package/cli/test/init.test.js +2566 -51
- package/cli/upgrade-spec.md +488 -0
- package/core/README.md +14 -3
- package/core/agent-lanes-session-naming-spec.md +364 -0
- package/core/agent-lanes-spec.md +507 -0
- package/core/baseline/file-boundaries.md +11 -3
- package/core/baseline/health-check.md +2 -2
- package/core/baseline/roles.md +0 -1
- package/core/baseline/spec.md +3 -2
- package/core/capabilities/README.md +5 -2
- package/core/capabilities/agent-lanes/capability.md +40 -0
- package/core/capabilities/decisions/capability.md +2 -2
- package/core/capabilities/knowledge/capability.md +72 -0
- package/core/capabilities/knowledge/skills/starworkKnowledgeProject/SKILL.md +57 -0
- package/core/capabilities/knowledge/skills/starworkKnowledgeProject/agents/openai.yaml +6 -0
- package/core/capabilities/knowledge/templates/en/README.md +20 -0
- package/core/capabilities/knowledge/templates/en/index.md +19 -0
- package/core/capabilities/knowledge/templates/en/log.md +16 -0
- package/core/capabilities/knowledge/templates/en/schema.md +60 -0
- package/core/capabilities/knowledge/templates/zh/README.md +20 -0
- package/core/capabilities/knowledge/templates/zh/index.md +19 -0
- package/core/capabilities/knowledge/templates/zh/log.md +16 -0
- package/core/capabilities/knowledge/templates/zh/schema.md +60 -0
- package/core/capabilities/main-repo-sync/capability.md +57 -34
- package/core/capabilities/skill-mount/capability.md +19 -5
- package/core/capabilities/starter-outputs/capability.md +9 -11
- package/core/capabilities/starter-outputs/templates/outputs/final/README.md +1 -1
- package/core/core-v0.1-protocol.md +23 -21
- package/core/kits/README.md +9 -1
- package/core/kits/hub/.incoming/README.md +4 -2
- package/core/kits/hub/.incoming/reports/.gitkeep +1 -0
- package/core/kits/hub/.incoming/skills/.gitkeep +1 -0
- package/core/kits/hub/.internal/twin-bot-merge-policy.md +5 -0
- package/core/kits/hub/.internal/twin-bot-writeback-protocol.md +5 -0
- package/core/kits/hub/.starwork/handoff/archived/.gitkeep +1 -0
- package/core/kits/hub/.starwork/handoff/inbox/.gitkeep +1 -0
- package/core/kits/hub/.starwork/handoff/outbox/.gitkeep +1 -0
- package/core/kits/hub/.starwork/handoff/sent/.gitkeep +1 -0
- package/core/kits/hub/.starwork/handoff/state.json +5 -0
- package/core/kits/hub/AGENTS.md +18 -12
- package/core/kits/hub/README.md +17 -9
- package/core/kits/hub/identity/README.md +2 -2
- package/core/kits/hub/knowledge/README.md +5 -0
- package/core/kits/hub/lessons/README.md +2 -2
- package/core/kits/hub/projects/README.md +5 -0
- package/core/kits/hub/projects/coordination/README.md +5 -0
- package/core/kits/hub/projects/coordination/messages/acknowledged/.gitkeep +1 -0
- package/core/kits/hub/projects/coordination/messages/closed/.gitkeep +1 -0
- package/core/kits/hub/projects/coordination/messages/delivered/.gitkeep +1 -0
- package/core/kits/hub/projects/coordination/messages/queued/.gitkeep +1 -0
- package/core/kits/hub/projects/coordination/reports/.gitkeep +1 -0
- package/core/kits/hub/skills/README.md +4 -2
- package/core/kits/hub/skills/registry.json +6 -0
- package/core/kits/hub/workspace/README.md +5 -0
- package/core/kits/kit-structure-reference.md +104 -191
- package/core/kits/project/.agents/skills/README.md +5 -0
- package/core/kits/project/.claude/skills/README.md +5 -0
- package/core/kits/project/.obsidian/README.md +5 -0
- package/core/kits/project/.starwork/handoff/archived/.gitkeep +1 -0
- package/core/kits/project/.starwork/handoff/inbox/.gitkeep +1 -0
- package/core/kits/project/.starwork/handoff/outbox/.gitkeep +1 -0
- package/core/kits/project/.starwork/handoff/sent/.gitkeep +1 -0
- package/core/kits/project/.starwork/handoff/state.json +5 -0
- package/core/kits/project/AGENTS.md +38 -0
- package/core/kits/project/README.md +44 -0
- package/core/kits/project/_/347/263/273/347/273/237//344/270/212/344/270/213/346/226/207//345/275/223/345/211/215/351/241/271/347/233/256.md +25 -0
- package/core/kits/project/_/347/263/273/347/273/237//344/273/273/345/212/241//345/275/223/345/211/215/345/267/245/344/275/234.md +17 -0
- package/core/kits/project/_/347/263/273/347/273/237//346/225/231/350/256/255/README.md +17 -0
- package/core/kits/project/_/347/263/273/347/273/237//350/272/253/344/273/275/README.md +24 -0
- package/core/kits/two-kit-architecture-spec.md +695 -0
- package/core/legacy/README.md +16 -0
- package/core/legacy/kits/satellite-starter/.starwork/handoff/archived/.gitkeep +1 -0
- package/core/legacy/kits/satellite-starter/.starwork/handoff/inbox/.gitkeep +1 -0
- package/core/legacy/kits/satellite-starter/.starwork/handoff/outbox/.gitkeep +1 -0
- package/core/legacy/kits/satellite-starter/.starwork/handoff/sent/.gitkeep +1 -0
- package/core/legacy/kits/satellite-starter/.starwork/handoff/state.json +5 -0
- package/core/{kits → legacy/kits}/satellite-starter/AGENTS.md +7 -1
- package/core/{kits → legacy/kits}/satellite-starter/README.md +4 -4
- package/core/{kits → legacy/kits}/satellite-starter/_/347/263/273/347/273/237//344/270/273/345/272/223/345/220/214/346/255/245/README.md +3 -3
- package/core/legacy/kits/satellite-starter//350/276/223/345/207/272//347/241/256/350/256/244/346/210/220/346/236/234/README.md +5 -0
- package/core/{presets → legacy/presets}/satellite-starter.yaml +1 -1
- package/core/presets/README.md +17 -7
- package/core/presets/hub.yaml +23 -4
- package/core/presets/project.yaml +11 -0
- package/core/profiles/en/labels.json +2 -4
- package/core/profiles/en/paths.json +3 -4
- package/core/profiles/en/profile.md +7 -4
- package/core/profiles/en/templates/AGENTS.md +13 -9
- package/core/profiles/en/{reference-kits/local-starter/_system/context/project-status.md → templates/_system/context/current-project.md} +1 -1
- package/core/profiles/zh/labels.json +2 -4
- package/core/profiles/zh/paths.json +3 -5
- package/core/profiles/zh/profile.md +7 -4
- package/core/profiles/zh/templates/AGENTS.md +13 -9
- package/core/{kits/local-matter/_/347/263/273/347/273/237//344/270/212/344/270/213/346/226/207//351/241/271/347/233/256/347/212/266/346/200/201.md → profiles/zh/templates/_/347/263/273/347/273/237//344/270/212/344/270/213/346/226/207//345/275/223/345/211/215/351/241/271/347/233/256.md} +1 -1
- package/core/project-rules-optimization-spec.md +510 -0
- package/core/skill-management-spec.md +591 -0
- package/core/starwork-runtime-layer-spec.md +344 -0
- package/docs/README.md +18 -4
- package/docs/agent-install-guide.md +132 -0
- package/docs/ai-consultant-brief.md +648 -0
- package/docs/alpha-test-guide.md +274 -17
- package/docs/cli-capabilities.html +206 -115
- package/docs/cli-skill-registry.html +801 -0
- package/docs/doctor-capabilities.html +631 -0
- package/docs/hub-management.html +60 -59
- package/docs/index.html +7 -5
- package/docs/issue-feedback-tracking-guide.md +447 -0
- package/docs/m2.10-core-kit-pack-boundary-cleanup-spec.md +567 -0
- package/docs/m2.6-alpha-core-flows-optimization-spec.md +441 -0
- package/docs/m2.6-project-init-feedback/README.md +27 -0
- package/docs/m2.6-project-init-feedback/m2.6-project-init-feedback-01-identity-spec.md +194 -0
- package/docs/m2.6-project-init-feedback/m2.6-project-init-feedback-02-hub-sync-boundary-spec.md +198 -0
- package/docs/m2.6-project-init-feedback/m2.6-project-init-feedback-03-current-project-purity-spec.md +238 -0
- package/docs/m2.6-project-init-feedback/m2.6-project-init-feedback-04-system-placeholder-templates-spec.md +213 -0
- package/docs/m2.6-project-init-feedback/m2.6-project-init-feedback-05-agents-guardrails-spec.md +265 -0
- package/docs/m2.7-init-github-issues-optimization-spec.md +350 -0
- package/docs/m2.8-workspace-naming-optimization-spec.md +633 -0
- package/docs/multiagent/01-codex-session-capabilities-and-starwork-implications.md +280 -0
- package/docs/multiagent/02-cursor-session-management-research-instructions.md +204 -0
- package/docs/multiagent/03-trae-session-management-research-instructions.md +205 -0
- package/docs/multiagent/04-claude-code-session-management-research-instructions.md +209 -0
- package/docs/multiagent/05-trae-solo-session-management-research-instructions.md +222 -0
- package/docs/multiagent/claude-code-session-management-research-result.md +201 -0
- package/docs/multiagent/cursor-session-management-research-result.md +101 -0
- package/docs/multiagent/session-control-support-matrix.md +20 -0
- package/docs/multiagent/trae-session-management-research-result.md +353 -0
- package/docs/multiagent/trae-solo-session-management-research-result.md +467 -0
- package/docs/product-direction.md +17 -9
- package/docs/product-shape-business-model.html +1 -1
- package/docs/roadmap.html +34 -20
- package/docs/roadmap.md +185 -20
- package/docs/v0.1-plan.md +32 -12
- package/kit-skills/README.md +11 -0
- package/kit-skills/neat-freak/SKILL.md +32 -0
- package/kit-skills/neat-freak/agents/openai.yaml +2 -0
- package/kit-skills/starworkAudit/SKILL.md +127 -0
- package/kit-skills/starworkAudit/references/issue-taxonomy.md +10 -0
- package/kit-skills/starworkAudit/references/repair-blueprint-guide.md +54 -0
- package/kit-skills/starworkAudit/references/response-guide.md +34 -0
- package/{skills → kit-skills}/starworkSpawn/SKILL.md +36 -14
- package/package.json +4 -3
- package/packs/content-creator/languages/en.json +4 -4
- package/packs/content-creator/languages/zh.json +4 -4
- package/packs/content-creator/pack.json +5 -5
- package/packs/general/languages/en.json +19 -2
- package/packs/general/languages/zh.json +19 -2
- package/packs/general/pack.json +8 -3
- package/packs/hub-management/languages/en.json +2 -2
- package/packs/hub-management/languages/zh.json +11 -10
- package/packs/hub-management/pack.json +2 -2
- package/packs/hub-management/rules/en/overview.md +2 -0
- package/packs/hub-management/rules/en/workflow.md +2 -1
- package/packs/hub-management/rules/zh/overview.md +4 -2
- package/packs/hub-management/rules/zh/workflow.md +3 -2
- package/packs/hub-management/seed/en/projects/coordination/README.md +2 -2
- package/packs/hub-management/seed/zh/projects/coordination/README.md +5 -0
- package/packs/pack-structure-spec.md +4 -4
- package/skills/README.md +28 -3
- package/skills/starwork/SKILL.md +81 -0
- package/skills/starwork/references/install.md +64 -0
- package/skills/starwork/references/routing.md +44 -0
- package/skills/starworkAudit-spec.md +354 -0
- package/skills/starworkDoctor/SKILL.md +435 -0
- package/skills/starworkDoctor/agents/openai.yaml +7 -0
- package/skills/starworkDoctor/references/agent-rules-template.md +64 -0
- package/skills/starworkDoctor/references/hub-upgrade.md +73 -0
- package/skills/starworkDoctor/references/response-guide.md +57 -0
- package/skills/starworkDoctor/references/rules-extraction-guide.md +92 -0
- package/skills/starworkDoctor-spec.md +764 -0
- package/skills/starworkInit/SKILL.md +285 -50
- package/skills/starworkInit-spec.md +106 -75
- package/skills/starworkKnowledge/SKILL.md +195 -0
- package/skills/starworkKnowledge/agents/openai.yaml +3 -0
- package/skills/starworkMultiagent/SKILL.md +302 -0
- package/skills/starworkMultiagent/agents/openai.yaml +7 -0
- package/skills/starworkMultiagent-skill-plan.md +234 -0
- package/skills/starworkMultiagent-spec.md +181 -0
- package/core/capabilities/matter-mode/capability.md +0 -46
- package/core/capabilities/matter-mode/templates/matters/_matter-template/README.md +0 -17
- package/core/capabilities/matter-mode/templates/matters/_matter-template/handoff.md +0 -3
- package/core/capabilities/matter-mode/templates/matters/_matter-template/notes.md +0 -5
- package/core/capabilities/matter-mode/templates/matters/_matter-template/progress.md +0 -5
- package/core/capabilities/matter-mode/templates/matters/registry.md +0 -16
- package/core/kits/hub/_/347/263/273/347/273/237//344/270/212/344/270/213/346/226/207//351/241/271/347/233/256/347/212/266/346/200/201.md +0 -24
- package/core/kits/hub//347/237/245/350/257/206/README.md +0 -5
- package/core/kits/hub//351/241/271/347/233/256/README.md +0 -5
- package/core/kits/hub//351/241/271/347/233/256//350/201/224/347/273/234/README.md +0 -5
- package/core/kits/local-matter/AGENTS.md +0 -23
- package/core/kits/local-matter/README.md +0 -22
- package/core/kits/local-matter/_/347/263/273/347/273/237//344/270/212/344/270/213/346/226/207//345/206/263/347/255/226.md +0 -7
- package/core/kits/local-matter/_/347/263/273/347/273/237//344/273/273/345/212/241//345/275/223/345/211/215/345/267/245/344/275/234.md +0 -17
- package/core/kits/local-matter/_/347/263/273/347/273/237//346/225/231/350/256/255/README.md +0 -5
- package/core/kits/local-matter/_/347/263/273/347/273/237//350/272/253/344/273/275/README.md +0 -5
- package/core/kits/local-matter//344/272/213/351/241/271/_/344/272/213/351/241/271/346/250/241/346/235/277/README.md +0 -17
- package/core/kits/local-matter//344/272/213/351/241/271/_/344/272/213/351/241/271/346/250/241/346/235/277//344/272/244/346/216/245.md +0 -3
- package/core/kits/local-matter//344/272/213/351/241/271/_/344/272/213/351/241/271/346/250/241/346/235/277//347/254/224/350/256/260.md +0 -5
- package/core/kits/local-matter//344/272/213/351/241/271/_/344/272/213/351/241/271/346/250/241/346/235/277//350/277/233/345/272/246.md +0 -5
- package/core/kits/local-matter//344/272/213/351/241/271//346/263/250/345/206/214/350/241/250.md +0 -16
- package/core/kits/local-matter//350/276/223/345/207/272//347/241/256/350/256/244/346/210/220/346/236/234/README.md +0 -5
- package/core/kits/local-starter/AGENTS.md +0 -23
- package/core/kits/local-starter/README.md +0 -23
- package/core/kits/local-starter/_/347/263/273/347/273/237//344/270/212/344/270/213/346/226/207//351/241/271/347/233/256/347/212/266/346/200/201.md +0 -25
- package/core/kits/local-starter/_/347/263/273/347/273/237//344/273/273/345/212/241//345/275/223/345/211/215/345/267/245/344/275/234.md +0 -17
- package/core/kits/local-starter/_/347/263/273/347/273/237//346/225/231/350/256/255/README.md +0 -5
- package/core/kits/local-starter/_/347/263/273/347/273/237//350/272/253/344/273/275/README.md +0 -5
- package/core/kits/local-starter//345/217/202/350/200/203/350/265/204/346/226/231/README.md +0 -5
- package/core/kits/local-starter//350/276/223/345/207/272//347/241/256/350/256/244/346/210/220/346/236/234/README.md +0 -5
- package/core/kits/local-starter//350/276/223/345/207/272//350/215/211/347/250/277/README.md +0 -5
- package/core/kits/satellite-matter/AGENTS.md +0 -27
- package/core/kits/satellite-matter/README.md +0 -40
- package/core/kits/satellite-matter/_/347/263/273/347/273/237//344/270/212/344/270/213/346/226/207//345/206/263/347/255/226.md +0 -7
- package/core/kits/satellite-matter/_/347/263/273/347/273/237//344/270/273/345/272/223/345/220/214/346/255/245/README.md +0 -42
- package/core/kits/satellite-matter/_/347/263/273/347/273/237//344/273/273/345/212/241//345/275/223/345/211/215/345/267/245/344/275/234.md +0 -17
- package/core/kits/satellite-matter/_/347/263/273/347/273/237//350/267/250/351/241/271/347/233/256/README.md +0 -9
- package/core/kits/satellite-matter/_/347/263/273/347/273/237//350/267/250/351/241/271/347/233/256/inbox/README.md +0 -5
- package/core/kits/satellite-matter/_/347/263/273/347/273/237//350/267/250/351/241/271/347/233/256/outbox/README.md +0 -5
- package/core/kits/satellite-matter//344/272/213/351/241/271/_/344/272/213/351/241/271/346/250/241/346/235/277/README.md +0 -17
- package/core/kits/satellite-matter//344/272/213/351/241/271/_/344/272/213/351/241/271/346/250/241/346/235/277//344/272/244/346/216/245.md +0 -3
- package/core/kits/satellite-matter//344/272/213/351/241/271/_/344/272/213/351/241/271/346/250/241/346/235/277//347/254/224/350/256/260.md +0 -5
- package/core/kits/satellite-matter//344/272/213/351/241/271/_/344/272/213/351/241/271/346/250/241/346/235/277//350/277/233/345/272/246.md +0 -5
- package/core/kits/satellite-matter//344/272/213/351/241/271//346/263/250/345/206/214/350/241/250.md +0 -16
- package/core/kits/satellite-matter//345/217/202/350/200/203/350/265/204/346/226/231/README.md +0 -5
- package/core/kits/satellite-matter//350/276/223/345/207/272//347/241/256/350/256/244/346/210/220/346/236/234/README.md +0 -5
- package/core/kits/satellite-matter//350/276/223/345/207/272//350/215/211/347/250/277/README.md +0 -5
- package/core/kits/satellite-starter/.agents/skills/README.md +0 -5
- package/core/kits/satellite-starter/.claude/skills/README.md +0 -5
- package/core/kits/satellite-starter/.core-sync.json +0 -31
- package/core/kits/satellite-starter/.internal/README.md +0 -5
- package/core/kits/satellite-starter/.obsidian/README.md +0 -5
- package/core/kits/satellite-starter/_/347/263/273/347/273/237//344/270/212/344/270/213/346/226/207//345/275/223/345/211/215/351/241/271/347/233/256.md +0 -29
- package/core/kits/satellite-starter/_/347/263/273/347/273/237//344/273/273/345/212/241//345/275/223/345/211/215/345/267/245/344/275/234.md +0 -17
- package/core/kits/satellite-starter/_/347/263/273/347/273/237//346/225/231/350/256/255/README.md +0 -8
- package/core/kits/satellite-starter/_/347/263/273/347/273/237//350/267/250/351/241/271/347/233/256/README.md +0 -9
- package/core/kits/satellite-starter/_/347/263/273/347/273/237//350/267/250/351/241/271/347/233/256/inbox/README.md +0 -5
- package/core/kits/satellite-starter/_/347/263/273/347/273/237//350/267/250/351/241/271/347/233/256/outbox/README.md +0 -5
- package/core/kits/satellite-starter/_/347/263/273/347/273/237//350/272/253/344/273/275/README.md +0 -5
- package/core/kits/satellite-starter//345/217/202/350/200/203/350/265/204/346/226/231/README.md +0 -5
- package/core/kits/satellite-starter//347/237/245/350/257/206/README.md +0 -5
- package/core/kits/satellite-starter//350/276/223/345/207/272//347/241/256/350/256/244/346/210/220/346/236/234/README.md +0 -5
- package/core/kits/satellite-starter//350/276/223/345/207/272//350/215/211/347/250/277/README.md +0 -5
- package/core/presets/local-matter.yaml +0 -14
- package/core/presets/local-starter.yaml +0 -12
- package/core/presets/satellite-matter.yaml +0 -17
- package/core/profiles/en/reference-kits/local-starter/AGENTS.md +0 -23
- package/core/profiles/en/reference-kits/local-starter/README.md +0 -23
- package/core/profiles/en/reference-kits/local-starter/_system/identity/README.md +0 -5
- package/core/profiles/en/reference-kits/local-starter/_system/lessons/README.md +0 -5
- package/core/profiles/en/reference-kits/local-starter/_system/tasks/current-work.md +0 -17
- package/core/profiles/en/reference-kits/local-starter/outputs/drafts/README.md +0 -5
- package/core/profiles/en/reference-kits/local-starter/outputs/final/README.md +0 -5
- package/core/profiles/en/reference-kits/local-starter/references/README.md +0 -5
- package/core/profiles/en/reference-presets/local-starter.yaml +0 -12
- package/core/profiles/en/templates/_system/context/project-status.md +0 -25
- package/core/profiles/zh/templates/_/347/263/273/347/273/237//344/270/212/344/270/213/346/226/207//351/241/271/347/233/256/347/212/266/346/200/201.md +0 -25
- package/packs/hub-management/seed/zh//351/241/271/347/233/256//350/201/224/347/273/234/README.md +0 -5
- /package/core/{capabilities/matter-mode/templates/matters/_matter-template/drafts → kits/hub/.incoming/identity}/.gitkeep +0 -0
- /package/core/kits/{local-matter//344/272/213/351/241/271/_/344/272/213/351/241/271/346/250/241/346/235/277//350/215/211/347/250/277/.gitkeep" → hub/.incoming/knowledge/.gitkeep} +0 -0
- /package/core/kits/{satellite-matter//344/272/213/351/241/271/_/344/272/213/351/241/271/346/250/241/346/235/277//350/215/211/347/250/277/.gitkeep" → hub/.incoming/lessons/.gitkeep} +0 -0
- /package/core/kits/hub/{/351/241/271/347/233/256/registry.json" → projects/registry.json} +0 -0
- /package/core/kits/{satellite-matter → project}/CLAUDE.md +0 -0
- /package/core/{kits/satellite-matter → legacy/kits/satellite-starter}/.agents/skills/README.md +0 -0
- /package/core/{kits/satellite-matter → legacy/kits/satellite-starter}/.claude/skills/README.md +0 -0
- /package/core/{kits/satellite-matter → legacy/kits/satellite-starter}/.core-sync.json +0 -0
- /package/core/{kits/satellite-matter → legacy/kits/satellite-starter}/.internal/README.md +0 -0
- /package/core/{kits/satellite-matter → legacy/kits/satellite-starter}/.obsidian/README.md +0 -0
- /package/core/{kits → legacy/kits}/satellite-starter/CLAUDE.md +0 -0
- /package/core/{kits/satellite-matter → legacy/kits/satellite-starter}/_/347/263/273/347/273/237//344/270/212/344/270/213/346/226/207//345/275/223/345/211/215/351/241/271/347/233/256.md" +0 -0
- /package/core/{kits/hub → legacy/kits/satellite-starter}/_/347/263/273/347/273/237//344/273/273/345/212/241//345/275/223/345/211/215/345/267/245/344/275/234.md" +0 -0
- /package/core/{kits/satellite-matter → legacy/kits/satellite-starter}/_/347/263/273/347/273/237//346/225/231/350/256/255/README.md" +0 -0
- /package/core/{kits/satellite-matter → legacy/kits/satellite-starter}/_/347/263/273/347/273/237//350/272/253/344/273/275/README.md" +0 -0
- /package/core/{kits/local-matter → legacy/kits/satellite-starter}//345/217/202/350/200/203/350/265/204/346/226/231/README.md" +0 -0
- /package/core/{kits/satellite-matter → legacy/kits/satellite-starter}//347/237/245/350/257/206/README.md" +0 -0
- /package/core/{kits/local-matter → legacy/kits/satellite-starter}//350/276/223/345/207/272//350/215/211/347/250/277/README.md" +0 -0
- /package/{skills → kit-skills}/starworkSpawn/agents/openai.yaml +0 -0
- /package/packs/hub-management/seed/zh/{/351/241/271/347/233/256/registry.json" → projects/registry.json} +0 -0
|
@@ -0,0 +1,435 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: starworkDoctor
|
|
3
|
+
description: 'Diagnose StarWork workspaces, legacy templates, and project-center-like repos from `starwork doctor --json`; explain issues and draft safe upgrade plans.'
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# starworkDoctor
|
|
7
|
+
|
|
8
|
+
使用这个 skill,把 `starwork doctor --json` 暴露的探测结果整理成清晰诊断;当用户明确要升级时,也由本 skill 继续采访用户并生成 `upgrade-blueprint.json`。
|
|
9
|
+
|
|
10
|
+
`starworkDoctor` 不是 `starwork doctor` 命令本身,也不是 `starwork upgrade` 执行器。它负责在 CLI 探测之后做 AI 判断:
|
|
11
|
+
|
|
12
|
+
- 当前目录是否已经具备 StarWork Core 的基本工作逻辑
|
|
13
|
+
- 当前目录是否有清楚的入口规则、项目状态、当前工作、资料区、草稿区、正式成果区
|
|
14
|
+
- 哪些非标准目录可能承担“参考资料”“正式成果”“草稿”“当前推进”等 Core 角色
|
|
15
|
+
- 当前目录是否更像项目中心候选,而不是普通单项目旧模板
|
|
16
|
+
- 当前目录缺少哪些 Core 必需结构
|
|
17
|
+
- 应该如何整理、补齐或升级,且不破坏用户历史文件
|
|
18
|
+
- 用户确认升级语义后,生成可 dry-run 的 `upgrade-blueprint.json` 和配套规则文件
|
|
19
|
+
|
|
20
|
+
## 主入口边界
|
|
21
|
+
|
|
22
|
+
如果用户只是询问产品总览、起步路径、安装入口或该用哪个 StarWork 能力,回到 `starwork` 主入口。`starworkDoctor` 只处理诊断、doctor 结果解释、旧目录整理和升级方案设计。
|
|
23
|
+
|
|
24
|
+
历史上独立的 `starworkUpgrade` 系统 Skill 已取消;旧模板升级、旧宿主规则提炼和 upgrade blueprint 设计都由 `starworkDoctor` 承接。不要重新引导用户安装或调用独立 `starworkUpgrade` Skill。
|
|
25
|
+
|
|
26
|
+
Kit / Pack 不是本 skill 的主线任务。只有在生成升级蓝图时,才选择 CLI 可执行的落地参数:单项目默认 `general` Pack;类似项目中心的旧工作区使用 `hub + preserve-names + pack:null`,避免创建重复标准目录。
|
|
27
|
+
|
|
28
|
+
除非用户明确要求生成升级蓝图,否则这个 skill 只做诊断和建议,不生成 blueprint;除非用户明确要求执行命令,否则不直接修改用户工作区。
|
|
29
|
+
|
|
30
|
+
## 升级旧目录的第一屏
|
|
31
|
+
|
|
32
|
+
当用户说“把旧目录升级成 StarWork 工作台”“整理旧工作区”“修复旧模板”时,先讲清楚诊断和升级的区别:
|
|
33
|
+
|
|
34
|
+
```text
|
|
35
|
+
诊断是先看清当前目录的事实,升级是无损补齐 StarWork 工作台规则。
|
|
36
|
+
|
|
37
|
+
我会先检查这个目录里已经有哪些项目说明、任务记录、资料区、成果区和 AI 入口规则,再判断它离 StarWork 工作台还差什么。
|
|
38
|
+
|
|
39
|
+
接下来我会分三步走:
|
|
40
|
+
1. 先运行 doctor 只读诊断;
|
|
41
|
+
2. 再把可升级线索和不确定点讲清楚;
|
|
42
|
+
3. 你确认后才生成升级方案并预览写入。
|
|
43
|
+
|
|
44
|
+
这个过程不会移动、删除或覆盖你的历史文件;升级目标是保留原目录,只补必要的 StarWork 规则和状态。
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## 参考
|
|
48
|
+
|
|
49
|
+
需要完整边界、输出格式和后续 CLI 要求时,读取:
|
|
50
|
+
|
|
51
|
+
```text
|
|
52
|
+
../starworkDoctor-spec.md
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
需要更产品化的回复模板、术语翻译或项目中心候选示例时,读取:
|
|
56
|
+
|
|
57
|
+
```text
|
|
58
|
+
references/response-guide.md
|
|
59
|
+
references/hub-upgrade.md
|
|
60
|
+
references/rules-extraction-guide.md
|
|
61
|
+
references/agent-rules-template.md
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
不要在 skill 内重复维护完整 schema,避免和 SPEC 漂移。
|
|
65
|
+
|
|
66
|
+
## 产品边界
|
|
67
|
+
|
|
68
|
+
```text
|
|
69
|
+
starwork doctor = 探测器
|
|
70
|
+
starworkDoctor skill = 诊断师 + 升级蓝图设计师
|
|
71
|
+
starwork upgrade = 蓝图执行器
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
| 层 | 负责 | 不负责 |
|
|
75
|
+
|---|---|---|
|
|
76
|
+
| `doctor` CLI | 探测目录、列事实、输出 JSON、暴露信号和不确定性 | 做复杂语义判断、输出 next steps |
|
|
77
|
+
| `starworkDoctor` skill | 解释、判断 Core 贴近度、追问、建议整理路径、生成 upgrade blueprint | 静默改文件、替用户做不可逆迁移 |
|
|
78
|
+
| `starwork upgrade` CLI | 校验和执行用户确认过的 blueprint | 自行判断业务语义 |
|
|
79
|
+
|
|
80
|
+
## 话术原则
|
|
81
|
+
|
|
82
|
+
`starworkDoctor` 的产品气质是“温和诊断师”,不是严格 linter。
|
|
83
|
+
|
|
84
|
+
- 开场避免失败感:不要说“你的工作区不合格”,应说“这个目录还不是标准 StarWork 工作台,但已经有一些可升级信号”。
|
|
85
|
+
- 第一屏必须先给人话结论:能不能接入、会不会移动旧目录、下一步是什么。
|
|
86
|
+
- 第一次出现 `workspace state` 时,解释为“StarWork 工作台身份证”。
|
|
87
|
+
- 分开说明 `Core fit` 和 `upgrade readiness`:目录逻辑贴近不等于可以立刻升级。
|
|
88
|
+
- 所有判断分三类表达:`我看到的事实`、`我推测的角色`、`需要你确认的地方`。
|
|
89
|
+
- 角色映射写成“候选角色 + 依据 + 置信度 + 需要确认什么”。
|
|
90
|
+
- 低置信度判断必须用柔和措辞,例如“可能承担”“更像是”“还不能只凭目录名确认”。
|
|
91
|
+
- 缺失项要翻译成工作后果,例如“新 Agent 进来时会比较难判断先读哪里”。
|
|
92
|
+
- 升级建议围绕“无损补齐”:保留原目录名,只补 StarWork state 和 Agent 入口规则,不移动、不删除、不覆盖历史内容。
|
|
93
|
+
- 需要用户回答的问题最多 3 个,只问会影响 blueprint 的语义。
|
|
94
|
+
|
|
95
|
+
推荐开场:
|
|
96
|
+
|
|
97
|
+
```text
|
|
98
|
+
我先把它当作“历史工作区候选”来看。当前它还不是标准 StarWork 工作台,但目录里已经有资料、成果或推进痕迹,适合先走无损诊断路线。
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
推荐不确定表达:
|
|
102
|
+
|
|
103
|
+
```text
|
|
104
|
+
“成稿/”很可能是正式成果区,但我还不能只凭目录名确认。需要你确认:这里是否只放已经认可的最终版本?
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
推荐缺失表达:
|
|
108
|
+
|
|
109
|
+
```text
|
|
110
|
+
现在缺少一个稳定的“当前工作入口”。这不代表目录有问题,只是新 Agent 进来时会比较难判断下一步该接哪里。
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
## 工作流程
|
|
114
|
+
|
|
115
|
+
### Step 1:运行 doctor 探测
|
|
116
|
+
|
|
117
|
+
优先执行:
|
|
118
|
+
|
|
119
|
+
```bash
|
|
120
|
+
starwork doctor --target <path> --json --inventory-depth all
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
如果用户没有给路径,先确认目标目录。不要默认扫描用户主目录或过大的上级目录。
|
|
124
|
+
|
|
125
|
+
读取 JSON 后先判断:
|
|
126
|
+
|
|
127
|
+
- 是否已有 `workspace`
|
|
128
|
+
- 是否存在 `inventory`
|
|
129
|
+
- 是否存在 `signals`
|
|
130
|
+
- 是否缺少 workspace state
|
|
131
|
+
- fail 是标准工作台损坏,还是历史模板缺少 state
|
|
132
|
+
- 是否存在 `hub-like-main-repository`、`hub_candidate_paths`、`project_registry_files` 等项目中心候选信号
|
|
133
|
+
|
|
134
|
+
`doctor` 输出只当作事实和信号,不把其中的 legacy 判断当作最终诊断。
|
|
135
|
+
|
|
136
|
+
如果用户指定了宿主,或你从目录里看到宿主痕迹,再追加宿主诊断:
|
|
137
|
+
|
|
138
|
+
```bash
|
|
139
|
+
starwork doctor --target <path> --host <codex|claude-code|cursor|trae|all> --json
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
宿主痕迹包括:
|
|
143
|
+
|
|
144
|
+
- `AGENTS.md` / `.agents/skills/`:Codex 或通用 Agent
|
|
145
|
+
- `CLAUDE.md` / `.claude/skills/`:Claude Code
|
|
146
|
+
- `.cursor/rules/` / `.cursor/skills/`:Cursor
|
|
147
|
+
- `.trae/rules/` / `.trae/skills/` / `.trae/skill-config.json`:Trae
|
|
148
|
+
|
|
149
|
+
解释时分开说:
|
|
150
|
+
|
|
151
|
+
- StarWork 工作台结构问题
|
|
152
|
+
- 宿主入口问题
|
|
153
|
+
- Skill 目录问题
|
|
154
|
+
- 同名 Skill 冲突
|
|
155
|
+
- 宿主能力限制
|
|
156
|
+
|
|
157
|
+
不要把宿主适配问题说成 Core 坏了。Cursor / Trae 不支持后台跨会话派活,也不是 StarWork 故障;那只是需要人工交付。
|
|
158
|
+
|
|
159
|
+
### Step 2:读取少量关键文件
|
|
160
|
+
|
|
161
|
+
只读取最能解释项目性质的文件:
|
|
162
|
+
|
|
163
|
+
- `README.md`
|
|
164
|
+
- `AGENTS.md`
|
|
165
|
+
- `CLAUDE.md`
|
|
166
|
+
- `.cursorrules`
|
|
167
|
+
- `.cursor/rules/*`
|
|
168
|
+
- `.trae/rules/*`
|
|
169
|
+
- `_系统/上下文/项目状态.md`
|
|
170
|
+
- `_系统/上下文/当前项目.md`
|
|
171
|
+
- `_系统/任务/当前工作.md`
|
|
172
|
+
- `matters/registry.md`
|
|
173
|
+
- `事项/注册表.md`
|
|
174
|
+
|
|
175
|
+
如果文件不存在,只记录缺失,不报错。
|
|
176
|
+
|
|
177
|
+
读取入口规则时,目标不是把旧规则全文塞进新 `AGENTS.md`,而是识别其中仍有效的行为规则、写入边界、确认门槛和只读范围。规则提炼方法见 `references/rules-extraction-guide.md`。
|
|
178
|
+
|
|
179
|
+
旧宿主规则文件也要纳入提炼范围:
|
|
180
|
+
|
|
181
|
+
- `CLAUDE.md`
|
|
182
|
+
- `.cursor/rules/**`
|
|
183
|
+
- `.trae/rules/**`
|
|
184
|
+
- 旧 `AGENTS.md`
|
|
185
|
+
|
|
186
|
+
把旧规则分成三类:
|
|
187
|
+
|
|
188
|
+
- 可保留:项目事实、工作边界、用户偏好。
|
|
189
|
+
- 需要改写:旧目录路径、旧术语、旧工作流。
|
|
190
|
+
- 应废弃:过期命令、冲突规则、污染业务目录的临时指令。
|
|
191
|
+
|
|
192
|
+
升级后的入口不能出现 StarWork 内部占位符;旧规则原文应保留为证据,不要原样塞回新入口。
|
|
193
|
+
|
|
194
|
+
### Step 3:建立 Core 角色映射
|
|
195
|
+
|
|
196
|
+
基于 `inventory.directories`、`signals`、README 和少量关键文件,判断当前目录和 StarWork Core 角色的对应关系。
|
|
197
|
+
|
|
198
|
+
输出时使用“候选 + 置信度 + 理由 + 是否需要确认”,不要把推断说成事实。
|
|
199
|
+
|
|
200
|
+
核心角色包括:
|
|
201
|
+
|
|
202
|
+
- Agent 入口规则
|
|
203
|
+
- 项目状态
|
|
204
|
+
- 当前工作
|
|
205
|
+
- 参考资料 / 原始资料
|
|
206
|
+
- 草稿 / 临时产物
|
|
207
|
+
- 正式成果 / 事实源
|
|
208
|
+
- 项目知识库是否已开启;旧 `知识/` 或 `knowledge/` 只作为线索,不默认当成新知识库
|
|
209
|
+
- 事项推进
|
|
210
|
+
- 决策记录
|
|
211
|
+
- 身份偏好
|
|
212
|
+
- 经验教训
|
|
213
|
+
- 项目中心候选角色:项目登记、跨项目联络、回写待审、共享身份、共享教训、共享知识、共享 skills
|
|
214
|
+
|
|
215
|
+
### Step 4:判断 Core 逻辑贴近程度
|
|
216
|
+
|
|
217
|
+
主线判断不是像哪个 Kit / Pack,而是当前目录和 StarWork Core 的工作逻辑有多贴近。
|
|
218
|
+
|
|
219
|
+
诊断矩阵必须覆盖:
|
|
220
|
+
|
|
221
|
+
- 入口规则:Agent 进来先读什么?
|
|
222
|
+
- 项目状态:项目现在是什么状态?
|
|
223
|
+
- 当前工作:下一步正在推进什么?
|
|
224
|
+
- 信息边界:资料、草稿、正式成果是否分开?
|
|
225
|
+
- 长期记忆:身份、教训、决策是否有稳定位置?
|
|
226
|
+
- 过程记录:项目工作台是否有过程记录和交接结构?
|
|
227
|
+
- 写入风险:哪些目录应只读,哪些目录允许 Agent 写?
|
|
228
|
+
- 知识库:如果未开启,不当作问题;如果存在旧 `知识/` / `knowledge/`,只说明它可能是什么,不能自动迁移或删除
|
|
229
|
+
|
|
230
|
+
每项状态使用:
|
|
231
|
+
|
|
232
|
+
- 清楚
|
|
233
|
+
- 部分清楚
|
|
234
|
+
- 缺失
|
|
235
|
+
- 不确定
|
|
236
|
+
|
|
237
|
+
整体贴近度使用:
|
|
238
|
+
|
|
239
|
+
- 高
|
|
240
|
+
- 中
|
|
241
|
+
- 低
|
|
242
|
+
- 不确定
|
|
243
|
+
|
|
244
|
+
不要伪造精确分数。
|
|
245
|
+
|
|
246
|
+
同时给出升级准备度:
|
|
247
|
+
|
|
248
|
+
- `ready`:关键目录语义已确认,可以生成 blueprint。
|
|
249
|
+
- `needs-confirmation`:目录逻辑贴近,但正式事实源、当前工作或项目中心映射还需要用户确认。
|
|
250
|
+
- `not-recommended`:已经是健康 StarWork 工作台,或目标不是工作区。
|
|
251
|
+
|
|
252
|
+
### Step 5:形成整理和升级建议
|
|
253
|
+
|
|
254
|
+
建议应围绕 Core 逻辑补齐,而不是先围绕 Kit / Pack 分类。
|
|
255
|
+
|
|
256
|
+
输出建议时回答:
|
|
257
|
+
|
|
258
|
+
- 哪些现有目录应保留原名
|
|
259
|
+
- 哪些目录应映射为 StarWork Core 角色
|
|
260
|
+
- 哪些 Core 必需文件需要补齐
|
|
261
|
+
- 是否需要事项机制
|
|
262
|
+
- 是否是类似项目中心的旧工作区,应使用 `hub + preserve-names + pack:null`
|
|
263
|
+
- 是否需要先保持旧模板,只补 state 和入口规则
|
|
264
|
+
- 是否适合进入 `starwork upgrade --blueprint --dry-run`
|
|
265
|
+
|
|
266
|
+
如果用户只是要诊断,到这里停止,不生成 blueprint。
|
|
267
|
+
|
|
268
|
+
### Step 6:用户要求升级时,采访确认关键语义
|
|
269
|
+
|
|
270
|
+
只有用户明确说“帮我升级”“生成 blueprint”“走 dry-run”“整理成 StarWork 工作台”时,才进入升级设计。
|
|
271
|
+
|
|
272
|
+
只问会影响升级蓝图的问题:
|
|
273
|
+
|
|
274
|
+
- 哪个目录是正式成果 / 确认事实源?
|
|
275
|
+
- 哪个目录是当前工作 / 日常推进区?
|
|
276
|
+
- 哪些目录是只读参考资料?
|
|
277
|
+
- 是否需要事项机制?
|
|
278
|
+
- 对项目中心候选:哪个目录是项目登记、跨项目协调和回写待审?
|
|
279
|
+
- 希望保留旧目录名,还是逐步标准化?
|
|
280
|
+
|
|
281
|
+
推荐问法:
|
|
282
|
+
|
|
283
|
+
```text
|
|
284
|
+
未来你希望 Agent 把哪里当成“不能乱改的正式成果”?
|
|
285
|
+
```
|
|
286
|
+
|
|
287
|
+
```text
|
|
288
|
+
你平时真正干活的地方在哪里?比如推进事项、写草稿、放待办、记录阶段判断。
|
|
289
|
+
```
|
|
290
|
+
|
|
291
|
+
### Step 7:生成升级蓝图
|
|
292
|
+
|
|
293
|
+
默认策略:
|
|
294
|
+
|
|
295
|
+
```text
|
|
296
|
+
preserve-names
|
|
297
|
+
```
|
|
298
|
+
|
|
299
|
+
也就是保留用户已有目录名,通过 `.starwork/workspace.json` 和 Agent 规则建立 StarWork Core 映射。
|
|
300
|
+
|
|
301
|
+
默认 base:
|
|
302
|
+
|
|
303
|
+
- 单项目旧模板:按 `project + project + general` 接入;如果 doctor 识别到 `single-light` 或 `local-starter`,只把它们当作历史信号
|
|
304
|
+
- 多线推进旧模板:`project + project + general`
|
|
305
|
+
- 项目中心候选:`hub + hub + pack:null`
|
|
306
|
+
|
|
307
|
+
推荐输出目录:
|
|
308
|
+
|
|
309
|
+
```text
|
|
310
|
+
<workspace>-upgrade/
|
|
311
|
+
├── upgrade-blueprint.json
|
|
312
|
+
├── rules/
|
|
313
|
+
│ ├── core-boundaries.md
|
|
314
|
+
│ ├── user-preserved-rules.md
|
|
315
|
+
│ └── rule-conflicts.md
|
|
316
|
+
└── notes/
|
|
317
|
+
└── original-rules-summary.md
|
|
318
|
+
```
|
|
319
|
+
|
|
320
|
+
规则文件必须是短规则片段,不是完整 `AGENTS.md`。不要生成整篇入口规则,不要把项目背景、历史记录、会议纪要或低置信度推断写进规则片段。
|
|
321
|
+
|
|
322
|
+
`rules/core-boundaries.md` 至少说明:
|
|
323
|
+
|
|
324
|
+
- 正式成果目录
|
|
325
|
+
- 当前工作目录
|
|
326
|
+
- 参考资料目录
|
|
327
|
+
- 保留历史命名的目录
|
|
328
|
+
- Agent 不能覆盖、移动、删除的历史内容
|
|
329
|
+
|
|
330
|
+
`rules/user-preserved-rules.md` 用来承接原有 `AGENTS.md`、`CLAUDE.md`、Cursor rules 等入口规则中仍有效的内容。如果没有发现可提炼规则,必须在回复中明确说明“未发现可提炼的原有规则”,不要生成空洞规则。
|
|
331
|
+
|
|
332
|
+
`rules/rule-conflicts.md` 只记录冲突、过时或需要用户确认的规则,不直接注入 `AGENTS.md`。
|
|
333
|
+
|
|
334
|
+
规则片段建议使用 `references/agent-rules-template.md` 的结构。
|
|
335
|
+
|
|
336
|
+
`upgrade-blueprint.json` 中 `generated_by` 写:
|
|
337
|
+
|
|
338
|
+
```json
|
|
339
|
+
"generated_by": "starworkDoctor"
|
|
340
|
+
```
|
|
341
|
+
|
|
342
|
+
蓝图执行命令:
|
|
343
|
+
|
|
344
|
+
```bash
|
|
345
|
+
starwork upgrade --target <workspace> --blueprint <workspace>-upgrade/upgrade-blueprint.json --dry-run
|
|
346
|
+
```
|
|
347
|
+
|
|
348
|
+
用户确认后:
|
|
349
|
+
|
|
350
|
+
```bash
|
|
351
|
+
starwork upgrade --target <workspace> --blueprint <workspace>-upgrade/upgrade-blueprint.json --yes
|
|
352
|
+
starwork doctor --target <workspace>
|
|
353
|
+
```
|
|
354
|
+
|
|
355
|
+
## 报告结构
|
|
356
|
+
|
|
357
|
+
诊断模式:
|
|
358
|
+
|
|
359
|
+
```text
|
|
360
|
+
## 诊断结论
|
|
361
|
+
|
|
362
|
+
## 我看到的事实
|
|
363
|
+
|
|
364
|
+
## 我推测的角色
|
|
365
|
+
|
|
366
|
+
## Core 逻辑贴近程度
|
|
367
|
+
|
|
368
|
+
## 缺失和风险
|
|
369
|
+
|
|
370
|
+
## 整理升级建议
|
|
371
|
+
|
|
372
|
+
## 需要你确认的问题
|
|
373
|
+
```
|
|
374
|
+
|
|
375
|
+
升级设计模式:
|
|
376
|
+
|
|
377
|
+
```text
|
|
378
|
+
## 升级判断
|
|
379
|
+
|
|
380
|
+
## 用户已确认的目录语义
|
|
381
|
+
|
|
382
|
+
## 升级策略
|
|
383
|
+
|
|
384
|
+
## 生成的 blueprint 文件
|
|
385
|
+
|
|
386
|
+
## dry-run 命令
|
|
387
|
+
|
|
388
|
+
## 执行前请再次确认
|
|
389
|
+
```
|
|
390
|
+
|
|
391
|
+
## 机器可读建议
|
|
392
|
+
|
|
393
|
+
如果需要给 CLI 或后续流程使用,可以附加:
|
|
394
|
+
|
|
395
|
+
```json
|
|
396
|
+
{
|
|
397
|
+
"schema": "starwork.doctor_skill.recommendation.v0.1",
|
|
398
|
+
"target": "/path/to/workspace",
|
|
399
|
+
"diagnosis": "legacy-template",
|
|
400
|
+
"core_fit": "medium",
|
|
401
|
+
"upgrade_readiness": "needs-confirmation",
|
|
402
|
+
"core_role_mapping_candidates": {
|
|
403
|
+
"formal_source": [
|
|
404
|
+
{
|
|
405
|
+
"path": "成稿/",
|
|
406
|
+
"confidence": "high",
|
|
407
|
+
"reason": "目录名表示最终稿",
|
|
408
|
+
"needs_user_confirmation": true
|
|
409
|
+
}
|
|
410
|
+
]
|
|
411
|
+
},
|
|
412
|
+
"blocking_risks": [
|
|
413
|
+
"缺少 workspace state,CLI 无法把目录识别为标准 StarWork 工作台。"
|
|
414
|
+
],
|
|
415
|
+
"confirmation_questions": [
|
|
416
|
+
"成稿/ 是否就是你确认后的正式成果?",
|
|
417
|
+
"资料库/ 是否默认只读?"
|
|
418
|
+
]
|
|
419
|
+
}
|
|
420
|
+
```
|
|
421
|
+
|
|
422
|
+
## 约束
|
|
423
|
+
|
|
424
|
+
- 不静默修改用户文件。
|
|
425
|
+
- 不把低置信度判断说成事实。
|
|
426
|
+
- 不把 Kit / Pack 贴近度当作主线诊断。
|
|
427
|
+
- 不只根据一个目录名判断目录角色。
|
|
428
|
+
- 不鼓励用户立即执行破坏性迁移。
|
|
429
|
+
- 不读取大量内容文件,除非用户明确要求深入审计。
|
|
430
|
+
- 不把 `doctor` 的 legacy 判断当作最终结论;它只是信号。
|
|
431
|
+
- 不直接执行 `starwork upgrade --yes`,除非用户明确要求。
|
|
432
|
+
- 不生成包含绝对路径、`..`、`.git/`、`node_modules/` 写入动作的 blueprint。
|
|
433
|
+
- 不主动推荐未定稿业务 Pack;v0.1 单项目升级默认 `general`,项目中心候选默认 `pack:null`。
|
|
434
|
+
- 不生成完整 `AGENTS.md`;只生成可注入的短规则片段。
|
|
435
|
+
- 不把旧规则原文无筛选地塞进新规则槽;必须先提炼、分类和标注来源。
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
interface:
|
|
2
|
+
display_name: "StarWork Doctor"
|
|
3
|
+
short_description: "解释 StarWork 检查结果,识别旧模板或 Hub-like 主库,并按需生成升级蓝图"
|
|
4
|
+
default_prompt: "Use $starworkDoctor to explain starwork doctor output, diagnose legacy or Hub-like main repositories, and generate a safe upgrade blueprint when requested."
|
|
5
|
+
|
|
6
|
+
policy:
|
|
7
|
+
allow_implicit_invocation: true
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
# Agent Rules Template
|
|
2
|
+
|
|
3
|
+
Use this template for rule fragments that will be injected into `AGENTS.md` through `starwork upgrade`.
|
|
4
|
+
|
|
5
|
+
Do not write a full `AGENTS.md`. Write only the body of one StarWork rule slot.
|
|
6
|
+
|
|
7
|
+
## Template
|
|
8
|
+
|
|
9
|
+
```markdown
|
|
10
|
+
### Read First
|
|
11
|
+
|
|
12
|
+
- ...
|
|
13
|
+
|
|
14
|
+
### Write Boundaries
|
|
15
|
+
|
|
16
|
+
- ...
|
|
17
|
+
|
|
18
|
+
### Preserve
|
|
19
|
+
|
|
20
|
+
- ...
|
|
21
|
+
|
|
22
|
+
### Confirm Before
|
|
23
|
+
|
|
24
|
+
- ...
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## Style Rules
|
|
28
|
+
|
|
29
|
+
- Keep each section short.
|
|
30
|
+
- Use concrete paths.
|
|
31
|
+
- Say whether a path is read-only, draft, working, or final.
|
|
32
|
+
- Use "ask before" for risky operations.
|
|
33
|
+
- Do not include project history, rationale, or meeting notes.
|
|
34
|
+
- Do not write uncertain guesses as rules.
|
|
35
|
+
|
|
36
|
+
## Good Example
|
|
37
|
+
|
|
38
|
+
```markdown
|
|
39
|
+
### Read First
|
|
40
|
+
|
|
41
|
+
- Read `README.md` and `AGENTS.md` before changing project files.
|
|
42
|
+
|
|
43
|
+
### Write Boundaries
|
|
44
|
+
|
|
45
|
+
- Treat `资料库/` as read-only reference material.
|
|
46
|
+
- Put draft work in `输出/草稿/`.
|
|
47
|
+
- Treat `成稿/` as confirmed final output.
|
|
48
|
+
|
|
49
|
+
### Preserve
|
|
50
|
+
|
|
51
|
+
- Do not rename, move, or delete existing legacy folders during upgrade.
|
|
52
|
+
|
|
53
|
+
### Confirm Before
|
|
54
|
+
|
|
55
|
+
- Ask before changing final outputs, identity files, lessons, or shared knowledge.
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## Bad Example
|
|
59
|
+
|
|
60
|
+
```markdown
|
|
61
|
+
This project started in 2024. The previous team used several folders and had many discussions about the writing process...
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
That is background, not an Agent rule.
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
# Hub-like Main Repository Upgrade
|
|
2
|
+
|
|
3
|
+
Use this reference when `doctor --json` shows main-repository or Hub-like signals such as `identity/`, `lessons/`, `knowledge/`, `skills/`, `projects/registry.json`, `projects/coordination/`, or `.incoming/`.
|
|
4
|
+
|
|
5
|
+
## Diagnosis Policy
|
|
6
|
+
|
|
7
|
+
Treat the directory as a Hub-like main repository candidate, not as a normal `project` legacy template.
|
|
8
|
+
|
|
9
|
+
Recommended wording:
|
|
10
|
+
|
|
11
|
+
```text
|
|
12
|
+
这个目录更像“主库 / 多项目中枢”候选,而不是普通单项目旧模板。它已经有共享身份、教训、知识、skills、项目登记和回写待审入口。建议按 Hub preserve-names 方式无损接入:保留 `projects/`、`knowledge/`、`skills/` 等原名,只补 StarWork 工作台身份证和 Agent 边界规则。
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
Avoid:
|
|
16
|
+
|
|
17
|
+
```text
|
|
18
|
+
建议按 project 升级。
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## Blueprint Defaults
|
|
22
|
+
|
|
23
|
+
For a confirmed Hub-like main repository:
|
|
24
|
+
|
|
25
|
+
```json
|
|
26
|
+
{
|
|
27
|
+
"base": {
|
|
28
|
+
"workspace_type": "hub",
|
|
29
|
+
"kit": "hub",
|
|
30
|
+
"language": "zh",
|
|
31
|
+
"pack": null
|
|
32
|
+
},
|
|
33
|
+
"strategy": "preserve-names",
|
|
34
|
+
"paths": {
|
|
35
|
+
"formal_source": "projects/",
|
|
36
|
+
"business_work_area": "projects/coordination/"
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
`pack:null` is intentional. It prevents `starwork upgrade` from installing `hub-management` Pack seed files and creating duplicate standard paths. New Hub workspaces use standard paths such as `projects/` and `knowledge/`, but preserve-name upgrades should keep the user's existing Hub-like structure.
|
|
42
|
+
|
|
43
|
+
## Required Role Mapping
|
|
44
|
+
|
|
45
|
+
Include confirmed mappings when they exist:
|
|
46
|
+
|
|
47
|
+
```json
|
|
48
|
+
[
|
|
49
|
+
{ "role": "projects", "path": "projects/", "confidence": "high", "reason": "用户确认这是项目总登记区" },
|
|
50
|
+
{ "role": "project_registry", "path": "projects/registry.json", "confidence": "high", "reason": "用户确认这是项目注册表" },
|
|
51
|
+
{ "role": "coordination", "path": "projects/coordination/", "confidence": "high", "reason": "用户确认这是跨项目协调入口" },
|
|
52
|
+
{ "role": "incoming", "path": ".incoming/", "confidence": "high", "reason": "用户确认这是回写待审区" },
|
|
53
|
+
{ "role": "identity", "path": "identity/", "confidence": "high", "reason": "用户确认这是共享身份事实源" },
|
|
54
|
+
{ "role": "lessons", "path": "lessons/", "confidence": "high", "reason": "用户确认这是共享教训事实源" },
|
|
55
|
+
{ "role": "knowledge", "path": "knowledge/", "confidence": "high", "reason": "用户确认这是共享知识事实源" },
|
|
56
|
+
{ "role": "skills", "path": "skills/", "confidence": "high", "reason": "用户确认这是共享 skill 来源" }
|
|
57
|
+
]
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
## Safe Actions
|
|
61
|
+
|
|
62
|
+
Use only low-risk actions:
|
|
63
|
+
|
|
64
|
+
```json
|
|
65
|
+
[
|
|
66
|
+
{ "type": "ensure_dir", "path": ".starwork/" },
|
|
67
|
+
{ "type": "write_workspace_state" },
|
|
68
|
+
{ "type": "copy_kit_missing_files" },
|
|
69
|
+
{ "type": "inject_agent_rules", "target": "AGENTS.md", "from": "rules/hub-boundaries.md", "slot": "upgrade.hub_boundaries" }
|
|
70
|
+
]
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
Do not add `copy_seed` for standard Hub Pack seed unless the user explicitly asks to create standard StarWork Hub directories.
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# starworkDoctor Response Guide
|
|
2
|
+
|
|
3
|
+
Use this reference when the user says the diagnosis is hard to understand, asks for a friendlier explanation, or gives feedback about wording.
|
|
4
|
+
|
|
5
|
+
## First Screen
|
|
6
|
+
|
|
7
|
+
Start with three plain-language answers before detailed sections:
|
|
8
|
+
|
|
9
|
+
```text
|
|
10
|
+
结论:这个目录可以接入 StarWork,但现在还缺“工作台身份证”。
|
|
11
|
+
安全性:建议无损接入,不移动、不改名、不覆盖历史目录。
|
|
12
|
+
下一步:如果你确认关键目录语义,我会先生成 dry-run blueprint,只预览不写入。
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
For an existing healthy StarWork workspace:
|
|
16
|
+
|
|
17
|
+
```text
|
|
18
|
+
结论:这个目录已经是健康的 StarWork 工作台,不需要走 upgrade。
|
|
19
|
+
下一步:如果要扩展能力,优先考虑 adapt、pack install 或后续 update。
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Term Translations
|
|
23
|
+
|
|
24
|
+
- `workspace state` / `.starwork/workspace.json`:StarWork 工作台身份证,让 CLI 知道这个目录是什么类型、哪些地方能写、哪些地方要保护。
|
|
25
|
+
- `preserve-names`:保留旧目录名,只补 StarWork 识别和边界规则。
|
|
26
|
+
- `dry-run`:只预览计划,不写入文件。
|
|
27
|
+
- `blueprint`:升级施工图,先由用户确认,再交给 CLI 执行。
|
|
28
|
+
- `Core fit`:目录工作逻辑和 StarWork Core 有多接近。
|
|
29
|
+
- `upgrade readiness`:现在是否已经具备生成升级施工图的条件。
|
|
30
|
+
|
|
31
|
+
## Role Mapping Format
|
|
32
|
+
|
|
33
|
+
Use this shape for inferred roles:
|
|
34
|
+
|
|
35
|
+
```text
|
|
36
|
+
- `projects/`:候选角色是项目登记区。依据是存在 `projects/registry.json`;置信度高。需要确认:这里是否仍是主库维护的项目总登记?
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
Do not write only:
|
|
40
|
+
|
|
41
|
+
```text
|
|
42
|
+
- `projects/` 是项目登记区。
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
## Question Limit
|
|
46
|
+
|
|
47
|
+
Ask at most 3 questions. Prefer questions that directly affect blueprint fields:
|
|
48
|
+
|
|
49
|
+
- 哪个目录要写入 `paths.formal_source`?
|
|
50
|
+
- 哪个目录要写入 `paths.business_work_area`?
|
|
51
|
+
- 哪些目录需要写进 `preserve`,确保不移动、不覆盖?
|
|
52
|
+
|
|
53
|
+
For Hub-like repositories, ask:
|
|
54
|
+
|
|
55
|
+
- `projects/` 是否就是项目总登记区?
|
|
56
|
+
- `projects/coordination/` 是否就是跨项目协调入口?
|
|
57
|
+
- `.incoming/` 是否继续作为回写待审区?
|