@autohq/cli 0.1.219 → 0.1.221

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.
@@ -23319,7 +23319,7 @@ Object.assign(lookup, {
23319
23319
  // package.json
23320
23320
  var package_default = {
23321
23321
  name: "@autohq/cli",
23322
- version: "0.1.219",
23322
+ version: "0.1.221",
23323
23323
  license: "SEE LICENSE IN README.md",
23324
23324
  publishConfig: {
23325
23325
  access: "public"
@@ -24642,6 +24642,83 @@ function userContentProjections(message) {
24642
24642
  return projections;
24643
24643
  }
24644
24644
 
24645
+ // ../../packages/schemas/src/codex.ts
24646
+ var CodexRequestIdSchema = external_exports.union([external_exports.string(), external_exports.number()]);
24647
+ var CodexTurnStatusSchema = external_exports.enum([
24648
+ "completed",
24649
+ "interrupted",
24650
+ "failed",
24651
+ "inProgress"
24652
+ ]);
24653
+ var CodexUserMessageItemSchema = external_exports.object({ type: external_exports.literal("userMessage"), id: external_exports.string() }).passthrough();
24654
+ var CodexAgentMessageItemSchema = external_exports.object({
24655
+ type: external_exports.literal("agentMessage"),
24656
+ id: external_exports.string(),
24657
+ text: external_exports.string().default("")
24658
+ }).passthrough();
24659
+ var CodexReasoningItemSchema = external_exports.object({
24660
+ type: external_exports.literal("reasoning"),
24661
+ id: external_exports.string(),
24662
+ summary: external_exports.array(external_exports.string()).default([])
24663
+ }).passthrough();
24664
+ var CodexCommandExecutionItemSchema = external_exports.object({
24665
+ type: external_exports.literal("commandExecution"),
24666
+ id: external_exports.string(),
24667
+ command: external_exports.string().default(""),
24668
+ cwd: external_exports.string().optional(),
24669
+ status: external_exports.string().optional(),
24670
+ aggregatedOutput: external_exports.string().nullish(),
24671
+ exitCode: external_exports.number().nullish()
24672
+ }).passthrough();
24673
+ var CodexFileChangeItemSchema = external_exports.object({
24674
+ type: external_exports.literal("fileChange"),
24675
+ id: external_exports.string(),
24676
+ status: external_exports.string().optional(),
24677
+ changes: external_exports.array(external_exports.unknown()).default([])
24678
+ }).passthrough();
24679
+ var CodexMcpToolCallItemSchema = external_exports.object({
24680
+ type: external_exports.literal("mcpToolCall"),
24681
+ id: external_exports.string(),
24682
+ server: external_exports.string().default(""),
24683
+ tool: external_exports.string().default(""),
24684
+ status: external_exports.string().optional(),
24685
+ arguments: external_exports.unknown().optional(),
24686
+ result: external_exports.unknown().nullish(),
24687
+ error: external_exports.object({ message: external_exports.string() }).passthrough().nullish()
24688
+ }).passthrough();
24689
+ var CodexItemSchema = external_exports.discriminatedUnion("type", [
24690
+ CodexUserMessageItemSchema,
24691
+ CodexAgentMessageItemSchema,
24692
+ CodexReasoningItemSchema,
24693
+ CodexCommandExecutionItemSchema,
24694
+ CodexFileChangeItemSchema,
24695
+ CodexMcpToolCallItemSchema
24696
+ ]);
24697
+ var OptionalCodexItemSchema = external_exports.unknown().transform((value2) => {
24698
+ const parsed = CodexItemSchema.safeParse(value2);
24699
+ return parsed.success ? parsed.data : null;
24700
+ });
24701
+ var CodexItemEnvelopeSchema = external_exports.object({
24702
+ threadId: external_exports.string(),
24703
+ turnId: external_exports.string(),
24704
+ item: OptionalCodexItemSchema
24705
+ }).passthrough();
24706
+ var CodexTurnEnvelopeSchema = external_exports.object({
24707
+ threadId: external_exports.string(),
24708
+ turn: external_exports.object({
24709
+ id: external_exports.string(),
24710
+ status: CodexTurnStatusSchema,
24711
+ error: external_exports.object({ message: external_exports.string() }).passthrough().nullish()
24712
+ }).passthrough()
24713
+ }).passthrough();
24714
+ var CodexFrameSchema = external_exports.object({
24715
+ id: CodexRequestIdSchema.optional(),
24716
+ method: external_exports.string().optional(),
24717
+ params: external_exports.unknown().optional(),
24718
+ result: external_exports.unknown().optional(),
24719
+ error: external_exports.object({ message: external_exports.string().optional() }).passthrough().optional()
24720
+ }).passthrough();
24721
+
24645
24722
  // ../../packages/schemas/src/resources.ts
24646
24723
  var ResourceNameSchema = external_exports.string().trim().min(1).max(128).regex(/^[A-Za-z0-9_.-]+$/);
24647
24724
  var StringMapSchema = external_exports.record(external_exports.string().min(1), external_exports.string());
@@ -26125,6 +26202,36 @@ var McpJsonRpcMessageSchema = external_exports.object({
26125
26202
  }).passthrough();
26126
26203
  var McpPostBodySchema = external_exports.union([McpJsonRpcMessageSchema, external_exports.array(McpJsonRpcMessageSchema)]).transform((body) => Array.isArray(body) ? body : [body]);
26127
26204
 
26205
+ // ../../packages/schemas/src/pricing.ts
26206
+ var RATE_CARD_2026_06_23 = {
26207
+ version: "2026-06-23",
26208
+ effectiveAt: "2026-06-23T00:00:00.000Z",
26209
+ models: {
26210
+ "claude-opus-4-8": opusTier(),
26211
+ "claude-opus-4-7": opusTier(),
26212
+ "claude-opus-4-6": opusTier(),
26213
+ "claude-sonnet-4-6": tier(3, 15),
26214
+ "claude-haiku-4-5": tier(1, 5),
26215
+ "claude-haiku-4-5-20251001": tier(1, 5),
26216
+ "claude-fable-5": tier(10, 50)
26217
+ }
26218
+ };
26219
+ var PRICING_RATE_CARDS = {
26220
+ [RATE_CARD_2026_06_23.version]: RATE_CARD_2026_06_23
26221
+ };
26222
+ var CURRENT_PRICING_VERSION = RATE_CARD_2026_06_23.version;
26223
+ function tier(inputUsdPerMtok, outputUsdPerMtok) {
26224
+ return {
26225
+ inputUsdPerMtok,
26226
+ outputUsdPerMtok,
26227
+ cacheWrite5mUsdPerMtok: inputUsdPerMtok * 1.25,
26228
+ cacheReadUsdPerMtok: inputUsdPerMtok * 0.1
26229
+ };
26230
+ }
26231
+ function opusTier() {
26232
+ return tier(5, 25);
26233
+ }
26234
+
26128
26235
  // ../../packages/schemas/src/project-service-accounts.ts
26129
26236
  var ProjectServiceAccountSchema = external_exports.object({
26130
26237
  id: ServiceAccountIdSchema,
@@ -27155,6 +27262,40 @@ var ResourceReconciliationScopeSchema = external_exports.object({
27155
27262
  projectId: external_exports.string().trim().min(1).nullable()
27156
27263
  }).strict();
27157
27264
 
27265
+ // ../../packages/schemas/src/usage.ts
27266
+ var UsageHarnessSchema = external_exports.enum(AGENT_HARNESSES);
27267
+ var NonNegativeTokenCountSchema = external_exports.number().int().nonnegative();
27268
+ var NonNegativeUsdSchema = external_exports.number().nonnegative();
27269
+ var UsageEventSchema = external_exports.object({
27270
+ // Tenant + lineage attribution. projectId is nullable because a resource can
27271
+ // belong directly to an organization with no project.
27272
+ organizationId: OrganizationIdSchema,
27273
+ projectId: ProjectIdSchema.nullable(),
27274
+ sessionId: SessionIdSchema2,
27275
+ agentResourceId: external_exports.string().trim().min(1),
27276
+ harness: UsageHarnessSchema,
27277
+ // The concrete model id the call billed against (e.g. "claude-opus-4-8"),
27278
+ // taken from the response rather than any selection layer — a single run can
27279
+ // touch multiple models, so this is per-call, never per-run.
27280
+ model: external_exports.string().trim().min(1),
27281
+ inputTokens: NonNegativeTokenCountSchema,
27282
+ outputTokens: NonNegativeTokenCountSchema,
27283
+ cacheCreationTokens: NonNegativeTokenCountSchema,
27284
+ cacheReadTokens: NonNegativeTokenCountSchema,
27285
+ // The provider's own cost when it reports one, kept only for reconciliation.
27286
+ // Nullable/absent because it can be 0 or missing — never the billing source.
27287
+ providerCostUsd: NonNegativeUsdSchema.nullable(),
27288
+ // Platform-derived cost and the rate-card version it was derived under, so a
27289
+ // later rate-card change never silently rewrites historical cost.
27290
+ derivedCostUsd: NonNegativeUsdSchema,
27291
+ pricingVersion: external_exports.string().trim().min(1),
27292
+ occurredAt: external_exports.string().datetime()
27293
+ });
27294
+ var UsageEventRecordSchema = UsageEventSchema.extend({
27295
+ id: external_exports.string().trim().min(1),
27296
+ createdAt: external_exports.string().datetime()
27297
+ });
27298
+
27158
27299
  // src/commands/agent-bridge/harness/output-buffer.ts
27159
27300
  var AgentBridgeOutputBuffer = class {
27160
27301
  constructor(input) {
package/dist/index.js CHANGED
@@ -16197,6 +16197,91 @@ var init_claude_code = __esm({
16197
16197
  }
16198
16198
  });
16199
16199
 
16200
+ // ../../packages/schemas/src/codex.ts
16201
+ var CodexRequestIdSchema, CodexTurnStatusSchema, CodexUserMessageItemSchema, CodexAgentMessageItemSchema, CodexReasoningItemSchema, CodexCommandExecutionItemSchema, CodexFileChangeItemSchema, CodexMcpToolCallItemSchema, CodexItemSchema, OptionalCodexItemSchema, CodexItemEnvelopeSchema, CodexTurnEnvelopeSchema, CodexFrameSchema;
16202
+ var init_codex = __esm({
16203
+ "../../packages/schemas/src/codex.ts"() {
16204
+ "use strict";
16205
+ init_zod();
16206
+ init_primitives();
16207
+ CodexRequestIdSchema = external_exports.union([external_exports.string(), external_exports.number()]);
16208
+ CodexTurnStatusSchema = external_exports.enum([
16209
+ "completed",
16210
+ "interrupted",
16211
+ "failed",
16212
+ "inProgress"
16213
+ ]);
16214
+ CodexUserMessageItemSchema = external_exports.object({ type: external_exports.literal("userMessage"), id: external_exports.string() }).passthrough();
16215
+ CodexAgentMessageItemSchema = external_exports.object({
16216
+ type: external_exports.literal("agentMessage"),
16217
+ id: external_exports.string(),
16218
+ text: external_exports.string().default("")
16219
+ }).passthrough();
16220
+ CodexReasoningItemSchema = external_exports.object({
16221
+ type: external_exports.literal("reasoning"),
16222
+ id: external_exports.string(),
16223
+ summary: external_exports.array(external_exports.string()).default([])
16224
+ }).passthrough();
16225
+ CodexCommandExecutionItemSchema = external_exports.object({
16226
+ type: external_exports.literal("commandExecution"),
16227
+ id: external_exports.string(),
16228
+ command: external_exports.string().default(""),
16229
+ cwd: external_exports.string().optional(),
16230
+ status: external_exports.string().optional(),
16231
+ aggregatedOutput: external_exports.string().nullish(),
16232
+ exitCode: external_exports.number().nullish()
16233
+ }).passthrough();
16234
+ CodexFileChangeItemSchema = external_exports.object({
16235
+ type: external_exports.literal("fileChange"),
16236
+ id: external_exports.string(),
16237
+ status: external_exports.string().optional(),
16238
+ changes: external_exports.array(external_exports.unknown()).default([])
16239
+ }).passthrough();
16240
+ CodexMcpToolCallItemSchema = external_exports.object({
16241
+ type: external_exports.literal("mcpToolCall"),
16242
+ id: external_exports.string(),
16243
+ server: external_exports.string().default(""),
16244
+ tool: external_exports.string().default(""),
16245
+ status: external_exports.string().optional(),
16246
+ arguments: external_exports.unknown().optional(),
16247
+ result: external_exports.unknown().nullish(),
16248
+ error: external_exports.object({ message: external_exports.string() }).passthrough().nullish()
16249
+ }).passthrough();
16250
+ CodexItemSchema = external_exports.discriminatedUnion("type", [
16251
+ CodexUserMessageItemSchema,
16252
+ CodexAgentMessageItemSchema,
16253
+ CodexReasoningItemSchema,
16254
+ CodexCommandExecutionItemSchema,
16255
+ CodexFileChangeItemSchema,
16256
+ CodexMcpToolCallItemSchema
16257
+ ]);
16258
+ OptionalCodexItemSchema = external_exports.unknown().transform((value) => {
16259
+ const parsed = CodexItemSchema.safeParse(value);
16260
+ return parsed.success ? parsed.data : null;
16261
+ });
16262
+ CodexItemEnvelopeSchema = external_exports.object({
16263
+ threadId: external_exports.string(),
16264
+ turnId: external_exports.string(),
16265
+ item: OptionalCodexItemSchema
16266
+ }).passthrough();
16267
+ CodexTurnEnvelopeSchema = external_exports.object({
16268
+ threadId: external_exports.string(),
16269
+ turn: external_exports.object({
16270
+ id: external_exports.string(),
16271
+ status: CodexTurnStatusSchema,
16272
+ error: external_exports.object({ message: external_exports.string() }).passthrough().nullish()
16273
+ }).passthrough()
16274
+ }).passthrough();
16275
+ CodexFrameSchema = external_exports.object({
16276
+ id: CodexRequestIdSchema.optional(),
16277
+ method: external_exports.string().optional(),
16278
+ params: external_exports.unknown().optional(),
16279
+ result: external_exports.unknown().optional(),
16280
+ error: external_exports.object({ message: external_exports.string().optional() }).passthrough().optional()
16281
+ }).passthrough();
16282
+ }
16283
+ });
16284
+
16200
16285
  // ../../packages/schemas/src/conversation-reducer.ts
16201
16286
  function reduceConversationRealtimeEvent(entries, event) {
16202
16287
  if (event.type === "conversation.delta") {
@@ -17935,6 +18020,42 @@ var init_mcp = __esm({
17935
18020
  }
17936
18021
  });
17937
18022
 
18023
+ // ../../packages/schemas/src/pricing.ts
18024
+ function tier(inputUsdPerMtok, outputUsdPerMtok) {
18025
+ return {
18026
+ inputUsdPerMtok,
18027
+ outputUsdPerMtok,
18028
+ cacheWrite5mUsdPerMtok: inputUsdPerMtok * 1.25,
18029
+ cacheReadUsdPerMtok: inputUsdPerMtok * 0.1
18030
+ };
18031
+ }
18032
+ function opusTier() {
18033
+ return tier(5, 25);
18034
+ }
18035
+ var RATE_CARD_2026_06_23, PRICING_RATE_CARDS, CURRENT_PRICING_VERSION;
18036
+ var init_pricing = __esm({
18037
+ "../../packages/schemas/src/pricing.ts"() {
18038
+ "use strict";
18039
+ RATE_CARD_2026_06_23 = {
18040
+ version: "2026-06-23",
18041
+ effectiveAt: "2026-06-23T00:00:00.000Z",
18042
+ models: {
18043
+ "claude-opus-4-8": opusTier(),
18044
+ "claude-opus-4-7": opusTier(),
18045
+ "claude-opus-4-6": opusTier(),
18046
+ "claude-sonnet-4-6": tier(3, 15),
18047
+ "claude-haiku-4-5": tier(1, 5),
18048
+ "claude-haiku-4-5-20251001": tier(1, 5),
18049
+ "claude-fable-5": tier(10, 50)
18050
+ }
18051
+ };
18052
+ PRICING_RATE_CARDS = {
18053
+ [RATE_CARD_2026_06_23.version]: RATE_CARD_2026_06_23
18054
+ };
18055
+ CURRENT_PRICING_VERSION = RATE_CARD_2026_06_23.version;
18056
+ }
18057
+ });
18058
+
17938
18059
  // ../../packages/schemas/src/project-service-accounts.ts
17939
18060
  var ProjectServiceAccountSchema, ProjectServiceAccountCreateRequestSchema, ProjectServiceAccountUpdateRequestSchema, ProjectServiceAccountTokenResponseSchema, ProjectServiceAccountUpdateResponseSchema, ProjectServiceAccountRemoveResponseSchema, ProjectServiceAccountListResponseSchema;
17940
18061
  var init_project_service_accounts = __esm({
@@ -19105,6 +19226,49 @@ var init_temporal = __esm({
19105
19226
  }
19106
19227
  });
19107
19228
 
19229
+ // ../../packages/schemas/src/usage.ts
19230
+ var UsageHarnessSchema, NonNegativeTokenCountSchema, NonNegativeUsdSchema, UsageEventSchema, UsageEventRecordSchema;
19231
+ var init_usage = __esm({
19232
+ "../../packages/schemas/src/usage.ts"() {
19233
+ "use strict";
19234
+ init_zod();
19235
+ init_agents();
19236
+ init_ids();
19237
+ UsageHarnessSchema = external_exports.enum(AGENT_HARNESSES);
19238
+ NonNegativeTokenCountSchema = external_exports.number().int().nonnegative();
19239
+ NonNegativeUsdSchema = external_exports.number().nonnegative();
19240
+ UsageEventSchema = external_exports.object({
19241
+ // Tenant + lineage attribution. projectId is nullable because a resource can
19242
+ // belong directly to an organization with no project.
19243
+ organizationId: OrganizationIdSchema,
19244
+ projectId: ProjectIdSchema.nullable(),
19245
+ sessionId: SessionIdSchema,
19246
+ agentResourceId: external_exports.string().trim().min(1),
19247
+ harness: UsageHarnessSchema,
19248
+ // The concrete model id the call billed against (e.g. "claude-opus-4-8"),
19249
+ // taken from the response rather than any selection layer — a single run can
19250
+ // touch multiple models, so this is per-call, never per-run.
19251
+ model: external_exports.string().trim().min(1),
19252
+ inputTokens: NonNegativeTokenCountSchema,
19253
+ outputTokens: NonNegativeTokenCountSchema,
19254
+ cacheCreationTokens: NonNegativeTokenCountSchema,
19255
+ cacheReadTokens: NonNegativeTokenCountSchema,
19256
+ // The provider's own cost when it reports one, kept only for reconciliation.
19257
+ // Nullable/absent because it can be 0 or missing — never the billing source.
19258
+ providerCostUsd: NonNegativeUsdSchema.nullable(),
19259
+ // Platform-derived cost and the rate-card version it was derived under, so a
19260
+ // later rate-card change never silently rewrites historical cost.
19261
+ derivedCostUsd: NonNegativeUsdSchema,
19262
+ pricingVersion: external_exports.string().trim().min(1),
19263
+ occurredAt: external_exports.string().datetime()
19264
+ });
19265
+ UsageEventRecordSchema = UsageEventSchema.extend({
19266
+ id: external_exports.string().trim().min(1),
19267
+ createdAt: external_exports.string().datetime()
19268
+ });
19269
+ }
19270
+ });
19271
+
19108
19272
  // ../../packages/schemas/src/index.ts
19109
19273
  var init_src = __esm({
19110
19274
  "../../packages/schemas/src/index.ts"() {
@@ -19113,6 +19277,7 @@ var init_src = __esm({
19113
19277
  init_auth();
19114
19278
  init_chat();
19115
19279
  init_claude_code();
19280
+ init_codex();
19116
19281
  init_conversation();
19117
19282
  init_conversation_reducer();
19118
19283
  init_connections();
@@ -19124,6 +19289,7 @@ var init_src = __esm({
19124
19289
  init_environments();
19125
19290
  init_mcp();
19126
19291
  init_mounts();
19292
+ init_pricing();
19127
19293
  init_provider_grants();
19128
19294
  init_project_service_accounts();
19129
19295
  init_project_resources();
@@ -19145,6 +19311,7 @@ var init_src = __esm({
19145
19311
  init_temporal();
19146
19312
  init_tools();
19147
19313
  init_trigger_router();
19314
+ init_usage();
19148
19315
  }
19149
19316
  });
19150
19317
 
@@ -21829,7 +21996,7 @@ var init_package = __esm({
21829
21996
  "package.json"() {
21830
21997
  package_default = {
21831
21998
  name: "@autohq/cli",
21832
- version: "0.1.219",
21999
+ version: "0.1.221",
21833
22000
  license: "SEE LICENSE IN README.md",
21834
22001
  publishConfig: {
21835
22002
  access: "public"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@autohq/cli",
3
- "version": "0.1.219",
3
+ "version": "0.1.221",
4
4
  "license": "SEE LICENSE IN README.md",
5
5
  "publishConfig": {
6
6
  "access": "public"