# aos > One CLI over the machine that agents drive the same way a person does: 100 commands across 33 groups covering windows, input, screen capture, files, shell commands, packages, network, audio, clipboard and services, on macOS, Windows and Linux. There are two ways in, and the skill is the primary one: `aos skill install` writes an agent skill bundled inside the binary to ~/.claude/skills and ~/.agents/skills, after which an agent that already has a shell simply runs the CLI — nothing listening, nothing to start, and it works over SSH into any machine that has the binary. MCP is the second path, for agents that want typed tools: `aos serve mcp` exposes every non-hidden, non-blocking command as a tool, gated by a token minted per run because loopback is not a permission. Both run the identical code path a person gets at a prompt, so what you test by hand is what the agent gets. Safety is structural: commands that need a screen are refused with a reason on a headless box, `file delete` will not touch a filesystem root or $HOME or a system directory, `serve` binds loopback, services are namespaced, and telemetry records argument counts rather than argument values. One verb set means the same thing everywhere (`pkg install` over brew/winget/scoop/choco/apt/pacman/yay/dnf). It extends without forking through JSON adapters and PATH executables, both of which become MCP tools and neither of which can shadow a built-in. ## Documentation Sets - [Abridged documentation](https://muthuishere.github.io/aos/llms-small.txt): a compact version of the documentation for aos, with non-essential content removed - [Complete documentation](https://muthuishere.github.io/aos/llms-full.txt): the full documentation for aos ## Notes - The complete documentation includes all content from the official documentation - The content is automatically generated from the same source as the official documentation