Balancing the Anvil

This page lists the models on the anvil, the CLI that launches each, the effort each targets, and what the plans cost. These are the models on the anvil, the frontier. Each runs with a simple riff command, so you can focus on the model and the work at hand. riff is a bash function. riff <model> starts that model's CLI in the current directory with the model and effort flags preset.

Model Coverage

Default Harness
Alternate Harness
Unavailable
Which model each CLI runs, and the riff command that launches it.
Model Claude Codex Antigravity Junie
Anthropic / Claude
Fable 5.1 default harnessriff fable unavailable unavailable alternate harness
Mythos 5.1 default harnessriff mythos unavailable unavailable unavailable
Opus 5.5 default harnessriff opus unavailable unavailable alternate harness
Sonnet 5.5 default harnessriff sonnet unavailable unavailable alternate harness
Haiku 5.5 default harnessriff haiku unavailable unavailable alternate harness
OpenAI / GPT
GPT-6 Astra unavailable default harnessriff astra unavailable alternate harness
GPT-6.1 Sol unavailable default harnessriff sol unavailable alternate harness
GPT-6.1 Terra unavailable default harnessriff terra unavailable alternate harness
GPT-6 Luna unavailable default harnessriff luna unavailable alternate harness
Google / Gemini
Gemini 4 Argon unavailable unavailable default harnessriff argon alternate harness
Gemini 3.1 Pro unavailable unavailable default harnessriff gemini-pro unavailable
Gemini 3.8 Flash unavailable unavailable default harnessriff gemini-flash alternate harness
JetBrains / Junie
Junie Lite unavailable unavailable unavailable default harnessriff lite

Effort per Model

The reasoning effort each riff targets, beside the vendor's default.
Model Vendor Default Anvil Target Change
Anthropic / Claude
Fable 5.1highhighunchanged
Mythos 5.1highhighunchanged
Opus 5.5mediumhighraised
Sonnet 5.5mediumhighraised
Haiku 5.5mediummediumunchanged
OpenAI / GPT
GPT-6 Astralowlowunchanged
GPT-6.1 Sollowlowunchanged
GPT-6.1 Terralowlowunchanged
GPT-6 Lunamediummediumunchanged
Google / Gemini
Gemini 4 Argonmediummediumunchanged
Gemini 3.1 Prohighhighunchanged
Gemini 3.8 Flashmediumhighraised
JetBrains / Junie
Junie Liteno effort setting

Cost

A tier is a combined monthly spend across one Claude plan and one ChatGPT plan. Two ladders climb the same seven tiers, one focused on Anthropic and the other on OpenAI. They are alternatives, not stages. A higher tier buys more usage of the same tools. What a free tier includes changes often, so check the vendor's plan page before you count on it. Pick the ladder focused on the model you reach for most, since the money buys depth in one vendor rather than savings. If you have no preference yet, either ladder's Apprentice tier is a fine place to start.

Which vendor the ladder focuses on
Cost by tier and vendor, with Anthropic in focus. Each vendor row merges the tiers a plan covers into one span; a colored left edge marks the tier where a plan upgrades. Each cell leads with the monthly and shows the yearly beneath; the totals row gives an effective monthly and the yearly.
VendorStarterApprenticeJourneymanProfessionalEliteUltimateMythic
AnthropicFreeClaude Pro≈$17/mo$200/yrClaude Max$100/mo$1,200/yrClaude Ultra$200/mo$2,400/yr
OpenAIFreeChatGPT Plus$20/mo$240/yrChatGPT Pro 100$100/mo$1,200/yrChatGPT Pro 200$200/mo$2,400/yr
Total$0/mo$0/yr≈$17/mo$200/yr$100/mo$1,200/yr$120/mo$1,440/yr$220/mo$2,640/yr$300/mo$3,600/yr$400/mo$4,800/yr
The same seven tiers with OpenAI in focus instead. Each vendor row merges the tiers a plan covers into one span; a colored left edge marks the tier where a plan upgrades. Each cell leads with the monthly and shows the yearly beneath; the totals row gives an effective monthly and the yearly.
VendorStarterApprenticeJourneymanProfessionalEliteUltimateMythic
AnthropicFreeClaude Pro≈$17/mo$200/yrClaude Max$100/mo$1,200/yrClaude Ultra$200/mo$2,400/yr
OpenAIFreeChatGPT Plus$20/mo$240/yrChatGPT Pro 100$100/mo$1,200/yrChatGPT Pro 200$200/mo$2,400/yr
Total$0/mo$0/yr$20/mo$240/yr$100/mo$1,200/yr≈$117/mo$1,400/yr≈$217/mo$2,600/yr$300/mo$3,600/yr$400/mo$4,800/yr
Add-ons (optional at any tier, not counted in the totals above)

You can reach for a tool without building around it. Two ladders, any number of add-ons. Gemini rides free on both of them, which is why Google sits here instead of climbing a third. JetBrains sits here too, since the IDEs are a choice and not every anvil runs them.

Optional add-ons. These attach to any tier and are not included in any total above. The monthly and yearly columns give each add-on's own cost.
VendorPlanMonthlyYearly
GoogleAI Plus$5$50
AI Pro$20$200
AI Ultra 5x$100$1,200
AI Ultra 20x$200$2,400
JetBrains
All Products PackYear 1Year 2Year 3+
Year 1: No monthly price shownYear 2: No monthly price shownYear 3+: No monthly price shown
Year 1: $299Year 2: $239Year 3+: $179
AI Pro$10$100
AI Ultimate$30$300

See plan notes.

Urda's Anvil

Urda runs the Anvil Professional tier of the Anthropic Focused ladder, plus the JetBrains All Products Pack add-on. Google sits on the Free tier. The Source column shows where each plan comes from.

The plan Urda runs today. One row per vendor. The Source column reads Anvil Professional for a plan from the Professional tier of the Anthropic Focused ladder. It reads Add-on for a chosen add-on. It reads None for a free tier. The last row gives the combined total.
VendorPlanSourceMonthlyYearly
AnthropicClaude MaxAnvil Professional$100$1,200
OpenAIChatGPT PlusAnvil Professional$20$240
GoogleFreeNone$0$0
JetBrainsAll Products Pack (Year 3+)Add-on≈$15$179
Total≈$135$1,619

The riff bill of rights

What is a riff? A short shell command, named after a musical riff, a phrase you play again and again. A riff bakes in your model of choice and any additional arguments you want. You can have as many as you like; think of them as shortcuts you reach for often.

The smallest riff, two models
# riff opus, riff sonnet: one vendor, one effort, nothing else
riff() { claude --model "${1}" --effort high "${@:2}"; }
A more advanced riff setup in bash 4+
# riff <model> [args...]: one launcher, one model per subcommand
riff() {
  # the shared engine every model calls: run the CLI (blocking), then
  # restore your working directory when the CLI exits, via a trap
  _riff_shell() {
    local bin="${1}" origin="${PWD}" sandbox="${AI_SHELL_SANDBOX:-${HOME}/sandbox}"; shift
    # never turn an agent loose in your home dir (ssh keys, dotfiles, creds) or at /; sandbox it
    # defaults to ~/sandbox, created on first use; override with AI_SHELL_SANDBOX
    if [[ "${PWD}" == "${HOME}" || "${PWD}" == "/" ]]; then
      mkdir -p "${sandbox}" || return
      cd "${sandbox}" || return
    fi

    # ~~~~~ make it yours here: customizations, tab title, color, whatever ~~~~~

    trap 'trap - RETURN; cd "${origin}"' RETURN  # back to where you started when the CLI exits
    "${bin}" "${@}"                              # keep last so a Ctrl-C still runs the cleanup
  }

  # each model is just a thin declaration: a client, a model, and any flags you want
  # defining a _riff_cmd_* function is all it takes to register it
  _riff_cmd_fable()  { _riff_shell claude --model fable  --effort high  "${@}"; }
  _riff_cmd_opus()   { _riff_shell claude --model opus   --effort high  "${@}"; }
  _riff_cmd_sonnet() { _riff_shell claude --model sonnet --effort high  "${@}"; }
  _riff_cmd_astra()  { _riff_shell codex  --model gpt-6-astra --config "model_reasoning_effort='low'"    "${@}"; }
  _riff_cmd_sol()    { _riff_shell codex  --model gpt-6.1-sol --config "model_reasoning_effort='low'"    "${@}"; }
  _riff_cmd_terra()  { _riff_shell codex  --model gpt-6.1-terra --config "model_reasoning_effort='low'"  "${@}"; }
  _riff_cmd_luna()   { _riff_shell codex  --model gpt-6-luna  --config "model_reasoning_effort='medium'" "${@}"; }
  _riff_cmd_lite()   { _riff_shell junie  --model junie-lite "${@}"; }

  # Tab completion: bash sets COMP_LINE only when it calls riff as a completer
  if [[ -n "${COMP_LINE:-}" ]]; then
    COMPREPLY=()
    [[ "${COMP_CWORD}" -eq 1 ]] || return 0  # complete the model name only
    mapfile -t COMPREPLY < <(compgen -W "$(compgen -A function _riff_cmd_ | sed 's/^_riff_cmd_//')" -- "${COMP_WORDS[COMP_CWORD]}")
    return 0
  fi

  # dispatch: riff opus -> _riff_cmd_opus, with any extra args passed along
  local cmd="${1:-}"
  shift
  if declare -F "_riff_cmd_${cmd}" >/dev/null; then
    "_riff_cmd_${cmd}" "${@}"
  else
    printf 'usage: riff <model> [args...] (press Tab to list models)\n' >&2
    return 2
  fi
}
complete -F riff riff

References

Plan Notes

*Anthropic Claude Pro costs $20/month or $200/year. The tables use the annual rate, which saves $40.

*Claude Mythos requires Anthropic verification. See the Cyber Verification Program.

*OpenAI ChatGPT Pro 500 costs $500/month and falls outside these tiers.

*OpenAI Daybreak reduces cyber refusals for verified users. Some models need Daybreak Red, which requires organization approval. See the Trusted Access for Cyber overview.

*Google AI Plus costs $4.99/month or $49.99/year, rounded to $5 and $50.

*Google AI Pro costs $19.99/month or $199.99/year, rounded to $20 and $200.

*Google AI Ultra costs $99.99/month for 5x limits and $199.99/month for 20x limits, rounded to $100 and $200. Google bills Ultra monthly only, so the yearly column shows 12 months.

*Gemini Model Availability: Free includes Flash-Lite, AI Plus adds Flash, and AI Pro or Ultra adds Pro and Gemini 4 Argon. See details.

*JetBrains All Products Pack includes AI Pro with 10 AI Credits every 30 days for personal use. See credit details.

*Junie Lite runs Qwen 3.6 27B. JetBrains can change the model without notice. The tier is a free baseline that is always available. See Junie Lite docs.

Pricing Sources

Official plan prices and billing details.
VendorSource
AnthropicPricing · Pro details · Max details
OpenAIPricing · Plus details · Pro tiers
GoogleGoogle AI plans
JetBrainsAll Products Pack · AI Plans & Pricing · Renewal discounts