@zcy2nn/agent-forge 1.1.3 → 1.1.5

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 (58) hide show
  1. package/README.md +188 -247
  2. package/agent-forge.schema.json +2 -265
  3. package/dist/agents/orchestrator.d.ts +1 -1
  4. package/dist/cli/index.js +90 -259
  5. package/dist/cli/providers.d.ts +0 -44
  6. package/dist/cli/types.d.ts +0 -2
  7. package/dist/config/constants.d.ts +3 -8
  8. package/dist/config/index.d.ts +0 -1
  9. package/dist/config/loader.d.ts +1 -1
  10. package/dist/config/schema.d.ts +1 -184
  11. package/dist/hooks/index.d.ts +0 -6
  12. package/dist/hooks/json-error-recovery/hook.d.ts +1 -1
  13. package/dist/hooks/todo-continuation/index.d.ts +2 -1
  14. package/dist/index.d.ts +1 -1
  15. package/dist/index.js +7875 -31853
  16. package/dist/tools/index.d.ts +0 -3
  17. package/dist/tui.js +5 -61
  18. package/dist/utils/index.d.ts +0 -2
  19. package/package.json +95 -104
  20. package/src/skills/brainstorming/SKILL.md +185 -186
  21. package/src/skills/brainstorming/scripts/frame-template.html +214 -214
  22. package/src/skills/brainstorming/scripts/server.cjs +354 -354
  23. package/src/skills/brainstorming/spec-document-reviewer-prompt.md +1 -1
  24. package/src/skills/requesting-code-review/SKILL.md +1 -1
  25. package/src/skills/subagent-driven-development/SKILL.md +1 -1
  26. package/src/skills/systematic-debugging/SKILL.md +318 -318
  27. package/src/skills/test-driven-development/SKILL.md +392 -392
  28. package/src/skills/verification-before-completion/SKILL.md +153 -153
  29. package/src/skills/writing-plans/SKILL.md +2 -2
  30. package/src/skills/writing-skills/graphviz-conventions.dot +171 -171
  31. package/dist/agents/council.d.ts +0 -27
  32. package/dist/agents/councillor.d.ts +0 -2
  33. package/dist/agents/designer.d.ts +0 -2
  34. package/dist/agents/explorer.d.ts +0 -2
  35. package/dist/agents/fixer.d.ts +0 -2
  36. package/dist/agents/implementer.d.ts +0 -2
  37. package/dist/agents/librarian.d.ts +0 -2
  38. package/dist/agents/observer.d.ts +0 -2
  39. package/dist/agents/oracle.d.ts +0 -2
  40. package/dist/agents/reviewer.d.ts +0 -2
  41. package/dist/cli/migration.d.ts +0 -46
  42. package/dist/config/council-schema.d.ts +0 -127
  43. package/dist/council/council-manager.d.ts +0 -49
  44. package/dist/council/index.d.ts +0 -1
  45. package/dist/hooks/phase-reminder/index.d.ts +0 -26
  46. package/dist/hooks/post-file-tool-nudge/index.d.ts +0 -19
  47. package/dist/skills/systematic-debugging/condition-based-waiting-example.d.ts +0 -51
  48. package/dist/tools/council.d.ts +0 -10
  49. package/src/skills/codemap/README.md +0 -59
  50. package/src/skills/codemap/SKILL.md +0 -163
  51. package/src/skills/codemap/codemap.md +0 -36
  52. package/src/skills/codemap/scripts/codemap.mjs +0 -483
  53. package/src/skills/codemap/scripts/codemap.test.ts +0 -129
  54. package/src/skills/codemap.md +0 -40
  55. package/src/skills/simplify/README.md +0 -19
  56. package/src/skills/simplify/SKILL.md +0 -138
  57. package/src/skills/simplify/codemap.md +0 -36
  58. package/src/skills/using-git-worktrees/SKILL.md +0 -226
@@ -1,8 +1,8 @@
1
- export declare const SUBAGENT_NAMES: readonly ["researcher", "reviewer", "implementer", "council", "councillor"];
1
+ export declare const SUBAGENT_NAMES: readonly ["researcher"];
2
2
  export declare const ORCHESTRATOR_NAME: "orchestrator";
3
- export declare const ALL_AGENT_NAMES: readonly ["orchestrator", "researcher", "reviewer", "implementer", "council", "councillor"];
3
+ export declare const ALL_AGENT_NAMES: readonly ["orchestrator", "researcher"];
4
4
  export type AgentName = (typeof ALL_AGENT_NAMES)[number];
5
- export declare const ORCHESTRATABLE_AGENTS: readonly ["researcher", "reviewer", "implementer", "council"];
5
+ export declare const ORCHESTRATABLE_AGENTS: readonly ["researcher"];
6
6
  /** Agents that cannot be disabled even if listed in disabled_agents config. */
7
7
  export declare const PROTECTED_AGENTS: Set<string>;
8
8
  /**
@@ -14,14 +14,9 @@ export declare const SUBAGENT_DELEGATION_RULES: Record<AgentName, readonly strin
14
14
  export declare const DEFAULT_MODELS: Record<AgentName, string | undefined>;
15
15
  export declare const POLL_INTERVAL_MS = 500;
16
16
  export declare const POLL_INTERVAL_SLOW_MS = 1000;
17
- export declare const POLL_INTERVAL_BACKGROUND_MS = 2000;
18
17
  export declare const DEFAULT_TIMEOUT_MS: number;
19
18
  export declare const MAX_POLL_TIME_MS: number;
20
- export declare const FALLBACK_FAILOVER_TIMEOUT_MS = 15000;
21
19
  export declare const DEFAULT_MAX_SUBAGENT_DEPTH = 3;
22
- export declare const PHASE_REMINDER_TEXT = "!IMPORTANT! Recall the workflow rules:\nUnderstand \u2192 choose the best parallelized path based on your capabilities and agents delegation rules \u2192 recall session reuse rules \u2192 execute \u2192 verify.\nIf delegating, launch the specialist in the same turn you mention it !END!";
23
- export declare const TMUX_SPAWN_DELAY_MS = 500;
24
- export declare const COUNCILLOR_STAGGER_MS = 250;
25
20
  export declare const STABLE_POLLS_THRESHOLD = 3;
26
21
  /** Agents that are disabled by default. Users must explicitly enable them
27
22
  * by removing from disabled_agents and configuring an appropriate model. */
@@ -1,5 +1,4 @@
1
1
  export * from './constants';
2
- export * from './council-schema';
3
2
  export { deepMerge, loadAgentPrompt, loadPluginConfig } from './loader';
4
3
  export * from './schema';
5
4
  export { getAgentOverride, getCustomAgentNames } from './utils';
@@ -34,7 +34,7 @@ export declare function deepMerge<T extends Record<string, unknown>>(base?: T, o
34
34
  * 2. Project config: <directory>/.opencode/agent-forge.jsonc or .json
35
35
  *
36
36
  * JSONC format is preferred over JSON (allows comments and trailing commas).
37
- * Project config takes precedence over user config. Nested objects (agents, tmux) are
37
+ * Project config takes precedence over user config. Nested objects (agents) are
38
38
  * deep-merged, while top-level arrays are replaced entirely by project config.
39
39
  *
40
40
  * @param directory - Project directory to search for .opencode config
@@ -1,6 +1,5 @@
1
1
  import { z } from 'zod';
2
- declare const FALLBACK_AGENT_NAMES: readonly ["orchestrator", "researcher", "reviewer", "implementer"];
3
- declare const MANUAL_AGENT_NAMES: readonly ["orchestrator", "researcher", "reviewer", "implementer"];
2
+ declare const MANUAL_AGENT_NAMES: readonly ["orchestrator", "researcher"];
4
3
  export declare const ProviderModelIdSchema: z.ZodString;
5
4
  export declare const ManualAgentPlanSchema: z.ZodObject<{
6
5
  primary: z.ZodString;
@@ -21,23 +20,10 @@ export declare const ManualPlanSchema: z.ZodObject<{
21
20
  fallback2: z.ZodString;
22
21
  fallback3: z.ZodString;
23
22
  }, z.core.$strip>;
24
- reviewer: z.ZodObject<{
25
- primary: z.ZodString;
26
- fallback1: z.ZodString;
27
- fallback2: z.ZodString;
28
- fallback3: z.ZodString;
29
- }, z.core.$strip>;
30
- implementer: z.ZodObject<{
31
- primary: z.ZodString;
32
- fallback1: z.ZodString;
33
- fallback2: z.ZodString;
34
- fallback3: z.ZodString;
35
- }, z.core.$strip>;
36
23
  }, z.core.$strict>;
37
24
  export type ManualAgentName = (typeof MANUAL_AGENT_NAMES)[number];
38
25
  export type ManualAgentPlan = z.infer<typeof ManualAgentPlanSchema>;
39
26
  export type ManualPlan = z.infer<typeof ManualPlanSchema>;
40
- export type FallbackAgentName = (typeof FALLBACK_AGENT_NAMES)[number];
41
27
  export declare const AgentOverrideConfigSchema: z.ZodObject<{
42
28
  model: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
43
29
  id: z.ZodString;
@@ -52,58 +38,6 @@ export declare const AgentOverrideConfigSchema: z.ZodObject<{
52
38
  options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
53
39
  displayName: z.ZodOptional<z.ZodString>;
54
40
  }, z.core.$strict>;
55
- export declare const MultiplexerTypeSchema: z.ZodEnum<{
56
- auto: "auto";
57
- tmux: "tmux";
58
- zellij: "zellij";
59
- none: "none";
60
- }>;
61
- export type MultiplexerType = z.infer<typeof MultiplexerTypeSchema>;
62
- export declare const MultiplexerLayoutSchema: z.ZodEnum<{
63
- "main-horizontal": "main-horizontal";
64
- "main-vertical": "main-vertical";
65
- tiled: "tiled";
66
- "even-horizontal": "even-horizontal";
67
- "even-vertical": "even-vertical";
68
- }>;
69
- export type MultiplexerLayout = z.infer<typeof MultiplexerLayoutSchema>;
70
- export declare const TmuxLayoutSchema: z.ZodEnum<{
71
- "main-horizontal": "main-horizontal";
72
- "main-vertical": "main-vertical";
73
- tiled: "tiled";
74
- "even-horizontal": "even-horizontal";
75
- "even-vertical": "even-vertical";
76
- }>;
77
- export type TmuxLayout = MultiplexerLayout;
78
- export declare const MultiplexerConfigSchema: z.ZodObject<{
79
- type: z.ZodDefault<z.ZodEnum<{
80
- auto: "auto";
81
- tmux: "tmux";
82
- zellij: "zellij";
83
- none: "none";
84
- }>>;
85
- layout: z.ZodDefault<z.ZodEnum<{
86
- "main-horizontal": "main-horizontal";
87
- "main-vertical": "main-vertical";
88
- tiled: "tiled";
89
- "even-horizontal": "even-horizontal";
90
- "even-vertical": "even-vertical";
91
- }>>;
92
- main_pane_size: z.ZodDefault<z.ZodNumber>;
93
- }, z.core.$strip>;
94
- export type MultiplexerConfig = z.infer<typeof MultiplexerConfigSchema>;
95
- export declare const TmuxConfigSchema: z.ZodObject<{
96
- enabled: z.ZodDefault<z.ZodBoolean>;
97
- layout: z.ZodDefault<z.ZodEnum<{
98
- "main-horizontal": "main-horizontal";
99
- "main-vertical": "main-vertical";
100
- tiled: "tiled";
101
- "even-horizontal": "even-horizontal";
102
- "even-vertical": "even-vertical";
103
- }>>;
104
- main_pane_size: z.ZodDefault<z.ZodNumber>;
105
- }, z.core.$strip>;
106
- export type TmuxConfig = z.infer<typeof TmuxConfigSchema>;
107
41
  export type AgentOverrideConfig = z.infer<typeof AgentOverrideConfigSchema>;
108
42
  /** Normalized model entry with optional per-model variant. */
109
43
  export type ModelEntry = {
@@ -146,12 +80,6 @@ export declare const InterviewConfigSchema: z.ZodObject<{
146
80
  dashboard: z.ZodDefault<z.ZodBoolean>;
147
81
  }, z.core.$strip>;
148
82
  export type InterviewConfig = z.infer<typeof InterviewConfigSchema>;
149
- export declare const SessionManagerConfigSchema: z.ZodObject<{
150
- maxSessionsPerAgent: z.ZodDefault<z.ZodNumber>;
151
- readContextMinLines: z.ZodDefault<z.ZodNumber>;
152
- readContextMaxFiles: z.ZodDefault<z.ZodNumber>;
153
- }, z.core.$strip>;
154
- export type SessionManagerConfig = z.infer<typeof SessionManagerConfigSchema>;
155
83
  export declare const DivoomConfigSchema: z.ZodObject<{
156
84
  enabled: z.ZodDefault<z.ZodBoolean>;
157
85
  python: z.ZodDefault<z.ZodString>;
@@ -171,19 +99,6 @@ export declare const TodoContinuationConfigSchema: z.ZodObject<{
171
99
  autoEnableThreshold: z.ZodDefault<z.ZodNumber>;
172
100
  }, z.core.$strip>;
173
101
  export type TodoContinuationConfig = z.infer<typeof TodoContinuationConfigSchema>;
174
- export declare const FailoverConfigSchema: z.ZodObject<{
175
- enabled: z.ZodDefault<z.ZodBoolean>;
176
- timeoutMs: z.ZodDefault<z.ZodNumber>;
177
- retryDelayMs: z.ZodDefault<z.ZodNumber>;
178
- chains: z.ZodDefault<z.ZodObject<{
179
- orchestrator: z.ZodOptional<z.ZodArray<z.ZodString>>;
180
- researcher: z.ZodOptional<z.ZodArray<z.ZodString>>;
181
- reviewer: z.ZodOptional<z.ZodArray<z.ZodString>>;
182
- implementer: z.ZodOptional<z.ZodArray<z.ZodString>>;
183
- }, z.core.$catchall<z.ZodArray<z.ZodString>>>>;
184
- retry_on_empty: z.ZodDefault<z.ZodBoolean>;
185
- }, z.core.$strip>;
186
- export type FailoverConfig = z.infer<typeof FailoverConfigSchema>;
187
102
  export declare const PluginConfigSchema: z.ZodObject<{
188
103
  preset: z.ZodOptional<z.ZodString>;
189
104
  setDefaultAgent: z.ZodOptional<z.ZodBoolean>;
@@ -207,18 +122,6 @@ export declare const PluginConfigSchema: z.ZodObject<{
207
122
  fallback2: z.ZodString;
208
123
  fallback3: z.ZodString;
209
124
  }, z.core.$strip>;
210
- reviewer: z.ZodObject<{
211
- primary: z.ZodString;
212
- fallback1: z.ZodString;
213
- fallback2: z.ZodString;
214
- fallback3: z.ZodString;
215
- }, z.core.$strip>;
216
- implementer: z.ZodObject<{
217
- primary: z.ZodString;
218
- fallback1: z.ZodString;
219
- fallback2: z.ZodString;
220
- fallback3: z.ZodString;
221
- }, z.core.$strip>;
222
125
  }, z.core.$strict>>;
223
126
  presets: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodObject<{
224
127
  model: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
@@ -250,33 +153,6 @@ export declare const PluginConfigSchema: z.ZodObject<{
250
153
  }, z.core.$strict>>>;
251
154
  disabled_agents: z.ZodOptional<z.ZodArray<z.ZodString>>;
252
155
  disabled_mcps: z.ZodOptional<z.ZodArray<z.ZodString>>;
253
- multiplexer: z.ZodOptional<z.ZodObject<{
254
- type: z.ZodDefault<z.ZodEnum<{
255
- auto: "auto";
256
- tmux: "tmux";
257
- zellij: "zellij";
258
- none: "none";
259
- }>>;
260
- layout: z.ZodDefault<z.ZodEnum<{
261
- "main-horizontal": "main-horizontal";
262
- "main-vertical": "main-vertical";
263
- tiled: "tiled";
264
- "even-horizontal": "even-horizontal";
265
- "even-vertical": "even-vertical";
266
- }>>;
267
- main_pane_size: z.ZodDefault<z.ZodNumber>;
268
- }, z.core.$strip>>;
269
- tmux: z.ZodOptional<z.ZodObject<{
270
- enabled: z.ZodDefault<z.ZodBoolean>;
271
- layout: z.ZodDefault<z.ZodEnum<{
272
- "main-horizontal": "main-horizontal";
273
- "main-vertical": "main-vertical";
274
- tiled: "tiled";
275
- "even-horizontal": "even-horizontal";
276
- "even-vertical": "even-vertical";
277
- }>>;
278
- main_pane_size: z.ZodDefault<z.ZodNumber>;
279
- }, z.core.$strip>>;
280
156
  websearch: z.ZodOptional<z.ZodObject<{
281
157
  provider: z.ZodDefault<z.ZodEnum<{
282
158
  exa: "exa";
@@ -290,11 +166,6 @@ export declare const PluginConfigSchema: z.ZodObject<{
290
166
  port: z.ZodDefault<z.ZodNumber>;
291
167
  dashboard: z.ZodDefault<z.ZodBoolean>;
292
168
  }, z.core.$strip>>;
293
- sessionManager: z.ZodOptional<z.ZodObject<{
294
- maxSessionsPerAgent: z.ZodDefault<z.ZodNumber>;
295
- readContextMinLines: z.ZodDefault<z.ZodNumber>;
296
- readContextMaxFiles: z.ZodDefault<z.ZodNumber>;
297
- }, z.core.$strip>>;
298
169
  divoom: z.ZodOptional<z.ZodObject<{
299
170
  enabled: z.ZodDefault<z.ZodBoolean>;
300
171
  python: z.ZodDefault<z.ZodString>;
@@ -312,60 +183,6 @@ export declare const PluginConfigSchema: z.ZodObject<{
312
183
  autoEnable: z.ZodDefault<z.ZodBoolean>;
313
184
  autoEnableThreshold: z.ZodDefault<z.ZodNumber>;
314
185
  }, z.core.$strip>>;
315
- fallback: z.ZodOptional<z.ZodObject<{
316
- enabled: z.ZodDefault<z.ZodBoolean>;
317
- timeoutMs: z.ZodDefault<z.ZodNumber>;
318
- retryDelayMs: z.ZodDefault<z.ZodNumber>;
319
- chains: z.ZodDefault<z.ZodObject<{
320
- orchestrator: z.ZodOptional<z.ZodArray<z.ZodString>>;
321
- researcher: z.ZodOptional<z.ZodArray<z.ZodString>>;
322
- reviewer: z.ZodOptional<z.ZodArray<z.ZodString>>;
323
- implementer: z.ZodOptional<z.ZodArray<z.ZodString>>;
324
- }, z.core.$catchall<z.ZodArray<z.ZodString>>>>;
325
- retry_on_empty: z.ZodDefault<z.ZodBoolean>;
326
- }, z.core.$strip>>;
327
- council: z.ZodOptional<z.ZodPipe<z.ZodObject<{
328
- presets: z.ZodRecord<z.ZodString, z.ZodPipe<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnknown>>, z.ZodTransform<Record<string, {
329
- model: string;
330
- variant?: string | undefined;
331
- prompt?: string | undefined;
332
- }>, Record<string, Record<string, unknown>>>>>;
333
- timeout: z.ZodDefault<z.ZodNumber>;
334
- default_preset: z.ZodDefault<z.ZodString>;
335
- councillor_execution_mode: z.ZodDefault<z.ZodEnum<{
336
- parallel: "parallel";
337
- serial: "serial";
338
- }>>;
339
- councillor_retries: z.ZodDefault<z.ZodNumber>;
340
- master: z.ZodOptional<z.ZodUnknown>;
341
- master_timeout: z.ZodOptional<z.ZodUnknown>;
342
- master_fallback: z.ZodOptional<z.ZodUnknown>;
343
- }, z.core.$strip>, z.ZodTransform<{
344
- presets: Record<string, Record<string, {
345
- model: string;
346
- variant?: string | undefined;
347
- prompt?: string | undefined;
348
- }>>;
349
- timeout: number;
350
- default_preset: string;
351
- councillor_execution_mode: "parallel" | "serial";
352
- councillor_retries: number;
353
- _deprecated: string[] | undefined;
354
- _legacyMasterModel: string | undefined;
355
- }, {
356
- presets: Record<string, Record<string, {
357
- model: string;
358
- variant?: string | undefined;
359
- prompt?: string | undefined;
360
- }>>;
361
- timeout: number;
362
- default_preset: string;
363
- councillor_execution_mode: "parallel" | "serial";
364
- councillor_retries: number;
365
- master?: unknown;
366
- master_timeout?: unknown;
367
- master_fallback?: unknown;
368
- }>>>;
369
186
  }, z.core.$strip>;
370
187
  export type PluginConfig = z.infer<typeof PluginConfigSchema>;
371
188
  export type { AgentName } from './constants';
@@ -1,14 +1,8 @@
1
1
  export { createApplyPatchHook } from './apply-patch';
2
2
  export type { AutoUpdateCheckerOptions } from './auto-update-checker';
3
3
  export { createAutoUpdateCheckerHook } from './auto-update-checker';
4
- export { createChatHeadersHook } from './chat-headers';
5
- export { createDelegateTaskRetryHook } from './delegate-task-retry';
6
4
  export { createFilterAvailableSkillsHook } from './filter-available-skills';
7
- export { ForegroundFallbackManager, isRateLimitError, } from './foreground-fallback';
8
5
  export { processImageAttachments } from './image-hook';
9
6
  export { createJsonErrorRecoveryHook } from './json-error-recovery';
10
- export { createPhaseReminderHook } from './phase-reminder';
11
- export { createPostFileToolNudgeHook } from './post-file-tool-nudge';
12
7
  export { createSessionBootstrapHook } from './session-bootstrap';
13
- export { createTaskSessionManagerHook } from './task-session-manager';
14
8
  export { createTodoContinuationHook } from './todo-continuation';
@@ -1,5 +1,5 @@
1
1
  import type { PluginInput } from '@opencode-ai/plugin';
2
- export declare const JSON_ERROR_TOOL_EXCLUDE_LIST: readonly ["bash", "read", "glob", "webfetch", "grep_app_searchgithub", "websearch_web_search_exa"];
2
+ export declare const JSON_ERROR_TOOL_EXCLUDE_LIST: readonly ["bash", "read", "glob", "grep_app_searchgithub", "websearch_web_search_exa"];
3
3
  export declare const JSON_ERROR_PATTERNS: readonly [RegExp, RegExp, RegExp, RegExp, RegExp, RegExp, RegExp, RegExp];
4
4
  export declare const JSON_ERROR_REMINDER = "\n[JSON PARSE ERROR - IMMEDIATE ACTION REQUIRED]\n\nYou sent invalid JSON arguments. The system could not parse your tool call.\nSTOP and do this NOW:\n\n1. LOOK at the error message above to see what was expected vs what you sent.\n2. CORRECT your JSON syntax (missing braces, unescaped quotes, trailing commas, etc).\n3. RETRY the tool call with valid JSON.\n\nDO NOT repeat the exact same invalid call.\n";
5
5
  interface ToolExecuteAfterInput {
@@ -1,4 +1,5 @@
1
1
  import type { PluginInput } from '@opencode-ai/plugin';
2
+ import { type ToolDefinition } from '@opencode-ai/plugin/tool';
2
3
  interface MessagePart {
3
4
  type?: string;
4
5
  text?: string;
@@ -19,7 +20,7 @@ export declare function createTodoContinuationHook(ctx: PluginInput, config?: {
19
20
  autoEnable?: boolean;
20
21
  autoEnableThreshold?: number;
21
22
  }): {
22
- tool: Record<string, unknown>;
23
+ tool: Record<string, ToolDefinition>;
23
24
  handleToolExecuteAfter: (input: {
24
25
  tool: string;
25
26
  sessionID?: string;
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import type { Plugin } from '@opencode-ai/plugin';
2
2
  declare const OhMyOpenCodeLite: Plugin;
3
3
  export default OhMyOpenCodeLite;
4
- export type { AgentName, AgentOverrideConfig, McpName, MultiplexerConfig, MultiplexerLayout, MultiplexerType, PluginConfig, TmuxConfig, TmuxLayout, } from './config';
4
+ export type { AgentName, AgentOverrideConfig, McpName, PluginConfig, } from './config';
5
5
  export type { RemoteMcpConfig } from './mcp';