@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,101 @@
|
|
|
1
|
+
# Cursor 会话管理能力调研结果(StarWork multiagent)
|
|
2
|
+
|
|
3
|
+
- 调研日期:2026-06-01
|
|
4
|
+
- 调研环境:macOS darwin 25.5.0(arm64)
|
|
5
|
+
- Cursor 版本:`3.6.31`(`cursor --version`)
|
|
6
|
+
- 调研方式:本地 CLI 实测 + MCP 工具描述取证 + 本地只读存储路径取证
|
|
7
|
+
- 边界声明:本次未执行任何会破坏历史的操作;未改写 SQLite / 私有存储;未删除真实会话
|
|
8
|
+
|
|
9
|
+
## A. 能力矩阵
|
|
10
|
+
|
|
11
|
+
| 能力 | UI 支持 | 可编程支持 | 稳定性 | StarWork 适配建议 | 证据 |
|
|
12
|
+
|---|---|---|---|---|---|
|
|
13
|
+
| 获取当前会话 ID | 待补 UI 实测 | 部分支持(CLI 可创建并返回 chat ID;当前 IDE 会话 ID 无官方直出) | 中 | `session_id` 采用“优先官方 ID,降级本地 transcript UUID”策略 | `cursor agent create-chat` 返回 UUID:`5dfbb962-1678-4577-a865-61c754fcf9cc`;`agent-transcripts/<uuid>/<uuid>.jsonl` 结构 |
|
|
14
|
+
| 当前会话改名 | 可能支持(标签页标题) | 支持(MCP) | 中高 | 支持 `multiagent bind --session-name`,实现为“可用则调用、失败降级提示手工改名” | `cursor-app-control/tools/rename_chat.json`;`INSTRUCTIONS.md` 明确 `rename_chat` |
|
|
15
|
+
| 列出历史会话 | 待补 UI 实测 | 有命令入口但自动化可用性一般 | 中低 | CLI 侧仅做“可选增强”,主流程不依赖自动列举 | `cursor agent ls` 存在;非交互终端触发 raw mode 报错 |
|
|
16
|
+
| 读取历史会话 | 待补 UI 实测 | 部分支持(本地 transcript 可读) | 中低 | 仅作为调试/回溯入口,不作为核心协议依赖 | `agent-transcripts/...jsonl` 可直接读取;`User/globalStorage/state.vscdb` 存在但属内部存储 |
|
|
17
|
+
| 继续历史会话 | 待补 UI 实测 | 支持(CLI `--resume` / `--continue`) | 中 | 可映射 `multiagent continue <lane>`,但需处理认证与不可用降级 | `cursor agent --help` 含 `--resume [chatId]`、`--continue`;`cursor agent resume --help` |
|
|
18
|
+
| 导出会话 Markdown | 未见 | 未见官方入口 | 低 | 不作为依赖;改用 StarWork 自有 worklog/产物归档 | 未发现导出命令;仅发现 transcript/raw 存储 |
|
|
19
|
+
| 删除会话 | 待补 UI 实测 | 未见 | 低 | 不做自动化;仅提示用户手工处理 | CLI/MCP 描述中未见会话删除 |
|
|
20
|
+
| 归档会话 | 待补 UI 实测 | 未见 | 低 | `release --archive-session` 在 Cursor 适配中应降级为“归档 StarWork 工件,不归档宿主会话” | CLI/MCP 描述中未见 archive 会话能力 |
|
|
21
|
+
| 置顶会话 | 待补 UI 实测 | 未见 | 低 | 不纳入适配范围 | CLI/MCP 描述中未见 pin/favorite |
|
|
22
|
+
| 多 chat tabs | 可能支持(从“current chat conversation tab title”可侧证) | 无明确 | 中低 | lane 与 Cursor tab 建议保持“弱绑定”,以 lane 元数据为准 | `rename_chat` 描述含 “conversation tab title” |
|
|
23
|
+
| `@Past Chats` | 待补 UI 实测 | 未见稳定 API | 低 | 若存在仅作人工增强;不可作为自动恢复主路径 | 本次可见 CLI/MCP 未提供等价 API |
|
|
24
|
+
| 长会话摘要 | 待补 UI 实测 | 未见稳定 API | 低 | 继续依赖 StarWork 显式 worklog 交接,不依赖宿主自动摘要 | 本次未发现 `/summarize` 或摘要 API |
|
|
25
|
+
| checkpoint / revert | 待补 UI 实测 | 未见会话级官方 API | 低 | 不直接映射 lane 生命周期;代码回退仍以 git 为主 | 本次未发现会话 checkpoint API |
|
|
26
|
+
| Background Agent 历史 | 待补 UI 实测 | 未见普通会话统一管理 API | 低 | 视为独立能力面,不并入当前 lane 会话主模型 | 本次可见 MCP/CLI 未给统一读写入口 |
|
|
27
|
+
|
|
28
|
+
## B. 结论
|
|
29
|
+
|
|
30
|
+
### 1) 哪些能力可直接适配 StarWork
|
|
31
|
+
|
|
32
|
+
- **可直接适配(有官方入口)**
|
|
33
|
+
- 会话命名:可用 `cursor-app-control.rename_chat`。
|
|
34
|
+
- 会话继续:CLI 支持 `--resume [chatId]`、`--continue`(需认证)。
|
|
35
|
+
|
|
36
|
+
- **可降级适配(仅部分能力)**
|
|
37
|
+
- 会话 ID:可拿到“新建 chat 的官方 UUID”,但“当前 IDE 正在对话的会话 ID”没有稳定官方直出,需降级策略。
|
|
38
|
+
- 会话读取:可读取本地 transcript,但它属于实现细节路径,不建议作为唯一依赖。
|
|
39
|
+
|
|
40
|
+
### 2) 哪些只能人工操作
|
|
41
|
+
|
|
42
|
+
- 历史会话浏览/筛选/按项目检索:当前以 UI 为主(需后续补 UI 实测截图与步骤)。
|
|
43
|
+
- 若存在 `@Past Chats`,当前也更像 UI 能力,不具备可确认的稳定自动化接口。
|
|
44
|
+
|
|
45
|
+
### 3) 哪些不支持或不建议依赖
|
|
46
|
+
|
|
47
|
+
- 删除/归档/置顶:未发现官方 CLI/MCP 会话管理接口。
|
|
48
|
+
- 直接依赖 `state.vscdb` 等内部数据库:风险高(结构变更、锁冲突、隐私边界),不建议作为生产主路径。
|
|
49
|
+
|
|
50
|
+
### 4) StarWork 在 Cursor 中如何生成 `session_id`
|
|
51
|
+
|
|
52
|
+
建议分层策略:
|
|
53
|
+
|
|
54
|
+
1. **优先**:若通过官方入口获取到 chat ID(如 `create-chat` 返回的 UUID 或未来官方“当前会话 ID”接口),使用 `cursor:<uuid>`。
|
|
55
|
+
2. **降级**:无法直取当前会话 ID 时,使用当前工作区 `agent-transcripts/<uuid>/<uuid>.jsonl` 的 UUID 作为 `cursor_local:<uuid>`。
|
|
56
|
+
3. **兜底**:再不行则使用 `cursor_ephemeral:<timestamp>-<workspace-hash>`,并在 lane 元数据标记 `recoverability=weak`。
|
|
57
|
+
|
|
58
|
+
### 5) `multiagent bind --session-name` 应支持、降级还是跳过
|
|
59
|
+
|
|
60
|
+
- **应支持(默认开启)**:优先调用 `rename_chat`。
|
|
61
|
+
- **失败时降级**:提示用户手工改名,不阻塞 `bind` 主流程。
|
|
62
|
+
|
|
63
|
+
### 6) 三个命令的适配判断
|
|
64
|
+
|
|
65
|
+
- `multiagent status --host`:**适合实现**(可报告“有无官方改名/恢复接口、有无可读 transcript、认证状态”)。
|
|
66
|
+
- `multiagent continue <lane>`:**适合实现但需降级**(有 chatId 则 `--resume`,无则提示用户打开对应会话并加载 lane worklog)。
|
|
67
|
+
- `multiagent release --archive-session`:**不建议硬实现宿主会话归档**;建议改为“归档 lane 产物 + 提示用户手工处理 Cursor 会话”。
|
|
68
|
+
|
|
69
|
+
## C. 建议工作流(Cursor 中登记并交接一个 lane)
|
|
70
|
+
|
|
71
|
+
1. 在 lane `bind` 时记录:
|
|
72
|
+
- `host=cursor`
|
|
73
|
+
- `workspace`
|
|
74
|
+
- `session_id`(按上面的优先/降级策略)
|
|
75
|
+
- `session_title`(若可用则调用 `rename_chat`)
|
|
76
|
+
2. 工作中持续写入 StarWork lane worklog(决策、变更、待办、阻塞)。
|
|
77
|
+
3. 需要续作时:
|
|
78
|
+
- 有 `chatId`:尝试 `cursor agent --resume <chatId>`(或宿主 UI 打开对应会话)。
|
|
79
|
+
- 无 `chatId`:按 lane worklog 在新会话冷启动恢复。
|
|
80
|
+
4. `release` 时:
|
|
81
|
+
- 强制完成 StarWork 侧归档(worklog/交付物/状态)。
|
|
82
|
+
- 对 Cursor 会话仅给“手工清理建议”(删除/归档/置顶若 UI 可用则手工处理)。
|
|
83
|
+
|
|
84
|
+
## 补充证据清单(关键命令与路径)
|
|
85
|
+
|
|
86
|
+
- 版本:
|
|
87
|
+
- `cursor --version` → `3.6.31`
|
|
88
|
+
- CLI 会话相关帮助:
|
|
89
|
+
- `cursor agent --help`(含 `--resume [chatId]`、`--continue`、`create-chat`、`ls`、`resume`)
|
|
90
|
+
- `cursor agent resume --help`
|
|
91
|
+
- `cursor agent create-chat --help`
|
|
92
|
+
- CLI 实测:
|
|
93
|
+
- `cursor agent create-chat` 返回 UUID:`5dfbb962-1678-4577-a865-61c754fcf9cc`
|
|
94
|
+
- `cursor agent --print --continue "测试"` → `No previous chats found.`
|
|
95
|
+
- `cursor agent --print --resume <id> ...`(在未登录状态提示认证)
|
|
96
|
+
- MCP 能力描述:
|
|
97
|
+
- `~/.cursor/projects/.../mcps/cursor-app-control/tools/rename_chat.json`
|
|
98
|
+
- `~/.cursor/projects/.../mcps/cursor-app-control/INSTRUCTIONS.md`
|
|
99
|
+
- 本地只读路径取证:
|
|
100
|
+
- `~/.cursor/projects/.../agent-transcripts/<uuid>/<uuid>.jsonl`
|
|
101
|
+
- `~/Library/Application Support/Cursor/User/globalStorage/state.vscdb`(仅识别存在,不做写入/改写)
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# 宿主软件自动会话控制能力支持表
|
|
2
|
+
|
|
3
|
+
依据 `product/docs/multiagent/` 下的调研结果整理。
|
|
4
|
+
|
|
5
|
+
这里的“支持”表示 StarWork 可以让工具自动执行;“不支持”表示需要用户在宿主软件里手动操作。
|
|
6
|
+
|
|
7
|
+
| 宿主软件 | 识别当前会话 | 自动命名会话 | 自动列出会话 | 自动读取历史 | 自动向其他会话发指令 | 自动归档会话 | 自动置顶会话 |
|
|
8
|
+
| --- | --- | --- | --- | --- | --- | --- | --- |
|
|
9
|
+
| Codex App / Desktop | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
|
|
10
|
+
| Claude Code | 支持 | 不支持 | 不支持 | 支持 | 不支持 | 不支持 | 不支持 |
|
|
11
|
+
| Cursor | 不支持 | 支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 |
|
|
12
|
+
| Trae IDE | 支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 |
|
|
13
|
+
| Trae Solo App | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 |
|
|
14
|
+
|
|
15
|
+
## 标记说明
|
|
16
|
+
|
|
17
|
+
| 标记 | 含义 |
|
|
18
|
+
| --- | --- |
|
|
19
|
+
| 支持 | StarWork 可以让工具自动完成,不需要用户手动去宿主软件里操作 |
|
|
20
|
+
| 不支持 | StarWork 不能自动完成,需要用户自己在宿主软件里手动操作 |
|
|
@@ -0,0 +1,353 @@
|
|
|
1
|
+
# Trae 会话管理能力调研结果
|
|
2
|
+
|
|
3
|
+
## 调研元信息
|
|
4
|
+
|
|
5
|
+
- **Trae 版本**: Trae CN 3.3.43 (Build 2.3.17432, VS Code 1.107.1)
|
|
6
|
+
- **操作系统**: macOS 26.5 (Darwin)
|
|
7
|
+
- **调研日期**: 2026-06-01
|
|
8
|
+
- **调研方式**: 在当前 Trae 原生客户端内通过文件系统探索、环境变量检查、数据库读取、日志分析等方式实测
|
|
9
|
+
- **当前会话 ID**: `69e0a3b259b29ff710cfc441`
|
|
10
|
+
- **当前 Agent**: `solo_coder` (Agent 模式)
|
|
11
|
+
- **当前模型**: `deepseek//deepseek-v4-pro`
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## 能力矩阵
|
|
16
|
+
|
|
17
|
+
| 能力 | UI 支持 | 可编程支持 | 稳定性 | StarWork 适配建议 | 证据 |
|
|
18
|
+
|---|---|---|---|---|---|
|
|
19
|
+
| 获取当前会话 ID | 不直接显示 | 可读: workspaceStorage `state.vscdb` 中的 `icube_session_agent_map` | 稳定 (24 字符 hex,跨重启持久) | **可适配**: 从 `state.vscdb` 安全读取 `icube_session_agent_map`,取当前 session_id | `state.vscdb` key `icube_session_agent_map` = `{"69e0a3b259b29ff710cfc441": "solo_coder"}` |
|
|
20
|
+
| 当前会话改名 | 不支持手动改名 | 不支持 | 自动生成标题 | **降级适配**: 无手动改名入口;StarWork 应使用自动生成标题或自行维护 lane 名称映射 | 日志显示 `generate_session_title` → "开始 Trae Session 管理研究",仅在首条消息触发 |
|
|
21
|
+
| 列出历史会话 | UI 历史面板 | 可读: globalStorage `state.vscdb` 中 `all_session_badges_*` 键,以及 snapshot 目录列表 | 稳定 | **可适配**: 通过 `all_session_badges_*` 和 snapshot 目录枚举历史会话 ID | globalStorage `state.vscdb` 含 11 个 `all_session_badges_*` 键;snapshot 目录含 13 个历史会话 |
|
|
22
|
+
| 读取历史会话 | UI 可打开查看 | 加密数据库不可直接读;session 元数据可从 `state.vscdb` 读取 | 稳定 (UI) / 受限 (编程) | **降级适配**: 无法编程读取完整消息;可从 state.vscdb 读取 session → agent/model 映射 | `2103808520375648_ai-chat:sessionRelation:modelMap` 记录 session 模型映射 |
|
|
23
|
+
| 继续历史会话 | UI 可继续对话 | 内部 `ChatService::get_sessions` 方法存在,但不对外暴露 API | 稳定 (UI) | **降级适配**: 只能通过 UI 操作继续;StarWork 可提示用户手动恢复 | 日志含 `[ChatService] get_sessions cost time` 调用 |
|
|
24
|
+
| 导出会话 | UI 不支持导出 | 不支持 | 不支持 | **降级适配**: 无导出功能;StarWork 需自行维护 worklog 作为替代 | 所有 AI agent service 中未发现 export 相关方法 |
|
|
25
|
+
| 删除会话 | UI 可能支持 (未在当前环境确认) | 不支持 (无 delete 服务) | 不确定 | **不建议适配**: 不可编程,不可恢复 | 未发现 delete_session 服务;`snapshot_clean_up` 仅做自动清理 |
|
|
26
|
+
| 归档会话 | 不支持 | 不支持 | 不支持 | **降级适配**: 无归档功能;StarWork 可通过 lane workspace 自行归档 | 未发现 archive 相关功能 |
|
|
27
|
+
| 置顶会话 | 不支持 | 不支持 | 不支持 | **降级适配**: 无置顶功能;StarWork 可自行维护 lane 优先级列表 | 未发现 pin/favorite/star 相关功能 |
|
|
28
|
+
| Chat / Builder 历史统一性 | 统一历史列表 | 可读: session→agent映射区分模式 | 稳定 | **可适配**: Chat(solo_coder) 和 Builder(dev_builder) 共享同一 session 存储系统 | `globalModeMap` = `{"solo_coder":0,"dev_builder":1}`; sessions 无类型区分 |
|
|
29
|
+
| Inline Chat 历史 | 当前环境未找到独立 Inline Chat 历史 | 未发现 | 不确定 | **跳过**: 当前调研未发现 Inline Chat 独立历史机制 | 所有 session 数据只区分 solo_coder/dev_builder agent |
|
|
30
|
+
| 长会话摘要 | 自动摘要 | 内部机制,不可编程调用 | 稳定 (内部) | **可适配**: 摘要参数可从日志提取;StarWork worklog 仍需显式交接 | `agentic_summary_config`: `kept_history_message_limit: 4`, `kept_history_token_limit: 8000` |
|
|
31
|
+
| checkpoint / revert | Snapshot v2 系统存在但活动会话中为空 | 内部 git repo 管理,不可编程调用 | 内部可用 | **降级适配**: snapshot v2 使用 git 管理文件版本,但为内部机制;StarWork 不适合直接依赖 | snapshot 目录含 git repos,但当前会话中为 `init empty branch`;`chat_turn_finish` 触发 snapshot 创建 |
|
|
32
|
+
| 本地会话存储 | 加密 SQLite (`database.db`) + `state.vscdb` + snapshot git repos | 可读: state.vscdb (SQLite), storage.json, 日志文件;不可读: database.db (加密) | 稳定 | **可适配 (限非加密部分)**: 安全读取 state.vscdb 和日志获取 session 元数据;禁止直接操作加密 database.db | database.db 文件类型为 `data` (加密),`file` 命令无法识别 |
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## 详细调研记录
|
|
37
|
+
|
|
38
|
+
### 1. 当前会话识别
|
|
39
|
+
|
|
40
|
+
**发现**:
|
|
41
|
+
- Trae 的每个 Chat 会话拥有一个 **24 字符的十六进制 ID**(如 `69e0a3b259b29ff710cfc441`),作为唯一标识符
|
|
42
|
+
- 该 ID 出现在多个位置:
|
|
43
|
+
- `icube_session_agent_map`:将 session_id 映射到 agent 名称
|
|
44
|
+
- snapshot 目录名:`ModularData/ai-agent/snapshot/<session_id>/`
|
|
45
|
+
- session badge:`all_session_badges_<session_id>`
|
|
46
|
+
- session 关系映射:`*_ai-chat:sessionRelation:modelMap`, `planModeMap`, `specModeMap`
|
|
47
|
+
- session_id 与项目绑定 (`project_id: 6a1cf80eaa1f10964208c0c8`),跨重启稳定
|
|
48
|
+
- **注意**: badge 键中 session_id 末尾数字与 snapshot 目录名差 1(badge 末尾 +1 → snapshot 目录名),这表明 badge ID 和实际 session ID 使用不同的编号规则
|
|
49
|
+
|
|
50
|
+
**当前会话的具体数据**:
|
|
51
|
+
```json
|
|
52
|
+
// icube_session_agent_map
|
|
53
|
+
{"69e0a3b259b29ff710cfc441": "solo_coder"}
|
|
54
|
+
|
|
55
|
+
// sessionRelation:modelMap
|
|
56
|
+
{"69e0a3b259b29ff710cfc441": {"solo_coder": "3_deepseek_deepseek//deepseek-v4-pro"}}
|
|
57
|
+
|
|
58
|
+
// planModeMap / specModeMap
|
|
59
|
+
{"69e0a3b259b29ff710cfc441": false}
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
**环境层级的 session 概念**:
|
|
63
|
+
- `ICUBE_CODEMAIN_SESSION`: `4743c340-9ecf-4502-9220-54fb98f740ed`(IDE 实例级别,非 Chat 会话)
|
|
64
|
+
- IPC `connect_session_id`: `eeeb24d7-35da-45c4-9837-f08a8082f651`(前端到后端 IPC 通道)
|
|
65
|
+
- Chat session_id: `69e0a3b259b29ff710cfc441`(StarWork 应使用此 ID)
|
|
66
|
+
|
|
67
|
+
**StarWork 适配建议**: 使用 Chat session_id(snapshot 目录名格式)作为 `trae:<session-id>`
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
### 2. 当前会话命名 / 改名
|
|
72
|
+
|
|
73
|
+
**发现**:
|
|
74
|
+
- Trae **自动生成** 会话标题,使用 `title_generation` 模型
|
|
75
|
+
- 当前会话首个用户消息后,系统通过 LLM 生成了标题: **"开始 Trae Session 管理研究"**
|
|
76
|
+
- 标题生成逻辑:`should_generate_title: true` 仅在首条消息时触发,后续消息 `should_generate_title: false`
|
|
77
|
+
- **没有发现手动重命名的 API 或 CLI 入口**
|
|
78
|
+
- 标题存储在加密的 `database.db` 中,无法直接读取
|
|
79
|
+
|
|
80
|
+
**日志证据**:
|
|
81
|
+
```
|
|
82
|
+
generate_session_title: session_id: "69e0a3b259b29ff710cfc441", generated_title: "开始 Trae Session 管理研究"
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
**StarWork 适配建议**:
|
|
86
|
+
- 无法实现类似 Codex `thread/name/set` 的 adapter
|
|
87
|
+
- StarWork 应自行维护 lane 名称到 session_id 的映射
|
|
88
|
+
- `multiagent bind --session-name` 在 Trae 中应降级:使用 StarWork 自定义名称,而非宿主改名
|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
92
|
+
### 3. 会话列表
|
|
93
|
+
|
|
94
|
+
**发现**:
|
|
95
|
+
- 历史会话可通过 globalStorage `state.vscdb` 中的 `all_session_badges_<id>` 键枚举
|
|
96
|
+
- 发现 **11 个历史会话** badge 记录(含跨项目)
|
|
97
|
+
- snapshot 目录中有 **13 个** 历史会话目录
|
|
98
|
+
- Session 列表按项目 (`project_id`) 区分,每个项目一个 badge(`all_session_badges_<project_id>`)
|
|
99
|
+
- 没有发现搜索、筛选、排序的程序化接口
|
|
100
|
+
|
|
101
|
+
**历史会话 badge ID 列表**:
|
|
102
|
+
```
|
|
103
|
+
69a2f6b7533394d391dcb3e1, 69a2f6e6533394d391dcb462, 69ac2677f59091d2d5dd8bdf,
|
|
104
|
+
69bebb812d77abdb6d257af4, 69ce1d843177ca6b4ca0b31e, 69ce257a3177ca6b4ca0b321,
|
|
105
|
+
69ce26e83177ca6b4ca0b427, 69e0864259b29ff710cfc320, 69e087c359b29ff710cfc3d2,
|
|
106
|
+
69e0a3b259b29ff710cfc440
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
**StarWork 适配建议**: 可安全读取 badge 键枚举 session,再配合 session 关系映射获取每个 session 的 agent 和模型信息
|
|
110
|
+
|
|
111
|
+
---
|
|
112
|
+
|
|
113
|
+
### 4. 会话读取
|
|
114
|
+
|
|
115
|
+
**发现**:
|
|
116
|
+
- 完整消息历史存储在加密的 `database.db` 中,**无法通过编程方式读取**
|
|
117
|
+
- 可通过 `state.vscdb` 安全读取 session **元数据**(agent、model、plan/spec mode 映射)
|
|
118
|
+
- ChatService 内部有 `get_messages`、`get_turns` 方法但不对外暴露 API
|
|
119
|
+
- `chat_message_query_limit: 400`, `history_query_limit: 300` 表明系统内部支持大量历史查询
|
|
120
|
+
|
|
121
|
+
**StarWork 适配建议**:
|
|
122
|
+
- 无法编程读取完整会话内容
|
|
123
|
+
- 可读取元数据用于 lane 状态追踪
|
|
124
|
+
- StarWork 应自行通过 worklog 机制记录关键上下文
|
|
125
|
+
|
|
126
|
+
---
|
|
127
|
+
|
|
128
|
+
### 5. 会话继续 / 恢复
|
|
129
|
+
|
|
130
|
+
**发现**:
|
|
131
|
+
- 内部 ChatService 有 `get_sessions` 方法和 session 缓存机制 (`build_server_history_ids_cache`)
|
|
132
|
+
- 消息同步机制:`SyncHistory notify_server_history_change`
|
|
133
|
+
- 从日志看,同一 session 内的多次消息(多个 trace_id)共享同一 session_id
|
|
134
|
+
- 会话继续能力仅通过 UI 提供,无程序化接口
|
|
135
|
+
|
|
136
|
+
**StarWork 适配建议**:
|
|
137
|
+
- `multiagent continue <lane>` 在 Trae 中应降级为人工操作提示
|
|
138
|
+
- 可引导用户在 Trae UI 中打开对应历史会话继续
|
|
139
|
+
- StarWork worklog 机制仍然是必需的显式交接手段
|
|
140
|
+
|
|
141
|
+
---
|
|
142
|
+
|
|
143
|
+
### 6. 会话导出
|
|
144
|
+
|
|
145
|
+
**发现**:
|
|
146
|
+
- 在所有 AI agent service 列表中未发现任何 export 相关服务
|
|
147
|
+
- AI agent 支持的服务: `agent`, `chat`, `ckg`, `commercial`, `configuration`, `healthcheck`, `model`, `privacy_mode`, `project`, `sandbox`, `snapshot`, `task`, `todo_list`
|
|
148
|
+
- 无 `export`、`download`、`backup` 等服务
|
|
149
|
+
- 用户可能可以手动选择和复制对话文本
|
|
150
|
+
|
|
151
|
+
**StarWork 适配建议**:
|
|
152
|
+
- 导出功能完全不可用
|
|
153
|
+
- StarWork 必须自行维护 worklog 作为会话内容记录
|
|
154
|
+
- lane workspace 的内容需要通过 worklog 手动填充
|
|
155
|
+
|
|
156
|
+
---
|
|
157
|
+
|
|
158
|
+
### 7. 会话删除、归档、置顶
|
|
159
|
+
|
|
160
|
+
**发现**:
|
|
161
|
+
- 未发现 `delete`、`archive`、`pin`、`favorite`、`star` 相关服务
|
|
162
|
+
- snapshot 系统有 `snapshot_clean_up: { enable: true }` 自动清理机制
|
|
163
|
+
- badge 键的删除功能未知
|
|
164
|
+
|
|
165
|
+
**StarWork 适配建议**:
|
|
166
|
+
- `multiagent release --archive-session` 无法在 Trae 中自动执行
|
|
167
|
+
- 可降级为人工提示:让用户手动清理/保留会话
|
|
168
|
+
- StarWork 可自行在 lane workspace 中维护归档状态
|
|
169
|
+
|
|
170
|
+
---
|
|
171
|
+
|
|
172
|
+
### 8. Chat / Builder / Inline Chat 的会话边界
|
|
173
|
+
|
|
174
|
+
**发现**:
|
|
175
|
+
- Trae 使用 agent 系统区分模式:
|
|
176
|
+
- `solo_coder` → Agent 模式(Chat)
|
|
177
|
+
- `dev_builder` → Builder 模式
|
|
178
|
+
- 全局模式映射:`{"solo_coder": 0, "dev_builder": 1}`
|
|
179
|
+
- **Chat 和 Builder 共享同一 session 存储系统**:session_id 格式相同,存储位置相同
|
|
180
|
+
- 从 Chat 切换到 Builder 会创建新 session(不同 agent),旧 session 历史保留
|
|
181
|
+
- Builder 特定模型有 `builder: true` 标记
|
|
182
|
+
- 未发现独立的 Inline Chat 历史机制
|
|
183
|
+
|
|
184
|
+
**StarWork 适配建议**:
|
|
185
|
+
- Trae 的 session 边界 = agent 边界
|
|
186
|
+
- StarWork lane 应对应到具体的 (project, session_id, agent_type) 三元组
|
|
187
|
+
- 跨 agent 模式切换意味着需要创建新的 lane
|
|
188
|
+
|
|
189
|
+
---
|
|
190
|
+
|
|
191
|
+
### 9. 代码修改回滚 / checkpoint
|
|
192
|
+
|
|
193
|
+
**发现**:
|
|
194
|
+
- Trae 有 **Snapshot v2** 系统,基于 git 管理每个 session 的文件变更
|
|
195
|
+
- snapshot 目录:`ModularData/ai-agent/snapshot/<session_id>/v2/.git`
|
|
196
|
+
- 当前状态:所有 snapshot repos 只有初始的 `init empty branch` 提交
|
|
197
|
+
- `chat_turn_finish` 触发 `create_new_version_v2` 创建新 snapshot
|
|
198
|
+
- 日志显示:`snapshot_v2: { enable_v2: true, force_double_write: false }`
|
|
199
|
+
- 有 `get_session_ai_touched_files` 方法追踪 AI 修改的文件
|
|
200
|
+
- 回滚能力仅限 Trae UI 内部使用,无程序化接口
|
|
201
|
+
|
|
202
|
+
**StarWork 适配建议**:
|
|
203
|
+
- Snapshot v2 是内部机制,StarWork **不建议**直接依赖
|
|
204
|
+
- checkpoint 与 chat history 是同一个系统(都绑定在 session_id 下)
|
|
205
|
+
- 不适合直接映射 lane 生命周期,因为:
|
|
206
|
+
- 不可编程触发 checkpoint
|
|
207
|
+
- 无法跨 session 对比
|
|
208
|
+
- 回滚粒度未知
|
|
209
|
+
|
|
210
|
+
---
|
|
211
|
+
|
|
212
|
+
### 10. 长会话上下文管理
|
|
213
|
+
|
|
214
|
+
**发现**:
|
|
215
|
+
- Trae 有自动摘要机制 (`agentic_summary_config`):
|
|
216
|
+
- `summary_message_token_limit: 2000` - 摘要最大 token
|
|
217
|
+
- `kept_history_token_limit: 8000` - 保留的历史 token 上限
|
|
218
|
+
- `kept_history_message_limit: 4` - 保留最近 4 条消息
|
|
219
|
+
- `minimum_current_turn_token_usage: 15000` - 触发摘要的最小当前轮 token
|
|
220
|
+
- 无手动摘要命令
|
|
221
|
+
- 摘要后旧消息是否可查看:取决于 UI 实现,无法确认
|
|
222
|
+
- 模型切换:session 绑定模型,切换模型不确定是否继承上下文
|
|
223
|
+
|
|
224
|
+
**StarWork 适配建议**:
|
|
225
|
+
- Trae 自动摘要不能替代 StarWork worklog
|
|
226
|
+
- worklog 需要做**显式交接**(摘要语义、关键结论、待办事项)
|
|
227
|
+
- StarWork 应在超过一定轮次后提示用户生成 worklog
|
|
228
|
+
|
|
229
|
+
---
|
|
230
|
+
|
|
231
|
+
### 11. Trae CLI / API / 本地存储
|
|
232
|
+
|
|
233
|
+
**发现**:
|
|
234
|
+
|
|
235
|
+
**CLI**: `trae-cn` 命令仅是 VSCode 风格的 IDE 启动器(`--diff`, `--goto`, `--new-window` 等),**不支持任何 session/chat 管理命令**
|
|
236
|
+
|
|
237
|
+
**API**: 无公开 session 管理 API。所有 AI agent 服务通过内部 IPC 通信,不对外暴露
|
|
238
|
+
|
|
239
|
+
**本地存储**:
|
|
240
|
+
| 存储文件 | 格式 | 可读性 | 内容 |
|
|
241
|
+
|---|---|---|---|
|
|
242
|
+
| `ModularData/ai-agent/database.db` | 加密 SQLite | **不可读** | 完整聊天历史、消息、标题 |
|
|
243
|
+
| `User/workspaceStorage/<hash>/state.vscdb` | SQLite | **可读** | session→agent 映射、model 设置、plan/spec mode |
|
|
244
|
+
| `User/globalStorage/state.vscdb` | SQLite | **可读** | 全局 session badges、用户偏好 |
|
|
245
|
+
| `User/globalStorage/storage.json` | JSON | **可读** | 窗口状态、最近文件 |
|
|
246
|
+
| `ModularData/ai-agent/snapshot/<id>/v2/.git` | Git repo | **可读** | 代码变更快照 (当前为空) |
|
|
247
|
+
| `ModularData/ai-agent/sandbox/<project>.json` | JSON | **可读** | 沙箱权限配置 |
|
|
248
|
+
| `logs/<date>/Modular/ai-agent_*_stdout.log` | 日志 | **可读** | 详细的会话生命周期日志 |
|
|
249
|
+
|
|
250
|
+
**StarWork 适配建议**:
|
|
251
|
+
- **可以安全读取**: `state.vscdb`、`storage.json`、日志文件
|
|
252
|
+
- **禁止直接操作**: `database.db`(加密,修改可能破坏 Trae 状态)
|
|
253
|
+
- StarWork adapter **不应**依赖加密数据库
|
|
254
|
+
- 建议 StarWork adapter 通过读取 state.vscdb 获取 session 元数据
|
|
255
|
+
|
|
256
|
+
---
|
|
257
|
+
|
|
258
|
+
## 结论
|
|
259
|
+
|
|
260
|
+
### A. 可直接适配 StarWork 的能力
|
|
261
|
+
|
|
262
|
+
1. **session_id 获取**: 从 `state.vscdb` 的 `icube_session_agent_map` 安全读取当前 session_id
|
|
263
|
+
2. **session 列表**: 从 `all_session_badges_*` 键和 snapshot 目录枚举历史 session
|
|
264
|
+
3. **session 元数据**: 从 `state.vscdb` 读取 session→agent、session→model 映射
|
|
265
|
+
4. **长会话摘要参数**: 从日志获取摘要配置,辅助 StarWork 判断 worklog 触发时机
|
|
266
|
+
5. **日志监控**: 从 AI agent stdout 日志获取 session 生命周期事件
|
|
267
|
+
|
|
268
|
+
### B. 只能降级适配(人工操作)的能力
|
|
269
|
+
|
|
270
|
+
1. **会话命名**: 无手动改名入口;StarWork 自行维护 lane 名称映射
|
|
271
|
+
2. **会话继续**: 只能通过 UI;StarWork 提示用户手动恢复
|
|
272
|
+
3. **会话导出**: 完全不可用;StarWork 使用 worklog 替代
|
|
273
|
+
4. **会话删除/归档/置顶**: 无程序化入口;StarWork 自行在 lane workspace 管理
|
|
274
|
+
5. **checkpoint/回滚**: 内部机制,不适合 StarWork 直接依赖
|
|
275
|
+
|
|
276
|
+
### C. 不支持或不建议依赖的能力
|
|
277
|
+
|
|
278
|
+
1. **直接操作 `database.db`**: 加密存储,修改可能破坏 Trae 状态
|
|
279
|
+
2. **Inline Chat 历史**: 未发现独立机制
|
|
280
|
+
3. **批量导出**: 不存在
|
|
281
|
+
4. **跨项目 session 管理**: session 与 project 绑定,无跨项目 API
|
|
282
|
+
|
|
283
|
+
### D. StarWork 在 Trae 中的 session_id 策略
|
|
284
|
+
|
|
285
|
+
**推荐格式**: `trae:<24-char-hex-session-id>`
|
|
286
|
+
|
|
287
|
+
获取方式:
|
|
288
|
+
1. 读取 workspaceStorage 的 `state.vscdb` → `icube_session_agent_map`
|
|
289
|
+
2. 取最后一个/唯一的 session_id
|
|
290
|
+
3. 验证该 session_id 在 snapshot 目录中存在
|
|
291
|
+
|
|
292
|
+
### E. `multiagent bind --session-name` 在 Trae 中的行为
|
|
293
|
+
|
|
294
|
+
**降级处理**: 不支持宿主改名,StarWork CLI 自行存储自定义名称到 lane 配置文件
|
|
295
|
+
|
|
296
|
+
### F. Trae 是否适合实现以下命令
|
|
297
|
+
|
|
298
|
+
| 命令 | 可行性 | 说明 |
|
|
299
|
+
|---|---|---|
|
|
300
|
+
| `multiagent status --host` | ✅ 可适配 | 可读取 state.vscdb 获取当前 session 状态 |
|
|
301
|
+
| `multiagent continue <lane>` | ⚠️ 降级 | 无法自动恢复;提示用户手动打开历史会话 |
|
|
302
|
+
| `multiagent release --archive-session` | ⚠️ 降级 | 无法自动归档;在 lane workspace 中标记并提示用户 |
|
|
303
|
+
|
|
304
|
+
---
|
|
305
|
+
|
|
306
|
+
## 建议工作流
|
|
307
|
+
|
|
308
|
+
### 在 Trae 中把当前会话登记为 StarWork lane 并完成交接
|
|
309
|
+
|
|
310
|
+
```
|
|
311
|
+
1. 用户在 Trae 中开启一个新 Chat 会话,执行 StarWork 任务
|
|
312
|
+
|
|
313
|
+
2. 登记 lane:
|
|
314
|
+
$ starwork multiagent bind --lane feature-research
|
|
315
|
+
→ CLI 读取 state.vscdb 获取当前 session_id: 69e0a3b259b29ff710cfc441
|
|
316
|
+
→ 在 _系统/协作/lanes/feature-research/lane.json 记录:
|
|
317
|
+
{
|
|
318
|
+
"host": "trae",
|
|
319
|
+
"session_id": "69e0a3b259b29ff710cfc441",
|
|
320
|
+
"agent": "solo_coder",
|
|
321
|
+
"model": "deepseek//deepseek-v4-pro",
|
|
322
|
+
"bound_at": "2026-06-01T11:10:30+08:00"
|
|
323
|
+
}
|
|
324
|
+
|
|
325
|
+
3. 执行任务过程中,AI 在 lane workspace 中记录 worklog:
|
|
326
|
+
_系统/协作/lanes/feature-research/workspace/worklog.md
|
|
327
|
+
|
|
328
|
+
4. 任务完成后 release:
|
|
329
|
+
$ starwork multiagent release feature-research
|
|
330
|
+
→ 标记 lane 为 released
|
|
331
|
+
→ 提示用户: "请在 Trae 中手动保留或清理会话 69e0a3b259b29ff710cfc441"
|
|
332
|
+
→ worklog 作为交接产物保留在 lane workspace
|
|
333
|
+
|
|
334
|
+
5. 其他 agent/lane 读取交接产物:
|
|
335
|
+
$ starwork multiagent status --lane feature-research
|
|
336
|
+
→ 输出 lane 状态、session 信息、worklog 摘要
|
|
337
|
+
```
|
|
338
|
+
|
|
339
|
+
---
|
|
340
|
+
|
|
341
|
+
## 附录:关键文件路径速查
|
|
342
|
+
|
|
343
|
+
| 用途 | 路径 |
|
|
344
|
+
|---|---|
|
|
345
|
+
| 主数据目录 | `~/Library/Application Support/Trae CN/` |
|
|
346
|
+
| AI agent 加密数据库 | `ModularData/ai-agent/database.db` |
|
|
347
|
+
| 工作区状态 (可读 SQLite) | `User/workspaceStorage/<hash>/state.vscdb` |
|
|
348
|
+
| 全局状态 (可读 SQLite) | `User/globalStorage/state.vscdb` |
|
|
349
|
+
| 全局配置 JSON | `User/globalStorage/storage.json` |
|
|
350
|
+
| session snapshot git repos | `ModularData/ai-agent/snapshot/<session_id>/v2/.git` |
|
|
351
|
+
| AI agent 日志 | `logs/<date>/Modular/ai-agent_*_stdout.log` |
|
|
352
|
+
| 沙箱配置 | `ModularData/ai-agent/sandbox/<project_id>.json` |
|
|
353
|
+
| 用户配置 | `~/.trae-cn/` |
|