agent-switchboard 0.1.27 → 0.1.28

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 (88) hide show
  1. package/README.md +26 -1
  2. package/dist/commands/distribution.js +2 -2
  3. package/dist/commands/distribution.js.map +1 -1
  4. package/dist/commands/library.d.ts +1 -1
  5. package/dist/commands/library.js +5 -5
  6. package/dist/commands/library.js.map +1 -1
  7. package/dist/config/application-config.d.ts +37 -0
  8. package/dist/config/application-config.js +83 -0
  9. package/dist/config/application-config.js.map +1 -0
  10. package/dist/config/layered-config.js +43 -2
  11. package/dist/config/layered-config.js.map +1 -1
  12. package/dist/config/paths.d.ts +7 -2
  13. package/dist/config/paths.js +12 -3
  14. package/dist/config/paths.js.map +1 -1
  15. package/dist/config/schemas.d.ts +103 -22
  16. package/dist/config/schemas.js +22 -18
  17. package/dist/config/schemas.js.map +1 -1
  18. package/dist/config/switchboard-config.d.ts +3 -6
  19. package/dist/config/switchboard-config.js +3 -6
  20. package/dist/config/switchboard-config.js.map +1 -1
  21. package/dist/hooks/distribution.d.ts +27 -0
  22. package/dist/hooks/distribution.js +235 -0
  23. package/dist/hooks/distribution.js.map +1 -0
  24. package/dist/hooks/library.d.ts +40 -0
  25. package/dist/hooks/library.js +143 -0
  26. package/dist/hooks/library.js.map +1 -0
  27. package/dist/hooks/schema.d.ts +542 -0
  28. package/dist/hooks/schema.js +49 -0
  29. package/dist/hooks/schema.js.map +1 -0
  30. package/dist/index.js +608 -146
  31. package/dist/index.js.map +1 -1
  32. package/dist/library/fs.d.ts +1 -3
  33. package/dist/library/fs.js +24 -7
  34. package/dist/library/fs.js.map +1 -1
  35. package/dist/library/schema.d.ts +1 -1
  36. package/dist/library/schema.js +1 -1
  37. package/dist/library/sources.d.ts +3 -0
  38. package/dist/library/sources.js +8 -2
  39. package/dist/library/sources.js.map +1 -1
  40. package/dist/library/state.d.ts +4 -5
  41. package/dist/library/state.js +15 -31
  42. package/dist/library/state.js.map +1 -1
  43. package/dist/marketplace/plugin-loader.d.ts +30 -0
  44. package/dist/marketplace/plugin-loader.js +178 -0
  45. package/dist/marketplace/plugin-loader.js.map +1 -0
  46. package/dist/marketplace/reader.d.ts +36 -0
  47. package/dist/marketplace/reader.js +90 -0
  48. package/dist/marketplace/reader.js.map +1 -0
  49. package/dist/marketplace/schemas.d.ts +467 -0
  50. package/dist/marketplace/schemas.js +57 -0
  51. package/dist/marketplace/schemas.js.map +1 -0
  52. package/dist/marketplace/source-loader.d.ts +32 -0
  53. package/dist/marketplace/source-loader.js +45 -0
  54. package/dist/marketplace/source-loader.js.map +1 -0
  55. package/dist/rules/composer.d.ts +2 -2
  56. package/dist/rules/composer.js +5 -5
  57. package/dist/rules/composer.js.map +1 -1
  58. package/dist/rules/distribution.js +2 -2
  59. package/dist/rules/distribution.js.map +1 -1
  60. package/dist/skills/distribution.js +6 -6
  61. package/dist/skills/distribution.js.map +1 -1
  62. package/dist/skills/library.d.ts +1 -2
  63. package/dist/skills/library.js +6 -6
  64. package/dist/skills/library.js.map +1 -1
  65. package/dist/subagents/distribution.d.ts +1 -1
  66. package/dist/subagents/distribution.js +319 -20
  67. package/dist/subagents/distribution.js.map +1 -1
  68. package/dist/subagents/importer.d.ts +1 -1
  69. package/dist/subagents/importer.js +61 -1
  70. package/dist/subagents/importer.js.map +1 -1
  71. package/dist/subagents/inventory.js +3 -3
  72. package/dist/subagents/inventory.js.map +1 -1
  73. package/dist/subagents/library.d.ts +2 -2
  74. package/dist/subagents/library.js +14 -19
  75. package/dist/subagents/library.js.map +1 -1
  76. package/dist/ui/hook-ui.d.ts +8 -0
  77. package/dist/ui/hook-ui.js +17 -0
  78. package/dist/ui/hook-ui.js.map +1 -0
  79. package/dist/ui/library-selector.d.ts +1 -1
  80. package/dist/ui/subagent-ui.js +3 -3
  81. package/dist/ui/subagent-ui.js.map +1 -1
  82. package/dist/util/cli.d.ts +20 -0
  83. package/dist/util/cli.js +107 -14
  84. package/dist/util/cli.js.map +1 -1
  85. package/package.json +3 -2
  86. package/dist/config/agent-config.d.ts +0 -35
  87. package/dist/config/agent-config.js +0 -88
  88. package/dist/config/agent-config.js.map +0 -1
@@ -74,7 +74,7 @@ export declare const selectionSectionSchema: z.ZodObject<{} & {
74
74
  active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
75
75
  }, z.ZodTypeAny, "passthrough">>;
76
76
  /**
77
- * Incremental selection schema for per-agent overrides
77
+ * Incremental selection schema for per-application overrides
78
78
  * - active: completely override the global list
79
79
  * - add: append to the global list
80
80
  * - remove: remove from the global list
@@ -93,10 +93,10 @@ export declare const incrementalSelectionSchema: z.ZodObject<{
93
93
  remove: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
94
94
  }, z.ZodTypeAny, "passthrough">>;
95
95
  /**
96
- * Per-agent configuration override schema
97
- * Allows overriding mcp, commands, subagents, skills, rules for a specific agent
96
+ * Per-application configuration override schema
97
+ * Allows overriding mcp, commands, agents, skills, rules for a specific application
98
98
  */
99
- export declare const agentConfigOverrideSchema: z.ZodObject<{
99
+ export declare const applicationConfigOverrideSchema: z.ZodObject<{
100
100
  mcp: z.ZodOptional<z.ZodObject<{
101
101
  active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
102
102
  add: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
@@ -123,7 +123,7 @@ export declare const agentConfigOverrideSchema: z.ZodObject<{
123
123
  add: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
124
124
  remove: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
125
125
  }, z.ZodTypeAny, "passthrough">>>;
126
- subagents: z.ZodOptional<z.ZodObject<{
126
+ agents: z.ZodOptional<z.ZodObject<{
127
127
  active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
128
128
  add: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
129
129
  remove: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
@@ -149,6 +149,19 @@ export declare const agentConfigOverrideSchema: z.ZodObject<{
149
149
  add: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
150
150
  remove: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
151
151
  }, z.ZodTypeAny, "passthrough">>>;
152
+ hooks: z.ZodOptional<z.ZodObject<{
153
+ active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
154
+ add: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
155
+ remove: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
156
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
157
+ active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
158
+ add: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
159
+ remove: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
160
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
161
+ active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
162
+ add: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
163
+ remove: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
164
+ }, z.ZodTypeAny, "passthrough">>>;
152
165
  rules: z.ZodOptional<z.ZodObject<{
153
166
  active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
154
167
  add: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
@@ -195,7 +208,7 @@ export declare const agentConfigOverrideSchema: z.ZodObject<{
195
208
  add: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
196
209
  remove: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
197
210
  }, z.ZodTypeAny, "passthrough">>>;
198
- subagents: z.ZodOptional<z.ZodObject<{
211
+ agents: z.ZodOptional<z.ZodObject<{
199
212
  active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
200
213
  add: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
201
214
  remove: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
@@ -221,6 +234,19 @@ export declare const agentConfigOverrideSchema: z.ZodObject<{
221
234
  add: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
222
235
  remove: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
223
236
  }, z.ZodTypeAny, "passthrough">>>;
237
+ hooks: z.ZodOptional<z.ZodObject<{
238
+ active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
239
+ add: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
240
+ remove: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
241
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
242
+ active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
243
+ add: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
244
+ remove: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
245
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
246
+ active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
247
+ add: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
248
+ remove: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
249
+ }, z.ZodTypeAny, "passthrough">>>;
224
250
  rules: z.ZodOptional<z.ZodObject<{
225
251
  active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
226
252
  add: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
@@ -267,7 +293,7 @@ export declare const agentConfigOverrideSchema: z.ZodObject<{
267
293
  add: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
268
294
  remove: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
269
295
  }, z.ZodTypeAny, "passthrough">>>;
270
- subagents: z.ZodOptional<z.ZodObject<{
296
+ agents: z.ZodOptional<z.ZodObject<{
271
297
  active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
272
298
  add: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
273
299
  remove: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
@@ -293,6 +319,19 @@ export declare const agentConfigOverrideSchema: z.ZodObject<{
293
319
  add: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
294
320
  remove: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
295
321
  }, z.ZodTypeAny, "passthrough">>>;
322
+ hooks: z.ZodOptional<z.ZodObject<{
323
+ active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
324
+ add: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
325
+ remove: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
326
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
327
+ active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
328
+ add: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
329
+ remove: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
330
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
331
+ active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
332
+ add: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
333
+ remove: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
334
+ }, z.ZodTypeAny, "passthrough">>>;
296
335
  rules: z.ZodOptional<z.ZodObject<{
297
336
  active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
298
337
  add: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
@@ -313,7 +352,7 @@ export declare const agentConfigOverrideSchema: z.ZodObject<{
313
352
  includeDelimiters: z.ZodOptional<z.ZodBoolean>;
314
353
  }, z.ZodTypeAny, "passthrough">>>;
315
354
  }, z.ZodTypeAny, "passthrough">>;
316
- declare const agentsSectionSchema: z.ZodObject<{
355
+ declare const applicationsSectionSchema: z.ZodObject<{
317
356
  active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
318
357
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
319
358
  active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
@@ -421,7 +460,7 @@ export declare const librarySectionSchema: z.ZodObject<{} & {
421
460
  * Schema for Agent Switchboard configuration file (~/.agent-switchboard/config.toml)
422
461
  */
423
462
  export declare const switchboardConfigSchema: z.ZodObject<{
424
- agents: z.ZodDefault<z.ZodObject<{
463
+ applications: z.ZodDefault<z.ZodObject<{
425
464
  active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
426
465
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
427
466
  active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
@@ -442,7 +481,7 @@ export declare const switchboardConfigSchema: z.ZodObject<{
442
481
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{} & {
443
482
  active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
444
483
  }, z.ZodTypeAny, "passthrough">>>;
445
- subagents: z.ZodDefault<z.ZodObject<{} & {
484
+ agents: z.ZodDefault<z.ZodObject<{} & {
446
485
  active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
447
486
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{} & {
448
487
  active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
@@ -456,6 +495,13 @@ export declare const switchboardConfigSchema: z.ZodObject<{
456
495
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{} & {
457
496
  active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
458
497
  }, z.ZodTypeAny, "passthrough">>>;
498
+ hooks: z.ZodDefault<z.ZodObject<{} & {
499
+ active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
500
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{} & {
501
+ active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
502
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{} & {
503
+ active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
504
+ }, z.ZodTypeAny, "passthrough">>>;
459
505
  rules: z.ZodDefault<z.ZodObject<{} & {
460
506
  active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
461
507
  includeDelimiters: z.ZodDefault<z.ZodBoolean>;
@@ -524,7 +570,7 @@ export declare const switchboardConfigSchema: z.ZodObject<{
524
570
  }>]>>>;
525
571
  }, z.ZodTypeAny, "passthrough">>>;
526
572
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
527
- agents: z.ZodDefault<z.ZodObject<{
573
+ applications: z.ZodDefault<z.ZodObject<{
528
574
  active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
529
575
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
530
576
  active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
@@ -545,7 +591,7 @@ export declare const switchboardConfigSchema: z.ZodObject<{
545
591
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{} & {
546
592
  active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
547
593
  }, z.ZodTypeAny, "passthrough">>>;
548
- subagents: z.ZodDefault<z.ZodObject<{} & {
594
+ agents: z.ZodDefault<z.ZodObject<{} & {
549
595
  active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
550
596
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{} & {
551
597
  active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
@@ -559,6 +605,13 @@ export declare const switchboardConfigSchema: z.ZodObject<{
559
605
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{} & {
560
606
  active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
561
607
  }, z.ZodTypeAny, "passthrough">>>;
608
+ hooks: z.ZodDefault<z.ZodObject<{} & {
609
+ active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
610
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{} & {
611
+ active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
612
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{} & {
613
+ active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
614
+ }, z.ZodTypeAny, "passthrough">>>;
562
615
  rules: z.ZodDefault<z.ZodObject<{} & {
563
616
  active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
564
617
  includeDelimiters: z.ZodDefault<z.ZodBoolean>;
@@ -627,7 +680,7 @@ export declare const switchboardConfigSchema: z.ZodObject<{
627
680
  }>]>>>;
628
681
  }, z.ZodTypeAny, "passthrough">>>;
629
682
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
630
- agents: z.ZodDefault<z.ZodObject<{
683
+ applications: z.ZodDefault<z.ZodObject<{
631
684
  active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
632
685
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
633
686
  active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
@@ -648,7 +701,7 @@ export declare const switchboardConfigSchema: z.ZodObject<{
648
701
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{} & {
649
702
  active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
650
703
  }, z.ZodTypeAny, "passthrough">>>;
651
- subagents: z.ZodDefault<z.ZodObject<{} & {
704
+ agents: z.ZodDefault<z.ZodObject<{} & {
652
705
  active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
653
706
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{} & {
654
707
  active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
@@ -662,6 +715,13 @@ export declare const switchboardConfigSchema: z.ZodObject<{
662
715
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{} & {
663
716
  active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
664
717
  }, z.ZodTypeAny, "passthrough">>>;
718
+ hooks: z.ZodDefault<z.ZodObject<{} & {
719
+ active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
720
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{} & {
721
+ active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
722
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{} & {
723
+ active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
724
+ }, z.ZodTypeAny, "passthrough">>>;
665
725
  rules: z.ZodDefault<z.ZodObject<{} & {
666
726
  active: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
667
727
  includeDelimiters: z.ZodDefault<z.ZodBoolean>;
@@ -734,7 +794,7 @@ export declare const switchboardConfigSchema: z.ZodObject<{
734
794
  * Input schema for partial config layers (no defaults)
735
795
  */
736
796
  export declare const switchboardConfigLayerSchema: z.ZodObject<{
737
- agents: z.ZodOptional<z.ZodObject<{
797
+ applications: z.ZodOptional<z.ZodObject<{
738
798
  active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
739
799
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
740
800
  active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
@@ -755,7 +815,7 @@ export declare const switchboardConfigLayerSchema: z.ZodObject<{
755
815
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
756
816
  active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
757
817
  }, z.ZodTypeAny, "passthrough">>>;
758
- subagents: z.ZodOptional<z.ZodObject<{
818
+ agents: z.ZodOptional<z.ZodObject<{
759
819
  active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
760
820
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
761
821
  active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
@@ -769,6 +829,13 @@ export declare const switchboardConfigLayerSchema: z.ZodObject<{
769
829
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
770
830
  active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
771
831
  }, z.ZodTypeAny, "passthrough">>>;
832
+ hooks: z.ZodOptional<z.ZodObject<{
833
+ active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
834
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
835
+ active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
836
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
837
+ active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
838
+ }, z.ZodTypeAny, "passthrough">>>;
772
839
  rules: z.ZodOptional<z.ZodObject<{
773
840
  active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
774
841
  } & {
@@ -840,7 +907,7 @@ export declare const switchboardConfigLayerSchema: z.ZodObject<{
840
907
  }>]>>>;
841
908
  }, z.ZodTypeAny, "passthrough">>>;
842
909
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
843
- agents: z.ZodOptional<z.ZodObject<{
910
+ applications: z.ZodOptional<z.ZodObject<{
844
911
  active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
845
912
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
846
913
  active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
@@ -861,7 +928,7 @@ export declare const switchboardConfigLayerSchema: z.ZodObject<{
861
928
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
862
929
  active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
863
930
  }, z.ZodTypeAny, "passthrough">>>;
864
- subagents: z.ZodOptional<z.ZodObject<{
931
+ agents: z.ZodOptional<z.ZodObject<{
865
932
  active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
866
933
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
867
934
  active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
@@ -875,6 +942,13 @@ export declare const switchboardConfigLayerSchema: z.ZodObject<{
875
942
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
876
943
  active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
877
944
  }, z.ZodTypeAny, "passthrough">>>;
945
+ hooks: z.ZodOptional<z.ZodObject<{
946
+ active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
947
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
948
+ active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
949
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
950
+ active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
951
+ }, z.ZodTypeAny, "passthrough">>>;
878
952
  rules: z.ZodOptional<z.ZodObject<{
879
953
  active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
880
954
  } & {
@@ -946,7 +1020,7 @@ export declare const switchboardConfigLayerSchema: z.ZodObject<{
946
1020
  }>]>>>;
947
1021
  }, z.ZodTypeAny, "passthrough">>>;
948
1022
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
949
- agents: z.ZodOptional<z.ZodObject<{
1023
+ applications: z.ZodOptional<z.ZodObject<{
950
1024
  active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
951
1025
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
952
1026
  active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
@@ -967,7 +1041,7 @@ export declare const switchboardConfigLayerSchema: z.ZodObject<{
967
1041
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
968
1042
  active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
969
1043
  }, z.ZodTypeAny, "passthrough">>>;
970
- subagents: z.ZodOptional<z.ZodObject<{
1044
+ agents: z.ZodOptional<z.ZodObject<{
971
1045
  active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
972
1046
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
973
1047
  active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
@@ -981,6 +1055,13 @@ export declare const switchboardConfigLayerSchema: z.ZodObject<{
981
1055
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
982
1056
  active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
983
1057
  }, z.ZodTypeAny, "passthrough">>>;
1058
+ hooks: z.ZodOptional<z.ZodObject<{
1059
+ active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1060
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1061
+ active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1062
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1063
+ active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1064
+ }, z.ZodTypeAny, "passthrough">>>;
984
1065
  rules: z.ZodOptional<z.ZodObject<{
985
1066
  active: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
986
1067
  } & {
@@ -1059,8 +1140,8 @@ export type McpServer = z.infer<typeof mcpServerSchema>;
1059
1140
  export type McpConfig = z.infer<typeof mcpConfigSchema>;
1060
1141
  export type SelectionSection = z.infer<typeof selectionSectionSchema>;
1061
1142
  export type IncrementalSelection = z.infer<typeof incrementalSelectionSchema>;
1062
- export type AgentConfigOverride = z.infer<typeof agentConfigOverrideSchema>;
1063
- export type AgentsSection = z.infer<typeof agentsSectionSchema>;
1143
+ export type ApplicationConfigOverride = z.infer<typeof applicationConfigOverrideSchema>;
1144
+ export type ApplicationsSection = z.infer<typeof applicationsSectionSchema>;
1064
1145
  export type RulesSection = z.infer<typeof rulesSectionSchema>;
1065
1146
  export type DistributionSection = z.infer<typeof distributionSectionSchema>;
1066
1147
  export type UiSection = z.infer<typeof uiSectionSchema>;
@@ -23,7 +23,7 @@ export const mcpConfigSchema = z.object({
23
23
  mcpServers: z.record(z.string(), mcpServerSchema).default({}),
24
24
  });
25
25
  /**
26
- * Base schema for selection sections (commands, subagents, etc.) without defaults
26
+ * Base schema for selection sections (commands, agents, etc.) without defaults
27
27
  */
28
28
  const selectionSectionBaseSchema = z
29
29
  .object({
@@ -36,7 +36,7 @@ export const selectionSectionSchema = selectionSectionBaseSchema
36
36
  })
37
37
  .passthrough();
38
38
  /**
39
- * Incremental selection schema for per-agent overrides
39
+ * Incremental selection schema for per-application overrides
40
40
  * - active: completely override the global list
41
41
  * - add: append to the global list
42
42
  * - remove: remove from the global list
@@ -52,36 +52,38 @@ const incrementalRulesSchema = incrementalSelectionSchema.extend({
52
52
  includeDelimiters: z.boolean().optional(),
53
53
  });
54
54
  /**
55
- * Per-agent configuration override schema
56
- * Allows overriding mcp, commands, subagents, skills, rules for a specific agent
55
+ * Per-application configuration override schema
56
+ * Allows overriding mcp, commands, agents, skills, rules for a specific application
57
57
  */
58
- export const agentConfigOverrideSchema = z
58
+ export const applicationConfigOverrideSchema = z
59
59
  .object({
60
60
  mcp: incrementalSelectionSchema.optional(),
61
61
  commands: incrementalSelectionSchema.optional(),
62
- subagents: incrementalSelectionSchema.optional(),
62
+ agents: incrementalSelectionSchema.optional(),
63
63
  skills: incrementalSelectionSchema.optional(),
64
+ hooks: incrementalSelectionSchema.optional(),
64
65
  rules: incrementalRulesSchema.optional(),
65
66
  })
66
67
  .passthrough();
67
68
  /**
68
- * Agents section schema with active list and per-agent overrides
69
+ * Applications section schema with active list and per-application overrides.
70
+ * Lists which AI agent applications (claude-code, cursor, codex, etc.) to sync to.
69
71
  * Format in TOML:
70
- * [agents]
72
+ * [applications]
71
73
  * active = ["claude-code", "codex"]
72
74
  *
73
- * [agents.codex.skills]
75
+ * [applications.codex.skills]
74
76
  * remove = ["skill-codex"]
75
77
  *
76
- * Note: Using passthrough() instead of catchall() to allow per-agent overrides.
77
- * The per-agent overrides are validated at runtime in agent-config.ts.
78
+ * Note: Using passthrough() instead of catchall() to allow per-application overrides.
79
+ * The per-application overrides are validated at runtime in application-config.ts.
78
80
  */
79
- const agentsSectionBaseSchema = z
81
+ const applicationsSectionBaseSchema = z
80
82
  .object({
81
83
  active: z.array(z.string().trim().min(1)).optional(),
82
84
  })
83
85
  .passthrough();
84
- const agentsSectionSchema = z
86
+ const applicationsSectionSchema = z
85
87
  .object({
86
88
  active: z.array(z.string().trim().min(1)).default([]),
87
89
  })
@@ -97,7 +99,7 @@ export const rulesSectionSchema = rulesSectionBaseSchema
97
99
  .passthrough();
98
100
  /**
99
101
  * Distribution configuration schema
100
- * Controls how skills/commands/subagents are distributed to agent targets.
102
+ * Controls how skills/commands/agents are distributed to application targets.
101
103
  * - use_agents_dir: When true, skills are distributed to 2 targets (claude-code + agents).
102
104
  * When false (default), skills use the legacy 4-target mode for backward compatibility.
103
105
  */
@@ -149,11 +151,12 @@ export const librarySectionSchema = librarySectionBaseSchema
149
151
  */
150
152
  export const switchboardConfigSchema = z
151
153
  .object({
152
- agents: agentsSectionSchema.default({ active: [] }),
154
+ applications: applicationsSectionSchema.default({ active: [] }),
153
155
  mcp: selectionSectionSchema.default({ active: [] }),
154
156
  commands: selectionSectionSchema.default({ active: [] }),
155
- subagents: selectionSectionSchema.default({ active: [] }),
157
+ agents: selectionSectionSchema.default({ active: [] }),
156
158
  skills: selectionSectionSchema.default({ active: [] }),
159
+ hooks: selectionSectionSchema.default({ active: [] }),
157
160
  rules: rulesSectionSchema.default({ active: [], includeDelimiters: false }),
158
161
  distribution: distributionSectionSchema.default({ use_agents_dir: false }),
159
162
  ui: uiSectionSchema.default({ pageSize: 20 }),
@@ -165,11 +168,12 @@ export const switchboardConfigSchema = z
165
168
  */
166
169
  export const switchboardConfigLayerSchema = z
167
170
  .object({
168
- agents: agentsSectionBaseSchema.optional(),
171
+ applications: applicationsSectionBaseSchema.optional(),
169
172
  mcp: selectionSectionBaseSchema.optional(),
170
173
  commands: selectionSectionBaseSchema.optional(),
171
- subagents: selectionSectionBaseSchema.optional(),
174
+ agents: selectionSectionBaseSchema.optional(),
172
175
  skills: selectionSectionBaseSchema.optional(),
176
+ hooks: selectionSectionBaseSchema.optional(),
173
177
  rules: rulesSectionBaseSchema.optional(),
174
178
  distribution: distributionSectionBaseSchema.optional(),
175
179
  ui: uiSectionBaseSchema.optional(),
@@ -1 +1 @@
1
- {"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../src/config/schemas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../src/config/schemas.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Agent Switchboard configuration loader and saver (TOML format)
3
- * Manages the list of agents to apply MCP configs to
3
+ * Manages target applications and library state
4
4
  */
5
5
  import type { ConfigLayers, LoadConfigLayersOptions } from './layered-config.js';
6
6
  import { type SwitchboardConfig } from './schemas.js';
@@ -11,11 +11,8 @@ export interface SwitchboardConfigLoadResult {
11
11
  layers: ConfigLayers;
12
12
  }
13
13
  /**
14
- * Loads the Agent Switchboard configuration from ~/.agent-switchboard/config.toml
15
- * Returns default empty agents list if file doesn't exist
16
- *
17
- * @returns {SwitchboardConfig} Parsed and validated configuration
18
- * @throws {Error} If file exists but contains invalid TOML or fails schema validation
14
+ * Loads the Agent Switchboard configuration from ~/.agent-switchboard/config.toml.
15
+ * Returns default empty applications list if file doesn't exist.
19
16
  */
20
17
  export declare function loadSwitchboardConfig(options?: SwitchboardConfigLoadOptions): SwitchboardConfig;
21
18
  export declare function loadSwitchboardConfigWithLayers(options?: SwitchboardConfigLoadOptions): SwitchboardConfigLoadResult;
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Agent Switchboard configuration loader and saver (TOML format)
3
- * Manages the list of agents to apply MCP configs to
3
+ * Manages target applications and library state
4
4
  */
5
5
  import fs from 'node:fs';
6
6
  import { stringify } from '@iarna/toml';
@@ -8,11 +8,8 @@ import { loadMergedSwitchboardConfig } from './layered-config.js';
8
8
  import { getConfigDir, getSwitchboardConfigPath } from './paths.js';
9
9
  import { switchboardConfigSchema } from './schemas.js';
10
10
  /**
11
- * Loads the Agent Switchboard configuration from ~/.agent-switchboard/config.toml
12
- * Returns default empty agents list if file doesn't exist
13
- *
14
- * @returns {SwitchboardConfig} Parsed and validated configuration
15
- * @throws {Error} If file exists but contains invalid TOML or fails schema validation
11
+ * Loads the Agent Switchboard configuration from ~/.agent-switchboard/config.toml.
12
+ * Returns default empty applications list if file doesn't exist.
16
13
  */
17
14
  export function loadSwitchboardConfig(options) {
18
15
  return loadMergedSwitchboardConfig(options).config;
@@ -1 +1 @@
1
- {"version":3,"file":"switchboard-config.js","sourceRoot":"","sources":["../../src/config/switchboard-config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AACpE,OAAO,EAA0B,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAS/E;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAsC;IAC1E,OAAO,2BAA2B,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,+BAA+B,CAC7C,OAAsC;IAEtC,OAAO,2BAA2B,CAAC,OAAO,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAAyB;IAC7D,MAAM,UAAU,GAAG,wBAAwB,EAAE,CAAC;IAC9C,MAAM,SAAS,GAAG,YAAY,EAAE,CAAC;IAEjC,IAAI,CAAC;QACH,+CAA+C;QAC/C,MAAM,SAAS,GAAG,uBAAuB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAExD,0BAA0B;QAC1B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/C,CAAC;QAED,2BAA2B;QAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;QACvD,qFAAqF;QACrF,MAAM,OAAO,GAAG,SAAS,CAAC,QAAe,CAAC,CAAC;QAE3C,gBAAgB;QAChB,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACjD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,8CAA8C,UAAU,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAChG,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"switchboard-config.js","sourceRoot":"","sources":["../../src/config/switchboard-config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AACpE,OAAO,EAA0B,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAS/E;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAsC;IAC1E,OAAO,2BAA2B,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,+BAA+B,CAC7C,OAAsC;IAEtC,OAAO,2BAA2B,CAAC,OAAO,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAAyB;IAC7D,MAAM,UAAU,GAAG,wBAAwB,EAAE,CAAC;IAC9C,MAAM,SAAS,GAAG,YAAY,EAAE,CAAC;IAEjC,IAAI,CAAC;QACH,+CAA+C;QAC/C,MAAM,SAAS,GAAG,uBAAuB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAExD,0BAA0B;QAC1B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/C,CAAC;QAED,2BAA2B;QAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;QACvD,qFAAqF;QACrF,MAAM,OAAO,GAAG,SAAS,CAAC,QAAe,CAAC,CAAC;QAE3C,gBAAgB;QAChB,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACjD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,8CAA8C,UAAU,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAChG,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Hook distribution: copies bundle files and merges hook configurations
3
+ * into Claude Code's settings.json.
4
+ *
5
+ * Two-phase distribution for each active hook:
6
+ * 1. **Bundle copy** (bundle hooks only): copy script files to
7
+ * `~/.claude/hooks/asb/<hook-id>/` using the existing bundle distributor.
8
+ * 2. **Config merge**: deep-merge all active hooks' event maps into
9
+ * `~/.claude/settings.json` under the `hooks` key. For bundle hooks,
10
+ * `${HOOK_DIR}` placeholders are resolved to the distributed path.
11
+ *
12
+ * Only Claude Code is supported as a distribution target.
13
+ */
14
+ import type { ConfigScope } from '../config/scope.js';
15
+ import type { DistributionResult } from '../library/distribute.js';
16
+ import type { BundleDistributionResult } from '../library/distribute-bundle.js';
17
+ export type HookPlatform = 'claude-code';
18
+ export interface HookDistributionOutcome {
19
+ results: Array<DistributionResult<HookPlatform> | BundleDistributionResult<HookPlatform>>;
20
+ }
21
+ /**
22
+ * Distribute hooks to Claude Code:
23
+ * 1. Copy bundle files for bundle-type hooks
24
+ * 2. Merge all active hook configs into settings.json
25
+ * 3. Clean up orphan bundle directories
26
+ */
27
+ export declare function distributeHooks(scope?: ConfigScope): HookDistributionOutcome;