@adhd/agent-mcp 1.1.4 → 2.0.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/drizzle/0006_composed_prompts_cache.sql +24 -0
- package/drizzle/meta/0006_snapshot.json +651 -0
- package/drizzle/meta/_journal.json +8 -1
- package/package.json +5 -1
- package/src/__tests__/integration/harness.d.ts.map +1 -1
- package/src/__tests__/integration/harness.js +10 -8
- package/src/__tests__/integration/harness.js.map +1 -1
- package/src/clients/stdio-client.d.ts.map +1 -1
- package/src/clients/stdio-client.js +2 -1
- package/src/clients/stdio-client.js.map +1 -1
- package/src/config.d.ts +114 -0
- package/src/config.d.ts.map +1 -0
- package/src/config.js +287 -0
- package/src/config.js.map +1 -0
- package/src/db/client.d.ts.map +1 -1
- package/src/db/client.js +2 -3
- package/src/db/client.js.map +1 -1
- package/src/db/schema.d.ts +242 -0
- package/src/db/schema.d.ts.map +1 -1
- package/src/db/schema.js +38 -1
- package/src/db/schema.js.map +1 -1
- package/src/engine/orchestrator.d.ts.map +1 -1
- package/src/engine/orchestrator.js +3 -2
- package/src/engine/orchestrator.js.map +1 -1
- package/src/engine/policy.d.ts +24 -0
- package/src/engine/policy.d.ts.map +1 -1
- package/src/engine/policy.js +73 -6
- package/src/engine/policy.js.map +1 -1
- package/src/engine/prompt-resolver.d.ts +89 -0
- package/src/engine/prompt-resolver.d.ts.map +1 -0
- package/src/engine/prompt-resolver.js +96 -0
- package/src/engine/prompt-resolver.js.map +1 -0
- package/src/engine/queue.d.ts.map +1 -1
- package/src/engine/queue.js +2 -2
- package/src/engine/queue.js.map +1 -1
- package/src/index.d.ts +31 -3
- package/src/index.d.ts.map +1 -1
- package/src/index.js +131 -20
- package/src/index.js.map +1 -1
- package/src/logger.d.ts.map +1 -1
- package/src/logger.js +2 -1
- package/src/logger.js.map +1 -1
- package/src/plugins/loader.d.ts +19 -6
- package/src/plugins/loader.d.ts.map +1 -1
- package/src/plugins/loader.js +23 -13
- package/src/plugins/loader.js.map +1 -1
- package/src/providers/anthropic.d.ts +5 -5
- package/src/providers/anthropic.d.ts.map +1 -1
- package/src/providers/anthropic.js +53 -188
- package/src/providers/anthropic.js.map +1 -1
- package/src/providers/claudecli.d.ts +92 -5
- package/src/providers/claudecli.d.ts.map +1 -1
- package/src/providers/claudecli.js +224 -47
- package/src/providers/claudecli.js.map +1 -1
- package/src/providers/factory.d.ts +1 -1
- package/src/providers/factory.d.ts.map +1 -1
- package/src/providers/factory.js +6 -9
- package/src/providers/factory.js.map +1 -1
- package/src/providers/index.d.ts +1 -1
- package/src/providers/index.d.ts.map +1 -1
- package/src/providers/index.js +1 -1
- package/src/providers/index.js.map +1 -1
- package/src/providers/openai.d.ts +4 -2
- package/src/providers/openai.d.ts.map +1 -1
- package/src/providers/openai.js +29 -18
- package/src/providers/openai.js.map +1 -1
- package/src/providers/types.d.ts +1 -1
- package/src/server.d.ts +8 -0
- package/src/server.d.ts.map +1 -1
- package/src/server.js +19 -12
- package/src/server.js.map +1 -1
- package/src/store/agent-store.d.ts +13 -0
- package/src/store/agent-store.d.ts.map +1 -1
- package/src/store/agent-store.js +16 -3
- package/src/store/agent-store.js.map +1 -1
- package/src/store/composed-prompt-store.d.ts +24 -0
- package/src/store/composed-prompt-store.d.ts.map +1 -0
- package/src/store/composed-prompt-store.js +75 -0
- package/src/store/composed-prompt-store.js.map +1 -0
- package/src/store/index.d.ts +1 -0
- package/src/store/index.d.ts.map +1 -1
- package/src/store/index.js +1 -0
- package/src/store/index.js.map +1 -1
- package/src/store/session-store.d.ts +8 -0
- package/src/store/session-store.d.ts.map +1 -1
- package/src/store/session-store.js +3 -2
- package/src/store/session-store.js.map +1 -1
- package/src/streaming/sse-server.d.ts +2 -2
- package/src/streaming/sse-server.d.ts.map +1 -1
- package/src/streaming/sse-server.js +4 -4
- package/src/streaming/sse-server.js.map +1 -1
- package/src/tools/session.d.ts +12 -0
- package/src/tools/session.d.ts.map +1 -1
- package/src/tools/session.js +33 -1
- package/src/tools/session.js.map +1 -1
- package/src/tools/task.d.ts.map +1 -1
- package/src/tools/task.js +2 -2
- package/src/tools/task.js.map +1 -1
- package/src/tools/usage.d.ts.map +1 -1
- package/src/tools/usage.js +10 -3
- package/src/tools/usage.js.map +1 -1
- package/src/utils/load-env.d.ts +16 -0
- package/src/utils/load-env.d.ts.map +1 -0
- package/src/utils/load-env.js +27 -0
- package/src/utils/load-env.js.map +1 -0
- package/src/validation/agent.d.ts +150 -62
- package/src/validation/agent.d.ts.map +1 -1
- package/src/validation/agent.js +152 -37
- package/src/validation/agent.js.map +1 -1
- package/src/validation/errors.d.ts +1 -0
- package/src/validation/errors.d.ts.map +1 -1
- package/src/validation/errors.js +2 -0
- package/src/validation/errors.js.map +1 -1
- package/src/validation/execution.d.ts +13 -20
- package/src/validation/execution.d.ts.map +1 -1
- package/src/providers/lmstudio.d.ts +0 -8
- package/src/providers/lmstudio.d.ts.map +0 -1
- package/src/providers/lmstudio.js +0 -15
- package/src/providers/lmstudio.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../../../../../packages/ai/agent-mcp/src/validation/agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../../../../../packages/ai/agent-mcp/src/validation/agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,iBAAiB;;;;;iBAK5B,CAAC;AAoIH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAI/B,CAAC;AAUH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAAiD,CAAC;AAEzF,YAAY,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAG5D,eAAO,MAAM,sBAAsB;;iBAKjC,CAAC;AAEH,YAAY,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAG9D,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA0BhC,CAAC;AAEH,YAAY,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAM7D,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAEtC,CAAC;AAmCH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAM0C,CAAC;AAe9E,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAKyD,CAAC;AAE7F,eAAO,MAAM,oBAAoB;;iBAE/B,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;iBASjC,CAAC;AAEH,eAAO,MAAM,oBAAoB,+CAA0B,CAAC;AAE5D,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACtE,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACtE,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC"}
|
package/src/validation/agent.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { mcpServerConfigSchema } from "./mcp.js";
|
|
3
|
+
import { config } from "../config.js";
|
|
3
4
|
// Retry configuration for LLM provider calls
|
|
4
5
|
export const retryConfigSchema = z.object({
|
|
5
6
|
retries: z.number().int().nonnegative().default(3),
|
|
@@ -7,43 +8,47 @@ export const retryConfigSchema = z.object({
|
|
|
7
8
|
maxTimeout: z.number().int().positive().default(30_000),
|
|
8
9
|
factor: z.number().positive().default(2),
|
|
9
10
|
});
|
|
10
|
-
// Provider
|
|
11
|
+
// ── Provider env block (§3) ───────────────────────────────────────────────────
|
|
12
|
+
// Each field holds an ADHD_AGENT_*-prefixed env-var NAME (not the secret value).
|
|
13
|
+
// Enforced at agent_create / agent_update time by the isEnvNameAllowed guard.
|
|
14
|
+
const providerEnvBlockSchema = z
|
|
15
|
+
.object({
|
|
16
|
+
/** Env-var name whose value is the secret (API key or OAuth token). */
|
|
17
|
+
secret: z.string().optional(),
|
|
18
|
+
/** Env-var name whose value is the provider base URL. */
|
|
19
|
+
base_url: z.string().optional(),
|
|
20
|
+
/** Env-var name whose value is the model id. */
|
|
21
|
+
model: z.string().optional(),
|
|
22
|
+
})
|
|
23
|
+
.optional();
|
|
24
|
+
// NOTE (DEBT-014): the ADHD_AGENT_-prefix guard is intentionally NOT applied on this
|
|
25
|
+
// base block. It runs ONLY on agent_create / agent_update INPUT (see envNameGuard
|
|
26
|
+
// below) — never on the READ path, or legacy stored rows whose secret name predates
|
|
27
|
+
// the prefix scheme would fail to parse (and even agent_delete, which reads the row,
|
|
28
|
+
// would break).
|
|
29
|
+
// ── Base-URL schema (§3) ──────────────────────────────────────────────────────
|
|
30
|
+
// Transform-free so the schema is representable in JSON Schema (z.toJSONSchema is
|
|
31
|
+
// used to build every MCP tool inputSchema — a `.transform()` here makes tools/list
|
|
32
|
+
// throw "Transforms cannot be represented in JSON Schema"). The /v1 normalisation
|
|
33
|
+
// (no path → append /v1; explicit path respected) is applied at RUNTIME in
|
|
34
|
+
// config.getProviderConfig → normalizeBaseUrl, for both inline and env-sourced URLs.
|
|
35
|
+
const baseUrlSchema = z.string().url().optional();
|
|
36
|
+
// ── Provider config schemas ───────────────────────────────────────────────────
|
|
11
37
|
const anthropicProviderSchema = z.object({
|
|
12
38
|
type: z.literal("anthropic"),
|
|
13
|
-
model: z.string(),
|
|
14
|
-
|
|
15
|
-
authTokenEnv: z.string().optional(),
|
|
16
|
-
/** Read OAuth token from the macOS keychain (Claude Code credentials). Auto-refreshes. */
|
|
17
|
-
useClaudeOauth: z.boolean().optional(),
|
|
39
|
+
model: z.string().optional(),
|
|
40
|
+
env: providerEnvBlockSchema,
|
|
18
41
|
temperature: z.number().min(0).max(1).optional(),
|
|
19
42
|
maxTokens: z.number().int().positive().optional(),
|
|
20
43
|
timeoutMs: z.number().int().positive().optional(),
|
|
21
44
|
retryConfig: retryConfigSchema.optional(),
|
|
22
45
|
});
|
|
23
|
-
// OpenAI-compatible servers require /vN in the base URL — the SDK appends
|
|
24
|
-
// /chat/completions directly, so http://host:1234 → 404 every time.
|
|
25
|
-
const versionedBaseUrlSchema = z
|
|
26
|
-
.string()
|
|
27
|
-
.url()
|
|
28
|
-
.refine((url) => /\/v\d+\/?$/.test(url), {
|
|
29
|
-
message: 'baseURL must include the API version path (e.g. "http://localhost:1234/v1")',
|
|
30
|
-
})
|
|
31
|
-
.optional();
|
|
32
46
|
const openaiProviderSchema = z.object({
|
|
33
47
|
type: z.literal("openai"),
|
|
34
|
-
model: z.string(),
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
maxTokens: z.number().int().positive().optional(),
|
|
39
|
-
timeoutMs: z.number().int().positive().optional(),
|
|
40
|
-
retryConfig: retryConfigSchema.optional(),
|
|
41
|
-
});
|
|
42
|
-
const lmstudioProviderSchema = z.object({
|
|
43
|
-
type: z.literal("lmstudio"),
|
|
44
|
-
model: z.string(),
|
|
45
|
-
apiKeyEnv: z.string().optional(),
|
|
46
|
-
baseURL: versionedBaseUrlSchema,
|
|
48
|
+
model: z.string().optional(),
|
|
49
|
+
env: providerEnvBlockSchema,
|
|
50
|
+
/** Inline literal base URL — /v1-normalised at runtime in getProviderConfig. */
|
|
51
|
+
baseURL: baseUrlSchema,
|
|
47
52
|
temperature: z.number().min(0).max(1).optional(),
|
|
48
53
|
maxTokens: z.number().int().positive().optional(),
|
|
49
54
|
timeoutMs: z.number().int().positive().optional(),
|
|
@@ -58,18 +63,82 @@ const claudecliProviderSchema = z.object({
|
|
|
58
63
|
timeoutMs: z.number().int().positive().optional(),
|
|
59
64
|
/**
|
|
60
65
|
* Claude Code built-in tool names that are permitted in the subprocess.
|
|
61
|
-
*
|
|
62
|
-
*
|
|
66
|
+
*
|
|
67
|
+
* This is the LEGACY / transition-window allowlist. When ClaudeCliProvider is
|
|
68
|
+
* constructed with a `compiledTools` array derived from the AGENT_TOOL registry
|
|
69
|
+
* model (`compileAgent({ platform: "claude_code" }).tools`), this field is
|
|
70
|
+
* superseded — the compiled tool list is the single source of truth.
|
|
71
|
+
*
|
|
72
|
+
* [inv:no-third-tool-model]: do NOT use this field as a competing third
|
|
73
|
+
* tool-permission model alongside AGENT_TOOL / compiled.tools.
|
|
74
|
+
*
|
|
75
|
+
* All built-ins not in the effective allowed set are passed to --disallowedTools.
|
|
76
|
+
* MCP tools (from mcpServers) are always available regardless of this field.
|
|
63
77
|
* Omit the field (or pass []) to block all built-ins.
|
|
78
|
+
* Ignored when `systemPromptIsAgentSpec` is true.
|
|
64
79
|
*/
|
|
65
80
|
allowedBuiltinTools: z.array(z.string()).optional(),
|
|
81
|
+
/**
|
|
82
|
+
* When true, treat `systemPrompt` as a Claude Code agent markdown file
|
|
83
|
+
* (frontmatter + body) and let Claude internally parse its `tools:` header,
|
|
84
|
+
* which then takes precedence over the built-in --disallowedTools enumeration.
|
|
85
|
+
*/
|
|
86
|
+
systemPromptIsAgentSpec: z.boolean().optional(),
|
|
66
87
|
});
|
|
88
|
+
// ── Legacy normalize-on-load shim (§9.1) ─────────────────────────────────────
|
|
89
|
+
// Stored rows that pre-date this change may contain:
|
|
90
|
+
// • type: "lmstudio" → coerce to type: "openai"
|
|
91
|
+
// • apiKeyEnv / authTokenEnv → map to env.secret
|
|
92
|
+
// • useClaudeOauth → drop (keychain path removed §3b)
|
|
93
|
+
// This runs transparently on every schema.parse() call so the real
|
|
94
|
+
// ~/.adhd/agent-mcp/agents.db keeps parsing without a migration.
|
|
95
|
+
function legacyShim(raw) {
|
|
96
|
+
if (!raw || typeof raw !== "object")
|
|
97
|
+
return raw;
|
|
98
|
+
let r = { ...raw };
|
|
99
|
+
// lmstudio → openai (lmstudio is just an OpenAI-compatible local server)
|
|
100
|
+
if (r["type"] === "lmstudio") {
|
|
101
|
+
r = { ...r, type: "openai" };
|
|
102
|
+
}
|
|
103
|
+
// apiKeyEnv / authTokenEnv → env.secret (unified credential field)
|
|
104
|
+
const apiKeyEnv = r["apiKeyEnv"];
|
|
105
|
+
const authTokenEnv = r["authTokenEnv"];
|
|
106
|
+
if (apiKeyEnv || authTokenEnv) {
|
|
107
|
+
const existingEnv = typeof r["env"] === "object" && r["env"]
|
|
108
|
+
? { ...r["env"] }
|
|
109
|
+
: {};
|
|
110
|
+
r = {
|
|
111
|
+
...r,
|
|
112
|
+
env: {
|
|
113
|
+
...existingEnv,
|
|
114
|
+
// keep explicit env.secret if already present
|
|
115
|
+
secret: existingEnv["secret"] ?? apiKeyEnv ?? authTokenEnv,
|
|
116
|
+
},
|
|
117
|
+
};
|
|
118
|
+
delete r["apiKeyEnv"];
|
|
119
|
+
delete r["authTokenEnv"];
|
|
120
|
+
}
|
|
121
|
+
// useClaudeOauth → removed in §3b (keychain subsystem deleted)
|
|
122
|
+
delete r["useClaudeOauth"];
|
|
123
|
+
// _useOauthIdentity was internal state, not stored — drop if present
|
|
124
|
+
delete r["_useOauthIdentity"];
|
|
125
|
+
return r;
|
|
126
|
+
}
|
|
127
|
+
// Transform-free discriminated union — safe for z.toJSONSchema (MCP tool inputSchema).
|
|
67
128
|
export const providerConfigSchema = z.discriminatedUnion("type", [
|
|
68
129
|
anthropicProviderSchema,
|
|
69
130
|
openaiProviderSchema,
|
|
70
|
-
lmstudioProviderSchema,
|
|
71
131
|
claudecliProviderSchema,
|
|
72
132
|
]);
|
|
133
|
+
// Stored-row variant: applies the legacy normalize-on-load shim (§9.1) BEFORE
|
|
134
|
+
// validation so pre-change agents.db rows keep parsing. Used ONLY on the READ path
|
|
135
|
+
// (agent-store / session snapshot). NEVER pass this to z.toJSONSchema as a tool
|
|
136
|
+
// inputSchema — doing so would let the shim silently coerce caller inputs
|
|
137
|
+
// (lmstudio→openai, apiKeyEnv→env.secret) before validation runs, which would
|
|
138
|
+
// bypass the env-name guard for callers supplying the pre-rename field names.
|
|
139
|
+
// Note: in Zod v4 z.preprocess does NOT throw in z.toJSONSchema (unlike .transform());
|
|
140
|
+
// the separation here is semantic, not a crash-prevention measure.
|
|
141
|
+
export const providerConfigStoredSchema = z.preprocess(legacyShim, providerConfigSchema);
|
|
73
142
|
// Agent permissions
|
|
74
143
|
export const agentPermissionsSchema = z.object({
|
|
75
144
|
// If undefined → unrestricted (any agent can be called).
|
|
@@ -83,7 +152,14 @@ export const agentDefinitionSchema = z.object({
|
|
|
83
152
|
description: z.string().optional(),
|
|
84
153
|
version: z.number().int().positive(),
|
|
85
154
|
provider: providerConfigSchema,
|
|
86
|
-
|
|
155
|
+
/**
|
|
156
|
+
* COMPUTED COMPAT SHIM — never user-authored after Plan 6 wave 3 (agent-store-retire).
|
|
157
|
+
*
|
|
158
|
+
* Populated at session start from `compileAgent().content`. The `AgentStore`
|
|
159
|
+
* is now a thin compiled-agent cache; this field holds the resolved system
|
|
160
|
+
* prompt populated from compiler/registry output, not a user-supplied blob.
|
|
161
|
+
*/
|
|
162
|
+
systemPrompt: z.optional(z.string()),
|
|
87
163
|
// Full standard MCP server configs embedded in the agent definition.
|
|
88
164
|
// Keys are server names; values are standard McpServerConfig objects.
|
|
89
165
|
mcpServers: z.record(z.string(), mcpServerConfigSchema).default({}),
|
|
@@ -98,27 +174,66 @@ export const agentDefinitionSchema = z.object({
|
|
|
98
174
|
createdAt: z.string().datetime(),
|
|
99
175
|
updatedAt: z.string().datetime(),
|
|
100
176
|
});
|
|
177
|
+
// Stored-row variant of the agent definition — applies the legacy provider shim on
|
|
178
|
+
// read (via providerConfigStoredSchema). Used by agent-store / session-store when
|
|
179
|
+
// parsing persisted rows; NEVER fed to z.toJSONSchema. New-shape writes validate
|
|
180
|
+
// against agentDefinitionSchema (and the transform-free agentCreateInputSchema).
|
|
181
|
+
export const agentDefinitionStoredSchema = agentDefinitionSchema.extend({
|
|
182
|
+
provider: providerConfigStoredSchema,
|
|
183
|
+
});
|
|
101
184
|
// --- Tool input/output schemas ---
|
|
102
|
-
|
|
185
|
+
// ── Env-name guard (INPUT-only, §6 / DEBT-014) ────────────────────────────────
|
|
186
|
+
// Stops a caller from pointing an agent at an arbitrary host secret at create/update
|
|
187
|
+
// time. Applied via .superRefine on the input schemas ONLY (refinements are
|
|
188
|
+
// representable in JSON Schema, unlike transforms). Never on the read path.
|
|
189
|
+
//
|
|
190
|
+
// `providerPath` is the path from the superRefine root to the `provider` key so
|
|
191
|
+
// that ctx.addIssue reports the correct field location. For agentCreateInputSchema
|
|
192
|
+
// (root IS the agent) it is ["provider"]; for agentUpdateInputSchema (root is
|
|
193
|
+
// { name, patch }) it must be ["patch", "provider"].
|
|
194
|
+
function envNameGuard(provider, ctx, providerPath = ["provider"]) {
|
|
195
|
+
// `env` exists only on the openai/anthropic members of the union (not claudecli).
|
|
196
|
+
if (!provider || !("env" in provider) || !provider.env)
|
|
197
|
+
return;
|
|
198
|
+
for (const [field, name] of Object.entries(provider.env)) {
|
|
199
|
+
if (!name)
|
|
200
|
+
continue;
|
|
201
|
+
if (!config.isEnvNameAllowed(name)) {
|
|
202
|
+
ctx.addIssue({
|
|
203
|
+
code: z.ZodIssueCode.custom,
|
|
204
|
+
path: [...providerPath, "env", field],
|
|
205
|
+
message: `env.${field}: "${name}" is not an allowed env-var name. ` +
|
|
206
|
+
`Only ADHD_AGENT_-prefixed names are permitted by default ` +
|
|
207
|
+
`(add to ADHD_AGENT_ENV_ALLOWLIST to opt in).`,
|
|
208
|
+
});
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
export const agentCreateInputSchema = agentDefinitionSchema
|
|
213
|
+
.omit({
|
|
103
214
|
version: true,
|
|
104
215
|
createdAt: true,
|
|
105
216
|
updatedAt: true,
|
|
106
|
-
})
|
|
217
|
+
})
|
|
218
|
+
.superRefine((val, ctx) => envNameGuard(val.provider, ctx, ["provider"]));
|
|
107
219
|
// Patch schema for agent_update — intentionally no .default() on any field
|
|
108
220
|
// so that absent fields stay undefined and don't overwrite stored values.
|
|
109
221
|
const agentPatchSchema = z.object({
|
|
110
222
|
description: z.string().optional(),
|
|
111
223
|
provider: providerConfigSchema.optional(),
|
|
112
|
-
|
|
224
|
+
// COMPUTED COMPAT SHIM — populated from compiler output, not user-authored.
|
|
225
|
+
systemPrompt: z.optional(z.string()),
|
|
113
226
|
mcpServers: z.record(z.string(), mcpServerConfigSchema).optional(),
|
|
114
227
|
permissions: agentPermissionsSchema.optional(),
|
|
115
228
|
maxToolLoops: z.number().int().positive().optional(),
|
|
116
229
|
allowHumanInput: z.boolean().optional(),
|
|
117
230
|
});
|
|
118
|
-
export const agentUpdateInputSchema = z
|
|
231
|
+
export const agentUpdateInputSchema = z
|
|
232
|
+
.object({
|
|
119
233
|
name: z.string().min(1),
|
|
120
234
|
patch: agentPatchSchema,
|
|
121
|
-
})
|
|
235
|
+
})
|
|
236
|
+
.superRefine((val, ctx) => envNameGuard(val.patch.provider, ctx, ["patch", "provider"]));
|
|
122
237
|
export const agentReadInputSchema = z.object({
|
|
123
238
|
name: z.string().min(1),
|
|
124
239
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../../../../../../packages/ai/agent-mcp/src/validation/agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../../../../../../packages/ai/agent-mcp/src/validation/agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,6CAA6C;AAC7C,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAClD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACrD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;IACvD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;CACzC,CAAC,CAAC;AAEH,iFAAiF;AACjF,iFAAiF;AACjF,8EAA8E;AAE9E,MAAM,sBAAsB,GAAG,CAAC;KAC3B,MAAM,CAAC;IACJ,uEAAuE;IACvE,MAAM,EAAI,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,yDAAyD;IACzD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,gDAAgD;IAChD,KAAK,EAAK,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAClC,CAAC;KACD,QAAQ,EAAE,CAAC;AAChB,qFAAqF;AACrF,kFAAkF;AAClF,oFAAoF;AACpF,qFAAqF;AACrF,gBAAgB;AAEhB,iFAAiF;AACjF,kFAAkF;AAClF,oFAAoF;AACpF,kFAAkF;AAClF,2EAA2E;AAC3E,qFAAqF;AACrF,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;AAElD,iFAAiF;AAEjF,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,IAAI,EAAS,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;IACnC,KAAK,EAAQ,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,GAAG,EAAU,sBAAsB;IACnC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAChD,SAAS,EAAI,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACnD,SAAS,EAAI,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACnD,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE;CAC5C,CAAC,CAAC;AAEH,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,IAAI,EAAS,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;IAChC,KAAK,EAAQ,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,GAAG,EAAU,sBAAsB;IACnC,gFAAgF;IAChF,OAAO,EAAM,aAAa;IAC1B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAChD,SAAS,EAAI,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACnD,SAAS,EAAI,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACnD,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE;CAC5C,CAAC,CAAC;AAEH,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;IAC5B,8GAA8G;IAC9G,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,2EAA2E;IAC3E,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACjD;;;;;;;;;;;;;;;OAeG;IACH,mBAAmB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACnD;;;;OAIG;IACH,uBAAuB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CAClD,CAAC,CAAC;AAEH,gFAAgF;AAChF,qDAAqD;AACrD,yDAAyD;AACzD,mDAAmD;AACnD,kEAAkE;AAClE,mEAAmE;AACnE,iEAAiE;AAEjE,SAAS,UAAU,CAAC,GAAY;IAC5B,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,GAAG,CAAC;IAChD,IAAI,CAAC,GAAG,EAAE,GAAI,GAA+B,EAAE,CAAC;IAEhD,yEAAyE;IACzE,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC;QAC3B,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjC,CAAC;IAED,mEAAmE;IACnE,MAAM,SAAS,GAAK,CAAC,CAAC,WAAW,CAAyB,CAAC;IAC3D,MAAM,YAAY,GAAG,CAAC,CAAC,cAAc,CAAuB,CAAC;IAC7D,IAAI,SAAS,IAAI,YAAY,EAAE,CAAC;QAC5B,MAAM,WAAW,GACb,OAAO,CAAC,CAAC,KAAK,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,KAAK,CAAC;YACpC,CAAC,CAAC,EAAE,GAAI,CAAC,CAAC,KAAK,CAA6B,EAAE;YAC9C,CAAC,CAAC,EAAE,CAAC;QACb,CAAC,GAAG;YACA,GAAG,CAAC;YACJ,GAAG,EAAE;gBACD,GAAG,WAAW;gBACd,8CAA8C;gBAC9C,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,IAAI,SAAS,IAAI,YAAY;aAC7D;SACJ,CAAC;QACF,OAAO,CAAC,CAAC,WAAW,CAAC,CAAC;QACtB,OAAO,CAAC,CAAC,cAAc,CAAC,CAAC;IAC7B,CAAC;IAED,+DAA+D;IAC/D,OAAO,CAAC,CAAC,gBAAgB,CAAC,CAAC;IAC3B,qEAAqE;IACrE,OAAO,CAAC,CAAC,mBAAmB,CAAC,CAAC;IAE9B,OAAO,CAAC,CAAC;AACb,CAAC;AAED,uFAAuF;AACvF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAC7D,uBAAuB;IACvB,oBAAoB;IACpB,uBAAuB;CAC1B,CAAC,CAAC;AAEH,8EAA8E;AAC9E,mFAAmF;AACnF,gFAAgF;AAChF,0EAA0E;AAC1E,8EAA8E;AAC9E,8EAA8E;AAC9E,uFAAuF;AACvF,mEAAmE;AACnE,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,UAAU,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAAC;AAIzF,oBAAoB;AACpB,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,yDAAyD;IACzD,4CAA4C;IAC5C,mDAAmD;IACnD,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;CAChD,CAAC,CAAC;AAIH,iCAAiC;AACjC,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IACpC,QAAQ,EAAE,oBAAoB;IAC9B;;;;;;OAMG;IACH,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACpC,qEAAqE;IACrE,sEAAsE;IACtE,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,qBAAqB,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IACnE,WAAW,EAAE,sBAAsB,CAAC,OAAO,CAAC,EAAE,CAAC;IAC/C,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACpD;;;;OAIG;IACH,eAAe,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACvC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACnC,CAAC,CAAC;AAIH,mFAAmF;AACnF,kFAAkF;AAClF,iFAAiF;AACjF,iFAAiF;AACjF,MAAM,CAAC,MAAM,2BAA2B,GAAG,qBAAqB,CAAC,MAAM,CAAC;IACpE,QAAQ,EAAE,0BAA0B;CACvC,CAAC,CAAC;AAEH,oCAAoC;AAEpC,iFAAiF;AACjF,qFAAqF;AACrF,4EAA4E;AAC5E,4EAA4E;AAC5E,EAAE;AACF,gFAAgF;AAChF,mFAAmF;AACnF,8EAA8E;AAC9E,qDAAqD;AACrD,SAAS,YAAY,CACjB,QAAoC,EACpC,GAAoB,EACpB,eAAoC,CAAC,UAAU,CAAC;IAEhD,kFAAkF;IAClF,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG;QAAE,OAAO;IAC/D,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACvD,IAAI,CAAC,IAAI;YAAE,SAAS;QACpB,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;YACjC,GAAG,CAAC,QAAQ,CAAC;gBACT,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;gBAC3B,IAAI,EAAE,CAAC,GAAG,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC;gBACrC,OAAO,EACH,OAAO,KAAK,MAAM,IAAI,oCAAoC;oBAC1D,2DAA2D;oBAC3D,8CAA8C;aACrD,CAAC,CAAC;QACP,CAAC;IACL,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,sBAAsB,GAAG,qBAAqB;KACtD,IAAI,CAAC;IACF,OAAO,EAAE,IAAI;IACb,SAAS,EAAE,IAAI;IACf,SAAS,EAAE,IAAI;CAClB,CAAC;KACD,WAAW,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;AAE9E,2EAA2E;AAC3E,0EAA0E;AAC1E,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,QAAQ,EAAE,oBAAoB,CAAC,QAAQ,EAAE;IACzC,4EAA4E;IAC5E,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACpC,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,qBAAqB,CAAC,CAAC,QAAQ,EAAE;IAClE,WAAW,EAAE,sBAAsB,CAAC,QAAQ,EAAE;IAC9C,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACpD,eAAe,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CAC1C,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC;KAClC,MAAM,CAAC;IACJ,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,KAAK,EAAE,gBAAgB;CAC1B,CAAC;KACD,WAAW,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;AAE7F,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC1B,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB;;;;;OAKG;IACH,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CAChC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC"}
|
|
@@ -19,6 +19,7 @@ export declare const errorCodeSchema: z.ZodEnum<{
|
|
|
19
19
|
MCP_CLIENT_ERROR: "MCP_CLIENT_ERROR";
|
|
20
20
|
VALIDATION_ERROR: "VALIDATION_ERROR";
|
|
21
21
|
BUDGET_EXCEEDED: "BUDGET_EXCEEDED";
|
|
22
|
+
COMPOSED_PROMPT_NOT_FOUND: "COMPOSED_PROMPT_NOT_FOUND";
|
|
22
23
|
}>;
|
|
23
24
|
import type { AgentMcpErrorCode } from "@adhd/agent-mcp-types";
|
|
24
25
|
export type { AgentMcpErrorCode };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../../../packages/ai/agent-mcp/src/validation/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,eAAe
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../../../packages/ai/agent-mcp/src/validation/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;EAoC1B,CAAC;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,YAAY,EAAE,iBAAiB,EAAE,CAAC;AAClC,MAAM,MAAM,SAAS,GAAG,iBAAiB,CAAC;AAE1C,qBAAa,SAAU,SAAQ,KAAK;IAClC,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACjC,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;gBAEZ,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO;CAMrE"}
|
package/src/validation/errors.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../../../../packages/ai/agent-mcp/src/validation/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC;IACpC,aAAa;IACb,sBAAsB;IACtB,iBAAiB;IACjB,2BAA2B;IAE3B,UAAU;IACV,mBAAmB;IACnB,gBAAgB;IAEhB,OAAO;IACP,gBAAgB;IAChB,sBAAsB;IACtB,oBAAoB;IAEpB,sBAAsB;IACtB,wBAAwB;IACxB,oBAAoB;IACpB,yBAAyB;IAEzB,UAAU;IACV,gBAAgB;IAChB,kBAAkB;IAClB,qBAAqB;IACrB,uBAAuB;IACvB,yBAAyB;IACzB,kBAAkB;IAElB,aAAa;IACb,kBAAkB;IAElB,qBAAqB;IACrB,iBAAiB;
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../../../../packages/ai/agent-mcp/src/validation/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC;IACpC,aAAa;IACb,sBAAsB;IACtB,iBAAiB;IACjB,2BAA2B;IAE3B,UAAU;IACV,mBAAmB;IACnB,gBAAgB;IAEhB,OAAO;IACP,gBAAgB;IAChB,sBAAsB;IACtB,oBAAoB;IAEpB,sBAAsB;IACtB,wBAAwB;IACxB,oBAAoB;IACpB,yBAAyB;IAEzB,UAAU;IACV,gBAAgB;IAChB,kBAAkB;IAClB,qBAAqB;IACrB,uBAAuB;IACvB,yBAAyB;IACzB,kBAAkB;IAElB,aAAa;IACb,kBAAkB;IAElB,qBAAqB;IACrB,iBAAiB;IAEjB,wBAAwB;IACxB,2BAA2B;CAC5B,CAAC,CAAC;AAMH,MAAM,OAAO,SAAU,SAAQ,KAAK;IACzB,IAAI,CAAoB;IACxB,IAAI,CAAW;IAExB,YAAY,IAAuB,EAAE,OAAe,EAAE,IAAc;QAClE,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF"}
|
|
@@ -9,10 +9,12 @@ export declare const executionContextSchema: z.ZodObject<{
|
|
|
9
9
|
version: z.ZodNumber;
|
|
10
10
|
provider: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
11
11
|
type: z.ZodLiteral<"anthropic">;
|
|
12
|
-
model: z.ZodString
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
12
|
+
model: z.ZodOptional<z.ZodString>;
|
|
13
|
+
env: z.ZodOptional<z.ZodObject<{
|
|
14
|
+
secret: z.ZodOptional<z.ZodString>;
|
|
15
|
+
base_url: z.ZodOptional<z.ZodString>;
|
|
16
|
+
model: z.ZodOptional<z.ZodString>;
|
|
17
|
+
}, z.core.$strip>>;
|
|
16
18
|
temperature: z.ZodOptional<z.ZodNumber>;
|
|
17
19
|
maxTokens: z.ZodOptional<z.ZodNumber>;
|
|
18
20
|
timeoutMs: z.ZodOptional<z.ZodNumber>;
|
|
@@ -24,22 +26,12 @@ export declare const executionContextSchema: z.ZodObject<{
|
|
|
24
26
|
}, z.core.$strip>>;
|
|
25
27
|
}, z.core.$strip>, z.ZodObject<{
|
|
26
28
|
type: z.ZodLiteral<"openai">;
|
|
27
|
-
model: z.ZodString
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
timeoutMs: z.ZodOptional<z.ZodNumber>;
|
|
33
|
-
retryConfig: z.ZodOptional<z.ZodObject<{
|
|
34
|
-
retries: z.ZodDefault<z.ZodNumber>;
|
|
35
|
-
minTimeout: z.ZodDefault<z.ZodNumber>;
|
|
36
|
-
maxTimeout: z.ZodDefault<z.ZodNumber>;
|
|
37
|
-
factor: z.ZodDefault<z.ZodNumber>;
|
|
29
|
+
model: z.ZodOptional<z.ZodString>;
|
|
30
|
+
env: z.ZodOptional<z.ZodObject<{
|
|
31
|
+
secret: z.ZodOptional<z.ZodString>;
|
|
32
|
+
base_url: z.ZodOptional<z.ZodString>;
|
|
33
|
+
model: z.ZodOptional<z.ZodString>;
|
|
38
34
|
}, z.core.$strip>>;
|
|
39
|
-
}, z.core.$strip>, z.ZodObject<{
|
|
40
|
-
type: z.ZodLiteral<"lmstudio">;
|
|
41
|
-
model: z.ZodString;
|
|
42
|
-
apiKeyEnv: z.ZodOptional<z.ZodString>;
|
|
43
35
|
baseURL: z.ZodOptional<z.ZodString>;
|
|
44
36
|
temperature: z.ZodOptional<z.ZodNumber>;
|
|
45
37
|
maxTokens: z.ZodOptional<z.ZodNumber>;
|
|
@@ -56,8 +48,9 @@ export declare const executionContextSchema: z.ZodObject<{
|
|
|
56
48
|
claudePath: z.ZodOptional<z.ZodString>;
|
|
57
49
|
timeoutMs: z.ZodOptional<z.ZodNumber>;
|
|
58
50
|
allowedBuiltinTools: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
51
|
+
systemPromptIsAgentSpec: z.ZodOptional<z.ZodBoolean>;
|
|
59
52
|
}, z.core.$strip>], "type">;
|
|
60
|
-
systemPrompt: z.ZodString
|
|
53
|
+
systemPrompt: z.ZodOptional<z.ZodString>;
|
|
61
54
|
mcpServers: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
62
55
|
transport: z.ZodLiteral<"stdio">;
|
|
63
56
|
command: z.ZodString;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../../../../../packages/ai/agent-mcp/src/validation/execution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,sBAAsB
|
|
1
|
+
{"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../../../../../packages/ai/agent-mcp/src/validation/execution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA4BjC,CAAC;AAEH,YAAY,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type { ProviderConfig } from "../validation/index.js";
|
|
2
|
-
import { OpenAIProvider } from "./openai.js";
|
|
3
|
-
export declare class LMStudioProvider extends OpenAIProvider {
|
|
4
|
-
constructor(config: Extract<ProviderConfig, {
|
|
5
|
-
type: "lmstudio";
|
|
6
|
-
}>);
|
|
7
|
-
}
|
|
8
|
-
//# sourceMappingURL=lmstudio.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"lmstudio.d.ts","sourceRoot":"","sources":["../../../../../../packages/ai/agent-mcp/src/providers/lmstudio.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,qBAAa,gBAAiB,SAAQ,cAAc;gBACpC,MAAM,EAAE,OAAO,CAAC,cAAc,EAAE;QAAE,IAAI,EAAE,UAAU,CAAA;KAAE,CAAC;CAWpE"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { OpenAIProvider } from "./openai.js";
|
|
2
|
-
export class LMStudioProvider extends OpenAIProvider {
|
|
3
|
-
constructor(config) {
|
|
4
|
-
// LM Studio speaks the OpenAI API — reuse OpenAIProvider with a cast.
|
|
5
|
-
// The local server doesn't require an API key, so we default to a
|
|
6
|
-
// placeholder value to avoid OpenAI SDK complaints.
|
|
7
|
-
super({
|
|
8
|
-
...config,
|
|
9
|
-
type: "openai",
|
|
10
|
-
baseURL: config.baseURL ?? process.env["LMSTUDIO_BASE_URL"] ?? "http://localhost:1234/v1",
|
|
11
|
-
apiKeyEnv: config.apiKeyEnv ?? "LMSTUDIO_API_KEY",
|
|
12
|
-
});
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=lmstudio.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"lmstudio.js","sourceRoot":"","sources":["../../../../../../packages/ai/agent-mcp/src/providers/lmstudio.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,MAAM,OAAO,gBAAiB,SAAQ,cAAc;IAChD,YAAY,MAAqD;QAC7D,sEAAsE;QACtE,kEAAkE;QAClE,oDAAoD;QACpD,KAAK,CAAC;YACF,GAAG,MAAM;YACT,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,IAAI,0BAA0B;YACzF,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,kBAAkB;SACpD,CAAC,CAAC;IACP,CAAC;CACJ"}
|