indusagi-coding-agent 0.1.22 → 0.1.24
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.
- package/CHANGELOG.md +72 -11
- package/README.md +2 -36
- package/dist/cli/args.d.ts +117 -1
- package/dist/cli/args.d.ts.map +1 -1
- package/dist/cli/args.js +231 -64
- package/dist/cli/args.js.map +1 -1
- package/dist/cli/config-selector.d.ts +58 -2
- package/dist/cli/config-selector.d.ts.map +1 -1
- package/dist/cli/config-selector.js +130 -12
- package/dist/cli/config-selector.js.map +1 -1
- package/dist/cli/file-processor.d.ts +70 -2
- package/dist/cli/file-processor.d.ts.map +1 -1
- package/dist/cli/file-processor.js +240 -15
- package/dist/cli/file-processor.js.map +1 -1
- package/dist/cli/list-models.d.ts +63 -3
- package/dist/cli/list-models.d.ts.map +1 -1
- package/dist/cli/list-models.js +202 -27
- package/dist/cli/list-models.js.map +1 -1
- package/dist/cli/login-handler.d.ts +82 -8
- package/dist/cli/login-handler.d.ts.map +1 -1
- package/dist/cli/login-handler.js +410 -77
- package/dist/cli/login-handler.js.map +1 -1
- package/dist/cli/session-picker.d.ts +74 -2
- package/dist/cli/session-picker.d.ts.map +1 -1
- package/dist/cli/session-picker.js +236 -12
- package/dist/cli/session-picker.js.map +1 -1
- package/dist/core/agent-session.d.ts +214 -9
- package/dist/core/agent-session.d.ts.map +1 -1
- package/dist/core/agent-session.js +214 -9
- package/dist/core/agent-session.js.map +1 -1
- package/dist/core/bash-executor.d.ts +302 -12
- package/dist/core/bash-executor.d.ts.map +1 -1
- package/dist/core/bash-executor.js +302 -12
- package/dist/core/bash-executor.js.map +1 -1
- package/dist/core/diagnostics.d.ts +191 -0
- package/dist/core/diagnostics.d.ts.map +1 -1
- package/dist/core/diagnostics.js +142 -0
- package/dist/core/diagnostics.js.map +1 -1
- package/dist/core/event-bus.d.ts +146 -0
- package/dist/core/event-bus.d.ts.map +1 -1
- package/dist/core/event-bus.js +93 -0
- package/dist/core/event-bus.js.map +1 -1
- package/dist/core/export-html/ansi-to-html.d.ts +4 -0
- package/dist/core/export-html/ansi-to-html.d.ts.map +1 -1
- package/dist/core/export-html/ansi-to-html.js +4 -0
- package/dist/core/export-html/ansi-to-html.js.map +1 -1
- package/dist/core/export-html/index.d.ts +128 -0
- package/dist/core/export-html/index.d.ts.map +1 -1
- package/dist/core/export-html/index.js +128 -0
- package/dist/core/export-html/index.js.map +1 -1
- package/dist/core/export-html/tool-renderer.d.ts +4 -0
- package/dist/core/export-html/tool-renderer.d.ts.map +1 -1
- package/dist/core/export-html/tool-renderer.js +4 -0
- package/dist/core/export-html/tool-renderer.js.map +1 -1
- package/dist/core/keybindings.d.ts +142 -0
- package/dist/core/keybindings.d.ts.map +1 -1
- package/dist/core/keybindings.js +142 -0
- package/dist/core/keybindings.js.map +1 -1
- package/dist/core/model-registry.d.ts +98 -1
- package/dist/core/model-registry.d.ts.map +1 -1
- package/dist/core/model-registry.js +98 -1
- package/dist/core/model-registry.js.map +1 -1
- package/dist/core/model-resolver.d.ts +99 -1
- package/dist/core/model-resolver.d.ts.map +1 -1
- package/dist/core/model-resolver.js +99 -1
- package/dist/core/model-resolver.js.map +1 -1
- package/dist/core/prompt-templates.js.map +1 -1
- package/dist/core/sdk.d.ts +1 -1
- package/dist/core/sdk.d.ts.map +1 -1
- package/dist/core/sdk.js +0 -2
- package/dist/core/sdk.js.map +1 -1
- package/dist/core/session-manager.d.ts +127 -0
- package/dist/core/session-manager.d.ts.map +1 -1
- package/dist/core/session-manager.js +125 -0
- package/dist/core/session-manager.js.map +1 -1
- package/dist/core/skills.js.map +1 -1
- package/dist/core/subagents.js.map +1 -1
- package/dist/core/tools/bash.d.ts +391 -11
- package/dist/core/tools/bash.d.ts.map +1 -1
- package/dist/core/tools/bash.js +269 -2
- package/dist/core/tools/bash.js.map +1 -1
- package/dist/core/tools/edit.d.ts +284 -6
- package/dist/core/tools/edit.d.ts.map +1 -1
- package/dist/core/tools/edit.js +238 -0
- package/dist/core/tools/edit.js.map +1 -1
- package/dist/core/tools/find.d.ts +169 -5
- package/dist/core/tools/find.d.ts.map +1 -1
- package/dist/core/tools/find.js +136 -0
- package/dist/core/tools/find.js.map +1 -1
- package/dist/core/tools/grep.d.ts +285 -5
- package/dist/core/tools/grep.d.ts.map +1 -1
- package/dist/core/tools/grep.js +247 -0
- package/dist/core/tools/grep.js.map +1 -1
- package/dist/core/tools/index.d.ts +0 -18
- package/dist/core/tools/index.d.ts.map +1 -1
- package/dist/core/tools/index.js +1 -23
- package/dist/core/tools/index.js.map +1 -1
- package/dist/core/tools/ls.d.ts +6 -0
- package/dist/core/tools/ls.d.ts.map +1 -1
- package/dist/core/tools/ls.js +6 -0
- package/dist/core/tools/ls.js.map +1 -1
- package/dist/core/tools/read.d.ts +308 -7
- package/dist/core/tools/read.d.ts.map +1 -1
- package/dist/core/tools/read.js +231 -0
- package/dist/core/tools/read.js.map +1 -1
- package/dist/core/tools/webfetch.d.ts +118 -3
- package/dist/core/tools/webfetch.d.ts.map +1 -1
- package/dist/core/tools/webfetch.js +118 -3
- package/dist/core/tools/webfetch.js.map +1 -1
- package/dist/core/tools/websearch.d.ts +130 -3
- package/dist/core/tools/websearch.d.ts.map +1 -1
- package/dist/core/tools/websearch.js +130 -3
- package/dist/core/tools/websearch.js.map +1 -1
- package/dist/core/tools/write.d.ts +251 -5
- package/dist/core/tools/write.d.ts.map +1 -1
- package/dist/core/tools/write.js +210 -0
- package/dist/core/tools/write.js.map +1 -1
- package/dist/modes/interactive/components/assistant-message.d.ts +164 -1
- package/dist/modes/interactive/components/assistant-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/assistant-message.js +164 -1
- package/dist/modes/interactive/components/assistant-message.js.map +1 -1
- package/dist/modes/interactive/components/bash-execution.d.ts +297 -1
- package/dist/modes/interactive/components/bash-execution.d.ts.map +1 -1
- package/dist/modes/interactive/components/bash-execution.js +297 -1
- package/dist/modes/interactive/components/bash-execution.js.map +1 -1
- package/dist/modes/interactive/components/tool-execution.d.ts.map +1 -1
- package/dist/modes/interactive/components/tool-execution.js +251 -1
- package/dist/modes/interactive/components/tool-execution.js.map +1 -1
- package/dist/modes/interactive/components/user-message.d.ts +186 -1
- package/dist/modes/interactive/components/user-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/user-message.js +186 -1
- package/dist/modes/interactive/components/user-message.js.map +1 -1
- package/dist/modes/interactive/interactive-mode.d.ts +1567 -13
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode.js +1567 -13
- package/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/dist/modes/interactive/theme/theme.d.ts +422 -0
- package/dist/modes/interactive/theme/theme.d.ts.map +1 -1
- package/dist/modes/interactive/theme/theme.js +422 -0
- package/dist/modes/interactive/theme/theme.js.map +1 -1
- package/dist/modes/print-mode.d.ts +538 -5
- package/dist/modes/print-mode.d.ts.map +1 -1
- package/dist/modes/print-mode.js +538 -5
- package/dist/modes/print-mode.js.map +1 -1
- package/dist/modes/rpc/rpc-client.d.ts +921 -8
- package/dist/modes/rpc/rpc-client.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-client.js +921 -8
- package/dist/modes/rpc/rpc-client.js.map +1 -1
- package/dist/modes/rpc/rpc-mode.d.ts +802 -9
- package/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-mode.js +802 -9
- package/dist/modes/rpc/rpc-mode.js.map +1 -1
- package/dist/modes/rpc/rpc-types.d.ts +356 -3
- package/dist/modes/rpc/rpc-types.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-types.js +356 -3
- package/dist/modes/rpc/rpc-types.js.map +1 -1
- package/dist/modes/shared.d.ts +386 -0
- package/dist/modes/shared.d.ts.map +1 -0
- package/dist/modes/shared.js +543 -0
- package/dist/modes/shared.js.map +1 -0
- package/dist/utils/array.d.ts +389 -0
- package/dist/utils/array.d.ts.map +1 -0
- package/dist/utils/array.js +585 -0
- package/dist/utils/array.js.map +1 -0
- package/dist/utils/color-formatter.d.ts +318 -0
- package/dist/utils/color-formatter.d.ts.map +1 -0
- package/dist/utils/color-formatter.js +442 -0
- package/dist/utils/color-formatter.js.map +1 -0
- package/dist/utils/data-transformer.d.ts +326 -0
- package/dist/utils/data-transformer.d.ts.map +1 -0
- package/dist/utils/data-transformer.js +512 -0
- package/dist/utils/data-transformer.js.map +1 -0
- package/dist/utils/date-formatter.d.ts +281 -0
- package/dist/utils/date-formatter.d.ts.map +1 -0
- package/dist/utils/date-formatter.js +503 -0
- package/dist/utils/date-formatter.js.map +1 -0
- package/dist/utils/error-handler.d.ts +541 -0
- package/dist/utils/error-handler.d.ts.map +1 -0
- package/dist/utils/error-handler.js +726 -0
- package/dist/utils/error-handler.js.map +1 -0
- package/dist/utils/file-operations.d.ts +297 -0
- package/dist/utils/file-operations.d.ts.map +1 -0
- package/dist/utils/file-operations.js +505 -0
- package/dist/utils/file-operations.js.map +1 -0
- package/dist/utils/frontmatter.d.ts +268 -6
- package/dist/utils/frontmatter.d.ts.map +1 -1
- package/dist/utils/frontmatter.js +500 -21
- package/dist/utils/frontmatter.js.map +1 -1
- package/dist/utils/json-formatter.d.ts +259 -0
- package/dist/utils/json-formatter.d.ts.map +1 -0
- package/dist/utils/json-formatter.js +517 -0
- package/dist/utils/json-formatter.js.map +1 -0
- package/dist/utils/logger.d.ts +176 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +346 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/markdown-formatter.d.ts +211 -0
- package/dist/utils/markdown-formatter.d.ts.map +1 -0
- package/dist/utils/markdown-formatter.js +482 -0
- package/dist/utils/markdown-formatter.js.map +1 -0
- package/dist/utils/path-validator.d.ts +603 -0
- package/dist/utils/path-validator.d.ts.map +1 -0
- package/dist/utils/path-validator.js +870 -0
- package/dist/utils/path-validator.js.map +1 -0
- package/dist/utils/string-formatter.d.ts +609 -0
- package/dist/utils/string-formatter.d.ts.map +1 -0
- package/dist/utils/string-formatter.js +806 -0
- package/dist/utils/string-formatter.js.map +1 -0
- package/dist/utils/type-guards.d.ts +629 -0
- package/dist/utils/type-guards.d.ts.map +1 -0
- package/dist/utils/type-guards.js +662 -0
- package/dist/utils/type-guards.js.map +1 -0
- package/docs/COMPLETE-GUIDE.md +300 -0
- package/docs/MODES-ARCHITECTURE.md +565 -0
- package/docs/PRINT-MODE-GUIDE.md +456 -0
- package/docs/README.md +1 -2
- package/docs/RPC-GUIDE.md +705 -0
- package/docs/UTILS-IMPLEMENTATION-SUMMARY.md +647 -0
- package/docs/UTILS-MODULE-OVERVIEW.md +1480 -0
- package/docs/UTILS-QA-CHECKLIST.md +1061 -0
- package/docs/UTILS-USAGE-GUIDE.md +1419 -0
- package/package.json +3 -3
|
@@ -1,16 +1,221 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Agent Session - Core abstraction for agent lifecycle and session management
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
* - Model and thinking level management
|
|
9
|
-
* - Compaction (manual and auto)
|
|
10
|
-
* - Bash execution
|
|
11
|
-
* - Session switching and branching
|
|
4
|
+
* @module core/agent-session
|
|
5
|
+
* @description
|
|
6
|
+
* Central controller for agent execution across all run modes (interactive, print, RPC).
|
|
7
|
+
* Manages complete agent lifecycle including state, events, persistence, and tool execution.
|
|
12
8
|
*
|
|
9
|
+
* Based on session management patterns from Anthropic's Claude API SDK
|
|
10
|
+
* and stateful execution frameworks. Refactored for multi-modal agent architecture.
|
|
11
|
+
*
|
|
12
|
+
* ## Responsibilities
|
|
13
|
+
*
|
|
14
|
+
* **Agent Lifecycle Management:**
|
|
15
|
+
* - Session initialization and persistence
|
|
16
|
+
* - Event subscription and publishing
|
|
17
|
+
* - State transitions and message handling
|
|
18
|
+
* - Model and thinking level selection
|
|
19
|
+
*
|
|
20
|
+
* **Tool Execution:**
|
|
21
|
+
* - Bash command execution with streaming and cancellation
|
|
22
|
+
* - Tool wrapping with extensions and hooks
|
|
23
|
+
* - Result recording and context building
|
|
24
|
+
*
|
|
25
|
+
* **Session Persistence:**
|
|
26
|
+
* - Automatic message persisting on completion
|
|
27
|
+
* - Session compaction and summarization
|
|
28
|
+
* - Branch navigation and forking
|
|
29
|
+
* - Context overflow recovery
|
|
30
|
+
*
|
|
31
|
+
* **Advanced Features:**
|
|
32
|
+
* - Auto-retry with exponential backoff for transient errors
|
|
33
|
+
* - Auto-compaction at configurable thresholds
|
|
34
|
+
* - Branch summarization for abandoned paths
|
|
35
|
+
* - Extension system integration
|
|
36
|
+
* - Skill and prompt template expansion
|
|
37
|
+
*
|
|
38
|
+
* ## Architecture
|
|
39
|
+
*
|
|
40
|
+
* This class is shared between all run modes (interactive, print, RPC).
|
|
13
41
|
* Modes use this class and add their own I/O layer on top.
|
|
42
|
+
*
|
|
43
|
+
* **Core Dependencies:**
|
|
44
|
+
* - EventBus: Event subscription system (internal only)
|
|
45
|
+
* - SessionManager: Persistence layer for session files
|
|
46
|
+
* - SettingsManager: User configuration
|
|
47
|
+
* - ExtensionRunner: Plugin system with command registration
|
|
48
|
+
* - HookRunner: Lifecycle hooks for advanced customization
|
|
49
|
+
* - Tools: Bash, read, write, edit, find, grep, and more
|
|
50
|
+
* - CompactionSystem: Automatic context compression
|
|
51
|
+
*
|
|
52
|
+
* **Event Flow:**
|
|
53
|
+
* ```
|
|
54
|
+
* Agent Events -> AgentSession._handleAgentEvent
|
|
55
|
+
* -> Extensions (hooks + custom message emission)
|
|
56
|
+
* -> User Listeners (via subscribe())
|
|
57
|
+
* -> Persistence (session manager)
|
|
58
|
+
* -> Auto-retry / Auto-compaction checks
|
|
59
|
+
* ```
|
|
60
|
+
*
|
|
61
|
+
* **Tool Execution Flow:**
|
|
62
|
+
* ```
|
|
63
|
+
* Agent Tool Call
|
|
64
|
+
* -> Extensions (before hooks)
|
|
65
|
+
* -> Tool Implementation
|
|
66
|
+
* -> Streaming via onChunk callback
|
|
67
|
+
* -> Tool Result Recording
|
|
68
|
+
* -> Extensions (after hooks)
|
|
69
|
+
* -> Context Building
|
|
70
|
+
* ```
|
|
71
|
+
*
|
|
72
|
+
* ## Usage Examples
|
|
73
|
+
*
|
|
74
|
+
* ### Initialize a session
|
|
75
|
+
* ```typescript
|
|
76
|
+
* const config: AgentSessionConfig = {
|
|
77
|
+
* agent: new Agent({ ... }),
|
|
78
|
+
* sessionManager: new SessionManager({ ... }),
|
|
79
|
+
* settingsManager: new SettingsManager({ ... }),
|
|
80
|
+
* cwd: process.cwd(),
|
|
81
|
+
* resourceLoader: new ResourceLoader({ ... }),
|
|
82
|
+
* modelRegistry: new ModelRegistry({ ... }),
|
|
83
|
+
* };
|
|
84
|
+
*
|
|
85
|
+
* const session = new AgentSession(config);
|
|
86
|
+
* ```
|
|
87
|
+
*
|
|
88
|
+
* ### Subscribe to events
|
|
89
|
+
* ```typescript
|
|
90
|
+
* const unsubscribe = session.subscribe((event) => {
|
|
91
|
+
* if (event.type === "message_end") {
|
|
92
|
+
* console.log("Message completed:", event.message);
|
|
93
|
+
* }
|
|
94
|
+
* });
|
|
95
|
+
* ```
|
|
96
|
+
*
|
|
97
|
+
* ### Send a prompt
|
|
98
|
+
* ```typescript
|
|
99
|
+
* // User prompt with model validation
|
|
100
|
+
* await session.prompt("Help me refactor this code", {
|
|
101
|
+
* expandPromptTemplates: true,
|
|
102
|
+
* });
|
|
103
|
+
*
|
|
104
|
+
* // Extension command (executed immediately)
|
|
105
|
+
* await session.prompt("/login anthropic");
|
|
106
|
+
*
|
|
107
|
+
* // During streaming: interrupt with steering
|
|
108
|
+
* await session.steer("Wait, try a different approach");
|
|
109
|
+
*
|
|
110
|
+
* // Or queue follow-up
|
|
111
|
+
* await session.followUp("Please continue when done");
|
|
112
|
+
* ```
|
|
113
|
+
*
|
|
114
|
+
* ### Execute bash
|
|
115
|
+
* ```typescript
|
|
116
|
+
* const result = await session.executeBash("npm test", (chunk) => {
|
|
117
|
+
* process.stdout.write(chunk);
|
|
118
|
+
* });
|
|
119
|
+
*
|
|
120
|
+
* console.log("Exit code:", result.exitCode);
|
|
121
|
+
* if (result.truncated) {
|
|
122
|
+
* console.log("Full output:", result.fullOutputPath);
|
|
123
|
+
* }
|
|
124
|
+
* ```
|
|
125
|
+
*
|
|
126
|
+
* ### Session management
|
|
127
|
+
* ```typescript
|
|
128
|
+
* // Create new session
|
|
129
|
+
* await session.newSession();
|
|
130
|
+
*
|
|
131
|
+
* // Switch to existing session
|
|
132
|
+
* await session.switchSession("/path/to/session.jsonl");
|
|
133
|
+
*
|
|
134
|
+
* // Fork at specific entry
|
|
135
|
+
* const { selectedText, cancelled } = await session.fork(entryId);
|
|
136
|
+
*
|
|
137
|
+
* // Navigate tree with optional branch summarization
|
|
138
|
+
* await session.navigateTree(targetId, { summarize: true });
|
|
139
|
+
*
|
|
140
|
+
* // Manually compact session
|
|
141
|
+
* await session.compact("Focus on backend changes");
|
|
142
|
+
* ```
|
|
143
|
+
*
|
|
144
|
+
* ### Model & thinking level
|
|
145
|
+
* ```typescript
|
|
146
|
+
* // Cycle through models (or scoped models if --models was used)
|
|
147
|
+
* const result = await session.cycleModel("forward");
|
|
148
|
+
* console.log("Switched to:", result?.model.id);
|
|
149
|
+
*
|
|
150
|
+
* // Set thinking level (automatically clamped to model capabilities)
|
|
151
|
+
* session.setThinkingLevel("high");
|
|
152
|
+
* const available = session.getAvailableThinkingLevels();
|
|
153
|
+
* ```
|
|
154
|
+
*
|
|
155
|
+
* ## Lifecycle Hooks
|
|
156
|
+
*
|
|
157
|
+
* Extensions can listen to these session events:
|
|
158
|
+
* - `session_start`: Session initialized or reloaded
|
|
159
|
+
* - `session_switch`: Switched to different session file
|
|
160
|
+
* - `session_fork`: Created fork from entry
|
|
161
|
+
* - `session_tree`: Navigated within tree
|
|
162
|
+
* - `session_before_switch`: Before switching (can cancel)
|
|
163
|
+
* - `session_before_fork`: Before creating fork (can cancel)
|
|
164
|
+
* - `session_before_tree`: Before tree navigation (can cancel)
|
|
165
|
+
* - `session_before_compact`: Before compaction (can cancel or provide custom)
|
|
166
|
+
* - `session_compact`: Completed compaction
|
|
167
|
+
* - `session_shutdown`: Session cleanup
|
|
168
|
+
*
|
|
169
|
+
* ## Error Handling
|
|
170
|
+
*
|
|
171
|
+
* **Transient Errors (auto-retry):**
|
|
172
|
+
* - Overloaded/rate limit errors
|
|
173
|
+
* - Server 5xx errors
|
|
174
|
+
* - Connection errors
|
|
175
|
+
* - Automatic exponential backoff + retry
|
|
176
|
+
*
|
|
177
|
+
* **Context Overflow (auto-compaction):**
|
|
178
|
+
* - Detected when LLM returns context limit error
|
|
179
|
+
* - Automatic summary generation
|
|
180
|
+
* - Old messages removed, new ones retry
|
|
181
|
+
*
|
|
182
|
+
* **Tool Errors:**
|
|
183
|
+
* - Validation errors (invalid input)
|
|
184
|
+
* - Execution errors (file not found, permission denied)
|
|
185
|
+
* - Timeout errors (bash commands)
|
|
186
|
+
* - Returned as tool results for LLM handling
|
|
187
|
+
*
|
|
188
|
+
* **Configuration Errors:**
|
|
189
|
+
* - No model selected → error on prompt()
|
|
190
|
+
* - No API key → error on prompt()
|
|
191
|
+
* - Extensions disabled → ignored, execution continues
|
|
192
|
+
*
|
|
193
|
+
* ## Performance Considerations
|
|
194
|
+
*
|
|
195
|
+
* - Tool output truncation prevents runaway memory usage
|
|
196
|
+
* - Bash output streamed via callbacks, not buffered
|
|
197
|
+
* - Large output written to temp files for later retrieval
|
|
198
|
+
* - Session messages indexed for fast lookup
|
|
199
|
+
* - Lazy-loading of extensions and hooks
|
|
200
|
+
*
|
|
201
|
+
* ## Security Notes
|
|
202
|
+
*
|
|
203
|
+
* - All bash commands execute in isolated subprocess
|
|
204
|
+
* - No shell injection: using spawn() not shell strings
|
|
205
|
+
* - File operations limited to working directory
|
|
206
|
+
* - Extensions loaded from trusted paths only
|
|
207
|
+
* - User input validated before LLM submission
|
|
208
|
+
*
|
|
209
|
+
* ## Implementation Status
|
|
210
|
+
*
|
|
211
|
+
* Based on: https://github.com/varunisrani/indusagi-ts/vendor/indusagi-agent/src/agent-loop.ts
|
|
212
|
+
* Modifications:
|
|
213
|
+
* - Extended with session persistence layer
|
|
214
|
+
* - Added extension system integration
|
|
215
|
+
* - Added hook system for customization
|
|
216
|
+
* - Added auto-compaction and auto-retry
|
|
217
|
+
* - Added branch summarization
|
|
218
|
+
* - Added command expansion and skill system
|
|
14
219
|
*/
|
|
15
220
|
import type { Agent, AgentEvent, AgentMessage, AgentState, AgentTool, ThinkingLevel } from "indusagi/agent";
|
|
16
221
|
import type { ImageContent, Model, TextContent } from "indusagi/ai";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-session.d.ts","sourceRoot":"","sources":["../../src/core/agent-session.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agent-session.d.ts","sourceRoot":"","sources":["../../src/core/agent-session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0NG;AAIH,OAAO,KAAK,EACX,KAAK,EACL,UAAU,EACV,YAAY,EACZ,UAAU,EACV,SAAS,EACT,aAAa,EACb,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAoB,YAAY,EAAW,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAM/F,OAAO,EAAE,KAAK,UAAU,EAAgE,MAAM,oBAAoB,CAAC;AACnH,OAAO,EACN,KAAK,gBAAgB,EAQrB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACN,KAAK,YAAY,EACjB,KAAK,8BAA8B,EACnC,KAAK,sBAAsB,EAC3B,eAAe,EACf,KAAK,kBAAkB,EACvB,KAAK,WAAW,EAKhB,KAAK,eAAe,EACpB,KAAK,cAAc,EAMnB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAwB,aAAa,EAAE,MAAM,eAAe,CAAC;AACzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAwB,KAAK,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAClF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,kBAAkB,EAAmB,iBAAiB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACnH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE7D,OAAO,EAAE,UAAU,EAAE,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAStD,6CAA6C;AAC7C,MAAM,WAAW,gBAAgB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;CAChC;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CASrE;AAED,8DAA8D;AAC9D,MAAM,MAAM,iBAAiB,GAC1B,UAAU,GACV;IAAE,IAAI,EAAE,uBAAuB,CAAC;IAAC,MAAM,EAAE,WAAW,GAAG,UAAU,CAAA;CAAE,GACnE;IACA,IAAI,EAAE,qBAAqB,CAAC;IAC5B,MAAM,EAAE,gBAAgB,GAAG,SAAS,CAAC;IACrC,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;CACrB,GACD;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,GACzG;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtF,iDAAiD;AACjD,MAAM,MAAM,yBAAyB,GAAG,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;AAM3E,MAAM,WAAW,kBAAkB;IAClC,KAAK,EAAE,KAAK,CAAC;IACb,cAAc,EAAE,cAAc,CAAC;IAC/B,eAAe,EAAE,eAAe,CAAC;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,+DAA+D;IAC/D,YAAY,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;QAAC,aAAa,EAAE,aAAa,CAAA;KAAE,CAAC,CAAC;IAC1E,gFAAgF;IAChF,cAAc,EAAE,cAAc,CAAC;IAC/B,qDAAqD;IACrD,WAAW,CAAC,EAAE,cAAc,EAAE,CAAC;IAC/B,gEAAgE;IAChE,aAAa,EAAE,aAAa,CAAC;IAC7B,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wGAAwG;IACxG,sBAAsB,CAAC,EAAE,MAAM,EAAE,CAAC;IAClC,wDAAwD;IACxD,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAC9C,sEAAsE;IACtE,kBAAkB,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,eAAe,CAAA;KAAE,CAAC;IACnD,iEAAiE;IACjE,aAAa,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,UAAU,CAAA;KAAE,CAAC;CACzC;AAED,MAAM,WAAW,iBAAiB;IACjC,SAAS,CAAC,EAAE,kBAAkB,CAAC;IAC/B,qBAAqB,CAAC,EAAE,8BAA8B,CAAC;IACvD,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,OAAO,CAAC,EAAE,sBAAsB,CAAC;IACjC,WAAW,CAAC,EAAE,iBAAiB,CAAC;CAChC;AAED,wCAAwC;AACxC,MAAM,WAAW,aAAa;IAC7B,oEAAoE;IACpE,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,wBAAwB;IACxB,MAAM,CAAC,EAAE,YAAY,EAAE,CAAC;IACxB,iHAAiH;IACjH,iBAAiB,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;IACzC,qFAAqF;IACrF,MAAM,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,+BAA+B;AAC/B,MAAM,WAAW,gBAAgB;IAChC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IAClB,aAAa,EAAE,aAAa,CAAC;IAC7B,6EAA6E;IAC7E,QAAQ,EAAE,OAAO,CAAC;CAClB;AAED,8CAA8C;AAC9C,MAAM,WAAW,YAAY;IAC5B,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;QACnB,KAAK,EAAE,MAAM,CAAC;KACd,CAAC;IACF,IAAI,EAAE,MAAM,CAAC;CACb;AAgBD,qBAAa,YAAY;IACxB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IACtB,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAE1C,OAAO,CAAC,aAAa,CAA6D;IAGlF,OAAO,CAAC,iBAAiB,CAAC,CAAa;IACvC,OAAO,CAAC,eAAe,CAAmC;IAE1D,+EAA+E;IAC/E,OAAO,CAAC,iBAAiB,CAAgB;IACzC,gFAAgF;IAChF,OAAO,CAAC,iBAAiB,CAAgB;IACzC,sFAAsF;IACtF,OAAO,CAAC,wBAAwB,CAAuB;IAGvD,OAAO,CAAC,0BAA0B,CAA0C;IAC5E,OAAO,CAAC,8BAA8B,CAA0C;IAGhF,OAAO,CAAC,6BAA6B,CAA0C;IAG/E,OAAO,CAAC,qBAAqB,CAA0C;IACvE,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,aAAa,CAAwC;IAC7D,OAAO,CAAC,aAAa,CAAuC;IAG5D,OAAO,CAAC,oBAAoB,CAA0C;IACtE,OAAO,CAAC,oBAAoB,CAA8B;IAG1D,OAAO,CAAC,gBAAgB,CAA0C;IAClE,OAAO,CAAC,WAAW,CAAqC;IACxD,OAAO,CAAC,UAAU,CAAK;IAEvB,OAAO,CAAC,eAAe,CAAiB;IACxC,OAAO,CAAC,YAAY,CAAmB;IACvC,OAAO,CAAC,iBAAiB,CAAqC;IAC9D,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,mBAAmB,CAAC,CAAgC;IAC5D,OAAO,CAAC,cAAc,CAAC,CAA2B;IAClD,OAAO,CAAC,uBAAuB,CAAC,CAAW;IAC3C,OAAO,CAAC,kBAAkB,CAAC,CAA4B;IACvD,OAAO,CAAC,mBAAmB,CAAC,CAAqB;IACjD,OAAO,CAAC,+BAA+B,CAAC,CAAiC;IACzE,OAAO,CAAC,yBAAyB,CAAC,CAAkB;IACpD,OAAO,CAAC,uBAAuB,CAAC,CAAyB;IACzD,OAAO,CAAC,2BAA2B,CAAC,CAAa;IACjD,OAAO,CAAC,kBAAkB,CAAC,CAAoB;IAC/C,OAAO,CAAC,sBAAsB,CAAC,CAAa;IAG5C,OAAO,CAAC,cAAc,CAAgB;IAGtC,OAAO,CAAC,UAAU,CAAY;IAE9B,OAAO,CAAC,SAAS,CAAS;IAE1B,OAAO,CAAC,cAAc,CAAgB;IAGtC,OAAO,CAAC,aAAa,CAAqC;IAG1D,OAAO,CAAC,iBAAiB,CAAM;gBAEnB,MAAM,EAAE,kBAAkB;IA4BtC,gEAAgE;IAChE,IAAI,aAAa,IAAI,aAAa,CAEjC;IAMD,qCAAqC;IACrC,OAAO,CAAC,KAAK;IAMb,OAAO,CAAC,iBAAiB;IAKzB,OAAO,CAAC,qBAAqB,CAA2C;IAExE,4EAA4E;IAC5E,OAAO,CAAC,iBAAiB,CA6FvB;IAEF,wCAAwC;IACxC,OAAO,CAAC,aAAa;IAQrB,0CAA0C;IAC1C,OAAO,CAAC,mBAAmB;IAQ3B,8EAA8E;IAC9E,OAAO,CAAC,yBAAyB;IAWjC,kDAAkD;YACpC,mBAAmB;IA8BjC;;;;OAIG;IACH,SAAS,CAAC,QAAQ,EAAE,yBAAyB,GAAG,MAAM,IAAI;IAY1D;;;;OAIG;IACH,OAAO,CAAC,oBAAoB;IAO5B;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAKzB;;;OAGG;IACH,OAAO,IAAI,IAAI;IASf,uBAAuB;IACvB,IAAI,KAAK,IAAI,UAAU,CAEtB;IAED,2DAA2D;IAC3D,IAAI,KAAK,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,CAElC;IAED,6BAA6B;IAC7B,IAAI,aAAa,IAAI,aAAa,CAEjC;IAED,sDAAsD;IACtD,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED,gDAAgD;IAChD,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED;;;OAGG;IACH,kBAAkB,IAAI,MAAM,EAAE;IAI9B;;OAEG;IACH,WAAW,IAAI,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IAO3D;;;;;OAKG;IACH,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI;IAiB/C,mDAAmD;IACnD,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED,oEAAoE;IACpE,IAAI,QAAQ,IAAI,YAAY,EAAE,CAE7B;IAED,4BAA4B;IAC5B,IAAI,YAAY,IAAI,KAAK,GAAG,eAAe,CAE1C;IAED,6BAA6B;IAC7B,IAAI,YAAY,IAAI,KAAK,GAAG,eAAe,CAE1C;IAED,uEAAuE;IACvE,IAAI,WAAW,IAAI,MAAM,GAAG,SAAS,CAEpC;IAED,yBAAyB;IACzB,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,qDAAqD;IACrD,IAAI,YAAY,IAAI,aAAa,CAAC;QAAE,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;QAAC,aAAa,EAAE,aAAa,CAAA;KAAE,CAAC,CAErF;IAED,uCAAuC;IACvC,eAAe,CAAC,YAAY,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;QAAC,aAAa,EAAE,aAAa,CAAA;KAAE,CAAC,GAAG,IAAI;IAI/F,kCAAkC;IAClC,IAAI,eAAe,IAAI,aAAa,CAAC,cAAc,CAAC,CAEnD;IAED,OAAO,CAAC,oBAAoB;IAwB5B;;;;;;;;OAQG;IACG,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IA8JlE;;OAEG;YACW,2BAA2B;IAsCzC;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IA0B3B;;;;;OAKG;IACG,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAaxC;;;;;OAKG;IACG,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAa3C;;OAEG;YACW,WAAW;IASzB;;OAEG;YACW,cAAc;IAS5B;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAchC;;;;;;;;;;;OAWG;IACG,iBAAiB,CAAC,CAAC,GAAG,OAAO,EAClC,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,YAAY,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC,EACjF,OAAO,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,OAAO,CAAC;QAAC,SAAS,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,UAAU,CAAA;KAAE,GAChF,OAAO,CAAC,IAAI,CAAC;IAgChB;;;;;;OAMG;IACG,eAAe,CACpB,OAAO,EAAE,MAAM,GAAG,CAAC,WAAW,GAAG,YAAY,CAAC,EAAE,EAChD,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,GAAG,UAAU,CAAA;KAAE,GAC5C,OAAO,CAAC,IAAI,CAAC;IA8BhB;;;;OAIG;IACH,UAAU,IAAI;QAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;KAAE;IASxD,wEAAwE;IACxE,IAAI,mBAAmB,IAAI,MAAM,CAEhC;IAED,gDAAgD;IAChD,mBAAmB,IAAI,SAAS,MAAM,EAAE;IAIxC,iDAAiD;IACjD,mBAAmB,IAAI,SAAS,MAAM,EAAE;IAIxC,IAAI,cAAc,IAAI,cAAc,CAEnC;IAED;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAM5B;;;;;;OAMG;IACG,UAAU,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC;YA2CjD,gBAAgB;IAe9B;;;;OAIG;IACG,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBhD;;;;;OAKG;IACG,UAAU,CAAC,SAAS,GAAE,SAAS,GAAG,UAAsB,GAAG,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;YAOxF,iBAAiB;YA8BjB,oBAAoB;IAiClC;;;;OAIG;IACH,gBAAgB,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;IAQ5C;;;OAGG;IACH,kBAAkB,IAAI,aAAa,GAAG,SAAS;IAY/C;;;OAGG;IACH,0BAA0B,IAAI,aAAa,EAAE;IAK7C;;OAEG;IACH,qBAAqB,IAAI,OAAO;IAIhC;;OAEG;IACH,gBAAgB,IAAI,OAAO;IAI3B,OAAO,CAAC,mBAAmB;IAsB3B;;;OAGG;IACH,eAAe,CAAC,IAAI,EAAE,KAAK,GAAG,eAAe,GAAG,IAAI;IAKpD;;;OAGG;IACH,eAAe,CAAC,IAAI,EAAE,KAAK,GAAG,eAAe,GAAG,IAAI;IASpD;;;;OAIG;IACG,OAAO,CAAC,kBAAkB,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IA2HrE;;OAEG;IACH,eAAe,IAAI,IAAI;IAKvB;;OAEG;IACH,kBAAkB,IAAI,IAAI;IAI1B;;;;;;;;;;OAUG;YACW,gBAAgB;IA+C9B;;OAEG;YACW,kBAAkB;IAkJhC;;OAEG;IACH,wBAAwB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAIhD,yCAAyC;IACzC,IAAI,qBAAqB,IAAI,OAAO,CAEnC;IAEK,cAAc,CAAC,QAAQ,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBhE,OAAO,CAAC,uBAAuB;IAU/B,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,kBAAkB;IAqE1B,OAAO,CAAC,aAAa;IAuHf,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IA0B7B;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAczB;;;OAGG;YACW,qBAAqB;IAwEnC;;OAEG;IACH,UAAU,IAAI,IAAI;IAMlB;;;OAGG;YACW,YAAY;IAM1B,kDAAkD;IAClD,IAAI,UAAU,IAAI,OAAO,CAExB;IAED,oCAAoC;IACpC,IAAI,gBAAgB,IAAI,OAAO,CAE9B;IAED;;OAEG;IACH,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAQ3C;;;;;;;OAOG;IACG,WAAW,CAChB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,EACjC,OAAO,CAAC,EAAE;QAAE,kBAAkB,CAAC,EAAE,OAAO,CAAC;QAAC,UAAU,CAAC,EAAE,cAAc,CAAA;KAAE,GACrE,OAAO,CAAC,UAAU,CAAC;IA8BtB;;;OAGG;IACH,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE;QAAE,kBAAkB,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI;IA0BvG;;OAEG;IACH,SAAS,IAAI,IAAI;IAIjB,kDAAkD;IAClD,IAAI,aAAa,IAAI,OAAO,CAE3B;IAED,oEAAoE;IACpE,IAAI,sBAAsB,IAAI,OAAO,CAEpC;IAED;;;OAGG;IACH,OAAO,CAAC,yBAAyB;IAkBjC;;;;;OAKG;IACG,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAiE1D;;;;;;;;OAQG;IACG,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAAE,CAAC;IA4DlF;;;;;;;;;;OAUG;IACG,YAAY,CACjB,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAC;QAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAO,GAC/G,OAAO,CAAC;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,YAAY,CAAC,EAAE,kBAAkB,CAAA;KAAE,CAAC;IAoL7G;;OAEG;IACH,yBAAyB,IAAI,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAiBrE,OAAO,CAAC,uBAAuB;IAW/B;;OAEG;IACH,eAAe,IAAI,YAAY;IA4C/B,eAAe,IAAI,YAAY,GAAG,SAAS;IAoB3C;;;;OAIG;IACG,YAAY,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAuBxD;;;;OAIG;IACH,oBAAoB,IAAI,MAAM,GAAG,SAAS;IA4B1C;;OAEG;IACH,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAIhD;;OAEG;IACH,IAAI,eAAe,IAAI,eAAe,GAAG,SAAS,CAEjD;CACD"}
|
|
@@ -1,16 +1,221 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Agent Session - Core abstraction for agent lifecycle and session management
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
* - Model and thinking level management
|
|
9
|
-
* - Compaction (manual and auto)
|
|
10
|
-
* - Bash execution
|
|
11
|
-
* - Session switching and branching
|
|
4
|
+
* @module core/agent-session
|
|
5
|
+
* @description
|
|
6
|
+
* Central controller for agent execution across all run modes (interactive, print, RPC).
|
|
7
|
+
* Manages complete agent lifecycle including state, events, persistence, and tool execution.
|
|
12
8
|
*
|
|
9
|
+
* Based on session management patterns from Anthropic's Claude API SDK
|
|
10
|
+
* and stateful execution frameworks. Refactored for multi-modal agent architecture.
|
|
11
|
+
*
|
|
12
|
+
* ## Responsibilities
|
|
13
|
+
*
|
|
14
|
+
* **Agent Lifecycle Management:**
|
|
15
|
+
* - Session initialization and persistence
|
|
16
|
+
* - Event subscription and publishing
|
|
17
|
+
* - State transitions and message handling
|
|
18
|
+
* - Model and thinking level selection
|
|
19
|
+
*
|
|
20
|
+
* **Tool Execution:**
|
|
21
|
+
* - Bash command execution with streaming and cancellation
|
|
22
|
+
* - Tool wrapping with extensions and hooks
|
|
23
|
+
* - Result recording and context building
|
|
24
|
+
*
|
|
25
|
+
* **Session Persistence:**
|
|
26
|
+
* - Automatic message persisting on completion
|
|
27
|
+
* - Session compaction and summarization
|
|
28
|
+
* - Branch navigation and forking
|
|
29
|
+
* - Context overflow recovery
|
|
30
|
+
*
|
|
31
|
+
* **Advanced Features:**
|
|
32
|
+
* - Auto-retry with exponential backoff for transient errors
|
|
33
|
+
* - Auto-compaction at configurable thresholds
|
|
34
|
+
* - Branch summarization for abandoned paths
|
|
35
|
+
* - Extension system integration
|
|
36
|
+
* - Skill and prompt template expansion
|
|
37
|
+
*
|
|
38
|
+
* ## Architecture
|
|
39
|
+
*
|
|
40
|
+
* This class is shared between all run modes (interactive, print, RPC).
|
|
13
41
|
* Modes use this class and add their own I/O layer on top.
|
|
42
|
+
*
|
|
43
|
+
* **Core Dependencies:**
|
|
44
|
+
* - EventBus: Event subscription system (internal only)
|
|
45
|
+
* - SessionManager: Persistence layer for session files
|
|
46
|
+
* - SettingsManager: User configuration
|
|
47
|
+
* - ExtensionRunner: Plugin system with command registration
|
|
48
|
+
* - HookRunner: Lifecycle hooks for advanced customization
|
|
49
|
+
* - Tools: Bash, read, write, edit, find, grep, and more
|
|
50
|
+
* - CompactionSystem: Automatic context compression
|
|
51
|
+
*
|
|
52
|
+
* **Event Flow:**
|
|
53
|
+
* ```
|
|
54
|
+
* Agent Events -> AgentSession._handleAgentEvent
|
|
55
|
+
* -> Extensions (hooks + custom message emission)
|
|
56
|
+
* -> User Listeners (via subscribe())
|
|
57
|
+
* -> Persistence (session manager)
|
|
58
|
+
* -> Auto-retry / Auto-compaction checks
|
|
59
|
+
* ```
|
|
60
|
+
*
|
|
61
|
+
* **Tool Execution Flow:**
|
|
62
|
+
* ```
|
|
63
|
+
* Agent Tool Call
|
|
64
|
+
* -> Extensions (before hooks)
|
|
65
|
+
* -> Tool Implementation
|
|
66
|
+
* -> Streaming via onChunk callback
|
|
67
|
+
* -> Tool Result Recording
|
|
68
|
+
* -> Extensions (after hooks)
|
|
69
|
+
* -> Context Building
|
|
70
|
+
* ```
|
|
71
|
+
*
|
|
72
|
+
* ## Usage Examples
|
|
73
|
+
*
|
|
74
|
+
* ### Initialize a session
|
|
75
|
+
* ```typescript
|
|
76
|
+
* const config: AgentSessionConfig = {
|
|
77
|
+
* agent: new Agent({ ... }),
|
|
78
|
+
* sessionManager: new SessionManager({ ... }),
|
|
79
|
+
* settingsManager: new SettingsManager({ ... }),
|
|
80
|
+
* cwd: process.cwd(),
|
|
81
|
+
* resourceLoader: new ResourceLoader({ ... }),
|
|
82
|
+
* modelRegistry: new ModelRegistry({ ... }),
|
|
83
|
+
* };
|
|
84
|
+
*
|
|
85
|
+
* const session = new AgentSession(config);
|
|
86
|
+
* ```
|
|
87
|
+
*
|
|
88
|
+
* ### Subscribe to events
|
|
89
|
+
* ```typescript
|
|
90
|
+
* const unsubscribe = session.subscribe((event) => {
|
|
91
|
+
* if (event.type === "message_end") {
|
|
92
|
+
* console.log("Message completed:", event.message);
|
|
93
|
+
* }
|
|
94
|
+
* });
|
|
95
|
+
* ```
|
|
96
|
+
*
|
|
97
|
+
* ### Send a prompt
|
|
98
|
+
* ```typescript
|
|
99
|
+
* // User prompt with model validation
|
|
100
|
+
* await session.prompt("Help me refactor this code", {
|
|
101
|
+
* expandPromptTemplates: true,
|
|
102
|
+
* });
|
|
103
|
+
*
|
|
104
|
+
* // Extension command (executed immediately)
|
|
105
|
+
* await session.prompt("/login anthropic");
|
|
106
|
+
*
|
|
107
|
+
* // During streaming: interrupt with steering
|
|
108
|
+
* await session.steer("Wait, try a different approach");
|
|
109
|
+
*
|
|
110
|
+
* // Or queue follow-up
|
|
111
|
+
* await session.followUp("Please continue when done");
|
|
112
|
+
* ```
|
|
113
|
+
*
|
|
114
|
+
* ### Execute bash
|
|
115
|
+
* ```typescript
|
|
116
|
+
* const result = await session.executeBash("npm test", (chunk) => {
|
|
117
|
+
* process.stdout.write(chunk);
|
|
118
|
+
* });
|
|
119
|
+
*
|
|
120
|
+
* console.log("Exit code:", result.exitCode);
|
|
121
|
+
* if (result.truncated) {
|
|
122
|
+
* console.log("Full output:", result.fullOutputPath);
|
|
123
|
+
* }
|
|
124
|
+
* ```
|
|
125
|
+
*
|
|
126
|
+
* ### Session management
|
|
127
|
+
* ```typescript
|
|
128
|
+
* // Create new session
|
|
129
|
+
* await session.newSession();
|
|
130
|
+
*
|
|
131
|
+
* // Switch to existing session
|
|
132
|
+
* await session.switchSession("/path/to/session.jsonl");
|
|
133
|
+
*
|
|
134
|
+
* // Fork at specific entry
|
|
135
|
+
* const { selectedText, cancelled } = await session.fork(entryId);
|
|
136
|
+
*
|
|
137
|
+
* // Navigate tree with optional branch summarization
|
|
138
|
+
* await session.navigateTree(targetId, { summarize: true });
|
|
139
|
+
*
|
|
140
|
+
* // Manually compact session
|
|
141
|
+
* await session.compact("Focus on backend changes");
|
|
142
|
+
* ```
|
|
143
|
+
*
|
|
144
|
+
* ### Model & thinking level
|
|
145
|
+
* ```typescript
|
|
146
|
+
* // Cycle through models (or scoped models if --models was used)
|
|
147
|
+
* const result = await session.cycleModel("forward");
|
|
148
|
+
* console.log("Switched to:", result?.model.id);
|
|
149
|
+
*
|
|
150
|
+
* // Set thinking level (automatically clamped to model capabilities)
|
|
151
|
+
* session.setThinkingLevel("high");
|
|
152
|
+
* const available = session.getAvailableThinkingLevels();
|
|
153
|
+
* ```
|
|
154
|
+
*
|
|
155
|
+
* ## Lifecycle Hooks
|
|
156
|
+
*
|
|
157
|
+
* Extensions can listen to these session events:
|
|
158
|
+
* - `session_start`: Session initialized or reloaded
|
|
159
|
+
* - `session_switch`: Switched to different session file
|
|
160
|
+
* - `session_fork`: Created fork from entry
|
|
161
|
+
* - `session_tree`: Navigated within tree
|
|
162
|
+
* - `session_before_switch`: Before switching (can cancel)
|
|
163
|
+
* - `session_before_fork`: Before creating fork (can cancel)
|
|
164
|
+
* - `session_before_tree`: Before tree navigation (can cancel)
|
|
165
|
+
* - `session_before_compact`: Before compaction (can cancel or provide custom)
|
|
166
|
+
* - `session_compact`: Completed compaction
|
|
167
|
+
* - `session_shutdown`: Session cleanup
|
|
168
|
+
*
|
|
169
|
+
* ## Error Handling
|
|
170
|
+
*
|
|
171
|
+
* **Transient Errors (auto-retry):**
|
|
172
|
+
* - Overloaded/rate limit errors
|
|
173
|
+
* - Server 5xx errors
|
|
174
|
+
* - Connection errors
|
|
175
|
+
* - Automatic exponential backoff + retry
|
|
176
|
+
*
|
|
177
|
+
* **Context Overflow (auto-compaction):**
|
|
178
|
+
* - Detected when LLM returns context limit error
|
|
179
|
+
* - Automatic summary generation
|
|
180
|
+
* - Old messages removed, new ones retry
|
|
181
|
+
*
|
|
182
|
+
* **Tool Errors:**
|
|
183
|
+
* - Validation errors (invalid input)
|
|
184
|
+
* - Execution errors (file not found, permission denied)
|
|
185
|
+
* - Timeout errors (bash commands)
|
|
186
|
+
* - Returned as tool results for LLM handling
|
|
187
|
+
*
|
|
188
|
+
* **Configuration Errors:**
|
|
189
|
+
* - No model selected → error on prompt()
|
|
190
|
+
* - No API key → error on prompt()
|
|
191
|
+
* - Extensions disabled → ignored, execution continues
|
|
192
|
+
*
|
|
193
|
+
* ## Performance Considerations
|
|
194
|
+
*
|
|
195
|
+
* - Tool output truncation prevents runaway memory usage
|
|
196
|
+
* - Bash output streamed via callbacks, not buffered
|
|
197
|
+
* - Large output written to temp files for later retrieval
|
|
198
|
+
* - Session messages indexed for fast lookup
|
|
199
|
+
* - Lazy-loading of extensions and hooks
|
|
200
|
+
*
|
|
201
|
+
* ## Security Notes
|
|
202
|
+
*
|
|
203
|
+
* - All bash commands execute in isolated subprocess
|
|
204
|
+
* - No shell injection: using spawn() not shell strings
|
|
205
|
+
* - File operations limited to working directory
|
|
206
|
+
* - Extensions loaded from trusted paths only
|
|
207
|
+
* - User input validated before LLM submission
|
|
208
|
+
*
|
|
209
|
+
* ## Implementation Status
|
|
210
|
+
*
|
|
211
|
+
* Based on: https://github.com/varunisrani/indusagi-ts/vendor/indusagi-agent/src/agent-loop.ts
|
|
212
|
+
* Modifications:
|
|
213
|
+
* - Extended with session persistence layer
|
|
214
|
+
* - Added extension system integration
|
|
215
|
+
* - Added hook system for customization
|
|
216
|
+
* - Added auto-compaction and auto-retry
|
|
217
|
+
* - Added branch summarization
|
|
218
|
+
* - Added command expansion and skill system
|
|
14
219
|
*/
|
|
15
220
|
import { readFileSync } from "node:fs";
|
|
16
221
|
import { join } from "node:path";
|