Milo CLI

Milo is a small coding agent that works in your terminal. It reads your repository, changes files with exact edits, runs the project’s real commands, and keeps you in control of the model and permissions.

Start here

  • Installation — build the CLI and put the milo command on your path.
  • Quickstart — start an interactive session and complete your first task.
  • Models and providers — choose the model and endpoint Milo uses.
  • CLI reference — interactive commands, headless runs, sessions, and configuration.

What Milo does

Milo keeps the whole coding loop in one process: understand the project, decide what to change, edit it, run checks, and explain the result. It reads AGENTS.md or CLAUDE.md for project-specific instructions before it starts.

$ cd path/to/project
$ milo

> add pagination to the users list

The current directory is the workspace. Milo can inspect files, run shell commands, and use three purpose-built tools: one for the shell, one for exact edits, and one for new files.

Control without ceremony

You choose the model. Milo remembers that choice, while the permission mode decides what its tools may do. Manual mode asks when an action is not already allowed, YOLO runs those actions automatically, and Plan Mode permits read-only exploration only.

Built-in recovery

Before a task can change tracked project files, Milo records a git-backed snapshot. Use /undo to restore the previous state and /redo to put the change back.