claudito 0.5.0 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +79 -8
- package/dist/agents/agent-manager.d.ts +18 -1
- package/dist/agents/agent-manager.d.ts.map +1 -1
- package/dist/agents/agent-manager.js +81 -13
- package/dist/agents/agent-manager.js.map +1 -1
- package/dist/agents/claude-agent.d.ts +14 -2
- package/dist/agents/claude-agent.d.ts.map +1 -1
- package/dist/agents/claude-agent.js +100 -3
- package/dist/agents/claude-agent.js.map +1 -1
- package/dist/agents/index.d.ts +1 -1
- package/dist/agents/index.d.ts.map +1 -1
- package/dist/agents/index.js.map +1 -1
- package/dist/repositories/conversation.d.ts +18 -0
- package/dist/repositories/conversation.d.ts.map +1 -1
- package/dist/repositories/conversation.js +159 -25
- package/dist/repositories/conversation.js.map +1 -1
- package/dist/repositories/project.d.ts +1 -0
- package/dist/repositories/project.d.ts.map +1 -1
- package/dist/repositories/project.js +5 -1
- package/dist/repositories/project.js.map +1 -1
- package/dist/repositories/settings.js +1 -1
- package/dist/repositories/settings.js.map +1 -1
- package/dist/routes/filesystem.d.ts.map +1 -1
- package/dist/routes/filesystem.js +43 -7
- package/dist/routes/filesystem.js.map +1 -1
- package/dist/routes/index.d.ts.map +1 -1
- package/dist/routes/index.js +22 -0
- package/dist/routes/index.js.map +1 -1
- package/dist/routes/projects.d.ts +2 -0
- package/dist/routes/projects.d.ts.map +1 -1
- package/dist/routes/projects.js +351 -54
- package/dist/routes/projects.js.map +1 -1
- package/dist/services/event-manager.d.ts +8 -0
- package/dist/services/event-manager.d.ts.map +1 -0
- package/dist/services/event-manager.js +20 -0
- package/dist/services/event-manager.js.map +1 -0
- package/dist/services/git-service.d.ts +69 -0
- package/dist/services/git-service.d.ts.map +1 -0
- package/dist/services/git-service.js +288 -0
- package/dist/services/git-service.js.map +1 -0
- package/dist/utils/errors.d.ts +3 -0
- package/dist/utils/errors.d.ts.map +1 -1
- package/dist/utils/errors.js +36 -8
- package/dist/utils/errors.js.map +1 -1
- package/dist/websocket/websocket-server.d.ts +2 -2
- package/dist/websocket/websocket-server.d.ts.map +1 -1
- package/dist/websocket/websocket-server.js +13 -4
- package/dist/websocket/websocket-server.js.map +1 -1
- package/package.json +4 -1
- package/public/css/styles.css +444 -5
- package/public/index.html +448 -86
- package/public/js/app.js +2368 -167
package/README.md
CHANGED
|
@@ -43,9 +43,11 @@ Open your browser at **http://localhost:3000** to access the web UI.
|
|
|
43
43
|
| **Node.js** | 20.0.0 or higher |
|
|
44
44
|
| **Claude Code CLI** | Latest version |
|
|
45
45
|
|
|
46
|
-
### Installing Claude Code CLI
|
|
46
|
+
### Installing and Authenticating Claude Code CLI
|
|
47
47
|
|
|
48
|
-
Before using Claudito,
|
|
48
|
+
Before using Claudito, you must have the Claude Code CLI installed and **logged in**. Claudito works with either:
|
|
49
|
+
- **Claude Pro/Max subscription** (recommended for personal use)
|
|
50
|
+
- **Anthropic API key** (for API-based usage)
|
|
49
51
|
|
|
50
52
|
```bash
|
|
51
53
|
# Install Claude Code CLI (if not already installed)
|
|
@@ -54,10 +56,12 @@ npm install -g @anthropic-ai/claude-code
|
|
|
54
56
|
# Verify installation
|
|
55
57
|
claude --version
|
|
56
58
|
|
|
57
|
-
#
|
|
59
|
+
# Log in to Claude Code (required before using Claudito)
|
|
58
60
|
claude auth
|
|
59
61
|
```
|
|
60
62
|
|
|
63
|
+
> **Important:** Claudito requires an active Claude Code session. Make sure you can run `claude` directly in your terminal before starting Claudito.
|
|
64
|
+
|
|
61
65
|
For more details, see the [Claude Code documentation](https://docs.anthropic.com/en/docs/claude-code).
|
|
62
66
|
|
|
63
67
|
## Installation
|
|
@@ -140,6 +144,7 @@ set PORT=8080 && set HOST=0.0.0.0 && claudito
|
|
|
140
144
|
| `NODE_ENV` | `development` | Environment mode |
|
|
141
145
|
| `LOG_LEVEL` | `info` | Log level (debug/info/warn/error) |
|
|
142
146
|
| `MAX_CONCURRENT_AGENTS` | `3` | Maximum concurrent agents |
|
|
147
|
+
| `DEV_MODE` | `true` (dev) / `false` (prod) | Enable development features |
|
|
143
148
|
|
|
144
149
|
## Features
|
|
145
150
|
|
|
@@ -150,9 +155,10 @@ Chat with Claude in real-time. The agent auto-starts when you send your first me
|
|
|
150
155
|
|
|
151
156
|
- Real-time streaming of Claude's responses
|
|
152
157
|
- See tool usage as it happens (file reads, edits, bash commands)
|
|
153
|
-
- Code diffs with syntax highlighting
|
|
158
|
+
- Code diffs with syntax highlighting and inline change highlighting
|
|
154
159
|
- Send follow-up messages naturally
|
|
155
160
|
- Toggle permission mode (Plan/Accept Edits) at runtime
|
|
161
|
+
- Plan mode with approve/reject/request changes options
|
|
156
162
|
|
|
157
163
|
#### Autonomous Mode
|
|
158
164
|
Runs through ROADMAP.md milestones automatically.
|
|
@@ -161,6 +167,7 @@ Runs through ROADMAP.md milestones automatically.
|
|
|
161
167
|
- Generate roadmaps via Claude
|
|
162
168
|
- Execute tasks sequentially
|
|
163
169
|
- Track completion status
|
|
170
|
+
- Select specific milestones or tasks to run
|
|
164
171
|
|
|
165
172
|
### Project Management
|
|
166
173
|
|
|
@@ -173,20 +180,36 @@ Runs through ROADMAP.md milestones automatically.
|
|
|
173
180
|
|
|
174
181
|
| Feature | Description |
|
|
175
182
|
|---------|-------------|
|
|
176
|
-
| **Tabbed Interface** | Switch between Agent Output
|
|
177
|
-
| **File Browser** | Browse, view, edit, create files and folders |
|
|
183
|
+
| **Tabbed Interface** | Switch between Agent Output, Project Files, and Git |
|
|
184
|
+
| **File Browser** | Browse, view, edit, create, delete files and folders |
|
|
178
185
|
| **Syntax Highlighting** | 30+ languages supported via highlight.js |
|
|
179
186
|
| **Tool Visualization** | See Claude's tool usage with icons and arguments |
|
|
180
|
-
| **Code Diffs** | Side-by-side diff view
|
|
187
|
+
| **Code Diffs** | Side-by-side diff view with word-level inline change highlighting |
|
|
181
188
|
| **Context Monitor** | View token usage and context window utilization |
|
|
182
189
|
| **Task Tracking** | View Claude's current tasks and progress |
|
|
183
190
|
| **Project Optimizations** | Check for CLAUDE.md issues and optimization suggestions |
|
|
184
191
|
| **Font Controls** | Adjust text size with +/- buttons |
|
|
185
192
|
| **Keyboard Shortcuts** | Configurable keybindings (Ctrl+Enter or Enter to send) |
|
|
186
193
|
| **Image Support** | Paste or drag-and-drop images into messages |
|
|
187
|
-
| **Mobile Support** | Responsive design with collapsible sidebar, full-screen file browsing |
|
|
194
|
+
| **Mobile Support** | Responsive design with collapsible sidebar, full-screen file/diff browsing |
|
|
188
195
|
| **Permission Mode Toggle** | Switch between Plan and Accept Edits modes at runtime |
|
|
189
196
|
| **Desktop Notifications** | Get notified when agent needs input (optional) |
|
|
197
|
+
| **Hidden Files Toggle** | Show/hide dotfiles and hidden folders in file browser |
|
|
198
|
+
|
|
199
|
+
### Git Integration
|
|
200
|
+
|
|
201
|
+
Full Git support directly in the UI:
|
|
202
|
+
|
|
203
|
+
| Feature | Description |
|
|
204
|
+
|---------|-------------|
|
|
205
|
+
| **Branch Management** | View, switch, and create branches |
|
|
206
|
+
| **File Staging** | Stage/unstage individual files or entire directories |
|
|
207
|
+
| **Commit** | Write commit messages and commit changes |
|
|
208
|
+
| **Push/Pull** | Sync with remote repositories |
|
|
209
|
+
| **Diff Preview** | Side-by-side diff view with inline word-level highlighting |
|
|
210
|
+
| **Tag Management** | Create and push tags |
|
|
211
|
+
| **Context Menu** | Right-click files/folders for quick actions |
|
|
212
|
+
| **Operation Blocking** | UI blocks during git operations to prevent conflicts |
|
|
190
213
|
|
|
191
214
|
### Real-time Features
|
|
192
215
|
|
|
@@ -194,6 +217,14 @@ Runs through ROADMAP.md milestones automatically.
|
|
|
194
217
|
- **Conversation Stats**: Duration, message count, tool calls, tokens
|
|
195
218
|
- **Resource Monitor**: Running and queued agent counts
|
|
196
219
|
- **Context Usage**: Token usage persisted even when agent is stopped
|
|
220
|
+
- **Session Recovery**: Automatic recovery when Claude sessions are lost
|
|
221
|
+
|
|
222
|
+
### Diff Visualization
|
|
223
|
+
|
|
224
|
+
- **Side-by-Side View**: Original and modified content displayed side by side
|
|
225
|
+
- **Inline Change Highlighting**: Word-level diff showing exactly what changed within modified lines
|
|
226
|
+
- **Color Coding**: Red for removed, green for added, orange for modified lines
|
|
227
|
+
- **Syntax Highlighting**: Language-aware highlighting preserved in diffs
|
|
197
228
|
|
|
198
229
|
### Additional Features
|
|
199
230
|
|
|
@@ -204,6 +235,8 @@ Runs through ROADMAP.md milestones automatically.
|
|
|
204
235
|
- **Optimizations Check**: Detect missing or oversized CLAUDE.md files
|
|
205
236
|
- **Append System Prompt**: Add custom instructions to Claude's system prompt
|
|
206
237
|
- **Offline Ready**: All assets served locally (no CDN dependencies)
|
|
238
|
+
- **Graceful Shutdown**: Properly stops agents and saves state on exit
|
|
239
|
+
- **PID Tracking**: Tracks agent processes and cleans up orphans on startup
|
|
207
240
|
|
|
208
241
|
## Configuration
|
|
209
242
|
|
|
@@ -338,6 +371,41 @@ GET /api/projects/:id/agent/context # Get context usage
|
|
|
338
371
|
GET /api/projects/:id/roadmap # Get roadmap
|
|
339
372
|
POST /api/projects/:id/roadmap/generate # Generate roadmap
|
|
340
373
|
PUT /api/projects/:id/roadmap # Modify roadmap
|
|
374
|
+
DELETE /api/projects/:id/roadmap/task # Delete a task
|
|
375
|
+
DELETE /api/projects/:id/roadmap/milestone # Delete a milestone
|
|
376
|
+
DELETE /api/projects/:id/roadmap/phase # Delete a phase
|
|
377
|
+
```
|
|
378
|
+
|
|
379
|
+
### Git Operations
|
|
380
|
+
|
|
381
|
+
```
|
|
382
|
+
GET /api/projects/:id/git/status # Get repository status
|
|
383
|
+
GET /api/projects/:id/git/branches # List branches
|
|
384
|
+
POST /api/projects/:id/git/checkout # Switch branch
|
|
385
|
+
POST /api/projects/:id/git/branch # Create branch
|
|
386
|
+
POST /api/projects/:id/git/stage # Stage file(s)
|
|
387
|
+
POST /api/projects/:id/git/stage-all # Stage all changes
|
|
388
|
+
POST /api/projects/:id/git/unstage # Unstage file(s)
|
|
389
|
+
POST /api/projects/:id/git/unstage-all # Unstage all changes
|
|
390
|
+
POST /api/projects/:id/git/discard # Discard changes
|
|
391
|
+
POST /api/projects/:id/git/commit # Commit staged changes
|
|
392
|
+
POST /api/projects/:id/git/push # Push to remote
|
|
393
|
+
POST /api/projects/:id/git/pull # Pull from remote
|
|
394
|
+
GET /api/projects/:id/git/diff # Get file diff
|
|
395
|
+
GET /api/projects/:id/git/tags # List tags
|
|
396
|
+
POST /api/projects/:id/git/tags # Create tag
|
|
397
|
+
POST /api/projects/:id/git/tags/push # Push tag to remote
|
|
398
|
+
```
|
|
399
|
+
|
|
400
|
+
### File System
|
|
401
|
+
|
|
402
|
+
```
|
|
403
|
+
GET /api/fs/drives # List available drives
|
|
404
|
+
GET /api/fs/browse # Browse directory (dirs only)
|
|
405
|
+
GET /api/fs/browse-with-files # Browse with files
|
|
406
|
+
GET /api/fs/read # Read file content
|
|
407
|
+
PUT /api/fs/write # Write file content
|
|
408
|
+
DELETE /api/fs/delete # Delete file or folder
|
|
341
409
|
```
|
|
342
410
|
|
|
343
411
|
### Settings
|
|
@@ -360,7 +428,10 @@ ws.send(JSON.stringify({ type: 'subscribe', projectId: 'your-project-id' }));
|
|
|
360
428
|
// Message types received:
|
|
361
429
|
// - agent_message: Real-time agent output
|
|
362
430
|
// - agent_status: Status changes (running/stopped/error)
|
|
431
|
+
// - agent_waiting: Agent waiting for input (with version for sync)
|
|
363
432
|
// - queue_change: Queue updates
|
|
433
|
+
// - roadmap_message: Roadmap generation output
|
|
434
|
+
// - session_recovery: Session couldn't be resumed, new conversation created
|
|
364
435
|
```
|
|
365
436
|
|
|
366
437
|
## Development
|
|
@@ -5,7 +5,7 @@ import { InstructionGenerator, RoadmapParser } from '../services';
|
|
|
5
5
|
export interface AgentManagerEvents {
|
|
6
6
|
message: (projectId: string, message: AgentMessage) => void;
|
|
7
7
|
status: (projectId: string, status: AgentStatus) => void;
|
|
8
|
-
waitingForInput: (projectId: string, isWaiting: boolean) => void;
|
|
8
|
+
waitingForInput: (projectId: string, isWaiting: boolean, version: number) => void;
|
|
9
9
|
queueChange: (queue: QueuedProject[]) => void;
|
|
10
10
|
milestoneStarted: (projectId: string, milestone: MilestoneRef) => void;
|
|
11
11
|
milestoneCompleted: (projectId: string, milestone: MilestoneRef, reason: string) => void;
|
|
@@ -62,6 +62,16 @@ export interface StartInteractiveAgentOptions {
|
|
|
62
62
|
sessionId?: string;
|
|
63
63
|
permissionMode?: 'acceptEdits' | 'plan';
|
|
64
64
|
}
|
|
65
|
+
export interface FullAgentStatus {
|
|
66
|
+
status: AgentStatus;
|
|
67
|
+
mode: AgentMode | null;
|
|
68
|
+
queued: boolean;
|
|
69
|
+
queuedMessageCount: number;
|
|
70
|
+
isWaitingForInput: boolean;
|
|
71
|
+
waitingVersion: number;
|
|
72
|
+
sessionId: string | null;
|
|
73
|
+
permissionMode: 'acceptEdits' | 'plan' | null;
|
|
74
|
+
}
|
|
65
75
|
export interface AgentManager {
|
|
66
76
|
startAgent(projectId: string, instructions: string): Promise<void>;
|
|
67
77
|
startInteractiveAgent(projectId: string, options?: StartInteractiveAgentOptions): Promise<void>;
|
|
@@ -73,6 +83,7 @@ export interface AgentManager {
|
|
|
73
83
|
isRunning(projectId: string): boolean;
|
|
74
84
|
isQueued(projectId: string): boolean;
|
|
75
85
|
isWaitingForInput(projectId: string): boolean;
|
|
86
|
+
getWaitingVersion(projectId: string): number;
|
|
76
87
|
getResourceStatus(): AgentResourceStatus;
|
|
77
88
|
removeFromQueue(projectId: string): void;
|
|
78
89
|
setMaxConcurrentAgents(max: number): void;
|
|
@@ -86,6 +97,7 @@ export interface AgentManager {
|
|
|
86
97
|
getQueuedMessages(projectId: string): string[];
|
|
87
98
|
removeQueuedMessage(projectId: string, index: number): boolean;
|
|
88
99
|
getSessionId(projectId: string): string | null;
|
|
100
|
+
getFullStatus(projectId: string): FullAgentStatus;
|
|
89
101
|
getTrackedProcesses(): TrackedProcessInfo[];
|
|
90
102
|
cleanupOrphanProcesses(): Promise<OrphanCleanupResult>;
|
|
91
103
|
restartAllRunningAgents(): Promise<void>;
|
|
@@ -120,6 +132,7 @@ export declare class DefaultAgentManager implements AgentManager {
|
|
|
120
132
|
private _maxConcurrentAgents;
|
|
121
133
|
private readonly logger;
|
|
122
134
|
private readonly pidTracker;
|
|
135
|
+
private readonly pendingMessageSaves;
|
|
123
136
|
private readonly listeners;
|
|
124
137
|
constructor(deps: AgentManagerDependencies);
|
|
125
138
|
setMaxConcurrentAgents(max: number): void;
|
|
@@ -139,6 +152,7 @@ export declare class DefaultAgentManager implements AgentManager {
|
|
|
139
152
|
getQueuedMessages(projectId: string): string[];
|
|
140
153
|
removeQueuedMessage(projectId: string, index: number): boolean;
|
|
141
154
|
getSessionId(projectId: string): string | null;
|
|
155
|
+
getFullStatus(projectId: string): FullAgentStatus;
|
|
142
156
|
private runNextMilestone;
|
|
143
157
|
private createMilestoneRef;
|
|
144
158
|
private cleanupLoop;
|
|
@@ -154,6 +168,7 @@ export declare class DefaultAgentManager implements AgentManager {
|
|
|
154
168
|
isRunning(projectId: string): boolean;
|
|
155
169
|
isQueued(projectId: string): boolean;
|
|
156
170
|
isWaitingForInput(projectId: string): boolean;
|
|
171
|
+
getWaitingVersion(projectId: string): number;
|
|
157
172
|
getResourceStatus(): AgentResourceStatus;
|
|
158
173
|
removeFromQueue(projectId: string): void;
|
|
159
174
|
getTrackedProcesses(): TrackedProcessInfo[];
|
|
@@ -162,6 +177,8 @@ export declare class DefaultAgentManager implements AgentManager {
|
|
|
162
177
|
restartAllRunningAgents(): Promise<void>;
|
|
163
178
|
on<K extends keyof AgentManagerEvents>(event: K, listener: AgentManagerEvents[K]): void;
|
|
164
179
|
off<K extends keyof AgentManagerEvents>(event: K, listener: AgentManagerEvents[K]): void;
|
|
180
|
+
private trackMessageSave;
|
|
181
|
+
private flushPendingMessageSaves;
|
|
165
182
|
private setupAgentListeners;
|
|
166
183
|
private handleAgentExit;
|
|
167
184
|
private handleStatusChange;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-manager.d.ts","sourceRoot":"","sources":["../../src/agents/agent-manager.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,WAAW,EAEX,YAAY,EACZ,WAAW,EACX,SAAS,EACT,WAAW,EACX,YAAY,EACZ,gBAAgB,EACjB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAA8B,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACnG,OAAO,EACL,iBAAiB,EAEjB,sBAAsB,EACtB,kBAAkB,EACnB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,oBAAoB,EACpB,aAAa,EAGd,MAAM,aAAa,CAAC;AAGrB,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,KAAK,IAAI,CAAC;IAC5D,MAAM,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,KAAK,IAAI,CAAC;IACzD,eAAe,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-manager.d.ts","sourceRoot":"","sources":["../../src/agents/agent-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,6 +26,7 @@ class DefaultAgentManager {
|
|
|
26
26
|
_maxConcurrentAgents;
|
|
27
27
|
logger;
|
|
28
28
|
pidTracker;
|
|
29
|
+
pendingMessageSaves = new Set();
|
|
29
30
|
listeners = {
|
|
30
31
|
message: new Set(),
|
|
31
32
|
status: new Set(),
|
|
@@ -181,13 +182,26 @@ class DefaultAgentManager {
|
|
|
181
182
|
timestamp: new Date().toISOString(),
|
|
182
183
|
};
|
|
183
184
|
// Save to conversation history (but don't emit - frontend already shows it)
|
|
184
|
-
|
|
185
|
+
const savePromise = this.projectRepository.findById(projectId).then((project) => {
|
|
185
186
|
if (project?.currentConversationId) {
|
|
186
|
-
this.conversationRepository
|
|
187
|
+
return this.conversationRepository
|
|
187
188
|
.addMessage(projectId, project.currentConversationId, message)
|
|
188
|
-
.catch(() => {
|
|
189
|
+
.catch((err) => {
|
|
190
|
+
this.logger.error('Failed to save user message to conversation', {
|
|
191
|
+
projectId,
|
|
192
|
+
conversationId: project.currentConversationId,
|
|
193
|
+
error: err instanceof Error ? err.message : String(err),
|
|
194
|
+
});
|
|
195
|
+
});
|
|
189
196
|
}
|
|
197
|
+
else {
|
|
198
|
+
this.logger.warn('No currentConversationId for project, user message not saved', {
|
|
199
|
+
projectId,
|
|
200
|
+
});
|
|
201
|
+
}
|
|
202
|
+
return Promise.resolve();
|
|
190
203
|
});
|
|
204
|
+
void this.trackMessageSave(savePromise);
|
|
191
205
|
// Build multimodal content if images are provided
|
|
192
206
|
const content = this.buildMultimodalContent(input, images);
|
|
193
207
|
agent.sendInput(content);
|
|
@@ -297,6 +311,19 @@ class DefaultAgentManager {
|
|
|
297
311
|
const agent = this.agents.get(projectId);
|
|
298
312
|
return agent?.sessionId || null;
|
|
299
313
|
}
|
|
314
|
+
getFullStatus(projectId) {
|
|
315
|
+
const agent = this.agents.get(projectId);
|
|
316
|
+
return {
|
|
317
|
+
status: agent?.status || 'stopped',
|
|
318
|
+
mode: agent?.mode || null,
|
|
319
|
+
queued: this.isQueued(projectId),
|
|
320
|
+
queuedMessageCount: agent?.queuedMessageCount || 0,
|
|
321
|
+
isWaitingForInput: agent?.isWaitingForInput || false,
|
|
322
|
+
waitingVersion: agent?.waitingVersion || 0,
|
|
323
|
+
sessionId: agent?.sessionId || null,
|
|
324
|
+
permissionMode: agent?.permissionMode || null,
|
|
325
|
+
};
|
|
326
|
+
}
|
|
300
327
|
async runNextMilestone(projectId) {
|
|
301
328
|
const loopState = this.loopStates.get(projectId);
|
|
302
329
|
const projectLogger = this.logger.withProject(projectId);
|
|
@@ -523,6 +550,12 @@ class DefaultAgentManager {
|
|
|
523
550
|
// Clear the queue as well
|
|
524
551
|
this.queue.length = 0;
|
|
525
552
|
this.emit('queueChange', []);
|
|
553
|
+
// Ensure all pending message saves complete (including findById lookups)
|
|
554
|
+
this.logger.info('Flushing pending message saves...');
|
|
555
|
+
await this.flushPendingMessageSaves();
|
|
556
|
+
// Ensure all pending conversation writes complete before returning
|
|
557
|
+
this.logger.info('Flushing pending conversation writes...');
|
|
558
|
+
await this.conversationRepository.flush();
|
|
526
559
|
this.logger.info('All agents stopped');
|
|
527
560
|
}
|
|
528
561
|
getAgentStatus(projectId) {
|
|
@@ -539,6 +572,10 @@ class DefaultAgentManager {
|
|
|
539
572
|
const agent = this.agents.get(projectId);
|
|
540
573
|
return agent?.isWaitingForInput ?? false;
|
|
541
574
|
}
|
|
575
|
+
getWaitingVersion(projectId) {
|
|
576
|
+
const agent = this.agents.get(projectId);
|
|
577
|
+
return agent?.waitingVersion ?? 0;
|
|
578
|
+
}
|
|
542
579
|
getResourceStatus() {
|
|
543
580
|
return {
|
|
544
581
|
runningCount: this.agents.size,
|
|
@@ -604,6 +641,16 @@ class DefaultAgentManager {
|
|
|
604
641
|
off(event, listener) {
|
|
605
642
|
this.listeners[event].delete(listener);
|
|
606
643
|
}
|
|
644
|
+
trackMessageSave(promise) {
|
|
645
|
+
this.pendingMessageSaves.add(promise);
|
|
646
|
+
void promise.finally(() => this.pendingMessageSaves.delete(promise));
|
|
647
|
+
return promise;
|
|
648
|
+
}
|
|
649
|
+
async flushPendingMessageSaves() {
|
|
650
|
+
while (this.pendingMessageSaves.size > 0) {
|
|
651
|
+
await Promise.all(Array.from(this.pendingMessageSaves));
|
|
652
|
+
}
|
|
653
|
+
}
|
|
607
654
|
setupAgentListeners(agent) {
|
|
608
655
|
const messageListener = (message) => {
|
|
609
656
|
this.emit('message', agent.projectId, message);
|
|
@@ -611,31 +658,50 @@ class DefaultAgentManager {
|
|
|
611
658
|
const loopState = this.loopStates.get(agent.projectId);
|
|
612
659
|
if (loopState?.currentConversationId) {
|
|
613
660
|
// Autonomous mode - use loop state conversation
|
|
614
|
-
this.conversationRepository
|
|
661
|
+
const savePromise = this.conversationRepository
|
|
615
662
|
.addMessage(agent.projectId, loopState.currentConversationId, message)
|
|
616
663
|
.catch(() => { });
|
|
664
|
+
void this.trackMessageSave(savePromise);
|
|
617
665
|
// Save context usage if available
|
|
618
666
|
this.saveContextUsageIfNeeded(agent, loopState.currentConversationId);
|
|
619
667
|
}
|
|
620
668
|
else if (agent.mode === 'interactive') {
|
|
621
669
|
// Interactive mode - use project's current conversation
|
|
622
|
-
|
|
670
|
+
const savePromise = this.projectRepository.findById(agent.projectId).then((project) => {
|
|
623
671
|
if (project?.currentConversationId) {
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
.
|
|
627
|
-
|
|
628
|
-
|
|
672
|
+
const conversationId = project.currentConversationId;
|
|
673
|
+
return this.conversationRepository
|
|
674
|
+
.addMessage(agent.projectId, conversationId, message)
|
|
675
|
+
.then(() => {
|
|
676
|
+
// Save context usage if available
|
|
677
|
+
this.saveContextUsageIfNeeded(agent, conversationId);
|
|
678
|
+
})
|
|
679
|
+
.catch((err) => {
|
|
680
|
+
this.logger.error('Failed to save message to conversation', {
|
|
681
|
+
projectId: agent.projectId,
|
|
682
|
+
conversationId,
|
|
683
|
+
messageType: message.type,
|
|
684
|
+
error: err instanceof Error ? err.message : String(err),
|
|
685
|
+
});
|
|
686
|
+
});
|
|
687
|
+
}
|
|
688
|
+
else {
|
|
689
|
+
this.logger.warn('No currentConversationId for project, message not saved', {
|
|
690
|
+
projectId: agent.projectId,
|
|
691
|
+
messageType: message.type,
|
|
692
|
+
});
|
|
629
693
|
}
|
|
694
|
+
return Promise.resolve();
|
|
630
695
|
});
|
|
696
|
+
void this.trackMessageSave(savePromise);
|
|
631
697
|
}
|
|
632
698
|
};
|
|
633
699
|
const statusListener = (status) => {
|
|
634
700
|
this.emit('status', agent.projectId, status);
|
|
635
701
|
void this.handleStatusChange(agent.projectId, status);
|
|
636
702
|
};
|
|
637
|
-
const waitingListener = (isWaiting) => {
|
|
638
|
-
this.emit('waitingForInput', agent.projectId, isWaiting);
|
|
703
|
+
const waitingListener = ({ isWaiting, version }) => {
|
|
704
|
+
this.emit('waitingForInput', agent.projectId, isWaiting, version);
|
|
639
705
|
};
|
|
640
706
|
const exitListener = (code) => {
|
|
641
707
|
void this.handleAgentExit(agent, code);
|
|
@@ -741,10 +807,12 @@ class DefaultAgentManager {
|
|
|
741
807
|
return;
|
|
742
808
|
}
|
|
743
809
|
// Save to conversation metadata
|
|
744
|
-
this.conversationRepository
|
|
810
|
+
const savePromise = this.conversationRepository
|
|
745
811
|
.updateMetadata(agent.projectId, conversationId, { contextUsage })
|
|
746
812
|
.catch(() => { });
|
|
813
|
+
void this.trackMessageSave(savePromise);
|
|
747
814
|
// Also save to project status for persistence when agent is stopped
|
|
815
|
+
// (this is synchronous internally, no need to track)
|
|
748
816
|
this.projectRepository
|
|
749
817
|
.updateContextUsage(agent.projectId, contextUsage)
|
|
750
818
|
.catch(() => { });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-manager.js","sourceRoot":"","sources":["../../src/agents/agent-manager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agent-manager.js","sourceRoot":"","sources":["../../src/agents/agent-manager.ts"],"names":[],"mappings":"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"}
|