@draht/coding-agent 2026.3.3 → 2026.3.4

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 (139) hide show
  1. package/CHANGELOG.md +120 -0
  2. package/README.md +1 -0
  3. package/dist/cli/args.d.ts.map +1 -1
  4. package/dist/cli/args.js +1 -0
  5. package/dist/cli/args.js.map +1 -1
  6. package/dist/cli.d.ts.map +1 -1
  7. package/dist/cli.js +5 -0
  8. package/dist/cli.js.map +1 -1
  9. package/dist/config.d.ts +0 -7
  10. package/dist/config.d.ts.map +1 -1
  11. package/dist/config.js +0 -12
  12. package/dist/config.js.map +1 -1
  13. package/dist/core/agent-session.d.ts +14 -4
  14. package/dist/core/agent-session.d.ts.map +1 -1
  15. package/dist/core/agent-session.js +167 -49
  16. package/dist/core/agent-session.js.map +1 -1
  17. package/dist/core/auth-storage.d.ts +1 -1
  18. package/dist/core/auth-storage.d.ts.map +1 -1
  19. package/dist/core/auth-storage.js +2 -1
  20. package/dist/core/auth-storage.js.map +1 -1
  21. package/dist/core/builtins/subagent.d.ts +14 -0
  22. package/dist/core/builtins/subagent.d.ts.map +1 -0
  23. package/dist/core/builtins/subagent.js +492 -0
  24. package/dist/core/builtins/subagent.js.map +1 -0
  25. package/dist/core/compaction/compaction.d.ts.map +1 -1
  26. package/dist/core/compaction/compaction.js +4 -1
  27. package/dist/core/compaction/compaction.js.map +1 -1
  28. package/dist/core/export-html/tool-renderer.d.ts.map +1 -1
  29. package/dist/core/export-html/tool-renderer.js +6 -0
  30. package/dist/core/export-html/tool-renderer.js.map +1 -1
  31. package/dist/core/extensions/loader.d.ts.map +1 -1
  32. package/dist/core/extensions/loader.js +19 -8
  33. package/dist/core/extensions/loader.js.map +1 -1
  34. package/dist/core/extensions/runner.d.ts.map +1 -1
  35. package/dist/core/extensions/runner.js +1 -0
  36. package/dist/core/extensions/runner.js.map +1 -1
  37. package/dist/core/extensions/types.d.ts +8 -2
  38. package/dist/core/extensions/types.d.ts.map +1 -1
  39. package/dist/core/extensions/types.js.map +1 -1
  40. package/dist/core/model-registry.d.ts +1 -0
  41. package/dist/core/model-registry.d.ts.map +1 -1
  42. package/dist/core/model-registry.js +9 -6
  43. package/dist/core/model-registry.js.map +1 -1
  44. package/dist/core/model-resolver.d.ts.map +1 -1
  45. package/dist/core/model-resolver.js +35 -5
  46. package/dist/core/model-resolver.js.map +1 -1
  47. package/dist/core/package-manager.d.ts.map +1 -1
  48. package/dist/core/package-manager.js +1 -10
  49. package/dist/core/package-manager.js.map +1 -1
  50. package/dist/core/prompt-templates.js.map +1 -1
  51. package/dist/core/resource-loader.d.ts +2 -0
  52. package/dist/core/resource-loader.d.ts.map +1 -1
  53. package/dist/core/resource-loader.js +5 -1
  54. package/dist/core/resource-loader.js.map +1 -1
  55. package/dist/core/sdk.d.ts +1 -1
  56. package/dist/core/sdk.d.ts.map +1 -1
  57. package/dist/core/sdk.js.map +1 -1
  58. package/dist/core/session-manager.js.map +1 -1
  59. package/dist/core/settings-manager.d.ts +3 -0
  60. package/dist/core/settings-manager.d.ts.map +1 -1
  61. package/dist/core/settings-manager.js +4 -0
  62. package/dist/core/settings-manager.js.map +1 -1
  63. package/dist/core/system-prompt.d.ts +4 -0
  64. package/dist/core/system-prompt.d.ts.map +1 -1
  65. package/dist/core/system-prompt.js +34 -12
  66. package/dist/core/system-prompt.js.map +1 -1
  67. package/dist/core/tools/edit-diff.js.map +1 -1
  68. package/dist/core/tools/path-utils.js.map +1 -1
  69. package/dist/main.d.ts.map +1 -1
  70. package/dist/main.js +5 -5
  71. package/dist/main.js.map +1 -1
  72. package/dist/migrations.js.map +1 -1
  73. package/dist/modes/interactive/components/armin.js.map +1 -1
  74. package/dist/modes/interactive/components/config-selector.js.map +1 -1
  75. package/dist/modes/interactive/components/daxnuts.js.map +1 -1
  76. package/dist/modes/interactive/components/dynamic-border.js.map +1 -1
  77. package/dist/modes/interactive/components/extension-editor.d.ts +5 -2
  78. package/dist/modes/interactive/components/extension-editor.d.ts.map +1 -1
  79. package/dist/modes/interactive/components/extension-editor.js +9 -1
  80. package/dist/modes/interactive/components/extension-editor.js.map +1 -1
  81. package/dist/modes/interactive/components/extension-selector.js.map +1 -1
  82. package/dist/modes/interactive/components/footer.js.map +1 -1
  83. package/dist/modes/interactive/components/login-dialog.d.ts.map +1 -1
  84. package/dist/modes/interactive/components/login-dialog.js +1 -1
  85. package/dist/modes/interactive/components/login-dialog.js.map +1 -1
  86. package/dist/modes/interactive/components/model-selector.d.ts +1 -1
  87. package/dist/modes/interactive/components/model-selector.d.ts.map +1 -1
  88. package/dist/modes/interactive/components/model-selector.js.map +1 -1
  89. package/dist/modes/interactive/components/oauth-selector.d.ts.map +1 -1
  90. package/dist/modes/interactive/components/oauth-selector.js +1 -1
  91. package/dist/modes/interactive/components/oauth-selector.js.map +1 -1
  92. package/dist/modes/interactive/components/scoped-models-selector.js.map +1 -1
  93. package/dist/modes/interactive/components/session-selector.d.ts.map +1 -1
  94. package/dist/modes/interactive/components/session-selector.js +1 -1
  95. package/dist/modes/interactive/components/session-selector.js.map +1 -1
  96. package/dist/modes/interactive/components/settings-selector.js.map +1 -1
  97. package/dist/modes/interactive/components/tool-execution.d.ts +2 -0
  98. package/dist/modes/interactive/components/tool-execution.d.ts.map +1 -1
  99. package/dist/modes/interactive/components/tool-execution.js +28 -3
  100. package/dist/modes/interactive/components/tool-execution.js.map +1 -1
  101. package/dist/modes/interactive/components/tree-selector.js.map +1 -1
  102. package/dist/modes/interactive/components/user-message-selector.js.map +1 -1
  103. package/dist/modes/interactive/components/user-message.d.ts +1 -0
  104. package/dist/modes/interactive/components/user-message.d.ts.map +1 -1
  105. package/dist/modes/interactive/components/user-message.js +11 -0
  106. package/dist/modes/interactive/components/user-message.js.map +1 -1
  107. package/dist/modes/interactive/interactive-mode.d.ts +1 -1
  108. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  109. package/dist/modes/interactive/interactive-mode.js +27 -26
  110. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  111. package/dist/modes/interactive/theme/theme.d.ts.map +1 -1
  112. package/dist/modes/interactive/theme/theme.js +5 -0
  113. package/dist/modes/interactive/theme/theme.js.map +1 -1
  114. package/dist/prompts/commands/fix.md +29 -0
  115. package/dist/prompts/commands/init-project.md +49 -0
  116. package/dist/prompts/commands/next-milestone.md +44 -0
  117. package/dist/prompts/commands/review.md +26 -0
  118. package/docs/custom-provider.md +10 -2
  119. package/docs/extensions.md +20 -1
  120. package/docs/providers.md +3 -1
  121. package/docs/settings.md +1 -0
  122. package/examples/extensions/README.md +1 -0
  123. package/examples/extensions/antigravity-image-gen.ts +3 -1
  124. package/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
  125. package/examples/extensions/custom-provider-anthropic/package.json +1 -1
  126. package/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
  127. package/examples/extensions/custom-provider-qwen-cli/package.json +1 -1
  128. package/examples/extensions/dynamic-tools.ts +74 -0
  129. package/examples/extensions/with-deps/package-lock.json +2 -2
  130. package/examples/extensions/with-deps/package.json +1 -1
  131. package/package.json +8 -7
  132. package/prompts/commands/fix.md +29 -0
  133. package/prompts/commands/init-project.md +49 -0
  134. package/prompts/commands/next-milestone.md +44 -0
  135. package/prompts/commands/review.md +26 -0
  136. package/dist/extensions/gsd-commands.ts +0 -403
  137. package/dist/extensions/subagent.ts +0 -515
  138. package/extensions/gsd-commands.ts +0 -403
  139. package/extensions/subagent.ts +0 -515
@@ -68,7 +68,7 @@ export interface AgentSessionConfig {
68
68
  /** Models to cycle through with Ctrl+P (from --models flag) */
69
69
  scopedModels?: Array<{
70
70
  model: Model<any>;
71
- thinkingLevel: ThinkingLevel;
71
+ thinkingLevel?: ThinkingLevel;
72
72
  }>;
73
73
  /** Resource loader for skills, prompts, themes, context files, system prompt */
74
74
  resourceLoader: ResourceLoader;
@@ -134,6 +134,7 @@ export declare class AgentSession {
134
134
  private _scopedModels;
135
135
  private _unsubscribeAgent?;
136
136
  private _eventListeners;
137
+ private _agentEventQueue;
137
138
  /** Tracks pending steering messages for UI display. Removed when delivered. */
138
139
  private _steeringMessages;
139
140
  /** Tracks pending follow-up messages for UI display. Removed when delivered. */
@@ -142,6 +143,7 @@ export declare class AgentSession {
142
143
  private _pendingNextTurnMessages;
143
144
  private _compactionAbortController;
144
145
  private _autoCompactionAbortController;
146
+ private _overflowRecoveryAttempted;
145
147
  private _branchSummaryAbortController;
146
148
  private _retryAbortController;
147
149
  private _retryAttempt;
@@ -165,6 +167,8 @@ export declare class AgentSession {
165
167
  private _extensionErrorUnsubscriber?;
166
168
  private _modelRegistry;
167
169
  private _toolRegistry;
170
+ private _toolPromptSnippets;
171
+ private _toolPromptGuidelines;
168
172
  private _baseSystemPrompt;
169
173
  constructor(config: AgentSessionConfig);
170
174
  /** Model registry for API key resolution and model discovery */
@@ -174,6 +178,9 @@ export declare class AgentSession {
174
178
  private _lastAssistantMessage;
175
179
  /** Internal handler for agent events - shared by subscribe and reconnect */
176
180
  private _handleAgentEvent;
181
+ private _createRetryPromiseForAgentEnd;
182
+ private _findLastAssistantInMessages;
183
+ private _processAgentEvent;
177
184
  /** Resolve the pending retry promise */
178
185
  private _resolveRetry;
179
186
  /** Extract text content from a message */
@@ -231,7 +238,7 @@ export declare class AgentSession {
231
238
  * Changes take effect on the next agent turn.
232
239
  */
233
240
  setActiveToolsByName(toolNames: string[]): void;
234
- /** Whether auto-compaction is currently running */
241
+ /** Whether compaction or branch summarization is currently running */
235
242
  get isCompacting(): boolean;
236
243
  /** All messages including custom types like BashExecutionMessage */
237
244
  get messages(): AgentMessage[];
@@ -248,15 +255,17 @@ export declare class AgentSession {
248
255
  /** Scoped models for cycling (from --models flag) */
249
256
  get scopedModels(): ReadonlyArray<{
250
257
  model: Model<any>;
251
- thinkingLevel: ThinkingLevel;
258
+ thinkingLevel?: ThinkingLevel;
252
259
  }>;
253
260
  /** Update scoped models for cycling */
254
261
  setScopedModels(scopedModels: Array<{
255
262
  model: Model<any>;
256
- thinkingLevel: ThinkingLevel;
263
+ thinkingLevel?: ThinkingLevel;
257
264
  }>): void;
258
265
  /** File-based prompt templates */
259
266
  get promptTemplates(): ReadonlyArray<PromptTemplate>;
267
+ private _normalizePromptSnippet;
268
+ private _normalizePromptGuidelines;
260
269
  private _rebuildSystemPrompt;
261
270
  /**
262
271
  * Send a prompt to the agent.
@@ -435,6 +444,7 @@ export declare class AgentSession {
435
444
  private getExtensionSourceLabel;
436
445
  private _applyExtensionBindings;
437
446
  private _bindExtensionCore;
447
+ private _refreshToolRegistry;
438
448
  private _buildRuntime;
439
449
  reload(): Promise<void>;
440
450
  /**