@agentex/agent 0.0.22 → 0.0.24
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 +58 -0
- package/dist/goals/controller.d.ts +106 -0
- package/dist/goals/controller.d.ts.map +1 -0
- package/dist/goals/controller.js +375 -0
- package/dist/goals/controller.js.map +1 -0
- package/dist/goals/index.d.ts +6 -0
- package/dist/goals/index.d.ts.map +1 -0
- package/dist/goals/index.js +4 -0
- package/dist/goals/index.js.map +1 -0
- package/dist/goals/normalize.d.ts +72 -0
- package/dist/goals/normalize.d.ts.map +1 -0
- package/dist/goals/normalize.js +138 -0
- package/dist/goals/normalize.js.map +1 -0
- package/dist/goals/sentinel.d.ts +39 -0
- package/dist/goals/sentinel.d.ts.map +1 -0
- package/dist/goals/sentinel.js +77 -0
- package/dist/goals/sentinel.js.map +1 -0
- package/dist/index.d.ts +5 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/providers/acp/session.d.ts.map +1 -1
- package/dist/providers/acp/session.js +25 -0
- package/dist/providers/acp/session.js.map +1 -1
- package/dist/providers/claude/execute.d.ts.map +1 -1
- package/dist/providers/claude/execute.js +17 -2
- package/dist/providers/claude/execute.js.map +1 -1
- package/dist/providers/claude/index.d.ts.map +1 -1
- package/dist/providers/claude/index.js +2 -1
- package/dist/providers/claude/index.js.map +1 -1
- package/dist/providers/claude/parse.d.ts.map +1 -1
- package/dist/providers/claude/parse.js +25 -0
- package/dist/providers/claude/parse.js.map +1 -1
- package/dist/providers/claude/session.d.ts +36 -1
- package/dist/providers/claude/session.d.ts.map +1 -1
- package/dist/providers/claude/session.js +197 -2
- package/dist/providers/claude/session.js.map +1 -1
- package/dist/providers/codex/execute.d.ts.map +1 -1
- package/dist/providers/codex/execute.js +17 -3
- package/dist/providers/codex/execute.js.map +1 -1
- package/dist/providers/codex/index.d.ts.map +1 -1
- package/dist/providers/codex/index.js +2 -1
- package/dist/providers/codex/index.js.map +1 -1
- package/dist/providers/codex/parse.d.ts.map +1 -1
- package/dist/providers/codex/parse.js +74 -3
- package/dist/providers/codex/parse.js.map +1 -1
- package/dist/providers/codex/session.d.ts +30 -1
- package/dist/providers/codex/session.d.ts.map +1 -1
- package/dist/providers/codex/session.js +175 -6
- package/dist/providers/codex/session.js.map +1 -1
- package/dist/providers/opencode/http-session.d.ts.map +1 -1
- package/dist/providers/opencode/http-session.js +25 -0
- package/dist/providers/opencode/http-session.js.map +1 -1
- package/dist/providers/opencode/index.d.ts.map +1 -1
- package/dist/providers/opencode/index.js +2 -0
- package/dist/providers/opencode/index.js.map +1 -1
- package/dist/providers/pi/index.d.ts.map +1 -1
- package/dist/providers/pi/index.js +2 -0
- package/dist/providers/pi/index.js.map +1 -1
- package/dist/providers/pi/session.d.ts +8 -1
- package/dist/providers/pi/session.d.ts.map +1 -1
- package/dist/providers/pi/session.js +28 -2
- package/dist/providers/pi/session.js.map +1 -1
- package/dist/types.d.ts +249 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/utils/endpoint.d.ts +38 -0
- package/dist/utils/endpoint.d.ts.map +1 -0
- package/dist/utils/endpoint.js +151 -0
- package/dist/utils/endpoint.js.map +1 -0
- package/dist/utils/env.d.ts.map +1 -1
- package/dist/utils/env.js +5 -1
- package/dist/utils/env.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
/** Fresh empty translation. Not a shared singleton — callers may mutate. */
|
|
2
|
+
function empty() {
|
|
3
|
+
return { env: {}, args: [], unset: [] };
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* Stable id of the Codex `model_provider` synthesized for a custom endpoint.
|
|
7
|
+
* Exposed so advanced Codex knobs can be set via `config.extraArgs` against a
|
|
8
|
+
* known name, e.g. `-c model_providers.custom.query_params.api-version="..."`.
|
|
9
|
+
*/
|
|
10
|
+
export const CODEX_CUSTOM_PROVIDER_ID = "custom";
|
|
11
|
+
/** Env var Codex reads the custom-endpoint credential from (its `env_key`). */
|
|
12
|
+
export const CODEX_CUSTOM_KEY_ENV = "CODEX_CUSTOM_API_KEY";
|
|
13
|
+
/** Prefix for the per-header env vars Codex reads via `env_http_headers`. */
|
|
14
|
+
export const CODEX_CUSTOM_HEADER_ENV_PREFIX = "CODEX_CUSTOM_HEADER_";
|
|
15
|
+
/**
|
|
16
|
+
* Ambient Anthropic alternate-routing env (Bedrock/Vertex/Foundry) that must be
|
|
17
|
+
* cleared when a custom `baseUrl` is set — otherwise Claude Code could be steered
|
|
18
|
+
* to one of those instead of the endpoint. General AWS/cloud creds are left
|
|
19
|
+
* intact (the agent may legitimately need them for tool calls).
|
|
20
|
+
*/
|
|
21
|
+
const CLAUDE_ALT_ROUTING_ENV = [
|
|
22
|
+
"ANTHROPIC_BEDROCK_BASE_URL",
|
|
23
|
+
"CLAUDE_CODE_USE_BEDROCK",
|
|
24
|
+
"CLAUDE_CODE_USE_VERTEX",
|
|
25
|
+
"CLAUDE_CODE_USE_FOUNDRY",
|
|
26
|
+
];
|
|
27
|
+
/**
|
|
28
|
+
* Translate a custom-endpoint config for a provider. Returns `env`/`args`/`unset`
|
|
29
|
+
* to apply at spawn time. Providers without a custom-endpoint mechanism return
|
|
30
|
+
* an empty translation (the config is silently ignored, like `allowedTools`
|
|
31
|
+
* on providers without argv tool filtering).
|
|
32
|
+
*/
|
|
33
|
+
export function translateEndpoint(providerType, endpoint) {
|
|
34
|
+
if (!endpoint)
|
|
35
|
+
return empty();
|
|
36
|
+
switch (providerType) {
|
|
37
|
+
case "claude":
|
|
38
|
+
return translateClaudeEndpoint(endpoint);
|
|
39
|
+
case "codex":
|
|
40
|
+
return translateCodexEndpoint(endpoint);
|
|
41
|
+
default:
|
|
42
|
+
return empty();
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Claude Code routes to any Anthropic Messages-API-compatible endpoint purely
|
|
47
|
+
* through env vars, so the translation is env-only (no argv).
|
|
48
|
+
*
|
|
49
|
+
* Credential hygiene: `buildEnv` seeds `ANTHROPIC_API_KEY` from the host's
|
|
50
|
+
* `process.env`. When we point at a custom `baseUrl`, only the auth declared
|
|
51
|
+
* here may reach that third party — so we `unset` any ambient Anthropic
|
|
52
|
+
* credential we didn't choose. Without a custom `baseUrl` (still real
|
|
53
|
+
* Anthropic) we only enforce the "exactly one auth" invariant.
|
|
54
|
+
*/
|
|
55
|
+
function translateClaudeEndpoint(e) {
|
|
56
|
+
const env = {};
|
|
57
|
+
const unset = [];
|
|
58
|
+
if (e.baseUrl)
|
|
59
|
+
env["ANTHROPIC_BASE_URL"] = e.baseUrl;
|
|
60
|
+
// authToken (Authorization: Bearer) wins over apiKey (x-api-key) if both are
|
|
61
|
+
// set. Whichever is NOT chosen is removed from the child env, ambient or not.
|
|
62
|
+
if (e.authToken) {
|
|
63
|
+
env["ANTHROPIC_AUTH_TOKEN"] = e.authToken;
|
|
64
|
+
unset.push("ANTHROPIC_API_KEY");
|
|
65
|
+
}
|
|
66
|
+
else if (e.apiKey) {
|
|
67
|
+
env["ANTHROPIC_API_KEY"] = e.apiKey;
|
|
68
|
+
unset.push("ANTHROPIC_AUTH_TOKEN");
|
|
69
|
+
}
|
|
70
|
+
else if (e.baseUrl) {
|
|
71
|
+
// Custom endpoint with no declared auth: don't forward ambient Anthropic
|
|
72
|
+
// credentials to it. The caller must pass auth explicitly via the endpoint.
|
|
73
|
+
unset.push("ANTHROPIC_API_KEY", "ANTHROPIC_AUTH_TOKEN");
|
|
74
|
+
}
|
|
75
|
+
// A custom baseUrl is authoritative — clear ambient alternate-routing config
|
|
76
|
+
// (Bedrock/Vertex/Foundry) so Claude Code targets the endpoint, not those.
|
|
77
|
+
if (e.baseUrl)
|
|
78
|
+
unset.push(...CLAUDE_ALT_ROUTING_ENV);
|
|
79
|
+
if (e.headers && Object.keys(e.headers).length > 0) {
|
|
80
|
+
// ANTHROPIC_CUSTOM_HEADERS is newline-separated `Name: Value` pairs.
|
|
81
|
+
env["ANTHROPIC_CUSTOM_HEADERS"] = Object.entries(e.headers)
|
|
82
|
+
.map(([k, v]) => `${k}: ${v}`)
|
|
83
|
+
.join("\n");
|
|
84
|
+
}
|
|
85
|
+
if (e.modelMap) {
|
|
86
|
+
// Tier aliases → concrete ids on the endpoint. Lets alias callers
|
|
87
|
+
// (`model: "sonnet"`) resolve correctly against a non-Anthropic endpoint.
|
|
88
|
+
if (e.modelMap.opus)
|
|
89
|
+
env["ANTHROPIC_DEFAULT_OPUS_MODEL"] = e.modelMap.opus;
|
|
90
|
+
if (e.modelMap.sonnet)
|
|
91
|
+
env["ANTHROPIC_DEFAULT_SONNET_MODEL"] = e.modelMap.sonnet;
|
|
92
|
+
if (e.modelMap.haiku)
|
|
93
|
+
env["ANTHROPIC_DEFAULT_HAIKU_MODEL"] = e.modelMap.haiku;
|
|
94
|
+
if (e.modelMap.fable)
|
|
95
|
+
env["ANTHROPIC_DEFAULT_FABLE_MODEL"] = e.modelMap.fable;
|
|
96
|
+
}
|
|
97
|
+
return { env, args: [], unset };
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Codex has no base-URL env var — custom endpoints are a `[model_providers.<id>]`
|
|
101
|
+
* config block (base_url, wire_api, env_key) selected by `model_provider`. We
|
|
102
|
+
* synthesize that block via `-c` overrides (the same mechanism already used for
|
|
103
|
+
* `model_reasoning_effort`) and inject the key into env under `env_key`.
|
|
104
|
+
*
|
|
105
|
+
* `wire_api` is `"responses"`: Codex removed the Chat Completions ("chat") wire
|
|
106
|
+
* protocol in Feb 2026, so a custom provider must speak the OpenAI Responses
|
|
107
|
+
* API (directly or via a translating gateway). `modelMap` is ignored — Codex
|
|
108
|
+
* has no tier aliases, so pass a concrete `config.model`. Requires `baseUrl`;
|
|
109
|
+
* without it there is no provider to define, so the translation is empty.
|
|
110
|
+
*
|
|
111
|
+
* Codex needs no `unset`: ambient `OPENAI_API_KEY` is the DEFAULT provider's
|
|
112
|
+
* `env_key`, and we select the synthesized `custom` provider whose `env_key`
|
|
113
|
+
* is `CODEX_CUSTOM_KEY_ENV`, so the ambient key never reaches the endpoint.
|
|
114
|
+
*/
|
|
115
|
+
function translateCodexEndpoint(e) {
|
|
116
|
+
if (!e.baseUrl)
|
|
117
|
+
return empty();
|
|
118
|
+
const env = {};
|
|
119
|
+
const args = [];
|
|
120
|
+
const id = CODEX_CUSTOM_PROVIDER_ID;
|
|
121
|
+
const set = (key, value) => {
|
|
122
|
+
// Match the existing `-c key=<json-value>` convention (see codex effort).
|
|
123
|
+
args.push("-c", `${key}=${JSON.stringify(value)}`);
|
|
124
|
+
};
|
|
125
|
+
set("model_provider", id);
|
|
126
|
+
set(`model_providers.${id}.name`, "Custom");
|
|
127
|
+
set(`model_providers.${id}.base_url`, e.baseUrl);
|
|
128
|
+
set(`model_providers.${id}.wire_api`, "responses");
|
|
129
|
+
const key = e.authToken ?? e.apiKey;
|
|
130
|
+
if (key) {
|
|
131
|
+
env[CODEX_CUSTOM_KEY_ENV] = key;
|
|
132
|
+
set(`model_providers.${id}.env_key`, CODEX_CUSTOM_KEY_ENV);
|
|
133
|
+
}
|
|
134
|
+
if (e.headers) {
|
|
135
|
+
// Route header VALUES through env via `env_http_headers` (header → env-var
|
|
136
|
+
// name), never argv: argv is world-readable via `ps` and a header can carry
|
|
137
|
+
// a secret (Authorization, X-API-Key). Mirrors why the claude provider
|
|
138
|
+
// stages MCP headers to a 0600 file instead of the command line. Header
|
|
139
|
+
// names are assumed TOML bare keys (letters/digits/`-`/`_`), which real HTTP
|
|
140
|
+
// header tokens are — a name with a `.` would nest as a sub-table.
|
|
141
|
+
let i = 0;
|
|
142
|
+
for (const [name, value] of Object.entries(e.headers)) {
|
|
143
|
+
const headerEnv = `${CODEX_CUSTOM_HEADER_ENV_PREFIX}${i++}`;
|
|
144
|
+
env[headerEnv] = value;
|
|
145
|
+
set(`model_providers.${id}.env_http_headers.${name}`, headerEnv);
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
// modelMap intentionally ignored — Codex has no tier aliases.
|
|
149
|
+
return { env, args, unset: [] };
|
|
150
|
+
}
|
|
151
|
+
//# sourceMappingURL=endpoint.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"endpoint.js","sourceRoot":"","sources":["../../src/utils/endpoint.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/env.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/utils/env.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/utils/env.ts"],"names":[],"mappings":"AA8BA,wBAAgB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAYnF;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAMpF;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAUjE"}
|
package/dist/utils/env.js
CHANGED
|
@@ -17,7 +17,11 @@ const AUTH_ALLOW_LIST = [
|
|
|
17
17
|
// Cursor
|
|
18
18
|
"CURSOR_API_KEY",
|
|
19
19
|
];
|
|
20
|
-
|
|
20
|
+
// HEADER covers custom-endpoint header carriers — `ANTHROPIC_CUSTOM_HEADERS` and
|
|
21
|
+
// the generated `CODEX_CUSTOM_HEADER_*` vars — whose values can hold secret
|
|
22
|
+
// header tokens (Authorization, X-API-Key). Over-redacting a non-secret header
|
|
23
|
+
// in logs is the safe direction.
|
|
24
|
+
const SENSITIVE_PATTERNS = /KEY|SECRET|TOKEN|PASSWORD|CREDENTIAL|AUTH|HEADER/i;
|
|
21
25
|
const ESSENTIAL_PATHS_UNIX = ["/usr/local/bin", "/usr/bin", "/bin"];
|
|
22
26
|
export function buildEnv(callerEnv) {
|
|
23
27
|
const env = {};
|
package/dist/utils/env.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/utils/env.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,cAAc,CAAC;AAEnC,MAAM,eAAe,GAAG;IACtB,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ;IAC5E,qBAAqB;IACrB,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,cAAc,EAAE,aAAa;CACvF,CAAC;AAEF,gFAAgF;AAChF,MAAM,eAAe,GAAG;IACtB,qBAAqB;IACrB,mBAAmB,EAAE,4BAA4B;IACjD,gBAAgB;IAChB,mBAAmB,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,YAAY,EAAE,aAAa;IAC9F,iBAAiB;IACjB,gBAAgB;IAChB,kBAAkB;IAClB,gBAAgB,EAAE,gBAAgB;IAClC,SAAS;IACT,gBAAgB;CACjB,CAAC;AAEF,MAAM,kBAAkB,GAAG,
|
|
1
|
+
{"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/utils/env.ts"],"names":[],"mappings":"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"}
|