Skip to content

Interactive REPL

The default surface for Lime is the streaming TUI started by running lime with no arguments.

Terminal window
lime

The REPL boots the workspace’s AGENTS.md, project .lime/ instructions, and any user-level memory automatically. Type a prompt; tokens stream, tool calls render inline as cards that update in place, reasoning summaries collapse and expand, and Lime checks permissions before any side effect.

Streaming layout

> find every TODO and group them by file
Searching workspace…
✓ glob_search **/*.rs (124 files)
✓ grep_search "TODO" (12 hits in 7 files)
✓ read_file src/auth.rs
## TODOs by file
**src/auth.rs** (3)
- line 42 — TODO: add refresh-token rotation
  • Token streaming is on by default for every provider.
  • Tool cards render inline. Status updates ( ran, running, failed) replace the card in-place rather than reflowing the buffer.
  • Reasoning summaries are folded by default; expand them to see the model’s thinking trace where the provider exposes one.
  • Bash and bash-session output is rendered with full ANSI color support and paged when long.

Slash commands

Press / at an empty prompt to open the slash-command palette. It is fuzzy matched and surfaces three sources together:

  1. Built-in commands — the registry shipped with Lime.
  2. Custom commands from ~/.lime/commands/*.md.
  3. Plugin-provided commands registered by enabled plugins.

Built-ins shadow collisions. See the Slash command reference for the full list.

Bash mode

Press ! at an empty prompt to drop into a one-shot shell line:

! cargo test -p lime-runtime audit_fixes

The command’s stdin / stdout are persisted as session messages — they become part of the conversation and can inform the model’s next turn. The transcript folds the input/output triple back into a single LocalShell row when shown to the model.

Switching mode and model mid-session

/model claude-sonnet-4-6
/permissions acceptEdits

These changes apply immediately to the active session and persist for the rest of the REPL run.

Cancelling a turn

Press Esc to cancel the current turn. Lime sends a cancel signal to the provider, stops streaming, and rolls back the session log to the last-completed turn so resume is consistent.

Exiting

End-of-file (Ctrl-D) or kill the process (Ctrl-C once to cancel a turn, twice to exit). There is no slash-command exit — close the terminal or press Ctrl-D.