agentgui 1.0.746 → 1.0.748
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/CLAUDE.md +17 -0
- package/database.js +6 -3
- package/lib/ws-handlers-conv.js +9 -1
- package/package.json +1 -1
package/CLAUDE.md
CHANGED
|
@@ -257,6 +257,23 @@ Server broadcasts:
|
|
|
257
257
|
|
|
258
258
|
**WSOptimizer** (`lib/ws-optimizer.js`): Per-client priority queue. High-priority events flush immediately; normal/low batch by latency tier (16ms excellent → 200ms bad). Rate limit: 100 msg/sec — overflow is re-queued (not dropped). No `lastKey` deduplication (was removed — caused valid event drops).
|
|
259
259
|
|
|
260
|
+
### WS RPC Methods (85 total)
|
|
261
|
+
|
|
262
|
+
**agent:** `agent.auth`, `agent.authstat`, `agent.desc`, `agent.get`, `agent.ls`, `agent.models`, `agent.search`, `agent.subagents`, `agent.update`
|
|
263
|
+
**auth:** `auth.configs`, `auth.save`
|
|
264
|
+
**codex:** `codex.complete`, `codex.relay`, `codex.start`, `codex.status`
|
|
265
|
+
**conv:** `conv.cancel`, `conv.chunks`, `conv.chunks.earlier`, `conv.del`, `conv.del.all`, `conv.export`, `conv.full`, `conv.get`, `conv.inject`, `conv.ls`, `conv.new`, `conv.prune`, `conv.run-script`, `conv.scripts`, `conv.search`, `conv.steer`, `conv.stop-script`, `conv.sync`, `conv.tags`, `conv.upd`
|
|
266
|
+
**gemini:** `gemini.complete`, `gemini.relay`, `gemini.start`, `gemini.status`
|
|
267
|
+
**git:** `git.check`, `git.push`
|
|
268
|
+
**msg:** `msg.get`, `msg.ls`, `msg.ls.earlier`, `msg.send`, `msg.stream`
|
|
269
|
+
**q:** `q.del`, `q.ls`, `q.upd`
|
|
270
|
+
**run:** `run.cancel`, `run.del`, `run.get`, `run.new`, `run.resume`, `run.search`, `run.stream`, `run.stream.get`, `run.wait`
|
|
271
|
+
**sess:** `sess.chunks`, `sess.exec`, `sess.get`, `sess.latest`
|
|
272
|
+
**speech:** `speech.download`, `speech.status`
|
|
273
|
+
**thread:** `thread.copy`, `thread.del`, `thread.get`, `thread.history`, `thread.new`, `thread.run.cancel`, `thread.run.steer`, `thread.run.stream`, `thread.run.stream.get`, `thread.search`, `thread.upd`
|
|
274
|
+
**tools:** `tools.list`
|
|
275
|
+
**util:** `clone`, `discover.claude`, `folders`, `home`, `import.claude`, `voice.cache`, `voice.generate`, `voices`, `ws.stats`
|
|
276
|
+
|
|
260
277
|
## Steering
|
|
261
278
|
|
|
262
279
|
Steering stops the running agent (SIGKILL) and immediately resumes with the new message:
|
package/database.js
CHANGED
|
@@ -422,7 +422,8 @@ try {
|
|
|
422
422
|
isStreaming: 'INTEGER DEFAULT 0',
|
|
423
423
|
model: 'TEXT',
|
|
424
424
|
subAgent: 'TEXT',
|
|
425
|
-
pinned: 'INTEGER DEFAULT 0'
|
|
425
|
+
pinned: 'INTEGER DEFAULT 0',
|
|
426
|
+
tags: 'TEXT'
|
|
426
427
|
};
|
|
427
428
|
|
|
428
429
|
let addedColumns = false;
|
|
@@ -682,11 +683,12 @@ export const queries = {
|
|
|
682
683
|
const model = data.model !== undefined ? data.model : conv.model;
|
|
683
684
|
const subAgent = data.subAgent !== undefined ? data.subAgent : conv.subAgent;
|
|
684
685
|
const pinned = data.pinned !== undefined ? (data.pinned ? 1 : 0) : (conv.pinned || 0);
|
|
686
|
+
const tags = data.tags !== undefined ? (Array.isArray(data.tags) ? data.tags.join(',') : data.tags) : (conv.tags || null);
|
|
685
687
|
|
|
686
688
|
const stmt = prep(
|
|
687
|
-
`UPDATE conversations SET title = ?, status = ?, agentId = ?, agentType = ?, model = ?, subAgent = ?, pinned = ?, updated_at = ? WHERE id = ?`
|
|
689
|
+
`UPDATE conversations SET title = ?, status = ?, agentId = ?, agentType = ?, model = ?, subAgent = ?, pinned = ?, tags = ?, updated_at = ? WHERE id = ?`
|
|
688
690
|
);
|
|
689
|
-
stmt.run(title, status, agentId, agentType, model, subAgent, pinned, now, id);
|
|
691
|
+
stmt.run(title, status, agentId, agentType, model, subAgent, pinned, tags, now, id);
|
|
690
692
|
|
|
691
693
|
return {
|
|
692
694
|
...conv,
|
|
@@ -697,6 +699,7 @@ export const queries = {
|
|
|
697
699
|
model,
|
|
698
700
|
subAgent,
|
|
699
701
|
pinned,
|
|
702
|
+
tags,
|
|
700
703
|
updated_at: now
|
|
701
704
|
};
|
|
702
705
|
},
|
package/lib/ws-handlers-conv.js
CHANGED
|
@@ -22,11 +22,19 @@ export function register(router, deps) {
|
|
|
22
22
|
getJsonlWatcher = () => null } = deps;
|
|
23
23
|
|
|
24
24
|
router.handle('conv.ls', () => {
|
|
25
|
-
|
|
25
|
+
let conversations = queries.getConversationsList();
|
|
26
26
|
for (const c of conversations) { if (c.isStreaming && !execMachine.isActive(c.id)) c.isStreaming = 0; }
|
|
27
|
+
if (p.tag) conversations = conversations.filter(c => c.tags && c.tags.split(',').includes(p.tag));
|
|
27
28
|
return { conversations };
|
|
28
29
|
});
|
|
29
30
|
|
|
31
|
+
router.handle('conv.tags', () => {
|
|
32
|
+
const convs = queries.getConversationsList();
|
|
33
|
+
const tagSet = new Set();
|
|
34
|
+
for (const c of convs) { if (c.tags) c.tags.split(',').forEach(t => { if (t.trim()) tagSet.add(t.trim()); }); }
|
|
35
|
+
return { tags: [...tagSet].sort() };
|
|
36
|
+
});
|
|
37
|
+
|
|
30
38
|
router.handle('conv.new', (p) => {
|
|
31
39
|
p = validate(ConvNewSchema, p);
|
|
32
40
|
const wd = p.workingDirectory ? path.resolve(expandTilde(p.workingDirectory)) : null;
|