attocode 0.1.0 → 0.1.2

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 (54) hide show
  1. package/CHANGELOG.md +32 -1
  2. package/README.md +14 -10
  3. package/dist/src/agent.d.ts +2 -0
  4. package/dist/src/agent.d.ts.map +1 -1
  5. package/dist/src/agent.js +265 -7
  6. package/dist/src/agent.js.map +1 -1
  7. package/dist/src/defaults.d.ts +9 -1
  8. package/dist/src/defaults.d.ts.map +1 -1
  9. package/dist/src/defaults.js +22 -0
  10. package/dist/src/defaults.js.map +1 -1
  11. package/dist/src/integrations/index.d.ts +6 -0
  12. package/dist/src/integrations/index.d.ts.map +1 -1
  13. package/dist/src/integrations/index.js +12 -0
  14. package/dist/src/integrations/index.js.map +1 -1
  15. package/dist/src/integrations/interactive-planning.d.ts +322 -0
  16. package/dist/src/integrations/interactive-planning.d.ts.map +1 -0
  17. package/dist/src/integrations/interactive-planning.js +655 -0
  18. package/dist/src/integrations/interactive-planning.js.map +1 -0
  19. package/dist/src/integrations/learning-store.d.ts +291 -0
  20. package/dist/src/integrations/learning-store.d.ts.map +1 -0
  21. package/dist/src/integrations/learning-store.js +640 -0
  22. package/dist/src/integrations/learning-store.js.map +1 -0
  23. package/dist/src/integrations/pending-plan.d.ts.map +1 -1
  24. package/dist/src/integrations/pending-plan.js +69 -10
  25. package/dist/src/integrations/pending-plan.js.map +1 -1
  26. package/dist/src/providers/circuit-breaker.d.ts +180 -0
  27. package/dist/src/providers/circuit-breaker.d.ts.map +1 -0
  28. package/dist/src/providers/circuit-breaker.js +349 -0
  29. package/dist/src/providers/circuit-breaker.js.map +1 -0
  30. package/dist/src/providers/fallback-chain.d.ts +194 -0
  31. package/dist/src/providers/fallback-chain.d.ts.map +1 -0
  32. package/dist/src/providers/fallback-chain.js +363 -0
  33. package/dist/src/providers/fallback-chain.js.map +1 -0
  34. package/dist/src/providers/llm-resilience.d.ts +126 -0
  35. package/dist/src/providers/llm-resilience.d.ts.map +1 -0
  36. package/dist/src/providers/llm-resilience.js +261 -0
  37. package/dist/src/providers/llm-resilience.js.map +1 -0
  38. package/dist/src/providers/resilient-provider.d.ts +124 -0
  39. package/dist/src/providers/resilient-provider.d.ts.map +1 -0
  40. package/dist/src/providers/resilient-provider.js +242 -0
  41. package/dist/src/providers/resilient-provider.js.map +1 -0
  42. package/dist/src/tricks/recursive-context.d.ts +296 -0
  43. package/dist/src/tricks/recursive-context.d.ts.map +1 -0
  44. package/dist/src/tricks/recursive-context.js +518 -0
  45. package/dist/src/tricks/recursive-context.js.map +1 -0
  46. package/dist/src/tui/app.d.ts.map +1 -1
  47. package/dist/src/tui/app.js +97 -17
  48. package/dist/src/tui/app.js.map +1 -1
  49. package/dist/src/tui/components/ApprovalDialog.d.ts.map +1 -1
  50. package/dist/src/tui/components/ApprovalDialog.js +1 -1
  51. package/dist/src/tui/components/ApprovalDialog.js.map +1 -1
  52. package/dist/src/types.d.ts +61 -0
  53. package/dist/src/types.d.ts.map +1 -1
  54. package/package.json +1 -1
@@ -70,4 +70,16 @@ export { ResultSynthesizer, createResultSynthesizer, createSynthesisPrompt, } fr
70
70
  export { PendingPlanManager, createPendingPlanManager, formatPlanStatus, } from './pending-plan.js';
71
71
  // Persistence utilities (debug logging, checkpoint management)
72
72
  export { PersistenceDebugger, persistenceDebug, saveCheckpointToStore, loadSessionState, } from './persistence.js';
73
+ // Interactive Planning (conversational + editable planning)
74
+ export { InteractivePlanner, createInteractivePlanner, formatPlan, formatStep, } from './interactive-planning.js';
75
+ // Learning Store (persistent cross-session learning)
76
+ export { LearningStore, createLearningStore, createInMemoryLearningStore, formatLearningsContext, formatLearningStats, } from './learning-store.js';
77
+ // Recursive Context (RLM) - from tricks
78
+ export { RecursiveContextManager, createRecursiveContext, createMinimalRecursiveContext, createFileSystemSource, createConversationSource, formatRecursiveResult, formatRecursiveStats, } from '../tricks/recursive-context.js';
79
+ // Provider Resilience (circuit breaker + fallback chain)
80
+ export { getResilientProvider, createResilientFallbackChain, createAutoFallbackChain, getCircuitBreaker, getAllCircuitBreakerMetrics, resetAllCircuitBreakers, formatResilienceStatus, hasResilientProviderSupport, } from '../providers/resilient-provider.js';
81
+ // Circuit Breaker (for direct use)
82
+ export { CircuitBreaker, createCircuitBreaker, createStrictCircuitBreaker, createLenientCircuitBreaker, formatCircuitBreakerMetrics, isCircuitBreakerError, } from '../providers/circuit-breaker.js';
83
+ // Fallback Chain (for direct use)
84
+ export { FallbackChain, createFallbackChain, createFallbackChainFromRegistry, formatHealthStatus, isChainExhaustedError, } from '../providers/fallback-chain.js';
73
85
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/integrations/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,oCAAoC;AACpC,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAyB,MAAM,eAAe,CAAC;AAC9F,OAAO,EACL,MAAM,EACN,gBAAgB,EAChB,MAAM,EACN,oBAAoB,EACpB,0BAA0B,GAC3B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,mBAAmB,GACpB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEpE,gCAAgC;AAChC,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,sBAAsB,EACtB,oBAAoB,GAMrB,MAAM,YAAY,CAAC;AAEpB,uDAAuD;AACvD,OAAO,EACL,yBAAyB,EACzB,sBAAsB,EACtB,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,gBAAgB,GAOjB,MAAM,gBAAgB,CAAC;AAExB,4BAA4B;AAC5B,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,GAOhB,MAAM,qBAAqB,CAAC;AAE7B,4CAA4C;AAC5C,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,UAAU,EACV,aAAa,EACb,cAAc,EACd,eAAe,GAQhB,MAAM,kBAAkB,CAAC;AAE1B,iCAAiC;AACjC,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,oBAAoB,GAOrB,MAAM,YAAY,CAAC;AAEpB,sCAAsC;AACtC,OAAO,EACL,sBAAsB,EACtB,4BAA4B,EAC5B,aAAa,EACb,eAAe,EACf,iBAAiB,GASlB,MAAM,uBAAuB,CAAC;AAE/B,qCAAqC;AACrC,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,iBAAiB,EACjB,YAAY,EACZ,gBAAgB,GAOjB,MAAM,qBAAqB,CAAC;AAE7B,sBAAsB;AACtB,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,GAMlB,MAAM,oBAAoB,CAAC;AAE5B,wDAAwD;AACxD,OAAO,EACL,WAAW,EACX,iBAAiB,GAUlB,MAAM,mBAAmB,CAAC;AAE3B,0CAA0C;AAC1C,OAAO,EACL,UAAU,EACV,eAAe,IAAI,qBAAqB,EACxC,kBAAkB,IAAI,wBAAwB,EAC9C,cAAc,IAAI,oBAAoB,EACtC,cAAc,GAIf,MAAM,0BAA0B,CAAC;AAElC,sBAAsB;AACtB,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,oBAAoB,GAMrB,MAAM,gBAAgB,CAAC;AAExB,qBAAqB;AACrB,OAAO,EACL,SAAS,EACT,eAAe,EACf,sBAAsB,EACtB,eAAe,EACf,mBAAmB,EACnB,sBAAsB,GAOvB,MAAM,iBAAiB,CAAC;AAEzB,aAAa;AACb,OAAO,EACL,SAAS,EACT,eAAe,EACf,gBAAgB,EAChB,kBAAkB,GASnB,MAAM,iBAAiB,CAAC;AAEzB,2CAA2C;AAC3C,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EACrB,yBAAyB,EACzB,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,GAGnB,MAAM,sBAAsB,CAAC;AAE9B,sBAAsB;AACtB,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,6BAA6B,EAC7B,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,KAAK,EACL,IAAI,EACJ,aAAa,EACb,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,GAMlB,MAAM,mBAAmB,CAAC;AAE3B,sBAAsB;AACtB,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,2BAA2B,EAC3B,4BAA4B,EAC5B,sBAAsB,EACtB,oBAAoB,EACpB,kBAAkB,GAOnB,MAAM,gBAAgB,CAAC;AAExB,6BAA6B;AAC7B,OAAO,EACL,yBAAyB,EACzB,wBAAwB,EACxB,mBAAmB,EACnB,qBAAqB,EACrB,wBAAwB,EACxB,uBAAuB,GAOxB,MAAM,0BAA0B,CAAC;AAElC,iCAAiC;AACjC,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,wBAAwB,GAYzB,MAAM,UAAU,CAAC;AAElB,iBAAiB;AACjB,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,GAQjB,MAAM,qBAAqB,CAAC;AAE7B,qFAAqF;AACrF,OAAO,EACL,cAAc,IAAI,gBAAgB,EAClC,oBAAoB,IAAI,sBAAsB,EAC9C,aAAa,EACb,WAAW,EACX,eAAe,EACf,aAAa,EACb,YAAY,GAQb,MAAM,oBAAoB,CAAC;AAE5B,kBAAkB;AAClB,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,eAAe,EACf,qBAAqB,EACrB,0BAA0B,GAM3B,MAAM,aAAa,CAAC;AAErB,sBAAsB;AACtB,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,wBAAwB,GAKzB,MAAM,aAAa,CAAC;AAErB,uBAAuB;AACvB,OAAO,EACL,eAAe,EACf,cAAc,EACd,sBAAsB,EACtB,kBAAkB,EAClB,gBAAgB,GAMjB,MAAM,gBAAgB,CAAC;AAExB,4DAA4D;AAC5D,OAAO,EACL,yBAAyB,EACzB,wBAAwB,EACxB,+BAA+B,EAC/B,4BAA4B,EAC5B,eAAe,EACf,yBAAyB,EACzB,0BAA0B,EAC1B,eAAe,GAMhB,MAAM,0BAA0B,CAAC;AAElC,gDAAgD;AAChD,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,sBAAsB,GAWvB,MAAM,uBAAuB,CAAC;AAE/B,4CAA4C;AAC5C,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,uBAAuB,EACvB,eAAe,GAWhB,MAAM,wBAAwB,CAAC;AAEhC,iDAAiD;AACjD,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,yBAAyB,EACzB,0BAA0B,GAc3B,MAAM,uBAAuB,CAAC;AAE/B,iDAAiD;AACjD,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,qBAAqB,GAiBtB,MAAM,yBAAyB,CAAC;AAEjC,8CAA8C;AAC9C,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,gBAAgB,GAOjB,MAAM,mBAAmB,CAAC;AAE3B,+DAA+D;AAC/D,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,EACrB,gBAAgB,GAGjB,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/integrations/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,322 @@
1
+ /**
2
+ * Interactive Planning Integration
3
+ *
4
+ * Combines conversational refinement with structural editing for plans.
5
+ * Supports a Draft → Discuss → Execute → Checkpoint cycle.
6
+ *
7
+ * Features:
8
+ * - Natural language plan editing ("add X after step 3", "skip step 2")
9
+ * - Decision points where agent pauses for user input
10
+ * - Automatic checkpoints before each step
11
+ * - Rollback capability to any checkpoint
12
+ *
13
+ * @example
14
+ * ```typescript
15
+ * const planner = createInteractivePlanner({
16
+ * autoCheckpoint: true,
17
+ * confirmBeforeExecute: true,
18
+ * });
19
+ *
20
+ * // Create and discuss a plan
21
+ * const plan = await planner.draft('Add authentication to the API', llmCall);
22
+ *
23
+ * // User refines via conversation
24
+ * planner.edit('add rate limiting after step 3');
25
+ * planner.edit('skip the testing step for now');
26
+ *
27
+ * // Execute with checkpoints
28
+ * for await (const step of planner.execute()) {
29
+ * console.log(`Executing: ${step.description}`);
30
+ * await executeStep(step);
31
+ * await planner.checkpoint();
32
+ * }
33
+ * ```
34
+ */
35
+ /**
36
+ * Status of the interactive plan.
37
+ */
38
+ export type PlanStatus = 'draft' | 'discussing' | 'approved' | 'executing' | 'paused' | 'completed' | 'failed' | 'cancelled';
39
+ /**
40
+ * A step in the plan.
41
+ */
42
+ export interface PlanStep {
43
+ /** Unique ID */
44
+ id: string;
45
+ /** Step number (1-indexed for display) */
46
+ number: number;
47
+ /** Description of what to do */
48
+ description: string;
49
+ /** Dependencies (step IDs that must complete first) */
50
+ dependencies: string[];
51
+ /** Current status */
52
+ status: 'pending' | 'in_progress' | 'completed' | 'failed' | 'skipped';
53
+ /** Reason for any status change */
54
+ statusReason?: string;
55
+ /** Checkpoint ID created before this step */
56
+ checkpointId?: string;
57
+ /** Output/result from execution */
58
+ output?: string;
59
+ /** Whether this is a decision point requiring user input */
60
+ isDecisionPoint?: boolean;
61
+ /** Decision options if this is a decision point */
62
+ decisionOptions?: string[];
63
+ /** User's decision choice */
64
+ decisionChoice?: string;
65
+ /** Estimated complexity (1-5) */
66
+ complexity?: number;
67
+ }
68
+ /**
69
+ * A checkpoint for rollback.
70
+ */
71
+ export interface PlanCheckpoint {
72
+ /** Unique ID */
73
+ id: string;
74
+ /** When created */
75
+ timestamp: string;
76
+ /** Label/description */
77
+ label: string;
78
+ /** Step ID this checkpoint is before */
79
+ beforeStepId: string;
80
+ /** Snapshot of plan state */
81
+ planState: {
82
+ steps: PlanStep[];
83
+ status: PlanStatus;
84
+ currentStepIndex: number;
85
+ };
86
+ /** Additional context to restore */
87
+ context?: Record<string, unknown>;
88
+ }
89
+ /**
90
+ * The interactive plan.
91
+ */
92
+ export interface InteractivePlan {
93
+ /** Unique ID */
94
+ id: string;
95
+ /** Original goal/task */
96
+ goal: string;
97
+ /** Plan steps */
98
+ steps: PlanStep[];
99
+ /** Current status */
100
+ status: PlanStatus;
101
+ /** Current step index (0-indexed) */
102
+ currentStepIndex: number;
103
+ /** Checkpoints for rollback */
104
+ checkpoints: PlanCheckpoint[];
105
+ /** Creation timestamp */
106
+ createdAt: string;
107
+ /** Last update timestamp */
108
+ updatedAt: string;
109
+ /** Conversation history for the plan */
110
+ discussionHistory: Array<{
111
+ role: 'user' | 'assistant';
112
+ content: string;
113
+ }>;
114
+ /** Agent's reasoning for the plan */
115
+ reasoning?: string;
116
+ }
117
+ /**
118
+ * Configuration for interactive planning.
119
+ */
120
+ export interface InteractivePlannerConfig {
121
+ /** Auto-create checkpoint before each step */
122
+ autoCheckpoint?: boolean;
123
+ /** Require confirmation before execution */
124
+ confirmBeforeExecute?: boolean;
125
+ /** Max checkpoints to keep */
126
+ maxCheckpoints?: number;
127
+ /** Auto-pause at decision points */
128
+ autoPauseAtDecisions?: boolean;
129
+ }
130
+ /**
131
+ * An edit command for the plan.
132
+ */
133
+ export interface EditCommand {
134
+ /** Type of edit */
135
+ type: 'add' | 'remove' | 'move' | 'update' | 'skip' | 'unskip';
136
+ /** Target step number or ID */
137
+ target?: string | number;
138
+ /** For add: position relative to target */
139
+ position?: 'before' | 'after';
140
+ /** New description or content */
141
+ content?: string;
142
+ /** For move: destination position */
143
+ destination?: number;
144
+ }
145
+ /**
146
+ * Result of parsing a natural language edit.
147
+ */
148
+ export interface ParsedEdit {
149
+ /** The edit command */
150
+ command: EditCommand;
151
+ /** Confidence in the parse (0-1) */
152
+ confidence: number;
153
+ /** Original input */
154
+ original: string;
155
+ /** Clarification question if confidence is low */
156
+ clarificationNeeded?: string;
157
+ }
158
+ /**
159
+ * LLM call function for planning.
160
+ */
161
+ export type PlannerLLMCall = (systemPrompt: string, userMessage: string) => Promise<{
162
+ content: string;
163
+ }>;
164
+ /**
165
+ * Events emitted by the interactive planner.
166
+ */
167
+ export type InteractivePlannerEvent = {
168
+ type: 'plan.created';
169
+ plan: InteractivePlan;
170
+ } | {
171
+ type: 'plan.updated';
172
+ changes: string;
173
+ } | {
174
+ type: 'plan.approved';
175
+ } | {
176
+ type: 'step.started';
177
+ step: PlanStep;
178
+ } | {
179
+ type: 'step.completed';
180
+ step: PlanStep;
181
+ } | {
182
+ type: 'step.failed';
183
+ step: PlanStep;
184
+ error: string;
185
+ } | {
186
+ type: 'step.skipped';
187
+ step: PlanStep;
188
+ reason: string;
189
+ } | {
190
+ type: 'decision.required';
191
+ step: PlanStep;
192
+ options: string[];
193
+ } | {
194
+ type: 'decision.made';
195
+ step: PlanStep;
196
+ choice: string;
197
+ } | {
198
+ type: 'checkpoint.created';
199
+ checkpoint: PlanCheckpoint;
200
+ } | {
201
+ type: 'rollback.started';
202
+ toCheckpoint: string;
203
+ } | {
204
+ type: 'rollback.completed';
205
+ toCheckpoint: string;
206
+ } | {
207
+ type: 'plan.completed';
208
+ } | {
209
+ type: 'plan.cancelled';
210
+ reason: string;
211
+ } | {
212
+ type: 'edit.applied';
213
+ edit: EditCommand;
214
+ } | {
215
+ type: 'edit.failed';
216
+ edit: EditCommand;
217
+ reason: string;
218
+ };
219
+ export type InteractivePlannerEventListener = (event: InteractivePlannerEvent) => void;
220
+ /**
221
+ * Manages interactive planning with conversation and checkpoints.
222
+ */
223
+ export declare class InteractivePlanner {
224
+ private config;
225
+ private plan;
226
+ private listeners;
227
+ constructor(config?: InteractivePlannerConfig);
228
+ /**
229
+ * Get the current plan.
230
+ */
231
+ getPlan(): InteractivePlan | null;
232
+ /**
233
+ * Draft a new plan.
234
+ */
235
+ draft(goal: string, llmCall: PlannerLLMCall): Promise<InteractivePlan>;
236
+ /**
237
+ * Parse an LLM plan response.
238
+ */
239
+ private parsePlanResponse;
240
+ /**
241
+ * Edit the plan using natural language.
242
+ */
243
+ edit(command: string, llmCall?: PlannerLLMCall): Promise<ParsedEdit>;
244
+ /**
245
+ * Parse edit command directly without LLM.
246
+ */
247
+ private parseEditDirectly;
248
+ /**
249
+ * Parse edit response from LLM.
250
+ */
251
+ private parseEditResponse;
252
+ /**
253
+ * Apply an edit command to the plan.
254
+ */
255
+ private applyEdit;
256
+ /**
257
+ * Renumber steps after modification.
258
+ */
259
+ private renumberSteps;
260
+ /**
261
+ * Approve the plan for execution.
262
+ */
263
+ approve(): void;
264
+ /**
265
+ * Start execution of the plan.
266
+ */
267
+ execute(): Generator<PlanStep, void, void>;
268
+ /**
269
+ * Mark the current step as completed.
270
+ */
271
+ completeStep(output?: string): void;
272
+ /**
273
+ * Mark the current step as failed.
274
+ */
275
+ failStep(error: string): void;
276
+ /**
277
+ * Make a decision for a decision point.
278
+ */
279
+ makeDecision(choice: string): void;
280
+ /**
281
+ * Create a checkpoint.
282
+ */
283
+ createCheckpoint(label: string): PlanCheckpoint;
284
+ /**
285
+ * Rollback to a checkpoint.
286
+ */
287
+ rollback(checkpointId: string): void;
288
+ /**
289
+ * Cancel the plan.
290
+ */
291
+ cancel(reason: string): void;
292
+ /**
293
+ * Add a message to discussion history.
294
+ */
295
+ addDiscussion(role: 'user' | 'assistant', content: string): void;
296
+ /**
297
+ * Get checkpoints for display.
298
+ */
299
+ getCheckpoints(): PlanCheckpoint[];
300
+ /**
301
+ * Clear the current plan.
302
+ */
303
+ clear(): void;
304
+ /**
305
+ * Subscribe to events.
306
+ */
307
+ on(listener: InteractivePlannerEventListener): () => void;
308
+ private emit;
309
+ }
310
+ /**
311
+ * Create an interactive planner.
312
+ */
313
+ export declare function createInteractivePlanner(config?: InteractivePlannerConfig): InteractivePlanner;
314
+ /**
315
+ * Format plan for display.
316
+ */
317
+ export declare function formatPlan(plan: InteractivePlan): string;
318
+ /**
319
+ * Format step for display.
320
+ */
321
+ export declare function formatStep(step: PlanStep): string;
322
+ //# sourceMappingURL=interactive-planning.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interactive-planning.d.ts","sourceRoot":"","sources":["../../../src/integrations/interactive-planning.ts"],"names":[],"mappings":"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"}