# Terminal agent

> An agent that reads, searches and edits files in your project and runs commands on your machine, with your approval.


These commands need the CLI installed and signed in. See [Install the CLI](/en/cli/install).

Run `notholy` inside a project. The agent can use these tools on your machine:

| Tool | Does |
|---|---|
| `read`, `grep`, `glob` | Read and search files |
| `edit`, `write` | Change files |
| `bash` | Run a command |
| `cve_lookup`, `cve_search`, `web_search`, `read_url` | Remote research tools |

## Modes

| Mode | Behavior |
|---|---|
| `plan` | Read only |
| `ask` | Default. Asks before every write and every command |
| `auto-edit` | Edits without asking. Commands still ask |
| `yolo` | Never asks. Needs `--yolo` on every run |

Commands run on your machine under your authorization. NotHoly's servers never run anything against your targets.

Put project instructions in `NOTHOLY.md` at the root. File contents and command output are treated as data, never as instructions to the agent.

Slash commands: `/model`, `/effort`, `/cost`, `/compact`, `/mcp`, `/resume`. Sessions are saved in `~/.notholy/sessions` with permission `600`.

```bash
notholy --mode plan -p "map the auth flow in this repo"
```

## Next

- [Connect and run](/en/cli/connect-and-run)
