@agents-inc/cli 0.50.0 → 0.60.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/CHANGELOG.md +155 -5
- package/dist/{chunk-YDYRAXSY.js → chunk-52M2XF3W.js} +6 -6
- package/dist/{chunk-2BWCR762.js → chunk-52XO4ULK.js} +6 -8
- package/dist/chunk-52XO4ULK.js.map +1 -0
- package/dist/{chunk-KQOU4POU.js → chunk-6G3KZSO4.js} +72 -51
- package/dist/chunk-6G3KZSO4.js.map +1 -0
- package/dist/{chunk-AWP5A6IM.js → chunk-6OWHQ7HM.js} +14 -12
- package/dist/chunk-6OWHQ7HM.js.map +1 -0
- package/dist/{chunk-D72AFYQR.js → chunk-7FMEMXJ4.js} +71 -71
- package/dist/chunk-7FMEMXJ4.js.map +1 -0
- package/dist/{chunk-RA2IPRO2.js → chunk-AJJJE7F7.js} +2 -2
- package/dist/{chunk-4R52TQ3K.js → chunk-AX3SZZWA.js} +2 -2
- package/dist/{chunk-U2W5SENM.js → chunk-BFD5NZQ4.js} +5 -4
- package/dist/chunk-BFD5NZQ4.js.map +1 -0
- package/dist/{chunk-HYEUETIC.js → chunk-BKJHAJQW.js} +2 -2
- package/dist/{chunk-HYEUETIC.js.map → chunk-BKJHAJQW.js.map} +1 -1
- package/dist/{chunk-DCE423KO.js → chunk-BMJZBLP7.js} +5 -5
- package/dist/{chunk-GBOW6FUW.js → chunk-BNQ5O6LE.js} +2 -2
- package/dist/{chunk-KAO3LKB5.js → chunk-C577AJE7.js} +3 -3
- package/dist/{chunk-C3Q43WLC.js → chunk-CIG7IKX3.js} +4 -4
- package/dist/chunk-EC3UJRKZ.js +1534 -0
- package/dist/chunk-EC3UJRKZ.js.map +1 -0
- package/dist/{chunk-I6IOGZSZ.js → chunk-EMIUPGPL.js} +11 -15
- package/dist/chunk-EMIUPGPL.js.map +1 -0
- package/dist/{chunk-4QWDB2MD.js → chunk-G6WHCALR.js} +127 -105
- package/dist/chunk-G6WHCALR.js.map +1 -0
- package/dist/{chunk-JFF7P4LC.js → chunk-H7WJK7NJ.js} +22 -6
- package/dist/chunk-H7WJK7NJ.js.map +1 -0
- package/dist/chunk-HGTC76BX.js +16 -0
- package/dist/chunk-HGTC76BX.js.map +1 -0
- package/dist/{chunk-RDWGYKDY.js → chunk-K6OLORQL.js} +6 -6
- package/dist/{chunk-XDSVV5GZ.js → chunk-KIWFEBKH.js} +41 -11
- package/dist/chunk-KIWFEBKH.js.map +1 -0
- package/dist/{chunk-WBHPCBVN.js → chunk-LWXRUR6B.js} +66 -94
- package/dist/chunk-LWXRUR6B.js.map +1 -0
- package/dist/{chunk-CMNKHDOX.js → chunk-MGNYPVOJ.js} +2 -2
- package/dist/{chunk-5FPIKTSA.js → chunk-MKCHLXMY.js} +7 -7
- package/dist/{chunk-U7X4V4HE.js → chunk-MMFQNJPE.js} +2 -2
- package/dist/{chunk-WLZHCM7O.js → chunk-MR6OBL3B.js} +3 -11
- package/dist/{chunk-WLZHCM7O.js.map → chunk-MR6OBL3B.js.map} +1 -1
- package/dist/{chunk-RFKDGJAJ.js → chunk-O6BA7Q2B.js} +6 -6
- package/dist/chunk-O6BA7Q2B.js.map +1 -0
- package/dist/chunk-OCEFD7V6.js +201 -0
- package/dist/chunk-OCEFD7V6.js.map +1 -0
- package/dist/{chunk-YZTWZVGX.js → chunk-PUT7X3GA.js} +1 -1
- package/dist/chunk-PUT7X3GA.js.map +1 -0
- package/dist/{chunk-WFFV254H.js → chunk-RO6LX3UV.js} +110 -82
- package/dist/chunk-RO6LX3UV.js.map +1 -0
- package/dist/{chunk-QYLCINGC.js → chunk-SDKCQXWE.js} +2 -2
- package/dist/{chunk-M3GQ2R3E.js → chunk-SEJF7CGJ.js} +19 -7
- package/dist/chunk-SEJF7CGJ.js.map +1 -0
- package/dist/{chunk-SPFHPHYL.js → chunk-SZRK3VOR.js} +24 -14
- package/dist/chunk-SZRK3VOR.js.map +1 -0
- package/dist/{chunk-QB5HHTAA.js → chunk-TC3NHO34.js} +28 -12
- package/dist/chunk-TC3NHO34.js.map +1 -0
- package/dist/{chunk-5L724R4C.js → chunk-TGLRDEEL.js} +8 -13
- package/dist/chunk-TGLRDEEL.js.map +1 -0
- package/dist/{chunk-HMSHB5EQ.js → chunk-TZXYBG3R.js} +3544 -3037
- package/dist/chunk-TZXYBG3R.js.map +1 -0
- package/dist/{chunk-PGY5XROM.js → chunk-VR3CDXDT.js} +2 -6
- package/dist/chunk-VR3CDXDT.js.map +1 -0
- package/dist/{chunk-5FCHJLM7.js → chunk-WF6RM73R.js} +252 -38
- package/dist/chunk-WF6RM73R.js.map +1 -0
- package/dist/{chunk-3VOL4WEG.js → chunk-WYVDNGJB.js} +3 -3
- package/dist/{chunk-WJHFV6RI.js → chunk-X5EG4EFP.js} +2 -2
- package/dist/{chunk-JWYRXE6C.js → chunk-XUDTFI4M.js} +2 -2
- package/dist/{chunk-7LV4V6A4.js → chunk-YHCYKUA3.js} +14 -10
- package/dist/chunk-YHCYKUA3.js.map +1 -0
- package/dist/commands/build/marketplace.js +4 -4
- package/dist/commands/build/plugins.js +9 -7
- package/dist/commands/build/plugins.js.map +1 -1
- package/dist/commands/build/stack.js +13 -10
- package/dist/commands/build/stack.js.map +1 -1
- package/dist/commands/compile.js +42 -71
- package/dist/commands/compile.js.map +1 -1
- package/dist/commands/config/index.js +7 -5
- package/dist/commands/config/index.js.map +1 -1
- package/dist/commands/config/path.js +8 -6
- package/dist/commands/config/path.js.map +1 -1
- package/dist/commands/config/show.js +7 -5
- package/dist/commands/diff.js +9 -7
- package/dist/commands/diff.js.map +1 -1
- package/dist/commands/doctor.js +20 -16
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/edit.js +175 -79
- package/dist/commands/edit.js.map +1 -1
- package/dist/commands/eject.js +20 -41
- package/dist/commands/eject.js.map +1 -1
- package/dist/commands/import/skill.js +10 -18
- package/dist/commands/import/skill.js.map +1 -1
- package/dist/commands/info.js +21 -20
- package/dist/commands/info.js.map +1 -1
- package/dist/commands/init.js +32 -31
- package/dist/commands/list.js +8 -6
- package/dist/commands/list.js.map +1 -1
- package/dist/commands/new/agent.js +23 -11
- package/dist/commands/new/agent.js.map +1 -1
- package/dist/commands/new/marketplace.js +63 -46
- package/dist/commands/new/marketplace.js.map +1 -1
- package/dist/commands/new/skill.js +11 -9
- package/dist/commands/outdated.js +9 -7
- package/dist/commands/outdated.js.map +1 -1
- package/dist/commands/search.js +45 -35
- package/dist/commands/search.js.map +1 -1
- package/dist/commands/uninstall.js +93 -123
- package/dist/commands/uninstall.js.map +1 -1
- package/dist/commands/update.js +11 -9
- package/dist/commands/update.js.map +1 -1
- package/dist/commands/validate.js +23 -27
- package/dist/commands/validate.js.map +1 -1
- package/dist/components/common/confirm.test.js +4 -4
- package/dist/components/skill-search/skill-search.js +3 -3
- package/dist/components/wizard/category-grid.js +3 -3
- package/dist/components/wizard/category-grid.test.js +4 -4
- package/dist/components/wizard/category-grid.test.js.map +1 -1
- package/dist/components/wizard/checkbox-grid.js +5 -5
- package/dist/components/wizard/checkbox-grid.test.js +6 -6
- package/dist/components/wizard/domain-selection.js +12 -11
- package/dist/components/wizard/help-modal.js +2 -2
- package/dist/components/wizard/menu-item.js +1 -1
- package/dist/components/wizard/search-modal.js +2 -2
- package/dist/components/wizard/search-modal.test.js +3 -3
- package/dist/components/wizard/search-modal.test.js.map +1 -1
- package/dist/components/wizard/section-progress.js +2 -2
- package/dist/components/wizard/section-progress.test.js +4 -4
- package/dist/components/wizard/section-progress.test.js.map +1 -1
- package/dist/components/wizard/selection-card.js +2 -2
- package/dist/components/wizard/source-grid.js +4 -4
- package/dist/components/wizard/source-grid.test.js +5 -5
- package/dist/components/wizard/source-grid.test.js.map +1 -1
- package/dist/components/wizard/stack-selection.js +9 -8
- package/dist/components/wizard/step-agents.js +11 -10
- package/dist/components/wizard/step-agents.test.js +13 -12
- package/dist/components/wizard/step-agents.test.js.map +1 -1
- package/dist/components/wizard/step-build.js +11 -9
- package/dist/components/wizard/step-build.test.js +18 -22
- package/dist/components/wizard/step-build.test.js.map +1 -1
- package/dist/components/wizard/step-confirm.js +4 -4
- package/dist/components/wizard/step-confirm.test.js +83 -23
- package/dist/components/wizard/step-confirm.test.js.map +1 -1
- package/dist/components/wizard/step-refine.js +2 -2
- package/dist/components/wizard/step-refine.test.js +3 -3
- package/dist/components/wizard/step-settings.js +9 -7
- package/dist/components/wizard/step-settings.test.js +13 -11
- package/dist/components/wizard/step-settings.test.js.map +1 -1
- package/dist/components/wizard/step-sources.js +13 -11
- package/dist/components/wizard/step-sources.test.js +19 -17
- package/dist/components/wizard/step-sources.test.js.map +1 -1
- package/dist/components/wizard/step-stack.js +15 -14
- package/dist/components/wizard/step-stack.test.js +17 -16
- package/dist/components/wizard/step-stack.test.js.map +1 -1
- package/dist/components/wizard/view-title.js +2 -2
- package/dist/components/wizard/wizard-layout.js +10 -8
- package/dist/components/wizard/wizard-tabs.js +2 -2
- package/dist/components/wizard/wizard-tabs.test.js +2 -2
- package/dist/components/wizard/wizard.js +29 -27
- package/dist/config-exports.js +20 -0
- package/dist/config-exports.js.map +1 -0
- package/dist/hooks/init.js +34 -33
- package/dist/hooks/init.js.map +1 -1
- package/dist/loader-2O32KKAQ.js +19 -0
- package/dist/source-loader-A6B3NDI4.js +16 -0
- package/dist/source-loader-A6B3NDI4.js.map +1 -0
- package/dist/source-manager-Q7IQSGIX.js +18 -0
- package/dist/source-manager-Q7IQSGIX.js.map +1 -0
- package/dist/src/agents/meta/agent-summoner/workflow.md +3 -3
- package/dist/src/agents/meta/skill-summoner/critical-reminders.md +2 -2
- package/dist/src/agents/meta/skill-summoner/critical-requirements.md +1 -1
- package/dist/src/agents/meta/skill-summoner/intro.md +1 -1
- package/dist/src/agents/meta/skill-summoner/output-format.md +3 -3
- package/dist/src/agents/meta/skill-summoner/workflow.md +8 -8
- package/dist/stores/wizard-store.js +6 -5
- package/dist/stores/wizard-store.test.js +299 -59
- package/dist/stores/wizard-store.test.js.map +1 -1
- package/package.json +5 -1
- package/src/agents/meta/agent-summoner/workflow.md +3 -3
- package/src/agents/meta/skill-summoner/critical-reminders.md +2 -2
- package/src/agents/meta/skill-summoner/critical-requirements.md +1 -1
- package/src/agents/meta/skill-summoner/intro.md +1 -1
- package/src/agents/meta/skill-summoner/output-format.md +3 -3
- package/src/agents/meta/skill-summoner/workflow.md +8 -8
- package/src/schemas/metadata.schema.json +6 -0
- package/src/schemas/stacks.schema.json +1 -1
- package/config/skill-categories.yaml +0 -344
- package/config/skill-rules.yaml +0 -740
- package/config/stacks.yaml +0 -1864
- package/dist/chunk-26MXZUHU.js +0 -183
- package/dist/chunk-26MXZUHU.js.map +0 -1
- package/dist/chunk-2BWCR762.js.map +0 -1
- package/dist/chunk-4QWDB2MD.js.map +0 -1
- package/dist/chunk-5FCHJLM7.js.map +0 -1
- package/dist/chunk-5L724R4C.js.map +0 -1
- package/dist/chunk-7LV4V6A4.js.map +0 -1
- package/dist/chunk-AWP5A6IM.js.map +0 -1
- package/dist/chunk-D72AFYQR.js.map +0 -1
- package/dist/chunk-HMSHB5EQ.js.map +0 -1
- package/dist/chunk-I6IOGZSZ.js.map +0 -1
- package/dist/chunk-JFF7P4LC.js.map +0 -1
- package/dist/chunk-KQOU4POU.js.map +0 -1
- package/dist/chunk-M3GQ2R3E.js.map +0 -1
- package/dist/chunk-PGY5XROM.js.map +0 -1
- package/dist/chunk-QB5HHTAA.js.map +0 -1
- package/dist/chunk-RFKDGJAJ.js.map +0 -1
- package/dist/chunk-SPFHPHYL.js.map +0 -1
- package/dist/chunk-U2W5SENM.js.map +0 -1
- package/dist/chunk-UAD3SC27.js +0 -107
- package/dist/chunk-UAD3SC27.js.map +0 -1
- package/dist/chunk-WBHPCBVN.js.map +0 -1
- package/dist/chunk-WFFV254H.js.map +0 -1
- package/dist/chunk-XDSVV5GZ.js.map +0 -1
- package/dist/chunk-YZTWZVGX.js.map +0 -1
- package/dist/commands/config/get.js +0 -61
- package/dist/commands/config/get.js.map +0 -1
- package/dist/commands/config/set-project.js +0 -61
- package/dist/commands/config/set-project.js.map +0 -1
- package/dist/commands/config/unset-project.js +0 -57
- package/dist/commands/config/unset-project.js.map +0 -1
- package/dist/config/skill-categories.yaml +0 -344
- package/dist/config/skill-rules.yaml +0 -740
- package/dist/config/stacks.yaml +0 -1864
- package/dist/source-manager-BVB2SG73.js +0 -16
- /package/dist/{chunk-YDYRAXSY.js.map → chunk-52M2XF3W.js.map} +0 -0
- /package/dist/{chunk-RA2IPRO2.js.map → chunk-AJJJE7F7.js.map} +0 -0
- /package/dist/{chunk-4R52TQ3K.js.map → chunk-AX3SZZWA.js.map} +0 -0
- /package/dist/{chunk-DCE423KO.js.map → chunk-BMJZBLP7.js.map} +0 -0
- /package/dist/{chunk-GBOW6FUW.js.map → chunk-BNQ5O6LE.js.map} +0 -0
- /package/dist/{chunk-KAO3LKB5.js.map → chunk-C577AJE7.js.map} +0 -0
- /package/dist/{chunk-C3Q43WLC.js.map → chunk-CIG7IKX3.js.map} +0 -0
- /package/dist/{chunk-RDWGYKDY.js.map → chunk-K6OLORQL.js.map} +0 -0
- /package/dist/{chunk-CMNKHDOX.js.map → chunk-MGNYPVOJ.js.map} +0 -0
- /package/dist/{chunk-5FPIKTSA.js.map → chunk-MKCHLXMY.js.map} +0 -0
- /package/dist/{chunk-U7X4V4HE.js.map → chunk-MMFQNJPE.js.map} +0 -0
- /package/dist/{chunk-QYLCINGC.js.map → chunk-SDKCQXWE.js.map} +0 -0
- /package/dist/{chunk-3VOL4WEG.js.map → chunk-WYVDNGJB.js.map} +0 -0
- /package/dist/{chunk-WJHFV6RI.js.map → chunk-X5EG4EFP.js.map} +0 -0
- /package/dist/{chunk-JWYRXE6C.js.map → chunk-XUDTFI4M.js.map} +0 -0
- /package/dist/{source-manager-BVB2SG73.js.map → loader-2O32KKAQ.js.map} +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -9,6 +9,156 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
9
9
|
|
|
10
10
|
---
|
|
11
11
|
|
|
12
|
+
## [0.60.1] - 2026-03-08
|
|
13
|
+
|
|
14
|
+
**Type redundancy cleanup and test infrastructure improvements**
|
|
15
|
+
|
|
16
|
+
- `CategoryDomainMap`, `PluginConfigResult`, and 4 other types simplified with `Pick`/`Omit`/extends
|
|
17
|
+
- `TestSkill` derived from `ExtractedSkillMetadata`, dead alias fields removed, `writeTestSkill` options auto-derived
|
|
18
|
+
|
|
19
|
+
See [changelogs/0.60.1.md](./changelogs/0.60.1.md) for full details.
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## [0.60.0] - 2026-03-07
|
|
24
|
+
|
|
25
|
+
**Slug-based skill identity — R-04 Phase 1**
|
|
26
|
+
|
|
27
|
+
- `SkillSlug` union type replaces `SkillDisplayName` with compile-time checked slugs
|
|
28
|
+
- Aliases and per-skill rules removed — slugs derived from metadata, relationships use group-based declarations
|
|
29
|
+
- New relationship types: `CompatibilityGroup`, `SetupPair`, flat `Recommendation`
|
|
30
|
+
|
|
31
|
+
See [changelogs/0.60.0.md](./changelogs/0.60.0.md) for full details.
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## [0.59.0] - 2026-03-07
|
|
36
|
+
|
|
37
|
+
**Dual-scope agent installation with per-agent project/global scope**
|
|
38
|
+
|
|
39
|
+
- `AgentScopeConfig` replaces bare agent name arrays — each agent has its own scope
|
|
40
|
+
- Global installation detection in `init` command with project/global/cancel prompt
|
|
41
|
+
- D-37, D-65, B-09 completed
|
|
42
|
+
|
|
43
|
+
See [changelogs/0.59.0.md](./changelogs/0.59.0.md) for full details.
|
|
44
|
+
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
## [0.58.0] - 2026-03-06
|
|
48
|
+
|
|
49
|
+
**Per-skill scope toggle, S key badge, E2E fixes**
|
|
50
|
+
|
|
51
|
+
- S key toggles focused skill's scope (project/global) in build step with [P]/[G] badge
|
|
52
|
+
- Fix `new marketplace` / `new skill` failing in temp dirs (skip detectInstallation with --output)
|
|
53
|
+
- 28 E2E test failures fixed, test suite updated for SkillConfig[] format
|
|
54
|
+
|
|
55
|
+
See [changelogs/0.58.0.md](./changelogs/0.58.0.md) for full details.
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
## [0.57.0] - 2026-03-02
|
|
60
|
+
|
|
61
|
+
**Per-skill install mode, archive removal, mode migration**
|
|
62
|
+
|
|
63
|
+
- Install mode derived from per-skill source selections (`"local"`, `"plugin"`, `"mixed"`)
|
|
64
|
+
- Archive mechanism replaced with permanent delete — `deleteLocalSkill()` replaces archive/restore
|
|
65
|
+
- Mode migrator handles per-skill local↔plugin transitions in `cc edit`
|
|
66
|
+
|
|
67
|
+
See [changelogs/0.57.0.md](./changelogs/0.57.0.md) for full details.
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
## [0.56.1] - 2026-03-02
|
|
72
|
+
|
|
73
|
+
**Domain metadata cleanup, D-37 design doc update**
|
|
74
|
+
|
|
75
|
+
- `domain` now explicit in skill/agent metadata (no more category prefix inference)
|
|
76
|
+
- D-37 install mode redesign doc updated for config.ts, dropped `skillOverrides`
|
|
77
|
+
|
|
78
|
+
See [changelogs/0.56.1.md](./changelogs/0.56.1.md) for full details.
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
## [0.56.0] - 2026-03-02
|
|
83
|
+
|
|
84
|
+
**E2E test coverage, global config detection, pre-commit E2E hook**
|
|
85
|
+
|
|
86
|
+
- 350+ E2E tests covering all commands and wizard flows
|
|
87
|
+
- `agentsinc init` prompts when global config exists but no project config (D-65)
|
|
88
|
+
- E2E tests added to pre-commit hook (D-63)
|
|
89
|
+
|
|
90
|
+
See [changelogs/0.56.0.md](./changelogs/0.56.0.md) for full details.
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
## [0.55.1] - 2026-03-01
|
|
95
|
+
|
|
96
|
+
**B-08 selective agent removal, D-70 rename Subcategory → Category**
|
|
97
|
+
|
|
98
|
+
- Fixed `uninstall` to selectively remove only config-listed agents instead of wiping the entire agents directory
|
|
99
|
+
- Renamed `Subcategory` type to `Category` across ~64 files — aligns with `category` field in `metadata.yaml`
|
|
100
|
+
|
|
101
|
+
See [changelogs/0.55.1.md](./changelogs/0.55.1.md) for full details.
|
|
102
|
+
|
|
103
|
+
---
|
|
104
|
+
|
|
105
|
+
## [0.55.0] - 2026-03-01
|
|
106
|
+
|
|
107
|
+
**Remove `--dry-run` flag**
|
|
108
|
+
|
|
109
|
+
- Removed `--dry-run` from all commands — wizard confirm step already previews, all operations are local/reversible
|
|
110
|
+
|
|
111
|
+
See [changelogs/0.55.0.md](./changelogs/0.55.0.md) for full details.
|
|
112
|
+
|
|
113
|
+
---
|
|
114
|
+
|
|
115
|
+
## [0.54.0] - 2026-03-01
|
|
116
|
+
|
|
117
|
+
**Config file renames, domain ordering fix**
|
|
118
|
+
|
|
119
|
+
- Renamed `ts-config-*` files to `config-*` — drop prefix now that all configs are TypeScript
|
|
120
|
+
- Fixed domain ordering mismatch — custom domains now appear first in all wizard views
|
|
121
|
+
|
|
122
|
+
See [changelogs/0.54.0.md](./changelogs/0.54.0.md) for full details.
|
|
123
|
+
|
|
124
|
+
---
|
|
125
|
+
|
|
126
|
+
## [0.53.0] - 2026-02-28
|
|
127
|
+
|
|
128
|
+
**Config-types regeneration, sectioned unions, required domain**
|
|
129
|
+
|
|
130
|
+
- Auto-regenerate `config-types.ts` on `new skill` and `new agent` creation
|
|
131
|
+
- Sectioned `// Custom` / `// Marketplace` comments in generated union types
|
|
132
|
+
- Domain now required on all skill metadata — never inferred from category prefix
|
|
133
|
+
|
|
134
|
+
See [changelogs/0.53.0.md](./changelogs/0.53.0.md) for full details.
|
|
135
|
+
|
|
136
|
+
---
|
|
137
|
+
|
|
138
|
+
## [0.52.0] - 2026-02-28
|
|
139
|
+
|
|
140
|
+
**Generated config types, remove defineConfig() runtime dependency**
|
|
141
|
+
|
|
142
|
+
- Generated `config-types.ts` gives users editor autocomplete with zero dependencies
|
|
143
|
+
- Config output uses `satisfies ProjectConfig` instead of `defineConfig()` wrapper
|
|
144
|
+
- Fixes root cause of B-08 (uninstall failing due to jiti import resolution)
|
|
145
|
+
|
|
146
|
+
See [changelogs/0.52.0.md](./changelogs/0.52.0.md) for full details.
|
|
147
|
+
|
|
148
|
+
---
|
|
149
|
+
|
|
150
|
+
## [0.51.0] - 2026-02-28
|
|
151
|
+
|
|
152
|
+
**Install scope tracking, global test isolation**
|
|
153
|
+
|
|
154
|
+
- Add `installScope` to wizard store — track project vs global scope through wizard flow
|
|
155
|
+
- Global `vitest.setup.ts` mocks `os.homedir()` to prevent real global config from leaking into tests
|
|
156
|
+
- Fix 63 test failures across 16 files caused by global config fallback
|
|
157
|
+
|
|
158
|
+
See [changelogs/0.51.0.md](./changelogs/0.51.0.md) for full details.
|
|
159
|
+
|
|
160
|
+
---
|
|
161
|
+
|
|
12
162
|
## [0.50.0] - 2026-02-27
|
|
13
163
|
|
|
14
164
|
**Pre-1.0 cleanup — agent.yaml rename, expert mode removal, scroll hook extraction, DRY consolidation**
|
|
@@ -164,9 +314,9 @@ See [changelogs/0.41.0.md](./changelogs/0.41.0.md) for full details.
|
|
|
164
314
|
|
|
165
315
|
## [0.40.0] - 2026-02-19
|
|
166
316
|
|
|
167
|
-
**Domain-prefix all
|
|
317
|
+
**Domain-prefix all category keys (D-31), add category enum to metadata schema (D-32)**
|
|
168
318
|
|
|
169
|
-
- Rename all 33 bare
|
|
319
|
+
- Rename all 33 bare category keys to domain-prefixed form (e.g., `framework` → `web-framework`, `methodology` → `shared-methodology`)
|
|
170
320
|
- Add strict category enum validation to metadata schema
|
|
171
321
|
- Simplify `extractSubcategoryFromPath` and `categoryPathSchema` (remove slash-separated paths)
|
|
172
322
|
- Update all YAML configs, JSON schemas, types, source code, and 30+ test files
|
|
@@ -179,7 +329,7 @@ See [changelogs/0.40.0.md](./changelogs/0.40.0.md) for full details.
|
|
|
179
329
|
|
|
180
330
|
**Merge meta-framework into framework, remove web-extras domain, grouped agents step**
|
|
181
331
|
|
|
182
|
-
- Merge `meta-framework`
|
|
332
|
+
- Merge `meta-framework` category into `framework` — meta-frameworks now conflict with base frameworks directly
|
|
183
333
|
- Remove `web-extras` domain and `parentDomain` field — all web categories under single `web` domain
|
|
184
334
|
- Rewrite agents step with domain-grouped layout (Web, API, CLI, Meta) and scroll support
|
|
185
335
|
- Simplify agent preselection from skill-based to domain-based lookup
|
|
@@ -195,7 +345,7 @@ See [changelogs/0.39.0.md](./changelogs/0.39.0.md) for full details.
|
|
|
195
345
|
|
|
196
346
|
- New "Agents" wizard step — users can toggle which agents to compile
|
|
197
347
|
- Agents preselected from actually selected skills (not just domains)
|
|
198
|
-
- Stacks schema enforces valid
|
|
348
|
+
- Stacks schema enforces valid category keys via enum
|
|
199
349
|
- Reusable CheckboxGrid component extracted from domain selection
|
|
200
350
|
|
|
201
351
|
See [changelogs/0.38.0.md](./changelogs/0.38.0.md) for full details.
|
|
@@ -328,7 +478,7 @@ Fixed `cc init` embedding wrong schema reference in generated config.yaml.
|
|
|
328
478
|
|
|
329
479
|
**Multi-skill stack assignments in project config**
|
|
330
480
|
|
|
331
|
-
Stack config now stores multiple skills per
|
|
481
|
+
Stack config now stores multiple skills per category with preloaded flags preserved through the full pipeline.
|
|
332
482
|
|
|
333
483
|
[-> Full release notes](./changelogs/0.29.2.md)
|
|
334
484
|
|
|
@@ -7,10 +7,10 @@ import {
|
|
|
7
7
|
} from "./chunk-KUV24B5M.js";
|
|
8
8
|
import {
|
|
9
9
|
useRowScroll
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-WYVDNGJB.js";
|
|
11
11
|
import {
|
|
12
12
|
ViewTitle
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-MGNYPVOJ.js";
|
|
14
14
|
import {
|
|
15
15
|
useTextInput
|
|
16
16
|
} from "./chunk-U3IGFMCY.js";
|
|
@@ -19,14 +19,14 @@ import {
|
|
|
19
19
|
addSource,
|
|
20
20
|
getSourceSummary,
|
|
21
21
|
removeSource
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-TZXYBG3R.js";
|
|
23
23
|
import {
|
|
24
24
|
getErrorMessage,
|
|
25
25
|
verbose
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-LWXRUR6B.js";
|
|
27
27
|
import {
|
|
28
28
|
CLI_COLORS
|
|
29
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-6OWHQ7HM.js";
|
|
30
30
|
import {
|
|
31
31
|
init_esm_shims
|
|
32
32
|
} from "./chunk-DHET7RCE.js";
|
|
@@ -262,4 +262,4 @@ var StepSettings = ({
|
|
|
262
262
|
export {
|
|
263
263
|
StepSettings
|
|
264
264
|
};
|
|
265
|
-
//# sourceMappingURL=chunk-
|
|
265
|
+
//# sourceMappingURL=chunk-52M2XF3W.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
CLI_COLORS
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-6OWHQ7HM.js";
|
|
5
5
|
import {
|
|
6
6
|
init_esm_shims
|
|
7
7
|
} from "./chunk-DHET7RCE.js";
|
|
@@ -21,23 +21,21 @@ var GLOBAL_KEYS = {
|
|
|
21
21
|
]
|
|
22
22
|
};
|
|
23
23
|
var GLOBAL_TOGGLES = {
|
|
24
|
-
title: "
|
|
25
|
-
keys: [
|
|
26
|
-
{ key: "P", description: "Toggle plugin/local install mode" },
|
|
27
|
-
{ key: "?", description: "Toggle this help" }
|
|
28
|
-
]
|
|
24
|
+
title: "Toggles",
|
|
25
|
+
keys: [{ key: "?", description: "Toggle this help" }]
|
|
29
26
|
};
|
|
30
27
|
var BUILD_KEYS = {
|
|
31
28
|
title: "Build Step",
|
|
32
29
|
keys: [
|
|
33
30
|
{ key: "D", description: "Toggle compatibility labels" },
|
|
31
|
+
{ key: "S", description: "Toggle skill scope (project/global)" },
|
|
34
32
|
{ key: "A", description: "Accept stack defaults (stack path only)" },
|
|
35
33
|
{ key: "h/j/k/l", description: "Vim-style navigation" }
|
|
36
34
|
]
|
|
37
35
|
};
|
|
38
36
|
var SOURCES_KEYS = {
|
|
39
37
|
title: "Sources Step",
|
|
40
|
-
keys: [{ key: "
|
|
38
|
+
keys: [{ key: "S", description: "Toggle source settings" }]
|
|
41
39
|
};
|
|
42
40
|
var AGENTS_KEYS = {
|
|
43
41
|
title: "Agents Step",
|
|
@@ -86,4 +84,4 @@ var HelpModal = ({ currentStep }) => {
|
|
|
86
84
|
export {
|
|
87
85
|
HelpModal
|
|
88
86
|
};
|
|
89
|
-
//# sourceMappingURL=chunk-
|
|
87
|
+
//# sourceMappingURL=chunk-52XO4ULK.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/cli/components/wizard/help-modal.tsx"],"sourcesContent":["import { Box, Text } from \"ink\";\nimport React from \"react\";\nimport { CLI_COLORS } from \"../../consts.js\";\nimport type { WizardStep } from \"../../stores/wizard-store.js\";\n\ntype HelpSection = {\n title: string;\n keys: { key: string; description: string }[];\n};\n\nconst GLOBAL_KEYS: HelpSection = {\n title: \"Navigation\",\n keys: [\n { key: \"Arrow keys\", description: \"Move focus\" },\n { key: \"SPACE\", description: \"Toggle selection\" },\n { key: \"ENTER\", description: \"Confirm / continue\" },\n { key: \"ESC\", description: \"Go back\" },\n { key: \"TAB\", description: \"Jump to next section\" },\n ],\n};\n\nconst GLOBAL_TOGGLES: HelpSection = {\n title: \"Toggles\",\n keys: [{ key: \"?\", description: \"Toggle this help\" }],\n};\n\nconst BUILD_KEYS: HelpSection = {\n title: \"Build Step\",\n keys: [\n { key: \"D\", description: \"Toggle compatibility labels\" },\n { key: \"S\", description: \"Toggle skill scope (project/global)\" },\n { key: \"A\", description: \"Accept stack defaults (stack path only)\" },\n { key: \"h/j/k/l\", description: \"Vim-style navigation\" },\n ],\n};\n\nconst SOURCES_KEYS: HelpSection = {\n title: \"Sources Step\",\n keys: [{ key: \"S\", description: \"Toggle source settings\" }],\n};\n\nconst AGENTS_KEYS: HelpSection = {\n title: \"Agents Step\",\n keys: [],\n};\n\nconst STEP_SECTIONS: Partial<Record<WizardStep, HelpSection>> = {\n build: BUILD_KEYS,\n sources: SOURCES_KEYS,\n agents: AGENTS_KEYS,\n};\n\nconst KEY_COLUMN_WIDTH = 14;\n\ntype HelpSectionViewProps = {\n section: HelpSection;\n};\n\nconst HelpSectionView: React.FC<HelpSectionViewProps> = ({ section }) => (\n <Box flexDirection=\"column\" marginTop={1} marginBottom={1}>\n <Text bold>{section.title}</Text>\n {section.keys.map(({ key, description }) => (\n <Box key={key} marginTop={1}>\n <Box width={KEY_COLUMN_WIDTH}>\n <Text backgroundColor=\"black\" color={CLI_COLORS.UNFOCUSED}>\n {\" \"}\n {key}{\" \"}\n </Text>\n </Box>\n <Text>{description}</Text>\n </Box>\n ))}\n </Box>\n);\n\nexport type HelpModalProps = {\n currentStep: WizardStep;\n};\n\nexport const HelpModal: React.FC<HelpModalProps> = ({ currentStep }) => {\n const stepSection = STEP_SECTIONS[currentStep];\n\n return (\n <Box\n flexDirection=\"column\"\n borderStyle=\"single\"\n borderColor={CLI_COLORS.PRIMARY}\n paddingX={2}\n paddingY={1}\n marginTop={1}\n >\n <Text bold color={CLI_COLORS.PRIMARY}>\n Keyboard Shortcuts\n </Text>\n <Text> </Text>\n\n <HelpSectionView section={GLOBAL_KEYS} />\n <HelpSectionView section={GLOBAL_TOGGLES} />\n {stepSection && <HelpSectionView section={stepSection} />}\n\n <Text dimColor>Press ESC or ? to close</Text>\n </Box>\n );\n};\n"],"mappings":";;;;;;;;;AAAA;AAAA,SAAS,KAAK,YAAY;AA4DtB,cAIM,YAJN;AAlDJ,IAAM,cAA2B;AAAA,EAC/B,OAAO;AAAA,EACP,MAAM;AAAA,IACJ,EAAE,KAAK,cAAc,aAAa,aAAa;AAAA,IAC/C,EAAE,KAAK,SAAS,aAAa,mBAAmB;AAAA,IAChD,EAAE,KAAK,SAAS,aAAa,qBAAqB;AAAA,IAClD,EAAE,KAAK,OAAO,aAAa,UAAU;AAAA,IACrC,EAAE,KAAK,OAAO,aAAa,uBAAuB;AAAA,EACpD;AACF;AAEA,IAAM,iBAA8B;AAAA,EAClC,OAAO;AAAA,EACP,MAAM,CAAC,EAAE,KAAK,KAAK,aAAa,mBAAmB,CAAC;AACtD;AAEA,IAAM,aAA0B;AAAA,EAC9B,OAAO;AAAA,EACP,MAAM;AAAA,IACJ,EAAE,KAAK,KAAK,aAAa,8BAA8B;AAAA,IACvD,EAAE,KAAK,KAAK,aAAa,sCAAsC;AAAA,IAC/D,EAAE,KAAK,KAAK,aAAa,0CAA0C;AAAA,IACnE,EAAE,KAAK,WAAW,aAAa,uBAAuB;AAAA,EACxD;AACF;AAEA,IAAM,eAA4B;AAAA,EAChC,OAAO;AAAA,EACP,MAAM,CAAC,EAAE,KAAK,KAAK,aAAa,yBAAyB,CAAC;AAC5D;AAEA,IAAM,cAA2B;AAAA,EAC/B,OAAO;AAAA,EACP,MAAM,CAAC;AACT;AAEA,IAAM,gBAA0D;AAAA,EAC9D,OAAO;AAAA,EACP,SAAS;AAAA,EACT,QAAQ;AACV;AAEA,IAAM,mBAAmB;AAMzB,IAAM,kBAAkD,CAAC,EAAE,QAAQ,MACjE,qBAAC,OAAI,eAAc,UAAS,WAAW,GAAG,cAAc,GACtD;AAAA,sBAAC,QAAK,MAAI,MAAE,kBAAQ,OAAM;AAAA,EACzB,QAAQ,KAAK,IAAI,CAAC,EAAE,KAAK,YAAY,MACpC,qBAAC,OAAc,WAAW,GACxB;AAAA,wBAAC,OAAI,OAAO,kBACV,+BAAC,QAAK,iBAAgB,SAAQ,OAAO,WAAW,WAC7C;AAAA;AAAA,MACA;AAAA,MAAK;AAAA,OACR,GACF;AAAA,IACA,oBAAC,QAAM,uBAAY;AAAA,OAPX,GAQV,CACD;AAAA,GACH;AAOK,IAAM,YAAsC,CAAC,EAAE,YAAY,MAAM;AACtE,QAAM,cAAc,cAAc,WAAW;AAE7C,SACE;AAAA,IAAC;AAAA;AAAA,MACC,eAAc;AAAA,MACd,aAAY;AAAA,MACZ,aAAa,WAAW;AAAA,MACxB,UAAU;AAAA,MACV,UAAU;AAAA,MACV,WAAW;AAAA,MAEX;AAAA,4BAAC,QAAK,MAAI,MAAC,OAAO,WAAW,SAAS,gCAEtC;AAAA,QACA,oBAAC,QAAK,eAAC;AAAA,QAEP,oBAAC,mBAAgB,SAAS,aAAa;AAAA,QACvC,oBAAC,mBAAgB,SAAS,gBAAgB;AAAA,QACzC,eAAe,oBAAC,mBAAgB,SAAS,aAAa;AAAA,QAEvD,oBAAC,QAAK,UAAQ,MAAC,qCAAuB;AAAA;AAAA;AAAA,EACxC;AAEJ;","names":[]}
|
|
@@ -1,44 +1,44 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import {
|
|
3
|
-
WizardLayout
|
|
4
|
-
} from "./chunk-I6IOGZSZ.js";
|
|
5
2
|
import {
|
|
6
3
|
StepSettings
|
|
7
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-52M2XF3W.js";
|
|
8
5
|
import {
|
|
9
6
|
StepSources
|
|
10
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-SZRK3VOR.js";
|
|
11
8
|
import {
|
|
12
9
|
StepStack
|
|
13
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-MKCHLXMY.js";
|
|
11
|
+
import {
|
|
12
|
+
WizardLayout
|
|
13
|
+
} from "./chunk-EMIUPGPL.js";
|
|
14
14
|
import {
|
|
15
15
|
StepAgents
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-SEJF7CGJ.js";
|
|
17
17
|
import {
|
|
18
18
|
StepBuild
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-TC3NHO34.js";
|
|
20
20
|
import {
|
|
21
21
|
StepConfirm
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-KIWFEBKH.js";
|
|
23
23
|
import {
|
|
24
24
|
getStackName
|
|
25
|
-
} from "./chunk-
|
|
26
|
-
import {
|
|
27
|
-
cliTheme
|
|
28
|
-
} from "./chunk-JWYRXE6C.js";
|
|
25
|
+
} from "./chunk-BKJHAJQW.js";
|
|
29
26
|
import {
|
|
30
27
|
useWizardStore
|
|
31
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-WF6RM73R.js";
|
|
29
|
+
import {
|
|
30
|
+
cliTheme
|
|
31
|
+
} from "./chunk-XUDTFI4M.js";
|
|
32
32
|
import {
|
|
33
33
|
resolveAlias,
|
|
34
34
|
validateSelection
|
|
35
|
-
} from "./chunk-
|
|
35
|
+
} from "./chunk-TZXYBG3R.js";
|
|
36
36
|
import {
|
|
37
37
|
warn
|
|
38
|
-
} from "./chunk-
|
|
38
|
+
} from "./chunk-LWXRUR6B.js";
|
|
39
39
|
import {
|
|
40
40
|
CLI_COLORS
|
|
41
|
-
} from "./chunk-
|
|
41
|
+
} from "./chunk-6OWHQ7HM.js";
|
|
42
42
|
import {
|
|
43
43
|
init_esm_shims
|
|
44
44
|
} from "./chunk-DHET7RCE.js";
|
|
@@ -55,29 +55,39 @@ import { useRef } from "react";
|
|
|
55
55
|
function useWizardInitialization({
|
|
56
56
|
matrix,
|
|
57
57
|
initialStep,
|
|
58
|
-
initialInstallMode,
|
|
59
58
|
initialDomains,
|
|
60
59
|
initialAgents,
|
|
61
|
-
installedSkillIds
|
|
60
|
+
installedSkillIds,
|
|
61
|
+
installedSkillConfigs,
|
|
62
|
+
lockedSkillIds,
|
|
63
|
+
lockedAgentNames
|
|
62
64
|
}) {
|
|
63
65
|
const initialized = useRef(false);
|
|
64
66
|
if (!initialized.current) {
|
|
65
67
|
initialized.current = true;
|
|
66
68
|
if (initialStep) {
|
|
67
69
|
if (installedSkillIds?.length) {
|
|
68
|
-
useWizardStore.getState().populateFromSkillIds(
|
|
70
|
+
useWizardStore.getState().populateFromSkillIds(
|
|
71
|
+
installedSkillIds,
|
|
72
|
+
matrix.skills,
|
|
73
|
+
matrix.categories,
|
|
74
|
+
installedSkillConfigs
|
|
75
|
+
);
|
|
69
76
|
}
|
|
70
77
|
useWizardStore.setState({ step: initialStep, approach: "scratch" });
|
|
71
78
|
}
|
|
72
|
-
if (initialInstallMode) {
|
|
73
|
-
useWizardStore.setState({ installMode: initialInstallMode });
|
|
74
|
-
}
|
|
75
79
|
if (initialDomains?.length) {
|
|
76
80
|
useWizardStore.setState({ selectedDomains: initialDomains });
|
|
77
81
|
}
|
|
78
82
|
if (initialAgents?.length) {
|
|
79
83
|
useWizardStore.setState({ selectedAgents: initialAgents });
|
|
80
84
|
}
|
|
85
|
+
if (lockedSkillIds?.length || lockedAgentNames?.length) {
|
|
86
|
+
useWizardStore.setState({
|
|
87
|
+
...lockedSkillIds?.length && { lockedSkillIds },
|
|
88
|
+
...lockedAgentNames?.length && { lockedAgentNames }
|
|
89
|
+
});
|
|
90
|
+
}
|
|
81
91
|
}
|
|
82
92
|
}
|
|
83
93
|
|
|
@@ -95,10 +105,10 @@ function useBuildStepProps({
|
|
|
95
105
|
const allSelections = store.getAllSelectedTechnologies();
|
|
96
106
|
const activeDomain = currentDomain || effectiveDomains[0] || "web";
|
|
97
107
|
const onToggle = useCallback(
|
|
98
|
-
(
|
|
108
|
+
(categoryId, techId) => {
|
|
99
109
|
const domain = store.getCurrentDomain() || "web";
|
|
100
|
-
const cat = matrix.categories[
|
|
101
|
-
store.toggleTechnology(domain,
|
|
110
|
+
const cat = matrix.categories[categoryId];
|
|
111
|
+
store.toggleTechnology(domain, categoryId, techId, cat?.exclusive ?? true);
|
|
102
112
|
},
|
|
103
113
|
[store, matrix]
|
|
104
114
|
);
|
|
@@ -139,10 +149,12 @@ var Wizard = ({
|
|
|
139
149
|
marketplaceLabel,
|
|
140
150
|
logo,
|
|
141
151
|
initialStep,
|
|
142
|
-
initialInstallMode,
|
|
143
152
|
initialDomains,
|
|
144
153
|
initialAgents,
|
|
145
154
|
installedSkillIds,
|
|
155
|
+
installedSkillConfigs,
|
|
156
|
+
lockedSkillIds,
|
|
157
|
+
lockedAgentNames,
|
|
146
158
|
projectDir,
|
|
147
159
|
startupMessages
|
|
148
160
|
}) => {
|
|
@@ -156,15 +168,17 @@ var Wizard = ({
|
|
|
156
168
|
useWizardInitialization({
|
|
157
169
|
matrix,
|
|
158
170
|
initialStep,
|
|
159
|
-
initialInstallMode,
|
|
160
171
|
initialDomains,
|
|
161
172
|
initialAgents,
|
|
162
|
-
installedSkillIds
|
|
173
|
+
installedSkillIds,
|
|
174
|
+
installedSkillConfigs,
|
|
175
|
+
lockedSkillIds,
|
|
176
|
+
lockedAgentNames
|
|
163
177
|
});
|
|
164
178
|
const buildStepProps = useBuildStepProps({ store, matrix, installedSkillIds });
|
|
165
179
|
useInput((input, key) => {
|
|
166
180
|
if (store.showSettings) {
|
|
167
|
-
if (input === "
|
|
181
|
+
if (input === "s" || input === "S") {
|
|
168
182
|
store.toggleSettings();
|
|
169
183
|
}
|
|
170
184
|
return;
|
|
@@ -190,12 +204,23 @@ var Wizard = ({
|
|
|
190
204
|
store.setStep("confirm");
|
|
191
205
|
return;
|
|
192
206
|
}
|
|
193
|
-
if ((input === "
|
|
194
|
-
store.
|
|
207
|
+
if ((input === "s" || input === "S") && store.step === "build") {
|
|
208
|
+
const focused = store.focusedSkillId;
|
|
209
|
+
if (focused) {
|
|
210
|
+
store.toggleSkillScope(focused);
|
|
211
|
+
}
|
|
212
|
+
return;
|
|
213
|
+
}
|
|
214
|
+
if ((input === "s" || input === "S") && store.step === "agents") {
|
|
215
|
+
const focused = store.focusedAgentId;
|
|
216
|
+
if (focused) {
|
|
217
|
+
store.toggleAgentScope(focused);
|
|
218
|
+
}
|
|
195
219
|
return;
|
|
196
220
|
}
|
|
197
|
-
if (input === "
|
|
198
|
-
store.
|
|
221
|
+
if ((input === "s" || input === "S") && store.step === "sources") {
|
|
222
|
+
store.toggleSettings();
|
|
223
|
+
return;
|
|
199
224
|
}
|
|
200
225
|
});
|
|
201
226
|
const handleComplete = useCallback2(() => {
|
|
@@ -208,15 +233,7 @@ var Wizard = ({
|
|
|
208
233
|
allSkills = [...stack?.allSkillIds || []];
|
|
209
234
|
} else {
|
|
210
235
|
const techNames = store.getAllSelectedTechnologies();
|
|
211
|
-
allSkills = techNames.map((tech) =>
|
|
212
|
-
const resolved = resolveAlias(tech, matrix);
|
|
213
|
-
if (!matrix.skills[resolved]) {
|
|
214
|
-
warn(
|
|
215
|
-
`Technology '${tech}' could not be resolved to a skill ID - it may be missing from skill_aliases`
|
|
216
|
-
);
|
|
217
|
-
}
|
|
218
|
-
return resolved;
|
|
219
|
-
});
|
|
236
|
+
allSkills = techNames.map((tech) => resolveAlias(tech, matrix));
|
|
220
237
|
}
|
|
221
238
|
const methodologySkills = store.getDefaultMethodologySkills();
|
|
222
239
|
for (const skill of methodologySkills) {
|
|
@@ -224,15 +241,18 @@ var Wizard = ({
|
|
|
224
241
|
allSkills.push(skill);
|
|
225
242
|
}
|
|
226
243
|
}
|
|
244
|
+
const skillConfigs = allSkills.map((id) => {
|
|
245
|
+
const existing = store.skillConfigs.find((sc) => sc.id === id);
|
|
246
|
+
return existing ?? { id, scope: "project", source: "local" };
|
|
247
|
+
});
|
|
227
248
|
const validation = validateSelection(allSkills, matrix);
|
|
228
249
|
const result = {
|
|
229
|
-
|
|
250
|
+
skills: skillConfigs,
|
|
230
251
|
selectedAgents: store.selectedAgents,
|
|
252
|
+
agentConfigs: store.agentConfigs,
|
|
231
253
|
selectedStackId: store.selectedStackId,
|
|
232
254
|
domainSelections: store.domainSelections,
|
|
233
255
|
selectedDomains: store.selectedDomains,
|
|
234
|
-
sourceSelections: store.sourceSelections,
|
|
235
|
-
installMode: store.installMode,
|
|
236
256
|
cancelled: false,
|
|
237
257
|
validation
|
|
238
258
|
};
|
|
@@ -278,7 +298,7 @@ var Wizard = ({
|
|
|
278
298
|
return /* @__PURE__ */ jsx(StepAgents, { matrix });
|
|
279
299
|
case "confirm": {
|
|
280
300
|
const stackName = getStackName(store.selectedStackId, matrix);
|
|
281
|
-
const
|
|
301
|
+
const selectedSkills = store.getAllSelectedTechnologies();
|
|
282
302
|
return /* @__PURE__ */ jsx(
|
|
283
303
|
StepConfirm,
|
|
284
304
|
{
|
|
@@ -286,10 +306,11 @@ var Wizard = ({
|
|
|
286
306
|
stackName,
|
|
287
307
|
selectedDomains: store.selectedDomains,
|
|
288
308
|
domainSelections: store.domainSelections,
|
|
289
|
-
technologyCount,
|
|
290
|
-
skillCount:
|
|
309
|
+
technologyCount: selectedSkills.length,
|
|
310
|
+
skillCount: selectedSkills.length,
|
|
291
311
|
agentCount: store.selectedAgents.length,
|
|
292
|
-
|
|
312
|
+
skillConfigs: store.skillConfigs,
|
|
313
|
+
agentConfigs: store.agentConfigs,
|
|
293
314
|
onBack: store.goBack
|
|
294
315
|
}
|
|
295
316
|
);
|
|
@@ -321,4 +342,4 @@ var Wizard = ({
|
|
|
321
342
|
export {
|
|
322
343
|
Wizard
|
|
323
344
|
};
|
|
324
|
-
//# sourceMappingURL=chunk-
|
|
345
|
+
//# sourceMappingURL=chunk-6G3KZSO4.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/cli/components/wizard/wizard.tsx","../src/cli/components/hooks/use-wizard-initialization.ts","../src/cli/components/hooks/use-build-step-props.ts"],"sourcesContent":["import React, { useCallback } from \"react\";\nimport { Box, Text, useApp, useInput, useStdout } from \"ink\";\nimport { ThemeProvider } from \"@inkjs/ui\";\nimport { useWizardStore, type WizardStep } from \"../../stores/wizard-store.js\";\nimport { CLI_COLORS } from \"../../consts.js\";\nimport { cliTheme } from \"../themes/default.js\";\nimport { WizardLayout } from \"./wizard-layout.js\";\nimport { StepStack } from \"./step-stack.js\";\nimport { StepBuild } from \"./step-build.js\";\nimport { StepConfirm } from \"./step-confirm.js\";\nimport { StepSources } from \"./step-sources.js\";\nimport { StepSettings } from \"./step-settings.js\";\nimport { StepAgents } from \"./step-agents.js\";\nimport { resolveAlias, validateSelection } from \"../../lib/matrix/index.js\";\nimport type {\n AgentName,\n Domain,\n DomainSelections,\n MergedSkillsMatrix,\n SkillId,\n} from \"../../types/index.js\";\nimport type { AgentScopeConfig, SkillConfig } from \"../../types/config.js\";\nimport { getStackName } from \"./utils.js\";\nimport { warn, type StartupMessage } from \"../../utils/logger.js\";\nimport { useWizardInitialization } from \"../hooks/use-wizard-initialization.js\";\nimport { useBuildStepProps } from \"../hooks/use-build-step-props.js\";\n\nexport type WizardResultV2 = {\n skills: SkillConfig[];\n selectedAgents: AgentName[];\n agentConfigs: AgentScopeConfig[];\n selectedStackId: string | null;\n domainSelections: DomainSelections;\n selectedDomains: Domain[];\n cancelled: boolean;\n validation: {\n valid: boolean;\n errors: Array<{ message: string }>;\n warnings: Array<{ message: string }>;\n };\n};\n\ntype WizardProps = {\n matrix: MergedSkillsMatrix;\n onComplete: (result: WizardResultV2) => void;\n onCancel: () => void;\n version?: string;\n marketplaceLabel?: string;\n logo?: string;\n initialStep?: WizardStep;\n initialDomains?: Domain[];\n initialAgents?: AgentName[];\n installedSkillIds?: SkillId[];\n installedSkillConfigs?: SkillConfig[];\n lockedSkillIds?: SkillId[];\n lockedAgentNames?: AgentName[];\n projectDir?: string;\n startupMessages?: StartupMessage[];\n};\n\nconst MIN_TERMINAL_WIDTH = 80;\nconst MIN_TERMINAL_HEIGHT = 15;\n\nexport const Wizard: React.FC<WizardProps> = ({\n matrix,\n onComplete,\n onCancel,\n version,\n marketplaceLabel,\n logo,\n initialStep,\n initialDomains,\n initialAgents,\n installedSkillIds,\n installedSkillConfigs,\n lockedSkillIds,\n lockedAgentNames,\n projectDir,\n startupMessages,\n}) => {\n const store = useWizardStore();\n const { exit } = useApp();\n const { stdout } = useStdout();\n\n const terminalWidth = stdout.columns || MIN_TERMINAL_WIDTH;\n const terminalHeight = stdout.rows || MIN_TERMINAL_HEIGHT;\n const isNarrowTerminal = terminalWidth < MIN_TERMINAL_WIDTH;\n const isShortTerminal = terminalHeight < MIN_TERMINAL_HEIGHT;\n\n useWizardInitialization({\n matrix,\n initialStep,\n initialDomains,\n initialAgents,\n installedSkillIds,\n installedSkillConfigs,\n lockedSkillIds,\n lockedAgentNames,\n });\n\n const buildStepProps = useBuildStepProps({ store, matrix, installedSkillIds });\n\n useInput((input, key) => {\n // ESC is handled by step-settings.tsx's own useKeyboardNavigation hook\n if (store.showSettings) {\n if (input === \"s\" || input === \"S\") {\n store.toggleSettings();\n }\n return;\n }\n\n if (store.showHelp) {\n if (key.escape || input === \"?\") {\n store.toggleHelp();\n }\n return;\n }\n\n if (input === \"?\") {\n store.toggleHelp();\n return;\n }\n\n if (key.escape) {\n // At the initial stack/scratch selection (approach not yet set), ESC cancels the wizard.\n // StackSelection handles its own ESC via the onCancel prop.\n // Other steps that don't have their own escape handler use goBack.\n if (\n store.step !== \"build\" &&\n store.step !== \"confirm\" &&\n store.step !== \"sources\" &&\n store.step !== \"agents\" &&\n store.step !== \"stack\"\n ) {\n store.goBack();\n }\n return;\n }\n\n if ((input === \"a\" || input === \"A\") && store.step === \"build\" && store.selectedStackId) {\n store.setStackAction(\"defaults\");\n store.setStep(\"confirm\");\n return;\n }\n\n if ((input === \"s\" || input === \"S\") && store.step === \"build\") {\n const focused = store.focusedSkillId;\n if (focused) {\n store.toggleSkillScope(focused);\n }\n return;\n }\n\n if ((input === \"s\" || input === \"S\") && store.step === \"agents\") {\n const focused = store.focusedAgentId;\n if (focused) {\n store.toggleAgentScope(focused);\n }\n return;\n }\n\n if ((input === \"s\" || input === \"S\") && store.step === \"sources\") {\n store.toggleSettings();\n return;\n }\n });\n\n const handleComplete = useCallback(() => {\n let allSkills: SkillId[];\n\n if (store.selectedStackId && store.stackAction === \"defaults\") {\n const stack = matrix.suggestedStacks.find((s) => s.id === store.selectedStackId);\n if (!stack) {\n warn(`Stack not found in matrix: '${store.selectedStackId}'`);\n }\n allSkills = [...(stack?.allSkillIds || [])];\n } else {\n const techNames = store.getAllSelectedTechnologies();\n allSkills = techNames.map((tech) => resolveAlias(tech, matrix));\n }\n\n const methodologySkills = store.getDefaultMethodologySkills();\n for (const skill of methodologySkills) {\n if (!allSkills.includes(skill)) {\n allSkills.push(skill);\n }\n }\n\n const skillConfigs: SkillConfig[] = allSkills.map((id) => {\n const existing = store.skillConfigs.find((sc) => sc.id === id);\n return existing ?? { id, scope: \"project\" as const, source: \"local\" };\n });\n\n const validation = validateSelection(allSkills, matrix);\n\n const result: WizardResultV2 = {\n skills: skillConfigs,\n selectedAgents: store.selectedAgents,\n agentConfigs: store.agentConfigs,\n selectedStackId: store.selectedStackId,\n domainSelections: store.domainSelections,\n selectedDomains: store.selectedDomains,\n cancelled: false,\n validation,\n };\n\n onComplete(result);\n exit();\n }, [store, matrix, onComplete, exit]);\n\n const handleCancel = useCallback(() => {\n onCancel();\n exit();\n }, [onCancel, exit]);\n\n const renderStep = () => {\n switch (store.step) {\n case \"stack\":\n return <StepStack matrix={matrix} onCancel={handleCancel} />;\n\n case \"build\":\n return <StepBuild {...buildStepProps} />;\n\n case \"sources\": {\n if (store.showSettings) {\n return (\n <StepSettings\n projectDir={projectDir || process.cwd()}\n onClose={() => store.toggleSettings()}\n />\n );\n }\n return (\n <StepSources\n matrix={matrix}\n projectDir={projectDir}\n onContinue={() => {\n if (!initialAgents?.length) {\n store.preselectAgentsFromDomains();\n }\n store.setStep(\"agents\");\n }}\n onBack={store.goBack}\n />\n );\n }\n\n case \"agents\":\n return <StepAgents matrix={matrix} />;\n\n case \"confirm\": {\n const stackName = getStackName(store.selectedStackId, matrix);\n const selectedSkills = store.getAllSelectedTechnologies();\n return (\n <StepConfirm\n onComplete={handleComplete}\n stackName={stackName}\n selectedDomains={store.selectedDomains}\n domainSelections={store.domainSelections}\n technologyCount={selectedSkills.length}\n skillCount={selectedSkills.length}\n agentCount={store.selectedAgents.length}\n skillConfigs={store.skillConfigs}\n agentConfigs={store.agentConfigs}\n onBack={store.goBack}\n />\n );\n }\n\n default:\n return null;\n }\n };\n\n if (isNarrowTerminal || isShortTerminal) {\n const issue = isNarrowTerminal\n ? `too narrow (${terminalWidth} columns, need ${MIN_TERMINAL_WIDTH})`\n : `too short (${terminalHeight} rows, need ${MIN_TERMINAL_HEIGHT})`;\n\n return (\n <ThemeProvider theme={cliTheme}>\n <Box flexDirection=\"column\" padding={1}>\n <Text color={CLI_COLORS.WARNING}>Terminal {issue}. Please resize your terminal.</Text>\n </Box>\n </ThemeProvider>\n );\n }\n\n return (\n <ThemeProvider theme={cliTheme}>\n <WizardLayout\n version={version}\n marketplaceLabel={marketplaceLabel}\n logo={logo}\n startupMessages={startupMessages}\n >\n {renderStep()}\n </WizardLayout>\n </ThemeProvider>\n );\n};\n","import { useRef } from \"react\";\nimport { useWizardStore, type WizardStep } from \"../../stores/wizard-store.js\";\nimport type { SkillConfig } from \"../../types/config.js\";\nimport type { AgentName, Domain, MergedSkillsMatrix, SkillId } from \"../../types/index.js\";\n\ntype UseWizardInitializationOptions = {\n matrix: MergedSkillsMatrix;\n initialStep?: WizardStep;\n initialDomains?: Domain[];\n initialAgents?: AgentName[];\n installedSkillIds?: SkillId[];\n installedSkillConfigs?: SkillConfig[];\n lockedSkillIds?: SkillId[];\n lockedAgentNames?: AgentName[];\n};\n\n/**\n * Runs one-time wizard store initialization before the first render.\n * Populates step, approach, and skill selections from props.\n */\nexport function useWizardInitialization({\n matrix,\n initialStep,\n initialDomains,\n initialAgents,\n installedSkillIds,\n installedSkillConfigs,\n lockedSkillIds,\n lockedAgentNames,\n}: UseWizardInitializationOptions): void {\n const initialized = useRef(false);\n\n if (!initialized.current) {\n initialized.current = true;\n\n if (initialStep) {\n if (installedSkillIds?.length) {\n useWizardStore\n .getState()\n .populateFromSkillIds(\n installedSkillIds,\n matrix.skills,\n matrix.categories,\n installedSkillConfigs,\n );\n }\n useWizardStore.setState({ step: initialStep, approach: \"scratch\" });\n }\n // Restore saved domains from config, overriding the domains\n // derived by populateFromSkillIds\n if (initialDomains?.length) {\n useWizardStore.setState({ selectedDomains: initialDomains });\n }\n // Restore saved agents from config, overriding the default empty array\n if (initialAgents?.length) {\n useWizardStore.setState({ selectedAgents: initialAgents });\n }\n // Set locked IDs (D9: global items read-only in project context)\n if (lockedSkillIds?.length || lockedAgentNames?.length) {\n useWizardStore.setState({\n ...(lockedSkillIds?.length && { lockedSkillIds }),\n ...(lockedAgentNames?.length && { lockedAgentNames }),\n });\n }\n }\n}\n","import { useCallback } from \"react\";\nimport type { Domain, MergedSkillsMatrix, SkillId } from \"../../types/index.js\";\nimport type { WizardState } from \"../../stores/wizard-store.js\";\nimport type { StepBuildProps } from \"../wizard/step-build.js\";\n\ntype UseBuildStepPropsOptions = {\n store: WizardState;\n matrix: MergedSkillsMatrix;\n installedSkillIds?: SkillId[];\n};\n\nexport function useBuildStepProps({\n store,\n matrix,\n installedSkillIds,\n}: UseBuildStepPropsOptions): StepBuildProps {\n const currentDomain = store.getCurrentDomain();\n const defaultDomains: Domain[] = [\"web\"];\n const effectiveDomains =\n store.selectedDomains.length > 0 ? store.selectedDomains : defaultDomains;\n\n const allSelections = store.getAllSelectedTechnologies();\n\n const activeDomain: Domain = currentDomain || effectiveDomains[0] || \"web\";\n\n const onToggle = useCallback(\n (categoryId: Parameters<StepBuildProps[\"onToggle\"]>[0], techId: SkillId) => {\n const domain: Domain = store.getCurrentDomain() || \"web\";\n const cat = matrix.categories[categoryId];\n store.toggleTechnology(domain, categoryId, techId, cat?.exclusive ?? true);\n },\n [store, matrix],\n );\n\n const onContinue = useCallback(() => {\n if (!store.nextDomain()) {\n store.setStep(\"sources\");\n }\n }, [store]);\n\n const onBack = useCallback(() => {\n if (!store.prevDomain()) {\n store.goBack();\n }\n }, [store]);\n\n return {\n matrix,\n domain: activeDomain,\n selectedDomains: effectiveDomains,\n selections: store.domainSelections[activeDomain] || {},\n allSelections,\n showLabels: store.showLabels,\n installedSkillIds,\n onToggle,\n onToggleLabels: store.toggleShowLabels,\n onContinue,\n onBack,\n };\n}\n"],"mappings":"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","names":["useCallback","useCallback"]}
|
|
@@ -22,12 +22,11 @@ var DEFAULT_PLUGIN_NAME = "agents-inc";
|
|
|
22
22
|
var GLOBAL_INSTALL_ROOT = os.homedir();
|
|
23
23
|
var CACHE_DIR = path.join(os.homedir(), ".cache", DEFAULT_PLUGIN_NAME);
|
|
24
24
|
var CLI_BIN_NAME = "agentsinc";
|
|
25
|
-
var
|
|
26
|
-
var
|
|
27
|
-
var STACKS_FILE_PATH = "config/stacks.
|
|
25
|
+
var SKILL_CATEGORIES_PATH = "config/skill-categories.ts";
|
|
26
|
+
var SKILL_RULES_PATH = "config/skill-rules.ts";
|
|
27
|
+
var STACKS_FILE_PATH = "config/stacks.ts";
|
|
28
28
|
var SKILLS_DIR_PATH = "src/skills";
|
|
29
29
|
var LOCAL_SKILLS_PATH = ".claude/skills";
|
|
30
|
-
var ARCHIVED_SKILLS_DIR_NAME = "_archived";
|
|
31
30
|
var DIRS = {
|
|
32
31
|
agents: "src/agents",
|
|
33
32
|
skills: "src/skills",
|
|
@@ -40,10 +39,12 @@ var STANDARD_FILES = {
|
|
|
40
39
|
METADATA_YAML: "metadata.yaml",
|
|
41
40
|
METADATA_JSON: "metadata.json",
|
|
42
41
|
CONFIG_YAML: "config.yaml",
|
|
43
|
-
|
|
44
|
-
|
|
42
|
+
SKILL_CATEGORIES_TS: "skill-categories.ts",
|
|
43
|
+
SKILL_RULES_TS: "skill-rules.ts",
|
|
45
44
|
AGENT_METADATA_YAML: "metadata.yaml",
|
|
46
45
|
PLUGIN_JSON: "plugin.json",
|
|
46
|
+
CONFIG_TS: "config.ts",
|
|
47
|
+
CONFIG_TYPES_TS: "config-types.ts",
|
|
47
48
|
CLAUDE_MD: "CLAUDE.md",
|
|
48
49
|
REFERENCE_MD: "reference.md",
|
|
49
50
|
INTRO_MD: "intro.md",
|
|
@@ -130,10 +131,11 @@ var DEFAULT_BRANDING = {
|
|
|
130
131
|
NAME: "Agents Inc.",
|
|
131
132
|
TAGLINE: "AI-powered development tools"
|
|
132
133
|
};
|
|
133
|
-
var DEFAULT_PUBLIC_SOURCE_NAME = "
|
|
134
|
+
var DEFAULT_PUBLIC_SOURCE_NAME = "agents-inc";
|
|
134
135
|
var SOURCE_DISPLAY_NAMES = {
|
|
135
136
|
public: "Public",
|
|
136
|
-
local: "Local"
|
|
137
|
+
local: "Local",
|
|
138
|
+
"agents-inc": "Agents Inc"
|
|
137
139
|
};
|
|
138
140
|
var CLI_COLORS = {
|
|
139
141
|
PRIMARY: "cyan",
|
|
@@ -171,14 +173,14 @@ export {
|
|
|
171
173
|
PLUGIN_MANIFEST_DIR,
|
|
172
174
|
PLUGIN_MANIFEST_FILE,
|
|
173
175
|
DEFAULT_PLUGIN_NAME,
|
|
176
|
+
GLOBAL_INSTALL_ROOT,
|
|
174
177
|
CACHE_DIR,
|
|
175
178
|
CLI_BIN_NAME,
|
|
176
|
-
|
|
177
|
-
|
|
179
|
+
SKILL_CATEGORIES_PATH,
|
|
180
|
+
SKILL_RULES_PATH,
|
|
178
181
|
STACKS_FILE_PATH,
|
|
179
182
|
SKILLS_DIR_PATH,
|
|
180
183
|
LOCAL_SKILLS_PATH,
|
|
181
|
-
ARCHIVED_SKILLS_DIR_NAME,
|
|
182
184
|
DIRS,
|
|
183
185
|
STANDARD_FILES,
|
|
184
186
|
STANDARD_DIRS,
|
|
@@ -210,4 +212,4 @@ export {
|
|
|
210
212
|
ASCII_LOGO,
|
|
211
213
|
DEFAULT_PRESELECTED_SKILLS
|
|
212
214
|
};
|
|
213
|
-
//# sourceMappingURL=chunk-
|
|
215
|
+
//# sourceMappingURL=chunk-6OWHQ7HM.js.map
|