Skip to content

Pages

  • Getting started
  • Install
  • Sessions
  • Automation
  • Channels
  • Sandboxing
  • Command line
  • Models & providers
  • Settings
  • Instructions
  • Prompt templates
  • Skills
  • Themes
  • Keybindings
  • Layout
  • Extensions
  • Packages
  • SDK
  • Compatibility

Getting started

ulo is the coding agent you can put anywhere. It runs on macOS and glibc Linux, on ARM64 and x86-64, and works in any directory you trust.

Install

The installer verifies the release for your platform and writes the binary to ~/.local/bin. Run ulo --version to print the build you have. Install covers package managers, preview channels, and builds from source.

Open a project

Start ulo in the directory you want it to work in:

Shell
cd your-project ulo

On the first visit, ulo asks whether you trust the directory. Trust lets ulo load the repository's own instructions and resources. Trust is not a sandbox.

A session with no terminal cannot answer the trust panel. Record the decision first with ulo trust [dir]. Instructions explains what trust loads.

Connect a model

Run /login and follow the provider's sign-in or API-key flow. Then open /models and pick a model.

  • /login <provider> connects one provider by name.
  • For scripts, a provider's usual environment variable works, such as ANTHROPIC_API_KEY.

Models & providers covers local servers, ~/.ulo/models.json, context windows, and pricing.

Run your first task

Type a question or describe a change, then press enter. ulo reads files, edits code, and runs shell commands to answer:

Find the authentication entry point. Explain how a request reaches the session check.

For an edit, name the behavior you want and the checks that should pass. Read the diff and the test output before you commit.

KeyAction
ctrl+oopen the transcript reader
escreturn to the composer
ctrl+ccancel the running turn

Where to go next

  • Sessions: resume, branch, compact, and export a conversation.
  • Settings: ~/.ulo, and every preference in it.
  • Command line: run options, and the commands inside a session.
  • Extensions: add tools, commands, and hooks in any language.

Troubleshooting

SymptomWhat to check
ulo: command not foundAdd ~/.local/bin to PATH and open a new terminal. Package managers install into a directory PATH already has.
/models lists nothingRun /login to connect a provider. For a local model, start its server before you open the picker.
The trust panel keeps returningThe directory is untrusted. Answer the panel, or record the decision with ulo trust [dir].
You need the full referenceulo docs lists every topic, and ulo docs <topic> prints one.