Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Releases: macOS26/Agent

Agent! 1.0.88.182

03 Jun 03:17
@macOS26 macOS26

Choose a tag to compare

🤖 Agent! 1.0.88.182 Release Notes

🔧 DeepSeek Re-Fix

  • Fixed DeepSeek provider integration issues that regressed in 1.0.87
  • Re-tuned tool consolidation for DeepSeek models to prevent malformed tool calls
  • Improved error handling for DeepSeek API responses
  • Fixed streaming mode compatibility with DeepSeek v3 models

📦 Install

  • Download Agent_1.0.88.181.dmg
  • Drag Agent! to /Applications
  • Launch and approve the privileged daemon when prompted
Assets 3
Loading

Agent! v1.0.87 (Build 181)

03 Jun 00:19
@macOS26 macOS26

Choose a tag to compare

🎉 Agent! v1.0.87 — Build 181

A fresh release of Agent!, the open-source, 100% native macOS autonomous agent. This build ships notarized, signed, and stapled — drag Agent!.app from the DMG into /Applications and you're up and running.

✨ Highlights

  • 🦾 Autonomous task loop — multi-step reasoning with tool-calling across Claude, OpenAI, Ollama, OpenRouter, Z.ai, Grok, Mistral, DeepSeek, Qwen, Gemini, BigModel, Hugging Face, and on-device Apple Intelligence.
  • 🔐 Privileged Launch Daemon — approve once with SMAppService, and the agent can execute root-level commands via XPC.
  • 🧠 Apple AI on-deviceFoundationModels.Tool handles local UI automation requests with zero cloud tokens; falls through to your cloud LLM only on failure.
  • 🗜️ Token compression — Apple AI summarizes older conversation turns when context exceeds 30K tokens.
  • 🚫 Anti-hallucination guardrails — system-prompt rules and a 10-consecutive-reads guard push the model to "narrow or call done()" instead of guessing.
  • Xcode integrationxcode build, bump_version, add_file, analyze, snippet — all via the agent tool surface.
  • 🖱️ AXorcist UI automation — element-based Accessibility clicks, types, scrolls, and waits.
  • 🍎 AppleScript + ScriptingBridge — 50+ first-party bridges (Music, Mail, Pages, Safari, Finder, System Events, etc.).
  • 🐚 User + root shellexecute_agent_command (user) and execute_daemon_command (root) over XPC.
  • 📚 Project index.agent/index/index.jsonl repo-map for fast, token-cheap navigation.

🛠 What's New in Build 181

  • 🆕 v1.0.87 — bump to current marketing version.
  • 🆕 Build 181 — incremented build number for this notarized release.
  • Notarized by Apple — submission ca6127f6-24cb-475d-b5c7-ffdce95992a4 accepted, ticket stapled.
  • 📦 Signed + hardened runtimeDeveloper ID Application: Todd Bruss (469UCUB275).

📥 Install

  1. Download Agent_1.0.87.181.dmg below.
  2. Open the DMG and drag Agent!.app into /Applications.
  3. Launch Agent! and follow the on-screen prompts to register the privileged helper.

🔧 System Requirements

  • 🍎 macOS 26.4.1 or later
  • 🦅 Apple Silicon recommended
  • 💾 ~36 MB installed footprint

🧰 Useful Links

🙏 Thank You

Every star, fork, and issue helps. If Agent! saved you time, please ⭐ the repo and share it with a friend.

Built 100% native. No NPM. No Electron. Just Swift. 🚀

Loading

Agent! for macOS 26.4.1 v1.0.86

26 May 13:05
@macOS26 macOS26

Choose a tag to compare

What's Changed

  • Consolidated read_file handler — unified read implementation with SHA256-based dedup
  • Streamlined read guards — simplified to one rule: one read per (file, range) to reduce unnecessary re-reads
  • Version bump to 1.0.86 (Build 180)

Full Changelog: https://github.com/toddbruss/Agent/compare/v1.0.85...v1.0.86

Loading

Agent! for macOS 26.4.1 v1.0.85

23 May 20:52
@macOS26 macOS26

Choose a tag to compare

🚀 This is the best Agent release so for by a long shot!

🦾 Major speed improvements with GLM-5.1 and most likely all LLMs!

image

🧠 System Prompt & Behavior

  • Use the terse read-once rule verbatim
  • Tighten read-once rule in system prompt + cite tool-layer enforcement
  • Dedup any second read of an unchanged file (not just same range)
  • Add cross-file read-without-edit guard to stop the loop
  • Dedup read_file emissions to stop the token spiral
  • Scale read limit with edit count so LLM can always verify edits

🐛 Bug Fixes

  • Fix duplicate git commit output in activity log
  • Fix diff_and_apply display not starting on new line
  • Fix index tool to use current tab's projectFolder instead of main tab
  • Revert "Remove whitespace trimming from project folder paths"

⚡ Performance & Cleanup

  • Dedupe drip + log-flush sleep cadence into ScriptTab statics
  • Watch chat.db with FSEventStream instead of 5s polling
  • Drop polling sleeps in favor of proper async signals
  • Consolidate LLM error handlers into handleTaskLoopError
  • Extract LLMRateLimiter actor for shared Retry-After + min-gap
  • Consolidate startup ping/warmup; replace post-restart sleeps with poll
  • Remove redundant Task.sleep delays

📝 README Updates

  • Revised Agent! description and feature list
  • Enhanced README with video game creation capability
  • Clarified wording about main branch updates
  • Grammar and clarity improvements throughout
  • Updated release schedule and project overview

🔖 Version Bump

  • Bump version to 1.0.85, build 179
Loading

Agent! v1.0.83.175

16 May 01:03
@macOS26 macOS26

Choose a tag to compare

Changes

  • Update README.md (a71dac5)
  • Reset elapsed timer at task-start callsite, not via view .onChange (1af6095)
  • Bump version to 1.0.81, build 172 (474372d)
  • Consolidate trimLog + trimToRecentTasks into ScriptTab.capActivityLog (2e3806c)
  • Add new image to README (490057d)
  • Update README.md (cbf6ca3)
  • WebSearch: add Exa as an AI-powered web search provider (0e1350b)
  • Merge pull request #19 from tgonzalezc5/feat/exa-search (9f25195)
  • Merge branch 'main' of https://github.com/macOS26/Agent (2df80b0)
  • Suppress macOS Passwords autofill on API key fields (d6acda5)
  • Move lmStudioAPIKey from UserDefaults to Keychain (41f1856)
  • Drop UserDefaults→Keychain migration for lmStudioAPIKey (9fa6223)
  • Bump AgentTools to 2.52.1; bump build to 173 (de19e01)
  • Bump AgentTools to 2.53.2 (drop unused .antigravity case) (73767f8)
  • Allow dd / mkfs / diskutil erase via root daemon (c317bb3)
  • Strip rootDaemon guardrails to just the three catastrophic rm patterns (32a6336)
  • Disk-write blocks redirect the LLM to execute_daemon_command (837d467)
  • Drop dd / mkfs / diskutil / redirect-to-disk guardrails entirely (65b8b53)
  • Bump version to 1.0.82 (build 174) (faab4d1)
  • Fix for Codex (493927d)
  • Fully Test Speech / Mic issue (94f93df)
  • Bump version to 1.0.83 (ebf32c5)
Loading

Agent! v1.0.80.170

25 Apr 22:35
@macOS26 macOS26

Choose a tag to compare

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 gatingswiftc -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)
Loading

Agent! Agentic AI for macOS 26.4.1 v1.0.79.169

24 Apr 23:28
@macOS26 macOS26

Choose a tag to compare

image

🛡️ Code Editing Guardrails

  • 7 new guardrails for code editing decision-making: reduced StuckGuard threshold, source line verification for diff_apply, read cache invalidation guidance, duplicate edit rejection, edit size soft limit (50 lines), replace_all safety, and strengthened build-error feedback in system prompt

🔧 Guard Fixes & Tuning

  • Unified stuck guard thresholds — StuckGuard.swift nudges at 2 failures (give-up at 6), overnight Guards.swift nudges at 2 failures (give-up at 4)
  • Cycle detection — tracks files edited in the last 6 turns and nudges when the same 2-3 files keep alternating without progress
  • Removed duplicate tab.flush() call in StuckGuard.swift
  • Gated postEditDiagnostic behind consecutive failure count (≥2) to eliminate false positives from swiftc -parse running without SDK context

🗄️ File Operations

  • Fixed FileBackupService.restore(fileName:) — was using bare filename as destination (./Foo.swift instead of original location). Now searches via BFS with optional projectFolder parameter
  • Added truncation warning for write_file — warns when overwriting with <50% of original content (and original was >20 lines), with recovery instructions

📚 Documentation

  • Star History section added to README with responsive images
Loading

Agent! 1.0.76.166

23 Apr 20:50
@macOS26 macOS26

Choose a tag to compare

image

🧠 Apple Intelligence

  • Add run_agent tool so Apple AI can launch agents via FoundationModels
  • Persist accessibility agent session across turns
  • Use Apple AI itself to classify follow-up prompts
  • Gate Accessibility intent parsing on Accessibility permission
  • Skip accessibility triage for file-path and coding prompts
  • Skip triage when project folder is active (unless a system app is named)
  • Skip triage when Accessibility permission is not granted
  • Better app name recognition — fixes Photo Booth confusion
  • Stop biasing accessibility tool toward Photo Booth
  • Teach accessibility agent to discover button labels before clicking
  • Refuse destructive UI actions during triage
  • Skip tool + screenshot bypass to stop hallucinated clicks
  • Inject previous conversation turn into rephrase prompt
  • Fix isEnabled defaulting to false
  • Fix misrouting non-agent tool names to run_agent
  • Tighten run_agent trigger to exact phrase only
  • Fix duplicate log entry for accessibility tasks

🎨 UI & Design

  • 🧠 Brain icon: AngularGradient multi-color blend for active Apple AI toggles
  • Tint Apple Intelligence toggles with distinct colors (red/orange/blue/green)
  • Mediator: gray brain icon when disabled (was red)
  • Accessibility intent toggle: teal → deep blue
  • Add separate Triage greetings toggle
  • Add 3px to LLMOutputBox height to prevent cursor blink jitter
  • Settings: add refresh button to Claude model picker
  • Mirror outgoing iMessage into Messages tab

📸 Images & Attachments

  • Paste: popup to pick image resolution, remembers last choice
  • Screenshot button: apply same resolution popup as paste
  • Cache hi-res originals of pasted/screenshot attachments
  • Auto-repair U+202F narrow-no-break-space in screenshot paths
  • Add copy_image action to the file tool

🔧 Bug Fixes

  • Fix accessibility handler: accept appBundleId key in manage_app, click_menu_item, set_window_frame
  • Fix bump_version/get_version to use selected project instead of Xcode open documents
  • Fix iMessage send lockup: use osascript subprocess instead of in-process NSAppleScript
  • Fix double echo: skip appendLog for shell commands that already streamed output
  • Fix agent script run routing: script tabs run on same tab, main tab spawns separate tab
  • Fix: Token Compression toggle now guards every compression entry point
  • Fix: respect Token Compression toggle for ALL tiers, not just Apple AI summarization
  • Replace force-unwrap with if-let in diff_and_apply rangeNote
  • Fix tool output formatting: newline prefix and :0:0 warning cleanup

✏️ Diff & Apply

  • diff_and_apply: actually use the LLM-provided source snippet
  • Fix diff_apply truncation: splice source into file instead of replacing entire content
  • Fix LLMs sending diff-formatted input to diff_apply
  • edit_file: show line numbers in activity log status line
  • edit_file: log only the status line, skip D1F diff and full file dump
  • FilePath on its own line at both log sites
  • Put blank line inside the diff block

📖 Help System

  • Add macOS Help Book bundle (Agent.help) with full Help Viewer compatibility
  • Adopt CSS-variable pattern + color-scheme meta for dark mode
  • Replace <kbd> with <code class="key"> to match Logos pattern
  • Fix Help "content unavailable" — switch HPDBookType from remote (1) to local (3)
  • Rebuild Agent.helpindex with hiutil
  • Flatten Agent.help structure to match Logos (fixes invisible keyboard shortcuts)
  • Switch target to hand-authored Info.plist so CFBundleHelpBookFolder/Name actually land

📚 Documentation

  • Document Launch Daemon as optional, user-controllable
  • Remove outdated Write Protection claim from security docs
  • Document SMAppService re-signing empirical proof in SECURITY.md
  • Explain why no manual setCodeSigningRequirement is needed
  • Update founder's title, badge colors, formatting, copyright, and legal notices
  • Remove poem section and founder cancer message from README
  • Remove ReleaseNotes folder and contents

🔨 Maintenance & Chores

  • Bump version to 1.0.76 (build 166)
  • Pin AgentTools 2.51.6 + AgentD1F 1.0.3 + AgentSwift 1.1.1 + AgentTerminalNeo 1.37.2
  • Add FUNDING.yml for GitHub Sponsors (macOS26)
Loading

Agent! 1.0.75 (build 164)

19 Apr 04:47
@macOS26 macOS26

Choose a tag to compare

Agent! 1.0.75 (build 164)

image

🧠 Apple Intelligence Mediator

  • Refresh master Enable Mediator toggle on popover appear so sub-features re-evaluate against current state
  • Added separate Triage Greetings toggle
  • Tinted Apple Intelligence toggles with distinct colors
  • Brain icon now blends colors of active Apple-AI toggles via AngularGradient
  • Smoother multi-toggle blend with interleaved midpoint colors
  • Gray brain icon when Mediator disabled (was red)
  • Accessibility intent toggle recolored teal → deep blue
  • Gate Accessibility intent parsing on Accessibility permission
  • Apple AI: skip tool + screenshot bypass to stop hallucinated clicks
  • Apple AI: refuse destructive UI actions during triage
  • Fix two bugs behind "Apple AI claimed Safari opened" false positive

📘 Help Book

  • Added full macOS Help Book bundle (Agent.help) with Help Viewer compatibility
  • Switched Agent! target to hand-authored Info.plist so CFBundleHelpBookFolder/Name land correctly
  • Fix Agent Help "content unavailable" — HPDBookType 1 → 3 (local)
  • Removed remote URL from Help book (local-only Pull Help)
  • Flattened Agent.help structure to match Logos (fixes invisible keyboard shortcuts)
  • Replaced <kbd> with <code class="key"> to match Logos pattern
  • Adopted CSS-variable pattern + color-scheme meta for dark mode
  • Fixed Keyboard Shortcuts help readability
  • Rebuilt Agent.helpindex with hiutil

🛠️ Diff & Apply

  • diff_and_apply: actually use the LLM-provided source snippet
  • Put the blank line inside the diff block
  • Added blank line between diff block and status line
  • filePath onto its own line at both log sites
  • Added copy_image action to the file tool

🗜️ Token Compression

  • Token Compression toggle now guards every compression entry point
  • Respect Token Compression toggle for ALL tiers, not just Apple AI summarization

📸 Screenshots & Attachments

  • Paste: popup to pick image resolution, remembers last choice
  • Screenshot button: apply same resolution popup as paste
  • Cache hi-res originals of pasted/screenshot attachments
  • Auto-repair U+202F narrow-no-break-space in screenshot paths

💬 Messaging & Tabs

  • Fix iMessage send lockup: use osascript subprocess instead of in-process NSAppleScript
  • Mirror outgoing iMessage into Messages tab
  • Record tool steps on tab tasks so Steps list renders
  • Mark tab tool steps red when tool_result content indicates failure
  • Detect JSON-shaped tool failures in Steps error heuristic

📊 Usage & Settings

  • Usage popover: record subscription billing per-call, show Included
  • Settings: added refresh button to Claude model picker
  • Added 3px to LLMOutputBox height to prevent cursor blink jitter

🐚 Shell

  • Shell tool: include exit code in tool_result content on failure

📚 Docs & Repo

  • Point repo URLs at macos26/agent
  • README: explain why no manual setCodeSigningRequirement is needed
  • SECURITY: document SMAppService re-signing empirical proof
  • Repin AgentD1F 1.0.3, AgentSwift 1.1.1, AgentTerminalNeo 1.37.2, AgentTools 2.51.6
Loading

Agent! v1.0.72 (Build 161)

18 Apr 01:50
@macOS26 macOS26

Choose a tag to compare

✨ Features

  • feat: add MiniMax provider support
  • Claude auth: accept Claude Code OAuth tokens alongside API keys
  • Claude OAuth: prepend Claude Code identity system block
  • Claude models: OAuth-aware fetch, add Opus 4.7 to defaults

🐛 Bug Fixes

  • Fix edit_file diff syntax highlighting in activity log
  • Fence edit_file diff log with language for syntax coloring
  • Skip Apple triage in TaskExecution when Accessibility is off
  • Skip Apple triage when Accessibility permission is not granted
  • Claude auth: strip whitespace/newlines from pasted credentials

🚀 Improvements

  • Remove per-tool-result and per-message caps — full output to LLM
  • read_file: remove 50K char cap — return full file to LLM
  • Remove hardcoded default model lists — fetch is the only truth
  • index_create/recreate/append/continue: return full JSONL body in same turn

📚 Documentation

  • revert: restore full README (undo 6250603 short version)
  • docs: clarify Launch Agent is not privileged
  • Docs: add CLAUDE_CODE_OAUTH.md — how to mint + paste a claude setup-token

🔖 Release

  • Bump version to 1.0.72 (161)

🔀 Merges

🔧 Recent Fixes

  • Add Codex LLM provider (CodexService.swift) + provider setup wiring
  • New docs: docs/CODEX.md, docs/CODEX_OAUTH_RESEARCH.md
  • TaskExecution refinements: Setup, ToolBatch, Guards, ErrorHandler, FileTools
  • AgentViewModel: StuckGuard, LLMServices, ScriptTabs, ModelFetching, SubAgent, Logging improvements
  • Apple Intelligence mediator + Claude service updates
  • UI: FallbackChainView, SettingsView, ToolsView, NewMainTabSheet, ThinkingIndicatorView polish
  • LaunchAgent/LaunchDaemon plist tweaks
Loading
Previous 1
Previous

AltStyle によって変換されたページ (->オリジナル) /