thehood 0.1.0-preview.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/CODE_OF_CONDUCT.md +21 -0
- package/CONTRIBUTING.md +58 -0
- package/LICENSE +21 -0
- package/PRIVACY.md +49 -0
- package/README.md +264 -0
- package/SECURITY.md +31 -0
- package/dist/bridges/chatgptWebBridge.d.ts +2 -0
- package/dist/bridges/chatgptWebBridge.js +981 -0
- package/dist/bridges/chatgptWebBridge.js.map +1 -0
- package/dist/cli/args.d.ts +9 -0
- package/dist/cli/args.js +82 -0
- package/dist/cli/args.js.map +1 -0
- package/dist/cli/format.d.ts +56 -0
- package/dist/cli/format.js +752 -0
- package/dist/cli/format.js.map +1 -0
- package/dist/cli/main.d.ts +2 -0
- package/dist/cli/main.js +996 -0
- package/dist/cli/main.js.map +1 -0
- package/dist/cli/mcpConfig.d.ts +36 -0
- package/dist/cli/mcpConfig.js +98 -0
- package/dist/cli/mcpConfig.js.map +1 -0
- package/dist/index.d.ts +37 -0
- package/dist/index.js +38 -0
- package/dist/index.js.map +1 -0
- package/dist/mcp/protocol.d.ts +44 -0
- package/dist/mcp/protocol.js +33 -0
- package/dist/mcp/protocol.js.map +1 -0
- package/dist/mcp/server.d.ts +1 -0
- package/dist/mcp/server.js +106 -0
- package/dist/mcp/server.js.map +1 -0
- package/dist/mcp/tools.d.ts +10 -0
- package/dist/mcp/tools.js +2200 -0
- package/dist/mcp/tools.js.map +1 -0
- package/dist/mcp/validation.d.ts +8 -0
- package/dist/mcp/validation.js +67 -0
- package/dist/mcp/validation.js.map +1 -0
- package/dist/providers/chatgptWeb.d.ts +2 -0
- package/dist/providers/chatgptWeb.js +26 -0
- package/dist/providers/chatgptWeb.js.map +1 -0
- package/dist/providers/claudeCode.d.ts +4 -0
- package/dist/providers/claudeCode.js +32 -0
- package/dist/providers/claudeCode.js.map +1 -0
- package/dist/providers/codexCli.d.ts +6 -0
- package/dist/providers/codexCli.js +25 -0
- package/dist/providers/codexCli.js.map +1 -0
- package/dist/providers/codexCliModels.d.ts +23 -0
- package/dist/providers/codexCliModels.js +147 -0
- package/dist/providers/codexCliModels.js.map +1 -0
- package/dist/providers/localCommand.d.ts +26 -0
- package/dist/providers/localCommand.js +614 -0
- package/dist/providers/localCommand.js.map +1 -0
- package/dist/providers/markdownPayload.d.ts +7 -0
- package/dist/providers/markdownPayload.js +29 -0
- package/dist/providers/markdownPayload.js.map +1 -0
- package/dist/providers/responseSchema.d.ts +3 -0
- package/dist/providers/responseSchema.js +187 -0
- package/dist/providers/responseSchema.js.map +1 -0
- package/dist/providers/router.d.ts +3 -0
- package/dist/providers/router.js +21 -0
- package/dist/providers/router.js.map +1 -0
- package/dist/providers/stub.d.ts +2 -0
- package/dist/providers/stub.js +177 -0
- package/dist/providers/stub.js.map +1 -0
- package/dist/providers/types.d.ts +37 -0
- package/dist/providers/types.js +2 -0
- package/dist/providers/types.js.map +1 -0
- package/dist/runtime/agentBoard.d.ts +79 -0
- package/dist/runtime/agentBoard.js +166 -0
- package/dist/runtime/agentBoard.js.map +1 -0
- package/dist/runtime/agentBoardArtifact.d.ts +9 -0
- package/dist/runtime/agentBoardArtifact.js +171 -0
- package/dist/runtime/agentBoardArtifact.js.map +1 -0
- package/dist/runtime/agentRunner.d.ts +17 -0
- package/dist/runtime/agentRunner.js +92 -0
- package/dist/runtime/agentRunner.js.map +1 -0
- package/dist/runtime/approvalInbox.d.ts +54 -0
- package/dist/runtime/approvalInbox.js +143 -0
- package/dist/runtime/approvalInbox.js.map +1 -0
- package/dist/runtime/approvalPolicy.d.ts +11 -0
- package/dist/runtime/approvalPolicy.js +58 -0
- package/dist/runtime/approvalPolicy.js.map +1 -0
- package/dist/runtime/artifacts.d.ts +23 -0
- package/dist/runtime/artifacts.js +48 -0
- package/dist/runtime/artifacts.js.map +1 -0
- package/dist/runtime/browserManager.d.ts +37 -0
- package/dist/runtime/browserManager.js +356 -0
- package/dist/runtime/browserManager.js.map +1 -0
- package/dist/runtime/canonicalMemory.d.ts +23 -0
- package/dist/runtime/canonicalMemory.js +134 -0
- package/dist/runtime/canonicalMemory.js.map +1 -0
- package/dist/runtime/chatGptPageReadiness.d.ts +16 -0
- package/dist/runtime/chatGptPageReadiness.js +74 -0
- package/dist/runtime/chatGptPageReadiness.js.map +1 -0
- package/dist/runtime/commandRunner.d.ts +18 -0
- package/dist/runtime/commandRunner.js +115 -0
- package/dist/runtime/commandRunner.js.map +1 -0
- package/dist/runtime/commandSafety.d.ts +7 -0
- package/dist/runtime/commandSafety.js +61 -0
- package/dist/runtime/commandSafety.js.map +1 -0
- package/dist/runtime/config.d.ts +10 -0
- package/dist/runtime/config.js +107 -0
- package/dist/runtime/config.js.map +1 -0
- package/dist/runtime/crewLanes.d.ts +2 -0
- package/dist/runtime/crewLanes.js +123 -0
- package/dist/runtime/crewLanes.js.map +1 -0
- package/dist/runtime/criticPolicy.d.ts +17 -0
- package/dist/runtime/criticPolicy.js +50 -0
- package/dist/runtime/criticPolicy.js.map +1 -0
- package/dist/runtime/defaults.d.ts +5 -0
- package/dist/runtime/defaults.js +100 -0
- package/dist/runtime/defaults.js.map +1 -0
- package/dist/runtime/directives.d.ts +3 -0
- package/dist/runtime/directives.js +218 -0
- package/dist/runtime/directives.js.map +1 -0
- package/dist/runtime/doctor.d.ts +36 -0
- package/dist/runtime/doctor.js +185 -0
- package/dist/runtime/doctor.js.map +1 -0
- package/dist/runtime/errors.d.ts +20 -0
- package/dist/runtime/errors.js +41 -0
- package/dist/runtime/errors.js.map +1 -0
- package/dist/runtime/externalTransfer.d.ts +20 -0
- package/dist/runtime/externalTransfer.js +156 -0
- package/dist/runtime/externalTransfer.js.map +1 -0
- package/dist/runtime/fanout.d.ts +64 -0
- package/dist/runtime/fanout.js +263 -0
- package/dist/runtime/fanout.js.map +1 -0
- package/dist/runtime/gitEvidence.d.ts +10 -0
- package/dist/runtime/gitEvidence.js +80 -0
- package/dist/runtime/gitEvidence.js.map +1 -0
- package/dist/runtime/handoffs.d.ts +32 -0
- package/dist/runtime/handoffs.js +100 -0
- package/dist/runtime/handoffs.js.map +1 -0
- package/dist/runtime/ids.d.ts +2 -0
- package/dist/runtime/ids.js +4 -0
- package/dist/runtime/ids.js.map +1 -0
- package/dist/runtime/localStateIgnore.d.ts +9 -0
- package/dist/runtime/localStateIgnore.js +98 -0
- package/dist/runtime/localStateIgnore.js.map +1 -0
- package/dist/runtime/loop.d.ts +14 -0
- package/dist/runtime/loop.js +1863 -0
- package/dist/runtime/loop.js.map +1 -0
- package/dist/runtime/loopRecommendation.d.ts +109 -0
- package/dist/runtime/loopRecommendation.js +566 -0
- package/dist/runtime/loopRecommendation.js.map +1 -0
- package/dist/runtime/loopResponsibilities.d.ts +2 -0
- package/dist/runtime/loopResponsibilities.js +395 -0
- package/dist/runtime/loopResponsibilities.js.map +1 -0
- package/dist/runtime/loopRunner.d.ts +28 -0
- package/dist/runtime/loopRunner.js +81 -0
- package/dist/runtime/loopRunner.js.map +1 -0
- package/dist/runtime/operatorNextActions.d.ts +2 -0
- package/dist/runtime/operatorNextActions.js +344 -0
- package/dist/runtime/operatorNextActions.js.map +1 -0
- package/dist/runtime/paths.d.ts +9 -0
- package/dist/runtime/paths.js +14 -0
- package/dist/runtime/paths.js.map +1 -0
- package/dist/runtime/permissions.d.ts +9 -0
- package/dist/runtime/permissions.js +73 -0
- package/dist/runtime/permissions.js.map +1 -0
- package/dist/runtime/progressPacket.d.ts +12 -0
- package/dist/runtime/progressPacket.js +512 -0
- package/dist/runtime/progressPacket.js.map +1 -0
- package/dist/runtime/protectedPaths.d.ts +6 -0
- package/dist/runtime/protectedPaths.js +48 -0
- package/dist/runtime/protectedPaths.js.map +1 -0
- package/dist/runtime/providers.d.ts +13 -0
- package/dist/runtime/providers.js +60 -0
- package/dist/runtime/providers.js.map +1 -0
- package/dist/runtime/reconciliation.d.ts +17 -0
- package/dist/runtime/reconciliation.js +283 -0
- package/dist/runtime/reconciliation.js.map +1 -0
- package/dist/runtime/redaction.d.ts +1 -0
- package/dist/runtime/redaction.js +5 -0
- package/dist/runtime/redaction.js.map +1 -0
- package/dist/runtime/remoteRepoContext.d.ts +77 -0
- package/dist/runtime/remoteRepoContext.js +316 -0
- package/dist/runtime/remoteRepoContext.js.map +1 -0
- package/dist/runtime/repoContext.d.ts +50 -0
- package/dist/runtime/repoContext.js +399 -0
- package/dist/runtime/repoContext.js.map +1 -0
- package/dist/runtime/repoGateway.d.ts +64 -0
- package/dist/runtime/repoGateway.js +308 -0
- package/dist/runtime/repoGateway.js.map +1 -0
- package/dist/runtime/responseContracts.d.ts +3 -0
- package/dist/runtime/responseContracts.js +86 -0
- package/dist/runtime/responseContracts.js.map +1 -0
- package/dist/runtime/reviewLanes.d.ts +2 -0
- package/dist/runtime/reviewLanes.js +343 -0
- package/dist/runtime/reviewLanes.js.map +1 -0
- package/dist/runtime/reviewRouting.d.ts +51 -0
- package/dist/runtime/reviewRouting.js +152 -0
- package/dist/runtime/reviewRouting.js.map +1 -0
- package/dist/runtime/revisionPacket.d.ts +38 -0
- package/dist/runtime/revisionPacket.js +144 -0
- package/dist/runtime/revisionPacket.js.map +1 -0
- package/dist/runtime/revisionTrail.d.ts +2 -0
- package/dist/runtime/revisionTrail.js +162 -0
- package/dist/runtime/revisionTrail.js.map +1 -0
- package/dist/runtime/role-assignment.d.ts +4 -0
- package/dist/runtime/role-assignment.js +21 -0
- package/dist/runtime/role-assignment.js.map +1 -0
- package/dist/runtime/roleRoster.d.ts +28 -0
- package/dist/runtime/roleRoster.js +96 -0
- package/dist/runtime/roleRoster.js.map +1 -0
- package/dist/runtime/runInsights.d.ts +121 -0
- package/dist/runtime/runInsights.js +305 -0
- package/dist/runtime/runInsights.js.map +1 -0
- package/dist/runtime/runMonitor.d.ts +33 -0
- package/dist/runtime/runMonitor.js +143 -0
- package/dist/runtime/runMonitor.js.map +1 -0
- package/dist/runtime/runtime.d.ts +15 -0
- package/dist/runtime/runtime.js +199 -0
- package/dist/runtime/runtime.js.map +1 -0
- package/dist/runtime/runtimeInfo.d.ts +9 -0
- package/dist/runtime/runtimeInfo.js +76 -0
- package/dist/runtime/runtimeInfo.js.map +1 -0
- package/dist/runtime/store.d.ts +4 -0
- package/dist/runtime/store.js +48 -0
- package/dist/runtime/store.js.map +1 -0
- package/dist/runtime/summons.d.ts +25 -0
- package/dist/runtime/summons.js +403 -0
- package/dist/runtime/summons.js.map +1 -0
- package/dist/runtime/teamPresets.d.ts +14 -0
- package/dist/runtime/teamPresets.js +153 -0
- package/dist/runtime/teamPresets.js.map +1 -0
- package/dist/runtime/types.d.ts +505 -0
- package/dist/runtime/types.js +28 -0
- package/dist/runtime/types.js.map +1 -0
- package/dist/runtime/validationCommands.d.ts +18 -0
- package/dist/runtime/validationCommands.js +106 -0
- package/dist/runtime/validationCommands.js.map +1 -0
- package/dist/tui/dashboard.d.ts +41 -0
- package/dist/tui/dashboard.js +1115 -0
- package/dist/tui/dashboard.js.map +1 -0
- package/docs/ARCHITECTURE.md +277 -0
- package/docs/CLI_SPEC.md +396 -0
- package/docs/CODEX_SETUP.md +288 -0
- package/docs/COMPLETION_CONTRACT.md +52 -0
- package/docs/CONTRIBUTOR_GUIDE.md +70 -0
- package/docs/DEMO.md +62 -0
- package/docs/GLOSSARY.md +46 -0
- package/docs/GOAL_LOOP_SCHEDULE.md +50 -0
- package/docs/KNOWN_LIMITATIONS.md +29 -0
- package/docs/LICENSING.md +21 -0
- package/docs/LOOP_RECIPES.md +290 -0
- package/docs/LOOP_SELECTION_UX.md +118 -0
- package/docs/MCP_SPEC.md +689 -0
- package/docs/MEMORY_AND_RECONCILIATION.md +222 -0
- package/docs/NPM_PUBLISHING.md +51 -0
- package/docs/OPEN_DECISIONS.md +81 -0
- package/docs/PROMPT_SCHEMAS.md +411 -0
- package/docs/PROVIDER_ADAPTERS.md +323 -0
- package/docs/PROVIDER_MATRIX.md +21 -0
- package/docs/PUBLIC_REPO_READINESS.md +49 -0
- package/docs/RESEARCH_NOTES.md +92 -0
- package/docs/ROADMAP.md +94 -0
- package/docs/ROLE_CONTRACTS.md +252 -0
- package/docs/RUNTIME_LOOP.md +240 -0
- package/docs/SECURITY_AND_PRIVACY.md +161 -0
- package/docs/TESTING_AND_VERIFICATION.md +180 -0
- package/docs/TRUST_MODEL.md +65 -0
- package/docs/decisions/0001-runtime-first-cli-and-mcp.md +23 -0
- package/docs/decisions/0002-provider-neutral-role-mapping.md +43 -0
- package/docs/decisions/0003-separate-implementation-and-verification.md +27 -0
- package/docs/product/README.md +14 -0
- package/docs/product/model-selection.md +88 -0
- package/docs/product/positioning.md +37 -0
- package/docs/product/pro-usage-modes.md +70 -0
- package/docs/product/roadmap.md +57 -0
- package/docs/product/role-policy.md +89 -0
- package/docs/product/runtime-invariants.md +44 -0
- package/docs/release/v0.1.0-preview.0.md +48 -0
- package/examples/stub-demo/README.md +25 -0
- package/package.json +55 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { type JsonObject, type JsonValue, type RoleMap, type RunMode } from "../runtime/types.js";
|
|
2
|
+
export declare const asObject: (value: JsonValue | undefined, name: string) => JsonObject;
|
|
3
|
+
export declare const optionalObject: (value: JsonValue | undefined, name: string) => JsonObject | undefined;
|
|
4
|
+
export declare const requiredString: (source: JsonObject, key: string) => string;
|
|
5
|
+
export declare const optionalString: (source: JsonObject, key: string) => string | undefined;
|
|
6
|
+
export declare const optionalStringList: (source: JsonObject, key: string) => string[];
|
|
7
|
+
export declare const optionalRunMode: (source: JsonObject, key: string, fallback: RunMode) => RunMode;
|
|
8
|
+
export declare const optionalRoleMapping: (source: JsonObject) => RoleMap;
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { InputError } from "../runtime/errors.js";
|
|
2
|
+
import { parseRole, parseRoleAssignment } from "../runtime/role-assignment.js";
|
|
3
|
+
import { runModes } from "../runtime/types.js";
|
|
4
|
+
export const asObject = (value, name) => {
|
|
5
|
+
if (value !== null && typeof value === "object" && !Array.isArray(value)) {
|
|
6
|
+
return value;
|
|
7
|
+
}
|
|
8
|
+
throw new InputError(`${name} must be an object.`);
|
|
9
|
+
};
|
|
10
|
+
export const optionalObject = (value, name) => {
|
|
11
|
+
if (value === undefined) {
|
|
12
|
+
return undefined;
|
|
13
|
+
}
|
|
14
|
+
return asObject(value, name);
|
|
15
|
+
};
|
|
16
|
+
export const requiredString = (source, key) => {
|
|
17
|
+
const value = source[key];
|
|
18
|
+
if (typeof value === "string" && value.trim().length > 0) {
|
|
19
|
+
return value;
|
|
20
|
+
}
|
|
21
|
+
throw new InputError(`${key} must be a non-empty string.`);
|
|
22
|
+
};
|
|
23
|
+
export const optionalString = (source, key) => {
|
|
24
|
+
const value = source[key];
|
|
25
|
+
if (value === undefined) {
|
|
26
|
+
return undefined;
|
|
27
|
+
}
|
|
28
|
+
if (typeof value === "string" && value.trim().length > 0) {
|
|
29
|
+
return value;
|
|
30
|
+
}
|
|
31
|
+
throw new InputError(`${key} must be a non-empty string when provided.`);
|
|
32
|
+
};
|
|
33
|
+
export const optionalStringList = (source, key) => {
|
|
34
|
+
const value = source[key];
|
|
35
|
+
if (value === undefined) {
|
|
36
|
+
return [];
|
|
37
|
+
}
|
|
38
|
+
if (!Array.isArray(value) || value.some((item) => typeof item !== "string")) {
|
|
39
|
+
throw new InputError(`${key} must be an array of strings when provided.`);
|
|
40
|
+
}
|
|
41
|
+
return value;
|
|
42
|
+
};
|
|
43
|
+
export const optionalRunMode = (source, key, fallback) => {
|
|
44
|
+
const value = source[key];
|
|
45
|
+
if (value === undefined) {
|
|
46
|
+
return fallback;
|
|
47
|
+
}
|
|
48
|
+
if (typeof value === "string" && runModes.includes(value)) {
|
|
49
|
+
return value;
|
|
50
|
+
}
|
|
51
|
+
throw new InputError(`${key} must be one of: ${runModes.join(", ")}.`);
|
|
52
|
+
};
|
|
53
|
+
export const optionalRoleMapping = (source) => {
|
|
54
|
+
const raw = optionalObject(source.role_mapping, "role_mapping");
|
|
55
|
+
const roles = {};
|
|
56
|
+
if (!raw) {
|
|
57
|
+
return roles;
|
|
58
|
+
}
|
|
59
|
+
for (const [role, value] of Object.entries(raw)) {
|
|
60
|
+
if (typeof value !== "string") {
|
|
61
|
+
throw new InputError(`role_mapping.${role} must use provider:model string format.`);
|
|
62
|
+
}
|
|
63
|
+
roles[parseRole(role)] = parseRoleAssignment(value);
|
|
64
|
+
}
|
|
65
|
+
return roles;
|
|
66
|
+
};
|
|
67
|
+
//# sourceMappingURL=validation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/mcp/validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAC/E,OAAO,EAAE,QAAQ,EAA+D,MAAM,qBAAqB,CAAC;AAE5G,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,KAA4B,EAAE,IAAY,EAAc,EAAE;IACjF,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,IAAI,UAAU,CAAC,GAAG,IAAI,qBAAqB,CAAC,CAAC;AACrD,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAA4B,EAAE,IAAY,EAA0B,EAAE;IACnG,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;AAC/B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,MAAkB,EAAE,GAAW,EAAU,EAAE;IACxE,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAE1B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,IAAI,UAAU,CAAC,GAAG,GAAG,8BAA8B,CAAC,CAAC;AAC7D,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,MAAkB,EAAE,GAAW,EAAsB,EAAE;IACpF,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAE1B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,IAAI,UAAU,CAAC,GAAG,GAAG,4CAA4C,CAAC,CAAC;AAC3E,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,MAAkB,EAAE,GAAW,EAAY,EAAE;IAC9E,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAE1B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC;QAC5E,MAAM,IAAI,UAAU,CAAC,GAAG,GAAG,6CAA6C,CAAC,CAAC;IAC5E,CAAC;IAED,OAAO,KAAiB,CAAC;AAC3B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,MAAkB,EAAE,GAAW,EAAE,QAAiB,EAAW,EAAE;IAC7F,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAE1B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAK,QAA8B,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACjF,OAAO,KAAgB,CAAC;IAC1B,CAAC;IAED,MAAM,IAAI,UAAU,CAAC,GAAG,GAAG,oBAAoB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,MAAkB,EAAW,EAAE;IACjE,MAAM,GAAG,GAAG,cAAc,CAAC,MAAM,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;IAChE,MAAM,KAAK,GAAY,EAAE,CAAC;IAE1B,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAChD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,IAAI,UAAU,CAAC,gBAAgB,IAAI,yCAAyC,CAAC,CAAC;QACtF,CAAC;QAED,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IACtD,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { createFallbackAgentResponse, runLocalAgentCommand } from "./localCommand.js";
|
|
2
|
+
const bridgeCommand = () => process.env.THEHOOD_CHATGPT_WEB_COMMAND;
|
|
3
|
+
const buildChatGptWebArgs = (request, context) => [
|
|
4
|
+
"--model",
|
|
5
|
+
request.assignment.model,
|
|
6
|
+
"--schema",
|
|
7
|
+
context.schemaPath
|
|
8
|
+
];
|
|
9
|
+
export const chatGptWebProvider = {
|
|
10
|
+
id: "chatgpt-web",
|
|
11
|
+
async runAgent(request) {
|
|
12
|
+
const command = bridgeCommand();
|
|
13
|
+
if (!command) {
|
|
14
|
+
return createFallbackAgentResponse(request, {
|
|
15
|
+
status: "blocked",
|
|
16
|
+
summary: "ChatGPT Web bridge command is not configured. Set THEHOOD_CHATGPT_WEB_COMMAND to an executable that uses the user's authenticated ChatGPT session and returns the AgentResponse JSON envelope."
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
return runLocalAgentCommand(request, {
|
|
20
|
+
providerId: "chatgpt-web",
|
|
21
|
+
command,
|
|
22
|
+
buildArgs: buildChatGptWebArgs
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=chatgptWeb.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chatgptWeb.js","sourceRoot":"","sources":["../../src/providers/chatgptWeb.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAItF,MAAM,aAAa,GAAG,GAAuB,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC;AAExF,MAAM,mBAAmB,GAAG,CAAC,OAAqB,EAAE,OAAiC,EAAY,EAAE,CAAC;IAClG,SAAS;IACT,OAAO,CAAC,UAAU,CAAC,KAAK;IACxB,UAAU;IACV,OAAO,CAAC,UAAU;CACnB,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAoB;IACjD,EAAE,EAAE,aAAa;IACjB,KAAK,CAAC,QAAQ,CAAC,OAAO;QACpB,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;QAEhC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,2BAA2B,CAAC,OAAO,EAAE;gBAC1C,MAAM,EAAE,SAAS;gBACjB,OAAO,EACL,gMAAgM;aACnM,CAAC,CAAC;QACL,CAAC;QAED,OAAO,oBAAoB,CAAC,OAAO,EAAE;YACnC,UAAU,EAAE,aAAa;YACzB,OAAO;YACP,SAAS,EAAE,mBAAmB;SAC/B,CAAC,CAAC;IACL,CAAC;CACF,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { LocalAgentCommandContext } from "./localCommand.js";
|
|
2
|
+
import type { AgentRequest } from "./types.js";
|
|
3
|
+
export declare const buildClaudeCodeArgs: (request: AgentRequest, context: LocalAgentCommandContext) => string[];
|
|
4
|
+
export declare const claudeCodeProvider: import("./types.js").ProviderAdapter;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { createLocalCommandProvider } from "./localCommand.js";
|
|
2
|
+
const permissionModeForRequest = (request) => request.directive.toolPermissions.edit ? "default" : "plan";
|
|
3
|
+
const usesDefaultModel = (model) => model === "default" || model === "configured";
|
|
4
|
+
const toolsForRequest = (request) => {
|
|
5
|
+
if (request.directive.toolPermissions.edit) {
|
|
6
|
+
return "Read,Glob,Grep,Edit,MultiEdit,Write,Bash";
|
|
7
|
+
}
|
|
8
|
+
if (request.directive.toolPermissions.shell) {
|
|
9
|
+
return "Read,Glob,Grep,Bash";
|
|
10
|
+
}
|
|
11
|
+
return "Read,Glob,Grep";
|
|
12
|
+
};
|
|
13
|
+
export const buildClaudeCodeArgs = (request, context) => {
|
|
14
|
+
const args = [
|
|
15
|
+
"--print",
|
|
16
|
+
"--output-format",
|
|
17
|
+
"json",
|
|
18
|
+
"--json-schema",
|
|
19
|
+
JSON.stringify(context.schema),
|
|
20
|
+
"--no-session-persistence",
|
|
21
|
+
"--permission-mode",
|
|
22
|
+
permissionModeForRequest(request),
|
|
23
|
+
"--tools",
|
|
24
|
+
toolsForRequest(request)
|
|
25
|
+
];
|
|
26
|
+
if (!usesDefaultModel(request.assignment.model)) {
|
|
27
|
+
args.push("--model", request.assignment.model);
|
|
28
|
+
}
|
|
29
|
+
return args;
|
|
30
|
+
};
|
|
31
|
+
export const claudeCodeProvider = createLocalCommandProvider("claude-code", process.env.THEHOOD_CLAUDE_COMMAND ?? "claude", buildClaudeCodeArgs);
|
|
32
|
+
//# sourceMappingURL=claudeCode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"claudeCode.js","sourceRoot":"","sources":["../../src/providers/claudeCode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,mBAAmB,CAAC;AAI/D,MAAM,wBAAwB,GAAG,CAAC,OAAqB,EAAU,EAAE,CACjE,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;AAE9D,MAAM,gBAAgB,GAAG,CAAC,KAAa,EAAW,EAAE,CAClD,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,YAAY,CAAC;AAEhD,MAAM,eAAe,GAAG,CAAC,OAAqB,EAAU,EAAE;IACxD,IAAI,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;QAC3C,OAAO,0CAA0C,CAAC;IACpD,CAAC;IAED,IAAI,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QAC5C,OAAO,qBAAqB,CAAC;IAC/B,CAAC;IAED,OAAO,gBAAgB,CAAC;AAC1B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,OAAqB,EAAE,OAAiC,EAAY,EAAE;IACxG,MAAM,IAAI,GAAG;QACX,SAAS;QACT,iBAAiB;QACjB,MAAM;QACN,eAAe;QACf,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC;QAC9B,0BAA0B;QAC1B,mBAAmB;QACnB,wBAAwB,CAAC,OAAO,CAAC;QACjC,SAAS;QACT,eAAe,CAAC,OAAO,CAAC;KACzB,CAAC;IAEF,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAChD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IACjD,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,0BAA0B,CAC1D,aAAa,EACb,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,QAAQ,EAC9C,mBAAmB,CACpB,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { resolveCodexCliModel } from "./codexCliModels.js";
|
|
2
|
+
import type { LocalAgentCommandContext } from "./localCommand.js";
|
|
3
|
+
import type { AgentRequest } from "./types.js";
|
|
4
|
+
export declare const buildCodexCliArgs: (request: AgentRequest, context: LocalAgentCommandContext) => string[];
|
|
5
|
+
export declare const codexCliProvider: import("./types.js").ProviderAdapter;
|
|
6
|
+
export { resolveCodexCliModel };
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { createLocalCommandProvider } from "./localCommand.js";
|
|
2
|
+
import { codexCliCommand, codexCliUsesDefaultModel, resolveCodexCliModel } from "./codexCliModels.js";
|
|
3
|
+
const sandboxForRequest = (request) => request.directive.toolPermissions.edit ? "workspace-write" : "read-only";
|
|
4
|
+
export const buildCodexCliArgs = (request, context) => {
|
|
5
|
+
const args = [
|
|
6
|
+
"exec",
|
|
7
|
+
"--cd",
|
|
8
|
+
context.workspacePath,
|
|
9
|
+
"--sandbox",
|
|
10
|
+
sandboxForRequest(request),
|
|
11
|
+
"--color",
|
|
12
|
+
"never",
|
|
13
|
+
"--skip-git-repo-check",
|
|
14
|
+
"--output-schema",
|
|
15
|
+
context.schemaPath
|
|
16
|
+
];
|
|
17
|
+
if (!codexCliUsesDefaultModel(request.assignment.model)) {
|
|
18
|
+
args.push("--model", resolveCodexCliModel(request.assignment.model));
|
|
19
|
+
}
|
|
20
|
+
args.push("-");
|
|
21
|
+
return args;
|
|
22
|
+
};
|
|
23
|
+
export const codexCliProvider = createLocalCommandProvider("codex-cli", codexCliCommand(), buildCodexCliArgs);
|
|
24
|
+
export { resolveCodexCliModel };
|
|
25
|
+
//# sourceMappingURL=codexCli.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codexCli.js","sourceRoot":"","sources":["../../src/providers/codexCli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAItG,MAAM,iBAAiB,GAAG,CAAC,OAAqB,EAAU,EAAE,CAC1D,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,WAAW,CAAC;AAE3E,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,OAAqB,EAAE,OAAiC,EAAY,EAAE;IACtG,MAAM,IAAI,GAAG;QACX,MAAM;QACN,MAAM;QACN,OAAO,CAAC,aAAa;QACrB,WAAW;QACX,iBAAiB,CAAC,OAAO,CAAC;QAC1B,SAAS;QACT,OAAO;QACP,uBAAuB;QACvB,iBAAiB;QACjB,OAAO,CAAC,UAAU;KACnB,CAAC;IAEF,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACxD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,oBAAoB,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;IACvE,CAAC;IAED,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACf,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,0BAA0B,CACxD,WAAW,EACX,eAAe,EAAE,EACjB,iBAAiB,CAClB,CAAC;AAEF,OAAO,EAAE,oBAAoB,EAAE,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export interface CodexCliDiscoveredModel {
|
|
2
|
+
slug: string;
|
|
3
|
+
displayName?: string;
|
|
4
|
+
visibility?: string;
|
|
5
|
+
defaultReasoningLevel?: string;
|
|
6
|
+
supportedReasoningLevels: string[];
|
|
7
|
+
serviceTiers: string[];
|
|
8
|
+
additionalSpeedTiers: string[];
|
|
9
|
+
}
|
|
10
|
+
export interface CodexCliModelDiscovery {
|
|
11
|
+
status: "available" | "unavailable";
|
|
12
|
+
command: string;
|
|
13
|
+
source: "codex_debug_models";
|
|
14
|
+
models: CodexCliDiscoveredModel[];
|
|
15
|
+
issues: string[];
|
|
16
|
+
}
|
|
17
|
+
export declare const codexCliUsesDefaultModel: (model: string) => boolean;
|
|
18
|
+
export declare const codexCliCommand: () => string;
|
|
19
|
+
export declare const discoverCodexCliModels: (command?: string) => CodexCliModelDiscovery;
|
|
20
|
+
export declare const resolveCodexCliModelFromCatalog: (model: string, models: CodexCliDiscoveredModel[]) => string | undefined;
|
|
21
|
+
export declare const resolveCodexCliModel: (model: string, discovery?: CodexCliModelDiscovery) => string;
|
|
22
|
+
export declare const codexCliModelAvailable: (model: string, discovery: CodexCliModelDiscovery) => boolean | undefined;
|
|
23
|
+
export declare const codexCliKnownAliasModels: () => string[];
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
import { spawnSync } from "node:child_process";
|
|
2
|
+
const maxCatalogBytes = 64 * 1024 * 1024;
|
|
3
|
+
const friendlyModelAliases = {
|
|
4
|
+
spark: ["codex-spark"]
|
|
5
|
+
};
|
|
6
|
+
const friendlyModelFallbacks = {
|
|
7
|
+
spark: "gpt-5.3-codex-spark"
|
|
8
|
+
};
|
|
9
|
+
export const codexCliUsesDefaultModel = (model) => model === "default" || model === "configured";
|
|
10
|
+
export const codexCliCommand = () => process.env.THEHOOD_CODEX_COMMAND ?? "codex";
|
|
11
|
+
const normalizeModelText = (value) => value.toLowerCase().replace(/[^a-z0-9]+/g, "-").replace(/^-+|-+$/g, "");
|
|
12
|
+
const stringField = (value, field) => value && typeof value === "object" && !Array.isArray(value) && typeof value[field] === "string"
|
|
13
|
+
? value[field]
|
|
14
|
+
: undefined;
|
|
15
|
+
const stringArrayField = (value, field) => {
|
|
16
|
+
if (!value || typeof value !== "object" || Array.isArray(value)) {
|
|
17
|
+
return [];
|
|
18
|
+
}
|
|
19
|
+
const raw = value[field];
|
|
20
|
+
return Array.isArray(raw) ? raw.filter((item) => typeof item === "string") : [];
|
|
21
|
+
};
|
|
22
|
+
const reasoningLevels = (value) => {
|
|
23
|
+
if (!value || typeof value !== "object" || Array.isArray(value)) {
|
|
24
|
+
return [];
|
|
25
|
+
}
|
|
26
|
+
const raw = value.supported_reasoning_levels;
|
|
27
|
+
if (!Array.isArray(raw)) {
|
|
28
|
+
return [];
|
|
29
|
+
}
|
|
30
|
+
return raw
|
|
31
|
+
.map((item) => stringField(item, "effort"))
|
|
32
|
+
.filter((item) => Boolean(item));
|
|
33
|
+
};
|
|
34
|
+
const serviceTierIds = (value) => {
|
|
35
|
+
if (!value || typeof value !== "object" || Array.isArray(value)) {
|
|
36
|
+
return [];
|
|
37
|
+
}
|
|
38
|
+
const raw = value.service_tiers;
|
|
39
|
+
if (!Array.isArray(raw)) {
|
|
40
|
+
return [];
|
|
41
|
+
}
|
|
42
|
+
return raw
|
|
43
|
+
.map((item) => stringField(item, "id"))
|
|
44
|
+
.filter((item) => Boolean(item));
|
|
45
|
+
};
|
|
46
|
+
const sanitizeModel = (value) => {
|
|
47
|
+
const slug = stringField(value, "slug");
|
|
48
|
+
if (!slug) {
|
|
49
|
+
return undefined;
|
|
50
|
+
}
|
|
51
|
+
const displayName = stringField(value, "display_name");
|
|
52
|
+
const visibility = stringField(value, "visibility");
|
|
53
|
+
const defaultReasoningLevel = stringField(value, "default_reasoning_level");
|
|
54
|
+
return {
|
|
55
|
+
slug,
|
|
56
|
+
...(displayName ? { displayName } : {}),
|
|
57
|
+
...(visibility ? { visibility } : {}),
|
|
58
|
+
...(defaultReasoningLevel ? { defaultReasoningLevel } : {}),
|
|
59
|
+
supportedReasoningLevels: reasoningLevels(value),
|
|
60
|
+
serviceTiers: serviceTierIds(value),
|
|
61
|
+
additionalSpeedTiers: stringArrayField(value, "additional_speed_tiers")
|
|
62
|
+
};
|
|
63
|
+
};
|
|
64
|
+
export const discoverCodexCliModels = (command = codexCliCommand()) => {
|
|
65
|
+
const result = spawnSync(command, ["debug", "models"], {
|
|
66
|
+
encoding: "utf8",
|
|
67
|
+
env: process.env,
|
|
68
|
+
maxBuffer: maxCatalogBytes
|
|
69
|
+
});
|
|
70
|
+
if (result.error) {
|
|
71
|
+
return {
|
|
72
|
+
status: "unavailable",
|
|
73
|
+
command,
|
|
74
|
+
source: "codex_debug_models",
|
|
75
|
+
models: [],
|
|
76
|
+
issues: [`model_discovery_error:${result.error.message}`]
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
if (result.status !== 0) {
|
|
80
|
+
return {
|
|
81
|
+
status: "unavailable",
|
|
82
|
+
command,
|
|
83
|
+
source: "codex_debug_models",
|
|
84
|
+
models: [],
|
|
85
|
+
issues: [`model_discovery_exit_${result.status ?? "unknown"}`]
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
try {
|
|
89
|
+
const parsed = JSON.parse(result.stdout);
|
|
90
|
+
const models = Array.isArray(parsed.models)
|
|
91
|
+
? parsed.models
|
|
92
|
+
.map(sanitizeModel)
|
|
93
|
+
.filter((model) => Boolean(model))
|
|
94
|
+
: [];
|
|
95
|
+
return {
|
|
96
|
+
status: "available",
|
|
97
|
+
command,
|
|
98
|
+
source: "codex_debug_models",
|
|
99
|
+
models,
|
|
100
|
+
issues: []
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
catch (error) {
|
|
104
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
105
|
+
return {
|
|
106
|
+
status: "unavailable",
|
|
107
|
+
command,
|
|
108
|
+
source: "codex_debug_models",
|
|
109
|
+
models: [],
|
|
110
|
+
issues: [`model_discovery_parse_failed:${message}`]
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
};
|
|
114
|
+
export const resolveCodexCliModelFromCatalog = (model, models) => {
|
|
115
|
+
const normalizedModel = normalizeModelText(model);
|
|
116
|
+
const exact = models.find((candidate) => candidate.slug === model ||
|
|
117
|
+
normalizeModelText(candidate.slug) === normalizedModel ||
|
|
118
|
+
(candidate.displayName ? normalizeModelText(candidate.displayName) === normalizedModel : false));
|
|
119
|
+
if (exact) {
|
|
120
|
+
return exact.slug;
|
|
121
|
+
}
|
|
122
|
+
const patterns = friendlyModelAliases[normalizedModel] ?? [];
|
|
123
|
+
return models.find((candidate) => patterns.some((pattern) => normalizeModelText(candidate.slug).includes(pattern) ||
|
|
124
|
+
(candidate.displayName ? normalizeModelText(candidate.displayName).includes(pattern) : false)))?.slug;
|
|
125
|
+
};
|
|
126
|
+
export const resolveCodexCliModel = (model, discovery = discoverCodexCliModels()) => codexCliUsesDefaultModel(model)
|
|
127
|
+
? "default"
|
|
128
|
+
: resolveCodexCliModelFromCatalog(model, discovery.models) ??
|
|
129
|
+
friendlyModelFallbacks[normalizeModelText(model)] ??
|
|
130
|
+
model;
|
|
131
|
+
export const codexCliModelAvailable = (model, discovery) => {
|
|
132
|
+
if (codexCliUsesDefaultModel(model)) {
|
|
133
|
+
return true;
|
|
134
|
+
}
|
|
135
|
+
if (discovery.status !== "available") {
|
|
136
|
+
return undefined;
|
|
137
|
+
}
|
|
138
|
+
const resolvedFromCatalog = resolveCodexCliModelFromCatalog(model, discovery.models);
|
|
139
|
+
if (resolvedFromCatalog) {
|
|
140
|
+
return true;
|
|
141
|
+
}
|
|
142
|
+
const normalizedModel = normalizeModelText(model);
|
|
143
|
+
return Boolean(friendlyModelFallbacks[normalizedModel] ||
|
|
144
|
+
Object.values(friendlyModelFallbacks).some((fallback) => normalizeModelText(fallback) === normalizedModel));
|
|
145
|
+
};
|
|
146
|
+
export const codexCliKnownAliasModels = () => [...new Set(Object.values(friendlyModelFallbacks))];
|
|
147
|
+
//# sourceMappingURL=codexCliModels.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codexCliModels.js","sourceRoot":"","sources":["../../src/providers/codexCliModels.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { AgentRequest, AgentResponse, ProviderAdapter } from "./types.js";
|
|
2
|
+
import type { JsonObject } from "../runtime/types.js";
|
|
3
|
+
export interface LocalAgentCommandSpec {
|
|
4
|
+
providerId: string;
|
|
5
|
+
command: string;
|
|
6
|
+
buildArgs: BuildLocalAgentArgs;
|
|
7
|
+
timeoutMs?: number;
|
|
8
|
+
}
|
|
9
|
+
export interface LocalAgentCommandContext {
|
|
10
|
+
schema: JsonObject;
|
|
11
|
+
schemaPath: string;
|
|
12
|
+
workspacePath: string;
|
|
13
|
+
}
|
|
14
|
+
export type BuildLocalAgentArgs = (request: AgentRequest, context: LocalAgentCommandContext) => string[];
|
|
15
|
+
export interface FallbackResponseInput {
|
|
16
|
+
status: AgentResponse["status"];
|
|
17
|
+
summary: string;
|
|
18
|
+
exitCode?: number;
|
|
19
|
+
stdoutLength?: number;
|
|
20
|
+
stderrLength?: number;
|
|
21
|
+
}
|
|
22
|
+
export declare const parseLocalAgentOutput: (stdout: string) => AgentResponse | undefined;
|
|
23
|
+
export declare const createFallbackAgentResponse: (request: Pick<AgentRequest, "role" | "directive">, input: FallbackResponseInput) => AgentResponse;
|
|
24
|
+
export declare const buildAgentPrompt: (request: AgentRequest) => string;
|
|
25
|
+
export declare const runLocalAgentCommand: (request: AgentRequest, spec: LocalAgentCommandSpec) => Promise<AgentResponse>;
|
|
26
|
+
export declare const createLocalCommandProvider: (id: string, command: string, buildArgs: BuildLocalAgentArgs) => ProviderAdapter;
|