visionclaw 0.1.21 → 0.1.22

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.
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Maintains a rolling summary of the primary agent's current activity.
3
+ * Read by the fast responder to give context-aware quick replies when the
4
+ * agent is busy.
5
+ */
6
+ export declare class ActivityTracker {
7
+ private currentTaskDescription;
8
+ private recentActions;
9
+ private lastAssistantText;
10
+ private taskStartedAt;
11
+ private readonly maxActions;
12
+ constructor(maxActions?: number);
13
+ startTask(description: string): void;
14
+ recordAssistantText(text: string): void;
15
+ recordToolCall(name: string, inputSummary: string): void;
16
+ recordToolResult(name: string, outputSummary: string): void;
17
+ /**
18
+ * Produce a concise summary of the agent's current activity for the fast
19
+ * responder's system context.
20
+ */
21
+ getSummary(): string;
22
+ clear(): void;
23
+ private push;
24
+ }
25
+ //# sourceMappingURL=activity-tracker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"activity-tracker.d.ts","sourceRoot":"","sources":["../../src/agent/activity-tracker.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,sBAAsB,CAAM;IACpC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,iBAAiB,CAAM;IAC/B,OAAO,CAAC,aAAa,CAAuB;IAE5C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;gBAExB,UAAU,SAAK;IAI3B,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAQpC,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAIvC,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI;IAOxD,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI;IAO3D;;;OAGG;IACH,UAAU,IAAI,MAAM;IA0BpB,KAAK,IAAI,IAAI;IAOb,OAAO,CAAC,IAAI;CAMb"}
@@ -0,0 +1,77 @@
1
+ import { logger } from "../logger.js";
2
+ /**
3
+ * Maintains a rolling summary of the primary agent's current activity.
4
+ * Read by the fast responder to give context-aware quick replies when the
5
+ * agent is busy.
6
+ */
7
+ export class ActivityTracker {
8
+ currentTaskDescription = "";
9
+ recentActions = [];
10
+ lastAssistantText = "";
11
+ taskStartedAt = null;
12
+ maxActions;
13
+ constructor(maxActions = 15) {
14
+ this.maxActions = maxActions;
15
+ }
16
+ startTask(description) {
17
+ this.currentTaskDescription = description;
18
+ this.recentActions = [];
19
+ this.lastAssistantText = "";
20
+ this.taskStartedAt = Date.now();
21
+ logger.debug("[activity-tracker] task started");
22
+ }
23
+ recordAssistantText(text) {
24
+ this.lastAssistantText = text;
25
+ }
26
+ recordToolCall(name, inputSummary) {
27
+ const truncated = inputSummary.length > 120
28
+ ? inputSummary.substring(0, 120) + "…"
29
+ : inputSummary;
30
+ this.push(`→ ${name}(${truncated})`);
31
+ }
32
+ recordToolResult(name, outputSummary) {
33
+ const truncated = outputSummary.length > 120
34
+ ? outputSummary.substring(0, 120) + "…"
35
+ : outputSummary;
36
+ this.push(`← ${name}: ${truncated}`);
37
+ }
38
+ /**
39
+ * Produce a concise summary of the agent's current activity for the fast
40
+ * responder's system context.
41
+ */
42
+ getSummary() {
43
+ if (this.taskStartedAt === null)
44
+ return "Agent is idle.";
45
+ const elapsedSec = Math.round((Date.now() - this.taskStartedAt) / 1000);
46
+ const lines = [];
47
+ if (this.currentTaskDescription) {
48
+ lines.push(`Current task: ${this.currentTaskDescription}`);
49
+ }
50
+ lines.push(`Running for: ${elapsedSec}s`);
51
+ if (this.lastAssistantText) {
52
+ const preview = this.lastAssistantText.length > 300
53
+ ? this.lastAssistantText.substring(0, 300) + "…"
54
+ : this.lastAssistantText;
55
+ lines.push(`Last agent message: ${preview}`);
56
+ }
57
+ if (this.recentActions.length > 0) {
58
+ lines.push("Recent actions:");
59
+ for (const a of this.recentActions)
60
+ lines.push(` ${a}`);
61
+ }
62
+ return lines.join("\n");
63
+ }
64
+ clear() {
65
+ this.currentTaskDescription = "";
66
+ this.recentActions = [];
67
+ this.lastAssistantText = "";
68
+ this.taskStartedAt = null;
69
+ }
70
+ push(entry) {
71
+ this.recentActions.push(entry);
72
+ if (this.recentActions.length > this.maxActions) {
73
+ this.recentActions.shift();
74
+ }
75
+ }
76
+ }
77
+ //# sourceMappingURL=activity-tracker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"activity-tracker.js","sourceRoot":"","sources":["../../src/agent/activity-tracker.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import type { VisionClawConfig } from "../config/types.js";
2
2
  import type { CommandMessage } from "../channels/interface.js";
3
+ import type { FastResponse } from "./fast-responder.js";
3
4
  /**
4
5
  * A content block in a multimodal user message.
5
6
  * Matches the Anthropic Messages API content block types.
@@ -47,6 +48,15 @@ export declare function buildWakeContext(options: {
47
48
  export declare function buildInterruptContext(options: {
48
49
  messages: CommandMessage[];
49
50
  }): Promise<ContentBlock[]>;
51
+ /**
52
+ * Build an interrupt context that includes the fast responder's briefing.
53
+ * The primary agent sees what the user said AND what was already replied,
54
+ * so it can decide whether to follow up or skip.
55
+ */
56
+ export declare function buildInterruptWithBriefing(options: {
57
+ messages: CommandMessage[];
58
+ fastResponse: FastResponse;
59
+ }): ContentBlock[];
50
60
  /**
51
61
  * Build a fresh context after compaction. Returns multimodal blocks.
52
62
  */
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/agent/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAI/D;;;GAGG;AACH,MAAM,MAAM,YAAY,GACpB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC9B;IACE,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EACF;QAAE,IAAI,EAAE,QAAQ,CAAC;QAAC,UAAU,EAAE,WAAW,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GACzD;QAAE,IAAI,EAAE,KAAK,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;CAClC,CAAC;AAEN;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CAAC,OAAO,EAAE;IAC9C,MAAM,EAAE,gBAAgB,CAAC;IACzB,OAAO,EAAE,WAAW,GAAG,SAAS,CAAC;IACjC,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,aAAa,CAAC;CAC5B,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAqG1B;AAED;;;;GAIG;AACH,wBAAsB,qBAAqB,CAAC,OAAO,EAAE;IACnD,QAAQ,EAAE,cAAc,EAAE,CAAC;CAC5B,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAuD1B;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE;IAClD,MAAM,EAAE,gBAAgB,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,mBAAmB,EAAE,MAAM,CAAC;CAC7B,GAAG,YAAY,EAAE,CAqBjB"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/agent/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAIxD;;;GAGG;AACH,MAAM,MAAM,YAAY,GACpB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC9B;IACE,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EACF;QAAE,IAAI,EAAE,QAAQ,CAAC;QAAC,UAAU,EAAE,WAAW,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GACzD;QAAE,IAAI,EAAE,KAAK,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;CAClC,CAAC;AAEN;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CAAC,OAAO,EAAE;IAC9C,MAAM,EAAE,gBAAgB,CAAC;IACzB,OAAO,EAAE,WAAW,GAAG,SAAS,CAAC;IACjC,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,aAAa,CAAC;CAC5B,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAqG1B;AAED;;;;GAIG;AACH,wBAAsB,qBAAqB,CAAC,OAAO,EAAE;IACnD,QAAQ,EAAE,cAAc,EAAE,CAAC;CAC5B,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAuD1B;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE;IAClD,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,YAAY,EAAE,YAAY,CAAC;CAC5B,GAAG,YAAY,EAAE,CAuCjB;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE;IAClD,MAAM,EAAE,gBAAgB,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,mBAAmB,EAAE,MAAM,CAAC;CAC7B,GAAG,YAAY,EAAE,CAqBjB"}
@@ -148,6 +148,41 @@ export async function buildInterruptContext(options) {
148
148
  }
149
149
  return blocks;
150
150
  }
151
+ /**
152
+ * Build an interrupt context that includes the fast responder's briefing.
153
+ * The primary agent sees what the user said AND what was already replied,
154
+ * so it can decide whether to follow up or skip.
155
+ */
156
+ export function buildInterruptWithBriefing(options) {
157
+ const { messages, fastResponse } = options;
158
+ const now = new Date().toLocaleString();
159
+ const parts = [];
160
+ parts.push(`[Interrupt — auto-acknowledged] at ${now}`);
161
+ parts.push("");
162
+ for (const msg of messages) {
163
+ parts.push(`- [${msg.channel}] from ${msg.sender} at ${msg.timestamp}: ${msg.text}`);
164
+ if (msg.attachments.length > 0) {
165
+ for (const att of msg.attachments) {
166
+ const location = att.url ?? att.localPath ?? "(embedded)";
167
+ parts.push(` Attachment [${att.type}]: ${location}${att.filename ? ` (${att.filename})` : ""}`);
168
+ }
169
+ }
170
+ }
171
+ parts.push("");
172
+ parts.push("Your quick-response handler already replied:");
173
+ for (const r of fastResponse.replies) {
174
+ parts.push(` → [${r.channel}] ${r.sender}: "${r.reply}"`);
175
+ }
176
+ parts.push(`Handler assessment: ${fastResponse.briefForPrimary}`);
177
+ parts.push("");
178
+ if (fastResponse.needsPrimaryAction) {
179
+ parts.push("Action needed: Please follow up on this when you finish your current task.");
180
+ }
181
+ else {
182
+ parts.push("No further action needed — the quick-response handler fully handled this.");
183
+ }
184
+ return [{ type: "text", text: parts.join("\n") }];
185
+ }
151
186
  /**
152
187
  * Build a fresh context after compaction. Returns multimodal blocks.
153
188
  */
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/agent/context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/agent/context.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ import { z } from "zod";
2
+ import type { CommandMessage } from "../channels/interface.js";
3
+ declare const FastResponseSchema: z.ZodObject<{
4
+ replies: z.ZodArray<z.ZodObject<{
5
+ channel: z.ZodString;
6
+ sender: z.ZodString;
7
+ reply: z.ZodString;
8
+ }, "strip", z.ZodTypeAny, {
9
+ channel: string;
10
+ sender: string;
11
+ reply: string;
12
+ }, {
13
+ channel: string;
14
+ sender: string;
15
+ reply: string;
16
+ }>, "many">;
17
+ needsPrimaryAction: z.ZodBoolean;
18
+ briefForPrimary: z.ZodString;
19
+ }, "strip", z.ZodTypeAny, {
20
+ replies: {
21
+ channel: string;
22
+ sender: string;
23
+ reply: string;
24
+ }[];
25
+ needsPrimaryAction: boolean;
26
+ briefForPrimary: string;
27
+ }, {
28
+ replies: {
29
+ channel: string;
30
+ sender: string;
31
+ reply: string;
32
+ }[];
33
+ needsPrimaryAction: boolean;
34
+ briefForPrimary: string;
35
+ }>;
36
+ export type FastResponse = z.infer<typeof FastResponseSchema>;
37
+ /**
38
+ * Make a single lightweight API call to acknowledge one or more user messages
39
+ * that arrived while the primary agent is busy. Handles the batch case where
40
+ * multiple messages arrive in quick succession — the model sees all of them
41
+ * and produces per-sender personalized replies + a unified briefing.
42
+ *
43
+ * Uses structured outputs (json_schema) so the response is guaranteed to be
44
+ * valid JSON matching {@link FastResponseSchema}.
45
+ *
46
+ * Returns null if the call fails so the caller can fall back to the original
47
+ * interrupt-injection path.
48
+ */
49
+ export declare function fastRespond(options: {
50
+ messages: CommandMessage[];
51
+ activitySummary: string;
52
+ agentName: string;
53
+ apiKey: string;
54
+ }): Promise<FastResponse | null>;
55
+ export {};
56
+ //# sourceMappingURL=fast-responder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fast-responder.d.ts","sourceRoot":"","sources":["../../src/agent/fast-responder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAkB/D,QAAA,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiBtB,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D;;;;;;;;;;;GAWG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE;IACzC,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CA+E/B"}
@@ -0,0 +1,111 @@
1
+ import Anthropic from "@anthropic-ai/sdk";
2
+ import { z } from "zod";
3
+ import { zodOutputFormat } from "@anthropic-ai/sdk/helpers/zod";
4
+ import { logger } from "../logger.js";
5
+ const FAST_MODEL = "claude-haiku-4-5-20250315";
6
+ const MAX_TOKENS = 1024;
7
+ const RecipientReplySchema = z.object({
8
+ channel: z
9
+ .string()
10
+ .describe("The channel name, exactly as it appears in the incoming messages (e.g. 'telegram', 'discord', 'gmail')."),
11
+ sender: z
12
+ .string()
13
+ .describe("The sender identifier, exactly as it appears in the incoming messages."),
14
+ reply: z
15
+ .string()
16
+ .describe("A personalized, concise reply for this specific recipient (1-3 sentences)."),
17
+ });
18
+ const FastResponseSchema = z.object({
19
+ replies: z
20
+ .array(RecipientReplySchema)
21
+ .describe("One reply per unique (channel, sender) pair from the incoming messages. " +
22
+ "Each reply should be personalized — address the sender by name and reference their specific message(s)."),
23
+ needsPrimaryAction: z
24
+ .boolean()
25
+ .describe("True if the primary agent should follow up on any of these messages; false if the replies fully handle all of them (e.g. pure status queries)."),
26
+ briefForPrimary: z
27
+ .string()
28
+ .describe("A concise summary for the primary agent describing what these messages are about and what you told each sender."),
29
+ });
30
+ /**
31
+ * Make a single lightweight API call to acknowledge one or more user messages
32
+ * that arrived while the primary agent is busy. Handles the batch case where
33
+ * multiple messages arrive in quick succession — the model sees all of them
34
+ * and produces per-sender personalized replies + a unified briefing.
35
+ *
36
+ * Uses structured outputs (json_schema) so the response is guaranteed to be
37
+ * valid JSON matching {@link FastResponseSchema}.
38
+ *
39
+ * Returns null if the call fails so the caller can fall back to the original
40
+ * interrupt-injection path.
41
+ */
42
+ export async function fastRespond(options) {
43
+ const { messages, activitySummary, agentName, apiKey } = options;
44
+ if (messages.length === 0)
45
+ return null;
46
+ // Pre-compute unique recipients so the prompt can list them explicitly
47
+ const recipientKeys = new Map();
48
+ for (const m of messages) {
49
+ const key = `${m.channel}::${m.sender}`;
50
+ if (!recipientKeys.has(key)) {
51
+ recipientKeys.set(key, { channel: m.channel, sender: m.sender });
52
+ }
53
+ }
54
+ const recipientList = [...recipientKeys.values()]
55
+ .map((r) => ` - channel="${r.channel}", sender="${r.sender}"`)
56
+ .join("\n");
57
+ try {
58
+ const client = new Anthropic({ apiKey });
59
+ const messageSummary = messages
60
+ .map((m) => {
61
+ const parts = [
62
+ `- [${m.channel}] from ${m.sender} at ${m.timestamp}: ${m.text}`,
63
+ ];
64
+ if (m.attachments.length > 0) {
65
+ parts.push(` Attachments: ${m.attachments.map((a) => `[${a.type}] ${a.filename ?? a.url ?? "(embedded)"}`).join(", ")}`);
66
+ }
67
+ return parts.join("\n");
68
+ })
69
+ .join("\n");
70
+ const response = await client.messages.create({
71
+ model: FAST_MODEL,
72
+ max_tokens: MAX_TOKENS,
73
+ output_config: {
74
+ format: zodOutputFormat(FastResponseSchema),
75
+ },
76
+ system: [
77
+ `You are the quick-response handler for an AI desktop agent named "${agentName}".`,
78
+ "The main agent is currently busy with a task. Your job is to:",
79
+ "1. Acknowledge the user's message(s) so they know they were received.",
80
+ "2. If the user is asking about status or what the agent is doing, summarize the current activity.",
81
+ "3. If the user sends a new task or request, tell them it has been queued.",
82
+ "4. Keep each reply concise and friendly (1-3 sentences).",
83
+ "",
84
+ `You MUST produce exactly one reply per unique recipient. The recipients are:\n${recipientList}`,
85
+ "Each reply should be personalized — address the sender and reference their specific message(s).",
86
+ "Use the exact channel and sender strings listed above in your output.",
87
+ "",
88
+ "IMPORTANT: You must NOT commit to performing any action. You can only acknowledge, summarize status, and inform the user their message(s) are queued.",
89
+ ].join("\n"),
90
+ messages: [
91
+ {
92
+ role: "user",
93
+ content: [
94
+ "## Current Agent Activity",
95
+ activitySummary,
96
+ "",
97
+ `## Incoming Message${messages.length > 1 ? `s (${messages.length})` : ""}`,
98
+ messageSummary,
99
+ ].join("\n"),
100
+ },
101
+ ],
102
+ });
103
+ const text = response.content[0]?.type === "text" ? response.content[0].text : "";
104
+ return FastResponseSchema.parse(JSON.parse(text));
105
+ }
106
+ catch (err) {
107
+ logger.warn(`Fast responder failed: ${err instanceof Error ? err.message : String(err)}`);
108
+ return null;
109
+ }
110
+ }
111
+ //# sourceMappingURL=fast-responder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fast-responder.js","sourceRoot":"","sources":["../../src/agent/fast-responder.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,13 @@
1
1
  import type { VisionClawConfig } from "../config/types.js";
2
2
  import { MessageQueue } from "../channels/queue.js";
3
3
  import { ChannelManager } from "../channels/manager.js";
4
+ import { ActivityTracker } from "./activity-tracker.js";
4
5
  /** Shared state visible to tools (e.g. notify_user needs channel access) */
5
6
  export interface AgentState {
6
7
  config: VisionClawConfig;
7
8
  channelManager: ChannelManager;
8
9
  messageQueue: MessageQueue;
10
+ activityTracker: ActivityTracker;
9
11
  busy: boolean;
10
12
  lastMessageChannel?: string;
11
13
  lastMessageSender?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"loop.d.ts","sourceRoot":"","sources":["../../src/agent/loop.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAM3D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAMxD,4EAA4E;AAC5E,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,gBAAgB,CAAC;IACzB,cAAc,EAAE,cAAc,CAAC;IAC/B,YAAY,EAAE,YAAY,CAAC;IAC3B,IAAI,EAAE,OAAO,CAAC;IACd,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAKD,wBAAgB,aAAa,IAAI,UAAU,CAK1C;AAiFD;;GAEG;AACH,wBAAsB,cAAc,CAClC,MAAM,EAAE,gBAAgB,GACvB,OAAO,CAAC,IAAI,CAAC,CA2bf"}
1
+ {"version":3,"file":"loop.d.ts","sourceRoot":"","sources":["../../src/agent/loop.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAM3D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAIxD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAIxD,4EAA4E;AAC5E,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,gBAAgB,CAAC;IACzB,cAAc,EAAE,cAAc,CAAC;IAC/B,YAAY,EAAE,YAAY,CAAC;IAC3B,eAAe,EAAE,eAAe,CAAC;IACjC,IAAI,EAAE,OAAO,CAAC;IACd,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAKD,wBAAgB,aAAa,IAAI,UAAU,CAK1C;AAiFD;;GAEG;AACH,wBAAsB,cAAc,CAClC,MAAM,EAAE,gBAAgB,GACvB,OAAO,CAAC,IAAI,CAAC,CAmiBf"}
@@ -1,12 +1,14 @@
1
1
  import { buildSystemPrompt } from "./system-prompt.js";
2
2
  import { AgentSession } from "./session.js";
3
- import { buildWakeContext, buildInterruptContext } from "./context.js";
3
+ import { buildWakeContext, buildInterruptContext, buildInterruptWithBriefing } from "./context.js";
4
4
  import { createToolServer } from "../tools/index.js";
5
5
  import { MessageQueue } from "../channels/queue.js";
6
6
  import { ChannelManager } from "../channels/manager.js";
7
7
  import { takeScreenshot } from "../tools/screenshot.js";
8
8
  import { getCalendarSummary } from "../calendar/scheduler.js";
9
9
  import { initScreenshotUploader, uploadScreenshot } from "../files.js";
10
+ import { ActivityTracker } from "./activity-tracker.js";
11
+ import { fastRespond } from "./fast-responder.js";
10
12
  import { logger } from "../logger.js";
11
13
  // Module-level state so tools can access it
12
14
  let agentState = null;
@@ -82,10 +84,12 @@ export async function startAgentLoop(config) {
82
84
  // --- Initialize components ---
83
85
  const messageQueue = new MessageQueue();
84
86
  const channelManager = new ChannelManager(config, messageQueue);
87
+ const activityTracker = new ActivityTracker();
85
88
  agentState = {
86
89
  config,
87
90
  channelManager,
88
91
  messageQueue,
92
+ activityTracker,
89
93
  busy: false,
90
94
  };
91
95
  // Initialize S3 client for screenshot uploads
@@ -110,48 +114,128 @@ export async function startAgentLoop(config) {
110
114
  await channelManager.startAll();
111
115
  // Listen for incoming messages to wake the agent or inject interrupts
112
116
  let wakeResolver = null;
113
- channelManager.on("message", () => void (async () => {
114
- // If agent is sleeping, wake it up
115
- if (wakeResolver !== null) {
116
- wakeResolver();
117
- wakeResolver = null;
117
+ // Debounce + concurrency guard for interrupt handling.
118
+ // When messages arrive in quick succession while the agent is busy, we
119
+ // wait a short window to batch them, then process the batch in a single
120
+ // fast-responder call. Only one interrupt batch runs at a time; messages
121
+ // arriving while a batch is in-flight are picked up by the next batch.
122
+ const INTERRUPT_DEBOUNCE_MS = 2000;
123
+ let interruptTimer = null;
124
+ let interruptInFlight = false;
125
+ async function processInterruptBatch() {
126
+ if (interruptInFlight || !agentState?.busy)
118
127
  return;
119
- }
120
- // If agent is busy, inject interrupt messages into the active session
121
- if (agentState?.busy) {
122
- const interruptMessages = [];
128
+ interruptInFlight = true;
129
+ try {
130
+ // Drain everything currently in the queue
131
+ const batch = [];
123
132
  while (!messageQueue.isEmpty()) {
124
133
  const msg = messageQueue.dequeue();
125
134
  if (msg)
126
- interruptMessages.push(msg);
135
+ batch.push(msg);
127
136
  }
128
- if (interruptMessages.length > 0) {
129
- // Update last message tracking
130
- const last = interruptMessages[interruptMessages.length - 1];
131
- agentState.lastMessageChannel = last.channel;
132
- agentState.lastMessageSender = last.sender;
133
- // Log the interrupt
134
- for (const msg of interruptMessages) {
135
- logger.log("info", "incoming", `[interrupt] [${msg.channel}] ${msg.sender}: ${msg.text}`, {
136
- channel: msg.channel,
137
- sender: msg.sender,
138
- text: msg.text,
139
- id: msg.id,
140
- interrupt: true,
137
+ if (batch.length === 0)
138
+ return;
139
+ // Update last-message tracking
140
+ const last = batch[batch.length - 1];
141
+ agentState.lastMessageChannel = last.channel;
142
+ agentState.lastMessageSender = last.sender;
143
+ // Log each interrupt message
144
+ for (const msg of batch) {
145
+ logger.log("info", "incoming", `[interrupt] [${msg.channel}] ${msg.sender}: ${msg.text}`, {
146
+ channel: msg.channel,
147
+ sender: msg.sender,
148
+ text: msg.text,
149
+ id: msg.id,
150
+ interrupt: true,
151
+ });
152
+ }
153
+ // Single fast-responder call for the entire batch
154
+ const fr = await fastRespond({
155
+ messages: batch,
156
+ activitySummary: activityTracker.getSummary(),
157
+ agentName: config.agentName,
158
+ apiKey: config.anthropicApiKey,
159
+ });
160
+ if (fr) {
161
+ // Build a lookup from the per-recipient replies
162
+ const replyMap = new Map();
163
+ for (const r of fr.replies) {
164
+ replyMap.set(`${r.channel}::${r.sender}`, r.reply);
165
+ }
166
+ // Send each recipient their personalized reply
167
+ const sent = new Set();
168
+ for (const msg of batch) {
169
+ const key = `${msg.channel}::${msg.sender}`;
170
+ if (sent.has(key))
171
+ continue;
172
+ sent.add(key);
173
+ const reply = replyMap.get(key);
174
+ if (!reply)
175
+ continue;
176
+ try {
177
+ await channelManager.sendMessage(msg.channel, msg.sender, reply);
178
+ }
179
+ catch (sendErr) {
180
+ logger.warn(`Failed to send fast response: ${sendErr instanceof Error ? sendErr.message : String(sendErr)}`);
181
+ }
182
+ }
183
+ logger.log("info", "fast_response", `Replied to ${sent.size} recipient(s) for ${batch.length} message(s)`, {
184
+ messageCount: batch.length,
185
+ recipientCount: sent.size,
186
+ needsPrimaryAction: fr.needsPrimaryAction,
187
+ });
188
+ // Inject briefing into the primary session if follow-up is needed
189
+ if (fr.needsPrimaryAction) {
190
+ const briefingBlocks = buildInterruptWithBriefing({
191
+ messages: batch,
192
+ fastResponse: fr,
141
193
  });
194
+ session.injectMessage(briefingBlocks);
142
195
  }
143
- // Build interrupt context and inject into session
144
- const interruptBlocks = await buildInterruptContext({ messages: interruptMessages });
145
- const interruptContent = interruptBlocks;
146
- session.injectMessage(interruptContent);
196
+ }
197
+ else {
198
+ // Fast responder failed — fall back to the original interrupt path
199
+ const interruptBlocks = await buildInterruptContext({ messages: batch });
200
+ session.injectMessage(interruptBlocks);
147
201
  }
148
202
  }
149
- })());
203
+ finally {
204
+ interruptInFlight = false;
205
+ // If more messages arrived while we were processing, schedule another batch
206
+ // Re-check module-level state since it may have changed during async work.
207
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- agentState is module-level and may change across awaits
208
+ if (!messageQueue.isEmpty() && agentState?.busy) {
209
+ scheduleInterruptBatch();
210
+ }
211
+ }
212
+ }
213
+ function scheduleInterruptBatch() {
214
+ if (interruptTimer !== null)
215
+ return; // already scheduled
216
+ interruptTimer = setTimeout(() => {
217
+ interruptTimer = null;
218
+ void processInterruptBatch();
219
+ }, INTERRUPT_DEBOUNCE_MS);
220
+ }
221
+ channelManager.on("message", () => {
222
+ // If agent is sleeping, wake it up immediately
223
+ if (wakeResolver !== null) {
224
+ wakeResolver();
225
+ wakeResolver = null;
226
+ return;
227
+ }
228
+ // If agent is busy, schedule a debounced interrupt batch
229
+ if (agentState?.busy) {
230
+ scheduleInterruptBatch();
231
+ }
232
+ });
150
233
  logger.system("Agent loop started. Waiting for messages or heartbeat...");
151
234
  // --- Main loop ---
152
235
  // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- intentional infinite loop
153
236
  while (true) {
154
237
  agentState.busy = false;
238
+ activityTracker.clear();
155
239
  // Sleep until heartbeat or new message
156
240
  await new Promise((resolve) => {
157
241
  wakeResolver = resolve;
@@ -168,6 +252,7 @@ export async function startAgentLoop(config) {
168
252
  }
169
253
  });
170
254
  agentState.busy = true;
255
+ activityTracker.clear();
171
256
  // Determine trigger
172
257
  const hasMessages = !messageQueue.isEmpty();
173
258
  const trigger = hasMessages ? "message" : "heartbeat";
@@ -184,6 +269,11 @@ export async function startAgentLoop(config) {
184
269
  agentState.lastMessageChannel = last.channel;
185
270
  agentState.lastMessageSender = last.sender;
186
271
  }
272
+ // Start tracking this wake cycle's activity
273
+ const taskDesc = messages.length > 0
274
+ ? messages.map((m) => `[${m.channel}] ${m.sender}: ${m.text}`).join("; ")
275
+ : "heartbeat";
276
+ activityTracker.startTask(taskDesc);
187
277
  // Log the wake event
188
278
  logger.wake(trigger, messages.length);
189
279
  // If this is a heartbeat wake (no new messages), it's a good time to compact.
@@ -330,6 +420,9 @@ export async function startAgentLoop(config) {
330
420
  : {}),
331
421
  ...(subagentMeta?.agentId ? { subagent_agent_id: subagentMeta.agentId } : {}),
332
422
  });
423
+ if (!parentToolUseId) {
424
+ activityTracker.recordToolResult(resolvedName, summary);
425
+ }
333
426
  }
334
427
  }
335
428
  break;
@@ -358,6 +451,7 @@ export async function startAgentLoop(config) {
358
451
  }
359
452
  else {
360
453
  logger.assistant(block.text);
454
+ activityTracker.recordAssistantText(block.text);
361
455
  }
362
456
  }
363
457
  break;
@@ -387,6 +481,10 @@ export async function startAgentLoop(config) {
387
481
  : {}),
388
482
  ...(subagentMeta?.agentId ? { subagent_agent_id: subagentMeta.agentId } : {}),
389
483
  });
484
+ if (!parentToolUseId) {
485
+ const inputStr = block.input ? JSON.stringify(block.input) : "";
486
+ activityTracker.recordToolCall(block.name, inputStr);
487
+ }
390
488
  }
391
489
  if (block.name === "finish" || block.name === "mcp__visionclaw__finish") {
392
490
  finishCalled = true;
@@ -1 +1 @@
1
- {"version":3,"file":"loop.js","sourceRoot":"","sources":["../../src/agent/loop.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loop.js","sourceRoot":"","sources":["../../src/agent/loop.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "visionclaw",
3
- "version": "0.1.21",
3
+ "version": "0.1.22",
4
4
  "description": "A personal assistant agent that runs on your desktop, receives commands from messaging channels, and executes tasks autonomously.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",