@agents-inc/cli 0.84.0 → 0.85.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.
Files changed (123) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/dist/{chunk-KJX5G75S.js → chunk-2XVLQDNI.js} +114 -6
  3. package/dist/chunk-2XVLQDNI.js.map +1 -0
  4. package/dist/{chunk-LI5NJ4VQ.js → chunk-6VGBO6SZ.js} +3 -3
  5. package/dist/chunk-6XWHJHNZ.js +400 -0
  6. package/dist/{chunk-2XLBC3W6.js.map → chunk-6XWHJHNZ.js.map} +1 -1
  7. package/dist/{chunk-TE4LD3WR.js → chunk-7UZUDHP7.js} +2 -2
  8. package/dist/{chunk-2PXXNFTL.js → chunk-AABH2HSE.js} +4 -4
  9. package/dist/{chunk-HQNFKBZW.js → chunk-ANXHMG32.js} +5 -7
  10. package/dist/{chunk-HQNFKBZW.js.map → chunk-ANXHMG32.js.map} +1 -1
  11. package/dist/{chunk-4IAGARTF.js → chunk-ANZV33N5.js} +2 -2
  12. package/dist/{chunk-AZLM7OCV.js → chunk-BEFYAFGV.js} +2 -2
  13. package/dist/{chunk-J7VVUJ6I.js → chunk-BEZ6ZPDS.js} +2 -2
  14. package/dist/{chunk-23UI23AW.js → chunk-CKZ65VFJ.js} +2 -2
  15. package/dist/{chunk-XGFLPLNO.js → chunk-CYPCJ536.js} +5 -5
  16. package/dist/{chunk-PTKJKDYH.js → chunk-FKXD3EXJ.js} +16 -22
  17. package/dist/chunk-FKXD3EXJ.js.map +1 -0
  18. package/dist/{chunk-2EPX6D74.js → chunk-G2MINRWX.js} +4 -4
  19. package/dist/{chunk-DFFH7HQZ.js → chunk-HU6XQVZL.js} +2 -2
  20. package/dist/{chunk-LVIMGRFS.js → chunk-L7COG2EX.js} +4 -4
  21. package/dist/{chunk-SD3HTFUK.js → chunk-LMR7VAP3.js} +2 -2
  22. package/dist/{chunk-XCRX5WVX.js → chunk-LN76TJJP.js} +13 -13
  23. package/dist/{chunk-2AHXUWHO.js → chunk-LTFGEVTM.js} +4 -4
  24. package/dist/{chunk-ND4ZJOT7.js → chunk-NL5EB57E.js} +3 -3
  25. package/dist/{chunk-ZYTLL3MM.js → chunk-O27WJ5KS.js} +192 -3
  26. package/dist/chunk-O27WJ5KS.js.map +1 -0
  27. package/dist/{chunk-GWXZSQUS.js → chunk-TAQGYJIS.js} +3 -3
  28. package/dist/{chunk-33AA7KWH.js → chunk-TXW257CU.js} +6 -6
  29. package/dist/{chunk-DIIL3ELZ.js → chunk-W7LHI54P.js} +9 -17
  30. package/dist/chunk-W7LHI54P.js.map +1 -0
  31. package/dist/{chunk-IG5B34MJ.js → chunk-WCCWQ56J.js} +4 -4
  32. package/dist/{chunk-2BF4WAYU.js → chunk-WJKD6EGK.js} +9 -11
  33. package/dist/chunk-WJKD6EGK.js.map +1 -0
  34. package/dist/{chunk-XAVVPPWP.js → chunk-YJ2URWF7.js} +2 -2
  35. package/dist/{chunk-3PECYFYB.js → chunk-YSLDMYWP.js} +4 -81
  36. package/dist/chunk-YSLDMYWP.js.map +1 -0
  37. package/dist/{chunk-3JTBSJDE.js → chunk-YYIWB42G.js} +2 -2
  38. package/dist/{chunk-DGZ7HWIG.js → chunk-ZGD7PLLC.js} +3 -3
  39. package/dist/commands/build/marketplace.js +4 -4
  40. package/dist/commands/build/plugins.js +7 -7
  41. package/dist/commands/build/stack.js +7 -7
  42. package/dist/commands/compile.js +7 -7
  43. package/dist/commands/config/index.js +7 -7
  44. package/dist/commands/config/path.js +6 -6
  45. package/dist/commands/config/show.js +7 -7
  46. package/dist/commands/diff.js +6 -6
  47. package/dist/commands/doctor.js +6 -6
  48. package/dist/commands/edit.js +22 -22
  49. package/dist/commands/eject.js +6 -6
  50. package/dist/commands/import/skill.js +6 -6
  51. package/dist/commands/info.js +6 -6
  52. package/dist/commands/init.js +22 -22
  53. package/dist/commands/list.js +6 -6
  54. package/dist/commands/new/agent.js +7 -7
  55. package/dist/commands/new/marketplace.js +8 -8
  56. package/dist/commands/new/skill.js +7 -7
  57. package/dist/commands/outdated.js +6 -6
  58. package/dist/commands/search.js +6 -6
  59. package/dist/commands/uninstall.js +6 -6
  60. package/dist/commands/update.js +7 -7
  61. package/dist/commands/validate.js +6 -27
  62. package/dist/commands/validate.js.map +1 -1
  63. package/dist/components/wizard/category-grid.js +2 -2
  64. package/dist/components/wizard/category-grid.test.js +10 -10
  65. package/dist/components/wizard/domain-selection.js +8 -8
  66. package/dist/components/wizard/help-modal.js +7 -7
  67. package/dist/components/wizard/source-grid.js +2 -2
  68. package/dist/components/wizard/source-grid.test.js +10 -10
  69. package/dist/components/wizard/stack-selection.js +7 -7
  70. package/dist/components/wizard/step-agents.js +8 -8
  71. package/dist/components/wizard/step-agents.test.js +11 -11
  72. package/dist/components/wizard/step-build.js +8 -8
  73. package/dist/components/wizard/step-build.test.js +14 -13
  74. package/dist/components/wizard/step-build.test.js.map +1 -1
  75. package/dist/components/wizard/step-confirm.js +4 -4
  76. package/dist/components/wizard/step-confirm.test.js +9 -9
  77. package/dist/components/wizard/step-settings.js +6 -6
  78. package/dist/components/wizard/step-settings.test.js +9 -9
  79. package/dist/components/wizard/step-sources.js +8 -8
  80. package/dist/components/wizard/step-sources.test.js +11 -11
  81. package/dist/components/wizard/step-stack.js +8 -8
  82. package/dist/components/wizard/step-stack.test.js +9 -9
  83. package/dist/components/wizard/wizard-layout.js +9 -9
  84. package/dist/components/wizard/wizard.js +20 -20
  85. package/dist/hooks/init.js +22 -22
  86. package/dist/{loader-LI4IFZB7.js → loader-GT2A7R7U.js} +4 -4
  87. package/dist/{source-loader-GHDWSV2H.js → source-loader-TNQW4P47.js} +6 -6
  88. package/dist/{source-manager-7RTGIBQK.js → source-manager-INRXRFJE.js} +6 -6
  89. package/dist/stores/wizard-store.js +6 -6
  90. package/dist/stores/wizard-store.test.js +110 -9
  91. package/dist/stores/wizard-store.test.js.map +1 -1
  92. package/package.json +1 -1
  93. package/dist/chunk-2BF4WAYU.js.map +0 -1
  94. package/dist/chunk-2XLBC3W6.js +0 -243
  95. package/dist/chunk-3PECYFYB.js.map +0 -1
  96. package/dist/chunk-DIIL3ELZ.js.map +0 -1
  97. package/dist/chunk-KJX5G75S.js.map +0 -1
  98. package/dist/chunk-PTKJKDYH.js.map +0 -1
  99. package/dist/chunk-ZYTLL3MM.js.map +0 -1
  100. /package/dist/{chunk-LI5NJ4VQ.js.map → chunk-6VGBO6SZ.js.map} +0 -0
  101. /package/dist/{chunk-TE4LD3WR.js.map → chunk-7UZUDHP7.js.map} +0 -0
  102. /package/dist/{chunk-2PXXNFTL.js.map → chunk-AABH2HSE.js.map} +0 -0
  103. /package/dist/{chunk-4IAGARTF.js.map → chunk-ANZV33N5.js.map} +0 -0
  104. /package/dist/{chunk-AZLM7OCV.js.map → chunk-BEFYAFGV.js.map} +0 -0
  105. /package/dist/{chunk-J7VVUJ6I.js.map → chunk-BEZ6ZPDS.js.map} +0 -0
  106. /package/dist/{chunk-23UI23AW.js.map → chunk-CKZ65VFJ.js.map} +0 -0
  107. /package/dist/{chunk-XGFLPLNO.js.map → chunk-CYPCJ536.js.map} +0 -0
  108. /package/dist/{chunk-2EPX6D74.js.map → chunk-G2MINRWX.js.map} +0 -0
  109. /package/dist/{chunk-DFFH7HQZ.js.map → chunk-HU6XQVZL.js.map} +0 -0
  110. /package/dist/{chunk-LVIMGRFS.js.map → chunk-L7COG2EX.js.map} +0 -0
  111. /package/dist/{chunk-SD3HTFUK.js.map → chunk-LMR7VAP3.js.map} +0 -0
  112. /package/dist/{chunk-XCRX5WVX.js.map → chunk-LN76TJJP.js.map} +0 -0
  113. /package/dist/{chunk-2AHXUWHO.js.map → chunk-LTFGEVTM.js.map} +0 -0
  114. /package/dist/{chunk-ND4ZJOT7.js.map → chunk-NL5EB57E.js.map} +0 -0
  115. /package/dist/{chunk-GWXZSQUS.js.map → chunk-TAQGYJIS.js.map} +0 -0
  116. /package/dist/{chunk-33AA7KWH.js.map → chunk-TXW257CU.js.map} +0 -0
  117. /package/dist/{chunk-IG5B34MJ.js.map → chunk-WCCWQ56J.js.map} +0 -0
  118. /package/dist/{chunk-XAVVPPWP.js.map → chunk-YJ2URWF7.js.map} +0 -0
  119. /package/dist/{chunk-3JTBSJDE.js.map → chunk-YYIWB42G.js.map} +0 -0
  120. /package/dist/{chunk-DGZ7HWIG.js.map → chunk-ZGD7PLLC.js.map} +0 -0
  121. /package/dist/{loader-LI4IFZB7.js.map → loader-GT2A7R7U.js.map} +0 -0
  122. /package/dist/{source-loader-GHDWSV2H.js.map → source-loader-TNQW4P47.js.map} +0 -0
  123. /package/dist/{source-manager-7RTGIBQK.js.map → source-manager-INRXRFJE.js.map} +0 -0
@@ -4,11 +4,11 @@ import {
4
4
  extractSourceName,
5
5
  loadSkillsMatrixFromSource,
6
6
  mergeLocalSkillsIntoMatrix
7
- } from "./chunk-PTKJKDYH.js";
8
- import "./chunk-XAVVPPWP.js";
9
- import "./chunk-HQNFKBZW.js";
10
- import "./chunk-2BF4WAYU.js";
11
- import "./chunk-2XLBC3W6.js";
7
+ } from "./chunk-FKXD3EXJ.js";
8
+ import "./chunk-YJ2URWF7.js";
9
+ import "./chunk-ANXHMG32.js";
10
+ import "./chunk-WJKD6EGK.js";
11
+ import "./chunk-6XWHJHNZ.js";
12
12
  import "./chunk-6PGL2XMY.js";
13
13
  import "./chunk-NPMMU4GY.js";
14
14
  import "./chunk-DHET7RCE.js";
@@ -18,4 +18,4 @@ export {
18
18
  loadSkillsMatrixFromSource,
19
19
  mergeLocalSkillsIntoMatrix
20
20
  };
21
- //# sourceMappingURL=source-loader-GHDWSV2H.js.map
21
+ //# sourceMappingURL=source-loader-TNQW4P47.js.map
@@ -3,11 +3,11 @@ import {
3
3
  addSource,
4
4
  getSourceSummary,
5
5
  removeSource
6
- } from "./chunk-PTKJKDYH.js";
7
- import "./chunk-XAVVPPWP.js";
8
- import "./chunk-HQNFKBZW.js";
9
- import "./chunk-2BF4WAYU.js";
10
- import "./chunk-2XLBC3W6.js";
6
+ } from "./chunk-FKXD3EXJ.js";
7
+ import "./chunk-YJ2URWF7.js";
8
+ import "./chunk-ANXHMG32.js";
9
+ import "./chunk-WJKD6EGK.js";
10
+ import "./chunk-6XWHJHNZ.js";
11
11
  import "./chunk-6PGL2XMY.js";
12
12
  import "./chunk-NPMMU4GY.js";
13
13
  import "./chunk-DHET7RCE.js";
@@ -16,4 +16,4 @@ export {
16
16
  getSourceSummary,
17
17
  removeSource
18
18
  };
19
- //# sourceMappingURL=source-manager-7RTGIBQK.js.map
19
+ //# sourceMappingURL=source-manager-INRXRFJE.js.map
@@ -1,12 +1,12 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  useWizardStore
4
- } from "../chunk-KJX5G75S.js";
5
- import "../chunk-PTKJKDYH.js";
6
- import "../chunk-XAVVPPWP.js";
7
- import "../chunk-HQNFKBZW.js";
8
- import "../chunk-2BF4WAYU.js";
9
- import "../chunk-2XLBC3W6.js";
4
+ } from "../chunk-2XVLQDNI.js";
5
+ import "../chunk-FKXD3EXJ.js";
6
+ import "../chunk-YJ2URWF7.js";
7
+ import "../chunk-ANXHMG32.js";
8
+ import "../chunk-WJKD6EGK.js";
9
+ import "../chunk-6XWHJHNZ.js";
10
10
  import "../chunk-6PGL2XMY.js";
11
11
  import "../chunk-NPMMU4GY.js";
12
12
  import "../chunk-DHET7RCE.js";
@@ -9,12 +9,12 @@ import {
9
9
  ALL_SKILLS_WEB_FRAMEWORK_MATRIX,
10
10
  ALL_SKILLS_WEB_PAIR_CATEGORIES_MATRIX,
11
11
  REACT_HONO_FRAMEWORK_API_MATRIX
12
- } from "../chunk-ZYTLL3MM.js";
13
- import "../chunk-AZLM7OCV.js";
12
+ } from "../chunk-O27WJ5KS.js";
13
+ import "../chunk-BEFYAFGV.js";
14
14
  import {
15
15
  SKILLS,
16
16
  createMockMatrix
17
- } from "../chunk-DFFH7HQZ.js";
17
+ } from "../chunk-HU6XQVZL.js";
18
18
  import {
19
19
  beforeEach,
20
20
  describe,
@@ -23,15 +23,15 @@ import {
23
23
  } from "../chunk-XY3XDVMI.js";
24
24
  import {
25
25
  useWizardStore
26
- } from "../chunk-KJX5G75S.js";
27
- import "../chunk-PTKJKDYH.js";
28
- import "../chunk-XAVVPPWP.js";
26
+ } from "../chunk-2XVLQDNI.js";
27
+ import "../chunk-FKXD3EXJ.js";
28
+ import "../chunk-YJ2URWF7.js";
29
29
  import {
30
30
  initializeMatrix,
31
31
  typedKeys
32
- } from "../chunk-HQNFKBZW.js";
33
- import "../chunk-2BF4WAYU.js";
34
- import "../chunk-2XLBC3W6.js";
32
+ } from "../chunk-ANXHMG32.js";
33
+ import "../chunk-WJKD6EGK.js";
34
+ import "../chunk-6XWHJHNZ.js";
35
35
  import "../chunk-6PGL2XMY.js";
36
36
  import "../chunk-NPMMU4GY.js";
37
37
  import {
@@ -1211,5 +1211,106 @@ describe("WizardStore", () => {
1211
1211
  globalExpect(result).toBe("plugin");
1212
1212
  });
1213
1213
  });
1214
+ describe("toggleFilterIncompatible", () => {
1215
+ it("should deselect framework-incompatible skills from web categories when enabling filter", () => {
1216
+ initializeMatrix(ALL_SKILLS_FULLSTACK_CATEGORIES_MATRIX);
1217
+ const store = useWizardStore.getState();
1218
+ store.toggleTechnology("web", "web-framework", "web-framework-react", true);
1219
+ store.toggleTechnology("web", "web-client-state", "web-state-pinia", false);
1220
+ globalExpect(useWizardStore.getState().domainSelections.web["web-client-state"]).toContain(
1221
+ "web-state-pinia"
1222
+ );
1223
+ store.toggleFilterIncompatible();
1224
+ const state = useWizardStore.getState();
1225
+ globalExpect(state.filterIncompatible).toBe(true);
1226
+ globalExpect(state.domainSelections.web["web-client-state"]).not.toContain("web-state-pinia");
1227
+ });
1228
+ it("should NOT deselect framework-compatible skills when enabling filter", () => {
1229
+ initializeMatrix(ALL_SKILLS_FULLSTACK_CATEGORIES_MATRIX);
1230
+ const store = useWizardStore.getState();
1231
+ store.toggleTechnology("web", "web-framework", "web-framework-react", true);
1232
+ store.toggleTechnology("web", "web-client-state", "web-state-zustand", false);
1233
+ store.toggleFilterIncompatible();
1234
+ const state = useWizardStore.getState();
1235
+ globalExpect(state.filterIncompatible).toBe(true);
1236
+ globalExpect(state.domainSelections.web["web-client-state"]).toContain("web-state-zustand");
1237
+ });
1238
+ it("should NOT deselect skills in non-web domains when enabling filter", () => {
1239
+ initializeMatrix(ALL_SKILLS_FULLSTACK_CATEGORIES_MATRIX);
1240
+ const store = useWizardStore.getState();
1241
+ store.toggleTechnology("web", "web-framework", "web-framework-react", true);
1242
+ store.toggleTechnology("api", "api-api", "api-framework-hono", true);
1243
+ store.toggleFilterIncompatible();
1244
+ const state = useWizardStore.getState();
1245
+ globalExpect(state.domainSelections.api["api-api"]).toStrictEqual(["api-framework-hono"]);
1246
+ });
1247
+ it("should NOT deselect the framework category itself when enabling filter", () => {
1248
+ initializeMatrix(ALL_SKILLS_FULLSTACK_CATEGORIES_MATRIX);
1249
+ const store = useWizardStore.getState();
1250
+ store.toggleTechnology("web", "web-framework", "web-framework-react", true);
1251
+ store.toggleFilterIncompatible();
1252
+ const state = useWizardStore.getState();
1253
+ globalExpect(state.domainSelections.web["web-framework"]).toStrictEqual(["web-framework-react"]);
1254
+ });
1255
+ it("should respect lockedSkillIds when enabling filter", () => {
1256
+ initializeMatrix(ALL_SKILLS_FULLSTACK_CATEGORIES_MATRIX);
1257
+ const store = useWizardStore.getState();
1258
+ store.toggleTechnology("web", "web-framework", "web-framework-react", true);
1259
+ store.toggleTechnology("web", "web-client-state", "web-state-pinia", false);
1260
+ useWizardStore.setState({ lockedSkillIds: ["web-state-pinia"] });
1261
+ store.toggleFilterIncompatible();
1262
+ const state = useWizardStore.getState();
1263
+ globalExpect(state.domainSelections.web["web-client-state"]).toContain("web-state-pinia");
1264
+ globalExpect(state.skillConfigs.some((sc) => sc.id === "web-state-pinia")).toBe(true);
1265
+ });
1266
+ it("should NOT deselect anything when disabling filter", () => {
1267
+ initializeMatrix(ALL_SKILLS_FULLSTACK_CATEGORIES_MATRIX);
1268
+ const store = useWizardStore.getState();
1269
+ store.toggleTechnology("web", "web-framework", "web-framework-react", true);
1270
+ store.toggleTechnology("web", "web-client-state", "web-state-zustand", false);
1271
+ store.toggleFilterIncompatible();
1272
+ store.toggleFilterIncompatible();
1273
+ const state = useWizardStore.getState();
1274
+ globalExpect(state.filterIncompatible).toBe(false);
1275
+ globalExpect(state.domainSelections.web["web-client-state"]).toContain("web-state-zustand");
1276
+ });
1277
+ it("should remove deselected skills from both domainSelections and skillConfigs", () => {
1278
+ initializeMatrix(ALL_SKILLS_FULLSTACK_CATEGORIES_MATRIX);
1279
+ const store = useWizardStore.getState();
1280
+ store.toggleTechnology("web", "web-framework", "web-framework-react", true);
1281
+ store.toggleTechnology("web", "web-client-state", "web-state-pinia", false);
1282
+ store.toggleTechnology("web", "web-client-state", "web-state-zustand", false);
1283
+ globalExpect(useWizardStore.getState().skillConfigs.some((sc) => sc.id === "web-state-pinia")).toBe(
1284
+ true
1285
+ );
1286
+ globalExpect(
1287
+ useWizardStore.getState().skillConfigs.some((sc) => sc.id === "web-state-zustand")
1288
+ ).toBe(true);
1289
+ store.toggleFilterIncompatible();
1290
+ const state = useWizardStore.getState();
1291
+ globalExpect(state.domainSelections.web["web-client-state"]).not.toContain("web-state-pinia");
1292
+ globalExpect(state.skillConfigs.some((sc) => sc.id === "web-state-pinia")).toBe(false);
1293
+ globalExpect(state.domainSelections.web["web-client-state"]).toContain("web-state-zustand");
1294
+ globalExpect(state.skillConfigs.some((sc) => sc.id === "web-state-zustand")).toBe(true);
1295
+ });
1296
+ it("should just toggle the boolean when no frameworks are selected", () => {
1297
+ initializeMatrix(ALL_SKILLS_FULLSTACK_CATEGORIES_MATRIX);
1298
+ const store = useWizardStore.getState();
1299
+ store.toggleTechnology("web", "web-client-state", "web-state-pinia", false);
1300
+ store.toggleFilterIncompatible();
1301
+ const state = useWizardStore.getState();
1302
+ globalExpect(state.filterIncompatible).toBe(true);
1303
+ globalExpect(state.domainSelections.web["web-client-state"]).toContain("web-state-pinia");
1304
+ });
1305
+ it("should not deselect skills with empty compatibleWith when enabling filter", () => {
1306
+ initializeMatrix(ALL_SKILLS_TEST_CATEGORIES_MATRIX);
1307
+ const store = useWizardStore.getState();
1308
+ store.toggleTechnology("web", "web-framework", "web-framework-react", true);
1309
+ store.toggleTechnology("web", "web-styling", "web-styling-scss-modules", false);
1310
+ store.toggleFilterIncompatible();
1311
+ const state = useWizardStore.getState();
1312
+ globalExpect(state.domainSelections.web["web-styling"]).toContain("web-styling-scss-modules");
1313
+ });
1314
+ });
1214
1315
  });
1215
1316
  //# sourceMappingURL=wizard-store.test.js.map