@tryarcanist/cli 0.1.145 → 0.1.147

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.
Files changed (2) hide show
  1. package/dist/index.js +72 -13
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -545,6 +545,11 @@ var AGENT_RUNTIME_BACKENDS = [
545
545
  function isAgentRuntimeBackend(value) {
546
546
  return AGENT_RUNTIME_BACKENDS.includes(value);
547
547
  }
548
+ var HARNESS_KIND_BY_BACKEND = {
549
+ [CODEX_AGENT_RUNTIME_BACKEND]: "codex-session",
550
+ [CLAUDE_CODE_AGENT_RUNTIME_BACKEND]: "claude-session",
551
+ [OPENCODE_AGENT_RUNTIME_BACKEND]: "codex-session"
552
+ };
548
553
 
549
554
  // ../../shared/utils/type-guards.ts
550
555
  function isRecord(value) {
@@ -600,7 +605,18 @@ var MODEL_REGISTRY = [
600
605
  contextWindow: 1e6,
601
606
  // Default codex model after the gpt-5.5 downgrade; carries gpt-5.5's prior
602
607
  // "medium" default so default sessions keep the same reasoning effort.
603
- reasoning: { efforts: ["none", "low", "medium", "high", "xhigh"], default: "medium" }
608
+ reasoning: { efforts: ["none", "low", "medium", "high", "xhigh"], default: "medium" },
609
+ pricing: {
610
+ inputPerMillion: 2.5,
611
+ outputPerMillion: 15,
612
+ cacheReadPerMillion: 0.25,
613
+ longContext: {
614
+ thresholdTokens: 272e3,
615
+ inputPerMillion: 5,
616
+ outputPerMillion: 22.5,
617
+ cacheReadPerMillion: 0.5
618
+ }
619
+ }
604
620
  },
605
621
  {
606
622
  id: OpenAIModel.GPT55,
@@ -608,7 +624,18 @@ var MODEL_REGISTRY = [
608
624
  provider: "openai",
609
625
  backends: [CODEX_AGENT_RUNTIME_BACKEND],
610
626
  contextWindow: 1e6,
611
- reasoning: { efforts: ["none", "low", "medium", "high", "xhigh"], default: "medium" }
627
+ reasoning: { efforts: ["none", "low", "medium", "high", "xhigh"], default: "medium" },
628
+ pricing: {
629
+ inputPerMillion: 5,
630
+ outputPerMillion: 30,
631
+ cacheReadPerMillion: 0.5,
632
+ longContext: {
633
+ thresholdTokens: 272e3,
634
+ inputPerMillion: 10,
635
+ outputPerMillion: 45,
636
+ cacheReadPerMillion: 1
637
+ }
638
+ }
612
639
  },
613
640
  {
614
641
  id: OpenAIModel.GPT54Mini,
@@ -616,7 +643,17 @@ var MODEL_REGISTRY = [
616
643
  provider: "openai",
617
644
  backends: [CODEX_AGENT_RUNTIME_BACKEND],
618
645
  contextWindow: 4e5,
619
- reasoning: { efforts: ["none", "low", "medium", "high", "xhigh"], default: void 0 }
646
+ reasoning: { efforts: ["none", "low", "medium", "high", "xhigh"], default: void 0 },
647
+ pricing: {
648
+ inputPerMillion: 0.75,
649
+ outputPerMillion: 4.5,
650
+ cacheReadPerMillion: 0.075,
651
+ // Flex bills at Batch rates: a flat 50% off standard across input,
652
+ // cached input, and output (verified against the OpenAI pricing page,
653
+ // June 2026). Bridge cost estimates deliberately strip this gateway-only
654
+ // axis when deriving MODEL_PRICING.
655
+ flex: { inputPerMillion: 0.375, outputPerMillion: 2.25, cacheReadPerMillion: 0.0375 }
656
+ }
620
657
  },
621
658
  {
622
659
  id: OpenAIModel.GPT54Nano,
@@ -624,7 +661,8 @@ var MODEL_REGISTRY = [
624
661
  provider: "openai",
625
662
  backends: [CODEX_AGENT_RUNTIME_BACKEND],
626
663
  contextWindow: 4e5,
627
- reasoning: { efforts: ["none", "low", "medium", "high", "xhigh"], default: void 0 }
664
+ reasoning: { efforts: ["none", "low", "medium", "high", "xhigh"], default: void 0 },
665
+ pricing: { inputPerMillion: 0.2, outputPerMillion: 1.25, cacheReadPerMillion: 0.02 }
628
666
  },
629
667
  {
630
668
  id: OpenAIModel.GPT53Codex,
@@ -632,7 +670,8 @@ var MODEL_REGISTRY = [
632
670
  provider: "openai",
633
671
  backends: [CODEX_AGENT_RUNTIME_BACKEND],
634
672
  contextWindow: 4e5,
635
- reasoning: { efforts: ["low", "medium", "high", "xhigh"], default: "high" }
673
+ reasoning: { efforts: ["low", "medium", "high", "xhigh"], default: "high" },
674
+ pricing: { inputPerMillion: 1.75, outputPerMillion: 14, cacheReadPerMillion: 0.175 }
636
675
  },
637
676
  {
638
677
  id: OpenAIModel.GPT52,
@@ -640,7 +679,8 @@ var MODEL_REGISTRY = [
640
679
  provider: "openai",
641
680
  backends: [CODEX_AGENT_RUNTIME_BACKEND],
642
681
  contextWindow: 4e5,
643
- reasoning: { efforts: ["none", "low", "medium", "high", "xhigh"], default: void 0 }
682
+ reasoning: { efforts: ["none", "low", "medium", "high", "xhigh"], default: void 0 },
683
+ pricing: { inputPerMillion: 1.75, outputPerMillion: 14, cacheReadPerMillion: 0.175 }
644
684
  },
645
685
  {
646
686
  id: OpenAIModel.GPT52ChatLatest,
@@ -648,7 +688,8 @@ var MODEL_REGISTRY = [
648
688
  provider: "openai",
649
689
  backends: [CODEX_AGENT_RUNTIME_BACKEND],
650
690
  contextWindow: 128e3,
651
- reasoning: { efforts: ["none", "low", "medium", "high", "xhigh"], default: void 0 }
691
+ reasoning: { efforts: ["none", "low", "medium", "high", "xhigh"], default: void 0 },
692
+ pricing: { inputPerMillion: 1.75, outputPerMillion: 14, cacheReadPerMillion: 0.175 }
652
693
  },
653
694
  {
654
695
  id: OpenAIModel.GPT52Codex,
@@ -656,23 +697,37 @@ var MODEL_REGISTRY = [
656
697
  provider: "openai",
657
698
  backends: [CODEX_AGENT_RUNTIME_BACKEND],
658
699
  contextWindow: 4e5,
659
- reasoning: { efforts: ["low", "medium", "high", "xhigh"], default: "high" }
700
+ reasoning: { efforts: ["low", "medium", "high", "xhigh"], default: "high" },
701
+ pricing: { inputPerMillion: 1.75, outputPerMillion: 14, cacheReadPerMillion: 0.175 }
660
702
  },
661
703
  {
662
704
  id: AnthropicModel.Opus48,
663
705
  name: "Claude Opus 4.8",
664
706
  provider: "anthropic",
665
707
  backends: [CLAUDE_CODE_AGENT_RUNTIME_BACKEND],
666
- contextWindow: 1e6
667
- // Claude Code drives thinking depth itself; the bridge does not pass a
668
- // reasoning-effort flag to `claude -p`, so no reasoning config is exposed.
708
+ contextWindow: 1e6,
709
+ // Verified 2026-06-29 against Claude Code model config docs and SDK
710
+ // EffortLevel: Opus 4.8 supports low/medium/high/xhigh/max. "none" maps to
711
+ // omitting SDK Options.effort so Claude keeps its adaptive default.
712
+ reasoning: { efforts: ["none", "low", "medium", "high", "xhigh", "max"], default: "high" },
713
+ // Bridge cost-ESTIMATE only; NOT authoritative for control-plane Anthropic
714
+ // billing. `anthropic/cost.ts` ANTHROPIC_MESSAGES_MODEL_PRICING owns that
715
+ // and is intentionally ~3x divergent until Phase 5.
716
+ pricing: { inputPerMillion: 5, outputPerMillion: 25, cacheReadPerMillion: 0.5, cacheWritePerMillion: 6.25 }
669
717
  },
670
718
  {
671
719
  id: AnthropicModel.Sonnet46,
672
720
  name: "Claude Sonnet 4.6",
673
721
  provider: "anthropic",
674
722
  backends: [CLAUDE_CODE_AGENT_RUNTIME_BACKEND],
675
- contextWindow: 1e6
723
+ contextWindow: 1e6,
724
+ // Claude Code model config docs: Sonnet 4.6 supports low/medium/high/max;
725
+ // xhigh falls back to high upstream, so keep it invalid in Arcanist.
726
+ reasoning: { efforts: ["none", "low", "medium", "high", "max"], default: "high" },
727
+ // Bridge cost-ESTIMATE only; NOT authoritative for control-plane Anthropic
728
+ // billing. `anthropic/cost.ts` ANTHROPIC_MESSAGES_MODEL_PRICING owns that
729
+ // and is intentionally ~3x divergent until Phase 5.
730
+ pricing: { inputPerMillion: 3, outputPerMillion: 15, cacheReadPerMillion: 0.3, cacheWritePerMillion: 3.75 }
676
731
  },
677
732
  {
678
733
  id: BasetenModel.GptOss120B,
@@ -682,7 +737,11 @@ var MODEL_REGISTRY = [
682
737
  contextWindow: 128e3,
683
738
  // Verified 2026-06-26 against GET https://inference.baseten.co/v1/models:
684
739
  // the served id is namespaced `openai/gpt-oss-120b`, not bare `gpt-oss-120b`.
685
- providerModelId: "openai/gpt-oss-120b"
740
+ providerModelId: "openai/gpt-oss-120b",
741
+ // Internal cold-spawn bridge ESTIMATE, NOT authoritative Baseten API
742
+ // billing. `baseten/cost.ts` BASETEN_MODEL_API_PRICING (wire-id keyed)
743
+ // owns real billing.
744
+ pricing: { inputPerMillion: 0, outputPerMillion: 0 }
686
745
  }
687
746
  ];
688
747
  var MODEL_PROVIDER_NAMES = {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tryarcanist/cli",
3
- "version": "0.1.145",
3
+ "version": "0.1.147",
4
4
  "description": "CLI for Arcanist — create and manage coding agent sessions",
5
5
  "type": "module",
6
6
  "bin": {