@dotsetlabs/dotclaw 1.3.0 → 1.5.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 +9 -0
- package/config-examples/runtime.json +106 -3
- package/container/agent-runner/package-lock.json +2 -2
- package/container/agent-runner/package.json +1 -1
- package/container/agent-runner/src/agent-config.ts +20 -2
- package/container/agent-runner/src/container-protocol.ts +11 -0
- package/container/agent-runner/src/index.ts +128 -11
- package/container/agent-runner/src/tools.ts +84 -5
- package/dist/agent-context.d.ts +5 -0
- package/dist/agent-context.d.ts.map +1 -1
- package/dist/agent-context.js +19 -8
- package/dist/agent-context.js.map +1 -1
- package/dist/agent-execution.d.ts +6 -0
- package/dist/agent-execution.d.ts.map +1 -1
- package/dist/agent-execution.js +61 -4
- package/dist/agent-execution.js.map +1 -1
- package/dist/background-job-classifier.d.ts +4 -0
- package/dist/background-job-classifier.d.ts.map +1 -1
- package/dist/background-job-classifier.js +36 -15
- package/dist/background-job-classifier.js.map +1 -1
- package/dist/background-jobs.d.ts.map +1 -1
- package/dist/background-jobs.js +81 -4
- package/dist/background-jobs.js.map +1 -1
- package/dist/cli.js +343 -11
- package/dist/cli.js.map +1 -1
- package/dist/config.d.ts +0 -2
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +0 -3
- package/dist/config.js.map +1 -1
- package/dist/container-protocol.d.ts +11 -0
- package/dist/container-protocol.d.ts.map +1 -1
- package/dist/container-runner.d.ts.map +1 -1
- package/dist/container-runner.js +9 -1
- package/dist/container-runner.js.map +1 -1
- package/dist/dashboard.d.ts +5 -0
- package/dist/dashboard.d.ts.map +1 -1
- package/dist/dashboard.js +58 -8
- package/dist/dashboard.js.map +1 -1
- package/dist/db.d.ts +11 -0
- package/dist/db.d.ts.map +1 -1
- package/dist/db.js +36 -0
- package/dist/db.js.map +1 -1
- package/dist/index.js +300 -37
- package/dist/index.js.map +1 -1
- package/dist/json-helpers.d.ts +6 -0
- package/dist/json-helpers.d.ts.map +1 -0
- package/dist/json-helpers.js +17 -0
- package/dist/json-helpers.js.map +1 -0
- package/dist/logger.d.ts +0 -1
- package/dist/logger.d.ts.map +1 -1
- package/dist/logger.js +1 -1
- package/dist/logger.js.map +1 -1
- package/dist/metrics.d.ts +3 -0
- package/dist/metrics.d.ts.map +1 -1
- package/dist/metrics.js +35 -1
- package/dist/metrics.js.map +1 -1
- package/dist/planner-probe.d.ts +14 -0
- package/dist/planner-probe.d.ts.map +1 -0
- package/dist/planner-probe.js +97 -0
- package/dist/planner-probe.js.map +1 -0
- package/dist/progress.d.ts +27 -0
- package/dist/progress.d.ts.map +1 -1
- package/dist/progress.js +151 -0
- package/dist/progress.js.map +1 -1
- package/dist/request-router.d.ts +34 -0
- package/dist/request-router.d.ts.map +1 -0
- package/dist/request-router.js +148 -0
- package/dist/request-router.js.map +1 -0
- package/dist/runtime-config.d.ts +67 -0
- package/dist/runtime-config.d.ts.map +1 -1
- package/dist/runtime-config.js +177 -14
- package/dist/runtime-config.js.map +1 -1
- package/dist/task-scheduler.d.ts.map +1 -1
- package/dist/task-scheduler.js +56 -9
- package/dist/task-scheduler.js.map +1 -1
- package/dist/trace-writer.d.ts +1 -0
- package/dist/trace-writer.d.ts.map +1 -1
- package/dist/trace-writer.js.map +1 -1
- package/package.json +1 -1
package/dist/db.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
|
package/dist/db.js
CHANGED
|
@@ -379,6 +379,42 @@ export function createBackgroundJob(job) {
|
|
|
379
379
|
export function getBackgroundJobById(id) {
|
|
380
380
|
return db.prepare('SELECT * FROM background_jobs WHERE id = ?').get(id);
|
|
381
381
|
}
|
|
382
|
+
export function getBackgroundJobQueuePosition(params) {
|
|
383
|
+
const job = getBackgroundJobById(params.jobId);
|
|
384
|
+
if (!job)
|
|
385
|
+
return null;
|
|
386
|
+
const groupClause = params.groupFolder ? 'AND group_folder = ?' : '';
|
|
387
|
+
const groupArgs = params.groupFolder ? [params.groupFolder] : [];
|
|
388
|
+
const aheadRow = db.prepare(`
|
|
389
|
+
SELECT COUNT(*) as count
|
|
390
|
+
FROM background_jobs
|
|
391
|
+
WHERE status = 'queued'
|
|
392
|
+
${groupClause}
|
|
393
|
+
AND (priority > ? OR (priority = ? AND created_at < ?))
|
|
394
|
+
`).get(...groupArgs, job.priority ?? 0, job.priority ?? 0, job.created_at);
|
|
395
|
+
const totalRow = db.prepare(`
|
|
396
|
+
SELECT COUNT(*) as count
|
|
397
|
+
FROM background_jobs
|
|
398
|
+
WHERE status = 'queued'
|
|
399
|
+
${groupClause}
|
|
400
|
+
`).get(...groupArgs);
|
|
401
|
+
const ahead = aheadRow?.count || 0;
|
|
402
|
+
const total = totalRow?.count || 0;
|
|
403
|
+
return { position: ahead + 1, total };
|
|
404
|
+
}
|
|
405
|
+
export function getBackgroundJobQueueDepth(params = {}) {
|
|
406
|
+
const statuses = params.includeRunning ? ['queued', 'running'] : ['queued'];
|
|
407
|
+
const placeholders = statuses.map(() => '?').join(', ');
|
|
408
|
+
const groupClause = params.groupFolder ? 'AND group_folder = ?' : '';
|
|
409
|
+
const args = params.groupFolder ? [...statuses, params.groupFolder] : statuses;
|
|
410
|
+
const row = db.prepare(`
|
|
411
|
+
SELECT COUNT(*) as count
|
|
412
|
+
FROM background_jobs
|
|
413
|
+
WHERE status IN (${placeholders})
|
|
414
|
+
${groupClause}
|
|
415
|
+
`).get(...args);
|
|
416
|
+
return row?.count || 0;
|
|
417
|
+
}
|
|
382
418
|
export function listBackgroundJobs(params = {}) {
|
|
383
419
|
const clauses = [];
|
|
384
420
|
const values = [];
|
package/dist/db.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.js","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"db.js","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -6,7 +6,7 @@ import path from 'path';
|
|
|
6
6
|
import { DATA_DIR, MAIN_GROUP_FOLDER, GROUPS_DIR, IPC_POLL_INTERVAL, TIMEZONE, CONTAINER_MODE, WARM_START_ENABLED, ENV_PATH } from './config.js';
|
|
7
7
|
// Load .env from the canonical location (~/.dotclaw/.env)
|
|
8
8
|
dotenv.config({ path: ENV_PATH });
|
|
9
|
-
import { initDatabase, storeMessage, upsertChat, getMessagesSinceCursor, getChatState, updateChatState, createTask, updateTask, deleteTask, getTaskById, getAllGroupSessions, setGroupSession, deleteGroupSession, pauseTasksForGroup, linkMessageToTrace, getTraceIdForMessage, recordUserFeedback } from './db.js';
|
|
9
|
+
import { initDatabase, storeMessage, upsertChat, getMessagesSinceCursor, getChatState, updateChatState, createTask, updateTask, deleteTask, getTaskById, getAllGroupSessions, setGroupSession, deleteGroupSession, pauseTasksForGroup, getBackgroundJobQueuePosition, getBackgroundJobQueueDepth, linkMessageToTrace, getTraceIdForMessage, recordUserFeedback } from './db.js';
|
|
10
10
|
import { startSchedulerLoop, runTaskNow } from './task-scheduler.js';
|
|
11
11
|
import { startBackgroundJobLoop, spawnBackgroundJob, getBackgroundJobStatus, listBackgroundJobsForGroup, cancelBackgroundJob, recordBackgroundJobUpdate } from './background-jobs.js';
|
|
12
12
|
import { loadJson, saveJson, isSafeGroupFolder } from './utils.js';
|
|
@@ -14,10 +14,10 @@ import { writeTrace } from './trace-writer.js';
|
|
|
14
14
|
import { formatTelegramMessage, TELEGRAM_PARSE_MODE } from './telegram-format.js';
|
|
15
15
|
import { initMemoryStore, getMemoryStats, upsertMemoryItems, searchMemories, listMemories, forgetMemories, cleanupExpiredMemories } from './memory-store.js';
|
|
16
16
|
import { startEmbeddingWorker } from './memory-embeddings.js';
|
|
17
|
-
import {
|
|
17
|
+
import { createProgressManager, DEFAULT_PROGRESS_MESSAGES, DEFAULT_PROGRESS_STAGES, formatProgressWithPlan, formatPlanStepList } from './progress.js';
|
|
18
18
|
import { parseAdminCommand } from './admin-commands.js';
|
|
19
19
|
import { loadModelRegistry, saveModelRegistry } from './model-registry.js';
|
|
20
|
-
import { startMetricsServer, recordMessage, recordError } from './metrics.js';
|
|
20
|
+
import { startMetricsServer, recordMessage, recordError, recordRoutingDecision, recordStageLatency } from './metrics.js';
|
|
21
21
|
import { startMaintenanceLoop } from './maintenance.js';
|
|
22
22
|
import { warmGroupContainer, startDaemonHealthCheckLoop } from './container-runner.js';
|
|
23
23
|
import { loadRuntimeConfig } from './runtime-config.js';
|
|
@@ -26,6 +26,8 @@ import { logger } from './logger.js';
|
|
|
26
26
|
import { startDashboard, setTelegramConnected, setLastMessageTime, setMessageQueueDepth } from './dashboard.js';
|
|
27
27
|
import { humanizeError } from './error-messages.js';
|
|
28
28
|
import { classifyBackgroundJob } from './background-job-classifier.js';
|
|
29
|
+
import { routeRequest, routePrompt } from './request-router.js';
|
|
30
|
+
import { probePlanner } from './planner-probe.js';
|
|
29
31
|
const runtime = loadRuntimeConfig();
|
|
30
32
|
function buildTriggerRegex(pattern) {
|
|
31
33
|
if (!pattern)
|
|
@@ -146,13 +148,6 @@ const TELEGRAM_STREAM_MIN_CHARS = runtime.host.telegram.streamMinChars;
|
|
|
146
148
|
const MEMORY_RECALL_MAX_RESULTS = runtime.host.memory.recall.maxResults;
|
|
147
149
|
const MEMORY_RECALL_MAX_TOKENS = runtime.host.memory.recall.maxTokens;
|
|
148
150
|
const INPUT_MESSAGE_MAX_CHARS = runtime.host.telegram.inputMessageMaxChars;
|
|
149
|
-
const PROGRESS_ENABLED = runtime.host.progress.enabled;
|
|
150
|
-
const PROGRESS_INITIAL_MS = runtime.host.progress.initialMs;
|
|
151
|
-
const PROGRESS_INTERVAL_MS = runtime.host.progress.intervalMs;
|
|
152
|
-
const PROGRESS_MAX_UPDATES = runtime.host.progress.maxUpdates;
|
|
153
|
-
const PROGRESS_MESSAGES = runtime.host.progress.messages.length > 0
|
|
154
|
-
? runtime.host.progress.messages
|
|
155
|
-
: DEFAULT_PROGRESS_MESSAGES;
|
|
156
151
|
const HEARTBEAT_ENABLED = runtime.host.heartbeat.enabled;
|
|
157
152
|
const HEARTBEAT_INTERVAL_MS = runtime.host.heartbeat.intervalMs;
|
|
158
153
|
const HEARTBEAT_GROUP_FOLDER = (runtime.host.heartbeat.groupFolder || MAIN_GROUP_FOLDER).trim() || MAIN_GROUP_FOLDER;
|
|
@@ -176,6 +171,64 @@ let registeredGroups = {};
|
|
|
176
171
|
const TELEGRAM_MAX_MESSAGE_LENGTH = 4000;
|
|
177
172
|
const TELEGRAM_SEND_DELAY_MS = 250;
|
|
178
173
|
const messageQueues = new Map();
|
|
174
|
+
const activeRuns = new Map();
|
|
175
|
+
function isCancelMessage(content) {
|
|
176
|
+
if (!content)
|
|
177
|
+
return false;
|
|
178
|
+
const normalized = content.trim().toLowerCase();
|
|
179
|
+
return normalized === 'cancel'
|
|
180
|
+
|| normalized === 'stop'
|
|
181
|
+
|| normalized === 'abort'
|
|
182
|
+
|| normalized === 'cancel request'
|
|
183
|
+
|| normalized === 'stop request';
|
|
184
|
+
}
|
|
185
|
+
function inferProgressStage(params) {
|
|
186
|
+
const content = params.content.toLowerCase();
|
|
187
|
+
const tools = params.plannerTools.map(tool => tool.toLowerCase());
|
|
188
|
+
const hasWebTool = tools.some(tool => tool.includes('web') || tool.includes('search') || tool.includes('fetch'));
|
|
189
|
+
const hasCodeTool = tools.some(tool => tool.includes('bash') || tool.includes('edit') || tool.includes('write') || tool.includes('git'));
|
|
190
|
+
if (params.enablePlanner)
|
|
191
|
+
return 'planning';
|
|
192
|
+
if (hasWebTool || /research|search|browse|web|site|docs/.test(content))
|
|
193
|
+
return 'searching';
|
|
194
|
+
if (hasCodeTool || /build|code|implement|refactor|fix|debug/.test(content))
|
|
195
|
+
return 'coding';
|
|
196
|
+
return 'drafting';
|
|
197
|
+
}
|
|
198
|
+
function estimateForegroundMs(params) {
|
|
199
|
+
if (typeof params.routing.estimatedMinutes === 'number' && Number.isFinite(params.routing.estimatedMinutes)) {
|
|
200
|
+
return Math.max(1000, params.routing.estimatedMinutes * 60_000);
|
|
201
|
+
}
|
|
202
|
+
const baseChars = params.content.length;
|
|
203
|
+
if (baseChars === 0)
|
|
204
|
+
return null;
|
|
205
|
+
const stepFactor = params.plannerSteps.length > 0 ? params.plannerSteps.length * 6000 : 0;
|
|
206
|
+
const toolFactor = params.plannerTools.length > 0 ? params.plannerTools.length * 8000 : 0;
|
|
207
|
+
const lengthFactor = Math.min(60_000, Math.max(3000, Math.round(baseChars / 3)));
|
|
208
|
+
const profileFactor = params.routing.profile === 'deep' ? 1.4 : 1;
|
|
209
|
+
return Math.round((lengthFactor + stepFactor + toolFactor) * profileFactor);
|
|
210
|
+
}
|
|
211
|
+
function inferPlanStepIndex(stage, totalSteps) {
|
|
212
|
+
if (!Number.isFinite(totalSteps) || totalSteps <= 0)
|
|
213
|
+
return null;
|
|
214
|
+
const normalized = stage.trim().toLowerCase();
|
|
215
|
+
if (!normalized)
|
|
216
|
+
return 1;
|
|
217
|
+
switch (normalized) {
|
|
218
|
+
case 'planning':
|
|
219
|
+
return 1;
|
|
220
|
+
case 'searching':
|
|
221
|
+
return Math.min(2, totalSteps);
|
|
222
|
+
case 'coding':
|
|
223
|
+
return Math.min(Math.max(2, Math.ceil(totalSteps * 0.6)), totalSteps);
|
|
224
|
+
case 'drafting':
|
|
225
|
+
return Math.min(Math.max(2, Math.ceil(totalSteps * 0.8)), totalSteps);
|
|
226
|
+
case 'finalizing':
|
|
227
|
+
return totalSteps;
|
|
228
|
+
default:
|
|
229
|
+
return 1;
|
|
230
|
+
}
|
|
231
|
+
}
|
|
179
232
|
const draftSessions = new Map();
|
|
180
233
|
function parseTelegramStreamMode(value) {
|
|
181
234
|
const normalized = value.trim().toLowerCase();
|
|
@@ -566,6 +619,17 @@ async function finalizeStreamedMessage(msg, draftId, text) {
|
|
|
566
619
|
clearDraftSession(msg.chatId, draftId);
|
|
567
620
|
}
|
|
568
621
|
function enqueueMessage(msg) {
|
|
622
|
+
if (isCancelMessage(msg.content)) {
|
|
623
|
+
const controller = activeRuns.get(msg.chatId);
|
|
624
|
+
if (controller) {
|
|
625
|
+
controller.abort();
|
|
626
|
+
activeRuns.delete(msg.chatId);
|
|
627
|
+
void sendMessage(msg.chatId, 'Canceled the current request.', { messageThreadId: msg.messageThreadId });
|
|
628
|
+
return;
|
|
629
|
+
}
|
|
630
|
+
void sendMessage(msg.chatId, 'There is no active request to cancel.', { messageThreadId: msg.messageThreadId });
|
|
631
|
+
return;
|
|
632
|
+
}
|
|
569
633
|
const existing = messageQueues.get(msg.chatId);
|
|
570
634
|
if (existing) {
|
|
571
635
|
existing.pendingMessage = msg;
|
|
@@ -641,6 +705,20 @@ async function processMessage(msg) {
|
|
|
641
705
|
${lines.join('\n')}
|
|
642
706
|
</messages>`;
|
|
643
707
|
const lastMessage = missedMessages[missedMessages.length - 1];
|
|
708
|
+
const routingStartedAt = Date.now();
|
|
709
|
+
const routingDecision = routeRequest({
|
|
710
|
+
prompt,
|
|
711
|
+
lastMessage
|
|
712
|
+
});
|
|
713
|
+
recordRoutingDecision(routingDecision.profile);
|
|
714
|
+
const routerMs = Date.now() - routingStartedAt;
|
|
715
|
+
recordStageLatency('router', routerMs, 'telegram');
|
|
716
|
+
logger.info({
|
|
717
|
+
chatId: msg.chatId,
|
|
718
|
+
profile: routingDecision.profile,
|
|
719
|
+
reason: routingDecision.reason,
|
|
720
|
+
shouldBackground: routingDecision.shouldBackground
|
|
721
|
+
}, 'Routing decision');
|
|
644
722
|
const traceBase = createTraceBase({
|
|
645
723
|
chatId: msg.chatId,
|
|
646
724
|
groupFolder: group.folder,
|
|
@@ -662,28 +740,65 @@ ${lines.join('\n')}
|
|
|
662
740
|
return false;
|
|
663
741
|
return /timed out|timeout/i.test(value);
|
|
664
742
|
};
|
|
665
|
-
const
|
|
666
|
-
|
|
743
|
+
const shouldPlannerProbe = () => {
|
|
744
|
+
const config = runtime.host.routing.plannerProbe;
|
|
745
|
+
if (!config.enabled)
|
|
746
|
+
return false;
|
|
747
|
+
if (routingDecision.profile === 'fast' || routingDecision.shouldBackground)
|
|
748
|
+
return false;
|
|
749
|
+
const contentLength = lastMessage?.content?.length || 0;
|
|
750
|
+
return contentLength >= config.minChars;
|
|
751
|
+
};
|
|
752
|
+
const maybeAutoSpawn = async (reason, detail, overrides) => {
|
|
753
|
+
if (!BACKGROUND_JOBS_ENABLED)
|
|
754
|
+
return false;
|
|
755
|
+
if (reason !== 'router' && !AUTO_SPAWN_ENABLED)
|
|
667
756
|
return false;
|
|
668
757
|
if (reason === 'timeout' && !AUTO_SPAWN_ON_TIMEOUT)
|
|
669
758
|
return false;
|
|
670
759
|
if (reason === 'tool_limit' && !AUTO_SPAWN_ON_TOOL_LIMIT)
|
|
671
760
|
return false;
|
|
761
|
+
const tags = ['auto-spawn', reason, `profile:${routingDecision.profile}`];
|
|
762
|
+
if (overrides?.tags && overrides.tags.length > 0) {
|
|
763
|
+
tags.push(...overrides.tags);
|
|
764
|
+
}
|
|
765
|
+
if (routingDecision.estimatedMinutes) {
|
|
766
|
+
tags.push(`eta:${routingDecision.estimatedMinutes}`);
|
|
767
|
+
}
|
|
768
|
+
const estimatedMs = typeof routingDecision.estimatedMinutes === 'number'
|
|
769
|
+
? routingDecision.estimatedMinutes * 60_000
|
|
770
|
+
: null;
|
|
771
|
+
const computedTimeoutMs = estimatedMs
|
|
772
|
+
? Math.min(runtime.host.backgroundJobs.maxRuntimeMs, Math.max(5 * 60_000, Math.round(estimatedMs * 2)))
|
|
773
|
+
: undefined;
|
|
672
774
|
const result = spawnBackgroundJob({
|
|
673
775
|
prompt,
|
|
674
776
|
groupFolder: group.folder,
|
|
675
777
|
chatJid: msg.chatId,
|
|
676
778
|
contextMode: 'group',
|
|
677
|
-
tags
|
|
779
|
+
tags,
|
|
678
780
|
parentTraceId: traceBase.trace_id,
|
|
679
|
-
parentMessageId: msg.messageId
|
|
781
|
+
parentMessageId: msg.messageId,
|
|
782
|
+
modelOverride: overrides?.modelOverride ?? routingDecision.modelOverride,
|
|
783
|
+
maxToolSteps: overrides?.maxToolSteps ?? routingDecision.maxToolSteps,
|
|
784
|
+
toolAllow: routingDecision.toolAllow,
|
|
785
|
+
toolDeny: routingDecision.toolDeny,
|
|
786
|
+
timeoutMs: overrides?.timeoutMs ?? computedTimeoutMs
|
|
680
787
|
});
|
|
681
788
|
if (!result.ok || !result.jobId) {
|
|
682
789
|
logger.warn({ chatId: msg.chatId, reason, error: result.error }, 'Auto-spawn background job failed');
|
|
683
790
|
return false;
|
|
684
791
|
}
|
|
792
|
+
const queuePosition = getBackgroundJobQueuePosition({ jobId: result.jobId, groupFolder: group.folder });
|
|
793
|
+
const eta = routingDecision.estimatedMinutes ? `${routingDecision.estimatedMinutes} min` : null;
|
|
685
794
|
const detailLine = detail ? `\n\nReason: ${detail}` : '';
|
|
686
|
-
|
|
795
|
+
const queueLine = queuePosition ? `\n\nQueue position: ${queuePosition.position} of ${queuePosition.total}` : '';
|
|
796
|
+
const etaLine = eta ? `\n\nEstimated time: ${eta}` : '';
|
|
797
|
+
const planPreview = plannerProbeSteps.length > 0
|
|
798
|
+
? formatPlanStepList({ steps: plannerProbeSteps, currentStep: 1, maxSteps: 4 })
|
|
799
|
+
: '';
|
|
800
|
+
const planLine = planPreview ? `\n\nPlanned steps:\n${planPreview}` : '';
|
|
801
|
+
await sendMessage(msg.chatId, `Queued this as background job ${result.jobId}. I'll report back when it's done. You can keep chatting while it runs.${queueLine}${etaLine}${detailLine}${planLine}`, { messageThreadId: msg.messageThreadId });
|
|
687
802
|
if (lastMessage) {
|
|
688
803
|
updateChatState(msg.chatId, lastMessage.timestamp, lastMessage.id);
|
|
689
804
|
}
|
|
@@ -692,14 +807,58 @@ ${lines.join('\n')}
|
|
|
692
807
|
}
|
|
693
808
|
return true;
|
|
694
809
|
};
|
|
695
|
-
|
|
810
|
+
let plannerProbeTools = [];
|
|
811
|
+
let plannerProbeSteps = [];
|
|
812
|
+
let plannerProbeMs = null;
|
|
813
|
+
if (shouldPlannerProbe() && lastMessage) {
|
|
814
|
+
const probeStarted = Date.now();
|
|
815
|
+
const probeResult = await probePlanner({
|
|
816
|
+
lastMessage,
|
|
817
|
+
recentMessages: missedMessages
|
|
818
|
+
});
|
|
819
|
+
plannerProbeMs = Date.now() - probeStarted;
|
|
820
|
+
recordStageLatency('planner_probe', plannerProbeMs, 'telegram');
|
|
821
|
+
if (probeResult.steps.length > 0)
|
|
822
|
+
plannerProbeSteps = probeResult.steps;
|
|
823
|
+
if (probeResult.tools.length > 0)
|
|
824
|
+
plannerProbeTools = probeResult.tools;
|
|
825
|
+
logger.info({
|
|
826
|
+
chatId: msg.chatId,
|
|
827
|
+
shouldBackground: probeResult.shouldBackground,
|
|
828
|
+
steps: probeResult.steps.length,
|
|
829
|
+
tools: probeResult.tools.length,
|
|
830
|
+
latencyMs: probeResult.latencyMs,
|
|
831
|
+
model: probeResult.model,
|
|
832
|
+
error: probeResult.error
|
|
833
|
+
}, 'Planner probe decision');
|
|
834
|
+
if (probeResult.shouldBackground) {
|
|
835
|
+
const autoSpawned = await maybeAutoSpawn('planner', 'planner probe predicted multi-step work');
|
|
836
|
+
if (autoSpawned)
|
|
837
|
+
return true;
|
|
838
|
+
}
|
|
839
|
+
}
|
|
840
|
+
if (routingDecision.shouldBackground) {
|
|
841
|
+
const autoSpawned = await maybeAutoSpawn('router', routingDecision.reason);
|
|
842
|
+
if (autoSpawned) {
|
|
843
|
+
return true;
|
|
844
|
+
}
|
|
845
|
+
}
|
|
846
|
+
let classifierMs = null;
|
|
847
|
+
if (AUTO_SPAWN_ENABLED && AUTO_SPAWN_CLASSIFIER_ENABLED && lastMessage && routingDecision.shouldRunClassifier) {
|
|
696
848
|
try {
|
|
849
|
+
const queueDepth = getBackgroundJobQueueDepth({ groupFolder: group.folder });
|
|
697
850
|
const classifierResult = await classifyBackgroundJob({
|
|
698
851
|
lastMessage,
|
|
699
852
|
recentMessages: missedMessages,
|
|
700
853
|
isGroup: msg.isGroup,
|
|
701
|
-
chatType: msg.chatType
|
|
854
|
+
chatType: msg.chatType,
|
|
855
|
+
queueDepth,
|
|
856
|
+
metricsSource: 'telegram'
|
|
702
857
|
});
|
|
858
|
+
if (classifierResult.latencyMs) {
|
|
859
|
+
classifierMs = classifierResult.latencyMs;
|
|
860
|
+
recordStageLatency('classifier', classifierResult.latencyMs, 'telegram');
|
|
861
|
+
}
|
|
703
862
|
logger.info({
|
|
704
863
|
chatId: msg.chatId,
|
|
705
864
|
decision: classifierResult.shouldBackground,
|
|
@@ -710,7 +869,11 @@ ${lines.join('\n')}
|
|
|
710
869
|
error: classifierResult.error
|
|
711
870
|
}, 'Background job classifier decision');
|
|
712
871
|
if (classifierResult.shouldBackground) {
|
|
713
|
-
const
|
|
872
|
+
const estimated = classifierResult.estimatedMinutes;
|
|
873
|
+
if (typeof estimated === 'number' && Number.isFinite(estimated) && estimated > 0) {
|
|
874
|
+
routingDecision.estimatedMinutes = Math.round(estimated);
|
|
875
|
+
}
|
|
876
|
+
const autoSpawned = await maybeAutoSpawn('classifier', classifierResult.reason);
|
|
714
877
|
if (autoSpawned) {
|
|
715
878
|
return true;
|
|
716
879
|
}
|
|
@@ -720,17 +883,76 @@ ${lines.join('\n')}
|
|
|
720
883
|
logger.warn({ chatId: msg.chatId, err }, 'Background job classifier failed');
|
|
721
884
|
}
|
|
722
885
|
}
|
|
723
|
-
const
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
886
|
+
const predictedStage = inferProgressStage({
|
|
887
|
+
content: lastMessage?.content || prompt,
|
|
888
|
+
plannerTools: plannerProbeTools,
|
|
889
|
+
plannerSteps: plannerProbeSteps,
|
|
890
|
+
enablePlanner: routingDecision.enablePlanner
|
|
891
|
+
});
|
|
892
|
+
const predictedMs = estimateForegroundMs({
|
|
893
|
+
content: lastMessage?.content || prompt,
|
|
894
|
+
routing: routingDecision,
|
|
895
|
+
plannerSteps: plannerProbeSteps,
|
|
896
|
+
plannerTools: plannerProbeTools
|
|
897
|
+
});
|
|
898
|
+
const planStepIndex = inferPlanStepIndex(predictedStage, plannerProbeSteps.length);
|
|
899
|
+
const progressManager = createProgressManager({
|
|
900
|
+
enabled: routingDecision.progress.enabled && !streamingEnabled,
|
|
901
|
+
initialDelayMs: routingDecision.progress.initialMs,
|
|
902
|
+
intervalMs: routingDecision.progress.intervalMs,
|
|
903
|
+
maxUpdates: routingDecision.progress.maxUpdates,
|
|
904
|
+
messages: routingDecision.progress.messages.length > 0
|
|
905
|
+
? routingDecision.progress.messages
|
|
906
|
+
: DEFAULT_PROGRESS_MESSAGES,
|
|
907
|
+
stageMessages: DEFAULT_PROGRESS_STAGES,
|
|
908
|
+
stageThrottleMs: 20_000,
|
|
729
909
|
send: async (text) => { await sendMessage(msg.chatId, text, { messageThreadId: msg.messageThreadId }); },
|
|
730
910
|
onError: (err) => logger.debug({ chatId: msg.chatId, err }, 'Failed to send progress update')
|
|
731
911
|
});
|
|
732
|
-
|
|
912
|
+
progressManager.start();
|
|
913
|
+
let sentPlan = false;
|
|
914
|
+
if (predictedMs && predictedMs >= 10_000 && routingDecision.progress.enabled && !streamingEnabled) {
|
|
915
|
+
if (plannerProbeSteps.length > 0) {
|
|
916
|
+
const planMessage = formatProgressWithPlan({
|
|
917
|
+
steps: plannerProbeSteps,
|
|
918
|
+
currentStep: planStepIndex ?? 1,
|
|
919
|
+
stage: predictedStage
|
|
920
|
+
});
|
|
921
|
+
progressManager.notify(planMessage);
|
|
922
|
+
sentPlan = true;
|
|
923
|
+
}
|
|
924
|
+
else {
|
|
925
|
+
progressManager.notify(DEFAULT_PROGRESS_STAGES.ack);
|
|
926
|
+
}
|
|
927
|
+
}
|
|
928
|
+
if (!(sentPlan && predictedStage === 'planning')) {
|
|
929
|
+
progressManager.setStage(predictedStage);
|
|
930
|
+
}
|
|
931
|
+
if (predictedStage === 'planning') {
|
|
932
|
+
const followUpStage = inferProgressStage({
|
|
933
|
+
content: lastMessage?.content || prompt,
|
|
934
|
+
plannerTools: plannerProbeTools,
|
|
935
|
+
plannerSteps: plannerProbeSteps,
|
|
936
|
+
enablePlanner: false
|
|
937
|
+
});
|
|
938
|
+
if (followUpStage !== 'planning') {
|
|
939
|
+
const delay = Math.min(15_000, Math.max(5_000, Math.floor(routingDecision.progress.initialMs / 2)));
|
|
940
|
+
setTimeout(() => progressManager.setStage(followUpStage), delay);
|
|
941
|
+
}
|
|
942
|
+
}
|
|
943
|
+
const abortController = new AbortController();
|
|
944
|
+
activeRuns.set(msg.chatId, abortController);
|
|
733
945
|
try {
|
|
946
|
+
const recallMaxResults = routingDecision.enableMemoryRecall
|
|
947
|
+
? (Number.isFinite(routingDecision.recallMaxResults)
|
|
948
|
+
? Math.max(0, Math.floor(routingDecision.recallMaxResults))
|
|
949
|
+
: MEMORY_RECALL_MAX_RESULTS)
|
|
950
|
+
: 0;
|
|
951
|
+
const recallMaxTokens = routingDecision.enableMemoryRecall
|
|
952
|
+
? (Number.isFinite(routingDecision.recallMaxTokens)
|
|
953
|
+
? Math.max(0, Math.floor(routingDecision.recallMaxTokens))
|
|
954
|
+
: MEMORY_RECALL_MAX_TOKENS)
|
|
955
|
+
: 0;
|
|
734
956
|
const execution = await executeAgentRun({
|
|
735
957
|
group,
|
|
736
958
|
prompt,
|
|
@@ -738,8 +960,10 @@ ${lines.join('\n')}
|
|
|
738
960
|
userId: msg.senderId,
|
|
739
961
|
userName: msg.senderName,
|
|
740
962
|
recallQuery: recallQuery || msg.content,
|
|
741
|
-
recallMaxResults
|
|
742
|
-
recallMaxTokens
|
|
963
|
+
recallMaxResults,
|
|
964
|
+
recallMaxTokens,
|
|
965
|
+
toolAllow: routingDecision.toolAllow,
|
|
966
|
+
toolDeny: routingDecision.toolDeny,
|
|
743
967
|
sessionId: sessions[group.folder],
|
|
744
968
|
onSessionUpdate: (sessionId) => { sessions[group.folder] = sessionId; },
|
|
745
969
|
streaming: streamingEnabled && draftId
|
|
@@ -751,12 +975,21 @@ ${lines.join('\n')}
|
|
|
751
975
|
}
|
|
752
976
|
: undefined,
|
|
753
977
|
availableGroups: buildAvailableGroupsSnapshot(),
|
|
978
|
+
modelOverride: routingDecision.modelOverride,
|
|
979
|
+
modelMaxOutputTokens: routingDecision.maxOutputTokens,
|
|
980
|
+
maxToolSteps: routingDecision.maxToolSteps,
|
|
981
|
+
disablePlanner: !routingDecision.enablePlanner,
|
|
982
|
+
disableResponseValidation: !routingDecision.enableResponseValidation,
|
|
983
|
+
responseValidationMaxRetries: routingDecision.responseValidationMaxRetries,
|
|
984
|
+
disableMemoryExtraction: !routingDecision.enableMemoryExtraction,
|
|
985
|
+
abortSignal: abortController.signal,
|
|
754
986
|
timeoutMs: AUTO_SPAWN_ENABLED && AUTO_SPAWN_FOREGROUND_TIMEOUT_MS > 0
|
|
755
987
|
? AUTO_SPAWN_FOREGROUND_TIMEOUT_MS
|
|
756
988
|
: undefined
|
|
757
989
|
});
|
|
758
990
|
output = execution.output;
|
|
759
991
|
context = execution.context;
|
|
992
|
+
progressManager.setStage('finalizing');
|
|
760
993
|
if (output.status === 'error') {
|
|
761
994
|
errorMessage = output.error || 'Unknown error';
|
|
762
995
|
}
|
|
@@ -772,8 +1005,15 @@ ${lines.join('\n')}
|
|
|
772
1005
|
logger.error({ group: group.name, err }, 'Agent error');
|
|
773
1006
|
}
|
|
774
1007
|
finally {
|
|
775
|
-
|
|
776
|
-
|
|
1008
|
+
progressManager.stop();
|
|
1009
|
+
activeRuns.delete(msg.chatId);
|
|
1010
|
+
}
|
|
1011
|
+
const extraTimings = {};
|
|
1012
|
+
extraTimings.router_ms = routerMs;
|
|
1013
|
+
if (classifierMs !== null)
|
|
1014
|
+
extraTimings.classifier_ms = classifierMs;
|
|
1015
|
+
if (plannerProbeMs !== null)
|
|
1016
|
+
extraTimings.planner_probe_ms = plannerProbeMs;
|
|
777
1017
|
if (!output) {
|
|
778
1018
|
const message = errorMessage || 'No output from agent';
|
|
779
1019
|
if (context) {
|
|
@@ -784,7 +1024,8 @@ ${lines.join('\n')}
|
|
|
784
1024
|
metricsSource: 'telegram',
|
|
785
1025
|
toolAuditSource: 'message',
|
|
786
1026
|
errorMessage: message,
|
|
787
|
-
errorType: 'agent'
|
|
1027
|
+
errorType: 'agent',
|
|
1028
|
+
extraTimings
|
|
788
1029
|
});
|
|
789
1030
|
}
|
|
790
1031
|
else {
|
|
@@ -826,7 +1067,8 @@ ${lines.join('\n')}
|
|
|
826
1067
|
metricsSource: 'telegram',
|
|
827
1068
|
toolAuditSource: 'message',
|
|
828
1069
|
errorMessage: errorMessage || output.error || 'Unknown error',
|
|
829
|
-
errorType: 'agent'
|
|
1070
|
+
errorType: 'agent',
|
|
1071
|
+
extraTimings
|
|
830
1072
|
});
|
|
831
1073
|
}
|
|
832
1074
|
logger.error({ group: group.name, error: output.error }, 'Container agent error');
|
|
@@ -878,7 +1120,8 @@ ${lines.join('\n')}
|
|
|
878
1120
|
output,
|
|
879
1121
|
context,
|
|
880
1122
|
metricsSource: 'telegram',
|
|
881
|
-
toolAuditSource: 'message'
|
|
1123
|
+
toolAuditSource: 'message',
|
|
1124
|
+
extraTimings
|
|
882
1125
|
});
|
|
883
1126
|
}
|
|
884
1127
|
return true;
|
|
@@ -901,7 +1144,8 @@ ${lines.join('\n')}
|
|
|
901
1144
|
output,
|
|
902
1145
|
context,
|
|
903
1146
|
metricsSource: 'telegram',
|
|
904
|
-
toolAuditSource: 'message'
|
|
1147
|
+
toolAuditSource: 'message',
|
|
1148
|
+
extraTimings
|
|
905
1149
|
});
|
|
906
1150
|
}
|
|
907
1151
|
return true;
|
|
@@ -1101,11 +1345,22 @@ async function runHeartbeatOnce() {
|
|
|
1101
1345
|
inputText: prompt,
|
|
1102
1346
|
source: 'dotclaw-heartbeat'
|
|
1103
1347
|
});
|
|
1348
|
+
const routingStartedAt = Date.now();
|
|
1349
|
+
const routingDecision = routePrompt(prompt);
|
|
1350
|
+
recordRoutingDecision(routingDecision.profile);
|
|
1351
|
+
const routerMs = Date.now() - routingStartedAt;
|
|
1352
|
+
recordStageLatency('router', routerMs, 'scheduler');
|
|
1104
1353
|
let output = null;
|
|
1105
1354
|
let context = null;
|
|
1106
1355
|
let errorMessage = null;
|
|
1107
|
-
const
|
|
1108
|
-
|
|
1356
|
+
const baseRecallResults = Number.isFinite(routingDecision.recallMaxResults)
|
|
1357
|
+
? Math.max(0, Math.floor(routingDecision.recallMaxResults))
|
|
1358
|
+
: MEMORY_RECALL_MAX_RESULTS;
|
|
1359
|
+
const baseRecallTokens = Number.isFinite(routingDecision.recallMaxTokens)
|
|
1360
|
+
? Math.max(0, Math.floor(routingDecision.recallMaxTokens))
|
|
1361
|
+
: MEMORY_RECALL_MAX_TOKENS;
|
|
1362
|
+
const recallMaxResults = routingDecision.enableMemoryRecall ? Math.max(4, baseRecallResults - 2) : 0;
|
|
1363
|
+
const recallMaxTokens = routingDecision.enableMemoryRecall ? Math.max(600, baseRecallTokens - 200) : 0;
|
|
1109
1364
|
try {
|
|
1110
1365
|
const execution = await executeAgentRun({
|
|
1111
1366
|
group,
|
|
@@ -1118,7 +1373,14 @@ async function runHeartbeatOnce() {
|
|
|
1118
1373
|
sessionId: sessions[group.folder],
|
|
1119
1374
|
onSessionUpdate: (sessionId) => { sessions[group.folder] = sessionId; },
|
|
1120
1375
|
isScheduledTask: true,
|
|
1121
|
-
availableGroups: buildAvailableGroupsSnapshot()
|
|
1376
|
+
availableGroups: buildAvailableGroupsSnapshot(),
|
|
1377
|
+
modelOverride: routingDecision.modelOverride,
|
|
1378
|
+
modelMaxOutputTokens: routingDecision.maxOutputTokens,
|
|
1379
|
+
maxToolSteps: routingDecision.maxToolSteps,
|
|
1380
|
+
disablePlanner: !routingDecision.enablePlanner,
|
|
1381
|
+
disableResponseValidation: !routingDecision.enableResponseValidation,
|
|
1382
|
+
responseValidationMaxRetries: routingDecision.responseValidationMaxRetries,
|
|
1383
|
+
disableMemoryExtraction: !routingDecision.enableMemoryExtraction
|
|
1122
1384
|
});
|
|
1123
1385
|
output = execution.output;
|
|
1124
1386
|
context = execution.context;
|
|
@@ -1142,7 +1404,8 @@ async function runHeartbeatOnce() {
|
|
|
1142
1404
|
output,
|
|
1143
1405
|
context,
|
|
1144
1406
|
toolAuditSource: 'heartbeat',
|
|
1145
|
-
errorMessage: errorMessage ?? undefined
|
|
1407
|
+
errorMessage: errorMessage ?? undefined,
|
|
1408
|
+
extraTimings: { router_ms: routerMs }
|
|
1146
1409
|
});
|
|
1147
1410
|
}
|
|
1148
1411
|
else if (errorMessage) {
|