Skip to content

Agent! v1.0.80.170

Latest

Choose a tag to compare

@macOS26 macOS26 released this 25 Apr 22:35
· 1 commit to main since this release
image

🌐 New Provider: OpenRouter

  • OpenRouter as a first-class LLM provider β€” access hundreds of models through a single API key
  • Protocol toggle β€” switch between OpenAI-compatible and Anthropic-compatible endpoints per model
  • Smart model catalog β€” fetches and filters OpenRouter's /models to only show tool-capable models with real context windows (strips embedding, image-only, and preview entries)
  • ClaudeService integration β€” Anthropic-compatible OpenRouter models route through ClaudeService with proper Bearer auth (sk-or- key detection) and tool forwarding
  • Full UI support β€” settings panel, model picker, fallback chain, and tab configuration all wired up

πŸ›‘οΈ Error Handling & Reliability

  • Stop infinite-loop on misdetected context overflow β€” narrowed detection to require "exceed/too long/too many" alongside keywords; plain max_tokens in unrelated parameter errors no longer triggers aggressive pruning
  • Short-circuit OpenRouter free-tier 429s β€” detects shared free-tier rate limits and bails immediately instead of churning through futile retries
  • Prune loop cap β€” if pruning messages doesn't actually shrink history, stops retrying (max 3 consecutive prune attempts)

✏️ Code Editing Guardrails

  • Duplicate edit rejection β€” code-level detection blocks the exact same (file, old_string) pair on consecutive turns, preventing stuck loops
  • Edit cycle detection β€” tracks files edited across recent turns and nudges when the same 2–3 files keep alternating without progress
  • Stuck threshold lowered β€” nudge at 2 failures (was 3), give-up at 4–6 failures (was 6)
  • Edit size safety β€” refuses edits with old_string over 50 lines; requires minimum 10 chars for replace_all
  • Source verification for diff_apply β€” validates that the provided source parameter matches actual file content at the specified lines, preventing silent corruption from stale line numbers
  • Truncation warning on write_file β€” warns when new content is less than 50% of the original file size
  • Post-edit diagnostic gating β€” swiftc -parse checks only run after 2+ consecutive edit failures, avoiding noisy false positives

πŸ“ System Prompt Improvements

  • Commitment Rule β€” new hard contract: claiming "I found the problem" MUST be followed by an edit tool call, not another read. Repeated certainty claims without shipping edits are flagged as a failure mode
  • Anti-hallucination reinforcement β€” stronger guidance against fabricating findings from incomplete reads

πŸ”§ Other

  • AgentTools bumped to v2.52.0
  • Version bumped to 1.0.80 (build 170)