Skip to content

v0.3.0

Choose a tag to compare

@tkhs101 tkhs101 released this 21 Oct 01:44
· 29 commits to main since this release

Free-tier behavior release from the opencode2api comparison.

  • Session identity now reads the aliases other agents use (session_id, conversation_id, body conversation_id, Claude Code metadata.user_id) and seeds unnamed conversations with the system prompt plus the opening; previous_response_id is the last explicit signal.
  • Chat function names merge by the prefix rule in both the collapse and guard paths, so a repeated or growing name is not read as an unknown tool.
  • The last successful model discovery is cached atomically and used as a floor: startup merges it under the bootstrap table, a live read always wins, and a listing failure reports the cache age beside magpie.fellBack.
  • limits-sweep classifies a model unavailable only on explicit model-gone answers; limits-watch records that day as history (never a disable switch) and gains a read-only --status [--json] freshness report with exit codes 0/2/1, distinct from --check.
  • A free-tier IP-abuse 403 is diagnosed as an egress-IP block instead of a tool-wording problem; no local cooldown or egress rotation.
  • R6 reasoning-history repair was measured and deliberately not implemented: real tool round-trips with/without reasoning fields were all 2xx, and the free tier serves no Anthropic model.
  • Docs: README/MAINTAINING/.env.example updated for the session rules, discovery cache, status report, and 403 taxonomy.