Skip to content

Releases: beastoin/agent-swift

Release list

v0.2.1

Choose a tag to compare

@beastoin beastoin released this 10 Mar 02:59

agent-swift v0.2.1

Complete E2E automation tool for macOS apps via the Accessibility API. No external dependencies needed.

New since v0.1.0

  • click — CGEvent mouse click by ref or x,y coordinates (SwiftUI NavigationLink support)
  • fill — enter text into element by ref
  • get — read element properties (text, type, role, identifier, attrs)
  • find — locate element by text/role/identifier with optional chained action
  • screenshot — capture app window to PNG
  • is — assertions (exists/visible/enabled/focused)
  • wait — poll for condition or delay with configurable timeout
  • scroll — scroll direction or ref into view
  • schema — command metadata JSON for AI agent integration
  • press now auto-falls back to CGEvent click for SwiftUI NavigationLink
  • 74 role mappings covering all 64 official macOS SDK accessibility roles
  • JSON mode: --json flag, AGENT_SWIFT_JSON=1 env, or non-TTY auto-detect
  • AGENT_SWIFT_HOME and AGENT_SWIFT_TIMEOUT env vars

Install

Homebrew:

brew install beastoin/tap/agent-swift

Shell script:

curl -fsSL https://raw.githubusercontent.com/beastoin/agent-swift/main/install.sh | sh

Commands (15)

doctor, connect, disconnect, status, snapshot, press, click, fill, get, find, screenshot, is, wait, scroll, schema

Binary

Universal macOS binary (arm64 + x86_64). Requires macOS 13+.
71 tests passing.

v0.1.0

Choose a tag to compare

@beastoin beastoin released this 09 Mar 08:31

agent-swift v0.1.0

CLI for AI agents to control macOS apps via the Accessibility API.

Install

Homebrew:

brew install beastoin/tap/agent-swift

Shell script:

curl -fsSL https://raw.githubusercontent.com/beastoin/agent-swift/main/install.sh | sh

Commands

  • doctor — check prerequisites
  • connect — connect to app by PID or bundle ID
  • disconnect — end session
  • status — show connection state
  • snapshot — capture element tree with refs (-i for interactive only)
  • press — tap element by ref

Binary

Universal macOS binary (arm64 + x86_64). Requires macOS 13+.