> ## Documentation Index
> Fetch the complete documentation index at: https://mintlify.com/eugene1g/agent-safehouse/llms.txt
> Use this file to discover all available pages before exploring further.

# Agent Safehouse

> Sandbox your LLM coding agents on macOS so they can only access the files and integrations they need

# Agent Safehouse

## Practical Security for AI Coding Agents

Agent Safehouse uses macOS `sandbox-exec` with composable policy profiles to reduce the blast radius when LLM coding agents run on your machine. It follows a deny-first model: start from deny-all, then allow only what the agent needs to do useful work.

<CardGroup cols={2}>
  <Card title="Quick Start" icon="rocket" href="/quickstart">
    Get up and running in 5 minutes with basic sandboxing
  </Card>

  <Card title="Installation" icon="download" href="/installation">
    Install the CLI and set up shell functions
  </Card>

  <Card title="CLI Options" icon="terminal" href="/usage/cli-options">
    Explore all available commands and flags
  </Card>

  <Card title="Agent Compatibility" icon="robot" href="/agents/overview">
    Check compatibility with 14+ coding agents
  </Card>
</CardGroup>

## Key Features

<CardGroup cols={2}>
  <Card title="Deny-First Security Model" icon="shield-halved">
    Start from deny-all and explicitly allow only what agents need. Reduces blast radius from prompt injection and confused deputy flows.
  </Card>

  <Card title="Composable Policy Profiles" icon="layer-group">
    Modular `.sb` profiles for toolchains, integrations, and agents. Mix and match capabilities with `--enable` flags.
  </Card>

  <Card title="14+ Agent Profiles" icon="users">
    Pre-built profiles for Claude, Cursor, Aider, Goose, OpenCode, and more. Agent-specific grants applied automatically.
  </Card>

  <Card title="Optional Integrations" icon="plug">
    Docker, kubectl, SSH, clipboard, 1Password, and more. Enable only what you need with fine-grained controls.
  </Card>

  <Card title="Machine-Local Overrides" icon="gear">
    Append custom policy files for host-specific paths. Keep shared repo config separate from local exceptions.
  </Card>

  <Card title="Workdir-Based Config" icon="folder-tree">
    Drop a `.safehouse` file in your repo to define project-specific policies. Trust and load with `--trust-workdir-config`.
  </Card>
</CardGroup>

## What Gets Protected

<Note>
  Agent Safehouse denies access to sensitive paths by default. Agents cannot read SSH keys, shell startup files, browser profiles, or arbitrary home directory files unless explicitly granted.
</Note>

<CardGroup cols={3}>
  <Card title="SSH Keys" icon="key">
    `~/.ssh` private keys blocked by default
  </Card>

  <Card title="Shell Init Files" icon="terminal">
    `.zshrc`, `.bashrc` require `--enable=shell-init`
  </Card>

  <Card title="Browser Profiles" icon="browser">
    Profile data requires `--enable=browser-native-messaging`
  </Card>

  <Card title="Clipboard Access" icon="clipboard">
    Clipboard requires `--enable=clipboard`
  </Card>

  <Card title="Process Control" icon="list-check">
    Host process enumeration requires `--enable=process-control`
  </Card>

  <Card title="Debugger Access" icon="bug">
    LLDB and task-port require `--enable=lldb`
  </Card>
</CardGroup>

## Philosophy

Agent Safehouse is designed around **practical least privilege**:

* Start from deny-all
* Allow only what the agent needs to do useful work
* Keep developer workflows productive
* Make risk reduction easy by default

It is a **hardening layer**, not a perfect security boundary against a determined attacker.

<Info>
  For a detailed comparison with VMs and containers, see [Isolation Models](/concepts/isolation-models).
</Info>

## Getting Started

<Steps>
  <Step title="Install the CLI">
    Download and install the safehouse CLI to your local bin directory.

    ```bash theme={null}
    mkdir -p ~/.local/bin
    curl -fsSL https://raw.githubusercontent.com/eugene1g/agent-safehouse/main/dist/safehouse.sh \
      -o ~/.local/bin/safehouse
    chmod +x ~/.local/bin/safehouse
    ```
  </Step>

  <Step title="Set up shell functions">
    Add wrapper functions to your shell config for easy invocation.

    ```bash ~/.zshrc theme={null}
    safe() { safehouse --add-dirs-ro=~/mywork "$@"; }
    claude() { safe claude --dangerously-skip-permissions "$@"; }
    ```
  </Step>

  <Step title="Run your first sandboxed agent">
    Run an agent with automatic policy generation and sandboxing.

    ```bash theme={null}
    claude "Check the project structure"
    ```
  </Step>
</Steps>

## Learn More

<CardGroup cols={2}>
  <Card title="Core Concepts" icon="book" href="/concepts/overview">
    Understand the sandbox model, policy architecture, and design philosophy
  </Card>

  <Card title="Usage Guide" icon="map" href="/usage/basic-usage">
    Learn how to use CLI options, shell functions, and workdir config
  </Card>

  <Card title="Policy Architecture" icon="diagram-project" href="/advanced/policy-architecture">
    Deep dive into policy assembly, profile layers, and customization
  </Card>

  <Card title="Debugging" icon="bug" href="/operations/debugging">
    Debug sandbox denials with logs and policy inspection
  </Card>
</CardGroup>
