@herdctl/core 5.2.2 → 5.4.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 (91) hide show
  1. package/dist/__tests__/fleet-composition-integration.test.d.ts +15 -0
  2. package/dist/__tests__/fleet-composition-integration.test.d.ts.map +1 -0
  3. package/dist/__tests__/fleet-composition-integration.test.js +942 -0
  4. package/dist/__tests__/fleet-composition-integration.test.js.map +1 -0
  5. package/dist/config/__tests__/fleet-error-messages.test.d.ts +9 -0
  6. package/dist/config/__tests__/fleet-error-messages.test.d.ts.map +1 -0
  7. package/dist/config/__tests__/fleet-error-messages.test.js +321 -0
  8. package/dist/config/__tests__/fleet-error-messages.test.js.map +1 -0
  9. package/dist/config/__tests__/fleet-loading.test.d.ts +2 -0
  10. package/dist/config/__tests__/fleet-loading.test.d.ts.map +1 -0
  11. package/dist/config/__tests__/fleet-loading.test.js +627 -0
  12. package/dist/config/__tests__/fleet-loading.test.js.map +1 -0
  13. package/dist/config/__tests__/fleet-naming-and-defaults.test.d.ts +2 -0
  14. package/dist/config/__tests__/fleet-naming-and-defaults.test.d.ts.map +1 -0
  15. package/dist/config/__tests__/fleet-naming-and-defaults.test.js +1024 -0
  16. package/dist/config/__tests__/fleet-naming-and-defaults.test.js.map +1 -0
  17. package/dist/config/__tests__/schema.test.js +172 -1
  18. package/dist/config/__tests__/schema.test.js.map +1 -1
  19. package/dist/config/index.d.ts +2 -2
  20. package/dist/config/index.d.ts.map +1 -1
  21. package/dist/config/index.js +3 -3
  22. package/dist/config/index.js.map +1 -1
  23. package/dist/config/loader.d.ts +63 -2
  24. package/dist/config/loader.d.ts.map +1 -1
  25. package/dist/config/loader.js +309 -74
  26. package/dist/config/loader.js.map +1 -1
  27. package/dist/config/schema.d.ts +280 -36
  28. package/dist/config/schema.d.ts.map +1 -1
  29. package/dist/config/schema.js +58 -7
  30. package/dist/config/schema.js.map +1 -1
  31. package/dist/fleet-manager/__tests__/config-reload-qualified.test.d.ts +8 -0
  32. package/dist/fleet-manager/__tests__/config-reload-qualified.test.d.ts.map +1 -0
  33. package/dist/fleet-manager/__tests__/config-reload-qualified.test.js +416 -0
  34. package/dist/fleet-manager/__tests__/config-reload-qualified.test.js.map +1 -0
  35. package/dist/fleet-manager/__tests__/integration.test.js +2 -2
  36. package/dist/fleet-manager/__tests__/integration.test.js.map +1 -1
  37. package/dist/fleet-manager/chat-manager-interface.d.ts +6 -6
  38. package/dist/fleet-manager/chat-manager-interface.d.ts.map +1 -1
  39. package/dist/fleet-manager/config-reload.d.ts.map +1 -1
  40. package/dist/fleet-manager/config-reload.js +17 -14
  41. package/dist/fleet-manager/config-reload.js.map +1 -1
  42. package/dist/fleet-manager/fleet-manager.d.ts +9 -5
  43. package/dist/fleet-manager/fleet-manager.d.ts.map +1 -1
  44. package/dist/fleet-manager/fleet-manager.js +19 -9
  45. package/dist/fleet-manager/fleet-manager.js.map +1 -1
  46. package/dist/fleet-manager/job-control.js +9 -9
  47. package/dist/fleet-manager/job-control.js.map +1 -1
  48. package/dist/fleet-manager/schedule-executor.js +13 -13
  49. package/dist/fleet-manager/schedule-executor.js.map +1 -1
  50. package/dist/fleet-manager/schedule-management.d.ts.map +1 -1
  51. package/dist/fleet-manager/schedule-management.js +22 -16
  52. package/dist/fleet-manager/schedule-management.js.map +1 -1
  53. package/dist/fleet-manager/status-queries.d.ts +5 -1
  54. package/dist/fleet-manager/status-queries.d.ts.map +1 -1
  55. package/dist/fleet-manager/status-queries.js +16 -8
  56. package/dist/fleet-manager/status-queries.js.map +1 -1
  57. package/dist/fleet-manager/types.d.ts +12 -1
  58. package/dist/fleet-manager/types.d.ts.map +1 -1
  59. package/dist/runner/__tests__/job-executor.test.js +2 -0
  60. package/dist/runner/__tests__/job-executor.test.js.map +1 -1
  61. package/dist/runner/__tests__/sdk-adapter.test.js +2 -0
  62. package/dist/runner/__tests__/sdk-adapter.test.js.map +1 -1
  63. package/dist/scheduler/__tests__/schedule-runner.test.js +2 -0
  64. package/dist/scheduler/__tests__/schedule-runner.test.js.map +1 -1
  65. package/dist/scheduler/__tests__/scheduler.test.js +2 -0
  66. package/dist/scheduler/__tests__/scheduler.test.js.map +1 -1
  67. package/dist/scheduler/schedule-runner.js +12 -12
  68. package/dist/scheduler/schedule-runner.js.map +1 -1
  69. package/dist/scheduler/scheduler.js +22 -22
  70. package/dist/scheduler/scheduler.js.map +1 -1
  71. package/dist/state/__tests__/session.test.js +27 -0
  72. package/dist/state/__tests__/session.test.js.map +1 -1
  73. package/dist/state/fleet-state.d.ts +2 -2
  74. package/dist/state/fleet-state.js +2 -2
  75. package/dist/state/schemas/session-info.d.ts +5 -2
  76. package/dist/state/schemas/session-info.d.ts.map +1 -1
  77. package/dist/state/schemas/session-info.js +5 -2
  78. package/dist/state/schemas/session-info.js.map +1 -1
  79. package/dist/state/session.d.ts +4 -1
  80. package/dist/state/session.d.ts.map +1 -1
  81. package/dist/state/session.js +4 -1
  82. package/dist/state/session.js.map +1 -1
  83. package/dist/state/utils/__tests__/path-safety.test.js +18 -3
  84. package/dist/state/utils/__tests__/path-safety.test.js.map +1 -1
  85. package/dist/state/utils/path-safety.d.ts +4 -2
  86. package/dist/state/utils/path-safety.d.ts.map +1 -1
  87. package/dist/state/utils/path-safety.js +5 -3
  88. package/dist/state/utils/path-safety.js.map +1 -1
  89. package/dist/work-sources/__tests__/manager.test.js +2 -0
  90. package/dist/work-sources/__tests__/manager.test.js.map +1 -1
  91. package/package.json +1 -1
@@ -1885,9 +1885,45 @@ export declare const DiscordGuildSchema: z.ZodObject<{
1885
1885
  blocklist?: string[] | undefined;
1886
1886
  } | undefined;
1887
1887
  }>;
1888
+ /**
1889
+ * Shared chat output configuration for controlling what gets shown during conversations
1890
+ *
1891
+ * Used as the base schema for platform-specific output configs (Discord, Slack).
1892
+ *
1893
+ * @example
1894
+ * ```yaml
1895
+ * output:
1896
+ * tool_results: true
1897
+ * tool_result_max_length: 900
1898
+ * system_status: true
1899
+ * errors: true
1900
+ * ```
1901
+ */
1902
+ export declare const ChatOutputSchema: z.ZodObject<{
1903
+ /** Show tool results (default: true) */
1904
+ tool_results: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
1905
+ /** Max chars of tool output to include (default: 900, max: 1000) */
1906
+ tool_result_max_length: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
1907
+ /** Show system status messages like "compacting context..." (default: true) */
1908
+ system_status: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
1909
+ /** Show error messages from the SDK (default: true) */
1910
+ errors: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
1911
+ }, "strip", z.ZodTypeAny, {
1912
+ tool_results: boolean;
1913
+ tool_result_max_length: number;
1914
+ system_status: boolean;
1915
+ errors: boolean;
1916
+ }, {
1917
+ tool_results?: boolean | undefined;
1918
+ tool_result_max_length?: number | undefined;
1919
+ system_status?: boolean | undefined;
1920
+ errors?: boolean | undefined;
1921
+ }>;
1888
1922
  /**
1889
1923
  * Discord output configuration for controlling what gets shown during conversations
1890
1924
  *
1925
+ * Extends the shared ChatOutputSchema with Discord-specific options.
1926
+ *
1891
1927
  * @example
1892
1928
  * ```yaml
1893
1929
  * output:
@@ -1899,28 +1935,29 @@ export declare const DiscordGuildSchema: z.ZodObject<{
1899
1935
  * ```
1900
1936
  */
1901
1937
  export declare const DiscordOutputSchema: z.ZodObject<{
1902
- /** Show tool results as embeds (default: true) */
1938
+ /** Show tool results (default: true) */
1903
1939
  tool_results: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
1904
- /** Max chars of tool output to include in embeds (default: 900, max: 1000) */
1940
+ /** Max chars of tool output to include (default: 900, max: 1000) */
1905
1941
  tool_result_max_length: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
1906
1942
  /** Show system status messages like "compacting context..." (default: true) */
1907
1943
  system_status: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
1908
- /** Show a summary embed when the agent finishes a turn (cost, tokens, turns) (default: false) */
1909
- result_summary: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
1910
1944
  /** Show error messages from the SDK (default: true) */
1911
1945
  errors: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
1946
+ } & {
1947
+ /** Show a summary embed when the agent finishes a turn (cost, tokens, turns) (default: false) */
1948
+ result_summary: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
1912
1949
  }, "strip", z.ZodTypeAny, {
1913
1950
  tool_results: boolean;
1914
1951
  tool_result_max_length: number;
1915
1952
  system_status: boolean;
1916
- result_summary: boolean;
1917
1953
  errors: boolean;
1954
+ result_summary: boolean;
1918
1955
  }, {
1919
1956
  tool_results?: boolean | undefined;
1920
1957
  tool_result_max_length?: number | undefined;
1921
1958
  system_status?: boolean | undefined;
1922
- result_summary?: boolean | undefined;
1923
1959
  errors?: boolean | undefined;
1960
+ result_summary?: boolean | undefined;
1924
1961
  }>;
1925
1962
  /**
1926
1963
  * Per-agent Discord bot configuration schema
@@ -1961,28 +1998,29 @@ export declare const AgentChatDiscordSchema: z.ZodObject<{
1961
1998
  log_level: z.ZodDefault<z.ZodEnum<["minimal", "standard", "verbose"]>>;
1962
1999
  /** Output configuration for controlling what gets shown during conversations */
1963
2000
  output: z.ZodDefault<z.ZodOptional<z.ZodObject<{
1964
- /** Show tool results as embeds (default: true) */
2001
+ /** Show tool results (default: true) */
1965
2002
  tool_results: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
1966
- /** Max chars of tool output to include in embeds (default: 900, max: 1000) */
2003
+ /** Max chars of tool output to include (default: 900, max: 1000) */
1967
2004
  tool_result_max_length: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
1968
2005
  /** Show system status messages like "compacting context..." (default: true) */
1969
2006
  system_status: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
1970
- /** Show a summary embed when the agent finishes a turn (cost, tokens, turns) (default: false) */
1971
- result_summary: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
1972
2007
  /** Show error messages from the SDK (default: true) */
1973
2008
  errors: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
2009
+ } & {
2010
+ /** Show a summary embed when the agent finishes a turn (cost, tokens, turns) (default: false) */
2011
+ result_summary: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
1974
2012
  }, "strip", z.ZodTypeAny, {
1975
2013
  tool_results: boolean;
1976
2014
  tool_result_max_length: number;
1977
2015
  system_status: boolean;
1978
- result_summary: boolean;
1979
2016
  errors: boolean;
2017
+ result_summary: boolean;
1980
2018
  }, {
1981
2019
  tool_results?: boolean | undefined;
1982
2020
  tool_result_max_length?: number | undefined;
1983
2021
  system_status?: boolean | undefined;
1984
- result_summary?: boolean | undefined;
1985
2022
  errors?: boolean | undefined;
2023
+ result_summary?: boolean | undefined;
1986
2024
  }>>>;
1987
2025
  /** Bot presence/activity configuration */
1988
2026
  presence: z.ZodOptional<z.ZodObject<{
@@ -2084,8 +2122,8 @@ export declare const AgentChatDiscordSchema: z.ZodObject<{
2084
2122
  tool_results: boolean;
2085
2123
  tool_result_max_length: number;
2086
2124
  system_status: boolean;
2087
- result_summary: boolean;
2088
2125
  errors: boolean;
2126
+ result_summary: boolean;
2089
2127
  };
2090
2128
  guilds: {
2091
2129
  id: string;
@@ -2141,8 +2179,8 @@ export declare const AgentChatDiscordSchema: z.ZodObject<{
2141
2179
  tool_results?: boolean | undefined;
2142
2180
  tool_result_max_length?: number | undefined;
2143
2181
  system_status?: boolean | undefined;
2144
- result_summary?: boolean | undefined;
2145
2182
  errors?: boolean | undefined;
2183
+ result_summary?: boolean | undefined;
2146
2184
  } | undefined;
2147
2185
  presence?: {
2148
2186
  activity_type?: "playing" | "watching" | "listening" | "competing" | undefined;
@@ -2246,6 +2284,27 @@ export declare const AgentChatSlackSchema: z.ZodObject<{
2246
2284
  allowlist?: string[] | undefined;
2247
2285
  blocklist?: string[] | undefined;
2248
2286
  }>>;
2287
+ /** Output configuration controlling what gets shown during conversations */
2288
+ output: z.ZodOptional<z.ZodObject<{
2289
+ /** Show tool results (default: true) */
2290
+ tool_results: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
2291
+ /** Max chars of tool output to include (default: 900, max: 1000) */
2292
+ tool_result_max_length: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
2293
+ /** Show system status messages like "compacting context..." (default: true) */
2294
+ system_status: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
2295
+ /** Show error messages from the SDK (default: true) */
2296
+ errors: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
2297
+ }, "strip", z.ZodTypeAny, {
2298
+ tool_results: boolean;
2299
+ tool_result_max_length: number;
2300
+ system_status: boolean;
2301
+ errors: boolean;
2302
+ }, {
2303
+ tool_results?: boolean | undefined;
2304
+ tool_result_max_length?: number | undefined;
2305
+ system_status?: boolean | undefined;
2306
+ errors?: boolean | undefined;
2307
+ }>>;
2249
2308
  }, "strip", z.ZodTypeAny, {
2250
2309
  channels: {
2251
2310
  mode: "mention" | "auto";
@@ -2263,6 +2322,12 @@ export declare const AgentChatSlackSchema: z.ZodObject<{
2263
2322
  allowlist?: string[] | undefined;
2264
2323
  blocklist?: string[] | undefined;
2265
2324
  } | undefined;
2325
+ output?: {
2326
+ tool_results: boolean;
2327
+ tool_result_max_length: number;
2328
+ system_status: boolean;
2329
+ errors: boolean;
2330
+ } | undefined;
2266
2331
  }, {
2267
2332
  channels: {
2268
2333
  id: string;
@@ -2279,6 +2344,12 @@ export declare const AgentChatSlackSchema: z.ZodObject<{
2279
2344
  bot_token_env?: string | undefined;
2280
2345
  session_expiry_hours?: number | undefined;
2281
2346
  log_level?: "minimal" | "standard" | "verbose" | undefined;
2347
+ output?: {
2348
+ tool_results?: boolean | undefined;
2349
+ tool_result_max_length?: number | undefined;
2350
+ system_status?: boolean | undefined;
2351
+ errors?: boolean | undefined;
2352
+ } | undefined;
2282
2353
  app_token_env?: string | undefined;
2283
2354
  }>;
2284
2355
  export declare const AgentChatSchema: z.ZodObject<{
@@ -2291,28 +2362,29 @@ export declare const AgentChatSchema: z.ZodObject<{
2291
2362
  log_level: z.ZodDefault<z.ZodEnum<["minimal", "standard", "verbose"]>>;
2292
2363
  /** Output configuration for controlling what gets shown during conversations */
2293
2364
  output: z.ZodDefault<z.ZodOptional<z.ZodObject<{
2294
- /** Show tool results as embeds (default: true) */
2365
+ /** Show tool results (default: true) */
2295
2366
  tool_results: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
2296
- /** Max chars of tool output to include in embeds (default: 900, max: 1000) */
2367
+ /** Max chars of tool output to include (default: 900, max: 1000) */
2297
2368
  tool_result_max_length: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
2298
2369
  /** Show system status messages like "compacting context..." (default: true) */
2299
2370
  system_status: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
2300
- /** Show a summary embed when the agent finishes a turn (cost, tokens, turns) (default: false) */
2301
- result_summary: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
2302
2371
  /** Show error messages from the SDK (default: true) */
2303
2372
  errors: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
2373
+ } & {
2374
+ /** Show a summary embed when the agent finishes a turn (cost, tokens, turns) (default: false) */
2375
+ result_summary: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
2304
2376
  }, "strip", z.ZodTypeAny, {
2305
2377
  tool_results: boolean;
2306
2378
  tool_result_max_length: number;
2307
2379
  system_status: boolean;
2308
- result_summary: boolean;
2309
2380
  errors: boolean;
2381
+ result_summary: boolean;
2310
2382
  }, {
2311
2383
  tool_results?: boolean | undefined;
2312
2384
  tool_result_max_length?: number | undefined;
2313
2385
  system_status?: boolean | undefined;
2314
- result_summary?: boolean | undefined;
2315
2386
  errors?: boolean | undefined;
2387
+ result_summary?: boolean | undefined;
2316
2388
  }>>>;
2317
2389
  /** Bot presence/activity configuration */
2318
2390
  presence: z.ZodOptional<z.ZodObject<{
@@ -2414,8 +2486,8 @@ export declare const AgentChatSchema: z.ZodObject<{
2414
2486
  tool_results: boolean;
2415
2487
  tool_result_max_length: number;
2416
2488
  system_status: boolean;
2417
- result_summary: boolean;
2418
2489
  errors: boolean;
2490
+ result_summary: boolean;
2419
2491
  };
2420
2492
  guilds: {
2421
2493
  id: string;
@@ -2471,8 +2543,8 @@ export declare const AgentChatSchema: z.ZodObject<{
2471
2543
  tool_results?: boolean | undefined;
2472
2544
  tool_result_max_length?: number | undefined;
2473
2545
  system_status?: boolean | undefined;
2474
- result_summary?: boolean | undefined;
2475
2546
  errors?: boolean | undefined;
2547
+ result_summary?: boolean | undefined;
2476
2548
  } | undefined;
2477
2549
  presence?: {
2478
2550
  activity_type?: "playing" | "watching" | "listening" | "competing" | undefined;
@@ -2526,6 +2598,27 @@ export declare const AgentChatSchema: z.ZodObject<{
2526
2598
  allowlist?: string[] | undefined;
2527
2599
  blocklist?: string[] | undefined;
2528
2600
  }>>;
2601
+ /** Output configuration controlling what gets shown during conversations */
2602
+ output: z.ZodOptional<z.ZodObject<{
2603
+ /** Show tool results (default: true) */
2604
+ tool_results: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
2605
+ /** Max chars of tool output to include (default: 900, max: 1000) */
2606
+ tool_result_max_length: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
2607
+ /** Show system status messages like "compacting context..." (default: true) */
2608
+ system_status: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
2609
+ /** Show error messages from the SDK (default: true) */
2610
+ errors: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
2611
+ }, "strip", z.ZodTypeAny, {
2612
+ tool_results: boolean;
2613
+ tool_result_max_length: number;
2614
+ system_status: boolean;
2615
+ errors: boolean;
2616
+ }, {
2617
+ tool_results?: boolean | undefined;
2618
+ tool_result_max_length?: number | undefined;
2619
+ system_status?: boolean | undefined;
2620
+ errors?: boolean | undefined;
2621
+ }>>;
2529
2622
  }, "strip", z.ZodTypeAny, {
2530
2623
  channels: {
2531
2624
  mode: "mention" | "auto";
@@ -2543,6 +2636,12 @@ export declare const AgentChatSchema: z.ZodObject<{
2543
2636
  allowlist?: string[] | undefined;
2544
2637
  blocklist?: string[] | undefined;
2545
2638
  } | undefined;
2639
+ output?: {
2640
+ tool_results: boolean;
2641
+ tool_result_max_length: number;
2642
+ system_status: boolean;
2643
+ errors: boolean;
2644
+ } | undefined;
2546
2645
  }, {
2547
2646
  channels: {
2548
2647
  id: string;
@@ -2559,6 +2658,12 @@ export declare const AgentChatSchema: z.ZodObject<{
2559
2658
  bot_token_env?: string | undefined;
2560
2659
  session_expiry_hours?: number | undefined;
2561
2660
  log_level?: "minimal" | "standard" | "verbose" | undefined;
2661
+ output?: {
2662
+ tool_results?: boolean | undefined;
2663
+ tool_result_max_length?: number | undefined;
2664
+ system_status?: boolean | undefined;
2665
+ errors?: boolean | undefined;
2666
+ } | undefined;
2562
2667
  app_token_env?: string | undefined;
2563
2668
  }>>;
2564
2669
  }, "strip", z.ZodTypeAny, {
@@ -2570,8 +2675,8 @@ export declare const AgentChatSchema: z.ZodObject<{
2570
2675
  tool_results: boolean;
2571
2676
  tool_result_max_length: number;
2572
2677
  system_status: boolean;
2573
- result_summary: boolean;
2574
2678
  errors: boolean;
2679
+ result_summary: boolean;
2575
2680
  };
2576
2681
  guilds: {
2577
2682
  id: string;
@@ -2616,6 +2721,12 @@ export declare const AgentChatSchema: z.ZodObject<{
2616
2721
  allowlist?: string[] | undefined;
2617
2722
  blocklist?: string[] | undefined;
2618
2723
  } | undefined;
2724
+ output?: {
2725
+ tool_results: boolean;
2726
+ tool_result_max_length: number;
2727
+ system_status: boolean;
2728
+ errors: boolean;
2729
+ } | undefined;
2619
2730
  } | undefined;
2620
2731
  }, {
2621
2732
  discord?: {
@@ -2647,8 +2758,8 @@ export declare const AgentChatSchema: z.ZodObject<{
2647
2758
  tool_results?: boolean | undefined;
2648
2759
  tool_result_max_length?: number | undefined;
2649
2760
  system_status?: boolean | undefined;
2650
- result_summary?: boolean | undefined;
2651
2761
  errors?: boolean | undefined;
2762
+ result_summary?: boolean | undefined;
2652
2763
  } | undefined;
2653
2764
  presence?: {
2654
2765
  activity_type?: "playing" | "watching" | "listening" | "competing" | undefined;
@@ -2671,6 +2782,12 @@ export declare const AgentChatSchema: z.ZodObject<{
2671
2782
  bot_token_env?: string | undefined;
2672
2783
  session_expiry_hours?: number | undefined;
2673
2784
  log_level?: "minimal" | "standard" | "verbose" | undefined;
2785
+ output?: {
2786
+ tool_results?: boolean | undefined;
2787
+ tool_result_max_length?: number | undefined;
2788
+ system_status?: boolean | undefined;
2789
+ errors?: boolean | undefined;
2790
+ } | undefined;
2674
2791
  app_token_env?: string | undefined;
2675
2792
  } | undefined;
2676
2793
  }>;
@@ -3716,28 +3833,29 @@ export declare const AgentConfigSchema: z.ZodObject<{
3716
3833
  log_level: z.ZodDefault<z.ZodEnum<["minimal", "standard", "verbose"]>>;
3717
3834
  /** Output configuration for controlling what gets shown during conversations */
3718
3835
  output: z.ZodDefault<z.ZodOptional<z.ZodObject<{
3719
- /** Show tool results as embeds (default: true) */
3836
+ /** Show tool results (default: true) */
3720
3837
  tool_results: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
3721
- /** Max chars of tool output to include in embeds (default: 900, max: 1000) */
3838
+ /** Max chars of tool output to include (default: 900, max: 1000) */
3722
3839
  tool_result_max_length: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
3723
3840
  /** Show system status messages like "compacting context..." (default: true) */
3724
3841
  system_status: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
3725
- /** Show a summary embed when the agent finishes a turn (cost, tokens, turns) (default: false) */
3726
- result_summary: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
3727
3842
  /** Show error messages from the SDK (default: true) */
3728
3843
  errors: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
3844
+ } & {
3845
+ /** Show a summary embed when the agent finishes a turn (cost, tokens, turns) (default: false) */
3846
+ result_summary: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
3729
3847
  }, "strip", z.ZodTypeAny, {
3730
3848
  tool_results: boolean;
3731
3849
  tool_result_max_length: number;
3732
3850
  system_status: boolean;
3733
- result_summary: boolean;
3734
3851
  errors: boolean;
3852
+ result_summary: boolean;
3735
3853
  }, {
3736
3854
  tool_results?: boolean | undefined;
3737
3855
  tool_result_max_length?: number | undefined;
3738
3856
  system_status?: boolean | undefined;
3739
- result_summary?: boolean | undefined;
3740
3857
  errors?: boolean | undefined;
3858
+ result_summary?: boolean | undefined;
3741
3859
  }>>>;
3742
3860
  /** Bot presence/activity configuration */
3743
3861
  presence: z.ZodOptional<z.ZodObject<{
@@ -3839,8 +3957,8 @@ export declare const AgentConfigSchema: z.ZodObject<{
3839
3957
  tool_results: boolean;
3840
3958
  tool_result_max_length: number;
3841
3959
  system_status: boolean;
3842
- result_summary: boolean;
3843
3960
  errors: boolean;
3961
+ result_summary: boolean;
3844
3962
  };
3845
3963
  guilds: {
3846
3964
  id: string;
@@ -3896,8 +4014,8 @@ export declare const AgentConfigSchema: z.ZodObject<{
3896
4014
  tool_results?: boolean | undefined;
3897
4015
  tool_result_max_length?: number | undefined;
3898
4016
  system_status?: boolean | undefined;
3899
- result_summary?: boolean | undefined;
3900
4017
  errors?: boolean | undefined;
4018
+ result_summary?: boolean | undefined;
3901
4019
  } | undefined;
3902
4020
  presence?: {
3903
4021
  activity_type?: "playing" | "watching" | "listening" | "competing" | undefined;
@@ -3951,6 +4069,27 @@ export declare const AgentConfigSchema: z.ZodObject<{
3951
4069
  allowlist?: string[] | undefined;
3952
4070
  blocklist?: string[] | undefined;
3953
4071
  }>>;
4072
+ /** Output configuration controlling what gets shown during conversations */
4073
+ output: z.ZodOptional<z.ZodObject<{
4074
+ /** Show tool results (default: true) */
4075
+ tool_results: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
4076
+ /** Max chars of tool output to include (default: 900, max: 1000) */
4077
+ tool_result_max_length: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
4078
+ /** Show system status messages like "compacting context..." (default: true) */
4079
+ system_status: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
4080
+ /** Show error messages from the SDK (default: true) */
4081
+ errors: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
4082
+ }, "strip", z.ZodTypeAny, {
4083
+ tool_results: boolean;
4084
+ tool_result_max_length: number;
4085
+ system_status: boolean;
4086
+ errors: boolean;
4087
+ }, {
4088
+ tool_results?: boolean | undefined;
4089
+ tool_result_max_length?: number | undefined;
4090
+ system_status?: boolean | undefined;
4091
+ errors?: boolean | undefined;
4092
+ }>>;
3954
4093
  }, "strip", z.ZodTypeAny, {
3955
4094
  channels: {
3956
4095
  mode: "mention" | "auto";
@@ -3968,6 +4107,12 @@ export declare const AgentConfigSchema: z.ZodObject<{
3968
4107
  allowlist?: string[] | undefined;
3969
4108
  blocklist?: string[] | undefined;
3970
4109
  } | undefined;
4110
+ output?: {
4111
+ tool_results: boolean;
4112
+ tool_result_max_length: number;
4113
+ system_status: boolean;
4114
+ errors: boolean;
4115
+ } | undefined;
3971
4116
  }, {
3972
4117
  channels: {
3973
4118
  id: string;
@@ -3984,6 +4129,12 @@ export declare const AgentConfigSchema: z.ZodObject<{
3984
4129
  bot_token_env?: string | undefined;
3985
4130
  session_expiry_hours?: number | undefined;
3986
4131
  log_level?: "minimal" | "standard" | "verbose" | undefined;
4132
+ output?: {
4133
+ tool_results?: boolean | undefined;
4134
+ tool_result_max_length?: number | undefined;
4135
+ system_status?: boolean | undefined;
4136
+ errors?: boolean | undefined;
4137
+ } | undefined;
3987
4138
  app_token_env?: string | undefined;
3988
4139
  }>>;
3989
4140
  }, "strip", z.ZodTypeAny, {
@@ -3995,8 +4146,8 @@ export declare const AgentConfigSchema: z.ZodObject<{
3995
4146
  tool_results: boolean;
3996
4147
  tool_result_max_length: number;
3997
4148
  system_status: boolean;
3998
- result_summary: boolean;
3999
4149
  errors: boolean;
4150
+ result_summary: boolean;
4000
4151
  };
4001
4152
  guilds: {
4002
4153
  id: string;
@@ -4041,6 +4192,12 @@ export declare const AgentConfigSchema: z.ZodObject<{
4041
4192
  allowlist?: string[] | undefined;
4042
4193
  blocklist?: string[] | undefined;
4043
4194
  } | undefined;
4195
+ output?: {
4196
+ tool_results: boolean;
4197
+ tool_result_max_length: number;
4198
+ system_status: boolean;
4199
+ errors: boolean;
4200
+ } | undefined;
4044
4201
  } | undefined;
4045
4202
  }, {
4046
4203
  discord?: {
@@ -4072,8 +4229,8 @@ export declare const AgentConfigSchema: z.ZodObject<{
4072
4229
  tool_results?: boolean | undefined;
4073
4230
  tool_result_max_length?: number | undefined;
4074
4231
  system_status?: boolean | undefined;
4075
- result_summary?: boolean | undefined;
4076
4232
  errors?: boolean | undefined;
4233
+ result_summary?: boolean | undefined;
4077
4234
  } | undefined;
4078
4235
  presence?: {
4079
4236
  activity_type?: "playing" | "watching" | "listening" | "competing" | undefined;
@@ -4096,6 +4253,12 @@ export declare const AgentConfigSchema: z.ZodObject<{
4096
4253
  bot_token_env?: string | undefined;
4097
4254
  session_expiry_hours?: number | undefined;
4098
4255
  log_level?: "minimal" | "standard" | "verbose" | undefined;
4256
+ output?: {
4257
+ tool_results?: boolean | undefined;
4258
+ tool_result_max_length?: number | undefined;
4259
+ system_status?: boolean | undefined;
4260
+ errors?: boolean | undefined;
4261
+ } | undefined;
4099
4262
  app_token_env?: string | undefined;
4100
4263
  } | undefined;
4101
4264
  }>>;
@@ -4704,8 +4867,8 @@ export declare const AgentConfigSchema: z.ZodObject<{
4704
4867
  tool_results: boolean;
4705
4868
  tool_result_max_length: number;
4706
4869
  system_status: boolean;
4707
- result_summary: boolean;
4708
4870
  errors: boolean;
4871
+ result_summary: boolean;
4709
4872
  };
4710
4873
  guilds: {
4711
4874
  id: string;
@@ -4750,6 +4913,12 @@ export declare const AgentConfigSchema: z.ZodObject<{
4750
4913
  allowlist?: string[] | undefined;
4751
4914
  blocklist?: string[] | undefined;
4752
4915
  } | undefined;
4916
+ output?: {
4917
+ tool_results: boolean;
4918
+ tool_result_max_length: number;
4919
+ system_status: boolean;
4920
+ errors: boolean;
4921
+ } | undefined;
4753
4922
  } | undefined;
4754
4923
  } | undefined;
4755
4924
  description?: string | undefined;
@@ -4957,8 +5126,8 @@ export declare const AgentConfigSchema: z.ZodObject<{
4957
5126
  tool_results?: boolean | undefined;
4958
5127
  tool_result_max_length?: number | undefined;
4959
5128
  system_status?: boolean | undefined;
4960
- result_summary?: boolean | undefined;
4961
5129
  errors?: boolean | undefined;
5130
+ result_summary?: boolean | undefined;
4962
5131
  } | undefined;
4963
5132
  presence?: {
4964
5133
  activity_type?: "playing" | "watching" | "listening" | "competing" | undefined;
@@ -4981,6 +5150,12 @@ export declare const AgentConfigSchema: z.ZodObject<{
4981
5150
  bot_token_env?: string | undefined;
4982
5151
  session_expiry_hours?: number | undefined;
4983
5152
  log_level?: "minimal" | "standard" | "verbose" | undefined;
5153
+ output?: {
5154
+ tool_results?: boolean | undefined;
5155
+ tool_result_max_length?: number | undefined;
5156
+ system_status?: boolean | undefined;
5157
+ errors?: boolean | undefined;
5158
+ } | undefined;
4984
5159
  app_token_env?: string | undefined;
4985
5160
  } | undefined;
4986
5161
  } | undefined;
@@ -5114,6 +5289,38 @@ export declare const AgentConfigSchema: z.ZodObject<{
5114
5289
  * without having to re-specify all required fields like `type`.
5115
5290
  */
5116
5291
  export declare const AgentOverridesSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
5292
+ /**
5293
+ * Schema for fleet references in the `fleets` array.
5294
+ * Each entry references a sub-fleet YAML file, with optional name override
5295
+ * and top-level config overrides.
5296
+ *
5297
+ * @example
5298
+ * ```yaml
5299
+ * fleets:
5300
+ * - path: ./herdctl/herdctl.yaml
5301
+ * name: herdctl
5302
+ * overrides:
5303
+ * web:
5304
+ * enabled: false
5305
+ * ```
5306
+ */
5307
+ export declare const FleetReferenceSchema: z.ZodObject<{
5308
+ /** Path to a sub-fleet YAML file (relative to parent fleet config) */
5309
+ path: z.ZodString;
5310
+ /** Optional name override for the sub-fleet (must match agent name pattern — no dots) */
5311
+ name: z.ZodOptional<z.ZodString>;
5312
+ /** Optional top-level config overrides applied to the sub-fleet */
5313
+ overrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
5314
+ }, "strip", z.ZodTypeAny, {
5315
+ path: string;
5316
+ overrides?: Record<string, unknown> | undefined;
5317
+ name?: string | undefined;
5318
+ }, {
5319
+ path: string;
5320
+ overrides?: Record<string, unknown> | undefined;
5321
+ name?: string | undefined;
5322
+ }>;
5323
+ export type FleetReference = z.infer<typeof FleetReferenceSchema>;
5117
5324
  export declare const DiscordChatSchema: z.ZodObject<{
5118
5325
  enabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
5119
5326
  token_env: z.ZodOptional<z.ZodString>;
@@ -5185,15 +5392,19 @@ export declare const WebSchema: z.ZodObject<{
5185
5392
  session_expiry_hours: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
5186
5393
  /** Automatically open browser when starting (default: false) */
5187
5394
  open_browser: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
5395
+ /** Show tool call results in chat conversations (default: true) */
5396
+ tool_results: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
5188
5397
  }, "strip", z.ZodTypeAny, {
5189
5398
  host: string;
5190
5399
  enabled: boolean;
5400
+ tool_results: boolean;
5191
5401
  session_expiry_hours: number;
5192
5402
  port: number;
5193
5403
  open_browser: boolean;
5194
5404
  }, {
5195
5405
  host?: string | undefined;
5196
5406
  enabled?: boolean | undefined;
5407
+ tool_results?: boolean | undefined;
5197
5408
  session_expiry_hours?: number | undefined;
5198
5409
  port?: number | undefined;
5199
5410
  open_browser?: boolean | undefined;
@@ -5763,6 +5974,22 @@ export declare const FleetConfigSchema: z.ZodObject<{
5763
5974
  clone_depth?: number | undefined;
5764
5975
  default_branch?: string | undefined;
5765
5976
  }>>;
5977
+ fleets: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodObject<{
5978
+ /** Path to a sub-fleet YAML file (relative to parent fleet config) */
5979
+ path: z.ZodString;
5980
+ /** Optional name override for the sub-fleet (must match agent name pattern — no dots) */
5981
+ name: z.ZodOptional<z.ZodString>;
5982
+ /** Optional top-level config overrides applied to the sub-fleet */
5983
+ overrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
5984
+ }, "strip", z.ZodTypeAny, {
5985
+ path: string;
5986
+ overrides?: Record<string, unknown> | undefined;
5987
+ name?: string | undefined;
5988
+ }, {
5989
+ path: string;
5990
+ overrides?: Record<string, unknown> | undefined;
5991
+ name?: string | undefined;
5992
+ }>, "many">>>;
5766
5993
  agents: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodObject<{
5767
5994
  path: z.ZodString;
5768
5995
  /**
@@ -5824,15 +6051,19 @@ export declare const FleetConfigSchema: z.ZodObject<{
5824
6051
  session_expiry_hours: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
5825
6052
  /** Automatically open browser when starting (default: false) */
5826
6053
  open_browser: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
6054
+ /** Show tool call results in chat conversations (default: true) */
6055
+ tool_results: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
5827
6056
  }, "strip", z.ZodTypeAny, {
5828
6057
  host: string;
5829
6058
  enabled: boolean;
6059
+ tool_results: boolean;
5830
6060
  session_expiry_hours: number;
5831
6061
  port: number;
5832
6062
  open_browser: boolean;
5833
6063
  }, {
5834
6064
  host?: string | undefined;
5835
6065
  enabled?: boolean | undefined;
6066
+ tool_results?: boolean | undefined;
5836
6067
  session_expiry_hours?: number | undefined;
5837
6068
  port?: number | undefined;
5838
6069
  open_browser?: boolean | undefined;
@@ -6123,6 +6354,11 @@ export declare const FleetConfigSchema: z.ZodObject<{
6123
6354
  }>>;
6124
6355
  }, "strict", z.ZodTypeAny, {
6125
6356
  version: number;
6357
+ fleets: {
6358
+ path: string;
6359
+ overrides?: Record<string, unknown> | undefined;
6360
+ name?: string | undefined;
6361
+ }[];
6126
6362
  agents: {
6127
6363
  path: string;
6128
6364
  overrides?: Record<string, unknown> | undefined;
@@ -6235,6 +6471,7 @@ export declare const FleetConfigSchema: z.ZodObject<{
6235
6471
  web?: {
6236
6472
  host: string;
6237
6473
  enabled: boolean;
6474
+ tool_results: boolean;
6238
6475
  session_expiry_hours: number;
6239
6476
  port: number;
6240
6477
  open_browser: boolean;
@@ -6341,6 +6578,11 @@ export declare const FleetConfigSchema: z.ZodObject<{
6341
6578
  allowed_tools?: string[] | undefined;
6342
6579
  denied_tools?: string[] | undefined;
6343
6580
  } | undefined;
6581
+ fleets?: {
6582
+ path: string;
6583
+ overrides?: Record<string, unknown> | undefined;
6584
+ name?: string | undefined;
6585
+ }[] | undefined;
6344
6586
  agents?: {
6345
6587
  path: string;
6346
6588
  overrides?: Record<string, unknown> | undefined;
@@ -6353,6 +6595,7 @@ export declare const FleetConfigSchema: z.ZodObject<{
6353
6595
  web?: {
6354
6596
  host?: string | undefined;
6355
6597
  enabled?: boolean | undefined;
6598
+ tool_results?: boolean | undefined;
6356
6599
  session_expiry_hours?: number | undefined;
6357
6600
  port?: number | undefined;
6358
6601
  open_browser?: boolean | undefined;
@@ -6388,6 +6631,7 @@ export type Session = z.infer<typeof SessionSchema>;
6388
6631
  export type ScheduleType = z.infer<typeof ScheduleTypeSchema>;
6389
6632
  export type Schedule = z.infer<typeof ScheduleSchema>;
6390
6633
  export type McpServer = z.infer<typeof McpServerSchema>;
6634
+ export type ChatOutput = z.infer<typeof ChatOutputSchema>;
6391
6635
  export type ChatDM = z.infer<typeof ChatDMSchema>;
6392
6636
  export type DiscordPresence = z.infer<typeof DiscordPresenceSchema>;
6393
6637
  export type DiscordChannel = z.infer<typeof DiscordChannelSchema>;