@autohq/cli 0.1.612 → 0.1.614
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/dist/agent-bridge.js +26527 -21081
- package/dist/index.js +70 -23
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -17971,7 +17971,7 @@ var init_model_selection = __esm({
|
|
|
17971
17971
|
providers: ["openai", "openrouter"],
|
|
17972
17972
|
defaultModel: "gpt-5.6-sol",
|
|
17973
17973
|
curatedModels: {
|
|
17974
|
-
openai: ["gpt-5.6-sol", "gpt-5.5", "gpt-5.3-codex"]
|
|
17974
|
+
openai: ["gpt-5.6-sol", "gpt-5.6-luna", "gpt-5.5", "gpt-5.3-codex"]
|
|
17975
17975
|
},
|
|
17976
17976
|
openProviderPatterns: {
|
|
17977
17977
|
openrouter: OPENROUTER_MODEL_SLUG_PATTERN
|
|
@@ -17984,6 +17984,10 @@ var init_model_selection = __esm({
|
|
|
17984
17984
|
defaultEffort: "medium",
|
|
17985
17985
|
efforts: CODEX_REASONING_EFFORTS
|
|
17986
17986
|
},
|
|
17987
|
+
"gpt-5.6-luna": {
|
|
17988
|
+
defaultEffort: "medium",
|
|
17989
|
+
efforts: [...CODEX_REASONING_EFFORTS, "max"]
|
|
17990
|
+
},
|
|
17987
17991
|
"gpt-5.5": {
|
|
17988
17992
|
defaultEffort: "medium",
|
|
17989
17993
|
efforts: CODEX_REASONING_EFFORTS
|
|
@@ -18752,6 +18756,7 @@ var init_github_mcp_catalog = __esm({
|
|
|
18752
18756
|
"enable_pull_request_auto_merge",
|
|
18753
18757
|
"enqueue_pull_request",
|
|
18754
18758
|
"rerun_failed_jobs",
|
|
18759
|
+
"rerun_failed_jobs_for_pr_head",
|
|
18755
18760
|
"upsert_issue_comment"
|
|
18756
18761
|
];
|
|
18757
18762
|
GITHUB_MCP_SELECTABLE_TOOL_NAMES = [
|
|
@@ -18771,7 +18776,8 @@ var init_github_mcp_catalog = __esm({
|
|
|
18771
18776
|
"actions_secret_write"
|
|
18772
18777
|
];
|
|
18773
18778
|
GITHUB_MCP_ACTIONS_WRITE_TOOLS = [
|
|
18774
|
-
"rerun_failed_jobs"
|
|
18779
|
+
"rerun_failed_jobs",
|
|
18780
|
+
"rerun_failed_jobs_for_pr_head"
|
|
18775
18781
|
];
|
|
18776
18782
|
GITHUB_MCP_WRITE_TOOLS = [
|
|
18777
18783
|
"actions_run_trigger",
|
|
@@ -19676,7 +19682,7 @@ function remoteMcpToolSchema(input) {
|
|
|
19676
19682
|
]).default({ kind: "none" })
|
|
19677
19683
|
});
|
|
19678
19684
|
}
|
|
19679
|
-
var REMOTE_MCP_TRANSPORTS, LOCAL_TOOL_IMPLEMENTATIONS, BILLING_CAPABILITY_LEVELS, BillingCapabilityLevelSchema, PROJECT_MEMBER_CAPABILITY_LEVELS, ProjectMemberCapabilityLevelSchema, TASK_CAPABILITY_LEVELS, TaskCapabilityLevelSchema, TASK_MANAGEMENT_CAPABILITY_LEVELS, TaskManagementCapabilityLevelSchema, CONNECTION_CAPABILITY_LEVELS, ConnectionCapabilityLevelSchema, SECRET_CAPABILITY_LEVELS, SecretCapabilityLevelSchema, WEBHOOK_CAPABILITY_LEVELS, WebhookCapabilityLevelSchema, BillingCapabilitySchema, ProjectMemberCapabilitySchema, TaskCapabilitySchema, ConnectionCapabilitySchema, SecretCapabilitySchema, WebhookCapabilitySchema, LocalAutoToolCapabilitiesSchema, SecretReferenceSchema, NoToolAuthSchema, OptionalConnectionField, McpOAuthToolAuthSchema, ConnectionToolAuthSchema, ConnectionsToolAuthSchema, ConnectionBackedToolSchema, ToolAliasSchema, RemoteMcpToolSchema, LocalAutoToolSchema, LocalPingToolSchema, LocalChatToolSchema, LocalToolSchema, GithubToolSchema, ToolSpecSchema, AgentToolConnectRequestSchema, AgentToolConnectResponseSchema, AgentToolConnectCompleteResponseSchema, InlineAgentToolSchema, AgentToolRefSchema, AgentToolsSchema;
|
|
19685
|
+
var REMOTE_MCP_TRANSPORTS, LOCAL_TOOL_IMPLEMENTATIONS, BILLING_CAPABILITY_LEVELS, BillingCapabilityLevelSchema, PROJECT_MEMBER_CAPABILITY_LEVELS, ProjectMemberCapabilityLevelSchema, RUNTIME_CAPABILITY_LEVELS, RuntimeCapabilityLevelSchema, TASK_CAPABILITY_LEVELS, TaskCapabilityLevelSchema, TASK_MANAGEMENT_CAPABILITY_LEVELS, TaskManagementCapabilityLevelSchema, CONNECTION_CAPABILITY_LEVELS, ConnectionCapabilityLevelSchema, SECRET_CAPABILITY_LEVELS, SecretCapabilityLevelSchema, WEBHOOK_CAPABILITY_LEVELS, WebhookCapabilityLevelSchema, BillingCapabilitySchema, ProjectMemberCapabilitySchema, RuntimeCapabilitySchema, TaskCapabilitySchema, ConnectionCapabilitySchema, SecretCapabilitySchema, WebhookCapabilitySchema, LocalAutoToolCapabilitiesSchema, SecretReferenceSchema, NoToolAuthSchema, OptionalConnectionField, McpOAuthToolAuthSchema, ConnectionToolAuthSchema, ConnectionsToolAuthSchema, ConnectionBackedToolSchema, ToolAliasSchema, RemoteMcpToolSchema, LocalAutoToolSchema, LocalPingToolSchema, LocalChatToolSchema, LocalToolSchema, GithubToolSchema, ToolSpecSchema, AgentToolConnectRequestSchema, AgentToolConnectResponseSchema, AgentToolConnectCompleteResponseSchema, InlineAgentToolSchema, AgentToolRefSchema, AgentToolsSchema;
|
|
19680
19686
|
var init_tools = __esm({
|
|
19681
19687
|
"../../packages/schemas/src/tools.ts"() {
|
|
19682
19688
|
"use strict";
|
|
@@ -19694,6 +19700,8 @@ var init_tools = __esm({
|
|
|
19694
19700
|
ProjectMemberCapabilityLevelSchema = external_exports.enum(
|
|
19695
19701
|
PROJECT_MEMBER_CAPABILITY_LEVELS
|
|
19696
19702
|
);
|
|
19703
|
+
RUNTIME_CAPABILITY_LEVELS = ["none", "read", "write"];
|
|
19704
|
+
RuntimeCapabilityLevelSchema = external_exports.enum(RUNTIME_CAPABILITY_LEVELS);
|
|
19697
19705
|
TASK_CAPABILITY_LEVELS = ["none", "read", "write"];
|
|
19698
19706
|
TaskCapabilityLevelSchema = external_exports.enum(TASK_CAPABILITY_LEVELS);
|
|
19699
19707
|
TASK_MANAGEMENT_CAPABILITY_LEVELS = ["none", "write"];
|
|
@@ -19716,6 +19724,10 @@ var init_tools = __esm({
|
|
|
19716
19724
|
levelSchema: ProjectMemberCapabilityLevelSchema,
|
|
19717
19725
|
levels: PROJECT_MEMBER_CAPABILITY_LEVELS
|
|
19718
19726
|
});
|
|
19727
|
+
RuntimeCapabilitySchema = attenuatedCapabilitySchema({
|
|
19728
|
+
levelSchema: RuntimeCapabilityLevelSchema,
|
|
19729
|
+
levels: RUNTIME_CAPABILITY_LEVELS
|
|
19730
|
+
});
|
|
19719
19731
|
TaskCapabilitySchema = attenuatedCapabilitySchema({
|
|
19720
19732
|
levelSchema: TaskCapabilityLevelSchema,
|
|
19721
19733
|
levels: TASK_CAPABILITY_LEVELS
|
|
@@ -19735,6 +19747,7 @@ var init_tools = __esm({
|
|
|
19735
19747
|
LocalAutoToolCapabilitiesSchema = external_exports.object({
|
|
19736
19748
|
billing: BillingCapabilitySchema.default("none"),
|
|
19737
19749
|
projectMembers: ProjectMemberCapabilitySchema.default("none"),
|
|
19750
|
+
runtimes: RuntimeCapabilitySchema.default("none"),
|
|
19738
19751
|
tasks: TaskCapabilitySchema.default("none"),
|
|
19739
19752
|
// Project-wide coordination is an explicit session-snapshot grant, not a
|
|
19740
19753
|
// requester-attenuated form of ordinary Task access. Keeping it optional
|
|
@@ -19743,7 +19756,12 @@ var init_tools = __esm({
|
|
|
19743
19756
|
connections: ConnectionCapabilitySchema.optional(),
|
|
19744
19757
|
secrets: SecretCapabilitySchema.optional(),
|
|
19745
19758
|
webhooks: WebhookCapabilitySchema.optional()
|
|
19746
|
-
}).strict().default({
|
|
19759
|
+
}).strict().default({
|
|
19760
|
+
billing: "none",
|
|
19761
|
+
projectMembers: "none",
|
|
19762
|
+
runtimes: "none",
|
|
19763
|
+
tasks: "none"
|
|
19764
|
+
});
|
|
19747
19765
|
SecretReferenceSchema = external_exports.object({
|
|
19748
19766
|
$secret: ResourceNameSchema
|
|
19749
19767
|
});
|
|
@@ -24506,6 +24524,9 @@ var init_session_turns = __esm({
|
|
|
24506
24524
|
acceptedAt: external_exports.string().datetime().nullable(),
|
|
24507
24525
|
startedAt: external_exports.string().datetime().nullable(),
|
|
24508
24526
|
lastProgressAt: external_exports.string().datetime().nullable(),
|
|
24527
|
+
// Database receive time of the last runtime output durably applied to this
|
|
24528
|
+
// turn. Missing on rows read from before the settle clock was introduced.
|
|
24529
|
+
outputSettledAt: external_exports.string().datetime().nullable().default(null),
|
|
24509
24530
|
// Last runtime liveness beat that vouched for this open turn (null before
|
|
24510
24531
|
// the first beat, and always null on runtimes that predate liveness).
|
|
24511
24532
|
// Distinct from lastProgressAt: pipeline liveness, not durable progress.
|
|
@@ -93207,7 +93228,7 @@ var init_package = __esm({
|
|
|
93207
93228
|
"package.json"() {
|
|
93208
93229
|
package_default = {
|
|
93209
93230
|
name: "@autohq/cli",
|
|
93210
|
-
version: "0.1.
|
|
93231
|
+
version: "0.1.614",
|
|
93211
93232
|
license: "SEE LICENSE IN README.md",
|
|
93212
93233
|
publishConfig: {
|
|
93213
93234
|
access: "public"
|
|
@@ -93236,7 +93257,7 @@ var init_package = __esm({
|
|
|
93236
93257
|
typecheck: "tsc --noEmit"
|
|
93237
93258
|
},
|
|
93238
93259
|
dependencies: {
|
|
93239
|
-
"@anthropic-ai/claude-agent-sdk": "^0.3.
|
|
93260
|
+
"@anthropic-ai/claude-agent-sdk": "^0.3.221",
|
|
93240
93261
|
"@inkjs/ui": "^2.0.0",
|
|
93241
93262
|
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
93242
93263
|
"@tanstack/react-query": "^5.100.14",
|
|
@@ -104196,25 +104217,39 @@ var AgentBridgeCodexReasoningEffortSchema = external_exports.enum([
|
|
|
104196
104217
|
"low",
|
|
104197
104218
|
"medium",
|
|
104198
104219
|
"high",
|
|
104199
|
-
"xhigh"
|
|
104220
|
+
"xhigh",
|
|
104221
|
+
"max"
|
|
104200
104222
|
]);
|
|
104201
104223
|
var AgentBridgeClaudeConfigSchema = AgentBridgeHarnessBaseConfigSchema.extend({
|
|
104202
104224
|
model: AgentBridgeModelSelectionSchema.optional(),
|
|
104203
104225
|
reasoningEffort: AgentBridgeClaudeReasoningEffortSchema.optional()
|
|
104204
104226
|
});
|
|
104205
104227
|
var AgentBridgeApprovalsSchema = external_exports.enum(["bypass", "prompt"]);
|
|
104206
|
-
var
|
|
104228
|
+
var AgentBridgeCodexConfigBaseSchema = AgentBridgeHarnessBaseConfigSchema.extend({
|
|
104207
104229
|
model: AgentBridgeModelSelectionSchema.optional(),
|
|
104208
104230
|
reasoningEffort: AgentBridgeCodexReasoningEffortSchema.optional(),
|
|
104209
104231
|
approvals: AgentBridgeApprovalsSchema.optional()
|
|
104210
104232
|
});
|
|
104233
|
+
function validateAgentBridgeCodexReasoningEffort(config2, context) {
|
|
104234
|
+
if (config2.reasoningEffort !== "max" || config2.model?.provider === "openai" && config2.model.id === "gpt-5.6-luna") {
|
|
104235
|
+
return;
|
|
104236
|
+
}
|
|
104237
|
+
context.addIssue({
|
|
104238
|
+
code: "custom",
|
|
104239
|
+
path: ["reasoningEffort"],
|
|
104240
|
+
message: 'codex does not support reasoning effort "max" for the selected model'
|
|
104241
|
+
});
|
|
104242
|
+
}
|
|
104243
|
+
var AgentBridgeCodexConfigSchema = AgentBridgeCodexConfigBaseSchema.superRefine(
|
|
104244
|
+
validateAgentBridgeCodexReasoningEffort
|
|
104245
|
+
);
|
|
104211
104246
|
var AgentBridgeHarnessConfigSchema = external_exports.discriminatedUnion("kind", [
|
|
104212
104247
|
AgentBridgeClaudeConfigSchema.extend({
|
|
104213
104248
|
kind: external_exports.literal("claude-code")
|
|
104214
104249
|
}),
|
|
104215
|
-
|
|
104250
|
+
AgentBridgeCodexConfigBaseSchema.extend({
|
|
104216
104251
|
kind: external_exports.literal("codex")
|
|
104217
|
-
})
|
|
104252
|
+
}).superRefine(validateAgentBridgeCodexReasoningEffort)
|
|
104218
104253
|
]);
|
|
104219
104254
|
var RuntimeBridgeBootstrapPlaintextSchema = external_exports.object({
|
|
104220
104255
|
version: external_exports.literal(1),
|
|
@@ -106441,7 +106476,7 @@ var AskUserServer = class {
|
|
|
106441
106476
|
const server = this.createMcpServer();
|
|
106442
106477
|
const transport = new StreamableHTTPServerTransport({
|
|
106443
106478
|
sessionIdGenerator: void 0,
|
|
106444
|
-
// Codex 0.
|
|
106479
|
+
// Codex 0.146.0 requires ordinary initialize/list responses as JSON. A
|
|
106445
106480
|
// parked tool call keeps SSE enabled so progress notifications can flow
|
|
106446
106481
|
// over the held response without extending the hard client deadline.
|
|
106447
106482
|
enableJsonResponse: body.method !== "tools/call"
|
|
@@ -111178,6 +111213,9 @@ var ClaudeCodeCommandHandler = class {
|
|
|
111178
111213
|
}
|
|
111179
111214
|
async emitUsageTurn(turnId) {
|
|
111180
111215
|
const activeContext = this.context;
|
|
111216
|
+
if (!activeContext && turnId === null) {
|
|
111217
|
+
return;
|
|
111218
|
+
}
|
|
111181
111219
|
if (!activeContext) {
|
|
111182
111220
|
throw new Error("Cannot publish usage turn without bridge context");
|
|
111183
111221
|
}
|
|
@@ -112239,9 +112277,10 @@ var CODEX_EXECUTABLE_PATH = "codex";
|
|
|
112239
112277
|
var CODEX_DEFAULT_MODEL = "gpt-5.6-sol";
|
|
112240
112278
|
var CODEX_HTTP_PROVIDER_ID = "openai-responses-http";
|
|
112241
112279
|
var CODEX_OPENROUTER_PROVIDER_ID = "openrouter-responses-http";
|
|
112242
|
-
var CODEX_REASONING_SUMMARY = "
|
|
112280
|
+
var CODEX_REASONING_SUMMARY = "detailed";
|
|
112243
112281
|
var CODEX_REASONING_SUMMARY_MODEL_IDS = /* @__PURE__ */ new Set([
|
|
112244
112282
|
CODEX_DEFAULT_MODEL,
|
|
112283
|
+
"gpt-5.6-luna",
|
|
112245
112284
|
"gpt-5.5",
|
|
112246
112285
|
"gpt-5.3-codex"
|
|
112247
112286
|
]);
|
|
@@ -112643,7 +112682,7 @@ function runStep(input, step, action) {
|
|
|
112643
112682
|
`agent_bridge_codex_edit_capability status=failed step=${step} error=${detail}`
|
|
112644
112683
|
);
|
|
112645
112684
|
throw new Error(
|
|
112646
|
-
`Codex edit capability unavailable at ${step}: ${detail}. Codex 0.
|
|
112685
|
+
`Codex edit capability unavailable at ${step}: ${detail}. Codex 0.146.0's Auto custom-provider path declares no apply_patch tool; without the codex-path alias, exec invocations the interceptor does not recognize fail with command-not-found (codex-runtime-tool-loss-diagnostics).`
|
|
112647
112686
|
);
|
|
112648
112687
|
}
|
|
112649
112688
|
}
|
|
@@ -113682,8 +113721,13 @@ var CodexCommandHandler = class {
|
|
|
113682
113721
|
delivery.commandId,
|
|
113683
113722
|
message
|
|
113684
113723
|
);
|
|
113724
|
+
if (requestedDeferredDelivery(delivery)) {
|
|
113725
|
+
this.input.writeOutput?.(
|
|
113726
|
+
"agent_bridge_codex_deferred_mapped_to_interrupt"
|
|
113727
|
+
);
|
|
113728
|
+
}
|
|
113685
113729
|
await this.ensureSession().sendMessage(message, {
|
|
113686
|
-
mode:
|
|
113730
|
+
mode: "interrupt",
|
|
113687
113731
|
commandId: delivery.commandId
|
|
113688
113732
|
});
|
|
113689
113733
|
} catch (error51) {
|
|
@@ -113836,6 +113880,9 @@ var CodexCommandHandler = class {
|
|
|
113836
113880
|
}
|
|
113837
113881
|
async emitUsageTurn(turnId) {
|
|
113838
113882
|
const activeContext = this.context;
|
|
113883
|
+
if (!activeContext && turnId === null) {
|
|
113884
|
+
return;
|
|
113885
|
+
}
|
|
113839
113886
|
if (!activeContext) {
|
|
113840
113887
|
throw new Error("Cannot publish usage turn without bridge context");
|
|
113841
113888
|
}
|
|
@@ -113896,7 +113943,13 @@ var CodexCommandHandler = class {
|
|
|
113896
113943
|
if (sameCodexConfigSelection(this.codexConfig, next)) {
|
|
113897
113944
|
return;
|
|
113898
113945
|
}
|
|
113899
|
-
|
|
113946
|
+
const parsed = AgentBridgeCodexConfigSchema.safeParse(next);
|
|
113947
|
+
if (!parsed.success) {
|
|
113948
|
+
throw new Error(
|
|
113949
|
+
parsed.error.issues[0]?.message ?? "Invalid Codex model selection"
|
|
113950
|
+
);
|
|
113951
|
+
}
|
|
113952
|
+
this.codexConfig = parsed.data;
|
|
113900
113953
|
this.skipResumeForNextSession = true;
|
|
113901
113954
|
this.session?.close();
|
|
113902
113955
|
this.session = null;
|
|
@@ -113964,15 +114017,9 @@ function deliverySelection2(delivery) {
|
|
|
113964
114017
|
function sameCodexConfigSelection(current, next) {
|
|
113965
114018
|
return current.model?.provider === next.model?.provider && current.model?.id === next.model?.id && current.reasoningEffort === next.reasoningEffort;
|
|
113966
114019
|
}
|
|
113967
|
-
function
|
|
114020
|
+
function requestedDeferredDelivery(delivery) {
|
|
113968
114021
|
const payload = delivery.payload;
|
|
113969
|
-
|
|
113970
|
-
const parsed = MessageDeliveryModeSchema.safeParse(payload.deliveryMode);
|
|
113971
|
-
if (parsed.success) {
|
|
113972
|
-
return parsed.data;
|
|
113973
|
-
}
|
|
113974
|
-
}
|
|
113975
|
-
return "interrupt";
|
|
114022
|
+
return typeof payload === "object" && payload !== null && "deliveryMode" in payload && payload.deliveryMode === "deferred";
|
|
113976
114023
|
}
|
|
113977
114024
|
function errorMessage4(error51) {
|
|
113978
114025
|
return error51 instanceof Error ? error51.message : String(error51);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@autohq/cli",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.614",
|
|
4
4
|
"license": "SEE LICENSE IN README.md",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"typecheck": "tsc --noEmit"
|
|
30
30
|
},
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@anthropic-ai/claude-agent-sdk": "^0.3.
|
|
32
|
+
"@anthropic-ai/claude-agent-sdk": "^0.3.221",
|
|
33
33
|
"@inkjs/ui": "^2.0.0",
|
|
34
34
|
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
35
35
|
"@tanstack/react-query": "^5.100.14",
|