@antelopejs/dms-ai 0.0.6 → 0.1.1-next.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 +83 -2
- package/dist/config.d.ts +7 -0
- package/dist/config.js +33 -0
- package/dist/config.js.map +1 -0
- package/dist/constants/sidecar.d.ts +2 -0
- package/dist/constants/sidecar.js +3 -1
- package/dist/constants/sidecar.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -1
- package/dist/lifecycle/spawn-sidecar.d.ts +1 -0
- package/dist/lifecycle/spawn-sidecar.js +9 -0
- package/dist/lifecycle/spawn-sidecar.js.map +1 -1
- package/dist/routes/settings.d.ts +7 -0
- package/dist/routes/settings.js +2 -0
- package/dist/routes/settings.js.map +1 -1
- package/frontend-vue/app/components/SettingsView.vue +85 -3
- package/frontend-vue/app/runtime/constants.ts +0 -1
- package/package.json +11 -1
- package/sidecar/chatbox/dist/assets/index-CEZ1NLp9.js +52 -0
- package/sidecar/chatbox/dist/assets/{index-pP_KOHIn.css → index-D_51Vqqk.css} +1 -1
- package/sidecar/chatbox/dist/index.html +2 -2
- package/sidecar/dist/agent/attachment-files.d.ts +5 -0
- package/sidecar/dist/agent/attachment-files.js +29 -0
- package/sidecar/dist/agent/attachment-files.js.map +1 -0
- package/sidecar/dist/agent/provider.d.ts +40 -0
- package/sidecar/dist/agent/provider.js +2 -0
- package/sidecar/dist/agent/provider.js.map +1 -0
- package/sidecar/dist/agent/{claude-runner.d.ts → runner.d.ts} +8 -11
- package/sidecar/dist/agent/runner.js +71 -0
- package/sidecar/dist/agent/runner.js.map +1 -0
- package/sidecar/dist/agent/session.d.ts +22 -0
- package/sidecar/dist/agent/{claude-session.js → session.js} +39 -47
- package/sidecar/dist/agent/session.js.map +1 -0
- package/sidecar/dist/agent/switching-runner.d.ts +6 -0
- package/sidecar/dist/agent/switching-runner.js +58 -0
- package/sidecar/dist/agent/switching-runner.js.map +1 -0
- package/sidecar/dist/constants/agent.d.ts +2 -12
- package/sidecar/dist/constants/agent.js +2 -11
- package/sidecar/dist/constants/agent.js.map +1 -1
- package/sidecar/dist/constants/claude.d.ts +10 -0
- package/sidecar/dist/constants/claude.js +10 -0
- package/sidecar/dist/constants/claude.js.map +1 -0
- package/sidecar/dist/constants/cli.d.ts +2 -0
- package/sidecar/dist/constants/cli.js +3 -0
- package/sidecar/dist/constants/cli.js.map +1 -0
- package/sidecar/dist/constants/codex.d.ts +85 -0
- package/sidecar/dist/constants/codex.js +110 -0
- package/sidecar/dist/constants/codex.js.map +1 -0
- package/sidecar/dist/constants/http.d.ts +1 -0
- package/sidecar/dist/constants/http.js +1 -0
- package/sidecar/dist/constants/http.js.map +1 -1
- package/sidecar/dist/constants/mcp.d.ts +6 -0
- package/sidecar/dist/constants/mcp.js +11 -0
- package/sidecar/dist/constants/mcp.js.map +1 -1
- package/sidecar/dist/constants/pages.d.ts +0 -1
- package/sidecar/dist/constants/pages.js +0 -1
- package/sidecar/dist/constants/pages.js.map +1 -1
- package/sidecar/dist/constants/paths.d.ts +5 -0
- package/sidecar/dist/constants/paths.js +5 -0
- package/sidecar/dist/constants/paths.js.map +1 -1
- package/sidecar/dist/constants/ports.d.ts +0 -1
- package/sidecar/dist/constants/ports.js +0 -1
- package/sidecar/dist/constants/ports.js.map +1 -1
- package/sidecar/dist/constants/providers.d.ts +16 -0
- package/sidecar/dist/constants/providers.js +17 -0
- package/sidecar/dist/constants/providers.js.map +1 -0
- package/sidecar/dist/constants/settings.d.ts +1 -4
- package/sidecar/dist/constants/settings.js +2 -12
- package/sidecar/dist/constants/settings.js.map +1 -1
- package/sidecar/dist/constants/skills.d.ts +1 -0
- package/sidecar/dist/constants/skills.js +2 -0
- package/sidecar/dist/constants/skills.js.map +1 -0
- package/sidecar/dist/constants/timing.d.ts +1 -0
- package/sidecar/dist/constants/timing.js +1 -0
- package/sidecar/dist/constants/timing.js.map +1 -1
- package/sidecar/dist/constants/tool-lexicon.d.ts +7 -0
- package/sidecar/dist/constants/tool-lexicon.js +8 -0
- package/sidecar/dist/constants/tool-lexicon.js.map +1 -0
- package/sidecar/dist/index.d.ts +11 -0
- package/sidecar/dist/index.js +33 -8
- package/sidecar/dist/index.js.map +1 -1
- package/sidecar/dist/mcp/define-tool.d.ts +23 -0
- package/sidecar/dist/mcp/define-tool.js +4 -0
- package/sidecar/dist/mcp/define-tool.js.map +1 -0
- package/sidecar/dist/mcp/http-binding.d.ts +9 -0
- package/sidecar/dist/mcp/http-binding.js +123 -0
- package/sidecar/dist/mcp/http-binding.js.map +1 -0
- package/sidecar/dist/mcp/sdk-binding.js +14 -0
- package/sidecar/dist/mcp/sdk-binding.js.map +1 -0
- package/sidecar/dist/mcp/tool-definitions.d.ts +3 -0
- package/sidecar/dist/mcp/{server.js → tool-definitions.js} +2 -11
- package/sidecar/dist/mcp/tool-definitions.js.map +1 -0
- package/sidecar/dist/mcp/tools/ask-user.d.ts +1 -1
- package/sidecar/dist/mcp/tools/ask-user.js +2 -2
- package/sidecar/dist/mcp/tools/ask-user.js.map +1 -1
- package/sidecar/dist/mcp/tools/builder.d.ts +19 -19
- package/sidecar/dist/mcp/tools/builder.js +26 -26
- package/sidecar/dist/mcp/tools/builder.js.map +1 -1
- package/sidecar/dist/mcp/tools/find-pages-using.d.ts +1 -1
- package/sidecar/dist/mcp/tools/find-pages-using.js +2 -2
- package/sidecar/dist/mcp/tools/find-pages-using.js.map +1 -1
- package/sidecar/dist/mcp/tools/get-current-page.d.ts +1 -1
- package/sidecar/dist/mcp/tools/get-current-page.js +2 -2
- package/sidecar/dist/mcp/tools/get-current-page.js.map +1 -1
- package/sidecar/dist/mcp/tools/list-pages.d.ts +1 -1
- package/sidecar/dist/mcp/tools/list-pages.js +2 -2
- package/sidecar/dist/mcp/tools/list-pages.js.map +1 -1
- package/sidecar/dist/mcp/tools/navigate-to-page.d.ts +1 -1
- package/sidecar/dist/mcp/tools/navigate-to-page.js +2 -2
- package/sidecar/dist/mcp/tools/navigate-to-page.js.map +1 -1
- package/sidecar/dist/mcp/tools/query-logs.d.ts +1 -1
- package/sidecar/dist/mcp/tools/query-logs.js +2 -2
- package/sidecar/dist/mcp/tools/query-logs.js.map +1 -1
- package/sidecar/dist/mcp/tools/typecheck.d.ts +1 -1
- package/sidecar/dist/mcp/tools/typecheck.js +2 -2
- package/sidecar/dist/mcp/tools/typecheck.js.map +1 -1
- package/sidecar/dist/mcp/types.d.ts +6 -2
- package/sidecar/dist/protocol/events.d.ts +37 -0
- package/sidecar/dist/protocol/events.js +8 -0
- package/sidecar/dist/protocol/events.js.map +1 -1
- package/sidecar/dist/protocol/messages.d.ts +8 -0
- package/sidecar/dist/protocol/messages.js +2 -0
- package/sidecar/dist/protocol/messages.js.map +1 -1
- package/sidecar/dist/providers/claude/adapter.d.ts +5 -0
- package/sidecar/dist/{agent/sdk-adapter.js → providers/claude/adapter.js} +20 -1
- package/sidecar/dist/providers/claude/adapter.js.map +1 -0
- package/sidecar/dist/{agent → providers/claude}/attachments.d.ts +1 -1
- package/sidecar/dist/{agent → providers/claude}/attachments.js +3 -27
- package/sidecar/dist/providers/claude/attachments.js.map +1 -0
- package/sidecar/dist/providers/claude/config.d.ts +4 -0
- package/sidecar/dist/providers/claude/config.js +13 -0
- package/sidecar/dist/providers/claude/config.js.map +1 -0
- package/sidecar/dist/providers/claude/input-queue.js.map +1 -0
- package/sidecar/dist/providers/claude/module.d.ts +2 -0
- package/sidecar/dist/providers/claude/module.js +25 -0
- package/sidecar/dist/providers/claude/module.js.map +1 -0
- package/sidecar/dist/providers/claude/provider.d.ts +11 -0
- package/sidecar/dist/{agent/claude-runner.js → providers/claude/provider.js} +118 -96
- package/sidecar/dist/providers/claude/provider.js.map +1 -0
- package/sidecar/dist/{agent/resolve-claude-binary.js → providers/claude/resolve-binary.js} +3 -3
- package/sidecar/dist/{agent/resolve-claude-binary.js.map → providers/claude/resolve-binary.js.map} +1 -1
- package/sidecar/dist/providers/claude/sdk-loader.js +16 -0
- package/sidecar/dist/providers/claude/sdk-loader.js.map +1 -0
- package/sidecar/dist/providers/codex/adapter.d.ts +7 -0
- package/sidecar/dist/providers/codex/adapter.js +147 -0
- package/sidecar/dist/providers/codex/adapter.js.map +1 -0
- package/sidecar/dist/providers/codex/attachments.d.ts +7 -0
- package/sidecar/dist/providers/codex/attachments.js +73 -0
- package/sidecar/dist/providers/codex/attachments.js.map +1 -0
- package/sidecar/dist/providers/codex/client.d.ts +34 -0
- package/sidecar/dist/providers/codex/client.js +128 -0
- package/sidecar/dist/providers/codex/client.js.map +1 -0
- package/sidecar/dist/providers/codex/config.d.ts +34 -0
- package/sidecar/dist/providers/codex/config.js +111 -0
- package/sidecar/dist/providers/codex/config.js.map +1 -0
- package/sidecar/dist/providers/codex/event-stream.d.ts +8 -0
- package/sidecar/dist/providers/codex/event-stream.js +53 -0
- package/sidecar/dist/providers/codex/event-stream.js.map +1 -0
- package/sidecar/dist/providers/codex/module.d.ts +2 -0
- package/sidecar/dist/providers/codex/module.js +54 -0
- package/sidecar/dist/providers/codex/module.js.map +1 -0
- package/sidecar/dist/providers/codex/permissions.d.ts +21 -0
- package/sidecar/dist/providers/codex/permissions.js +77 -0
- package/sidecar/dist/providers/codex/permissions.js.map +1 -0
- package/sidecar/dist/providers/codex/process.d.ts +23 -0
- package/sidecar/dist/providers/codex/process.js +208 -0
- package/sidecar/dist/providers/codex/process.js.map +1 -0
- package/sidecar/dist/providers/codex/protocol/common.d.ts +59 -0
- package/sidecar/dist/providers/codex/protocol/common.js +2 -0
- package/sidecar/dist/providers/codex/protocol/common.js.map +1 -0
- package/sidecar/dist/providers/codex/protocol/index.d.ts +3 -0
- package/sidecar/dist/providers/codex/protocol/index.js +3 -0
- package/sidecar/dist/providers/codex/protocol/index.js.map +1 -0
- package/sidecar/dist/providers/codex/protocol/serde_json.d.ts +3 -0
- package/sidecar/dist/providers/codex/protocol/serde_json.js +2 -0
- package/sidecar/dist/providers/codex/protocol/serde_json.js.map +1 -0
- package/sidecar/dist/providers/codex/protocol/v2.d.ts +481 -0
- package/sidecar/dist/providers/codex/protocol/v2.js +2 -0
- package/sidecar/dist/providers/codex/protocol/v2.js.map +1 -0
- package/sidecar/dist/providers/codex/provider.d.ts +14 -0
- package/sidecar/dist/providers/codex/provider.js +225 -0
- package/sidecar/dist/providers/codex/provider.js.map +1 -0
- package/sidecar/dist/providers/codex/resolve-binary.d.ts +10 -0
- package/sidecar/dist/providers/codex/resolve-binary.js +80 -0
- package/sidecar/dist/providers/codex/resolve-binary.js.map +1 -0
- package/sidecar/dist/providers/codex/skills.d.ts +10 -0
- package/sidecar/dist/providers/codex/skills.js +42 -0
- package/sidecar/dist/providers/codex/skills.js.map +1 -0
- package/sidecar/dist/providers/registry.d.ts +7 -0
- package/sidecar/dist/providers/registry.js +31 -0
- package/sidecar/dist/providers/registry.js.map +1 -0
- package/sidecar/dist/providers/types.d.ts +25 -0
- package/sidecar/dist/providers/types.js +5 -0
- package/sidecar/dist/providers/types.js.map +1 -0
- package/sidecar/dist/server/http.d.ts +2 -0
- package/sidecar/dist/server/http.js +26 -12
- package/sidecar/dist/server/http.js.map +1 -1
- package/sidecar/dist/server/routing.d.ts +4 -4
- package/sidecar/dist/server/routing.js +7 -1
- package/sidecar/dist/server/routing.js.map +1 -1
- package/sidecar/dist/server/ws.d.ts +2 -0
- package/sidecar/dist/server/ws.js +40 -17
- package/sidecar/dist/server/ws.js.map +1 -1
- package/sidecar/dist/skills/build-catalog.d.ts +2 -0
- package/sidecar/dist/skills/build-catalog.js +12 -1
- package/sidecar/dist/skills/build-catalog.js.map +1 -1
- package/sidecar/dist/state/conversations.d.ts +3 -1
- package/sidecar/dist/state/conversations.js +20 -0
- package/sidecar/dist/state/conversations.js.map +1 -1
- package/sidecar/dist/state/safe-segment.d.ts +1 -0
- package/sidecar/dist/state/safe-segment.js +17 -0
- package/sidecar/dist/state/safe-segment.js.map +1 -0
- package/sidecar/dist/state/settings-store.js +7 -0
- package/sidecar/dist/state/settings-store.js.map +1 -1
- package/sidecar/dist/state/settings-types.d.ts +2 -0
- package/sidecar/dist/state/settings-types.js.map +1 -1
- package/sidecar/dist/state/types.d.ts +11 -0
- package/sidecar/dist/state/types.js +7 -0
- package/sidecar/dist/state/types.js.map +1 -1
- package/sidecar/package.json +3 -0
- package/sidecar/chatbox/dist/assets/index-Cy2BwTG0.js +0 -50
- package/sidecar/dist/agent/attachments.js.map +0 -1
- package/sidecar/dist/agent/claude-runner.js.map +0 -1
- package/sidecar/dist/agent/claude-session.d.ts +0 -18
- package/sidecar/dist/agent/claude-session.js.map +0 -1
- package/sidecar/dist/agent/input-queue.js.map +0 -1
- package/sidecar/dist/agent/sdk-adapter.d.ts +0 -3
- package/sidecar/dist/agent/sdk-adapter.js.map +0 -1
- package/sidecar/dist/agent/sdk-loader.js +0 -14
- package/sidecar/dist/agent/sdk-loader.js.map +0 -1
- package/sidecar/dist/mcp/server.js.map +0 -1
- /package/sidecar/dist/mcp/{server.d.ts → sdk-binding.d.ts} +0 -0
- /package/sidecar/dist/{agent → providers/claude}/input-queue.d.ts +0 -0
- /package/sidecar/dist/{agent → providers/claude}/input-queue.js +0 -0
- /package/sidecar/dist/{agent/resolve-claude-binary.d.ts → providers/claude/resolve-binary.d.ts} +0 -0
- /package/sidecar/dist/{agent → providers/claude}/sdk-loader.d.ts +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { ZodRawShape } from "zod";
|
|
2
|
+
export interface McpToolTextContent {
|
|
3
|
+
type: "text";
|
|
4
|
+
text: string;
|
|
5
|
+
}
|
|
6
|
+
export interface McpToolResult {
|
|
7
|
+
content: McpToolTextContent[];
|
|
8
|
+
[key: string]: unknown;
|
|
9
|
+
}
|
|
10
|
+
export type McpToolArgs<Schema extends ZodRawShape> = {
|
|
11
|
+
[K in keyof Schema]: Schema[K] extends {
|
|
12
|
+
_output: infer Output;
|
|
13
|
+
} ? Output : never;
|
|
14
|
+
} & {};
|
|
15
|
+
export type McpToolHandler<Schema extends ZodRawShape> = (args: McpToolArgs<Schema>, extra: unknown) => Promise<McpToolResult>;
|
|
16
|
+
export interface McpToolDefinition<Schema extends ZodRawShape = ZodRawShape> {
|
|
17
|
+
name: string;
|
|
18
|
+
description: string;
|
|
19
|
+
schema: Schema;
|
|
20
|
+
handler: McpToolHandler<Schema>;
|
|
21
|
+
}
|
|
22
|
+
export type AnyMcpToolDefinition = McpToolDefinition<any>;
|
|
23
|
+
export declare function defineTool<Schema extends ZodRawShape>(name: string, description: string, schema: Schema, handler: McpToolHandler<Schema>): McpToolDefinition<Schema>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"define-tool.js","sourceRoot":"","sources":["../../src/mcp/define-tool.ts"],"names":[],"mappings":"AA0CA,MAAM,UAAU,UAAU,CACxB,IAAY,EACZ,WAAmB,EACnB,MAAc,EACd,OAA+B;IAE/B,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;AAChD,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { IncomingMessage, ServerResponse } from "node:http";
|
|
2
|
+
import type { AiMcpServerDeps } from "./types.js";
|
|
3
|
+
export interface McpHttpRegistry {
|
|
4
|
+
register(deps: AiMcpServerDeps): Promise<string>;
|
|
5
|
+
release(conversationId: string): Promise<void>;
|
|
6
|
+
handleRequest(req: IncomingMessage, res: ServerResponse): Promise<void>;
|
|
7
|
+
dispose(): Promise<void>;
|
|
8
|
+
}
|
|
9
|
+
export declare function createMcpHttpRegistry(): McpHttpRegistry;
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
import { randomBytes, randomUUID, timingSafeEqual } from "node:crypto";
|
|
2
|
+
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
3
|
+
import { StreamableHTTPServerTransport } from "@modelcontextprotocol/sdk/server/streamableHttp.js";
|
|
4
|
+
import { SIDECAR_TOKEN_BYTES } from "../constants/daemon.js";
|
|
5
|
+
import { CONTENT_TYPE, HTTP_STATUS } from "../constants/http.js";
|
|
6
|
+
import { MCP_AUTHORIZATION_HEADER, MCP_BEARER_PREFIX, MCP_LOOPBACK_HOSTNAMES, MCP_SERVER_NAME, MCP_SERVER_VERSION, } from "../constants/mcp.js";
|
|
7
|
+
import { buildToolDefinitions } from "./tool-definitions.js";
|
|
8
|
+
function registerDefinition(server, definition) {
|
|
9
|
+
server.registerTool(definition.name, { description: definition.description, inputSchema: definition.schema }, definition.handler);
|
|
10
|
+
}
|
|
11
|
+
async function buildServer(deps) {
|
|
12
|
+
const server = new McpServer({
|
|
13
|
+
name: MCP_SERVER_NAME,
|
|
14
|
+
version: MCP_SERVER_VERSION,
|
|
15
|
+
});
|
|
16
|
+
for (const definition of buildToolDefinitions(deps)) {
|
|
17
|
+
registerDefinition(server, definition);
|
|
18
|
+
}
|
|
19
|
+
return server;
|
|
20
|
+
}
|
|
21
|
+
function readBearerToken(req) {
|
|
22
|
+
const header = req.headers[MCP_AUTHORIZATION_HEADER];
|
|
23
|
+
const value = Array.isArray(header) ? header[0] : header;
|
|
24
|
+
if (value === undefined)
|
|
25
|
+
return null;
|
|
26
|
+
if (!value.toLowerCase().startsWith(MCP_BEARER_PREFIX))
|
|
27
|
+
return null;
|
|
28
|
+
return value.slice(MCP_BEARER_PREFIX.length).trim();
|
|
29
|
+
}
|
|
30
|
+
function isLoopbackHostname(value) {
|
|
31
|
+
if (value === undefined)
|
|
32
|
+
return false;
|
|
33
|
+
const withoutScheme = value.replace(/^https?:\/\//, "");
|
|
34
|
+
const hostname = withoutScheme.replace(/:\d+$/, "");
|
|
35
|
+
return MCP_LOOPBACK_HOSTNAMES.includes(hostname);
|
|
36
|
+
}
|
|
37
|
+
function isLoopbackRequest(req) {
|
|
38
|
+
if (!isLoopbackHostname(req.headers.host))
|
|
39
|
+
return false;
|
|
40
|
+
const origin = req.headers.origin;
|
|
41
|
+
if (origin === undefined)
|
|
42
|
+
return true;
|
|
43
|
+
return isLoopbackHostname(origin);
|
|
44
|
+
}
|
|
45
|
+
function tokensMatch(candidate, expected) {
|
|
46
|
+
const a = Buffer.from(candidate);
|
|
47
|
+
const b = Buffer.from(expected);
|
|
48
|
+
if (a.length !== b.length)
|
|
49
|
+
return false;
|
|
50
|
+
return timingSafeEqual(a, b);
|
|
51
|
+
}
|
|
52
|
+
function sendError(res, status, error) {
|
|
53
|
+
const body = JSON.stringify({ error });
|
|
54
|
+
res.writeHead(status, {
|
|
55
|
+
"Content-Type": CONTENT_TYPE.JSON,
|
|
56
|
+
"Content-Length": Buffer.byteLength(body),
|
|
57
|
+
});
|
|
58
|
+
res.end(body);
|
|
59
|
+
}
|
|
60
|
+
export function createMcpHttpRegistry() {
|
|
61
|
+
const byConversation = new Map();
|
|
62
|
+
function resolve(token) {
|
|
63
|
+
let matched = null;
|
|
64
|
+
for (const binding of byConversation.values()) {
|
|
65
|
+
if (tokensMatch(token, binding.token))
|
|
66
|
+
matched = binding;
|
|
67
|
+
}
|
|
68
|
+
return matched;
|
|
69
|
+
}
|
|
70
|
+
async function closeBinding(binding) {
|
|
71
|
+
await binding.transport.close();
|
|
72
|
+
await binding.server.close();
|
|
73
|
+
}
|
|
74
|
+
return {
|
|
75
|
+
async register(deps) {
|
|
76
|
+
await this.release(deps.conversationId);
|
|
77
|
+
const server = await buildServer(deps);
|
|
78
|
+
const transport = new StreamableHTTPServerTransport({
|
|
79
|
+
sessionIdGenerator: () => randomUUID(),
|
|
80
|
+
enableJsonResponse: true,
|
|
81
|
+
});
|
|
82
|
+
await server.connect(transport);
|
|
83
|
+
const token = randomBytes(SIDECAR_TOKEN_BYTES).toString("hex");
|
|
84
|
+
byConversation.set(deps.conversationId, {
|
|
85
|
+
conversationId: deps.conversationId,
|
|
86
|
+
token,
|
|
87
|
+
server,
|
|
88
|
+
transport,
|
|
89
|
+
});
|
|
90
|
+
return token;
|
|
91
|
+
},
|
|
92
|
+
async release(conversationId) {
|
|
93
|
+
const binding = byConversation.get(conversationId);
|
|
94
|
+
if (binding === undefined)
|
|
95
|
+
return;
|
|
96
|
+
byConversation.delete(conversationId);
|
|
97
|
+
await closeBinding(binding);
|
|
98
|
+
},
|
|
99
|
+
async handleRequest(req, res) {
|
|
100
|
+
if (!isLoopbackRequest(req)) {
|
|
101
|
+
sendError(res, HTTP_STATUS.FORBIDDEN, "non-loopback request");
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
const token = readBearerToken(req);
|
|
105
|
+
if (token === null) {
|
|
106
|
+
sendError(res, HTTP_STATUS.UNAUTHORIZED, "missing bearer token");
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
const binding = resolve(token);
|
|
110
|
+
if (binding === null) {
|
|
111
|
+
sendError(res, HTTP_STATUS.UNAUTHORIZED, "unknown bearer token");
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
114
|
+
await binding.transport.handleRequest(req, res);
|
|
115
|
+
},
|
|
116
|
+
async dispose() {
|
|
117
|
+
const bindings = [...byConversation.values()];
|
|
118
|
+
byConversation.clear();
|
|
119
|
+
await Promise.all(bindings.map(closeBinding));
|
|
120
|
+
},
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
//# sourceMappingURL=http-binding.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-binding.js","sourceRoot":"","sources":["../../src/mcp/http-binding.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { createSdkMcpServer, tool } from "@anthropic-ai/claude-agent-sdk";
|
|
2
|
+
import { MCP_SERVER_NAME, MCP_SERVER_VERSION } from "../constants/mcp.js";
|
|
3
|
+
import { buildToolDefinitions } from "./tool-definitions.js";
|
|
4
|
+
function toSdkTool(definition) {
|
|
5
|
+
return tool(definition.name, definition.description, definition.schema, definition.handler);
|
|
6
|
+
}
|
|
7
|
+
export function createAiMcpServer(deps) {
|
|
8
|
+
return createSdkMcpServer({
|
|
9
|
+
name: MCP_SERVER_NAME,
|
|
10
|
+
version: MCP_SERVER_VERSION,
|
|
11
|
+
tools: buildToolDefinitions(deps).map(toSdkTool),
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=sdk-binding.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sdk-binding.js","sourceRoot":"","sources":["../../src/mcp/sdk-binding.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAE1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAG7D,SAAS,SAAS,CAAC,UAAgC;IACjD,OAAO,IAAI,CACT,UAAU,CAAC,IAAI,EACf,UAAU,CAAC,WAAW,EACtB,UAAU,CAAC,MAAM,EACjB,UAAU,CAAC,OAAO,CACnB,CAAC;AACJ,CAAC;AAOD,MAAM,UAAU,iBAAiB,CAAC,IAAqB;IACrD,OAAO,kBAAkB,CAAC;QACxB,IAAI,EAAE,eAAe;QACrB,OAAO,EAAE,kBAAkB;QAC3B,KAAK,EAAE,oBAAoB,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC;KACjD,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import { createSdkMcpServer } from "@anthropic-ai/claude-agent-sdk";
|
|
2
|
-
import { MCP_SERVER_NAME, MCP_SERVER_VERSION } from "../constants/mcp.js";
|
|
3
1
|
import { buildAskUserTool } from "./tools/ask-user.js";
|
|
4
2
|
import { buildBuilderTools } from "./tools/builder.js";
|
|
5
3
|
import { buildFindPagesUsingTool } from "./tools/find-pages-using.js";
|
|
@@ -8,7 +6,7 @@ import { buildListPagesTool } from "./tools/list-pages.js";
|
|
|
8
6
|
import { buildNavigateToPageTool } from "./tools/navigate-to-page.js";
|
|
9
7
|
import { buildQueryLogsTool } from "./tools/query-logs.js";
|
|
10
8
|
import { buildTypecheckTool } from "./tools/typecheck.js";
|
|
11
|
-
function
|
|
9
|
+
export function buildToolDefinitions(deps) {
|
|
12
10
|
const builderTools = deps.builderEnabled
|
|
13
11
|
? buildBuilderTools({ builderClient: deps.builderClient })
|
|
14
12
|
: [];
|
|
@@ -40,11 +38,4 @@ function buildTools(deps) {
|
|
|
40
38
|
buildQueryLogsTool({ logsClient: deps.logsClient }),
|
|
41
39
|
];
|
|
42
40
|
}
|
|
43
|
-
|
|
44
|
-
return createSdkMcpServer({
|
|
45
|
-
name: MCP_SERVER_NAME,
|
|
46
|
-
version: MCP_SERVER_VERSION,
|
|
47
|
-
tools: buildTools(deps),
|
|
48
|
-
});
|
|
49
|
-
}
|
|
50
|
-
//# sourceMappingURL=server.js.map
|
|
41
|
+
//# sourceMappingURL=tool-definitions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-definitions.js","sourceRoot":"","sources":["../../src/mcp/tool-definitions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D,MAAM,UAAU,oBAAoB,CAClC,IAAqB;IAErB,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc;QACtC,CAAC,CAAC,iBAAiB,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC;QAC1D,CAAC,CAAC,EAAE,CAAC;IACP,OAAO;QACL,GAAG,YAAY;QACf,uBAAuB,CAAC,IAAI,CAAC,cAAc,CAAC;QAC5C,uBAAuB,CAAC;YACtB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,cAAc,EAAE,IAAI,CAAC,cAAc;SACpC,CAAC;QACF,kBAAkB,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC/C,uBAAuB,CAAC;YACtB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;YAC7C,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,cAAc,EAAE,IAAI,CAAC,cAAc;SACpC,CAAC;QACF,gBAAgB,CAAC;YACf,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,eAAe,EAAE,IAAI,CAAC,eAAe;SACtC,CAAC;QACF,kBAAkB,CAAC;YACjB,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;SAC1C,CAAC;QACF,kBAAkB,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;KACpD,CAAC;AACJ,CAAC"}
|
|
@@ -4,7 +4,7 @@ export interface AskUserDeps {
|
|
|
4
4
|
conversationId: string;
|
|
5
5
|
requestQuestion: (req: QuestionRequest) => Promise<string[] | null>;
|
|
6
6
|
}
|
|
7
|
-
export declare function buildAskUserTool(deps: AskUserDeps): import("
|
|
7
|
+
export declare function buildAskUserTool(deps: AskUserDeps): import("../define-tool.js").McpToolDefinition<{
|
|
8
8
|
readonly questions: z.ZodArray<z.ZodObject<{
|
|
9
9
|
question: z.ZodString;
|
|
10
10
|
header: z.ZodString;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { tool } from "@anthropic-ai/claude-agent-sdk";
|
|
2
1
|
import { z } from "zod";
|
|
3
2
|
import { ASK_USER_RESULT_NO_ANSWER, ASK_USER_RESULT_PREFIX, ASK_USER_TOOL_DESCRIPTION, ASK_USER_TOOL_NAME, } from "../../constants/mcp.js";
|
|
4
3
|
import { QuestionSchema } from "../../protocol/events.js";
|
|
4
|
+
import { defineTool } from "../define-tool.js";
|
|
5
5
|
const INPUT_SCHEMA = {
|
|
6
6
|
questions: z.array(QuestionSchema).min(1).max(4),
|
|
7
7
|
};
|
|
@@ -18,7 +18,7 @@ function buildContent(text) {
|
|
|
18
18
|
return { content: [{ type: "text", text }] };
|
|
19
19
|
}
|
|
20
20
|
export function buildAskUserTool(deps) {
|
|
21
|
-
return
|
|
21
|
+
return defineTool(ASK_USER_TOOL_NAME, ASK_USER_TOOL_DESCRIPTION, INPUT_SCHEMA, async ({ questions }) => {
|
|
22
22
|
const answers = await deps.requestQuestion({
|
|
23
23
|
conversationId: deps.conversationId,
|
|
24
24
|
questions,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ask-user.js","sourceRoot":"","sources":["../../../src/mcp/tools/ask-user.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"ask-user.js","sourceRoot":"","sources":["../../../src/mcp/tools/ask-user.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EACL,yBAAyB,EACzB,sBAAsB,EACtB,yBAAyB,EACzB,kBAAkB,GACnB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,cAAc,EAAqB,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAO/C,MAAM,YAAY,GAAG;IACnB,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;CACxC,CAAC;AAEX,SAAS,eAAe,CACtB,SAAyB,EACzB,OAAwB;IAExB,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,yBAAyB,CAAC;IACvD,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACnC,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,aAAa,CAAC;QAC3C,OAAO,KAAK,CAAC,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;IACpC,CAAC,CAAC,CAAC;IACH,OAAO,GAAG,sBAAsB,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;AAC1D,CAAC;AAED,SAAS,YAAY,CAAC,IAAY;IAGhC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,IAAiB;IAChD,OAAO,UAAU,CACf,kBAAkB,EAClB,yBAAyB,EACzB,YAAY,EACZ,KAAK,EAAE,EAAE,SAAS,EAAiC,EAAE,EAAE;QACrD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC;YACzC,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,SAAS;SACV,CAAC,CAAC;QACH,OAAO,YAAY,CAAC,eAAe,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;IAC3D,CAAC,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -3,19 +3,19 @@ import type { BuilderClient } from "../../builder/builder-client.js";
|
|
|
3
3
|
export interface BuilderToolsDeps {
|
|
4
4
|
builderClient: BuilderClient;
|
|
5
5
|
}
|
|
6
|
-
export declare function buildBuilderTools(deps: BuilderToolsDeps): (import("
|
|
6
|
+
export declare function buildBuilderTools(deps: BuilderToolsDeps): (import("../define-tool.js").McpToolDefinition<{}> | import("../define-tool.js").McpToolDefinition<{
|
|
7
7
|
pageRef: z.ZodString;
|
|
8
|
-
}> | import("
|
|
8
|
+
}> | import("../define-tool.js").McpToolDefinition<{
|
|
9
9
|
name: z.ZodString;
|
|
10
10
|
displayName: z.ZodString;
|
|
11
11
|
category: z.ZodString;
|
|
12
12
|
icon: z.ZodOptional<z.ZodString>;
|
|
13
13
|
order: z.ZodOptional<z.ZodNumber>;
|
|
14
14
|
description: z.ZodOptional<z.ZodString>;
|
|
15
|
-
}> | import("
|
|
15
|
+
}> | import("../define-tool.js").McpToolDefinition<{
|
|
16
16
|
pageRef: z.ZodString;
|
|
17
17
|
patch: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
18
|
-
}> | import("
|
|
18
|
+
}> | import("../define-tool.js").McpToolDefinition<{
|
|
19
19
|
page: z.ZodString;
|
|
20
20
|
parent: z.ZodOptional<z.ZodString>;
|
|
21
21
|
slot: z.ZodOptional<z.ZodString>;
|
|
@@ -24,31 +24,31 @@ export declare function buildBuilderTools(deps: BuilderToolsDeps): (import("@ant
|
|
|
24
24
|
type: z.ZodString;
|
|
25
25
|
config: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
26
26
|
controller: z.ZodOptional<z.ZodString>;
|
|
27
|
-
}> | import("
|
|
27
|
+
}> | import("../define-tool.js").McpToolDefinition<{
|
|
28
28
|
path: z.ZodString;
|
|
29
29
|
patch: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
30
30
|
replace: z.ZodOptional<z.ZodBoolean>;
|
|
31
|
-
}> | import("
|
|
31
|
+
}> | import("../define-tool.js").McpToolDefinition<{
|
|
32
32
|
path: z.ZodString;
|
|
33
33
|
parent: z.ZodString;
|
|
34
34
|
slot: z.ZodOptional<z.ZodString>;
|
|
35
35
|
index: z.ZodNumber;
|
|
36
|
-
}> | import("
|
|
36
|
+
}> | import("../define-tool.js").McpToolDefinition<{
|
|
37
37
|
path: z.ZodString;
|
|
38
|
-
}> | import("
|
|
38
|
+
}> | import("../define-tool.js").McpToolDefinition<{
|
|
39
39
|
name: z.ZodString;
|
|
40
40
|
displayName: z.ZodString;
|
|
41
41
|
parent: z.ZodOptional<z.ZodString>;
|
|
42
42
|
icon: z.ZodOptional<z.ZodString>;
|
|
43
43
|
order: z.ZodOptional<z.ZodNumber>;
|
|
44
|
-
}> | import("
|
|
44
|
+
}> | import("../define-tool.js").McpToolDefinition<{
|
|
45
45
|
ref: z.ZodString;
|
|
46
46
|
patch: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
47
|
-
}> | import("
|
|
47
|
+
}> | import("../define-tool.js").McpToolDefinition<{
|
|
48
48
|
ref: z.ZodString;
|
|
49
|
-
}> | import("
|
|
49
|
+
}> | import("../define-tool.js").McpToolDefinition<{
|
|
50
50
|
pageRef: z.ZodOptional<z.ZodString>;
|
|
51
|
-
}> | import("
|
|
51
|
+
}> | import("../define-tool.js").McpToolDefinition<{
|
|
52
52
|
name: z.ZodString;
|
|
53
53
|
displayName: z.ZodOptional<z.ZodString>;
|
|
54
54
|
schema: z.ZodOptional<z.ZodString>;
|
|
@@ -87,10 +87,10 @@ export declare function buildBuilderTools(deps: BuilderToolsDeps): (import("@ant
|
|
|
87
87
|
archive: "archive";
|
|
88
88
|
export: "export";
|
|
89
89
|
}>>>;
|
|
90
|
-
}> | import("
|
|
90
|
+
}> | import("../define-tool.js").McpToolDefinition<{
|
|
91
91
|
ref: z.ZodString;
|
|
92
92
|
keepData: z.ZodOptional<z.ZodBoolean>;
|
|
93
|
-
}> | import("
|
|
93
|
+
}> | import("../define-tool.js").McpToolDefinition<{
|
|
94
94
|
ref: z.ZodString;
|
|
95
95
|
field: z.ZodObject<{
|
|
96
96
|
dataType: z.ZodObject<{
|
|
@@ -111,7 +111,7 @@ export declare function buildBuilderTools(deps: BuilderToolsDeps): (import("@ant
|
|
|
111
111
|
order: z.ZodOptional<z.ZodNumber>;
|
|
112
112
|
name: z.ZodString;
|
|
113
113
|
}, z.core.$strip>;
|
|
114
|
-
}> | import("
|
|
114
|
+
}> | import("../define-tool.js").McpToolDefinition<{
|
|
115
115
|
path: z.ZodString;
|
|
116
116
|
patch: z.ZodObject<{
|
|
117
117
|
dataType: z.ZodOptional<z.ZodObject<{
|
|
@@ -131,16 +131,16 @@ export declare function buildBuilderTools(deps: BuilderToolsDeps): (import("@ant
|
|
|
131
131
|
indexed: z.ZodOptional<z.ZodBoolean>;
|
|
132
132
|
order: z.ZodOptional<z.ZodNumber>;
|
|
133
133
|
}, z.core.$strip>;
|
|
134
|
-
}> | import("
|
|
134
|
+
}> | import("../define-tool.js").McpToolDefinition<{
|
|
135
135
|
resourceType: z.ZodOptional<z.ZodString>;
|
|
136
|
-
}> | import("
|
|
136
|
+
}> | import("../define-tool.js").McpToolDefinition<{
|
|
137
137
|
page: z.ZodString;
|
|
138
138
|
name: z.ZodString;
|
|
139
139
|
resource: z.ZodString;
|
|
140
140
|
template: z.ZodString;
|
|
141
141
|
params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
142
142
|
endpoint: z.ZodOptional<z.ZodString>;
|
|
143
|
-
}> | import("
|
|
143
|
+
}> | import("../define-tool.js").McpToolDefinition<{
|
|
144
144
|
query: z.ZodString;
|
|
145
145
|
patch: z.ZodObject<{
|
|
146
146
|
resource: z.ZodOptional<z.ZodString>;
|
|
@@ -148,6 +148,6 @@ export declare function buildBuilderTools(deps: BuilderToolsDeps): (import("@ant
|
|
|
148
148
|
params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
149
149
|
endpoint: z.ZodOptional<z.ZodString>;
|
|
150
150
|
}, z.core.$strip>;
|
|
151
|
-
}> | import("
|
|
151
|
+
}> | import("../define-tool.js").McpToolDefinition<{
|
|
152
152
|
query: z.ZodString;
|
|
153
153
|
}>)[];
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { tool } from "@anthropic-ai/claude-agent-sdk";
|
|
2
1
|
import { z } from "zod";
|
|
3
2
|
import { BUILDER_ESCALATION_NOTE, BUILDER_EXPR_REFUSAL, BUILDER_REF_NOTE, } from "../../prompts/builder.js";
|
|
3
|
+
import { defineTool } from "../define-tool.js";
|
|
4
4
|
function content(text) {
|
|
5
5
|
return { content: [{ type: "text", text }] };
|
|
6
6
|
}
|
|
@@ -108,10 +108,10 @@ const FIELD_ASPECTS_PATCH = z.object({
|
|
|
108
108
|
export function buildBuilderTools(deps) {
|
|
109
109
|
const run = async (op, args) => content(JSON.stringify(await deps.builderClient.call(op, args)));
|
|
110
110
|
return [
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
111
|
+
defineTool("BuilderCatalog", note("Lists every block type and DataType the page builder can emit, with their config schemas. Call this before adding blocks so you use valid types and options. For a config field whose schema is marked `x-dataType` (e.g. a Form field's `type`), pass a DataType value `{ $dataType: \"<id>\", config: {…} }` using an id and config from this catalog's `dataTypes` — never a raw `$expr`."), {}, () => run("GetCatalog", [])),
|
|
112
|
+
defineTool("BuilderListPages", note("Lists all builder-editable pages (route, id, category, file)."), {}, () => run("ListPages", [])),
|
|
113
|
+
defineTool("BuilderPageStructure", note(`Returns a page's block tree (each block's path, type, editability, config) plus a version hash for optimistic concurrency. ${BLOCK_PATH_FORMAT}`), { pageRef: z.string() }, ({ pageRef }) => run("GetPageStructure", [pageRef])),
|
|
114
|
+
defineTool("BuilderCreatePage", note("Creates a new page under an existing category and wires it into the barrel so it registers."), {
|
|
115
115
|
name: z.string(),
|
|
116
116
|
displayName: z.string(),
|
|
117
117
|
category: z.string(),
|
|
@@ -119,11 +119,11 @@ export function buildBuilderTools(deps) {
|
|
|
119
119
|
order: z.number().optional(),
|
|
120
120
|
description: z.string().optional(),
|
|
121
121
|
}, (input) => run("CreatePage", [input])),
|
|
122
|
-
|
|
122
|
+
defineTool("BuilderConfigurePage", note("Updates a page's metadata (displayName, icon, order, description)."), { pageRef: z.string(), patch: CONFIG }, async ({ pageRef, patch }) => hasExprSentinel(patch)
|
|
123
123
|
? exprRefusal()
|
|
124
124
|
: run("ConfigurePage", [pageRef, patch])),
|
|
125
|
-
|
|
126
|
-
|
|
125
|
+
defineTool("BuilderDeletePage", note("Deletes a page file and removes its barrel import."), { pageRef: z.string() }, ({ pageRef }) => run("DeletePage", [pageRef])),
|
|
126
|
+
defineTool("BuilderAddBlock", note("Adds a block. Omit `parent` for a top-level block, or pass a container block's path to nest. `type` and `config` must match the catalog. Block types the catalog marks `controllerArg: true` (e.g. `TableView`) bind to a data resource: pass `controller` = the resource `ref` from BuilderListResources (its DataAPI class becomes the block's leading argument) and put the display options in `config`."), {
|
|
127
127
|
page: z.string(),
|
|
128
128
|
parent: PARENT_PATH.optional(),
|
|
129
129
|
slot: z.string().optional(),
|
|
@@ -138,31 +138,31 @@ export function buildBuilderTools(deps) {
|
|
|
138
138
|
}, async (input) => hasExprSentinel(input.config)
|
|
139
139
|
? exprRefusal()
|
|
140
140
|
: run("AddBlock", [input])),
|
|
141
|
-
|
|
141
|
+
defineTool("BuilderConfigureBlock", note("Merges (or replaces, with replace:true) options into a block's config. Children are managed with Add/Move/Remove, not here."), { path: BLOCK_PATH, patch: CONFIG, replace: z.boolean().optional() }, async ({ path, patch, replace, }) => hasExprSentinel(patch)
|
|
142
142
|
? exprRefusal()
|
|
143
143
|
: run("ConfigureBlock", [path, patch, { replace }])),
|
|
144
|
-
|
|
144
|
+
defineTool("BuilderMoveBlock", note("Moves a child block to a new position within a container."), {
|
|
145
145
|
path: BLOCK_PATH,
|
|
146
146
|
parent: PARENT_PATH,
|
|
147
147
|
slot: z.string().optional(),
|
|
148
148
|
index: z.number(),
|
|
149
149
|
}, ({ path, parent, slot, index, }) => run("MoveBlock", [path, { parent, slot, index }])),
|
|
150
|
-
|
|
151
|
-
|
|
150
|
+
defineTool("BuilderRemoveBlock", note("Removes a block and its whole subtree."), { path: BLOCK_PATH }, ({ path }) => run("RemoveBlock", [path])),
|
|
151
|
+
defineTool("BuilderCreateCategory", note("Creates a navigation category (optionally under a parent category)."), {
|
|
152
152
|
name: z.string(),
|
|
153
153
|
displayName: z.string(),
|
|
154
154
|
parent: z.string().optional(),
|
|
155
155
|
icon: z.string().optional(),
|
|
156
156
|
order: z.number().optional(),
|
|
157
157
|
}, (input) => run("CreateCategory", [input])),
|
|
158
|
-
|
|
158
|
+
defineTool("BuilderConfigureCategory", note("Updates a category's metadata (displayName, icon, order)."), { ref: z.string(), patch: CONFIG }, async ({ ref, patch }) => hasExprSentinel(patch)
|
|
159
159
|
? exprRefusal()
|
|
160
160
|
: run("ConfigureCategory", [ref, patch])),
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
161
|
+
defineTool("BuilderDeleteCategory", note("Deletes a category. Refused with referential_integrity if any page still references it."), { ref: z.string() }, ({ ref }) => run("DeleteCategory", [ref])),
|
|
162
|
+
defineTool("BuilderRefresh", note("Reconciles the builder's source index with disk after out-of-band edits (e.g. a vibe-mode excursion)."), { pageRef: z.string().optional() }, ({ pageRef }) => run("RefreshSourceIndex", pageRef ? [{ page: pageRef }] : [])),
|
|
163
|
+
defineTool("BuilderListResources", note("Lists every data resource (its ref, class/table names, /api route, field count, files). A resource is a Database Table+Model paired with a DataAPI controller."), {}, () => run("ListResources", [])),
|
|
164
|
+
defineTool("BuilderResourceStructure", note("Returns a resource's fields with their semantic aspects, its `routes` (absent when it serves the full set), and a version hash for optimistic concurrency. Hand-edited or relation fields come back marked `opaque` — safe mode cannot reconfigure those."), { ref: z.string() }, ({ ref }) => run("GetResourceStructure", [ref])),
|
|
165
|
+
defineTool("BuilderCreateResource", note("Creates a data resource — a Database Table+Model plus a matching DataAPI controller at /api/<name> — as a folder wired into the nearest barrel. Every resource auto-manages its own `_id`. When you limit `routes`, keep the view in sync: drop the TableView rowActions whose routes you left out, or bind a Form instead."), {
|
|
166
166
|
name: z.string(),
|
|
167
167
|
displayName: z.string().optional(),
|
|
168
168
|
schema: z.string().optional(),
|
|
@@ -171,19 +171,19 @@ export function buildBuilderTools(deps) {
|
|
|
171
171
|
location: RESOURCE_LOCATION.optional(),
|
|
172
172
|
routes: z.array(RESOURCE_ROUTE).min(1).optional(),
|
|
173
173
|
}, async (input) => hasExprSentinel(input) ? exprRefusal() : run("CreateResource", [input])),
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
174
|
+
defineTool("BuilderDeleteResource", note("Deletes a resource: removes its database.ts/data-api.ts/index.ts files, unwires the barrel export, and (by default) clears the resource's database table so a later resource reusing the name re-seeds cleanly instead of inheriting stale rows. Pass keepData: true to leave the table data in place. Does not detect pages whose TableView references its /api route."), { ref: z.string(), keepData: z.boolean().optional() }, ({ ref, keepData }) => run("DeleteResource", keepData === undefined ? [ref] : [ref, { keepData }])),
|
|
175
|
+
defineTool("BuilderAddField", note("Adds a field to a resource, editing the Table and DataAPI classes together in one atomic op."), { ref: z.string(), field: FIELD_SPEC }, async ({ ref, field }) => hasExprSentinel(field) ? exprRefusal() : run("AddField", [ref, field])),
|
|
176
|
+
defineTool("BuilderConfigureField", note("Reconfigures a field by merging the patch over its current aspects and re-deriving the whole decorator stack on both classes (no drift). Field name is immutable — rename via BuilderRemoveField + BuilderAddField."), { path: FIELD_PATH, patch: FIELD_ASPECTS_PATCH }, async ({ path, patch }) => hasExprSentinel(patch)
|
|
177
177
|
? exprRefusal()
|
|
178
178
|
: run("ConfigureField", [path, patch])),
|
|
179
|
-
|
|
180
|
-
|
|
179
|
+
defineTool("BuilderRemoveField", note("Removes a field from a resource's Table and DataAPI classes in one atomic op. Leaves seed rows untouched."), { path: FIELD_PATH }, ({ path }) => run("RemoveField", [path])),
|
|
180
|
+
defineTool("BuilderQueryTemplates", note("Lists the query templates BuilderAddQuery can compile, each with its id, what it computes, its `output` kind, and the JSON Schema for its `params`. Call this before adding a query — the schema is the reference for every parameter and value shape."), {
|
|
181
181
|
resourceType: z
|
|
182
182
|
.string()
|
|
183
183
|
.optional()
|
|
184
184
|
.describe("Filter to templates for one resource type (v1 has only `database-table`). Omit for all."),
|
|
185
185
|
}, ({ resourceType }) => run("ListQueryTemplates", resourceType ? [resourceType] : [])),
|
|
186
|
-
|
|
186
|
+
defineTool("BuilderAddQuery", note("Adds a query — a page-hosted GET route serving one computed number that the DataAPI cannot give you. Compiles the template into a method on the resource's model and a route on the page, atomically. Returns `{ query, route }`; `route` is the full URL to pass as a KpiCard's `fetchUrl`, and it serves `{ \"value\": <number> }`."), {
|
|
187
187
|
page: z
|
|
188
188
|
.string()
|
|
189
189
|
.describe("PageRef the query is served from — the page that displays it, not the resource's page."),
|
|
@@ -199,7 +199,7 @@ export function buildBuilderTools(deps) {
|
|
|
199
199
|
params: QUERY_PARAMS.optional(),
|
|
200
200
|
endpoint: QUERY_ENDPOINT.optional(),
|
|
201
201
|
}, async ({ page, ...input }) => hasExprSentinel(input) ? exprRefusal() : run("AddQuery", [page, input])),
|
|
202
|
-
|
|
202
|
+
defineTool("BuilderConfigureQuery", note("Recompiles a query, replacing both its route and its chain. Only the keys you pass change; the rest are re-read from the query. A query BuilderPageStructure reports as `opaque` is refused with opaque_target, leaving the hand-edit intact. Renaming is not supported — remove and re-add. Never affects another page's query, even one sharing the same model method."), {
|
|
203
203
|
query: QUERY_REF,
|
|
204
204
|
patch: z.object({
|
|
205
205
|
resource: z.string().optional(),
|
|
@@ -210,7 +210,7 @@ export function buildBuilderTools(deps) {
|
|
|
210
210
|
}, async ({ query, patch }) => hasExprSentinel(patch)
|
|
211
211
|
? exprRefusal()
|
|
212
212
|
: run("ConfigureQuery", [query, patch])),
|
|
213
|
-
|
|
213
|
+
defineTool("BuilderRemoveQuery", note("Removes a query's route from the page, and its model method too once no route on any page still calls it. Works on an opaque query as well — the builder can always remove what it cannot edit. Does not detect blocks whose fetchUrl points at the removed route: fix those in the same turn."), { query: QUERY_REF }, ({ query }) => run("RemoveQuery", [query])),
|
|
214
214
|
];
|
|
215
215
|
}
|
|
216
216
|
//# sourceMappingURL=builder.js.map
|