@agents-inc/cli 0.78.0 → 0.80.0
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 +23 -0
- package/README.md +2 -2
- package/dist/{chunk-XA7WF3BI.js → chunk-3C6AXGR7.js} +3 -3
- package/dist/{chunk-VDVLM3KB.js → chunk-3HWFTE3S.js} +8 -4
- package/dist/chunk-3HWFTE3S.js.map +1 -0
- package/dist/{chunk-7JQIMEUX.js → chunk-3SCIYMRK.js} +3 -3
- package/dist/{chunk-OOWNDQCG.js → chunk-3WDZKBCE.js} +6 -4
- package/dist/chunk-3WDZKBCE.js.map +1 -0
- package/dist/{chunk-FSK4TQX7.js → chunk-4R6I6A3U.js} +3225 -134
- package/dist/chunk-4R6I6A3U.js.map +1 -0
- package/dist/{chunk-MUCQ27HV.js → chunk-4R72372U.js} +2 -2
- package/dist/{chunk-Q755X6QF.js → chunk-4VFBRV76.js} +4 -4
- package/dist/{chunk-F4IZ3UAS.js → chunk-55AZIEK6.js} +4 -4
- package/dist/{chunk-XYPAOBBV.js → chunk-633YIZOU.js} +2 -2
- package/dist/{chunk-N2XGUAJU.js → chunk-6YJXWQCI.js} +2 -12
- package/dist/chunk-6YJXWQCI.js.map +1 -0
- package/dist/{chunk-32HX6UYI.js → chunk-BN73X3JN.js} +59 -2
- package/dist/chunk-BN73X3JN.js.map +1 -0
- package/dist/{chunk-B4C2S5LP.js → chunk-BORVYGIX.js} +17 -15
- package/dist/chunk-BORVYGIX.js.map +1 -0
- package/dist/{chunk-YFHVP3VA.js → chunk-F4VG5XWZ.js} +3 -3
- package/dist/{chunk-NKLNT7N7.js → chunk-H3NQGJMB.js} +2 -2
- package/dist/{chunk-QD3GQ2CH.js → chunk-II3ISVCE.js} +6 -5
- package/dist/chunk-II3ISVCE.js.map +1 -0
- package/dist/{chunk-FUWUCKES.js → chunk-LO4X32JC.js} +2 -2
- package/dist/{chunk-D4T3HHE7.js → chunk-MNJAF4K2.js} +2 -2
- package/dist/{chunk-KVRR4PEJ.js → chunk-NJCU7OC2.js} +5 -5
- package/dist/{chunk-U2KFFRRX.js → chunk-NZAJTLEK.js} +2 -2
- package/dist/{chunk-HANGA633.js → chunk-OBTC2FD7.js} +5 -5
- package/dist/chunk-OBTC2FD7.js.map +1 -0
- package/dist/{chunk-EO6KJI5D.js → chunk-PPBUSAKG.js} +913 -33
- package/dist/chunk-PPBUSAKG.js.map +1 -0
- package/dist/{chunk-OTMIGYBB.js → chunk-RTHAMTDE.js} +6 -6
- package/dist/{chunk-KQDGLEBF.js → chunk-TJXBRYM4.js} +10 -10
- package/dist/chunk-TJXBRYM4.js.map +1 -0
- package/dist/{chunk-7LBYURQR.js → chunk-TQ363UUH.js} +2 -2
- package/dist/{chunk-N34D3ROY.js → chunk-TXFQBYOX.js} +8 -5
- package/dist/chunk-TXFQBYOX.js.map +1 -0
- package/dist/{chunk-IFCASC6R.js → chunk-TZY7WNWO.js} +2 -2
- package/dist/{chunk-SJNUTUSJ.js → chunk-W6PIVGMH.js} +5 -5
- package/dist/{chunk-W46L2PXK.js → chunk-WZGROC5L.js} +2 -2
- package/dist/{chunk-OIHZ2YH3.js → chunk-XFL7EIM7.js} +7 -7
- package/dist/{chunk-7HGMFJ4Y.js → chunk-YDB5KXMG.js} +3 -3
- package/dist/commands/build/marketplace.js +4 -4
- package/dist/commands/build/plugins.js +8 -8
- package/dist/commands/build/stack.js +8 -8
- package/dist/commands/compile.js +8 -8
- package/dist/commands/config/index.js +8 -8
- package/dist/commands/config/path.js +7 -7
- package/dist/commands/config/show.js +8 -8
- package/dist/commands/diff.js +7 -7
- package/dist/commands/doctor.js +7 -7
- package/dist/commands/edit.js +23 -23
- package/dist/commands/eject.js +7 -7
- package/dist/commands/import/skill.js +7 -7
- package/dist/commands/info.js +7 -7
- package/dist/commands/init.js +23 -23
- package/dist/commands/list.js +7 -7
- package/dist/commands/new/agent.js +8 -8
- package/dist/commands/new/marketplace.js +9 -9
- package/dist/commands/new/skill.js +8 -8
- package/dist/commands/outdated.js +7 -7
- package/dist/commands/search.js +7 -7
- package/dist/commands/uninstall.js +7 -7
- package/dist/commands/update.js +8 -8
- package/dist/commands/validate.js +7 -7
- package/dist/components/wizard/category-grid.js +2 -2
- package/dist/components/wizard/category-grid.test.js +11 -11
- package/dist/components/wizard/domain-selection.js +9 -9
- package/dist/components/wizard/source-grid.js +2 -2
- package/dist/components/wizard/source-grid.test.js +11 -11
- package/dist/components/wizard/stack-selection.js +8 -8
- package/dist/components/wizard/step-agents.js +9 -9
- package/dist/components/wizard/step-agents.test.js +13 -13
- package/dist/components/wizard/step-agents.test.js.map +1 -1
- package/dist/components/wizard/step-build.js +9 -9
- package/dist/components/wizard/step-build.test.js +12 -12
- package/dist/components/wizard/step-confirm.js +4 -4
- package/dist/components/wizard/step-confirm.test.js +10 -10
- package/dist/components/wizard/step-settings.js +7 -7
- package/dist/components/wizard/step-settings.test.js +10 -10
- package/dist/components/wizard/step-sources.js +9 -9
- package/dist/components/wizard/step-sources.test.js +12 -12
- package/dist/components/wizard/step-stack.js +9 -12
- package/dist/components/wizard/step-stack.test.js +19 -111
- package/dist/components/wizard/step-stack.test.js.map +1 -1
- package/dist/components/wizard/wizard-layout.js +10 -10
- package/dist/components/wizard/wizard-tabs.js +1 -1
- package/dist/components/wizard/wizard-tabs.test.js +12 -23
- package/dist/components/wizard/wizard-tabs.test.js.map +1 -1
- package/dist/components/wizard/wizard.js +21 -21
- package/dist/config-exports.js +1 -1
- package/dist/hooks/init.js +23 -23
- package/dist/{loader-JMOO2A7C.js → loader-LI3EM4VG.js} +4 -4
- package/dist/{source-loader-D3VIG3GM.js → source-loader-TPUCZELX.js} +7 -7
- package/dist/source-manager-PJ5APXX2.js +19 -0
- package/dist/src/agents/meta/agent-summoner/workflow.md +10 -10
- package/dist/src/agents/meta/convention-keeper/critical-reminders.md +17 -0
- package/dist/src/agents/meta/convention-keeper/critical-requirements.md +15 -0
- package/dist/src/agents/meta/convention-keeper/examples.md +71 -0
- package/dist/src/agents/meta/convention-keeper/intro.md +11 -0
- package/dist/src/agents/meta/convention-keeper/metadata.yaml +12 -0
- package/dist/src/agents/meta/convention-keeper/output-format.md +134 -0
- package/dist/src/agents/meta/convention-keeper/workflow.md +258 -0
- package/dist/src/agents/meta/{documentor → scribe}/metadata.yaml +2 -2
- package/{src/agents/meta/documentor → dist/src/agents/meta/scribe}/workflow.md +1 -1
- package/dist/src/agents/planning/web-pm/workflow.md +1 -1
- package/dist/stores/wizard-store.js +7 -7
- package/dist/stores/wizard-store.test.js +19 -13
- package/dist/stores/wizard-store.test.js.map +1 -1
- package/package.json +1 -1
- package/src/agents/meta/agent-summoner/workflow.md +10 -10
- package/src/agents/meta/convention-keeper/critical-reminders.md +17 -0
- package/src/agents/meta/convention-keeper/critical-requirements.md +15 -0
- package/src/agents/meta/convention-keeper/examples.md +71 -0
- package/src/agents/meta/convention-keeper/intro.md +11 -0
- package/src/agents/meta/convention-keeper/metadata.yaml +12 -0
- package/src/agents/meta/convention-keeper/output-format.md +134 -0
- package/src/agents/meta/convention-keeper/workflow.md +258 -0
- package/src/agents/meta/{documentor → scribe}/metadata.yaml +2 -2
- package/{dist/src/agents/meta/documentor → src/agents/meta/scribe}/workflow.md +1 -1
- package/src/agents/planning/web-pm/workflow.md +1 -1
- package/dist/chunk-32HX6UYI.js.map +0 -1
- package/dist/chunk-B4C2S5LP.js.map +0 -1
- package/dist/chunk-EO6KJI5D.js.map +0 -1
- package/dist/chunk-FSK4TQX7.js.map +0 -1
- package/dist/chunk-HANGA633.js.map +0 -1
- package/dist/chunk-KQDGLEBF.js.map +0 -1
- package/dist/chunk-N2XGUAJU.js.map +0 -1
- package/dist/chunk-N34D3ROY.js.map +0 -1
- package/dist/chunk-OOWNDQCG.js.map +0 -1
- package/dist/chunk-QD3GQ2CH.js.map +0 -1
- package/dist/chunk-VDVLM3KB.js.map +0 -1
- package/dist/source-manager-FPYFJRR7.js +0 -19
- /package/dist/{chunk-XA7WF3BI.js.map → chunk-3C6AXGR7.js.map} +0 -0
- /package/dist/{chunk-7JQIMEUX.js.map → chunk-3SCIYMRK.js.map} +0 -0
- /package/dist/{chunk-MUCQ27HV.js.map → chunk-4R72372U.js.map} +0 -0
- /package/dist/{chunk-Q755X6QF.js.map → chunk-4VFBRV76.js.map} +0 -0
- /package/dist/{chunk-F4IZ3UAS.js.map → chunk-55AZIEK6.js.map} +0 -0
- /package/dist/{chunk-XYPAOBBV.js.map → chunk-633YIZOU.js.map} +0 -0
- /package/dist/{chunk-YFHVP3VA.js.map → chunk-F4VG5XWZ.js.map} +0 -0
- /package/dist/{chunk-NKLNT7N7.js.map → chunk-H3NQGJMB.js.map} +0 -0
- /package/dist/{chunk-FUWUCKES.js.map → chunk-LO4X32JC.js.map} +0 -0
- /package/dist/{chunk-D4T3HHE7.js.map → chunk-MNJAF4K2.js.map} +0 -0
- /package/dist/{chunk-KVRR4PEJ.js.map → chunk-NJCU7OC2.js.map} +0 -0
- /package/dist/{chunk-U2KFFRRX.js.map → chunk-NZAJTLEK.js.map} +0 -0
- /package/dist/{chunk-OTMIGYBB.js.map → chunk-RTHAMTDE.js.map} +0 -0
- /package/dist/{chunk-7LBYURQR.js.map → chunk-TQ363UUH.js.map} +0 -0
- /package/dist/{chunk-IFCASC6R.js.map → chunk-TZY7WNWO.js.map} +0 -0
- /package/dist/{chunk-SJNUTUSJ.js.map → chunk-W6PIVGMH.js.map} +0 -0
- /package/dist/{chunk-W46L2PXK.js.map → chunk-WZGROC5L.js.map} +0 -0
- /package/dist/{chunk-OIHZ2YH3.js.map → chunk-XFL7EIM7.js.map} +0 -0
- /package/dist/{chunk-7HGMFJ4Y.js.map → chunk-YDB5KXMG.js.map} +0 -0
- /package/dist/{loader-JMOO2A7C.js.map → loader-LI3EM4VG.js.map} +0 -0
- /package/dist/{source-loader-D3VIG3GM.js.map → source-loader-TPUCZELX.js.map} +0 -0
- /package/dist/{source-manager-FPYFJRR7.js.map → source-manager-PJ5APXX2.js.map} +0 -0
- /package/dist/src/agents/meta/{documentor → scribe}/critical-reminders.md +0 -0
- /package/dist/src/agents/meta/{documentor → scribe}/critical-requirements.md +0 -0
- /package/dist/src/agents/meta/{documentor → scribe}/examples.md +0 -0
- /package/dist/src/agents/meta/{documentor → scribe}/intro.md +0 -0
- /package/dist/src/agents/meta/{documentor → scribe}/output-format.md +0 -0
- /package/src/agents/meta/{documentor → scribe}/critical-reminders.md +0 -0
- /package/src/agents/meta/{documentor → scribe}/critical-requirements.md +0 -0
- /package/src/agents/meta/{documentor → scribe}/examples.md +0 -0
- /package/src/agents/meta/{documentor → scribe}/intro.md +0 -0
- /package/src/agents/meta/{documentor → scribe}/output-format.md +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
TEST_CATEGORIES
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-LO4X32JC.js";
|
|
5
5
|
import {
|
|
6
6
|
init_esm_shims
|
|
7
7
|
} from "./chunk-DHET7RCE.js";
|
|
@@ -73,4 +73,4 @@ export {
|
|
|
73
73
|
CLI_FRAMEWORK_CATEGORY,
|
|
74
74
|
FRAMEWORK_CATEGORY
|
|
75
75
|
};
|
|
76
|
-
//# sourceMappingURL=chunk-
|
|
76
|
+
//# sourceMappingURL=chunk-4R72372U.js.map
|
|
@@ -7,11 +7,11 @@ import {
|
|
|
7
7
|
loadConfigTypesDataInBackground,
|
|
8
8
|
regenerateConfigTypes,
|
|
9
9
|
resolveAuthor
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-XFL7EIM7.js";
|
|
11
11
|
import {
|
|
12
12
|
BaseCommand,
|
|
13
13
|
EXIT_CODES
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-TQ363UUH.js";
|
|
15
15
|
import {
|
|
16
16
|
directoryExists,
|
|
17
17
|
ensureDir,
|
|
@@ -19,7 +19,7 @@ import {
|
|
|
19
19
|
getErrorMessage,
|
|
20
20
|
verbose,
|
|
21
21
|
writeFile
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-633YIZOU.js";
|
|
23
23
|
import {
|
|
24
24
|
CLI_BIN_NAME,
|
|
25
25
|
DEFAULT_VERSION,
|
|
@@ -337,4 +337,4 @@ export {
|
|
|
337
337
|
generateSkillRulesTs,
|
|
338
338
|
NewSkill
|
|
339
339
|
};
|
|
340
|
-
//# sourceMappingURL=chunk-
|
|
340
|
+
//# sourceMappingURL=chunk-4VFBRV76.js.map
|
|
@@ -10,10 +10,10 @@ import {
|
|
|
10
10
|
} from "./chunk-K63OEZW7.js";
|
|
11
11
|
import {
|
|
12
12
|
SourceGrid
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-MNJAF4K2.js";
|
|
14
14
|
import {
|
|
15
15
|
useWizardStore
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-TXFQBYOX.js";
|
|
17
17
|
import {
|
|
18
18
|
HOTKEY_SET_ALL_LOCAL,
|
|
19
19
|
HOTKEY_SET_ALL_PLUGIN,
|
|
@@ -22,7 +22,7 @@ import {
|
|
|
22
22
|
import {
|
|
23
23
|
resolveAllSources,
|
|
24
24
|
searchExtraSources
|
|
25
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-XFL7EIM7.js";
|
|
26
26
|
import {
|
|
27
27
|
CLI_COLORS,
|
|
28
28
|
DEFAULT_BRANDING
|
|
@@ -168,4 +168,4 @@ var StepSources = ({ projectDir, onContinue, onBack }) => {
|
|
|
168
168
|
export {
|
|
169
169
|
StepSources
|
|
170
170
|
};
|
|
171
|
-
//# sourceMappingURL=chunk-
|
|
171
|
+
//# sourceMappingURL=chunk-55AZIEK6.js.map
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
CATEGORIES,
|
|
5
5
|
DOMAINS,
|
|
6
6
|
SKILL_SLUGS
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-BN73X3JN.js";
|
|
8
8
|
import {
|
|
9
9
|
KEBAB_CASE_PATTERN
|
|
10
10
|
} from "./chunk-FMYAYX6W.js";
|
|
@@ -739,4 +739,4 @@ export {
|
|
|
739
739
|
validateNestingDepth,
|
|
740
740
|
warnUnknownFields
|
|
741
741
|
};
|
|
742
|
-
//# sourceMappingURL=chunk-
|
|
742
|
+
//# sourceMappingURL=chunk-633YIZOU.js.map
|
|
@@ -1,16 +1,10 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
StackSelection
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-3WDZKBCE.js";
|
|
5
5
|
import {
|
|
6
6
|
useMeasuredHeight
|
|
7
7
|
} from "./chunk-K77I4XGL.js";
|
|
8
|
-
import {
|
|
9
|
-
DomainSelection
|
|
10
|
-
} from "./chunk-QD3GQ2CH.js";
|
|
11
|
-
import {
|
|
12
|
-
useWizardStore
|
|
13
|
-
} from "./chunk-N34D3ROY.js";
|
|
14
8
|
import {
|
|
15
9
|
init_esm_shims
|
|
16
10
|
} from "./chunk-DHET7RCE.js";
|
|
@@ -20,15 +14,11 @@ init_esm_shims();
|
|
|
20
14
|
import { Box } from "ink";
|
|
21
15
|
import { jsx } from "react/jsx-runtime";
|
|
22
16
|
var StepStack = ({ onCancel }) => {
|
|
23
|
-
const { approach } = useWizardStore();
|
|
24
17
|
const { ref: containerRef, measuredHeight } = useMeasuredHeight();
|
|
25
|
-
if (approach !== null) {
|
|
26
|
-
return /* @__PURE__ */ jsx(DomainSelection, {});
|
|
27
|
-
}
|
|
28
18
|
return /* @__PURE__ */ jsx(Box, { flexDirection: "column", width: "100%", flexGrow: 1, flexBasis: 0, children: /* @__PURE__ */ jsx(Box, { ref: containerRef, flexGrow: 1, flexBasis: 0, children: /* @__PURE__ */ jsx(StackSelection, { availableHeight: measuredHeight, onCancel }) }) });
|
|
29
19
|
};
|
|
30
20
|
|
|
31
21
|
export {
|
|
32
22
|
StepStack
|
|
33
23
|
};
|
|
34
|
-
//# sourceMappingURL=chunk-
|
|
24
|
+
//# sourceMappingURL=chunk-6YJXWQCI.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/cli/components/wizard/step-stack.tsx"],"sourcesContent":["import { Box } from \"ink\";\nimport React from \"react\";\nimport { useMeasuredHeight } from \"../hooks/use-measured-height.js\";\nimport { StackSelection } from \"./stack-selection.js\";\n\ntype StepStackProps = {\n onCancel?: () => void;\n};\n\n/**\n * First step of the wizard: select a stack or \"Start from scratch\".\n *\n * After selection, the wizard transitions to the \"domains\" step.\n */\nexport const StepStack: React.FC<StepStackProps> = ({ onCancel }) => {\n const { ref: containerRef, measuredHeight } = useMeasuredHeight();\n\n return (\n <Box flexDirection=\"column\" width=\"100%\" flexGrow={1} flexBasis={0}>\n <Box ref={containerRef} flexGrow={1} flexBasis={0}>\n <StackSelection availableHeight={measuredHeight} onCancel={onCancel} />\n </Box>\n </Box>\n );\n};\n"],"mappings":";;;;;;;;;;;;AAAA;AAAA,SAAS,WAAW;AAoBZ;AAND,IAAM,YAAsC,CAAC,EAAE,SAAS,MAAM;AACnE,QAAM,EAAE,KAAK,cAAc,eAAe,IAAI,kBAAkB;AAEhE,SACE,oBAAC,OAAI,eAAc,UAAS,OAAM,QAAO,UAAU,GAAG,WAAW,GAC/D,8BAAC,OAAI,KAAK,cAAc,UAAU,GAAG,WAAW,GAC9C,8BAAC,kBAAe,iBAAiB,gBAAgB,UAAoB,GACvE,GACF;AAEJ;","names":[]}
|
|
@@ -8,22 +8,33 @@ init_esm_shims();
|
|
|
8
8
|
var SKILL_SLUGS = [
|
|
9
9
|
"angular-standalone",
|
|
10
10
|
"ant-design",
|
|
11
|
+
"anthropic-sdk",
|
|
11
12
|
"api-performance",
|
|
13
|
+
"appwrite",
|
|
12
14
|
"astro",
|
|
13
15
|
"auth-security",
|
|
14
16
|
"axiom-pino-sentry",
|
|
15
17
|
"better-auth-drizzle-hono",
|
|
16
18
|
"biome",
|
|
19
|
+
"chakra-ui",
|
|
20
|
+
"chroma",
|
|
21
|
+
"claude-vision",
|
|
17
22
|
"clerk",
|
|
18
23
|
"cli-commander",
|
|
19
24
|
"cli-reviewing",
|
|
20
25
|
"cloudflare-workers",
|
|
26
|
+
"cockroachdb",
|
|
27
|
+
"cohere-sdk",
|
|
21
28
|
"css-animations",
|
|
22
29
|
"cva",
|
|
23
30
|
"cypress-e2e",
|
|
24
31
|
"date-fns",
|
|
25
32
|
"docker",
|
|
26
33
|
"drizzle",
|
|
34
|
+
"edgedb",
|
|
35
|
+
"elasticsearch",
|
|
36
|
+
"elevenlabs",
|
|
37
|
+
"elysia",
|
|
27
38
|
"error-boundaries",
|
|
28
39
|
"eslint-prettier",
|
|
29
40
|
"expo",
|
|
@@ -34,17 +45,31 @@ var SKILL_SLUGS = [
|
|
|
34
45
|
"framer-motion",
|
|
35
46
|
"git-hooks",
|
|
36
47
|
"github-actions",
|
|
48
|
+
"google-gemini-sdk",
|
|
37
49
|
"graphql-apollo",
|
|
38
50
|
"graphql-urql",
|
|
39
51
|
"headless-ui",
|
|
40
52
|
"hono",
|
|
53
|
+
"huggingface-inference",
|
|
41
54
|
"image-handling",
|
|
42
55
|
"jotai",
|
|
56
|
+
"knex",
|
|
57
|
+
"langchain",
|
|
58
|
+
"langfuse",
|
|
59
|
+
"litellm",
|
|
60
|
+
"llamaindex",
|
|
61
|
+
"mantine",
|
|
62
|
+
"meilisearch",
|
|
63
|
+
"mistral-sdk",
|
|
43
64
|
"mobx",
|
|
65
|
+
"modal",
|
|
44
66
|
"mongodb",
|
|
67
|
+
"mongoose",
|
|
45
68
|
"msw",
|
|
46
69
|
"mui",
|
|
70
|
+
"mysql",
|
|
47
71
|
"native-js",
|
|
72
|
+
"neon",
|
|
48
73
|
"nestjs",
|
|
49
74
|
"next-intl",
|
|
50
75
|
"nextauth",
|
|
@@ -54,28 +79,42 @@ var SKILL_SLUGS = [
|
|
|
54
79
|
"nx",
|
|
55
80
|
"oclif-ink",
|
|
56
81
|
"offline-first",
|
|
82
|
+
"ollama",
|
|
57
83
|
"openai-sdk",
|
|
84
|
+
"openai-whisper",
|
|
85
|
+
"payload",
|
|
86
|
+
"pinecone",
|
|
58
87
|
"pinia",
|
|
88
|
+
"planetscale",
|
|
59
89
|
"playwright-e2e",
|
|
60
90
|
"pnpm-workspaces",
|
|
91
|
+
"postgresql",
|
|
61
92
|
"posthog-analytics",
|
|
62
93
|
"posthog-flags",
|
|
63
94
|
"prisma",
|
|
95
|
+
"promptfoo",
|
|
96
|
+
"qdrant",
|
|
97
|
+
"qwik",
|
|
64
98
|
"radix-ui",
|
|
65
99
|
"react",
|
|
66
100
|
"react-hook-form",
|
|
67
101
|
"react-intl",
|
|
68
102
|
"react-native",
|
|
69
103
|
"react-query",
|
|
104
|
+
"react-router",
|
|
70
105
|
"react-testing-library",
|
|
71
106
|
"redis",
|
|
72
107
|
"redux-toolkit",
|
|
73
108
|
"remix",
|
|
109
|
+
"replicate",
|
|
74
110
|
"research-methodology",
|
|
75
111
|
"resend-react-email",
|
|
76
112
|
"result-types",
|
|
77
113
|
"reviewing",
|
|
114
|
+
"rxjs",
|
|
115
|
+
"sanity",
|
|
78
116
|
"scss-modules",
|
|
117
|
+
"sequelize",
|
|
79
118
|
"service-workers",
|
|
80
119
|
"setup-axiom-pino-sentry",
|
|
81
120
|
"setup-env",
|
|
@@ -86,24 +125,36 @@ var SKILL_SLUGS = [
|
|
|
86
125
|
"solidjs",
|
|
87
126
|
"sse",
|
|
88
127
|
"storybook",
|
|
128
|
+
"strapi",
|
|
129
|
+
"stripe",
|
|
89
130
|
"supabase",
|
|
131
|
+
"surrealdb",
|
|
90
132
|
"svelte",
|
|
91
133
|
"sveltekit",
|
|
92
134
|
"swr",
|
|
93
135
|
"tailwind",
|
|
94
136
|
"tanstack-router",
|
|
95
137
|
"tanstack-table",
|
|
138
|
+
"together-ai",
|
|
139
|
+
"tool-use-patterns",
|
|
96
140
|
"trpc",
|
|
97
141
|
"turborepo",
|
|
142
|
+
"turso",
|
|
143
|
+
"typeorm",
|
|
98
144
|
"typescript-config",
|
|
145
|
+
"upstash",
|
|
99
146
|
"vee-validate",
|
|
100
147
|
"vercel-ai-sdk",
|
|
148
|
+
"vercel-kv",
|
|
149
|
+
"vercel-postgres",
|
|
101
150
|
"view-transitions",
|
|
102
151
|
"vite",
|
|
103
152
|
"vitest",
|
|
104
153
|
"vue-composition-api",
|
|
105
154
|
"vue-i18n",
|
|
106
155
|
"vue-test-utils",
|
|
156
|
+
"vueuse",
|
|
157
|
+
"weaviate",
|
|
107
158
|
"web-accessibility",
|
|
108
159
|
"web-performance",
|
|
109
160
|
"websockets",
|
|
@@ -116,10 +167,15 @@ var CATEGORIES = [
|
|
|
116
167
|
"api-api",
|
|
117
168
|
"api-auth",
|
|
118
169
|
"api-baas",
|
|
170
|
+
"api-cms",
|
|
171
|
+
"api-commerce",
|
|
119
172
|
"api-database",
|
|
120
173
|
"api-email",
|
|
174
|
+
"api-framework",
|
|
121
175
|
"api-observability",
|
|
122
176
|
"api-performance",
|
|
177
|
+
"api-search",
|
|
178
|
+
"api-vector-db",
|
|
123
179
|
"cli-framework",
|
|
124
180
|
"mobile-framework",
|
|
125
181
|
"shared-ci-cd",
|
|
@@ -159,8 +215,9 @@ var AGENT_NAMES = [
|
|
|
159
215
|
"cli-developer",
|
|
160
216
|
"cli-reviewer",
|
|
161
217
|
"cli-tester",
|
|
162
|
-
"
|
|
218
|
+
"convention-keeper",
|
|
163
219
|
"pattern-scout",
|
|
220
|
+
"scribe",
|
|
164
221
|
"skill-summoner",
|
|
165
222
|
"web-architecture",
|
|
166
223
|
"web-developer",
|
|
@@ -177,4 +234,4 @@ export {
|
|
|
177
234
|
DOMAINS,
|
|
178
235
|
AGENT_NAMES
|
|
179
236
|
};
|
|
180
|
-
//# sourceMappingURL=chunk-
|
|
237
|
+
//# sourceMappingURL=chunk-BN73X3JN.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/cli/types/generated/source-types.ts"],"sourcesContent":["// AUTO-GENERATED from skills source and agent metadata — do not edit manually\n// Run: bun run generate:types\n\n// ── Skill Map (slug → ID) ─────────────────────────────────────\n\nexport const SKILL_MAP = {\n \"angular-standalone\": \"web-framework-angular-standalone\",\n \"ant-design\": \"web-ui-ant-design\",\n \"anthropic-sdk\": \"api-ai-anthropic-sdk\",\n \"api-performance\": \"api-performance-api-performance\",\n appwrite: \"api-baas-appwrite\",\n astro: \"web-meta-framework-astro\",\n \"auth-security\": \"shared-security-auth-security\",\n \"axiom-pino-sentry\": \"api-observability-axiom-pino-sentry\",\n \"better-auth-drizzle-hono\": \"api-auth-better-auth-drizzle-hono\",\n biome: \"shared-tooling-biome\",\n \"chakra-ui\": \"web-ui-chakra-ui\",\n chroma: \"api-vector-db-chroma\",\n \"claude-vision\": \"api-ai-claude-vision\",\n clerk: \"api-auth-clerk\",\n \"cli-commander\": \"cli-framework-cli-commander\",\n \"cli-reviewing\": \"shared-meta-cli-reviewing\",\n \"cloudflare-workers\": \"shared-ci-cd-cloudflare-workers\",\n cockroachdb: \"api-database-cockroachdb\",\n \"cohere-sdk\": \"api-ai-cohere-sdk\",\n \"css-animations\": \"web-animation-css-animations\",\n cva: \"web-styling-cva\",\n \"cypress-e2e\": \"web-testing-cypress-e2e\",\n \"date-fns\": \"web-utilities-date-fns\",\n docker: \"shared-ci-cd-docker\",\n drizzle: \"api-database-drizzle\",\n edgedb: \"api-database-edgedb\",\n elasticsearch: \"api-search-elasticsearch\",\n elevenlabs: \"api-ai-elevenlabs\",\n elysia: \"api-framework-elysia\",\n \"error-boundaries\": \"web-error-handling-error-boundaries\",\n \"eslint-prettier\": \"shared-tooling-eslint-prettier\",\n expo: \"mobile-framework-expo\",\n express: \"api-framework-express\",\n fastify: \"api-framework-fastify\",\n \"file-upload-patterns\": \"web-files-file-upload-patterns\",\n firebase: \"api-baas-firebase\",\n \"framer-motion\": \"web-animation-framer-motion\",\n \"git-hooks\": \"shared-tooling-git-hooks\",\n \"github-actions\": \"shared-ci-cd-github-actions\",\n \"google-gemini-sdk\": \"api-ai-google-gemini-sdk\",\n \"graphql-apollo\": \"web-data-fetching-graphql-apollo\",\n \"graphql-urql\": \"web-data-fetching-graphql-urql\",\n \"headless-ui\": \"web-ui-headless-ui\",\n hono: \"api-framework-hono\",\n \"huggingface-inference\": \"api-ai-huggingface-inference\",\n \"image-handling\": \"web-files-image-handling\",\n jotai: \"web-state-jotai\",\n knex: \"api-database-knex\",\n langchain: \"api-ai-langchain\",\n langfuse: \"api-ai-langfuse\",\n litellm: \"api-ai-litellm\",\n llamaindex: \"api-ai-llamaindex\",\n mantine: \"web-ui-mantine\",\n meilisearch: \"api-search-meilisearch\",\n \"mistral-sdk\": \"api-ai-mistral-sdk\",\n mobx: \"web-state-mobx\",\n modal: \"api-ai-modal\",\n mongodb: \"api-database-mongodb\",\n mongoose: \"api-database-mongoose\",\n msw: \"web-mocks-msw\",\n mui: \"web-ui-mui\",\n mysql: \"api-database-mysql\",\n \"native-js\": \"web-utilities-native-js\",\n neon: \"api-baas-neon\",\n nestjs: \"api-framework-nestjs\",\n \"next-intl\": \"web-i18n-next-intl\",\n nextauth: \"api-auth-nextauth\",\n nextjs: \"web-meta-framework-nextjs\",\n \"ngrx-signalstore\": \"web-state-ngrx-signalstore\",\n nuxt: \"web-meta-framework-nuxt\",\n nx: \"shared-monorepo-nx\",\n \"oclif-ink\": \"cli-framework-oclif-ink\",\n \"offline-first\": \"web-pwa-offline-first\",\n ollama: \"api-ai-ollama\",\n \"openai-sdk\": \"api-ai-openai-sdk\",\n \"openai-whisper\": \"api-ai-openai-whisper\",\n payload: \"api-cms-payload\",\n pinecone: \"api-vector-db-pinecone\",\n pinia: \"web-state-pinia\",\n planetscale: \"api-baas-planetscale\",\n \"playwright-e2e\": \"web-testing-playwright-e2e\",\n \"pnpm-workspaces\": \"shared-monorepo-pnpm-workspaces\",\n postgresql: \"api-database-postgresql\",\n \"posthog-analytics\": \"api-analytics-posthog-analytics\",\n \"posthog-flags\": \"api-flags-posthog-flags\",\n prisma: \"api-database-prisma\",\n promptfoo: \"api-ai-promptfoo\",\n qdrant: \"api-vector-db-qdrant\",\n qwik: \"web-meta-framework-qwik\",\n \"radix-ui\": \"web-ui-radix-ui\",\n react: \"web-framework-react\",\n \"react-hook-form\": \"web-forms-react-hook-form\",\n \"react-intl\": \"web-i18n-react-intl\",\n \"react-native\": \"mobile-framework-react-native\",\n \"react-query\": \"web-server-state-react-query\",\n \"react-router\": \"web-routing-react-router\",\n \"react-testing-library\": \"web-testing-react-testing-library\",\n redis: \"api-database-redis\",\n \"redux-toolkit\": \"web-state-redux-toolkit\",\n remix: \"web-meta-framework-remix\",\n replicate: \"api-ai-replicate\",\n \"research-methodology\": \"shared-meta-research-methodology\",\n \"resend-react-email\": \"api-email-resend-react-email\",\n \"result-types\": \"web-error-handling-result-types\",\n reviewing: \"shared-meta-reviewing\",\n rxjs: \"web-utilities-rxjs\",\n sanity: \"api-cms-sanity\",\n \"scss-modules\": \"web-styling-scss-modules\",\n sequelize: \"api-database-sequelize\",\n \"service-workers\": \"web-pwa-service-workers\",\n \"setup-axiom-pino-sentry\": \"api-observability-setup-axiom-pino-sentry\",\n \"setup-env\": \"shared-infra-setup-env\",\n \"setup-posthog\": \"api-analytics-setup-posthog\",\n \"setup-resend\": \"api-email-setup-resend\",\n \"shadcn-ui\": \"web-ui-shadcn-ui\",\n \"socket-io\": \"web-realtime-socket-io\",\n solidjs: \"web-framework-solidjs\",\n sse: \"web-realtime-sse\",\n storybook: \"web-tooling-storybook\",\n strapi: \"api-cms-strapi\",\n stripe: \"api-commerce-stripe\",\n supabase: \"api-baas-supabase\",\n surrealdb: \"api-database-surrealdb\",\n svelte: \"web-framework-svelte\",\n sveltekit: \"web-meta-framework-sveltekit\",\n swr: \"web-data-fetching-swr\",\n tailwind: \"web-styling-tailwind\",\n \"tanstack-router\": \"web-routing-tanstack-router\",\n \"tanstack-table\": \"web-ui-tanstack-table\",\n \"together-ai\": \"api-ai-together-ai\",\n \"tool-use-patterns\": \"api-ai-tool-use-patterns\",\n trpc: \"web-data-fetching-trpc\",\n turborepo: \"shared-monorepo-turborepo\",\n turso: \"api-baas-turso\",\n typeorm: \"api-database-typeorm\",\n \"typescript-config\": \"shared-tooling-typescript-config\",\n upstash: \"api-baas-upstash\",\n \"vee-validate\": \"web-forms-vee-validate\",\n \"vercel-ai-sdk\": \"api-ai-vercel-ai-sdk\",\n \"vercel-kv\": \"api-baas-vercel-kv\",\n \"vercel-postgres\": \"api-baas-vercel-postgres\",\n \"view-transitions\": \"web-animation-view-transitions\",\n vite: \"web-tooling-vite\",\n vitest: \"web-testing-vitest\",\n \"vue-composition-api\": \"web-framework-vue-composition-api\",\n \"vue-i18n\": \"web-i18n-vue-i18n\",\n \"vue-test-utils\": \"web-testing-vue-test-utils\",\n vueuse: \"web-utilities-vueuse\",\n weaviate: \"api-vector-db-weaviate\",\n \"web-accessibility\": \"web-accessibility-web-accessibility\",\n \"web-performance\": \"web-performance-web-performance\",\n websockets: \"web-realtime-websockets\",\n \"zod-validation\": \"web-forms-zod-validation\",\n zustand: \"web-state-zustand\",\n} as const;\n\nexport type SkillSlug = keyof typeof SKILL_MAP;\nexport type SkillId = (typeof SKILL_MAP)[SkillSlug];\n\n// Derived arrays for Zod enum compatibility\n// (z.enum() requires a readonly tuple, not Object.keys/values)\nexport const SKILL_SLUGS = [\n \"angular-standalone\",\n \"ant-design\",\n \"anthropic-sdk\",\n \"api-performance\",\n \"appwrite\",\n \"astro\",\n \"auth-security\",\n \"axiom-pino-sentry\",\n \"better-auth-drizzle-hono\",\n \"biome\",\n \"chakra-ui\",\n \"chroma\",\n \"claude-vision\",\n \"clerk\",\n \"cli-commander\",\n \"cli-reviewing\",\n \"cloudflare-workers\",\n \"cockroachdb\",\n \"cohere-sdk\",\n \"css-animations\",\n \"cva\",\n \"cypress-e2e\",\n \"date-fns\",\n \"docker\",\n \"drizzle\",\n \"edgedb\",\n \"elasticsearch\",\n \"elevenlabs\",\n \"elysia\",\n \"error-boundaries\",\n \"eslint-prettier\",\n \"expo\",\n \"express\",\n \"fastify\",\n \"file-upload-patterns\",\n \"firebase\",\n \"framer-motion\",\n \"git-hooks\",\n \"github-actions\",\n \"google-gemini-sdk\",\n \"graphql-apollo\",\n \"graphql-urql\",\n \"headless-ui\",\n \"hono\",\n \"huggingface-inference\",\n \"image-handling\",\n \"jotai\",\n \"knex\",\n \"langchain\",\n \"langfuse\",\n \"litellm\",\n \"llamaindex\",\n \"mantine\",\n \"meilisearch\",\n \"mistral-sdk\",\n \"mobx\",\n \"modal\",\n \"mongodb\",\n \"mongoose\",\n \"msw\",\n \"mui\",\n \"mysql\",\n \"native-js\",\n \"neon\",\n \"nestjs\",\n \"next-intl\",\n \"nextauth\",\n \"nextjs\",\n \"ngrx-signalstore\",\n \"nuxt\",\n \"nx\",\n \"oclif-ink\",\n \"offline-first\",\n \"ollama\",\n \"openai-sdk\",\n \"openai-whisper\",\n \"payload\",\n \"pinecone\",\n \"pinia\",\n \"planetscale\",\n \"playwright-e2e\",\n \"pnpm-workspaces\",\n \"postgresql\",\n \"posthog-analytics\",\n \"posthog-flags\",\n \"prisma\",\n \"promptfoo\",\n \"qdrant\",\n \"qwik\",\n \"radix-ui\",\n \"react\",\n \"react-hook-form\",\n \"react-intl\",\n \"react-native\",\n \"react-query\",\n \"react-router\",\n \"react-testing-library\",\n \"redis\",\n \"redux-toolkit\",\n \"remix\",\n \"replicate\",\n \"research-methodology\",\n \"resend-react-email\",\n \"result-types\",\n \"reviewing\",\n \"rxjs\",\n \"sanity\",\n \"scss-modules\",\n \"sequelize\",\n \"service-workers\",\n \"setup-axiom-pino-sentry\",\n \"setup-env\",\n \"setup-posthog\",\n \"setup-resend\",\n \"shadcn-ui\",\n \"socket-io\",\n \"solidjs\",\n \"sse\",\n \"storybook\",\n \"strapi\",\n \"stripe\",\n \"supabase\",\n \"surrealdb\",\n \"svelte\",\n \"sveltekit\",\n \"swr\",\n \"tailwind\",\n \"tanstack-router\",\n \"tanstack-table\",\n \"together-ai\",\n \"tool-use-patterns\",\n \"trpc\",\n \"turborepo\",\n \"turso\",\n \"typeorm\",\n \"typescript-config\",\n \"upstash\",\n \"vee-validate\",\n \"vercel-ai-sdk\",\n \"vercel-kv\",\n \"vercel-postgres\",\n \"view-transitions\",\n \"vite\",\n \"vitest\",\n \"vue-composition-api\",\n \"vue-i18n\",\n \"vue-test-utils\",\n \"vueuse\",\n \"weaviate\",\n \"web-accessibility\",\n \"web-performance\",\n \"websockets\",\n \"zod-validation\",\n \"zustand\",\n] as const satisfies readonly SkillSlug[];\n\nexport const SKILL_IDS = [\n \"api-ai-anthropic-sdk\",\n \"api-ai-claude-vision\",\n \"api-ai-cohere-sdk\",\n \"api-ai-elevenlabs\",\n \"api-ai-google-gemini-sdk\",\n \"api-ai-huggingface-inference\",\n \"api-ai-langchain\",\n \"api-ai-langfuse\",\n \"api-ai-litellm\",\n \"api-ai-llamaindex\",\n \"api-ai-mistral-sdk\",\n \"api-ai-modal\",\n \"api-ai-ollama\",\n \"api-ai-openai-sdk\",\n \"api-ai-openai-whisper\",\n \"api-ai-promptfoo\",\n \"api-ai-replicate\",\n \"api-ai-together-ai\",\n \"api-ai-tool-use-patterns\",\n \"api-ai-vercel-ai-sdk\",\n \"api-analytics-posthog-analytics\",\n \"api-analytics-setup-posthog\",\n \"api-auth-better-auth-drizzle-hono\",\n \"api-auth-clerk\",\n \"api-auth-nextauth\",\n \"api-baas-appwrite\",\n \"api-baas-firebase\",\n \"api-baas-neon\",\n \"api-baas-planetscale\",\n \"api-baas-supabase\",\n \"api-baas-turso\",\n \"api-baas-upstash\",\n \"api-baas-vercel-kv\",\n \"api-baas-vercel-postgres\",\n \"api-cms-payload\",\n \"api-cms-sanity\",\n \"api-cms-strapi\",\n \"api-commerce-stripe\",\n \"api-database-cockroachdb\",\n \"api-database-drizzle\",\n \"api-database-edgedb\",\n \"api-database-knex\",\n \"api-database-mongodb\",\n \"api-database-mongoose\",\n \"api-database-mysql\",\n \"api-database-postgresql\",\n \"api-database-prisma\",\n \"api-database-redis\",\n \"api-database-sequelize\",\n \"api-database-surrealdb\",\n \"api-database-typeorm\",\n \"api-email-resend-react-email\",\n \"api-email-setup-resend\",\n \"api-flags-posthog-flags\",\n \"api-framework-elysia\",\n \"api-framework-express\",\n \"api-framework-fastify\",\n \"api-framework-hono\",\n \"api-framework-nestjs\",\n \"api-observability-axiom-pino-sentry\",\n \"api-observability-setup-axiom-pino-sentry\",\n \"api-performance-api-performance\",\n \"api-search-elasticsearch\",\n \"api-search-meilisearch\",\n \"api-vector-db-chroma\",\n \"api-vector-db-pinecone\",\n \"api-vector-db-qdrant\",\n \"api-vector-db-weaviate\",\n \"cli-framework-cli-commander\",\n \"cli-framework-oclif-ink\",\n \"mobile-framework-expo\",\n \"mobile-framework-react-native\",\n \"shared-ci-cd-cloudflare-workers\",\n \"shared-ci-cd-docker\",\n \"shared-ci-cd-github-actions\",\n \"shared-infra-setup-env\",\n \"shared-meta-cli-reviewing\",\n \"shared-meta-research-methodology\",\n \"shared-meta-reviewing\",\n \"shared-monorepo-nx\",\n \"shared-monorepo-pnpm-workspaces\",\n \"shared-monorepo-turborepo\",\n \"shared-security-auth-security\",\n \"shared-tooling-biome\",\n \"shared-tooling-eslint-prettier\",\n \"shared-tooling-git-hooks\",\n \"shared-tooling-typescript-config\",\n \"web-accessibility-web-accessibility\",\n \"web-animation-css-animations\",\n \"web-animation-framer-motion\",\n \"web-animation-view-transitions\",\n \"web-data-fetching-graphql-apollo\",\n \"web-data-fetching-graphql-urql\",\n \"web-data-fetching-swr\",\n \"web-data-fetching-trpc\",\n \"web-error-handling-error-boundaries\",\n \"web-error-handling-result-types\",\n \"web-files-file-upload-patterns\",\n \"web-files-image-handling\",\n \"web-forms-react-hook-form\",\n \"web-forms-vee-validate\",\n \"web-forms-zod-validation\",\n \"web-framework-angular-standalone\",\n \"web-framework-react\",\n \"web-framework-solidjs\",\n \"web-framework-svelte\",\n \"web-framework-vue-composition-api\",\n \"web-i18n-next-intl\",\n \"web-i18n-react-intl\",\n \"web-i18n-vue-i18n\",\n \"web-meta-framework-astro\",\n \"web-meta-framework-nextjs\",\n \"web-meta-framework-nuxt\",\n \"web-meta-framework-qwik\",\n \"web-meta-framework-remix\",\n \"web-meta-framework-sveltekit\",\n \"web-mocks-msw\",\n \"web-performance-web-performance\",\n \"web-pwa-offline-first\",\n \"web-pwa-service-workers\",\n \"web-realtime-socket-io\",\n \"web-realtime-sse\",\n \"web-realtime-websockets\",\n \"web-routing-react-router\",\n \"web-routing-tanstack-router\",\n \"web-server-state-react-query\",\n \"web-state-jotai\",\n \"web-state-mobx\",\n \"web-state-ngrx-signalstore\",\n \"web-state-pinia\",\n \"web-state-redux-toolkit\",\n \"web-state-zustand\",\n \"web-styling-cva\",\n \"web-styling-scss-modules\",\n \"web-styling-tailwind\",\n \"web-testing-cypress-e2e\",\n \"web-testing-playwright-e2e\",\n \"web-testing-react-testing-library\",\n \"web-testing-vitest\",\n \"web-testing-vue-test-utils\",\n \"web-tooling-storybook\",\n \"web-tooling-vite\",\n \"web-ui-ant-design\",\n \"web-ui-chakra-ui\",\n \"web-ui-headless-ui\",\n \"web-ui-mantine\",\n \"web-ui-mui\",\n \"web-ui-radix-ui\",\n \"web-ui-shadcn-ui\",\n \"web-ui-tanstack-table\",\n \"web-utilities-date-fns\",\n \"web-utilities-native-js\",\n \"web-utilities-rxjs\",\n \"web-utilities-vueuse\",\n] as const satisfies readonly SkillId[];\n\n// ── Categories ─────────────────────────────────────────────────\n\nexport const CATEGORIES = [\n \"api-ai\",\n \"api-analytics\",\n \"api-api\",\n \"api-auth\",\n \"api-baas\",\n \"api-cms\",\n \"api-commerce\",\n \"api-database\",\n \"api-email\",\n \"api-framework\",\n \"api-observability\",\n \"api-performance\",\n \"api-search\",\n \"api-vector-db\",\n \"cli-framework\",\n \"mobile-framework\",\n \"shared-ci-cd\",\n \"shared-infra\",\n \"shared-meta\",\n \"shared-monorepo\",\n \"shared-security\",\n \"shared-tooling\",\n \"web-accessibility\",\n \"web-animation\",\n \"web-client-state\",\n \"web-error-handling\",\n \"web-file-upload\",\n \"web-files\",\n \"web-forms\",\n \"web-framework\",\n \"web-i18n\",\n \"web-meta-framework\",\n \"web-mocking\",\n \"web-performance\",\n \"web-pwa\",\n \"web-realtime\",\n \"web-routing\",\n \"web-server-state\",\n \"web-styling\",\n \"web-testing\",\n \"web-tooling\",\n \"web-ui-components\",\n \"web-utilities\",\n] as const;\n\nexport type Category = (typeof CATEGORIES)[number];\n\n// ── Domains ────────────────────────────────────────────────────\n\nexport const DOMAINS = [\"api\", \"cli\", \"mobile\", \"shared\", \"web\"] as const;\n\nexport type Domain = (typeof DOMAINS)[number];\n\n// ── Agent Names ────────────────────────────────────────────────\n\nexport const AGENT_NAMES = [\n \"agent-summoner\",\n \"api-developer\",\n \"api-researcher\",\n \"api-reviewer\",\n \"cli-developer\",\n \"cli-reviewer\",\n \"cli-tester\",\n \"convention-keeper\",\n \"pattern-scout\",\n \"scribe\",\n \"skill-summoner\",\n \"web-architecture\",\n \"web-developer\",\n \"web-pattern-critique\",\n \"web-pm\",\n \"web-researcher\",\n \"web-reviewer\",\n \"web-tester\",\n] as const;\n\nexport type AgentName = (typeof AGENT_NAMES)[number];\n"],"mappings":";;;;;;AAAA;AAuKO,IAAM,cAAc;AAAA,EACzB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAiKO,IAAM,aAAa;AAAA,EACxB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAMO,IAAM,UAAU,CAAC,OAAO,OAAO,UAAU,UAAU,KAAK;AAMxD,IAAM,cAAc;AAAA,EACzB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;","names":[]}
|
|
@@ -1,31 +1,34 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
WizardLayout
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-3HWFTE3S.js";
|
|
5
5
|
import {
|
|
6
6
|
StepSettings
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-F4VG5XWZ.js";
|
|
8
8
|
import {
|
|
9
9
|
StepSources
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-55AZIEK6.js";
|
|
11
11
|
import {
|
|
12
12
|
StepStack
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-6YJXWQCI.js";
|
|
14
14
|
import {
|
|
15
15
|
StepAgents
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-OBTC2FD7.js";
|
|
17
17
|
import {
|
|
18
18
|
StepBuild
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-NJCU7OC2.js";
|
|
20
20
|
import {
|
|
21
21
|
StepConfirm
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-H3NQGJMB.js";
|
|
23
|
+
import {
|
|
24
|
+
DomainSelection
|
|
25
|
+
} from "./chunk-II3ISVCE.js";
|
|
23
26
|
import {
|
|
24
27
|
getStackName
|
|
25
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-3SCIYMRK.js";
|
|
26
29
|
import {
|
|
27
30
|
useWizardStore
|
|
28
|
-
} from "./chunk-
|
|
31
|
+
} from "./chunk-TXFQBYOX.js";
|
|
29
32
|
import {
|
|
30
33
|
cliTheme
|
|
31
34
|
} from "./chunk-3REKTRAN.js";
|
|
@@ -39,11 +42,11 @@ import {
|
|
|
39
42
|
import {
|
|
40
43
|
resolveAlias,
|
|
41
44
|
validateSelection
|
|
42
|
-
} from "./chunk-
|
|
45
|
+
} from "./chunk-XFL7EIM7.js";
|
|
43
46
|
import {
|
|
44
47
|
findStack,
|
|
45
48
|
matrix
|
|
46
|
-
} from "./chunk-
|
|
49
|
+
} from "./chunk-4R6I6A3U.js";
|
|
47
50
|
import {
|
|
48
51
|
CLI_COLORS
|
|
49
52
|
} from "./chunk-FMYAYX6W.js";
|
|
@@ -200,9 +203,6 @@ var Wizard = ({
|
|
|
200
203
|
return;
|
|
201
204
|
}
|
|
202
205
|
if (key.escape) {
|
|
203
|
-
if (store.step !== "build" && store.step !== "confirm" && store.step !== "sources" && store.step !== "agents" && store.step !== "stack") {
|
|
204
|
-
store.goBack();
|
|
205
|
-
}
|
|
206
206
|
return;
|
|
207
207
|
}
|
|
208
208
|
if (isHotkey(input, HOTKEY_ACCEPT_DEFAULTS) && store.step === "build" && store.selectedStackId) {
|
|
@@ -267,6 +267,8 @@ var Wizard = ({
|
|
|
267
267
|
switch (store.step) {
|
|
268
268
|
case "stack":
|
|
269
269
|
return /* @__PURE__ */ jsx(StepStack, { onCancel: handleCancel });
|
|
270
|
+
case "domains":
|
|
271
|
+
return /* @__PURE__ */ jsx(DomainSelection, {});
|
|
270
272
|
case "build":
|
|
271
273
|
return /* @__PURE__ */ jsx(StepBuild, { ...buildStepProps });
|
|
272
274
|
case "sources": {
|
|
@@ -332,4 +334,4 @@ var Wizard = ({
|
|
|
332
334
|
export {
|
|
333
335
|
Wizard
|
|
334
336
|
};
|
|
335
|
-
//# sourceMappingURL=chunk-
|
|
337
|
+
//# sourceMappingURL=chunk-BORVYGIX.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 { DomainSelection } from \"./domain-selection.js\";\nimport { resolveAlias, validateSelection } from \"../../lib/matrix/index.js\";\nimport { matrix, findStack } from \"../../lib/matrix/matrix-provider.js\";\nimport {\n HOTKEY_ACCEPT_DEFAULTS,\n HOTKEY_HELP,\n HOTKEY_SCOPE,\n HOTKEY_SETTINGS,\n isHotkey,\n} from \"./hotkeys.js\";\nimport type { AgentName, Domain, DomainSelections, SkillId } from \"../../types/index.js\";\nimport type { AgentScopeConfig, SkillConfig } from \"../../types/config.js\";\nimport { getStackName } from \"./utils.js\";\nimport 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 onComplete: (result: WizardResultV2) => void;\n onCancel: () => void;\n version?: string;\n logo?: string;\n initialStep?: WizardStep;\n initialDomains?: Domain[];\n initialAgents?: AgentName[];\n installedSkillIds?: SkillId[];\n installedSkillConfigs?: SkillConfig[];\n installedAgentConfigs?: AgentScopeConfig[];\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 onComplete,\n onCancel,\n version,\n logo,\n initialStep,\n initialDomains,\n initialAgents,\n installedSkillIds,\n installedSkillConfigs,\n installedAgentConfigs,\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 initialStep,\n initialDomains,\n initialAgents,\n installedSkillIds,\n installedSkillConfigs,\n installedAgentConfigs,\n lockedSkillIds,\n lockedAgentNames,\n });\n\n const buildStepProps = useBuildStepProps({ store, installedSkillIds });\n\n useInput((input, key) => {\n // ESC is handled by step-settings.tsx's own useKeyboardNavigation hook\n if (store.showSettings) {\n if (isHotkey(input, HOTKEY_SETTINGS)) {\n store.toggleSettings();\n }\n return;\n }\n\n if (store.showHelp) {\n if (key.escape || isHotkey(input, HOTKEY_HELP)) {\n store.toggleHelp();\n }\n return;\n }\n\n if (isHotkey(input, HOTKEY_HELP)) {\n store.toggleHelp();\n return;\n }\n\n if (key.escape) {\n // Steps with their own ESC handling (via useInput in child components):\n // - \"stack\": StackSelection handles ESC via onCancel prop\n // - \"domains\": DomainSelection handles ESC via CheckboxGrid onBack\n // - \"build\": StepBuild handles ESC via its own useInput\n // - \"sources\": StepSources handles ESC via onBack prop\n // - \"confirm\": StepConfirm handles ESC via onBack prop\n // - \"agents\": StepAgents handles ESC via its own useInput\n // All steps handle their own ESC, so this is a no-op.\n return;\n }\n\n if (\n isHotkey(input, HOTKEY_ACCEPT_DEFAULTS) &&\n store.step === \"build\" &&\n store.selectedStackId\n ) {\n store.setStackAction(\"defaults\");\n store.setStep(\"confirm\");\n return;\n }\n\n if (isHotkey(input, HOTKEY_SCOPE) && store.step === \"build\") {\n const focused = store.focusedSkillId;\n if (focused) {\n store.toggleSkillScope(focused);\n }\n return;\n }\n\n if (isHotkey(input, HOTKEY_SCOPE) && store.step === \"agents\") {\n const focused = store.focusedAgentId;\n if (focused) {\n store.toggleAgentScope(focused);\n }\n return;\n }\n\n if (isHotkey(input, HOTKEY_SETTINGS) && 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 = findStack(store.selectedStackId);\n if (!stack) {\n throw new Error(`Stack not found: ${store.selectedStackId}`);\n }\n allSkills = [...stack.allSkillIds];\n } else {\n const techNames = store.getAllSelectedTechnologies();\n allSkills = techNames.map((tech) => resolveAlias(tech));\n }\n\n const skillConfigs: SkillConfig[] = allSkills.map((id) => {\n const existing = store.skillConfigs.find((sc) => sc.id === id);\n return existing ?? { id, scope: \"global\" as const, source: \"local\" };\n });\n\n const validation = validateSelection(allSkills);\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, 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 onCancel={handleCancel} />;\n\n case \"domains\":\n return <DomainSelection />;\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 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 />;\n\n case \"confirm\": {\n const stackName = getStackName(store.selectedStackId);\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 version={version} logo={logo} startupMessages={startupMessages}>\n {renderStep()}\n </WizardLayout>\n </ThemeProvider>\n );\n};\n","import { useRef } from \"react\";\nimport { useWizardStore, type WizardStep } from \"../../stores/wizard-store.js\";\nimport type { AgentScopeConfig, SkillConfig } from \"../../types/config.js\";\nimport type { AgentName, Domain, SkillId } from \"../../types/index.js\";\n\ntype UseWizardInitializationOptions = {\n initialStep?: WizardStep;\n initialDomains?: Domain[];\n initialAgents?: AgentName[];\n installedSkillIds?: SkillId[];\n installedSkillConfigs?: SkillConfig[];\n installedAgentConfigs?: AgentScopeConfig[];\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 initialStep,\n initialDomains,\n initialAgents,\n installedSkillIds,\n installedSkillConfigs,\n installedAgentConfigs,\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.getState().populateFromSkillIds(installedSkillIds, installedSkillConfigs);\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, currentDomainIndex: 0 });\n }\n // Restore saved agents from config, overriding the default empty array\n if (initialAgents?.length) {\n useWizardStore.setState({ selectedAgents: initialAgents });\n }\n // Restore saved agent scope configs (project vs global)\n if (initialAgents?.length && installedAgentConfigs?.length) {\n useWizardStore.setState({ agentConfigs: installedAgentConfigs });\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, SkillId } from \"../../types/index.js\";\nimport type { WizardState } from \"../../stores/wizard-store.js\";\nimport { matrix } from \"../../lib/matrix/matrix-provider.js\";\nimport type { StepBuildProps } from \"../wizard/step-build.js\";\n\ntype UseBuildStepPropsOptions = {\n store: WizardState;\n installedSkillIds?: SkillId[];\n};\n\nexport function useBuildStepProps({\n store,\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 const exclusive = cat?.exclusive ?? true;\n store.toggleTechnology(domain, categoryId, techId, exclusive);\n },\n [store],\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 domain: activeDomain,\n selectedDomains: effectiveDomains,\n selections: store.domainSelections[activeDomain] || {},\n allSelections,\n showLabels: store.showLabels,\n filterIncompatible: store.filterIncompatible,\n installedSkillIds,\n onToggle,\n onToggleLabels: store.toggleShowLabels,\n onToggleFilterIncompatible: store.toggleFilterIncompatible,\n onContinue,\n onBack,\n };\n}\n"],"mappings":"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","names":["useCallback","useCallback"]}
|
|
@@ -24,11 +24,11 @@ import {
|
|
|
24
24
|
addSource,
|
|
25
25
|
getSourceSummary,
|
|
26
26
|
removeSource
|
|
27
|
-
} from "./chunk-
|
|
27
|
+
} from "./chunk-XFL7EIM7.js";
|
|
28
28
|
import {
|
|
29
29
|
getErrorMessage,
|
|
30
30
|
verbose
|
|
31
|
-
} from "./chunk-
|
|
31
|
+
} from "./chunk-633YIZOU.js";
|
|
32
32
|
import {
|
|
33
33
|
CLI_COLORS
|
|
34
34
|
} from "./chunk-FMYAYX6W.js";
|
|
@@ -263,4 +263,4 @@ var StepSettings = ({
|
|
|
263
263
|
export {
|
|
264
264
|
StepSettings
|
|
265
265
|
};
|
|
266
|
-
//# sourceMappingURL=chunk-
|
|
266
|
+
//# sourceMappingURL=chunk-F4VG5XWZ.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
getDomainDisplayName
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-3SCIYMRK.js";
|
|
5
5
|
import {
|
|
6
6
|
CLI_COLORS
|
|
7
7
|
} from "./chunk-FMYAYX6W.js";
|
|
@@ -106,4 +106,4 @@ var StepConfirm = ({
|
|
|
106
106
|
export {
|
|
107
107
|
StepConfirm
|
|
108
108
|
};
|
|
109
|
-
//# sourceMappingURL=chunk-
|
|
109
|
+
//# sourceMappingURL=chunk-H3NQGJMB.js.map
|
|
@@ -2,17 +2,17 @@
|
|
|
2
2
|
import {
|
|
3
3
|
getDomainDisplayName,
|
|
4
4
|
orderDomains
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-3SCIYMRK.js";
|
|
6
6
|
import {
|
|
7
7
|
CheckboxGrid
|
|
8
8
|
} from "./chunk-RU5XLS5Q.js";
|
|
9
9
|
import {
|
|
10
10
|
useWizardStore
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-TXFQBYOX.js";
|
|
12
12
|
import {
|
|
13
13
|
matrix,
|
|
14
14
|
typedEntries
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-4R6I6A3U.js";
|
|
16
16
|
import {
|
|
17
17
|
init_esm_shims
|
|
18
18
|
} from "./chunk-DHET7RCE.js";
|
|
@@ -30,7 +30,7 @@ var BUILT_IN_DOMAIN_DESCRIPTIONS = {
|
|
|
30
30
|
shared: "Shared utilities and methodology"
|
|
31
31
|
};
|
|
32
32
|
var DomainSelection = () => {
|
|
33
|
-
const { selectedDomains, toggleDomain, setStep, setApproach, selectStack } = useWizardStore();
|
|
33
|
+
const { selectedDomains, toggleDomain, setStep, setApproach, selectStack, goBack } = useWizardStore();
|
|
34
34
|
const availableDomains = useMemo(() => {
|
|
35
35
|
const matrixDomains = unique(
|
|
36
36
|
typedEntries(matrix.categories).map(([, cat]) => cat?.domain).filter((d) => d != null)
|
|
@@ -45,6 +45,7 @@ var DomainSelection = () => {
|
|
|
45
45
|
const handleBack = () => {
|
|
46
46
|
setApproach(null);
|
|
47
47
|
selectStack(null);
|
|
48
|
+
goBack();
|
|
48
49
|
};
|
|
49
50
|
return /* @__PURE__ */ jsx(
|
|
50
51
|
CheckboxGrid,
|
|
@@ -63,4 +64,4 @@ var DomainSelection = () => {
|
|
|
63
64
|
export {
|
|
64
65
|
DomainSelection
|
|
65
66
|
};
|
|
66
|
-
//# sourceMappingURL=chunk-
|
|
67
|
+
//# sourceMappingURL=chunk-II3ISVCE.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/cli/components/wizard/domain-selection.tsx"],"sourcesContent":["import React, { useMemo } from \"react\";\nimport { unique } from \"remeda\";\nimport { useWizardStore } from \"../../stores/wizard-store.js\";\nimport { matrix } from \"../../lib/matrix/matrix-provider.js\";\nimport type { Domain } from \"../../types/index.js\";\nimport { typedEntries } from \"../../utils/typed-object.js\";\nimport { CheckboxGrid, type CheckboxItem } from \"./checkbox-grid.js\";\nimport { getDomainDisplayName, orderDomains } from \"./utils.js\";\n\nconst BUILT_IN_DOMAIN_DESCRIPTIONS: Record<Domain, string> = {\n web: \"Frontend web applications\",\n api: \"Backend APIs and services\",\n cli: \"Command-line tools\",\n mobile: \"Mobile applications\",\n shared: \"Shared utilities and methodology\",\n};\n\nexport const DomainSelection: React.FC = () => {\n const { selectedDomains, toggleDomain, setStep, setApproach, selectStack, goBack } =\n useWizardStore();\n\n const availableDomains = useMemo((): CheckboxItem<Domain>[] => {\n const matrixDomains = unique(\n typedEntries(matrix.categories)\n .map(([, cat]) => cat?.domain)\n .filter((d): d is Domain => d != null),\n );\n\n const ordered = orderDomains(matrixDomains);\n\n return ordered.map((domain) => ({\n id: domain,\n label: getDomainDisplayName(domain),\n description: BUILT_IN_DOMAIN_DESCRIPTIONS[domain],\n }));\n }, [matrix]);\n\n const handleBack = () => {\n setApproach(null);\n selectStack(null);\n goBack();\n };\n\n return (\n <CheckboxGrid\n title=\"Select domains to configure\"\n items={availableDomains}\n selectedIds={selectedDomains}\n onToggle={toggleDomain}\n onContinue={() => setStep(\"build\")}\n onBack={handleBack}\n emptyMessage=\"Please select at least one domain\"\n />\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA,SAAgB,eAAe;AAC/B,SAAS,cAAc;AA2CnB;AAnCJ,IAAM,+BAAuD;AAAA,EAC3D,KAAK;AAAA,EACL,KAAK;AAAA,EACL,KAAK;AAAA,EACL,QAAQ;AAAA,EACR,QAAQ;AACV;AAEO,IAAM,kBAA4B,MAAM;AAC7C,QAAM,EAAE,iBAAiB,cAAc,SAAS,aAAa,aAAa,OAAO,IAC/E,eAAe;AAEjB,QAAM,mBAAmB,QAAQ,MAA8B;AAC7D,UAAM,gBAAgB;AAAA,MACpB,aAAa,OAAO,UAAU,EAC3B,IAAI,CAAC,CAAC,EAAE,GAAG,MAAM,KAAK,MAAM,EAC5B,OAAO,CAAC,MAAmB,KAAK,IAAI;AAAA,IACzC;AAEA,UAAM,UAAU,aAAa,aAAa;AAE1C,WAAO,QAAQ,IAAI,CAAC,YAAY;AAAA,MAC9B,IAAI;AAAA,MACJ,OAAO,qBAAqB,MAAM;AAAA,MAClC,aAAa,6BAA6B,MAAM;AAAA,IAClD,EAAE;AAAA,EACJ,GAAG,CAAC,MAAM,CAAC;AAEX,QAAM,aAAa,MAAM;AACvB,gBAAY,IAAI;AAChB,gBAAY,IAAI;AAChB,WAAO;AAAA,EACT;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,OAAM;AAAA,MACN,OAAO;AAAA,MACP,aAAa;AAAA,MACb,UAAU;AAAA,MACV,YAAY,MAAM,QAAQ,OAAO;AAAA,MACjC,QAAQ;AAAA,MACR,cAAa;AAAA;AAAA,EACf;AAEJ;","names":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
typedEntries
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-4R6I6A3U.js";
|
|
5
5
|
import {
|
|
6
6
|
init_esm_shims
|
|
7
7
|
} from "./chunk-DHET7RCE.js";
|
|
@@ -362,4 +362,4 @@ export {
|
|
|
362
362
|
createMockCompileConfig,
|
|
363
363
|
testSkillToResolvedSkill
|
|
364
364
|
};
|
|
365
|
-
//# sourceMappingURL=chunk-
|
|
365
|
+
//# sourceMappingURL=chunk-LO4X32JC.js.map
|
|
@@ -14,7 +14,7 @@ import {
|
|
|
14
14
|
import {
|
|
15
15
|
getSkillById,
|
|
16
16
|
matrix
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-4R6I6A3U.js";
|
|
18
18
|
import {
|
|
19
19
|
CLI_COLORS,
|
|
20
20
|
SOURCE_DISPLAY_NAMES
|
|
@@ -260,4 +260,4 @@ var SourceGrid = ({
|
|
|
260
260
|
export {
|
|
261
261
|
SourceGrid
|
|
262
262
|
};
|
|
263
|
-
//# sourceMappingURL=chunk-
|
|
263
|
+
//# sourceMappingURL=chunk-MNJAF4K2.js.map
|
|
@@ -7,19 +7,19 @@ import {
|
|
|
7
7
|
} from "./chunk-K77I4XGL.js";
|
|
8
8
|
import {
|
|
9
9
|
CategoryGrid
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-WZGROC5L.js";
|
|
11
11
|
import {
|
|
12
12
|
useWizardStore
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-TXFQBYOX.js";
|
|
14
14
|
import {
|
|
15
15
|
getAvailableSkills,
|
|
16
16
|
getUnmetRequiredBy,
|
|
17
17
|
resolveAlias
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-XFL7EIM7.js";
|
|
19
19
|
import {
|
|
20
20
|
getSkillById,
|
|
21
21
|
matrix
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-4R6I6A3U.js";
|
|
23
23
|
import {
|
|
24
24
|
init_esm_shims
|
|
25
25
|
} from "./chunk-DHET7RCE.js";
|
|
@@ -217,4 +217,4 @@ export {
|
|
|
217
217
|
validateBuildStep,
|
|
218
218
|
StepBuild
|
|
219
219
|
};
|
|
220
|
-
//# sourceMappingURL=chunk-
|
|
220
|
+
//# sourceMappingURL=chunk-NJCU7OC2.js.map
|
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
verbose,
|
|
9
9
|
warn,
|
|
10
10
|
writeFile
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-633YIZOU.js";
|
|
12
12
|
import {
|
|
13
13
|
MAX_PLUGIN_FILE_SIZE
|
|
14
14
|
} from "./chunk-FMYAYX6W.js";
|
|
@@ -129,4 +129,4 @@ export {
|
|
|
129
129
|
writeMarketplace,
|
|
130
130
|
getMarketplaceStats
|
|
131
131
|
};
|
|
132
|
-
//# sourceMappingURL=chunk-
|
|
132
|
+
//# sourceMappingURL=chunk-NZAJTLEK.js.map
|