Skip to content

Releases: macOS26/Agent

Agent! 1.0.76.166

23 Apr 20:50

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)

Agent! 1.0.75 (build 164)

19 Apr 04:47

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

Agent! v1.0.72 (Build 161)

18 Apr 01:50

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

🦾 Agent! 1.0.70 (Build 159)

16 Apr 22:52

Choose a tag to compare

What's Changed

OpenAI Model List Improvements

  • Stop filtering OpenAI models — now returns every model the API lists, no more hidden models (a3cb7be)
  • Dropped legacy GPT-3.5 and dated GPT-4 snapshot filtering (1a8e980)
  • Future-proofed model filter with blocklist for non-chat models (b3404e2)

Apple Intelligence

  • Skip accessibility triage when a project folder is active unless a system app is explicitly named — reduces unnecessary UI queries (f1c0959)

Full Changelog: https://github.com/toddbruss/Agent/compare/v1.0.69.158...1.0.70.159

v1.0.69.158

15 Apr 23:12

Choose a tag to compare

What's New in v1.0.69.158

image

🧠 Project Index & Memory

  • Project Index tool — portable JSONL index per file (lines, doc block, top-level symbols)
  • Memory tool — persistent /memories filesystem with global and project scopes
  • Consolidated per-project hidden dirs under .agent/{index,memory,worktrees,plans}
  • Prompt version now derived from marketing + build number (no more hardcoded revision)

✏️ Editing & Diff

  • diff_apply fix — splice source into file instead of replacing entire content
  • Fix diff_apply truncation and diff-formatted input handling
  • Edit reliability: drop truncation guard, add cache invalidation + no-op detect
  • Stuck-edit nudge: lower threshold to 3, make actionable

🍎 Apple Intelligence

  • Apple AI: persist accessibility agent session across turns
  • Apple AI: use Apple AI itself to classify follow-up prompts
  • Apple AI: add run_agent tool for launching agents via FoundationModels
  • Apple AI: disable shell and applescript tools — accessibility only
  • Fix Apple AI misrouting non-agent tool names to run_agent
  • Fix Apple Intelligence isEnabled defaulting to false

🎨 UI Polish

  • Long Cmd+V pastes captured as removable chips with first+last char preview
  • LLM output: stop last-word flickering with cursor
  • LLM output: don't snap to bottom on mouse-exit when not streaming
  • Tab labels: main tab shows current model, LLM tabs preserve raw model case
  • ToolStepsView: persist expanded state across Cmd+B and new steps
  • Multi-line log messages drop onto their own line below timestamp

🔧 Fixes & Cleanup

  • Fix LLM tab provider/model clobber + per-tab usage breakdown
  • Fix tool output formatting: newline prefix and :0:0 warning cleanup
  • Replace force-unwrap with if-let in diff_and_apply
  • Pin AgentTools 2.50.10 — adds PROJECT INDEX prompt section
  • Efficient-action system prompt rules to curb redundant file re-reads
  • Anti-confabulation: dedup tool names, prune aliases, harden read guard
  • Summarize comments across all major Swift files
  • Wrap long lines with SwiftFormat across the project

📦 Dependencies

  • AgentTools 2.50.10
  • AgentAccess 2.9.5 (screenshots no longer block main thread)

DMG to follow.

🦾 Agent! 1.0.68 (Build 156)

14 Apr 21:58

Choose a tag to compare

✨ 🦾 Agent! What's New in 1.0.68?

image

🔧 diff_apply Reliability

  • Fixed truncation bug: source is now spliced into the file instead of replacing entire content
  • Fixed LLMs sending diff-formatted input to diff_apply
  • Replaced force-unwrap with safe if-let in range note parsing
  • Updated AgentTools to 2.50.7 with truncation fix
  • Bumped prompt revision to 86 for improved diff_apply prompting

🧠 Apple Intelligence Fixes

  • Fixed non-agent tool names being misrouted to run_agent
  • Tightened run_agent trigger to exact phrase match only
  • Fixed duplicate log entries for accessibility tasks

🖥️ UI Improvements

  • Paste chips: Long Cmd+V pastes now appear as removable preview chips instead of flooding the text field
  • Tab labels: Main tab shows current model name; LLM tabs preserve raw model casing
  • Per-tab usage: Added individual usage breakdown to each LLM tab
  • Log formatting: Multi-line messages now drop below the timestamp on their own line

🧹 Code Quality

  • Consolidated vision model detection into shared isVisionModel() (removed two duplicate private methods)
  • Summarized verbose comments across 10 source files
  • Skipped suggestion matching for long inputs to prevent main-thread stalls
  • Fixed tool output formatting (newline prefix and :0:0 warning cleanup)
  • Added iteration cap enforcement

🚀 Agent! v1.0.65 (Build 153)

13 Apr 20:13

Choose a tag to compare

What's Changed

Version Management

  • Bump version fixes — bump_version/get_version now correctly uses the selected project instead of Xcode open documents
  • Version bumps: 1.0.64 (152) → 1.0.65 (153)

Security & Safety

  • action_not_performed guardrail — three-layer defense against false-action claims (app layer, prompt layer, documentation)
  • README + SECURITY.md updated to document the action_not_performed defense layers

Apple Intelligence Hardening

  • Verify Apple AI tool outputs before claiming success — forwards to LLM on failure
  • Log Apple AI tool actions to activity log for transparency
  • Harden Apple AI triage — never claim completion on failure or uncertainty

Documentation

  • README: Tool Execution Gating added to Defense Layers section
  • README: Tip Jar section added

Full Changelog: https://github.com/toddbruss/Agent/compare/1.0.61.149...1.0.65.153

🚀 Agent! v1.0.61 (Build 149)

12 Apr 06:52

Choose a tag to compare

🦾 Agent! Agentic AI for your  Mac Desktop (or Laptop)

Agent! Requires macOS 26.4 or later. M series preferred for Apple Intelligence. We don't know if Apple AI works on Intel. Also Apple AI is not supported inside a Mac VM. It's optional, but does help move things along by doing several tasks locally, saving you some tokens.

image

🔧 Bug Fixes

  • Fix double echo — skip appendLog for shell commands that already streamed output
  • Remove tool result cache — eliminate read loop blocker that caused stale responses
  • Remove file read dedup cache — LLMs work around stub responses anyway; cleaner tool flow

🧠 Apple AI Improvements

  • Skip accessibility triage for file-path and coding prompts — faster task routing
  • Add ! bypass prefix — force Apple AI to skip triage when you know what you want
  • Add AppleScript + shell tools alongside accessibility for Apple AI agent

🖥️ UI & UX

  • Propagate parent tab project folder to spawned script tabs — scripts inherit the right working directory
  • Add provider tooltip to LLM Usage popup model rows — see which provider serves each model

📖 Documentation

  • Add Defense Layers section to README covering security features
  • Add build-without-developer-account instructions + build.sh script
  • Add emojis to toolbar icon table, remove SF Symbol text names
  • Fix GLM model sizes — 744B/754B MoE, not 32B
  • Clarify GLM-5/5.1 are cloud-only (may be possible to run FP8 locally); GLM-4.7-Turbo (32B) runs locally

⬆️ Upgrade Notes

  • If upgrading from v1.0.60, no migration needed — settings and tabs are preserved.

🚀 Agent! 1.0.59 (Build 147)

10 Apr 03:05

Choose a tag to compare

🚀 Agent! 1.0.59 (Build 147)

image

LLM / Provider Improvements

  • 429 Fallback Chain Overhaul: Fallback now triggers after 2 failures (down from 3) with a flat 10s retry, so the chain fires within ~30s instead of retrying forever
  • 429 handling: Every 429 failure is now recorded against the fallback chain, not just after 3 consecutive failures
  • 429 debugging: Log the actual API response body on 429 errors and add clearRetryAfter helper
  • BigModel: Same dual-API URLs as Z.ai — code and vision endpoints registered separately
  • Z.ai: Proper dual-API URLs for code and vision endpoints
  • Apple AI triage: Don't intercept shell commands (open ., open /path, ls, git, etc.) — let them pass through to the shell handler
  • Per-tab provider: Sync Settings picker to the active tab's LLMConfig so each tab can use a different provider
  • Model refresh consolidation: Route all model-refresh calls through a single fetchModelsIfNeeded(for:force:), replacing 3 separate functions
  • FallbackChainView: Show model display name (with -Code suffix for Z.ai)

Tool / Infrastructure

  • batch: Fix duplicate output and guard empty git branch name
  • batch_commands: Remove per-step delimiters, run as a single script for cleaner output
  • Remove read guard snap-out: LLMs need unlimited reads for project research

Version

  • Version bump to 1.0.59 (Build 147)

Agent! 1.0.41 (Build 126)

06 Apr 03:54

Choose a tag to compare

Agent! 1.0.41

image

🛠 Tool System

  • Consolidated tool naming — all tools renamed with _tool suffix, auto-stripped after first turn
  • mkdir and cd actions added to file_manager
  • Condensed tools — strip _tool suffix after first turn, auto-revert on failure
  • AgentTools 2.31.0 — synced all tool action lists with new naming
  • Run agent — support both run agent X and agent run X for direct execution
  • Fix run_agent — compile then dlopen/run dylib instead of just compiling

📺 LLM Output Overhaul

  • NSTextTable inline rendering — tables render inline with proper padding and sizing
  • AgentTerminalNeo integration — native auto-scroll, smooth streaming, cursor blink
  • Auto-grow output — LLM Output grows with content, capped at 50% window height
  • Draggable resize handle — resize LLM Output panel with drag, respects max height
  • Live token counts — estimate input/output tokens during streaming
  • Always-blinking cursor — seamless streaming to idle, AGENT! prompt blinks too
  • Line-count-based height — eliminates NSTextTable overestimation and jitter
  • Fix streaming jitter — height only grows, never shrinks

🧠 Fallback Chain

  • Fallback Chain UI — configure backup models in toolbar, auto-switch on failure
  • Model picker dropdowns — shows fetched models from all providers
  • Eye icon for vision models in pickers and fallback entries
  • Wire fallback chain into error handler — auto-switch on provider failure

🎨 UI Improvements

  • Status icons and colors — 🧠/blue Thinking, ▶/green Running, 🖥/orange Executing, 🛡/red Root
  • Coding Preferences icon turns green when any feature is on
  • Agents menu retry — longer initial delay, 10 insertion attempts
  • Window frame persistence — retains size after tiling
  • Fix double overlay — tab selected shows only its own indicator
  • Cmd+B toggles overlay on all tabs including running ones

🔧 Fixes

  • batch_commands — run all in single shell session so variables persist
  • Fix token accuracy — live output estimate, no double-counting
  • Fix timer — 0.25s refresh for live tokens, freeze on cancel
  • Fix elapsed time — freeze at actual value when done
  • Fix duplicate recordFailure — was double-counting failures
  • Fix drag jitter — global coordinate space for handle gesture
  • Fix window resizing on drag — prevent window resize from LLM Output handle

🤖 Z.ai / Model Providers

  • Dynamic model fetching — Z.ai models 100% from OpenAPI spec, zero hardcoding
  • Two endpoints — coding (no vision) and general (vision), URL routing with :v tag
  • Fetch models for ALL providers — Z.ai, Gemini, Grok, Mistral, etc.
  • Coding endpoint models tagged with -Code suffix

🏗 Architecture

  • Xcode-only gating — block xc tools when no .xcodeproj detected
  • Verify gate — build must pass before task_complete allowed
  • Remove Claude Code references from source comments
  • AgentTools pinned to 2.31.0, prompt revision 62