@agents-inc/cli 0.74.5 → 0.74.8
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 +36 -0
- package/dist/{chunk-QK4CJOLO.js → chunk-4Q2JLBCX.js} +2 -2
- package/dist/{chunk-FOPJDYUF.js → chunk-7JVDZFJG.js} +4 -6
- package/dist/chunk-7JVDZFJG.js.map +1 -0
- package/dist/{chunk-XV6A6PAW.js → chunk-7SKGMV7P.js} +13 -13
- package/dist/{chunk-4OLQ4QPH.js → chunk-7W226BOV.js} +5 -6
- package/dist/chunk-7W226BOV.js.map +1 -0
- package/dist/{chunk-HRJTZXRF.js → chunk-BQW4ONJE.js} +6 -8
- package/dist/{chunk-HRJTZXRF.js.map → chunk-BQW4ONJE.js.map} +1 -1
- package/dist/{chunk-6VIOO74O.js → chunk-CBYRFAUN.js} +1 -3
- package/dist/{chunk-6VIOO74O.js.map → chunk-CBYRFAUN.js.map} +1 -1
- package/dist/{chunk-PPFXT5LC.js → chunk-E3MF6GGS.js} +27 -17
- package/dist/chunk-E3MF6GGS.js.map +1 -0
- package/dist/{chunk-BKTPEATV.js → chunk-F7LOH754.js} +2 -2
- package/dist/{chunk-P2BH6X2C.js → chunk-FVMYBN5K.js} +90 -86
- package/dist/chunk-FVMYBN5K.js.map +1 -0
- package/dist/{chunk-U3EDOGQG.js → chunk-GNA6IOQZ.js} +2 -2
- package/dist/{chunk-WMSV5AJT.js → chunk-HJY4354Y.js} +4 -4
- package/dist/{chunk-MVYJVKVT.js → chunk-HT5KOOUQ.js} +2 -2
- package/dist/{chunk-KDEOCJMS.js → chunk-ICJV3JJF.js} +83 -3
- package/dist/chunk-ICJV3JJF.js.map +1 -0
- package/dist/{chunk-NIA3NQBT.js → chunk-IJNNVCS4.js} +2 -2
- package/dist/{chunk-JAPYUFAM.js → chunk-KZG3EQSH.js} +5 -5
- package/dist/{chunk-TW64EOM7.js → chunk-LVNNP7T4.js} +16 -5
- package/dist/chunk-LVNNP7T4.js.map +1 -0
- package/dist/{chunk-KYULKBFC.js → chunk-NA6I5P5P.js} +2 -2
- package/dist/{chunk-4OBRPE6A.js → chunk-NG2GGK6P.js} +5 -1
- package/dist/{chunk-4OBRPE6A.js.map → chunk-NG2GGK6P.js.map} +1 -1
- package/dist/{chunk-RINGLIE7.js → chunk-PN65K3LH.js} +3 -3
- package/dist/{chunk-JNMZVX5S.js → chunk-Q53GBFTO.js} +3 -3
- package/dist/{chunk-AQBZJUAL.js → chunk-RBR355UI.js} +7 -7
- package/dist/{chunk-KIY36DJU.js → chunk-SM4FX2IU.js} +6 -92
- package/dist/chunk-SM4FX2IU.js.map +1 -0
- package/dist/{chunk-IK6GTV3N.js → chunk-TPXDHJDB.js} +3 -3
- package/dist/{chunk-JGSCFYCP.js → chunk-TUGXTCGX.js} +3 -3
- package/dist/{chunk-2MHSOPIU.js → chunk-UFKDY45I.js} +2 -2
- package/dist/{chunk-CTKWL3GL.js → chunk-ULP3GGXG.js} +4 -4
- package/dist/{chunk-DBPC4V25.js → chunk-X6LXHVA6.js} +3 -3
- package/dist/{chunk-FFNBQMMZ.js → chunk-ZU7AOE3X.js} +2 -2
- package/dist/commands/build/plugins.js +3 -4
- package/dist/commands/build/plugins.js.map +1 -1
- package/dist/commands/build/stack.js +3 -4
- package/dist/commands/build/stack.js.map +1 -1
- package/dist/commands/compile.js +3 -4
- package/dist/commands/compile.js.map +1 -1
- package/dist/commands/config/index.js +3 -4
- package/dist/commands/config/index.js.map +1 -1
- package/dist/commands/config/path.js +2 -3
- package/dist/commands/config/path.js.map +1 -1
- package/dist/commands/config/show.js +3 -4
- package/dist/commands/diff.js +2 -3
- package/dist/commands/diff.js.map +1 -1
- package/dist/commands/doctor.js +2 -3
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/edit.js +58 -43
- package/dist/commands/edit.js.map +1 -1
- package/dist/commands/eject.js +2 -3
- package/dist/commands/eject.js.map +1 -1
- package/dist/commands/import/skill.js +2 -3
- package/dist/commands/import/skill.js.map +1 -1
- package/dist/commands/info.js +2 -3
- package/dist/commands/info.js.map +1 -1
- package/dist/commands/init.js +20 -21
- package/dist/commands/list.js +2 -3
- package/dist/commands/list.js.map +1 -1
- package/dist/commands/new/agent.js +3 -4
- package/dist/commands/new/agent.js.map +1 -1
- package/dist/commands/new/marketplace.js +3 -4
- package/dist/commands/new/marketplace.js.map +1 -1
- package/dist/commands/new/skill.js +3 -4
- package/dist/commands/outdated.js +2 -3
- package/dist/commands/outdated.js.map +1 -1
- package/dist/commands/search.js +4 -5
- package/dist/commands/search.js.map +1 -1
- package/dist/commands/uninstall.js +2 -3
- package/dist/commands/uninstall.js.map +1 -1
- package/dist/commands/update.js +3 -4
- package/dist/commands/update.js.map +1 -1
- package/dist/commands/validate.js +63 -46
- package/dist/commands/validate.js.map +1 -1
- package/dist/components/skill-search/skill-search.js +2 -2
- package/dist/components/wizard/category-grid.js +3 -3
- package/dist/components/wizard/category-grid.test.js +8 -9
- package/dist/components/wizard/category-grid.test.js.map +1 -1
- package/dist/components/wizard/domain-selection.js +5 -6
- package/dist/components/wizard/help-modal.js +2 -2
- package/dist/components/wizard/search-modal.js +2 -2
- package/dist/components/wizard/search-modal.test.js +2 -2
- package/dist/components/wizard/source-grid.js +4 -4
- package/dist/components/wizard/source-grid.test.js +9 -10
- package/dist/components/wizard/source-grid.test.js.map +1 -1
- package/dist/components/wizard/stack-selection.js +4 -5
- package/dist/components/wizard/step-agents.js +5 -6
- package/dist/components/wizard/step-agents.test.js +8 -9
- package/dist/components/wizard/step-agents.test.js.map +1 -1
- package/dist/components/wizard/step-build.js +7 -8
- package/dist/components/wizard/step-build.test.js +9 -10
- package/dist/components/wizard/step-build.test.js.map +1 -1
- package/dist/components/wizard/step-confirm.js +4 -5
- package/dist/components/wizard/step-confirm.test.js +7 -8
- 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 +2 -2
- package/dist/components/wizard/step-settings.js +4 -5
- package/dist/components/wizard/step-settings.test.js +7 -8
- package/dist/components/wizard/step-settings.test.js.map +1 -1
- package/dist/components/wizard/step-sources.js +7 -8
- package/dist/components/wizard/step-sources.test.js +10 -11
- package/dist/components/wizard/step-sources.test.js.map +1 -1
- package/dist/components/wizard/step-stack.js +7 -8
- package/dist/components/wizard/step-stack.test.js +8 -9
- package/dist/components/wizard/step-stack.test.js.map +1 -1
- package/dist/components/wizard/wizard-layout.js +6 -7
- package/dist/components/wizard/wizard.js +19 -20
- package/dist/hooks/init.js +22 -27
- package/dist/hooks/init.js.map +1 -1
- package/dist/plugins/dummy-skill/.claude-plugin/.content-hash +1 -0
- package/dist/plugins/dummy-skill/.claude-plugin/plugin.json +13 -0
- package/dist/source-loader-X46F4X2B.js +23 -0
- package/dist/{source-manager-FVOH3VXK.js → source-manager-WG7HJHVW.js} +3 -4
- package/dist/stores/wizard-store.js +3 -4
- package/dist/stores/wizard-store.test.js +30 -10
- package/dist/stores/wizard-store.test.js.map +1 -1
- package/package.json +1 -1
- package/dist/chunk-4OLQ4QPH.js.map +0 -1
- package/dist/chunk-FOPJDYUF.js.map +0 -1
- package/dist/chunk-KDEOCJMS.js.map +0 -1
- package/dist/chunk-KIY36DJU.js.map +0 -1
- package/dist/chunk-P2BH6X2C.js.map +0 -1
- package/dist/chunk-PPFXT5LC.js.map +0 -1
- package/dist/chunk-TW64EOM7.js.map +0 -1
- package/dist/chunk-XXK6MFOA.js +0 -28
- package/dist/chunk-XXK6MFOA.js.map +0 -1
- package/dist/source-loader-IV6MOOPQ.js +0 -18
- /package/dist/{chunk-QK4CJOLO.js.map → chunk-4Q2JLBCX.js.map} +0 -0
- /package/dist/{chunk-XV6A6PAW.js.map → chunk-7SKGMV7P.js.map} +0 -0
- /package/dist/{chunk-BKTPEATV.js.map → chunk-F7LOH754.js.map} +0 -0
- /package/dist/{chunk-U3EDOGQG.js.map → chunk-GNA6IOQZ.js.map} +0 -0
- /package/dist/{chunk-WMSV5AJT.js.map → chunk-HJY4354Y.js.map} +0 -0
- /package/dist/{chunk-MVYJVKVT.js.map → chunk-HT5KOOUQ.js.map} +0 -0
- /package/dist/{chunk-NIA3NQBT.js.map → chunk-IJNNVCS4.js.map} +0 -0
- /package/dist/{chunk-JAPYUFAM.js.map → chunk-KZG3EQSH.js.map} +0 -0
- /package/dist/{chunk-KYULKBFC.js.map → chunk-NA6I5P5P.js.map} +0 -0
- /package/dist/{chunk-RINGLIE7.js.map → chunk-PN65K3LH.js.map} +0 -0
- /package/dist/{chunk-JNMZVX5S.js.map → chunk-Q53GBFTO.js.map} +0 -0
- /package/dist/{chunk-AQBZJUAL.js.map → chunk-RBR355UI.js.map} +0 -0
- /package/dist/{chunk-IK6GTV3N.js.map → chunk-TPXDHJDB.js.map} +0 -0
- /package/dist/{chunk-JGSCFYCP.js.map → chunk-TUGXTCGX.js.map} +0 -0
- /package/dist/{chunk-2MHSOPIU.js.map → chunk-UFKDY45I.js.map} +0 -0
- /package/dist/{chunk-CTKWL3GL.js.map → chunk-ULP3GGXG.js.map} +0 -0
- /package/dist/{chunk-DBPC4V25.js.map → chunk-X6LXHVA6.js.map} +0 -0
- /package/dist/{chunk-FFNBQMMZ.js.map → chunk-ZU7AOE3X.js.map} +0 -0
- /package/dist/{source-loader-IV6MOOPQ.js.map → source-loader-X46F4X2B.js.map} +0 -0
- /package/dist/{source-manager-FVOH3VXK.js.map → source-manager-WG7HJHVW.js.map} +0 -0
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
getDomainDisplayName
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-LVNNP7T4.js";
|
|
5
5
|
import {
|
|
6
6
|
ViewTitle
|
|
7
7
|
} from "./chunk-AQYAVLZK.js";
|
|
8
8
|
import {
|
|
9
9
|
KEY_LABEL_ENTER,
|
|
10
10
|
KEY_LABEL_ESC
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-CBYRFAUN.js";
|
|
12
12
|
import {
|
|
13
13
|
CLI_COLORS
|
|
14
14
|
} from "./chunk-EGMQ3SXN.js";
|
|
@@ -123,4 +123,4 @@ var StepConfirm = ({
|
|
|
123
123
|
export {
|
|
124
124
|
StepConfirm
|
|
125
125
|
};
|
|
126
|
-
//# sourceMappingURL=chunk-
|
|
126
|
+
//# sourceMappingURL=chunk-PN65K3LH.js.map
|
|
@@ -7,10 +7,10 @@ import {
|
|
|
7
7
|
} from "./chunk-AUNBGZS4.js";
|
|
8
8
|
import {
|
|
9
9
|
useWizardStore
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-E3MF6GGS.js";
|
|
11
11
|
import {
|
|
12
12
|
matrix
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-NG2GGK6P.js";
|
|
14
14
|
import {
|
|
15
15
|
DEFAULT_SCRATCH_DOMAINS
|
|
16
16
|
} from "./chunk-EGMQ3SXN.js";
|
|
@@ -110,4 +110,4 @@ var StackSelection = ({
|
|
|
110
110
|
export {
|
|
111
111
|
StackSelection
|
|
112
112
|
};
|
|
113
|
-
//# sourceMappingURL=chunk-
|
|
113
|
+
//# sourceMappingURL=chunk-Q53GBFTO.js.map
|
|
@@ -4,29 +4,29 @@ import {
|
|
|
4
4
|
} from "./chunk-K77I4XGL.js";
|
|
5
5
|
import {
|
|
6
6
|
CategoryGrid
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-X6LXHVA6.js";
|
|
8
8
|
import {
|
|
9
9
|
getDomainDisplayName,
|
|
10
10
|
orderDomains
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-LVNNP7T4.js";
|
|
12
12
|
import {
|
|
13
13
|
ViewTitle
|
|
14
14
|
} from "./chunk-AQYAVLZK.js";
|
|
15
15
|
import {
|
|
16
16
|
useWizardStore
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-E3MF6GGS.js";
|
|
18
18
|
import {
|
|
19
19
|
KEY_LABEL_ENTER,
|
|
20
20
|
KEY_LABEL_ESC
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-CBYRFAUN.js";
|
|
22
22
|
import {
|
|
23
23
|
getAvailableSkills,
|
|
24
24
|
resolveAlias
|
|
25
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-FVMYBN5K.js";
|
|
26
26
|
import {
|
|
27
27
|
getSkillById,
|
|
28
28
|
matrix
|
|
29
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-NG2GGK6P.js";
|
|
30
30
|
import {
|
|
31
31
|
CLI_COLORS
|
|
32
32
|
} from "./chunk-EGMQ3SXN.js";
|
|
@@ -243,4 +243,4 @@ export {
|
|
|
243
243
|
validateBuildStep,
|
|
244
244
|
StepBuild
|
|
245
245
|
};
|
|
246
|
-
//# sourceMappingURL=chunk-
|
|
246
|
+
//# sourceMappingURL=chunk-RBR355UI.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
Wizard
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-7SKGMV7P.js";
|
|
5
5
|
import {
|
|
6
6
|
SelectList
|
|
7
7
|
} from "./chunk-WF5PMBIR.js";
|
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
KEY_LABEL_ARROWS_VERT,
|
|
10
10
|
KEY_LABEL_ENTER,
|
|
11
11
|
KEY_LABEL_ESC
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-CBYRFAUN.js";
|
|
13
13
|
import {
|
|
14
14
|
STATUS_MESSAGES,
|
|
15
15
|
SUCCESS_MESSAGES
|
|
@@ -19,21 +19,19 @@ import {
|
|
|
19
19
|
claudePluginMarketplaceAdd,
|
|
20
20
|
claudePluginMarketplaceExists,
|
|
21
21
|
deriveInstallMode,
|
|
22
|
-
detectGlobalInstallation,
|
|
23
22
|
detectProjectInstallation,
|
|
24
23
|
ensureBlankGlobalConfig,
|
|
25
24
|
fetchMarketplace,
|
|
26
25
|
getInstallationInfo,
|
|
27
26
|
getMarketplaceLabel,
|
|
28
|
-
hasIndividualPlugins,
|
|
29
27
|
installLocal,
|
|
30
28
|
installPluginConfig,
|
|
31
29
|
loadProjectConfig,
|
|
32
30
|
loadSkillsMatrixFromSource
|
|
33
|
-
} from "./chunk-
|
|
31
|
+
} from "./chunk-FVMYBN5K.js";
|
|
34
32
|
import {
|
|
35
33
|
getSkillById
|
|
36
|
-
} from "./chunk-
|
|
34
|
+
} from "./chunk-NG2GGK6P.js";
|
|
37
35
|
import {
|
|
38
36
|
BaseCommand,
|
|
39
37
|
EXIT_CODES
|
|
@@ -68,8 +66,6 @@ init_esm_shims();
|
|
|
68
66
|
import { Flags } from "@oclif/core";
|
|
69
67
|
import { render, Box as Box2, Text as Text2, useApp } from "ink";
|
|
70
68
|
import fs from "fs";
|
|
71
|
-
import os from "os";
|
|
72
|
-
import path2 from "path";
|
|
73
69
|
|
|
74
70
|
// src/cli/lib/permission-checker.tsx
|
|
75
71
|
init_esm_shims();
|
|
@@ -188,50 +184,6 @@ var Dashboard = ({ onSelect, onCancel }) => {
|
|
|
188
184
|
] })
|
|
189
185
|
] });
|
|
190
186
|
};
|
|
191
|
-
var GLOBAL_CONFIG_OPTIONS = [
|
|
192
|
-
{ label: "Edit global installation", value: "edit-global" },
|
|
193
|
-
{ label: "Create new project installation", value: "create-project" }
|
|
194
|
-
];
|
|
195
|
-
var GlobalConfigPrompt = ({
|
|
196
|
-
globalConfigDir,
|
|
197
|
-
onSelect,
|
|
198
|
-
onCancel
|
|
199
|
-
}) => {
|
|
200
|
-
const { exit } = useApp();
|
|
201
|
-
return /* @__PURE__ */ jsxs2(Box2, { flexDirection: "column", children: [
|
|
202
|
-
/* @__PURE__ */ jsxs2(Text2, { children: [
|
|
203
|
-
"A global installation was found at ",
|
|
204
|
-
globalConfigDir
|
|
205
|
-
] }),
|
|
206
|
-
/* @__PURE__ */ jsx2(Text2, { children: " " }),
|
|
207
|
-
/* @__PURE__ */ jsx2(
|
|
208
|
-
SelectList,
|
|
209
|
-
{
|
|
210
|
-
items: GLOBAL_CONFIG_OPTIONS,
|
|
211
|
-
onSelect: (choice) => {
|
|
212
|
-
onSelect(choice);
|
|
213
|
-
exit();
|
|
214
|
-
},
|
|
215
|
-
onCancel: () => {
|
|
216
|
-
onCancel();
|
|
217
|
-
exit();
|
|
218
|
-
}
|
|
219
|
-
}
|
|
220
|
-
),
|
|
221
|
-
/* @__PURE__ */ jsx2(Text2, { children: " " }),
|
|
222
|
-
/* @__PURE__ */ jsxs2(Text2, { dimColor: true, children: [
|
|
223
|
-
" ",
|
|
224
|
-
KEY_LABEL_ARROWS_VERT,
|
|
225
|
-
" Navigate ",
|
|
226
|
-
" ",
|
|
227
|
-
KEY_LABEL_ENTER,
|
|
228
|
-
" Confirm ",
|
|
229
|
-
" ",
|
|
230
|
-
KEY_LABEL_ESC,
|
|
231
|
-
" Exit"
|
|
232
|
-
] })
|
|
233
|
-
] });
|
|
234
|
-
};
|
|
235
187
|
async function getDashboardData(projectDir) {
|
|
236
188
|
const [info, loaded] = await Promise.all([getInstallationInfo(), loadProjectConfig(projectDir)]);
|
|
237
189
|
const skillCount = loaded?.config?.skills?.length ?? 0;
|
|
@@ -308,52 +260,14 @@ var Init = class _Init extends BaseCommand {
|
|
|
308
260
|
async run() {
|
|
309
261
|
const { flags } = await this.parse(_Init);
|
|
310
262
|
const projectDir = process.cwd();
|
|
311
|
-
const individualPluginsExist = await hasIndividualPlugins(projectDir);
|
|
312
263
|
const existingInstallation = await detectProjectInstallation(projectDir);
|
|
313
|
-
if (
|
|
264
|
+
if (existingInstallation) {
|
|
314
265
|
const selectedCommand = await showDashboard(projectDir, (msg) => this.log(msg));
|
|
315
266
|
if (selectedCommand) {
|
|
316
267
|
await this.config.runCommand(selectedCommand);
|
|
317
268
|
}
|
|
318
269
|
return;
|
|
319
270
|
}
|
|
320
|
-
const globalInstallation = await detectGlobalInstallation();
|
|
321
|
-
if (globalInstallation) {
|
|
322
|
-
const globalConfigDir = path2.join(os.homedir(), CLAUDE_SRC_DIR);
|
|
323
|
-
if (process.stdin.isTTY) {
|
|
324
|
-
let globalChoice = null;
|
|
325
|
-
const { waitUntilExit: waitForPrompt } = render(
|
|
326
|
-
/* @__PURE__ */ jsx2(
|
|
327
|
-
GlobalConfigPrompt,
|
|
328
|
-
{
|
|
329
|
-
globalConfigDir,
|
|
330
|
-
onSelect: (choice) => {
|
|
331
|
-
globalChoice = choice;
|
|
332
|
-
},
|
|
333
|
-
onCancel: () => {
|
|
334
|
-
globalChoice = null;
|
|
335
|
-
}
|
|
336
|
-
}
|
|
337
|
-
)
|
|
338
|
-
);
|
|
339
|
-
await waitForPrompt();
|
|
340
|
-
clearTerminalOutput();
|
|
341
|
-
if (globalChoice === "edit-global") {
|
|
342
|
-
const editArgs = [];
|
|
343
|
-
if (flags.source) {
|
|
344
|
-
editArgs.push("--source", flags.source);
|
|
345
|
-
}
|
|
346
|
-
if (flags.refresh) {
|
|
347
|
-
editArgs.push("--refresh");
|
|
348
|
-
}
|
|
349
|
-
await this.config.runCommand("edit", editArgs);
|
|
350
|
-
return;
|
|
351
|
-
}
|
|
352
|
-
if (globalChoice === null) {
|
|
353
|
-
return;
|
|
354
|
-
}
|
|
355
|
-
}
|
|
356
|
-
}
|
|
357
271
|
const isGlobalRoot = fs.realpathSync(projectDir) === fs.realpathSync(GLOBAL_INSTALL_ROOT);
|
|
358
272
|
if (!isGlobalRoot) {
|
|
359
273
|
const created = await ensureBlankGlobalConfig();
|
|
@@ -562,4 +476,4 @@ export {
|
|
|
562
476
|
showDashboard,
|
|
563
477
|
Init
|
|
564
478
|
};
|
|
565
|
-
//# sourceMappingURL=chunk-
|
|
479
|
+
//# sourceMappingURL=chunk-SM4FX2IU.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/cli/commands/init.tsx","../src/cli/lib/permission-checker.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { Flags } from \"@oclif/core\";\nimport { render, Box, Text, useApp } from \"ink\";\nimport fs from \"fs\";\n\nimport { BaseCommand } from \"../base-command.js\";\nimport { Wizard, type WizardResultV2 } from \"../components/wizard/wizard.js\";\nimport {\n loadSkillsMatrixFromSource,\n getMarketplaceLabel,\n fetchMarketplace,\n type SourceLoadResult,\n} from \"../lib/loading/index.js\";\nimport {\n installLocal,\n installPluginConfig,\n detectProjectInstallation,\n deriveInstallMode,\n} from \"../lib/installation/index.js\";\nimport { checkPermissions } from \"../lib/permission-checker.js\";\nimport { getInstallationInfo } from \"../lib/plugins/plugin-info.js\";\nimport {\n claudePluginInstall,\n claudePluginMarketplaceExists,\n claudePluginMarketplaceAdd,\n} from \"../utils/exec.js\";\nimport {\n ASCII_LOGO,\n CLAUDE_SRC_DIR,\n CLI_BIN_NAME,\n DEFAULT_BRANDING,\n GLOBAL_INSTALL_ROOT,\n} from \"../consts.js\";\nimport { SelectList, type SelectListItem } from \"../components/common/select-list.js\";\nimport {\n KEY_LABEL_ARROWS_VERT,\n KEY_LABEL_ENTER,\n KEY_LABEL_ESC,\n} from \"../components/wizard/hotkeys.js\";\nimport { getErrorMessage } from \"../utils/errors.js\";\nimport { EXIT_CODES } from \"../lib/exit-codes.js\";\nimport { getSkillById } from \"../lib/matrix/matrix-provider\";\nimport { loadProjectConfig } from \"../lib/configuration/project-config.js\";\nimport {\n enableBuffering,\n drainBuffer,\n disableBuffering,\n type StartupMessage,\n} from \"../utils/logger.js\";\nimport { SUCCESS_MESSAGES, STATUS_MESSAGES } from \"../utils/messages.js\";\nimport { ensureBlankGlobalConfig } from \"../lib/configuration/config-writer.js\";\n\n/** Clears the visible terminal area so the next render starts clean. */\nfunction clearTerminalOutput(): void {\n process.stdout.write(\"\\x1b[2J\\x1b[H\");\n}\n\nconst DASHBOARD_OPTIONS: SelectListItem<string>[] = [\n { label: \"Edit\", value: \"edit\" },\n { label: \"Compile\", value: \"compile\" },\n { label: \"Doctor\", value: \"doctor\" },\n { label: \"List\", value: \"list\" },\n];\n\ntype DashboardProps = {\n onSelect: (command: string) => void;\n onCancel: () => void;\n};\n\nconst Dashboard: React.FC<DashboardProps> = ({ onSelect, onCancel }) => {\n const { exit } = useApp();\n\n return (\n <Box flexDirection=\"column\">\n <Text bold>{DEFAULT_BRANDING.NAME}</Text>\n <Text> </Text>\n <SelectList\n items={DASHBOARD_OPTIONS}\n onSelect={(command) => {\n onSelect(command);\n exit();\n }}\n onCancel={() => {\n onCancel();\n exit();\n }}\n />\n <Text> </Text>\n <Text dimColor>\n {\" \"}\n {KEY_LABEL_ARROWS_VERT} Navigate {\" \"}\n {KEY_LABEL_ENTER} Confirm {\" \"}\n {KEY_LABEL_ESC} Exit\n </Text>\n </Box>\n );\n};\n\nexport type DashboardData = {\n skillCount: number;\n agentCount: number;\n mode: string;\n source?: string;\n};\n\n/** Gathers dashboard data from the installation and project config. */\nexport async function getDashboardData(projectDir: string): Promise<DashboardData> {\n const [info, loaded] = await Promise.all([getInstallationInfo(), loadProjectConfig(projectDir)]);\n\n // Skill count from config (canonical source of truth for installed skills)\n const skillCount = loaded?.config?.skills?.length ?? 0;\n // Agent count from filesystem (compiled .md files in agents dir)\n const agentCount = info?.agentCount ?? 0;\n const mode =\n info?.mode ?? (loaded?.config?.skills ? deriveInstallMode(loaded.config.skills) : \"local\");\n const source = loaded?.config?.source;\n\n return { skillCount, agentCount, mode, source };\n}\n\n/** Formats the dashboard summary as plain text lines (for non-interactive/test output). */\nexport function formatDashboardText(data: DashboardData): string {\n const modeLabel = data.mode === \"plugin\" ? \"Plugin\" : \"Local\";\n const lines = [\n DEFAULT_BRANDING.NAME,\n \"\",\n ` Skills: ${data.skillCount} installed`,\n ` Agents: ${data.agentCount} compiled`,\n ` Mode: ${modeLabel}`,\n ];\n if (data.source) {\n lines.push(` Source: ${data.source}`);\n }\n lines.push(\"\");\n lines.push(` [Edit] [Compile] [Doctor] [List]`);\n return lines.join(\"\\n\");\n}\n\n/**\n * Shows the project dashboard and returns the selected command (or null if cancelled).\n * In non-interactive environments (no TTY), prints the summary text and returns null.\n */\nexport async function showDashboard(\n projectDir: string,\n log?: (message: string) => void,\n): Promise<string | null> {\n const data = await getDashboardData(projectDir);\n\n // Non-interactive: print text summary and exit (CI, piped, tests)\n if (!process.stdin.isTTY) {\n const output = log ?? console.log;\n output(formatDashboardText(data));\n return null;\n }\n\n let selectedCommand: string | null = null;\n\n const { waitUntilExit } = render(\n <Dashboard\n onSelect={(command) => {\n selectedCommand = command;\n }}\n onCancel={() => {\n selectedCommand = null;\n }}\n />,\n );\n\n await waitUntilExit();\n clearTerminalOutput();\n\n return selectedCommand;\n}\n\nexport default class Init extends BaseCommand {\n static summary = `Initialize ${DEFAULT_BRANDING.NAME} in this project`;\n static description =\n \"Interactive wizard to set up skills and agents. Supports Plugin Mode (native install) and Local Mode (copy to .claude/).\";\n\n static examples = [\n {\n description: \"Start the setup wizard\",\n command: \"<%= config.bin %> <%= command.id %>\",\n },\n {\n description: \"Initialize from a custom marketplace\",\n command: \"<%= config.bin %> <%= command.id %> --source github:org/marketplace\",\n },\n {\n description: \"Force refresh skills from remote\",\n command: \"<%= config.bin %> <%= command.id %> --refresh\",\n },\n ];\n\n static flags = {\n ...BaseCommand.baseFlags,\n refresh: Flags.boolean({\n description: \"Force refresh from remote source\",\n default: false,\n }),\n };\n\n async run(): Promise<void> {\n const { flags } = await this.parse(Init);\n const projectDir = process.cwd();\n\n // For \"already initialized\" check, only look at the target directory (no global fallback)\n const existingInstallation = await detectProjectInstallation(projectDir);\n\n if (existingInstallation) {\n const selectedCommand = await showDashboard(projectDir, (msg) => this.log(msg));\n if (selectedCommand) {\n await this.config.runCommand(selectedCommand);\n }\n return;\n }\n\n // Auto-create blank global config on first init from a project directory.\n // This ensures the project config can always import from global.\n // Resolve both paths through realpathSync — on macOS /var is a symlink to\n // /private/var, so os.homedir() and process.cwd() can return different\n // prefixes for the same directory.\n const isGlobalRoot = fs.realpathSync(projectDir) === fs.realpathSync(GLOBAL_INSTALL_ROOT);\n if (!isGlobalRoot) {\n const created = await ensureBlankGlobalConfig();\n if (created) {\n this.log(\"Created blank global config at ~/\" + CLAUDE_SRC_DIR);\n }\n }\n\n enableBuffering();\n\n let sourceResult: SourceLoadResult;\n let startupMessages: StartupMessage[] = [];\n try {\n sourceResult = await loadSkillsMatrixFromSource({\n sourceFlag: flags.source,\n projectDir,\n forceRefresh: flags.refresh,\n });\n } catch (error) {\n disableBuffering();\n this.error(getErrorMessage(error), {\n exit: EXIT_CODES.ERROR,\n });\n }\n\n startupMessages = drainBuffer();\n disableBuffering();\n\n let wizardResult: WizardResultV2 | null = null;\n\n const marketplaceLabel = getMarketplaceLabel(sourceResult);\n const { waitUntilExit } = render(\n <Wizard\n version={this.config.version}\n marketplaceLabel={marketplaceLabel}\n logo={ASCII_LOGO}\n projectDir={projectDir}\n startupMessages={startupMessages}\n onComplete={(result) => {\n wizardResult = result;\n }}\n onCancel={() => {\n this.log(\"Setup cancelled\");\n }}\n />,\n );\n\n await waitUntilExit();\n\n // TypeScript can't track that onComplete callback mutates wizardResult before waitUntilExit resolves\n const result = wizardResult as WizardResultV2 | null;\n\n if (!result || result.cancelled) {\n this.exit(EXIT_CODES.CANCELLED);\n }\n\n if (result.skills.length === 0) {\n this.error(\"No skills selected\", { exit: EXIT_CODES.ERROR });\n }\n\n await this.handleInstallation(result, sourceResult, flags);\n }\n\n private async handleInstallation(\n result: WizardResultV2,\n sourceResult: SourceLoadResult,\n flags: { source?: string; refresh: boolean },\n ): Promise<void> {\n const projectDir = process.cwd();\n const installMode = deriveInstallMode(result.skills);\n\n this.log(\"\\n\");\n this.log(`Selected ${result.skills.length} skills`);\n this.log(\n `Install mode: ${installMode === \"plugin\" ? \"Plugin (native install)\" : \"Local (copy to .claude/skills/)\"}`,\n );\n\n if (installMode === \"plugin\") {\n await this.installIndividualPlugins(result, sourceResult, flags, projectDir);\n return;\n }\n\n await this.installLocalMode(result, sourceResult, flags, projectDir);\n }\n\n private async installIndividualPlugins(\n result: WizardResultV2,\n sourceResult: SourceLoadResult,\n flags: { source?: string },\n projectDir: string,\n ): Promise<void> {\n // Lazily resolve marketplace name if not already set (e.g. BUILT_IN_MATRIX skips fetch)\n if (!sourceResult.marketplace) {\n try {\n const marketplaceResult = await fetchMarketplace(sourceResult.sourceConfig.source, {});\n sourceResult.marketplace = marketplaceResult.marketplace.name;\n } catch {\n this.warn(\"Could not resolve marketplace. Falling back to Local Mode...\");\n await this.installLocalMode(result, sourceResult, flags, projectDir);\n return;\n }\n }\n\n // After lazy resolution, marketplace is guaranteed to be set (or we returned above)\n const marketplace = sourceResult.marketplace;\n\n const marketplaceExists = await claudePluginMarketplaceExists(marketplace);\n\n if (!marketplaceExists) {\n this.log(`Registering marketplace \"${marketplace}\"...`);\n try {\n const marketplaceSource = sourceResult.sourceConfig.source.replace(/^github:/, \"\");\n await claudePluginMarketplaceAdd(marketplaceSource);\n this.log(`Registered marketplace: ${marketplace}`);\n } catch (error) {\n this.error(getErrorMessage(error), {\n exit: EXIT_CODES.ERROR,\n });\n }\n }\n\n this.log(\"Installing skill plugins...\");\n for (const skill of result.skills.filter((s) => s.source !== \"local\")) {\n const pluginRef = `${skill.id}@${marketplace}`;\n const pluginScope = skill.scope === \"global\" ? \"user\" : \"project\";\n try {\n await claudePluginInstall(pluginRef, pluginScope, projectDir);\n this.log(` Installed ${pluginRef}`);\n } catch (error) {\n this.error(`Failed to install plugin ${pluginRef}: ${getErrorMessage(error)}`, {\n exit: EXIT_CODES.ERROR,\n });\n }\n }\n\n const pluginSkillCount = result.skills.filter((s) => s.source !== \"local\").length;\n this.log(`Installed ${pluginSkillCount} skill plugins\\n`);\n\n this.log(\"Generating configuration...\");\n try {\n const configResult = await installPluginConfig({\n wizardResult: result,\n sourceResult,\n projectDir,\n sourceFlag: flags.source,\n });\n\n if (configResult.wasMerged) {\n this.log(`Merged with existing config at ${configResult.mergedConfigPath}`);\n }\n\n this.log(`Configuration saved (${configResult.config.agents.length} agents)\\n`);\n this.log(STATUS_MESSAGES.COMPILING_AGENTS);\n this.log(`Compiled ${configResult.compiledAgents.length} agents to .claude/agents/\\n`);\n\n this.log(`${SUCCESS_MESSAGES.INIT_SUCCESS}\\n`);\n this.log(\"Agents compiled to:\");\n this.log(` ${configResult.agentsDir}`);\n for (const agentName of configResult.compiledAgents) {\n this.log(` ${agentName}.md`);\n }\n this.log(\"\");\n this.log(\"Configuration:\");\n this.log(` ${configResult.configPath}`);\n this.log(\"\");\n this.log(\"To customize agent-skill assignments:\");\n this.log(` 1. Edit .claude-src/config.ts`);\n this.log(` 2. Run '${CLI_BIN_NAME} compile' to regenerate agents`);\n this.log(\"\");\n\n const permissionWarning = await checkPermissions(projectDir);\n if (permissionWarning) {\n const { waitUntilExit } = render(permissionWarning);\n await waitUntilExit();\n }\n } catch (error) {\n this.handleError(error);\n }\n }\n\n private async installLocalMode(\n result: WizardResultV2,\n sourceResult: SourceLoadResult,\n flags: { source?: string },\n projectDir: string,\n ): Promise<void> {\n this.log(\"Copying skills to local directory...\");\n try {\n const installResult = await installLocal({\n wizardResult: result,\n sourceResult,\n projectDir,\n sourceFlag: flags.source,\n });\n\n this.log(`Copied ${installResult.copiedSkills.length} skills to .claude/skills/\\n`);\n this.log(\"Generating configuration...\");\n\n if (installResult.wasMerged) {\n this.log(`Merged with existing config at ${installResult.mergedConfigPath}`);\n }\n\n this.log(`Configuration saved (${installResult.config.agents.length} agents)\\n`);\n this.log(STATUS_MESSAGES.COMPILING_AGENTS);\n this.log(`Compiled ${installResult.compiledAgents.length} agents to .claude/agents/\\n`);\n\n this.log(`${SUCCESS_MESSAGES.INIT_SUCCESS}\\n`);\n this.log(\"Skills copied to:\");\n this.log(` ${installResult.skillsDir}`);\n for (const copiedSkill of installResult.copiedSkills) {\n const displayName = getSkillById(copiedSkill.skillId).displayName;\n this.log(` ${displayName}/`);\n }\n this.log(\"\");\n this.log(\"Agents compiled to:\");\n this.log(` ${installResult.agentsDir}`);\n for (const agentName of installResult.compiledAgents) {\n this.log(` ${agentName}.md`);\n }\n this.log(\"\");\n this.log(\"Configuration:\");\n this.log(` ${installResult.configPath}`);\n this.log(\"\");\n this.log(\"To customize agent-skill assignments:\");\n this.log(` 1. Edit .claude-src/config.ts`);\n this.log(` 2. Run '${CLI_BIN_NAME} compile' to regenerate agents`);\n this.log(\"\");\n\n const permissionWarning = await checkPermissions(projectDir);\n if (permissionWarning) {\n const { waitUntilExit } = render(permissionWarning);\n await waitUntilExit();\n }\n } catch (error) {\n this.handleError(error);\n }\n }\n}\n","import React from \"react\";\n\nimport { Text, Box } from \"ink\";\nimport path from \"path\";\n\nimport { CLAUDE_DIR, CLI_COLORS, MAX_CONFIG_FILE_SIZE } from \"../consts\";\nimport { fileExists, readFileSafe } from \"../utils/fs\";\nimport { warn } from \"../utils/logger\";\nimport { settingsFileSchema, warnUnknownFields } from \"./schemas\";\n\ntype PermissionConfig = {\n allow?: string[];\n deny?: string[];\n};\n\ntype SettingsFile = {\n permissions?: PermissionConfig;\n};\n\nexport async function checkPermissions(projectRoot: string): Promise<React.ReactElement | null> {\n const settingsPath = path.join(projectRoot, CLAUDE_DIR, \"settings.json\");\n const localSettingsPath = path.join(projectRoot, CLAUDE_DIR, \"settings.local.json\");\n\n let permissions: PermissionConfig | undefined;\n\n for (const filePath of [localSettingsPath, settingsPath]) {\n if (await fileExists(filePath)) {\n try {\n const content = await readFileSafe(filePath, MAX_CONFIG_FILE_SIZE);\n const raw = JSON.parse(content);\n if (typeof raw === \"object\" && raw !== null && !Array.isArray(raw)) {\n // Known Claude CLI settings.json fields (permissions is ours; the rest are managed by Claude CLI)\n const EXPECTED_SETTINGS_KEYS = [\n \"permissions\",\n \"enabledPlugins\",\n \"env\",\n \"allowedTools\",\n \"customInstructions\",\n \"defaultModel\",\n ] as const;\n warnUnknownFields(\n raw as Record<string, unknown>,\n EXPECTED_SETTINGS_KEYS,\n `settings file '${filePath}'`,\n );\n }\n const result = settingsFileSchema.safeParse(raw);\n const parsed: SettingsFile = result.success ? (result.data as SettingsFile) : {};\n if (parsed.permissions) {\n permissions = parsed.permissions;\n break;\n }\n } catch {\n warn(`Malformed settings file at '${filePath}' — skipping`);\n }\n }\n }\n\n if (!permissions) {\n return (\n <Box flexDirection=\"column\" borderStyle=\"round\" borderColor={CLI_COLORS.WARNING} padding={1}>\n <Text bold color={CLI_COLORS.WARNING}>\n Permission Notice\n </Text>\n <Text>No permissions configured in .claude/settings.json</Text>\n <Text>Agents will prompt for approval on each tool use.</Text>\n <Text> </Text>\n <Text>For autonomous operation, add to .claude/settings.json:</Text>\n <Text> </Text>\n <Text color=\"dim\">{\"{\"}</Text>\n <Text color=\"dim\">{' \"permissions\": {'}</Text>\n <Text color=\"dim\">{' \"allow\": ['}</Text>\n <Text color=\"dim\">{' \"Read(*)\",'}</Text>\n <Text color=\"dim\">{' \"Bash(git *)\",'}</Text>\n <Text color=\"dim\">{' \"Bash(bun *)\"'}</Text>\n <Text color=\"dim\">{\" ]\"}</Text>\n <Text color=\"dim\">{\" }\"}</Text>\n <Text color=\"dim\">{\"}\"}</Text>\n </Box>\n );\n }\n\n const hasRestrictiveBash = permissions.deny?.some(\n (rule) => rule === \"Bash(*)\" || rule === \"Bash\",\n );\n const hasNoAllows = !permissions.allow || permissions.allow.length === 0;\n\n if (hasRestrictiveBash || hasNoAllows) {\n return (\n <Box flexDirection=\"column\" borderStyle=\"round\" borderColor={CLI_COLORS.WARNING} padding={1}>\n <Text bold color={CLI_COLORS.WARNING}>\n Permission Warnings\n </Text>\n {hasRestrictiveBash && (\n <Text>\n ⚠ Bash is denied in permissions. Some agents require Bash for git, testing, and build\n commands.\n </Text>\n )}\n {hasNoAllows && (\n <Text>⚠ No allow rules configured. Agents will prompt for each tool use.</Text>\n )}\n </Box>\n );\n }\n\n return null;\n}\n"],"mappings":"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","names":["Box","Text","jsx","jsxs","Box","Text","result"]}
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
} from "./chunk-7SOPVGDV.js";
|
|
5
5
|
import {
|
|
6
6
|
SearchModal
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-UFKDY45I.js";
|
|
8
8
|
import {
|
|
9
9
|
useFocusedListItem
|
|
10
10
|
} from "./chunk-GG4BSB6S.js";
|
|
@@ -14,7 +14,7 @@ import {
|
|
|
14
14
|
import {
|
|
15
15
|
getSkillById,
|
|
16
16
|
matrix
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-NG2GGK6P.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-TPXDHJDB.js.map
|
|
@@ -21,13 +21,13 @@ import {
|
|
|
21
21
|
KEY_LABEL_ENTER,
|
|
22
22
|
KEY_LABEL_ESC,
|
|
23
23
|
isHotkey
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-CBYRFAUN.js";
|
|
25
25
|
import {
|
|
26
26
|
DEFAULT_SOURCE,
|
|
27
27
|
addSource,
|
|
28
28
|
getSourceSummary,
|
|
29
29
|
removeSource
|
|
30
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-FVMYBN5K.js";
|
|
31
31
|
import {
|
|
32
32
|
getErrorMessage,
|
|
33
33
|
verbose
|
|
@@ -270,4 +270,4 @@ var StepSettings = ({
|
|
|
270
270
|
export {
|
|
271
271
|
StepSettings
|
|
272
272
|
};
|
|
273
|
-
//# sourceMappingURL=chunk-
|
|
273
|
+
//# sourceMappingURL=chunk-TUGXTCGX.js.map
|
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
KEY_LABEL_ARROWS_VERT,
|
|
7
7
|
KEY_LABEL_ENTER,
|
|
8
8
|
KEY_LABEL_ESC
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-CBYRFAUN.js";
|
|
10
10
|
import {
|
|
11
11
|
CLI_COLORS
|
|
12
12
|
} from "./chunk-EGMQ3SXN.js";
|
|
@@ -81,4 +81,4 @@ var SearchModal = ({
|
|
|
81
81
|
export {
|
|
82
82
|
SearchModal
|
|
83
83
|
};
|
|
84
|
-
//# sourceMappingURL=chunk-
|
|
84
|
+
//# sourceMappingURL=chunk-UFKDY45I.js.map
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
StackSelection
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-Q53GBFTO.js";
|
|
5
5
|
import {
|
|
6
6
|
useMeasuredHeight
|
|
7
7
|
} from "./chunk-K77I4XGL.js";
|
|
8
8
|
import {
|
|
9
9
|
DomainSelection
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-HJY4354Y.js";
|
|
11
11
|
import {
|
|
12
12
|
ViewTitle
|
|
13
13
|
} from "./chunk-AQYAVLZK.js";
|
|
14
14
|
import {
|
|
15
15
|
useWizardStore
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-E3MF6GGS.js";
|
|
17
17
|
import {
|
|
18
18
|
init_esm_shims
|
|
19
19
|
} from "./chunk-DHET7RCE.js";
|
|
@@ -37,4 +37,4 @@ var StepStack = ({ onCancel }) => {
|
|
|
37
37
|
export {
|
|
38
38
|
StepStack
|
|
39
39
|
};
|
|
40
|
-
//# sourceMappingURL=chunk-
|
|
40
|
+
//# sourceMappingURL=chunk-ULP3GGXG.js.map
|
|
@@ -8,10 +8,10 @@ import {
|
|
|
8
8
|
import {
|
|
9
9
|
HOTKEY_TOGGLE_LABELS,
|
|
10
10
|
isHotkey
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-CBYRFAUN.js";
|
|
12
12
|
import {
|
|
13
13
|
getSkillById
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-NG2GGK6P.js";
|
|
15
15
|
import {
|
|
16
16
|
CLI_COLORS
|
|
17
17
|
} from "./chunk-EGMQ3SXN.js";
|
|
@@ -341,4 +341,4 @@ var CategoryGrid = ({
|
|
|
341
341
|
export {
|
|
342
342
|
CategoryGrid
|
|
343
343
|
};
|
|
344
|
-
//# sourceMappingURL=chunk-
|
|
344
|
+
//# sourceMappingURL=chunk-X6LXHVA6.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
typedEntries
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-NG2GGK6P.js";
|
|
5
5
|
import {
|
|
6
6
|
init_esm_shims
|
|
7
7
|
} from "./chunk-DHET7RCE.js";
|
|
@@ -363,4 +363,4 @@ export {
|
|
|
363
363
|
createMockCompileConfig,
|
|
364
364
|
testSkillToResolvedSkill
|
|
365
365
|
};
|
|
366
|
-
//# sourceMappingURL=chunk-
|
|
366
|
+
//# sourceMappingURL=chunk-ZU7AOE3X.js.map
|
|
@@ -2,15 +2,14 @@
|
|
|
2
2
|
import {
|
|
3
3
|
compileAllAgentPlugins,
|
|
4
4
|
printAgentCompilationSummary
|
|
5
|
-
} from "../../chunk-
|
|
5
|
+
} from "../../chunk-7JVDZFJG.js";
|
|
6
6
|
import {
|
|
7
7
|
compileAllSkillPlugins,
|
|
8
8
|
compileSkillPlugin,
|
|
9
9
|
printCompilationSummary
|
|
10
|
-
} from "../../chunk-
|
|
10
|
+
} from "../../chunk-FVMYBN5K.js";
|
|
11
11
|
import "../../chunk-RRBWNEG3.js";
|
|
12
|
-
import "../../chunk-
|
|
13
|
-
import "../../chunk-4OBRPE6A.js";
|
|
12
|
+
import "../../chunk-NG2GGK6P.js";
|
|
14
13
|
import {
|
|
15
14
|
BaseCommand
|
|
16
15
|
} from "../../chunk-IJLAVOKZ.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/cli/commands/build/plugins.ts"],"sourcesContent":["import { Flags } from \"@oclif/core\";\nimport path from \"path\";\n\nimport { BaseCommand } from \"../../base-command\";\nimport { setVerbose } from \"../../utils/logger\";\nimport { DIRS } from \"../../consts\";\nimport {\n compileAllSkillPlugins,\n compileSkillPlugin,\n printCompilationSummary,\n} from \"../../lib/skills\";\nimport { compileAllAgentPlugins, printAgentCompilationSummary } from \"../../lib/agents\";\n\nconst DEFAULT_OUTPUT_DIR = \"dist/plugins\";\n\nexport default class BuildPlugins extends BaseCommand {\n static summary = \"Build skills and agents into standalone plugins\";\n\n static description =\n \"Build skills and agents into standalone plugins. By default, compiles all skills. Use --skill to compile a specific skill only. Use --agents-dir to also compile agents.\";\n\n static examples = [\n \"<%= config.bin %> <%= command.id %>\",\n \"<%= config.bin %> <%= command.id %> --skill cli-commander\",\n \"<%= config.bin %> <%= command.id %> --skills-dir ./src/skills --output-dir ./plugins\",\n \"<%= config.bin %> <%= command.id %> --agents-dir ./agents\",\n \"<%= config.bin %> <%= command.id %> --verbose\",\n ];\n\n static flags = {\n ...BaseCommand.baseFlags,\n \"skills-dir\": Flags.string({\n char: \"s\",\n description: \"Skills source directory\",\n default: DIRS.skills,\n }),\n \"agents-dir\": Flags.string({\n char: \"a\",\n description: \"Agents source directory (builds one plugin per agent)\",\n }),\n \"output-dir\": Flags.string({\n char: \"o\",\n description: \"Output directory\",\n default: DEFAULT_OUTPUT_DIR,\n }),\n skill: Flags.string({\n description: \"Compile only a specific skill (path to skill directory)\",\n }),\n verbose: Flags.boolean({\n char: \"v\",\n description: \"Enable verbose logging\",\n default: false,\n }),\n };\n\n async run(): Promise<void> {\n const { flags } = await this.parse(BuildPlugins);\n\n setVerbose(flags.verbose);\n\n const projectRoot = process.cwd();\n const skillsDir = path.resolve(projectRoot, flags[\"skills-dir\"]);\n const outputDir = path.resolve(projectRoot, flags[\"output-dir\"]);\n\n this.log(\"\");\n this.log(\"Compiling skill plugins\");\n this.log(` Skills directory: ${skillsDir}`);\n this.log(` Output directory: ${outputDir}`);\n this.log(\"\");\n\n try {\n if (flags.skill) {\n const skillPath = path.resolve(skillsDir, flags.skill);\n this.log(`Compiling skill at ${skillPath}...`);\n\n const result = await compileSkillPlugin({\n skillPath,\n outputDir,\n });\n\n this.log(`Compiled ${result.skillName}`);\n this.log(` Plugin path: ${result.pluginPath}`);\n } else {\n this.log(\"Finding and compiling all skills...\");\n\n const results = await compileAllSkillPlugins(skillsDir, outputDir);\n\n this.log(`Compiled ${results.length} skill plugins`);\n printCompilationSummary(results);\n }\n\n if (flags[\"agents-dir\"]) {\n const agentsDir = path.resolve(projectRoot, flags[\"agents-dir\"]);\n\n this.log(\"\");\n this.log(\"Compiling agent plugins\");\n this.log(` Agents directory: ${agentsDir}`);\n this.log(\"\");\n\n this.log(\"Finding and compiling all agents...\");\n\n const agentResults = await compileAllAgentPlugins(agentsDir, outputDir);\n\n this.log(`Compiled ${agentResults.length} agent plugins`);\n printAgentCompilationSummary(agentResults);\n }\n\n this.log(\"\");\n this.logSuccess(\"Plugin compilation complete!\");\n } catch (error) {\n this.log(\"Compilation failed\");\n this.handleError(error);\n }\n }\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/cli/commands/build/plugins.ts"],"sourcesContent":["import { Flags } from \"@oclif/core\";\nimport path from \"path\";\n\nimport { BaseCommand } from \"../../base-command\";\nimport { setVerbose } from \"../../utils/logger\";\nimport { DIRS } from \"../../consts\";\nimport {\n compileAllSkillPlugins,\n compileSkillPlugin,\n printCompilationSummary,\n} from \"../../lib/skills\";\nimport { compileAllAgentPlugins, printAgentCompilationSummary } from \"../../lib/agents\";\n\nconst DEFAULT_OUTPUT_DIR = \"dist/plugins\";\n\nexport default class BuildPlugins extends BaseCommand {\n static summary = \"Build skills and agents into standalone plugins\";\n\n static description =\n \"Build skills and agents into standalone plugins. By default, compiles all skills. Use --skill to compile a specific skill only. Use --agents-dir to also compile agents.\";\n\n static examples = [\n \"<%= config.bin %> <%= command.id %>\",\n \"<%= config.bin %> <%= command.id %> --skill cli-commander\",\n \"<%= config.bin %> <%= command.id %> --skills-dir ./src/skills --output-dir ./plugins\",\n \"<%= config.bin %> <%= command.id %> --agents-dir ./agents\",\n \"<%= config.bin %> <%= command.id %> --verbose\",\n ];\n\n static flags = {\n ...BaseCommand.baseFlags,\n \"skills-dir\": Flags.string({\n char: \"s\",\n description: \"Skills source directory\",\n default: DIRS.skills,\n }),\n \"agents-dir\": Flags.string({\n char: \"a\",\n description: \"Agents source directory (builds one plugin per agent)\",\n }),\n \"output-dir\": Flags.string({\n char: \"o\",\n description: \"Output directory\",\n default: DEFAULT_OUTPUT_DIR,\n }),\n skill: Flags.string({\n description: \"Compile only a specific skill (path to skill directory)\",\n }),\n verbose: Flags.boolean({\n char: \"v\",\n description: \"Enable verbose logging\",\n default: false,\n }),\n };\n\n async run(): Promise<void> {\n const { flags } = await this.parse(BuildPlugins);\n\n setVerbose(flags.verbose);\n\n const projectRoot = process.cwd();\n const skillsDir = path.resolve(projectRoot, flags[\"skills-dir\"]);\n const outputDir = path.resolve(projectRoot, flags[\"output-dir\"]);\n\n this.log(\"\");\n this.log(\"Compiling skill plugins\");\n this.log(` Skills directory: ${skillsDir}`);\n this.log(` Output directory: ${outputDir}`);\n this.log(\"\");\n\n try {\n if (flags.skill) {\n const skillPath = path.resolve(skillsDir, flags.skill);\n this.log(`Compiling skill at ${skillPath}...`);\n\n const result = await compileSkillPlugin({\n skillPath,\n outputDir,\n });\n\n this.log(`Compiled ${result.skillName}`);\n this.log(` Plugin path: ${result.pluginPath}`);\n } else {\n this.log(\"Finding and compiling all skills...\");\n\n const results = await compileAllSkillPlugins(skillsDir, outputDir);\n\n this.log(`Compiled ${results.length} skill plugins`);\n printCompilationSummary(results);\n }\n\n if (flags[\"agents-dir\"]) {\n const agentsDir = path.resolve(projectRoot, flags[\"agents-dir\"]);\n\n this.log(\"\");\n this.log(\"Compiling agent plugins\");\n this.log(` Agents directory: ${agentsDir}`);\n this.log(\"\");\n\n this.log(\"Finding and compiling all agents...\");\n\n const agentResults = await compileAllAgentPlugins(agentsDir, outputDir);\n\n this.log(`Compiled ${agentResults.length} agent plugins`);\n printAgentCompilationSummary(agentResults);\n }\n\n this.log(\"\");\n this.logSuccess(\"Plugin compilation complete!\");\n } catch (error) {\n this.log(\"Compilation failed\");\n this.handleError(error);\n }\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA,SAAS,aAAa;AACtB,OAAO,UAAU;AAYjB,IAAM,qBAAqB;AAE3B,IAAqB,eAArB,MAAqB,sBAAqB,YAAY;AAAA,EACpD,OAAO,UAAU;AAAA,EAEjB,OAAO,cACL;AAAA,EAEF,OAAO,WAAW;AAAA,IAChB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EAEA,OAAO,QAAQ;AAAA,IACb,GAAG,YAAY;AAAA,IACf,cAAc,MAAM,OAAO;AAAA,MACzB,MAAM;AAAA,MACN,aAAa;AAAA,MACb,SAAS,KAAK;AAAA,IAChB,CAAC;AAAA,IACD,cAAc,MAAM,OAAO;AAAA,MACzB,MAAM;AAAA,MACN,aAAa;AAAA,IACf,CAAC;AAAA,IACD,cAAc,MAAM,OAAO;AAAA,MACzB,MAAM;AAAA,MACN,aAAa;AAAA,MACb,SAAS;AAAA,IACX,CAAC;AAAA,IACD,OAAO,MAAM,OAAO;AAAA,MAClB,aAAa;AAAA,IACf,CAAC;AAAA,IACD,SAAS,MAAM,QAAQ;AAAA,MACrB,MAAM;AAAA,MACN,aAAa;AAAA,MACb,SAAS;AAAA,IACX,CAAC;AAAA,EACH;AAAA,EAEA,MAAM,MAAqB;AACzB,UAAM,EAAE,MAAM,IAAI,MAAM,KAAK,MAAM,aAAY;AAE/C,eAAW,MAAM,OAAO;AAExB,UAAM,cAAc,QAAQ,IAAI;AAChC,UAAM,YAAY,KAAK,QAAQ,aAAa,MAAM,YAAY,CAAC;AAC/D,UAAM,YAAY,KAAK,QAAQ,aAAa,MAAM,YAAY,CAAC;AAE/D,SAAK,IAAI,EAAE;AACX,SAAK,IAAI,yBAAyB;AAClC,SAAK,IAAI,uBAAuB,SAAS,EAAE;AAC3C,SAAK,IAAI,uBAAuB,SAAS,EAAE;AAC3C,SAAK,IAAI,EAAE;AAEX,QAAI;AACF,UAAI,MAAM,OAAO;AACf,cAAM,YAAY,KAAK,QAAQ,WAAW,MAAM,KAAK;AACrD,aAAK,IAAI,sBAAsB,SAAS,KAAK;AAE7C,cAAM,SAAS,MAAM,mBAAmB;AAAA,UACtC;AAAA,UACA;AAAA,QACF,CAAC;AAED,aAAK,IAAI,YAAY,OAAO,SAAS,EAAE;AACvC,aAAK,IAAI,kBAAkB,OAAO,UAAU,EAAE;AAAA,MAChD,OAAO;AACL,aAAK,IAAI,qCAAqC;AAE9C,cAAM,UAAU,MAAM,uBAAuB,WAAW,SAAS;AAEjE,aAAK,IAAI,YAAY,QAAQ,MAAM,gBAAgB;AACnD,gCAAwB,OAAO;AAAA,MACjC;AAEA,UAAI,MAAM,YAAY,GAAG;AACvB,cAAM,YAAY,KAAK,QAAQ,aAAa,MAAM,YAAY,CAAC;AAE/D,aAAK,IAAI,EAAE;AACX,aAAK,IAAI,yBAAyB;AAClC,aAAK,IAAI,uBAAuB,SAAS,EAAE;AAC3C,aAAK,IAAI,EAAE;AAEX,aAAK,IAAI,qCAAqC;AAE9C,cAAM,eAAe,MAAM,uBAAuB,WAAW,SAAS;AAEtE,aAAK,IAAI,YAAY,aAAa,MAAM,gBAAgB;AACxD,qCAA6B,YAAY;AAAA,MAC3C;AAEA,WAAK,IAAI,EAAE;AACX,WAAK,WAAW,8BAA8B;AAAA,IAChD,SAAS,OAAO;AACd,WAAK,IAAI,oBAAoB;AAC7B,WAAK,YAAY,KAAK;AAAA,IACxB;AAAA,EACF;AACF;","names":[]}
|
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
getAgentDefinitions
|
|
4
|
-
} from "../../chunk-
|
|
4
|
+
} from "../../chunk-7JVDZFJG.js";
|
|
5
5
|
import {
|
|
6
6
|
compileStackPlugin,
|
|
7
7
|
loadStacks,
|
|
8
8
|
printStackCompilationSummary
|
|
9
|
-
} from "../../chunk-
|
|
9
|
+
} from "../../chunk-FVMYBN5K.js";
|
|
10
10
|
import "../../chunk-RRBWNEG3.js";
|
|
11
|
-
import "../../chunk-
|
|
12
|
-
import "../../chunk-4OBRPE6A.js";
|
|
11
|
+
import "../../chunk-NG2GGK6P.js";
|
|
13
12
|
import {
|
|
14
13
|
BaseCommand,
|
|
15
14
|
EXIT_CODES
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/cli/commands/build/stack.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { Flags } from \"@oclif/core\";\nimport { Select } from \"@inkjs/ui\";\nimport { render, Box, Text } from \"ink\";\nimport path from \"path\";\n\nimport { BaseCommand } from \"../../base-command\";\nimport { setVerbose } from \"../../utils/logger\";\nimport { PROJECT_ROOT, STACKS_FILE_PATH } from \"../../consts\";\nimport { compileStackPlugin, printStackCompilationSummary, loadStacks } from \"../../lib/stacks\";\nimport { getAgentDefinitions } from \"../../lib/agents\";\nimport { EXIT_CODES } from \"../../lib/exit-codes\";\n\nconst DEFAULT_OUTPUT_DIR = \"dist/stacks\";\n\ntype StackSelectorProps = {\n availableStacks: string[];\n onSelect: (stackId: string) => void;\n};\n\nconst StackSelector: React.FC<StackSelectorProps> = ({ availableStacks, onSelect }) => {\n return (\n <Box flexDirection=\"column\">\n <Text>Select a stack to compile:</Text>\n <Select\n options={availableStacks.map((name) => ({\n value: name,\n label: name,\n }))}\n onChange={(value) => {\n onSelect(value);\n }}\n />\n </Box>\n );\n};\n\nexport default class BuildStack extends BaseCommand {\n static summary = \"Build a stack into a standalone plugin\";\n\n static description =\n \"Build a stack into a standalone plugin (requires skills repo). If no stack is specified, you will be prompted to select one.\";\n\n static examples = [\n \"<%= config.bin %> <%= command.id %>\",\n \"<%= config.bin %> <%= command.id %> --stack frontend-stack\",\n \"<%= config.bin %> <%= command.id %> --stack frontend-stack --output-dir ./plugins\",\n \"<%= config.bin %> <%= command.id %> --agent-source /path/to/agents --refresh\",\n ];\n\n static flags = {\n ...BaseCommand.baseFlags,\n stack: Flags.string({\n description: \"Stack ID to compile (directory name in src/stacks/)\",\n }),\n \"output-dir\": Flags.string({\n char: \"o\",\n description: \"Output directory\",\n default: DEFAULT_OUTPUT_DIR,\n }),\n \"agent-source\": Flags.string({\n description: \"Agent partials source (default: local CLI)\",\n }),\n refresh: Flags.boolean({\n description: \"Force refresh remote agent source\",\n default: false,\n }),\n verbose: Flags.boolean({\n char: \"v\",\n description: \"Enable verbose logging\",\n default: false,\n }),\n };\n\n async run(): Promise<void> {\n const { flags } = await this.parse(BuildStack);\n\n setVerbose(flags.verbose);\n\n const projectRoot = process.cwd();\n const outputDir = path.resolve(projectRoot, flags[\"output-dir\"]);\n\n let stackId = flags.stack;\n\n if (!stackId) {\n const stacks = await loadStacks(projectRoot);\n const availableStacks = stacks.map((s) => s.id).sort();\n\n if (availableStacks.length === 0) {\n this.error(`No stacks found in ${STACKS_FILE_PATH}`, {\n exit: EXIT_CODES.ERROR,\n });\n }\n\n stackId = await new Promise<string>((resolve, reject) => {\n const { waitUntilExit } = render(\n <StackSelector\n availableStacks={availableStacks}\n onSelect={(selected) => {\n resolve(selected);\n }}\n />,\n );\n\n waitUntilExit().catch(reject);\n }).catch(() => {\n this.log(\"Cancelled\");\n this.exit(EXIT_CODES.CANCELLED);\n });\n }\n\n this.log(\"\");\n this.log(`Compiling stack plugin: ${stackId}`);\n this.log(` Output directory: ${outputDir}`);\n this.log(\"\");\n\n let agentSourcePath: string;\n try {\n this.log(flags[\"agent-source\"] ? \"Fetching agent partials...\" : \"Loading agent partials...\");\n const agentDefs = await getAgentDefinitions(flags[\"agent-source\"], {\n forceRefresh: flags.refresh,\n });\n agentSourcePath = agentDefs.sourcePath;\n this.log(\n flags[\"agent-source\"]\n ? `Agent partials fetched from: ${flags[\"agent-source\"]}`\n : `Agent partials loaded from: ${PROJECT_ROOT}`,\n );\n } catch (error) {\n this.log(\"Failed to load agent partials\");\n this.handleError(error);\n }\n\n try {\n this.log(`Compiling stack \"${stackId}\"...`);\n\n const result = await compileStackPlugin({\n stackId,\n outputDir,\n projectRoot,\n agentSourcePath,\n });\n\n this.log(`Compiled stack plugin: ${result.stackName}`);\n\n printStackCompilationSummary(result);\n\n this.log(\"\");\n this.logSuccess(\"Stack plugin compilation complete!\");\n } catch (error) {\n this.log(\"Compilation failed\");\n this.handleError(error);\n }\n }\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/cli/commands/build/stack.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { Flags } from \"@oclif/core\";\nimport { Select } from \"@inkjs/ui\";\nimport { render, Box, Text } from \"ink\";\nimport path from \"path\";\n\nimport { BaseCommand } from \"../../base-command\";\nimport { setVerbose } from \"../../utils/logger\";\nimport { PROJECT_ROOT, STACKS_FILE_PATH } from \"../../consts\";\nimport { compileStackPlugin, printStackCompilationSummary, loadStacks } from \"../../lib/stacks\";\nimport { getAgentDefinitions } from \"../../lib/agents\";\nimport { EXIT_CODES } from \"../../lib/exit-codes\";\n\nconst DEFAULT_OUTPUT_DIR = \"dist/stacks\";\n\ntype StackSelectorProps = {\n availableStacks: string[];\n onSelect: (stackId: string) => void;\n};\n\nconst StackSelector: React.FC<StackSelectorProps> = ({ availableStacks, onSelect }) => {\n return (\n <Box flexDirection=\"column\">\n <Text>Select a stack to compile:</Text>\n <Select\n options={availableStacks.map((name) => ({\n value: name,\n label: name,\n }))}\n onChange={(value) => {\n onSelect(value);\n }}\n />\n </Box>\n );\n};\n\nexport default class BuildStack extends BaseCommand {\n static summary = \"Build a stack into a standalone plugin\";\n\n static description =\n \"Build a stack into a standalone plugin (requires skills repo). If no stack is specified, you will be prompted to select one.\";\n\n static examples = [\n \"<%= config.bin %> <%= command.id %>\",\n \"<%= config.bin %> <%= command.id %> --stack frontend-stack\",\n \"<%= config.bin %> <%= command.id %> --stack frontend-stack --output-dir ./plugins\",\n \"<%= config.bin %> <%= command.id %> --agent-source /path/to/agents --refresh\",\n ];\n\n static flags = {\n ...BaseCommand.baseFlags,\n stack: Flags.string({\n description: \"Stack ID to compile (directory name in src/stacks/)\",\n }),\n \"output-dir\": Flags.string({\n char: \"o\",\n description: \"Output directory\",\n default: DEFAULT_OUTPUT_DIR,\n }),\n \"agent-source\": Flags.string({\n description: \"Agent partials source (default: local CLI)\",\n }),\n refresh: Flags.boolean({\n description: \"Force refresh remote agent source\",\n default: false,\n }),\n verbose: Flags.boolean({\n char: \"v\",\n description: \"Enable verbose logging\",\n default: false,\n }),\n };\n\n async run(): Promise<void> {\n const { flags } = await this.parse(BuildStack);\n\n setVerbose(flags.verbose);\n\n const projectRoot = process.cwd();\n const outputDir = path.resolve(projectRoot, flags[\"output-dir\"]);\n\n let stackId = flags.stack;\n\n if (!stackId) {\n const stacks = await loadStacks(projectRoot);\n const availableStacks = stacks.map((s) => s.id).sort();\n\n if (availableStacks.length === 0) {\n this.error(`No stacks found in ${STACKS_FILE_PATH}`, {\n exit: EXIT_CODES.ERROR,\n });\n }\n\n stackId = await new Promise<string>((resolve, reject) => {\n const { waitUntilExit } = render(\n <StackSelector\n availableStacks={availableStacks}\n onSelect={(selected) => {\n resolve(selected);\n }}\n />,\n );\n\n waitUntilExit().catch(reject);\n }).catch(() => {\n this.log(\"Cancelled\");\n this.exit(EXIT_CODES.CANCELLED);\n });\n }\n\n this.log(\"\");\n this.log(`Compiling stack plugin: ${stackId}`);\n this.log(` Output directory: ${outputDir}`);\n this.log(\"\");\n\n let agentSourcePath: string;\n try {\n this.log(flags[\"agent-source\"] ? \"Fetching agent partials...\" : \"Loading agent partials...\");\n const agentDefs = await getAgentDefinitions(flags[\"agent-source\"], {\n forceRefresh: flags.refresh,\n });\n agentSourcePath = agentDefs.sourcePath;\n this.log(\n flags[\"agent-source\"]\n ? `Agent partials fetched from: ${flags[\"agent-source\"]}`\n : `Agent partials loaded from: ${PROJECT_ROOT}`,\n );\n } catch (error) {\n this.log(\"Failed to load agent partials\");\n this.handleError(error);\n }\n\n try {\n this.log(`Compiling stack \"${stackId}\"...`);\n\n const result = await compileStackPlugin({\n stackId,\n outputDir,\n projectRoot,\n agentSourcePath,\n });\n\n this.log(`Compiled stack plugin: ${result.stackName}`);\n\n printStackCompilationSummary(result);\n\n this.log(\"\");\n this.logSuccess(\"Stack plugin compilation complete!\");\n } catch (error) {\n this.log(\"Compilation failed\");\n this.handleError(error);\n }\n }\n}\n"],"mappings":"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","names":[]}
|
package/dist/commands/compile.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import {
|
|
3
3
|
getAgentDefinitions,
|
|
4
4
|
recompileAgents
|
|
5
|
-
} from "../chunk-
|
|
5
|
+
} from "../chunk-7JVDZFJG.js";
|
|
6
6
|
import {
|
|
7
7
|
ERROR_MESSAGES,
|
|
8
8
|
INFO_MESSAGES,
|
|
@@ -13,15 +13,14 @@ import {
|
|
|
13
13
|
detectProjectInstallation,
|
|
14
14
|
discoverAllPluginSkills,
|
|
15
15
|
resolveSource
|
|
16
|
-
} from "../chunk-
|
|
16
|
+
} from "../chunk-FVMYBN5K.js";
|
|
17
17
|
import {
|
|
18
18
|
parseFrontmatter
|
|
19
19
|
} from "../chunk-RRBWNEG3.js";
|
|
20
|
-
import "../chunk-XXK6MFOA.js";
|
|
21
20
|
import {
|
|
22
21
|
typedEntries,
|
|
23
22
|
typedKeys
|
|
24
|
-
} from "../chunk-
|
|
23
|
+
} from "../chunk-NG2GGK6P.js";
|
|
25
24
|
import {
|
|
26
25
|
BaseCommand,
|
|
27
26
|
EXIT_CODES
|