@sprucelabs/spruce-cli 28.1.4 → 28.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/build/.spruce/errors/errors.types.d.ts +22 -0
  3. package/build/.spruce/errors/options.types.d.ts +4 -1
  4. package/build/.spruce/errors/spruceCli/agentAlreadyRegistered.schema.d.ts +3 -0
  5. package/build/.spruce/errors/spruceCli/agentAlreadyRegistered.schema.js +21 -0
  6. package/build/.spruce/errors/spruceCli/agentAlreadyRegistered.schema.js.map +1 -0
  7. package/build/__tests__/behavioral/agents/RegisteringAnAgentAtBoot.test.d.ts +15 -0
  8. package/build/__tests__/behavioral/agents/RegisteringAnAgentAtBoot.test.js +94 -0
  9. package/build/__tests__/behavioral/agents/RegisteringAnAgentAtBoot.test.js.map +1 -0
  10. package/build/__tests__/behavioral/onboard/StartingOnboarding.test.js +0 -7
  11. package/build/__tests__/behavioral/onboard/StartingOnboarding.test.js.map +1 -1
  12. package/build/__tests__/behavioral/permissions/SyncingPermissions.test.d.ts +7 -0
  13. package/build/__tests__/behavioral/permissions/SyncingPermissions.test.js +116 -14
  14. package/build/__tests__/behavioral/permissions/SyncingPermissions.test.js.map +1 -1
  15. package/build/__tests__/behavioral/{SettingRemote.test.d.ts → remote/SettingRemote.test.d.ts} +2 -2
  16. package/build/__tests__/behavioral/{SettingRemote.test.js → remote/SettingRemote.test.js} +2 -2
  17. package/build/__tests__/behavioral/remote/SettingRemote.test.js.map +1 -0
  18. package/build/__tests__/behavioral/remote/SettingRemoteDoesNotAskTwice.test.d.ts +10 -0
  19. package/build/__tests__/behavioral/remote/SettingRemoteDoesNotAskTwice.test.js +67 -0
  20. package/build/__tests__/behavioral/remote/SettingRemoteDoesNotAskTwice.test.js.map +1 -0
  21. package/build/__tests__/behavioral/tests/CreatingATest.test.js +1 -1
  22. package/build/__tests__/behavioral/tests/CreatingATest.test.js.map +1 -1
  23. package/build/__tests__/behavioral/tests/SelectingAnAbstractTestClass.test.js +1 -1
  24. package/build/__tests__/behavioral/tests/SelectingAnAbstractTestClass.test.js.map +1 -1
  25. package/build/__tests__/behavioral/tests/TestingDataStores.test.js +3 -3
  26. package/build/__tests__/behavioral/tests/TestingDataStores.test.js.map +1 -1
  27. package/build/__tests__/support/EventFaker.d.ts +2 -0
  28. package/build/__tests__/support/EventFaker.js +7 -0
  29. package/build/__tests__/support/EventFaker.js.map +1 -1
  30. package/build/errors/SpruceError.js +3 -0
  31. package/build/errors/SpruceError.js.map +1 -1
  32. package/build/errors/agentAlreadyRegistered.builder.d.ts +13 -0
  33. package/build/errors/agentAlreadyRegistered.builder.js +16 -0
  34. package/build/errors/agentAlreadyRegistered.builder.js.map +1 -0
  35. package/build/features/ActionExecuter.js.map +1 -1
  36. package/build/features/FeatureInstaller.d.ts +1 -1
  37. package/build/features/FeatureInstallerFactory.js +3 -0
  38. package/build/features/FeatureInstallerFactory.js.map +1 -1
  39. package/build/features/agent/AgentFeature.d.ts +22 -0
  40. package/build/features/agent/AgentFeature.js +24 -0
  41. package/build/features/agent/AgentFeature.js.map +1 -0
  42. package/build/features/agent/actions/RegisterAction.d.ts +54 -0
  43. package/build/features/agent/actions/RegisterAction.js +76 -0
  44. package/build/features/agent/actions/RegisterAction.js.map +1 -0
  45. package/build/features/agent/stores/AgentStore.d.ts +5 -0
  46. package/build/features/agent/stores/AgentStore.js +18 -0
  47. package/build/features/agent/stores/AgentStore.js.map +1 -0
  48. package/build/features/agent/writers/AgentWriter.d.ts +8 -0
  49. package/build/features/agent/writers/AgentWriter.js +31 -0
  50. package/build/features/agent/writers/AgentWriter.js.map +1 -0
  51. package/build/features/event/EventFeature.js +1 -0
  52. package/build/features/event/EventFeature.js.map +1 -1
  53. package/build/features/permission/writers/PermissionWriter.js +10 -1
  54. package/build/features/permission/writers/PermissionWriter.js.map +1 -1
  55. package/build/stores/StoreFactory.d.ts +2 -0
  56. package/build/stores/StoreFactory.js +2 -0
  57. package/build/stores/StoreFactory.js.map +1 -1
  58. package/build/tests/buildTestCache.js +7 -1
  59. package/build/tests/buildTestCache.js.map +1 -1
  60. package/build/tests/utilities/test.utility.js +3 -3
  61. package/build/writers/WriterFactory.d.ts +2 -0
  62. package/build/writers/WriterFactory.js +2 -0
  63. package/build/writers/WriterFactory.js.map +1 -1
  64. package/package.json +24 -24
  65. package/src/.spruce/errors/errors.types.ts +40 -9
  66. package/src/.spruce/errors/options.types.ts +4 -1
  67. package/src/.spruce/errors/spruceCli/agentAlreadyRegistered.schema.ts +24 -0
  68. package/src/__tests__/behavioral/agents/RegisteringAnAgentAtBoot.test.ts +99 -0
  69. package/src/__tests__/behavioral/onboard/StartingOnboarding.test.ts +2 -7
  70. package/src/__tests__/behavioral/permissions/SyncingPermissions.test.ts +185 -52
  71. package/src/__tests__/behavioral/{SettingRemote.test.ts → remote/SettingRemote.test.ts} +3 -3
  72. package/src/__tests__/behavioral/remote/SettingRemoteDoesNotAskTwice.test.ts +68 -0
  73. package/src/__tests__/behavioral/tests/CreatingATest.test.ts +1 -1
  74. package/src/__tests__/behavioral/tests/SelectingAnAbstractTestClass.test.ts +1 -1
  75. package/src/__tests__/behavioral/tests/TestingDataStores.test.ts +11 -3
  76. package/src/__tests__/support/EventFaker.ts +10 -0
  77. package/src/errors/SpruceError.ts +4 -0
  78. package/src/errors/agentAlreadyRegistered.builder.ts +14 -0
  79. package/src/features/ActionExecuter.ts +5 -4
  80. package/src/features/FeatureInstallerFactory.ts +3 -0
  81. package/src/features/agent/AgentFeature.ts +31 -0
  82. package/src/features/agent/actions/RegisterAction.ts +79 -0
  83. package/src/features/agent/stores/AgentStore.ts +16 -0
  84. package/src/features/agent/writers/AgentWriter.ts +54 -0
  85. package/src/features/event/EventFeature.ts +1 -0
  86. package/src/features/permission/writers/PermissionWriter.ts +11 -1
  87. package/src/stores/StoreFactory.ts +3 -0
  88. package/src/tests/buildTestCache.ts +9 -2
  89. package/src/tests/utilities/test.utility.ts +3 -3
  90. package/src/writers/WriterFactory.ts +3 -0
  91. package/build/__tests__/behavioral/SettingRemote.test.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"PermissionWriter.js","sourceRoot":"","sources":["../../../../src/features/permission/writers/PermissionWriter.ts"],"names":[],"mappings":";;;;;AACA,uEAAoE;AACpE,qFAA4D;AAG5D,MAAqB,gBAAiB,SAAQ,wBAAc;IACjD,KAAK,CAAC,cAAc,CAAC,GAAW,EAAE,GAA0B;QAC/D,MAAM,WAAW,GAAG,6BAAQ,CAAC,qBAAqB,CAC9C,GAAG,EACH,aAAa,EACb,sBAAsB,CACzB,CAAA;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAA;QAEnE,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,8BAA8B,CACnD,WAAW,EACX,QAAQ,EACR,mEAAmE,CACtE,CAAA;QAED,OAAO,KAAK,CAAA;IAChB,CAAC;IAEM,KAAK,CAAC,iBAAiB,CAC1B,cAAsB,EACtB,OAEC;QAED,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAA;QAE7B,MAAM,eAAe,GAAG,6BAAQ,CAAC,qBAAqB,CAClD,cAAc,EACd,aAAa,CAChB,CAAA;QACD,MAAM,eAAe,GAAG,6BAAQ,CAAC,WAAW,CACxC,eAAe,EACf,gBAAgB,CACnB,CAAA;QAED,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAChC,SAAS,EAAE,8BAAS,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YAClC,IAAI,EAAE,6BAAQ,CAAC,mBAAmB,CAC9B,eAAe,EACf,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAC5B;SACJ,CAAC,CAAC,CAAA;QAEH,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAA;QAEhE,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,8BAA8B,CACnD,eAAe,EACf,OAAO,EACP,yDAAyD,CAC5D,CAAA;QAED,OAAO,KAAK,CAAA;IAChB,CAAC;IAEM,KAAK,CAAC,aAAa,CACtB,cAAsB,EACtB,OAKC;QAED,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,OAAO,CAAA;QAEnE,MAAM,WAAW,GAAG,6BAAQ,CAAC,WAAW,CACpC,cAAc,EACd,GAAG,SAAS,iBAAiB,CAChC,CAAA;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,yBAAyB,CAAC;YACrD,SAAS;YACT,SAAS;YACT,WAAW;YACX,YAAY;SACf,CAAC,CAAA;QAEF,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,8BAA8B,CACnD,WAAW,EACX,OAAO,EACP,sCAAsC,CACzC,CAAA;QAED,OAAO,KAAK,CAAA;IAChB,CAAC;IAEM,WAAW,CAAC,GAAW;QAC1B,MAAM,WAAW,GAAG,6BAAQ,CAAC,qBAAqB,CAC9C,GAAG,EACH,UAAU,EACV,sBAAsB,CACzB,CAAA;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAA;QAExD,MAAM,OAAO,GAAG,IAAI,CAAC,8BAA8B,CAC/C,WAAW,EACX,cAAc,EACd,0CAA0C,CAC7C,CAAA;QAED,OAAO,OAAO,CAAA;IAClB,CAAC;CACJ;AAxGD,mCAwGC"}
1
+ {"version":3,"file":"PermissionWriter.js","sourceRoot":"","sources":["../../../../src/features/permission/writers/PermissionWriter.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import AgentStore from '../features/agent/stores/AgentStore';
1
2
  import ConversationStore from '../features/conversation/stores/ConversationStore';
2
3
  import EventStore from '../features/event/stores/EventStore';
3
4
  import ListenerStore from '../features/event/stores/ListenerStore';
@@ -37,6 +38,7 @@ export interface StoreMap {
37
38
  view: ViewStore;
38
39
  listener: ListenerStore;
39
40
  permission: PermissionStore;
41
+ agent: AgentStore;
40
42
  }
41
43
  export type StoreCode = keyof StoreMap;
42
44
  export interface StoreFactoryOptions {
@@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ const AgentStore_1 = __importDefault(require("../features/agent/stores/AgentStore"));
6
7
  const ConversationStore_1 = __importDefault(require("../features/conversation/stores/ConversationStore"));
7
8
  const EventStore_1 = __importDefault(require("../features/event/stores/EventStore"));
8
9
  const ListenerStore_1 = __importDefault(require("../features/event/stores/ListenerStore"));
@@ -55,5 +56,6 @@ const storeMap = {
55
56
  view: ViewStore_1.default,
56
57
  listener: ListenerStore_1.default,
57
58
  permission: PermissionStore_1.default,
59
+ agent: AgentStore_1.default,
58
60
  };
59
61
  //# sourceMappingURL=StoreFactory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StoreFactory.js","sourceRoot":"","sources":["../../src/stores/StoreFactory.ts"],"names":[],"mappings":";;;;;AAAA,0GAAiF;AACjF,qFAA4D;AAC5D,2FAAkE;AAClE,iGAAwE;AACxE,0GAAiF;AACjF,oGAA2E;AAC3E,wFAA+D;AAC/D,qFAE4C;AAC5C,qFAA4D;AAC5D,kFAAyD;AAKzD,MAAqB,YAAY;IACrB,cAAc,CAAgB;IAC9B,GAAG,CAAQ;IACX,OAAO,CAAQ;IACf,gBAAgB,CAAkB;IAClC,OAAO,CAAe;IAE9B,YAAmB,OAA4B;QAC3C,MAAM,EAAE,GAAG,EAAE,cAAc,EAAE,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,GAC7D,OAAO,CAAA;QAEX,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QACd,IAAI,CAAC,cAAc,GAAG,cAAc,CAAA;QACpC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;QACxC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IAC1B,CAAC;IAEM,KAAK,CACR,IAAO,EACP,OAA+B;QAE/B,MAAM,YAAY,GAAG;YACjB,GAAG,EAAE,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,GAAG;YAC7B,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,gBAAgB,EACZ,OAAO,EAAE,gBAAgB,IAAI,IAAI,CAAC,gBAAgB;YACtD,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,GAAG,OAAO;SACb,CAAA;QAED,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,mCAAmC,IAAI,IAAI,CAAC,CAAA;QAChE,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,YAAmB,CAAC,CAAA;QAErD,OAAO,KAAoB,CAAA;IAC/B,CAAC;CACJ;AAxCD,+BAwCC;AA0BD,MAAM,QAAQ,GAAG;IACb,UAAU,EAAE,yBAAe;IAC3B,MAAM,EAAE,qBAAW;IACnB,KAAK,EAAE,oBAAU;IACjB,KAAK,EAAE,oBAAc;IACrB,YAAY,EAAE,2BAAiB;IAC/B,YAAY,EAAE,2BAAiB;IAC/B,KAAK,EAAE,oBAAU;IACjB,IAAI,EAAE,mBAAS;IACf,QAAQ,EAAE,uBAAa;IACvB,UAAU,EAAE,yBAAe;CAC9B,CAAA"}
1
+ {"version":3,"file":"StoreFactory.js","sourceRoot":"","sources":["../../src/stores/StoreFactory.ts"],"names":[],"mappings":";;;;;AAAA,qFAA4D;AAC5D,0GAAiF;AACjF,qFAA4D;AAC5D,2FAAkE;AAClE,iGAAwE;AACxE,0GAAiF;AACjF,oGAA2E;AAC3E,wFAA+D;AAC/D,qFAE4C;AAC5C,qFAA4D;AAC5D,kFAAyD;AAKzD,MAAqB,YAAY;IACrB,cAAc,CAAgB;IAC9B,GAAG,CAAQ;IACX,OAAO,CAAQ;IACf,gBAAgB,CAAkB;IAClC,OAAO,CAAe;IAE9B,YAAmB,OAA4B;QAC3C,MAAM,EAAE,GAAG,EAAE,cAAc,EAAE,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,GAC7D,OAAO,CAAA;QAEX,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QACd,IAAI,CAAC,cAAc,GAAG,cAAc,CAAA;QACpC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;QACxC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IAC1B,CAAC;IAEM,KAAK,CACR,IAAO,EACP,OAA+B;QAE/B,MAAM,YAAY,GAAG;YACjB,GAAG,EAAE,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,GAAG;YAC7B,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,gBAAgB,EACZ,OAAO,EAAE,gBAAgB,IAAI,IAAI,CAAC,gBAAgB;YACtD,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,GAAG,OAAO;SACb,CAAA;QAED,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,mCAAmC,IAAI,IAAI,CAAC,CAAA;QAChE,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,YAAmB,CAAC,CAAA;QAErD,OAAO,KAAoB,CAAA;IAC/B,CAAC;CACJ;AAxCD,+BAwCC;AA2BD,MAAM,QAAQ,GAAG;IACb,UAAU,EAAE,yBAAe;IAC3B,MAAM,EAAE,qBAAW;IACnB,KAAK,EAAE,oBAAU;IACjB,KAAK,EAAE,oBAAc;IACrB,YAAY,EAAE,2BAAiB;IAC/B,YAAY,EAAE,2BAAiB;IAC/B,KAAK,EAAE,oBAAU;IACjB,IAAI,EAAE,mBAAS;IACf,QAAQ,EAAE,uBAAa;IACvB,UAAU,EAAE,yBAAe;IAC3B,KAAK,EAAE,oBAAU;CACpB,CAAA"}
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  };
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
7
  const child_process_1 = require("child_process");
8
+ const spruce_event_utils_1 = require("@sprucelabs/spruce-event-utils");
8
9
  const spruce_skill_utils_1 = require("@sprucelabs/spruce-skill-utils");
9
10
  const dotenv_1 = __importDefault(require("dotenv"));
10
11
  const TerminalInterface_1 = __importDefault(require("../interfaces/TerminalInterface"));
@@ -151,10 +152,15 @@ async function run() {
151
152
  renderWarning(lineNum, `Found cached '${cacheKey}', but deleted it since it was not in the cache tracker...`, [graphicsInterface_types_1.GraphicsTextEffect.Italic]);
152
153
  spruce_skill_utils_1.diskUtil.deleteDir(cwd);
153
154
  }
154
- renderLine(lineNum, `Starting to build '${cacheKey}'...`, [
155
+ renderLine(lineNum, `Building '${cacheKey}'...`, [
155
156
  graphicsInterface_types_1.GraphicsTextEffect.Green,
156
157
  ]);
157
158
  try {
159
+ const env = new spruce_skill_utils_1.EnvService(cwd);
160
+ const remote = new spruce_event_utils_1.RemoteService(env);
161
+ if (!remote.getHost()) {
162
+ remote.set('local');
163
+ }
158
164
  await fixture.installFeatures(options, cacheKey);
159
165
  renderLine(lineNum, `Done caching '${cacheKey}'. ${remaining - 1} remaining (${duration_utility_1.default.msToFriendly(getTimeSpent())})...`, [graphicsInterface_types_1.GraphicsTextEffect.Green, graphicsInterface_types_1.GraphicsTextEffect.Bold]);
160
166
  }
@@ -1 +1 @@
1
- {"version":3,"file":"buildTestCache.js","sourceRoot":"","sources":["../../src/tests/buildTestCache.ts"],"names":[],"mappings":";;;;;;AACA,iDAAwC;AACxC,uEAAyD;AACzD,oDAA2B;AAC3B,wFAA+D;AAC/D,8EAAqD;AACrD,gFAAuD;AACvD,mFAAsD;AACtD,8EAAqE;AACrE,qFAAwD;AACxD,+EAAsD;AACtD,+EAAsD;AACtD,gBAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;AAE9B,MAAM,mBAAmB,GAAG,6BAAQ,CAAC,QAAQ,CACzC,6BAAQ,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,CAC9D,CAAA;AAED,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAA;AACnD,MAAM,EAAE,cAAc,EAAE,GAAG,WAAW,CAAA;AACtC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;AAE5C,IAAI,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAA;AAC/B,MAAM,IAAI,GAAG,IAAI,2BAAiB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;AACnD,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAA;AAClC,MAAM,iBAAiB,GACnB,OAAO,CAAC,GAAG,CAAC,oBAAoB,KAAK,GAAG;IACpC,CAAC,CAAC,SAAS;IACX,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAA;AAC1C,MAAM,WAAW,GAAG,iBAAiB,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAEtD,CAAA;AAEf,MAAM,qBAAqB,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAC7C,CAAC,CAAC,EAAE,EAAE,CACF,CAAC,KAAK,8BAA8B,IAAI,CAAC,KAAK,yBAAyB,CAC9E,CAAA;AACD,MAAM,eAAe,GAAG,QAAQ,CAC5B,OAAO,CAAC,GAAG,CAAC,8BAA8B,IAAI,IAAI,EAClD,EAAE,CACL,CAAA;AACD,IAAI,iBAAiB,GAAG,CAAC,CAAA;AACzB,IAAI,gBAAqB,CAAA;AACzB,MAAM,gBAAgB,GAAG,2BAAiB,CAAC,gBAAgB,EAAE,CAAA;AAE7D,IAAI,iBAAiB,GAAG,IAAI,CAAA;AAE5B,KAAK,UAAU,GAAG;IACd,IAAI,CAAC,KAAK,EAAE,CAAA;IAEZ,IAAI,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,CAAC;QACtC,IAAI,CAAC,UAAU,CAAC,iCAAiC,CAAC,CAAA;QAClD,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC;YACjC,IAAI,CAAC;gBACD,IAAA,wBAAQ,EAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAA;YAC5C,CAAC;YAAC,MAAM,CAAC;gBACL,WAAW;YACf,CAAC;QACL,CAAC;QACD,IAAA,wBAAQ,EAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAA;IACjD,CAAC;IAED,IAAI,CAAC,cAAc,CAAC,SAAS,QAAQ,CAAC,MAAM,mBAAmB,CAAC,CAAA;IAEhE,IAAI,QAAQ,GAAoB,EAAE,CAAA;IAElC,MAAM,MAAM,GAAG,KAAK,IAAI,EAAE;QACtB,IAAI,iBAAiB,EAAE,CAAC;YACpB,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;YAEvB,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;gBAC7B,IAAI,CAAC,SAAS,EAAE,CAAA;gBAChB,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;YAC3C,CAAC;YAED,MAAM,IAAI,CAAC,WAAW,EAAE,CAAA;YAExB,IAAI,CAAC,SAAS,EAAE,CAAA;YAChB,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;QACvB,CAAC;QAED,iBAAiB,GAAG,KAAK,CAAA;QAEzB,MAAM,IAAI,CAAC,YAAY,CACnB,GAAG,YAAY,SAAS,SAAS,OAAO,CACpC,SAAS,CACZ,EAAE,KAAK,0BAAY,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,EAAE,CACtD,CAAA;QAED,IAAI,CAAC,gBAAgB,EAAE,CAAA;IAC3B,CAAC,CAAA;IAED,gBAAgB,GAAG,gBAAgB,IAAI,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAEhE,SAAS,YAAY;QACjB,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAA;QAChC,MAAM,KAAK,GAAG,GAAG,GAAG,KAAK,CAAA;QACzB,OAAO,KAAK,CAAA;IAChB,CAAC;IAED,SAAS,UAAU,CAAC,OAAe,EAAE,OAAY,EAAE,OAAa;QAC5D,IAAI,gBAAgB,EAAE,CAAC;YACnB,iBAAiB,GAAG,IAAI,CAAA;YACxB,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YACtC,KAAK,MAAM,EAAE,CAAA;QACjB,CAAC;aAAM,CAAC;YACJ,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QACxB,CAAC;IACL,CAAC;IAED,SAAS,aAAa,CAAC,OAAe,EAAE,OAAY,EAAE,OAAa;QAC/D,IAAI,gBAAgB,EAAE,CAAC;YACnB,iBAAiB,GAAG,IAAI,CAAA;YACxB,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YACtC,KAAK,MAAM,EAAE,CAAA;QACjB,CAAC;aAAM,CAAC;YACJ,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QACxB,CAAC;IACL,CAAC;IAED,IAAI,gBAAgB,EAAE,CAAC;QACnB,MAAM,IAAI,CAAC,YAAY,CACnB,YAAY,SAAS,mBAAmB,OAAO,CAAC,SAAS,CAAC,KAAK,CAClE,CAAA;IACL,CAAC;IAED,IAAI,qBAAqB,EAAE,CAAC;QACxB,MAAM,OAAO,CAAC,GAAG,CACb,QAAQ,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAC9D,CAAA;IACL,CAAC;SAAM,CAAC;QACJ,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE;YAClD,OAAO,iBAAiB,IAAI,eAAe,EAAE,CAAC;gBAC1C,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAA;YAC7D,CAAC;YACD,iBAAiB,EAAE,CAAA;YACnB,MAAM,WAAW,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAA;YAChC,iBAAiB,EAAE,CAAA;QACvB,CAAC,CAAC,CAAA;QAEF,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IAC/B,CAAC;IAED,MAAM,IAAI,CAAC,WAAW,EAAE,CAAA;IACxB,IAAI,CAAC,UAAU,CAAC,SAAS,0BAAY,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,EAAE,CAAC,CAAA;IAErE,KAAK,UAAU,WAAW,CAAC,OAAe,EAAE,QAAgB;QACxD,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAA;QAE/D,IAAI,WAAW,IAAI,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;YACtD,UAAU,CAAC,OAAO,EAAE,aAAa,QAAQ,IAAI,EAAE;gBAC3C,4CAAkB,CAAC,MAAM;aAC5B,CAAC,CAAA;YACF,SAAS,EAAE,CAAA;QACf,CAAC;aAAM,IACH,YAAY,CAAC,QAAQ,CAAC;YACtB,6BAAQ,CAAC,YAAY,CAAC,6BAAQ,CAAC,WAAW,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,EAClE,CAAC;YACC,SAAS,EAAE,CAAA;YACX,UAAU,CAAC,OAAO,EAAE,IAAI,QAAQ,+BAA+B,EAAE;gBAC7D,4CAAkB,CAAC,MAAM;aAC5B,CAAC,CAAA;QACN,CAAC;aAAM,CAAC;YACJ,MAAM,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;YACrD,SAAS,EAAE,CAAA;QACf,CAAC;IACL,CAAC;IAED,SAAS,KAAK,CAAC,QAAgB;QAC3B,MAAM,OAAO,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;QAExC,MAAM,cAAc,GAAG,sBAAQ,CAAC,cAAc,CAC1C,yBAAyB,CAC5B,CAAA;QACD,uBAAa,CAAC,WAAW,CAAC,cAAc,CAAC,CAAA;QAEzC,MAAM,cAAc,GAAG,IAAI,wBAAc,EAAE,CAAA;QAC3C,MAAM,GAAG,GAAG,sBAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAA;QAE7C,MAAM,cAAc,GAAG,IAAI,wBAAc,CAAC,GAAG,EAAE,cAAc,CAAC,CAAA;QAC9D,MAAM,OAAO,GAAG,IAAI,wBAAc,CAAC;YAC/B,GAAG;YACH,cAAc;YACd,EAAE,EAAE,IAAI,2BAAiB,CAAC,GAAG,CAAC;YAC9B,4BAA4B,EAAE,IAAI;YAClC,gBAAgB,EAAE,cAAc,CAAC,mBAAmB,EAAE;SACzD,CAAC,CAAA;QAEF,MAAM,YAAY,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAA;QAC/C,OAAO,EAAE,YAAY,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,CAAA;IAClD,CAAC;IAED,KAAK,UAAU,KAAK,CAChB,OAAe,EACf,GAAW,EACX,QAAgB,EAChB,OAAuB,EACvB,OAAY;QAEZ,IAAI,6BAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7B,aAAa,CACT,OAAO,EACP,iBAAiB,QAAQ,4DAA4D,EACrF,CAAC,4CAAkB,CAAC,MAAM,CAAC,CAC9B,CAAA;YACD,6BAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;QAC3B,CAAC;QAED,UAAU,CAAC,OAAO,EAAE,sBAAsB,QAAQ,MAAM,EAAE;YACtD,4CAAkB,CAAC,KAAK;SAC3B,CAAC,CAAA;QAEF,IAAI,CAAC;YACD,MAAM,OAAO,CAAC,eAAe,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;YAChD,UAAU,CACN,OAAO,EACP,iBAAiB,QAAQ,MACrB,SAAS,GAAG,CAChB,eAAe,0BAAY,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,MAAM,EAC9D,CAAC,4CAAkB,CAAC,KAAK,EAAE,4CAAkB,CAAC,IAAI,CAAC,CACtD,CAAA;QACL,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAChB,UAAU,CAAC,OAAO,EAAE,kBAAkB,QAAQ,MAAM,EAAE;gBAClD,4CAAkB,CAAC,GAAG;gBACtB,4CAAkB,CAAC,IAAI;aAC1B,CAAC,CAAA;YAEF,UAAU,CAAC,OAAO,EAAE,iBAAiB,QAAQ,QAAQ,GAAG,CAAC,KAAK,EAAE,CAAC,CAAA;QACrE,CAAC;IACL,CAAC;AACL,CAAC;AAED,SAAS,OAAO,CAAC,SAAiB;IAC9B,OAAO,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAA;AACrC,CAAC;AAED,KAAK,GAAG,EAAE;KACL,IAAI,CAAC,GAAG,EAAE;IACP,IAAI,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,CAAC;QACrC,IAAI,CAAC,UAAU,CAAC,gCAAgC,CAAC,CAAA;QACjD,IAAA,wBAAQ,EAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAA;IAChD,CAAC;IACD,IAAI,gBAAgB,EAAE,CAAC;QACnB,aAAa,CAAC,gBAAgB,CAAC,CAAA;IACnC,CAAC;AACL,CAAC,CAAC;KACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACX,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;IACrB,IAAI,gBAAgB,EAAE,CAAC;QACnB,aAAa,CAAC,gBAAgB,CAAC,CAAA;IACnC,CAAC;AACL,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"buildTestCache.js","sourceRoot":"","sources":["../../src/tests/buildTestCache.ts"],"names":[],"mappings":"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"}
@@ -46,9 +46,9 @@ const testUtil = {
46
46
  test_utils_1.assert.isEqual(skipped, options.skipped, `Skipped the wrong number of files. Got ${skipped} but expected ${options.skipped}.`);
47
47
  },
48
48
  assertFileByNameInGeneratedFiles(name, files) {
49
- const file = (files ?? []).find((f) => f.name.search(name) > -1)?.path;
50
- test_utils_1.assert.isTruthy(file, `file named '${name}' not found in generated files.\n\n${JSON.stringify(files ?? [], null, 2)}`);
51
- return file;
49
+ const path = (files ?? []).find((f) => f.name.search(name) > -1)?.path;
50
+ test_utils_1.assert.isTruthy(path, `file named '${name}' not found in generated files.\n\n${JSON.stringify(files ?? [], null, 2)}`);
51
+ return path;
52
52
  },
53
53
  assertFileByPathInGeneratedFiles(path, files) {
54
54
  const file = (files ?? []).find((f) => f.path.search(path) > -1)?.path;
@@ -1,5 +1,6 @@
1
1
  import { SettingsService } from '@sprucelabs/spruce-skill-utils';
2
2
  import { Templates } from '@sprucelabs/spruce-templates';
3
+ import AgentWriter from '../features/agent/writers/AgentWriter';
3
4
  import ConversationWriter from '../features/conversation/writers/ConversationWriter';
4
5
  import DeployWriter from '../features/deploy/writers/DeployWriter';
5
6
  import ErrorWriter from '../features/error/writers/ErrorWriter';
@@ -53,5 +54,6 @@ export interface WriterMap {
53
54
  log: LogWriter;
54
55
  polish: PolishWriter;
55
56
  permission: PermissionWriter;
57
+ agent: AgentWriter;
56
58
  }
57
59
  export type WriterCode = keyof WriterMap;
@@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ const AgentWriter_1 = __importDefault(require("../features/agent/writers/AgentWriter"));
6
7
  const ConversationWriter_1 = __importDefault(require("../features/conversation/writers/ConversationWriter"));
7
8
  const DeployWriter_1 = __importDefault(require("../features/deploy/writers/DeployWriter"));
8
9
  const ErrorWriter_1 = __importDefault(require("../features/error/writers/ErrorWriter"));
@@ -24,6 +25,7 @@ const classMap = {
24
25
  schema: SchemaWriter_1.default,
25
26
  skill: SkillWriter_1.default,
26
27
  test: TestWriter_1.default,
28
+ agent: AgentWriter_1.default,
27
29
  node: NodeWriter_1.default,
28
30
  vscode: VsCodeWriter_1.default,
29
31
  conversation: ConversationWriter_1.default,
@@ -1 +1 @@
1
- {"version":3,"file":"WriterFactory.js","sourceRoot":"","sources":["../../src/writers/WriterFactory.ts"],"names":[],"mappings":";;;;;AAEA,6GAAoF;AACpF,2FAAkE;AAClE,wFAA+D;AAC/D,wFAA+D;AAC/D,kFAAyD;AACzD,qFAA4D;AAC5D,uGAA8E;AAC9E,2FAAkE;AAClE,8FAAqE;AACrE,2FAAkE;AAClE,wFAAkE;AAClE,wFAA+D;AAC/D,qFAA4D;AAC5D,qFAA4D;AAC5D,2FAAkE;AAMlE,MAAM,QAAQ,GAAG;IACb,KAAK,EAAE,qBAAW;IAClB,KAAK,EAAE,qBAAW;IAClB,MAAM,EAAE,sBAAY;IACpB,KAAK,EAAE,qBAAc;IACrB,IAAI,EAAE,oBAAU;IAChB,IAAI,EAAE,oBAAU;IAChB,MAAM,EAAE,sBAAY;IACpB,YAAY,EAAE,4BAAkB;IAChC,MAAM,EAAE,sBAAY;IACpB,OAAO,EAAE,uBAAa;IACtB,KAAK,EAAE,qBAAW;IAClB,IAAI,EAAE,oBAAU;IAChB,GAAG,EAAE,mBAAS;IACd,MAAM,EAAE,sBAAY;IACpB,UAAU,EAAE,0BAAgB;CAC/B,CAAA;AAED,MAAqB,aAAa;IACtB,SAAS,CAAW;IACpB,EAAE,CAAmB;IACrB,MAAM,CAAc;IACpB,QAAQ,CAAyB;IAEjC,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAElC,YAAmB,OAKlB;QACG,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAA;QAEnD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,EAAE,GAAG,EAAE,CAAA;QACZ,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC5B,CAAC;IAEM,MAAM,CAAC,KAAK;QACf,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC5B,CAAC;IAEM,MAAM,CAAC,cAAc,CAAC,IAAgB,EAAE,MAAW;QACtD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAA;IAChC,CAAC;IAEM,MAAM,CACT,IAAO,EACP,OAEC;QAED,MAAM,KAAK,GAAG,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QAE1C,OAAO,IAAI,KAAK,CAAC;YACb,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,IAAI,EAAE,IAAI,CAAC,EAAE;YACb,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC;SACrB,CAAiB,CAAA;IACtB,CAAC;;AA7CL,gCA8CC"}
1
+ {"version":3,"file":"WriterFactory.js","sourceRoot":"","sources":["../../src/writers/WriterFactory.ts"],"names":[],"mappings":";;;;;AAEA,wFAA+D;AAC/D,6GAAoF;AACpF,2FAAkE;AAClE,wFAA+D;AAC/D,wFAA+D;AAC/D,kFAAyD;AACzD,qFAA4D;AAC5D,uGAA8E;AAC9E,2FAAkE;AAClE,8FAAqE;AACrE,2FAAkE;AAClE,wFAAkE;AAClE,wFAA+D;AAC/D,qFAA4D;AAC5D,qFAA4D;AAC5D,2FAAkE;AAMlE,MAAM,QAAQ,GAAG;IACb,KAAK,EAAE,qBAAW;IAClB,KAAK,EAAE,qBAAW;IAClB,MAAM,EAAE,sBAAY;IACpB,KAAK,EAAE,qBAAc;IACrB,IAAI,EAAE,oBAAU;IAChB,KAAK,EAAE,qBAAW;IAClB,IAAI,EAAE,oBAAU;IAChB,MAAM,EAAE,sBAAY;IACpB,YAAY,EAAE,4BAAkB;IAChC,MAAM,EAAE,sBAAY;IACpB,OAAO,EAAE,uBAAa;IACtB,KAAK,EAAE,qBAAW;IAClB,IAAI,EAAE,oBAAU;IAChB,GAAG,EAAE,mBAAS;IACd,MAAM,EAAE,sBAAY;IACpB,UAAU,EAAE,0BAAgB;CAC/B,CAAA;AAED,MAAqB,aAAa;IACtB,SAAS,CAAW;IACpB,EAAE,CAAmB;IACrB,MAAM,CAAc;IACpB,QAAQ,CAAyB;IAEjC,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAElC,YAAmB,OAKlB;QACG,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAA;QAEnD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,EAAE,GAAG,EAAE,CAAA;QACZ,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC5B,CAAC;IAEM,MAAM,CAAC,KAAK;QACf,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC5B,CAAC;IAEM,MAAM,CAAC,cAAc,CAAC,IAAgB,EAAE,MAAW;QACtD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAA;IAChC,CAAC;IAEM,MAAM,CACT,IAAO,EACP,OAEC;QAED,MAAM,KAAK,GAAG,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QAE1C,OAAO,IAAI,KAAK,CAAC;YACb,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,IAAI,EAAE,IAAI,CAAC,EAAE;YACb,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC;SACrB,CAAiB,CAAA;IACtB,CAAC;;AA7CL,gCA8CC"}
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
7
- "version": "28.1.4",
7
+ "version": "28.2.1",
8
8
  "skill": {
9
9
  "namespace": "spruce-cli",
10
10
  "upgradeIgnoreList": [
@@ -74,18 +74,18 @@
74
74
  },
75
75
  "dependencies": {
76
76
  "@jest/reporters": "^30.2.0",
77
- "@sprucelabs/error": "^7.1.25",
77
+ "@sprucelabs/error": "^7.1.28",
78
78
  "@sprucelabs/globby": "^2.0.506",
79
- "@sprucelabs/jest-json-reporter": "^9.0.59",
80
- "@sprucelabs/mercury-client": "^43.0.145",
81
- "@sprucelabs/mercury-core-events": "^27.2.4",
82
- "@sprucelabs/mercury-event-emitter": "^43.0.145",
83
- "@sprucelabs/mercury-types": "^48.0.106",
84
- "@sprucelabs/schema": "^32.1.56",
85
- "@sprucelabs/spruce-core-schemas": "^41.1.21",
86
- "@sprucelabs/spruce-event-utils": "^41.0.120",
87
- "@sprucelabs/spruce-skill-utils": "^32.0.113",
88
- "@sprucelabs/spruce-templates": "^28.1.4",
79
+ "@sprucelabs/jest-json-reporter": "^9.0.61",
80
+ "@sprucelabs/mercury-client": "^43.0.150",
81
+ "@sprucelabs/mercury-core-events": "^27.4.4",
82
+ "@sprucelabs/mercury-event-emitter": "^43.0.150",
83
+ "@sprucelabs/mercury-types": "^48.0.112",
84
+ "@sprucelabs/schema": "^32.1.59",
85
+ "@sprucelabs/spruce-core-schemas": "^41.3.7",
86
+ "@sprucelabs/spruce-event-utils": "^41.0.126",
87
+ "@sprucelabs/spruce-skill-utils": "^32.0.116",
88
+ "@sprucelabs/spruce-templates": "^28.2.1",
89
89
  "@typescript-eslint/eslint-plugin": "^8.45.0",
90
90
  "@typescript-eslint/parser": "^8.45.0",
91
91
  "cfonts": "^3.3.1",
@@ -109,22 +109,22 @@
109
109
  "typescript": "^5.9.3"
110
110
  },
111
111
  "devDependencies": {
112
- "@sprucelabs/data-stores": "^30.0.77",
113
- "@sprucelabs/heartwood-view-controllers": "^126.11.3",
114
- "@sprucelabs/resolve-path-aliases": "^3.0.27",
115
- "@sprucelabs/spruce-conversation-plugin": "^74.1.26",
116
- "@sprucelabs/spruce-deploy-plugin": "^74.1.26",
117
- "@sprucelabs/spruce-store-plugin": "^74.1.26",
118
- "@sprucelabs/spruce-test-fixtures": "^74.1.26",
119
- "@sprucelabs/test": "^10.0.23",
120
- "@sprucelabs/test-utils": "^6.0.90",
112
+ "@sprucelabs/data-stores": "^30.0.81",
113
+ "@sprucelabs/heartwood-view-controllers": "^126.11.11",
114
+ "@sprucelabs/resolve-path-aliases": "^3.0.28",
115
+ "@sprucelabs/spruce-conversation-plugin": "^74.1.32",
116
+ "@sprucelabs/spruce-deploy-plugin": "^74.1.32",
117
+ "@sprucelabs/spruce-store-plugin": "^74.1.32",
118
+ "@sprucelabs/spruce-test-fixtures": "^74.1.32",
119
+ "@sprucelabs/test": "^10.0.24",
120
+ "@sprucelabs/test-utils": "^6.0.94",
121
121
  "@types/blessed": "^0.1.25",
122
122
  "@types/eslint": "^9.6.1",
123
123
  "@types/fs-extra": "^11.0.4",
124
124
  "@types/inquirer": "^9.0.9",
125
125
  "@types/lodash": "^4.17.20",
126
126
  "@types/md5": "^2.3.5",
127
- "@types/node": "^24.6.1",
127
+ "@types/node": "^24.6.2",
128
128
  "@types/promise.allsettled": "^1.0.6",
129
129
  "@types/ps-node": "^0.1.3",
130
130
  "@types/semver": "^7.7.1",
@@ -136,7 +136,7 @@
136
136
  "concurrently": "^9.2.1",
137
137
  "conventional-changelog-sprucelabs": "2.0.1",
138
138
  "dotenv": "^17.2.3",
139
- "eslint": "^9.36.0",
139
+ "eslint": "^9.37.0",
140
140
  "eslint-config-spruce": "^11.2.26",
141
141
  "find-process": "^2.0.0",
142
142
  "jest": "^30.2.0",
@@ -570,5 +570,5 @@
570
570
  "conventional-changelog-sprucelabs"
571
571
  ]
572
572
  },
573
- "gitHead": "73701828d02e609846d61162836af36cda8a7d2f"
573
+ "gitHead": "115e161f24f1c68f5ac121b2255d05ece86223ea"
574
574
  }
@@ -47,6 +47,7 @@ import AbstractSpruceError from '@sprucelabs/error'
47
47
 
48
48
 
49
49
 
50
+
50
51
 
51
52
 
52
53
  export declare namespace SpruceErrors.SpruceCli {
@@ -369,7 +370,7 @@ export declare namespace SpruceErrors.SpruceCli {
369
370
  /** Schema id. */
370
371
  'schemaId': string
371
372
  /** Destination. */
372
- 'destination'?: string| undefined | null
373
+ 'destination'?: string | undefined | null
373
374
  }
374
375
 
375
376
  export interface SchemaExistsSchema extends SpruceSchema.Schema {
@@ -733,7 +734,7 @@ export declare namespace SpruceErrors.SpruceCli {
733
734
  export interface Generic {
734
735
 
735
736
  /** Friendly message. */
736
- 'friendlyMessageSet'?: string| undefined | null
737
+ 'friendlyMessageSet'?: string | undefined | null
737
738
  }
738
739
 
739
740
  export interface GenericSchema extends SpruceSchema.Schema {
@@ -852,15 +853,15 @@ export declare namespace SpruceErrors.SpruceCli {
852
853
  export interface ExecutingCommandFailed {
853
854
 
854
855
  /** The command being run. */
855
- 'cmd'?: string| undefined | null
856
+ 'cmd'?: string | undefined | null
856
857
  /** Args. */
857
- 'args'?: string[]| undefined | null
858
+ 'args'?: string[] | undefined | null
858
859
  /** Cwd. */
859
- 'cwd'?: string| undefined | null
860
+ 'cwd'?: string | undefined | null
860
861
  /** Stdout. */
861
- 'stdout'?: string| undefined | null
862
+ 'stdout'?: string | undefined | null
862
863
  /** stderr. */
863
- 'stderr'?: string| undefined | null
864
+ 'stderr'?: string | undefined | null
864
865
  }
865
866
 
866
867
  export interface ExecutingCommandFailedSchema extends SpruceSchema.Schema {
@@ -1102,7 +1103,7 @@ export declare namespace SpruceErrors.SpruceCli {
1102
1103
  /** Command. the command being run! */
1103
1104
  'command': string
1104
1105
  /** Args. Arguments passed to the command */
1105
- 'args'?: string[]| undefined | null
1106
+ 'args'?: string[] | undefined | null
1106
1107
  }
1107
1108
 
1108
1109
  export interface CommandNotImplementedSchema extends SpruceSchema.Schema {
@@ -1246,7 +1247,7 @@ export declare namespace SpruceErrors.SpruceCli {
1246
1247
  export interface BuildFailed {
1247
1248
 
1248
1249
  /** File. File we wanted to build, if not set we wanted to build everything.. */
1249
- 'file'?: string| undefined | null
1250
+ 'file'?: string | undefined | null
1250
1251
  }
1251
1252
 
1252
1253
  export interface BuildFailedSchema extends SpruceSchema.Schema {
@@ -1310,6 +1311,36 @@ export declare namespace SpruceErrors.SpruceCli {
1310
1311
  }
1311
1312
 
1312
1313
 
1314
+ export declare namespace SpruceErrors.SpruceCli {
1315
+
1316
+
1317
+ export interface AgentAlreadyRegistered {
1318
+
1319
+ /** Prompt Path. The path to the existing agent prompt file. */
1320
+ 'promptPath': string
1321
+ }
1322
+
1323
+ export interface AgentAlreadyRegisteredSchema extends SpruceSchema.Schema {
1324
+ id: 'agentAlreadyRegistered',
1325
+ namespace: 'SpruceCli',
1326
+ name: 'agent already registered',
1327
+ fields: {
1328
+ /** Prompt Path. The path to the existing agent prompt file. */
1329
+ 'promptPath': {
1330
+ label: 'Prompt Path',
1331
+ type: 'text',
1332
+ isRequired: true,
1333
+ hint: 'The path to the existing agent prompt file.',
1334
+ options: undefined
1335
+ },
1336
+ }
1337
+ }
1338
+
1339
+ export type AgentAlreadyRegisteredEntity = SchemaEntity<SpruceErrors.SpruceCli.AgentAlreadyRegisteredSchema>
1340
+
1341
+ }
1342
+
1343
+
1313
1344
  export declare namespace SpruceErrors.SpruceCli {
1314
1345
 
1315
1346
 
@@ -127,10 +127,13 @@ export interface BootErrorErrorOptions extends SpruceErrors.SpruceCli.BootError,
127
127
  export interface AppControllerAlreadyExistsErrorOptions extends SpruceErrors.SpruceCli.AppControllerAlreadyExists, ISpruceErrorOptions {
128
128
  code: 'APP_CONTROLLER_ALREADY_EXISTS'
129
129
  }
130
+ export interface AgentAlreadyRegisteredErrorOptions extends SpruceErrors.SpruceCli.AgentAlreadyRegistered, ISpruceErrorOptions {
131
+ code: 'AGENT_ALREADY_REGISTERED'
132
+ }
130
133
  export interface ActionCancelledErrorOptions extends SpruceErrors.SpruceCli.ActionCancelled, ISpruceErrorOptions {
131
134
  code: 'ACTION_CANCELLED'
132
135
  }
133
136
 
134
- type ErrorOptions = | VscodeNotInstalledErrorOptions | ViewPluginAlreadyExistsErrorOptions | TransportAlreadyExistsErrorOptions | ThemeExistsErrorOptions | TestFailedErrorOptions | StoreExistsErrorOptions | SkillViewExistsErrorOptions | SkillNotRegisteredErrorOptions | SkillNotFoundErrorOptions | SchemaTemplateItemBuildingFailedErrorOptions | SchemaFailedToImportErrorOptions | SchemaExistsErrorOptions | NotLoggedInErrorOptions | NotImplementedErrorOptions | NoSkillsRegisteredErrorOptions | NoOrganizationsFoundErrorOptions | MissingDependenciesErrorOptions | MercuryResponseErrorErrorOptions | LintFailedErrorOptions | InvalidTestDirectoryErrorOptions | InvalidFeatureCodeErrorOptions | InvalidEventContractErrorOptions | InvalidCommandErrorOptions | GenericErrorOptions | FileExistsErrorOptions | FeatureNotInstalledErrorOptions | FailedToImportErrorOptions | ExecutingCommandFailedErrorOptions | DockerNotStartedErrorOptions | DirectoryNotSkillErrorOptions | DirectoryEmptyErrorOptions | DeployFailedErrorOptions | DependencyExistsErrorOptions | CreateAutoloaderFailedErrorOptions | CommandNotImplementedErrorOptions | CommandBlockedErrorOptions | CommandAbortedErrorOptions | CannotPromptInCiErrorOptions | CacheNotEnabledErrorOptions | BuildFailedErrorOptions | BootErrorErrorOptions | AppControllerAlreadyExistsErrorOptions | ActionCancelledErrorOptions
137
+ type ErrorOptions = | VscodeNotInstalledErrorOptions | ViewPluginAlreadyExistsErrorOptions | TransportAlreadyExistsErrorOptions | ThemeExistsErrorOptions | TestFailedErrorOptions | StoreExistsErrorOptions | SkillViewExistsErrorOptions | SkillNotRegisteredErrorOptions | SkillNotFoundErrorOptions | SchemaTemplateItemBuildingFailedErrorOptions | SchemaFailedToImportErrorOptions | SchemaExistsErrorOptions | NotLoggedInErrorOptions | NotImplementedErrorOptions | NoSkillsRegisteredErrorOptions | NoOrganizationsFoundErrorOptions | MissingDependenciesErrorOptions | MercuryResponseErrorErrorOptions | LintFailedErrorOptions | InvalidTestDirectoryErrorOptions | InvalidFeatureCodeErrorOptions | InvalidEventContractErrorOptions | InvalidCommandErrorOptions | GenericErrorOptions | FileExistsErrorOptions | FeatureNotInstalledErrorOptions | FailedToImportErrorOptions | ExecutingCommandFailedErrorOptions | DockerNotStartedErrorOptions | DirectoryNotSkillErrorOptions | DirectoryEmptyErrorOptions | DeployFailedErrorOptions | DependencyExistsErrorOptions | CreateAutoloaderFailedErrorOptions | CommandNotImplementedErrorOptions | CommandBlockedErrorOptions | CommandAbortedErrorOptions | CannotPromptInCiErrorOptions | CacheNotEnabledErrorOptions | BuildFailedErrorOptions | BootErrorErrorOptions | AppControllerAlreadyExistsErrorOptions | AgentAlreadyRegisteredErrorOptions | ActionCancelledErrorOptions
135
138
 
136
139
  export default ErrorOptions
@@ -0,0 +1,24 @@
1
+ import { SchemaRegistry } from '@sprucelabs/schema'
2
+ import { SpruceErrors } from '../errors.types'
3
+
4
+
5
+
6
+ const agentAlreadyRegisteredSchema: SpruceErrors.SpruceCli.AgentAlreadyRegisteredSchema = {
7
+ id: 'agentAlreadyRegistered',
8
+ namespace: 'SpruceCli',
9
+ name: 'agent already registered',
10
+ fields: {
11
+ /** Prompt Path. The path to the existing agent prompt file. */
12
+ 'promptPath': {
13
+ label: 'Prompt Path',
14
+ type: 'text',
15
+ isRequired: true,
16
+ hint: 'The path to the existing agent prompt file.',
17
+ options: undefined
18
+ },
19
+ }
20
+ }
21
+
22
+ SchemaRegistry.getInstance().trackSchema(agentAlreadyRegisteredSchema)
23
+
24
+ export default agentAlreadyRegisteredSchema
@@ -0,0 +1,99 @@
1
+ import { assert, generateId, test } from '@sprucelabs/test-utils'
2
+ import AgentStore from '../../../features/agent/stores/AgentStore'
3
+ import { SkillStore } from '../../../features/skill/stores/SkillStore'
4
+ import AbstractSkillTest from '../../../tests/AbstractSkillTest'
5
+
6
+ export default class RegisteringAnAgentAtBootTest extends AbstractSkillTest {
7
+ protected static skillCacheKey = 'events'
8
+ private static agentName = generateId()
9
+ private static agents: AgentStore
10
+ private static skills: SkillStore
11
+
12
+ protected static async beforeEach() {
13
+ await super.beforeEach()
14
+ this.agents = this.Store('agent')
15
+ this.skills = this.Store('skill')
16
+ }
17
+
18
+ @test()
19
+ protected static async canCreateRegisteringAnAgentAtBoot() {
20
+ const results = await this.register()
21
+
22
+ const expectedPlugin = this.resolvePath(
23
+ 'src',
24
+ '.spruce',
25
+ 'features',
26
+ 'agent.plugin.ts'
27
+ )
28
+
29
+ const expectedPrompt = this.resolvePath('agents/SYSTEM_PROMPT.md')
30
+ assert.isEqualDeep(results.files, [
31
+ {
32
+ path: expectedPlugin,
33
+ name: 'agent.plugin.ts',
34
+ action: 'generated',
35
+ description: 'Supports your skill with registering ai agents.',
36
+ },
37
+ {
38
+ path: expectedPrompt,
39
+ name: 'SYSTEM_PROMPT.md',
40
+ action: 'generated',
41
+ description: `The prompt file that defines how your AI Platform Agent behaves.`,
42
+ },
43
+ ])
44
+ }
45
+
46
+ @test()
47
+ protected static async bootingRegistersTheAgent() {
48
+ await this.loginAndRegisterSkill()
49
+ await this.boot()
50
+
51
+ const agent = await this.getPlatformAgent()
52
+
53
+ assert.isTruthy(agent, 'Did not register an agent at boot.')
54
+ assert.isEqual(
55
+ agent.name,
56
+ this.agentName,
57
+ 'Did not set name correctly.'
58
+ )
59
+ }
60
+
61
+ @test()
62
+ protected static async returnsAnErrorIfAlreadyRegistered() {
63
+ const results = await this.register()
64
+ assert.isFalsy(results.files, 'Should not have created files.')
65
+ assert.isTruthy(results.errors, 'Should have errors.')
66
+ }
67
+
68
+ private static async register() {
69
+ return await this.Action('agent', 'register', {
70
+ shouldAutoHandleDependencies: true,
71
+ }).execute({
72
+ type: 'system',
73
+ name: this.agentName,
74
+ })
75
+ }
76
+
77
+ private static async loginAndRegisterSkill() {
78
+ await this.people.loginAsDemoPerson()
79
+ await this.skills.register({
80
+ name: 'Agent skill',
81
+ })
82
+ }
83
+
84
+ private static async boot() {
85
+ await this.Action('skill', 'boot').execute({
86
+ local: true,
87
+ onData: (data: string) => {
88
+ this.log(`Boot Log: ${data}`)
89
+ },
90
+ onError: (data: string) => {
91
+ this.log(`Boot Error: ${data}`)
92
+ },
93
+ })
94
+ }
95
+
96
+ private static async getPlatformAgent() {
97
+ return await this.agents.getPlatformAgent()
98
+ }
99
+ }
@@ -39,23 +39,18 @@ export default class StartingOnboardingTest extends AbstractCliTest {
39
39
 
40
40
  // get through first onboarding script and select short onboarding
41
41
  await this.waitForInput()
42
- debugger
43
42
 
44
43
  await this.ui.sendInput('\n')
45
- debugger
44
+
46
45
  await this.waitForInput()
47
- debugger
48
46
 
49
47
  await this.ui.sendInput('immersive')
50
- debugger
48
+
51
49
  await this.waitForInput()
52
- debugger
53
50
 
54
51
  await this.ui.sendInput('\n')
55
- debugger
56
52
 
57
53
  await onboardPromise
58
- debugger
59
54
 
60
55
  const onboardingStore = this.Store('onboarding')
61
56
  assert.isEqual(onboardingStore.getMode(), 'immersive')