Quickstart
-
Install.
Terminal window go install github.com/muthuishere/aos/cmd/aos@latestNeeds Go 1.26+. One static binary, no runtime and no package manager of its own. The macOS window backend is CoreGraphics through cgo, so a Mac build needs
CGO_ENABLED=1— the default when building natively. Linux and Windows are pure Go and cross-compile from anywhere.Prefer not to build? Every release also ships prebuilt binaries for macOS, Linux and Windows — the latest release.
-
Ask the machine what works.
Terminal window $ aos doctorok registry 97 of 99 commands available on darwinok telemetry recording to /Users/you/.local/state/aos/telemetryok display available; GUI commands will runok permissions accessibility and screen capture grantedok windows 16 windows visibleok screenshot captured 2895667 bytesok clipboard round trip succeededok packages homebrewok plugins 0 external commands across 37 directoriesdoctordoes not check whether binaries are onPATH. It round-trips the clipboard, captures a real screenshot and inspects the bytes, asks the window backend for a list, and checks the permissions macOS needs. Anything notokprints what to run to fix it. -
Run something.
Terminal window $ aos system infoarch arm64cpu Apple M5 Prohost your-machine.localos macOSos_version 26.4platform darwinTerminal window aos window move Chrome --zone=1Baos capture screenshot --app=Chrome --out=/tmp/shot.pngaos pkg install ripgrep -
Hand it to an agent — the skill first.
Terminal window aos skill installIt writes the agent skill bundled inside the binary to
~/.claude/skills/and~/.agents/skills/, so the instructions an agent reads can never describe a different version than the one installed.skill showprints it without installing;skill uninstallremoves it.That is the whole integration. The agent already has a shell, and now it knows this CLI exists, what the exit codes mean, and which commands need a screen — so it runs
aosthe way you do. Nothing to start, nothing listening, and it works over SSH into any machine that has the binary. -
Or serve it over MCP, if your agent prefers tools.
Terminal window $ aos serve mcpaos mcp http://127.0.0.1:14320/mcptoken 9c23b0efb0a002fe536a579adfd7cdb1Terminal window claude mcp add --transport http aos http://127.0.0.1:14320/mcp \--header "Authorization: Bearer 9c23b0efb0a002fe536a579adfd7cdb1"Every non-hidden, non-blocking command available on this machine becomes one MCP tool, running the identical code path. The token is minted per run and required — see using it from an agent.
Where to go next
Section titled “Where to go next”- The command surface — what the groups cover.
- Every command — the full reference, generated from the binary.
- Safety model — what it refuses, and why.