@koda-sl/baker-bridge 0.75.2 → 0.76.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 CHANGED
@@ -187,7 +187,12 @@ The fetch is resilient by design: results are cached per `(thread, actor)` for 6
187
187
 
188
188
  ### Tool mentions
189
189
 
190
- A user can `@`-mention an MCP tool in a message (a green chip in the composer). These arrive in the prompt as `@[Label](mcp:<provider>:<key>)` tokens; the bridge strips each token back to its plain `Label` and appends one instruction naming the requested tools so the agent prefers them for that turn. It's a hint, not a restriction — every other tool stays available and the server map is unchanged.
190
+ A user can `@`-mention a tool in a message (a green chip in the composer). Two kinds arrive, and the bridge treats them differently because the agent has to reach them differently:
191
+
192
+ - `@[Label](mcp:<key>)` — a tool that arrives in the session over MCP. The bridge appends an instruction naming the requested tools so the agent prefers them for that turn. A hint, not a restriction: every other tool stays available and the server map is unchanged.
193
+ - `@[Label](integration:<provider>)` — a **Baker integration** (GA4, Search Console, Tag Manager, an ad platform). There is no MCP server for these; they are read with `baker` commands. The bridge appends an instruction naming the command for each one, so an agent told to "read Google Search Console" does not go looking for a tool of that name, find nothing, and report a connected platform as unavailable.
194
+
195
+ Both kinds are stripped back to their plain `Label` first — the mention syntax is dashboard serialization and means nothing to the model. The older `mcp:<provider>:<key>` spelling is still read, for messages written before integrations had their own type.
191
196
 
192
197
  ## Agent scheduling
193
198
 
@@ -1 +1 @@
1
- {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/hono/agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAA2B,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAI5F,OAAO,EAKL,KAAK,YAAY,EAClB,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AA0BvE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAU3D,OAAO,EACL,KAAK,qBAAqB,EAI3B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,KAAK,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAiB/E,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,uBAAuB,GAAG,MAAM,CAEhG;AA0CD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAE5D;AAOD,cAAM,oBAAoB;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,OAAO,CAAC,QAAQ,CAAoC;IACpD,OAAO,CAAC,oBAAoB,CAAK;IACjC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;IAE5C,YAAY,QAAQ,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,qBAAqB,EAepE;IAED,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED,IAAI,UAAU,CAAC,KAAK,EAAE,MAAM,EAE3B;IAED,KAAK,IAAI,OAAO,CAOf;IAED,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAE3E;IAED,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,GAAG,OAAO,CAE9D;IAED,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,mBAAmB,GAAG,OAAO,CAE3E;IAED,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,mBAAmB,GAAG,OAAO,CAE5E;IAED,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,yBAAyB,GAAG,OAAO,CAExF;IAEK,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,mBAAmB,EAAE,UAAU,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBjF;IAED,OAAO,CAAC,uBAAuB;YA0EjB,kBAAkB;YAQlB,mBAAmB;YAOnB,sBAAsB;YAItB,cAAc;IAO5B,OAAO,CAAC,wBAAwB;YAKlB,uBAAuB;YAQvB,+BAA+B;YAQ/B,wBAAwB;YAwBxB,kBAAkB;CAejC;AAwBD,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAElF;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEtD;AAWD,wBAAgB,sBAAsB,IAAI,IAAI,CAI7C;AAED,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CA2BhE"}
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/hono/agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAA2B,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAI5F,OAAO,EAKL,KAAK,YAAY,EAClB,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AA0BvE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAS3D,OAAO,EACL,KAAK,qBAAqB,EAI3B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAE1D,OAAO,KAAK,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAiB/E,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,uBAAuB,GAAG,MAAM,CAEhG;AA0CD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAE5D;AAOD,cAAM,oBAAoB;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,OAAO,CAAC,QAAQ,CAAoC;IACpD,OAAO,CAAC,oBAAoB,CAAK;IACjC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;IAE5C,YAAY,QAAQ,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,qBAAqB,EAepE;IAED,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED,IAAI,UAAU,CAAC,KAAK,EAAE,MAAM,EAE3B;IAED,KAAK,IAAI,OAAO,CAOf;IAED,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAE3E;IAED,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,GAAG,OAAO,CAE9D;IAED,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,mBAAmB,GAAG,OAAO,CAE3E;IAED,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,mBAAmB,GAAG,OAAO,CAE5E;IAED,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,yBAAyB,GAAG,OAAO,CAExF;IAEK,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,mBAAmB,EAAE,UAAU,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBjF;IAED,OAAO,CAAC,uBAAuB;YA0EjB,kBAAkB;YAQlB,mBAAmB;YAOnB,sBAAsB;YAItB,cAAc;IAO5B,OAAO,CAAC,wBAAwB;YAKlB,uBAAuB;YAQvB,+BAA+B;YAQ/B,wBAAwB;YAwBxB,kBAAkB;CAejC;AAwBD,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAElF;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEtD;AAWD,wBAAgB,sBAAsB,IAAI,IAAI,CAI7C;AAED,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CA2BhE"}
@@ -3,7 +3,6 @@ import { AgentSession, AgentSessionRegistry } from "./agent-session.js";
3
3
  import { buildAttachmentPromptSuffix, downloadAttachments } from "./attachments.js";
4
4
  import { BridgeJobExecutor, } from "./bridge-job.js";
5
5
  import { clearStreamBuffer, enqueueStreamingTools, enqueueStreamText, flushStream, markStreamReplace, postAgentActivity, postCompaction, postConnectionInputRequest, postConnectionInputResolved, postContextUsage, postEvent, postFlowInputRequest, postFlowInputResolved, postHeartbeat, postInputRequest, postInputResolved, postPlanResolved, postPlanReview, postTagInputRequest, postTagInputResolved, recordContextSource, signalComplete, waitForTerminalCompletionLifecycle, } from "./convex.js";
6
- import { applyMcpMentions } from "./mcp-mentions.js";
7
6
  import { createMcpServersProvider } from "./mcp-servers.js";
8
7
  import { DEFAULT_MODEL } from "./model-capabilities.js";
9
8
  import { recoverStalledPublish, waitForStalledPublishRecovery } from "./publish-recovery.js";
@@ -11,6 +10,7 @@ import { bridgeRuntimeFiles } from "./runtime-files.js";
11
10
  import { buildRehydratedPrompt as buildContinuityRehydratedPrompt, isResumeSessionError as isContinuityResumeSessionError, } from "./session-continuity.js";
12
11
  import { clearSessionBoundary, loadSessionBoundary, saveSessionBoundary, } from "./session-store.js";
13
12
  import { filterAllowedSlashCommands, readAllowedSlashCommandNames } from "./slash-command-allowlist.js";
13
+ import { applyToolMentions } from "./tool-mentions.js";
14
14
  // ---------------------------------------------------------------------------
15
15
  // Tunables
16
16
  // ---------------------------------------------------------------------------
@@ -127,9 +127,10 @@ class BridgeRuntimeSession {
127
127
  return await this.agentSession.start({
128
128
  threadId: this.threadId,
129
129
  turnId,
130
- // Green `@`-mentions of MCP tools are stripped to labels + turned into a
131
- // "prefer these tools" instruction so the agent acts on the user's intent.
132
- prompt: applyMcpMentions(prompt),
130
+ // Tool `@`-mentions are stripped to labels and turned into an explicit
131
+ // instruction — "prefer these tools" for MCP, "reach these with `baker`
132
+ // commands" for a Baker integration, which has no MCP server to find.
133
+ prompt: applyToolMentions(prompt),
133
134
  attachments,
134
135
  history,
135
136
  currentReference,
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/hono/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/hono/agent.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Tool `@`-mentions carried in a prompt, and the instruction they turn into.
3
+ *
4
+ * The dashboard serializes two kinds, and the difference matters to the agent
5
+ * more than to anyone else:
6
+ *
7
+ * - `@[Microsoft Clarity](mcp:microsoft_clarity)` — a tool that arrives in the
8
+ * session over MCP. The agent calls it directly.
9
+ * - `@[Google Analytics 4](integration:google-analytics)` — a **Baker
10
+ * integration**. There is no MCP server for it and never was: it is reached
11
+ * with `baker` commands, and an agent that goes looking for a Google Analytics
12
+ * tool finds nothing and reports the platform as unavailable while it is
13
+ * connected and answering.
14
+ *
15
+ * Both are stripped back to their plain label — the mention syntax is dashboard
16
+ * serialization and means nothing to the model — and replaced with one explicit
17
+ * instruction per kind. Activation is a hint, not a restriction: every other
18
+ * tool stays available.
19
+ */
20
+ export type ToolMentionKind = "mcp" | "integration";
21
+ export type ToolMention = {
22
+ kind: ToolMentionKind;
23
+ label: string;
24
+ key: string;
25
+ };
26
+ /** Every tool the prompt `@`-mentioned, in order, deduped by label. */
27
+ export declare function parseToolMentions(content: string): ToolMention[];
28
+ /** Rewrite each tool mention to its plain label, leaving all other text intact. */
29
+ export declare function stripToolMentions(content: string): string;
30
+ /**
31
+ * Clean the prompt of mention tokens and append one instruction per kind.
32
+ * Returns the prompt unchanged when there are none, so ordinary turns are
33
+ * untouched.
34
+ */
35
+ export declare function applyToolMentions(content: string): string;
36
+ //# sourceMappingURL=tool-mentions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-mentions.d.ts","sourceRoot":"","sources":["../../src/hono/tool-mentions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAIH,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,aAAa,CAAC;AACpD,MAAM,MAAM,WAAW,GAAG;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAgDhF,uEAAuE;AACvE,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,WAAW,EAAE,CAYhE;AAED,mFAAmF;AACnF,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEzD;AAuBD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAazD"}
@@ -0,0 +1,116 @@
1
+ /**
2
+ * Tool `@`-mentions carried in a prompt, and the instruction they turn into.
3
+ *
4
+ * The dashboard serializes two kinds, and the difference matters to the agent
5
+ * more than to anyone else:
6
+ *
7
+ * - `@[Microsoft Clarity](mcp:microsoft_clarity)` — a tool that arrives in the
8
+ * session over MCP. The agent calls it directly.
9
+ * - `@[Google Analytics 4](integration:google-analytics)` — a **Baker
10
+ * integration**. There is no MCP server for it and never was: it is reached
11
+ * with `baker` commands, and an agent that goes looking for a Google Analytics
12
+ * tool finds nothing and reports the platform as unavailable while it is
13
+ * connected and answering.
14
+ *
15
+ * Both are stripped back to their plain label — the mention syntax is dashboard
16
+ * serialization and means nothing to the model — and replaced with one explicit
17
+ * instruction per kind. Activation is a hint, not a restriction: every other
18
+ * tool stays available.
19
+ */
20
+ const TOOL_MENTION_RE = /@\[([^\]]*)\]\((mcp|integration):([^)]+)\)/g;
21
+ /**
22
+ * How a run reaches each Baker integration.
23
+ *
24
+ * Held here rather than imported because the bridge ships to npm on its own and
25
+ * depends on nothing in this workspace. A provider missing from this map still
26
+ * works — the instruction names it as a Baker integration without naming the
27
+ * command — so adding a platform and forgetting this line costs the agent a
28
+ * `baker --help`, not the connection.
29
+ */
30
+ const INTEGRATION_COMMAND = {
31
+ "google-analytics": "baker ga4",
32
+ "google-search-console": "baker gsc",
33
+ "google-tag-manager": "baker tag-manager",
34
+ "google-ads": "baker ads google",
35
+ meta: "baker ads meta",
36
+ linkedin: "baker ads linkedin",
37
+ "x-ads": "baker ads x",
38
+ hubspot: "baker hubspot",
39
+ };
40
+ function decode(value) {
41
+ try {
42
+ return decodeURIComponent(value);
43
+ }
44
+ catch {
45
+ return value;
46
+ }
47
+ }
48
+ /**
49
+ * The tool's key, from a target that may still carry display metadata.
50
+ *
51
+ * Tolerates the older `composio:google_drive` / `custom:linear` spelling, which
52
+ * is still sitting in messages written before integrations got their own mention
53
+ * type. The prefix was never anything the agent needed.
54
+ */
55
+ function parseKey(rawTarget) {
56
+ const beforeQuery = rawTarget.split("?", 1)[0] ?? rawTarget;
57
+ const decoded = decode(beforeQuery);
58
+ const colon = decoded.indexOf(":");
59
+ if (colon === -1) {
60
+ return decoded;
61
+ }
62
+ const prefix = decoded.slice(0, colon);
63
+ return prefix === "composio" || prefix === "custom" || prefix === "oauth" ? decoded.slice(colon + 1) : decoded;
64
+ }
65
+ /** Every tool the prompt `@`-mentioned, in order, deduped by label. */
66
+ export function parseToolMentions(content) {
67
+ const seen = new Set();
68
+ const mentions = [];
69
+ for (const match of content.matchAll(TOOL_MENTION_RE)) {
70
+ const label = (match[1] ?? "").trim();
71
+ if (!label || seen.has(label)) {
72
+ continue;
73
+ }
74
+ seen.add(label);
75
+ mentions.push({ kind: match[2], label, key: parseKey(match[3] ?? "") });
76
+ }
77
+ return mentions;
78
+ }
79
+ /** Rewrite each tool mention to its plain label, leaving all other text intact. */
80
+ export function stripToolMentions(content) {
81
+ return content.replace(TOOL_MENTION_RE, (_full, label) => label.trim());
82
+ }
83
+ /** "Google Analytics 4 (`baker ga4`)", or just the label when we have no command for it. */
84
+ function describeIntegration(mention) {
85
+ const command = INTEGRATION_COMMAND[mention.key];
86
+ return command ? `${mention.label} (\`${command}\`)` : mention.label;
87
+ }
88
+ function integrationInstruction(mentions) {
89
+ const described = mentions.map(describeIntegration).join(", ");
90
+ const it = mentions.length === 1 ? "it" : "them";
91
+ return `[Baker integrations requested: ${described}. ${mentions.length === 1 ? "This is" : "These are"} connected through Baker, not through MCP — read ${it} with the \`baker\` commands shown, and do not look for an MCP tool of that name. If a command reports the connection is missing or unauthorized, say so plainly rather than working around it.]`;
92
+ }
93
+ function mcpInstruction(mentions) {
94
+ const labels = mentions.map((m) => m.label).join(", ");
95
+ return `[Tool request: the user explicitly asked to use ${labels} for this turn. Prefer ${mentions.length === 1 ? "it" : "them"} to fulfill the request; other tools remain available.]`;
96
+ }
97
+ /**
98
+ * Clean the prompt of mention tokens and append one instruction per kind.
99
+ * Returns the prompt unchanged when there are none, so ordinary turns are
100
+ * untouched.
101
+ */
102
+ export function applyToolMentions(content) {
103
+ const mentions = parseToolMentions(content);
104
+ const stripped = stripToolMentions(content);
105
+ if (mentions.length === 0) {
106
+ return stripped;
107
+ }
108
+ const integrations = mentions.filter((m) => m.kind === "integration");
109
+ const tools = mentions.filter((m) => m.kind === "mcp");
110
+ const notes = [
111
+ ...(integrations.length > 0 ? [integrationInstruction(integrations)] : []),
112
+ ...(tools.length > 0 ? [mcpInstruction(tools)] : []),
113
+ ];
114
+ return `${stripped}\n\n${notes.join("\n\n")}`;
115
+ }
116
+ //# sourceMappingURL=tool-mentions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-mentions.js","sourceRoot":"","sources":["../../src/hono/tool-mentions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=tool-mentions.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-mentions.test.d.ts","sourceRoot":"","sources":["../../src/hono/tool-mentions.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,79 @@
1
+ import { describe, expect, it } from "vitest";
2
+ import { applyToolMentions, parseToolMentions, stripToolMentions } from "./tool-mentions.js";
3
+ const CLARITY = "@[Microsoft Clarity](mcp:microsoft_clarity?slug=microsoft_clarity&title=Microsoft+Clarity)";
4
+ const LINEAR = "@[Linear](mcp:linear?slug=linear)";
5
+ const GA4 = "@[Google Analytics 4](integration:google-analytics?slug=google-analytics)";
6
+ const SEARCH_CONSOLE = "@[Google Search Console](integration:google-search-console)";
7
+ /** Written before integrations had their own mention type. Still in old messages. */
8
+ const LEGACY_DRIVE = "@[Google Drive](mcp:composio%3Agoogle_drive?slug=composio%3Agoogle_drive)";
9
+ describe("parseToolMentions", () => {
10
+ it("tells a Baker integration apart from a tool that arrives over MCP", () => {
11
+ expect(parseToolMentions(`Read ${GA4} and ${CLARITY}`)).toEqual([
12
+ { kind: "integration", label: "Google Analytics 4", key: "google-analytics" },
13
+ { kind: "mcp", label: "Microsoft Clarity", key: "microsoft_clarity" },
14
+ ]);
15
+ });
16
+ it("still reads the older provider-prefixed spelling", () => {
17
+ expect(parseToolMentions(LEGACY_DRIVE)).toEqual([{ kind: "mcp", label: "Google Drive", key: "google_drive" }]);
18
+ });
19
+ it("returns every mention, deduped by label", () => {
20
+ expect(parseToolMentions(`${CLARITY} and ${LINEAR} and ${CLARITY}`)).toEqual([
21
+ { kind: "mcp", label: "Microsoft Clarity", key: "microsoft_clarity" },
22
+ { kind: "mcp", label: "Linear", key: "linear" },
23
+ ]);
24
+ });
25
+ it("ignores /skill tokens and content references", () => {
26
+ expect(parseToolMentions("/plan then @[Spec](document:spec?slug=spec) go")).toEqual([]);
27
+ });
28
+ it("returns nothing for plain text", () => {
29
+ expect(parseToolMentions("just a normal message")).toEqual([]);
30
+ });
31
+ });
32
+ describe("stripToolMentions", () => {
33
+ it("rewrites each tool token to its plain label", () => {
34
+ expect(stripToolMentions(`Pull last week from ${GA4}.`)).toBe("Pull last week from Google Analytics 4.");
35
+ });
36
+ it("leaves /skill tokens and content references untouched", () => {
37
+ const text = "/plan review @[Spec](document:spec?slug=spec)";
38
+ expect(stripToolMentions(text)).toBe(text);
39
+ });
40
+ });
41
+ describe("applyToolMentions", () => {
42
+ it("returns the prompt unchanged when no tools are mentioned", () => {
43
+ expect(applyToolMentions("nothing to see here")).toBe("nothing to see here");
44
+ });
45
+ /**
46
+ * The failure this exists to stop: a scheduled task's brief says "read Google
47
+ * Search Console", the agent looks for an MCP tool by that name, finds none,
48
+ * and reports the platform as unavailable — while it is connected, answering,
49
+ * and one `baker gsc` away.
50
+ */
51
+ it("tells the agent an integration is reached with a baker command, not an MCP tool", () => {
52
+ const result = applyToolMentions(`Review search performance using ${SEARCH_CONSOLE}`);
53
+ expect(result).toContain("Review search performance using Google Search Console");
54
+ expect(result).toContain("baker gsc");
55
+ expect(result).toContain("not through MCP");
56
+ });
57
+ it("names an integration it has no command for without inventing one", () => {
58
+ const result = applyToolMentions("Check @[Calendly](integration:calendly)");
59
+ expect(result).toContain("Calendly");
60
+ expect(result).not.toContain("`baker undefined`");
61
+ });
62
+ it("keeps the prefer-this-tool instruction for MCP tools", () => {
63
+ const result = applyToolMentions(`Grab the file from ${LINEAR}`);
64
+ expect(result).toContain("Grab the file from Linear");
65
+ expect(result).toContain("Prefer it");
66
+ });
67
+ /**
68
+ * A brief that names both — which every marketplace template does — has to say
69
+ * both things. Collapsing them into one instruction is how an integration ends
70
+ * up described as a tool to prefer.
71
+ */
72
+ it("gives each kind its own instruction when a prompt names both", () => {
73
+ const result = applyToolMentions(`Read ${GA4} then ${CLARITY}`);
74
+ expect(result).toContain("baker ga4");
75
+ expect(result).toContain("Prefer it");
76
+ expect(result).toContain("Microsoft Clarity");
77
+ });
78
+ });
79
+ //# sourceMappingURL=tool-mentions.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-mentions.test.js","sourceRoot":"","sources":["../../src/hono/tool-mentions.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@koda-sl/baker-bridge",
3
- "version": "0.75.2",
3
+ "version": "0.76.0",
4
4
  "description": "HTTP server wrapping the Claude Agent SDK. Persists chat events to Convex; the dashboard subscribes via Convex realtime",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -1,23 +0,0 @@
1
- /**
2
- * MCP tool mentions carried in a chat prompt. The dashboard serializes a green
3
- * `@`-mention as `@[Label](mcp:<provider>:<key>?…metadata)`; the bridge strips
4
- * those tokens back to their plain label and appends one explicit instruction so
5
- * the agent prefers the requested tools this turn. Activation is a hint, not a
6
- * restriction — every other tool stays available.
7
- */
8
- export type McpMention = {
9
- label: string;
10
- provider: string;
11
- key: string;
12
- };
13
- /** Every MCP tool the user `@`-mentioned in the prompt, in order, deduped by label. */
14
- export declare function parseMcpMentions(content: string): McpMention[];
15
- /** Rewrite each `@[Label](mcp:…)` token to its plain label, leaving all other text intact. */
16
- export declare function stripMcpMentions(content: string): string;
17
- /**
18
- * Clean the prompt of MCP mention tokens and, when any were present, append the
19
- * "prefer these tools" instruction. Returns the prompt unchanged when there are
20
- * none, so non-mention turns are untouched.
21
- */
22
- export declare function applyMcpMentions(content: string): string;
23
- //# sourceMappingURL=mcp-mentions.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mcp-mentions.d.ts","sourceRoot":"","sources":["../../src/hono/mcp-mentions.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,MAAM,MAAM,UAAU,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAqB1E,uFAAuF;AACvF,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,EAAE,CAY9D;AAED,8FAA8F;AAC9F,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAExD;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAUxD"}
@@ -1,59 +0,0 @@
1
- /**
2
- * MCP tool mentions carried in a chat prompt. The dashboard serializes a green
3
- * `@`-mention as `@[Label](mcp:<provider>:<key>?…metadata)`; the bridge strips
4
- * those tokens back to their plain label and appends one explicit instruction so
5
- * the agent prefers the requested tools this turn. Activation is a hint, not a
6
- * restriction — every other tool stays available.
7
- */
8
- const MCP_MENTION_RE = /@\[([^\]]*)\]\(mcp:([^)]+)\)/g;
9
- function decode(value) {
10
- try {
11
- return decodeURIComponent(value);
12
- }
13
- catch {
14
- return value;
15
- }
16
- }
17
- /** Split the mention target (`composio%3Agoogle_drive?slug=…`) into provider + key. */
18
- function parseTarget(rawTarget) {
19
- const beforeQuery = rawTarget.split("?", 1)[0] ?? rawTarget;
20
- const decoded = decode(beforeQuery);
21
- const colon = decoded.indexOf(":");
22
- if (colon === -1) {
23
- return { provider: "", key: decoded };
24
- }
25
- return { provider: decoded.slice(0, colon), key: decoded.slice(colon + 1) };
26
- }
27
- /** Every MCP tool the user `@`-mentioned in the prompt, in order, deduped by label. */
28
- export function parseMcpMentions(content) {
29
- const seen = new Set();
30
- const mentions = [];
31
- for (const match of content.matchAll(MCP_MENTION_RE)) {
32
- const label = (match[1] ?? "").trim();
33
- if (!label || seen.has(label)) {
34
- continue;
35
- }
36
- seen.add(label);
37
- mentions.push({ label, ...parseTarget(match[2] ?? "") });
38
- }
39
- return mentions;
40
- }
41
- /** Rewrite each `@[Label](mcp:…)` token to its plain label, leaving all other text intact. */
42
- export function stripMcpMentions(content) {
43
- return content.replace(MCP_MENTION_RE, (_full, label) => label.trim());
44
- }
45
- /**
46
- * Clean the prompt of MCP mention tokens and, when any were present, append the
47
- * "prefer these tools" instruction. Returns the prompt unchanged when there are
48
- * none, so non-mention turns are untouched.
49
- */
50
- export function applyMcpMentions(content) {
51
- const mentions = parseMcpMentions(content);
52
- const stripped = stripMcpMentions(content);
53
- if (mentions.length === 0) {
54
- return stripped;
55
- }
56
- const labels = mentions.map((m) => m.label).join(", ");
57
- return `${stripped}\n\n[Tool request: the user explicitly asked to use ${labels} for this turn. Prefer ${mentions.length === 1 ? "it" : "them"} to fulfill the request; other tools remain available.]`;
58
- }
59
- //# sourceMappingURL=mcp-mentions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mcp-mentions.js","sourceRoot":"","sources":["../../src/hono/mcp-mentions.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,cAAc,GAAG,+BAA+B,CAAC;AAIvD,SAAS,MAAM,CAAC,KAAa;IAC3B,IAAI,CAAC;QACH,OAAO,kBAAkB,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,uFAAuF;AACvF,SAAS,WAAW,CAAC,SAAiB;IACpC,MAAM,WAAW,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC;IAC5D,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;IACpC,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACnC,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;QACjB,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;IACxC,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC;AAC9E,CAAC;AAED,uFAAuF;AACvF,MAAM,UAAU,gBAAgB,CAAC,OAAe;IAC9C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,QAAQ,GAAiB,EAAE,CAAC;IAClC,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;QACrD,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACtC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9B,SAAS;QACX,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAChB,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;IAC3D,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,8FAA8F;AAC9F,MAAM,UAAU,gBAAgB,CAAC,OAAe;IAC9C,OAAO,OAAO,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,KAAK,EAAE,KAAa,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;AACjF,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe;IAC9C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC3C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC3C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvD,OAAO,GAAG,QAAQ,uDAAuD,MAAM,0BAC7E,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MACjC,yDAAyD,CAAC;AAC5D,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=mcp-mentions.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mcp-mentions.test.d.ts","sourceRoot":"","sources":["../../src/hono/mcp-mentions.test.ts"],"names":[],"mappings":""}
@@ -1,49 +0,0 @@
1
- import { describe, expect, it } from "vitest";
2
- import { applyMcpMentions, parseMcpMentions, stripMcpMentions } from "./mcp-mentions.js";
3
- const DRIVE = "@[Google Drive](mcp:composio%3Agoogle_drive?slug=composio%3Agoogle_drive&title=Google+Drive)";
4
- const LINEAR = "@[Linear](mcp:custom%3Alinear?slug=custom%3Alinear)";
5
- describe("parseMcpMentions", () => {
6
- it("extracts label, provider, and key from a serialized mention", () => {
7
- expect(parseMcpMentions(`Use ${DRIVE} please`)).toEqual([
8
- { label: "Google Drive", provider: "composio", key: "google_drive" },
9
- ]);
10
- });
11
- it("returns every mention, deduped by label", () => {
12
- expect(parseMcpMentions(`${DRIVE} and ${LINEAR} and ${DRIVE}`)).toEqual([
13
- { label: "Google Drive", provider: "composio", key: "google_drive" },
14
- { label: "Linear", provider: "custom", key: "linear" },
15
- ]);
16
- });
17
- it("ignores /skill tokens and non-mcp references", () => {
18
- expect(parseMcpMentions("/plan then @[Spec](document:spec?slug=spec) go")).toEqual([]);
19
- });
20
- it("returns nothing for plain text", () => {
21
- expect(parseMcpMentions("just a normal message")).toEqual([]);
22
- });
23
- });
24
- describe("stripMcpMentions", () => {
25
- it("rewrites each mcp token to its plain label", () => {
26
- expect(stripMcpMentions(`Pull the deck from ${DRIVE}.`)).toBe("Pull the deck from Google Drive.");
27
- });
28
- it("leaves /skill tokens and content references untouched", () => {
29
- const text = "/plan review @[Spec](document:spec?slug=spec)";
30
- expect(stripMcpMentions(text)).toBe(text);
31
- });
32
- });
33
- describe("applyMcpMentions", () => {
34
- it("returns the prompt unchanged when no mcp tools are mentioned", () => {
35
- expect(applyMcpMentions("nothing to see here")).toBe("nothing to see here");
36
- });
37
- it("strips tokens and appends a singular prefer-this-tool instruction", () => {
38
- const result = applyMcpMentions(`Grab the file from ${DRIVE}`);
39
- expect(result).toContain("Grab the file from Google Drive");
40
- expect(result).toContain("Prefer it");
41
- expect(result).toContain("Google Drive");
42
- });
43
- it("names every requested tool in the appended instruction", () => {
44
- const result = applyMcpMentions(`${DRIVE} ${LINEAR}`);
45
- expect(result).toContain("Google Drive, Linear");
46
- expect(result).toContain("Prefer them");
47
- });
48
- });
49
- //# sourceMappingURL=mcp-mentions.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mcp-mentions.test.js","sourceRoot":"","sources":["../../src/hono/mcp-mentions.test.ts"],"names":[],"mappings":"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"}