Products Open Source Blog About Us Contact Us Sign in
Documentation · lac-cli

lac-cli Docs

Everything you need to install, configure, and get the most out of lac-cli — your AI-native terminal toolkit.

v0.3.6 — latest PyPI

What is lac-cli?

lac-cli is an open-source AI terminal toolkit. It gives your shell natural language understanding, real-time autocomplete, an agentic coding assistant, and a multi-model debate engine — all in one pip install.

Plain English Shell

Type what you want. lac converts it to the right command and asks before running.

AI Autocomplete

Ghost text completions as you type. Press Tab to accept, keep typing to ignore.

LacAgent

Agentic coding assistant with filesystem access, project memory, undo/redo, and PlanMode.

LacMind

Multi-model debate engine. Models challenge each other's answers and vote on the best one.

Multi Agent Mode New in v0.3.6

Split complex tasks across 2–4 specialized agents running in parallel. A Project Manager reviews each agent's output and retries with feedback if needed, then synthesizes everything into a final summary.

Get started

Requires Python 3.9 or higher. Choose any of the methods below.

  • Install lac-cli via pip or the one-line installer script.
  • Run lac — the setup wizard runs on first launch.
  • Pick a provider (Claude, OpenAI, or Ollama) and enter your API key.
  • You're done. Launch the shell with lac shell or the agent with lac agent.
# Any platform (pip)
pip install lac-cli

# macOS / Linux (curl installer)
curl -fsSL https://lacai.io/install.sh | bash

# Windows (PowerShell)
iwr -useb https://lacai.io/install.ps1 | iex
The pip package is lac-cli on PyPI. After install, the lac command is available globally in your terminal.

Bring your own model

lac-cli works with any of the providers below. You pick one during the setup wizard and can swap at any time with lac shell --setup.

Claude (Anthropic)
OpenAI (GPT)
Ollama (offline)
Provider Key required Notes
claude Yes — Anthropic API key Best for complex reasoning and coding tasks
openai Yes — OpenAI API key GPT-4o and compatible models
ollama No Runs fully offline. Requires Ollama installed locally
To run without internet at any time: lac shell --offline. This switches to your local Ollama model automatically.

lac shell

The AI-powered interactive shell. Converts plain English to shell commands and shows real-time AI ghost-text completions as you type.

# Launch the AI shell
lac shell

# Switch provider / re-run setup wizard
lac shell --setup

# Run offline using local Ollama model
lac shell --offline
FlagDescription
--setup Re-run the provider setup wizard. Use this to swap models or update your API key.
--offline Bypass cloud providers and run using a local Ollama model. No internet required.
Plain English Commands: Type "show all files bigger than 100mb" and lac generates the correct command. You confirm before it runs — nothing executes without your approval.

lac agent

LacAgent is a full agentic coding assistant that runs inside your terminal. It can read and write files, remember your project context across sessions, undo/redo changes, and enter PlanMode before acting.

# Start the coding assistant in the current directory
lac agent

# Start in plan mode (plans before executing)
lac agent --plan
Project Memory

Persists context in .lac-memory.json at the project root. The agent remembers what you've built across sessions.

Undo / Redo

Every file change the agent makes is tracked. Type undo or redo at the prompt to roll back or re-apply.

PlanMode

The agent lays out its full plan before touching any file. Confirm, edit, or cancel before execution begins.

API Testing

Built-in HTTP request runner. Test endpoints directly from the agent chat without leaving your terminal.

Run lac agent from the root of your project directory. The agent scopes all filesystem access to that directory and writes memory to .lac-memory.json. Add this file to .gitignore if you don't want it committed.

/multi New in v0.3.6

Multi Agent Mode splits a complex task across multiple specialized agents that run in parallel. Each agent gets its own isolated context, a Project Manager reviews the output, and everything gets synthesized into a final summary when they're done.

# Trigger multi agent mode with your task
/multi refactor the auth module and add test coverage

# Works for any parallelisable task
/multi audit this codebase for security issues

How it works

  • Type /multi followed by your task. The system suggests 2–4 specialized agents based on what you asked.
  • Review the proposed agents — edit names, add more, or remove any before running.
  • Agents run in parallel, each in its own isolated context. Live progress panels show iterations, tool calls, and API responses in real time.
  • The Project Manager reviews each agent's output. If it meets requirements it's approved. If not, the agent retries with feedback — up to 3 times.
  • Once all agents finish, the Project Manager synthesizes their outputs into a single final summary.

Panel status colours

ColourMeaning
Cyan borderAgent is currently running
Green borderOutput approved by Project Manager
Red borderOutput rejected — agent will retry with feedback
Parallel execution

Agents work simultaneously — a task that would take one agent 10 minutes can finish in a fraction of the time.

Project Manager review

Every agent's output is reviewed before it's accepted. Agents retry up to 3 times with specific feedback if the output falls short.

Session-level undo

All file changes from the entire multi agent session are grouped. /undo reverts everything at once.

Good for

Codebase analysis, security audits, large refactors, or any task that naturally splits into independent parallel subtasks.

Multi Agent Mode runs inside lac agent — launch the agent first, then use /multi at the prompt.

/watch New in v0.3.5

Watch Mode opens Chrome with real-time browser monitoring and voice recognition. Browse your app, speak your intent, then send the full session timeline to the AI for analysis, debugging, and suggestions.

# Basic — prompts for a URL (defaults to localhost:3000)
/watch

# With URL
/watch https://yourapp.com

# Local dev server
/watch http://localhost:8000

What it captures

EventDetails
🎤 Voice Continuous speech recognition — everything you say is timestamped and sent to the AI
🖱️ Clicks Every click with element details — tag, id, class, and visible text
⌨️ Inputs Form field names and values as you type
🌐 Navigation URL changes including SPA client-side routing
📡 Network XHR/fetch requests and responses — method, URL, headers, body, status (JSON auto-detected)
❌ Errors JavaScript console errors and uncaught page errors

Example session

[10:14:03] +1.03s  NAV     https://localhost:8000/
[10:14:05] +3.84s  CLICK   button#login "Sign in"
[10:14:06] +4.29s  NAV     https://localhost:8000/auth
[10:14:08] +6.70s  INPUT   email = "user@example.com"
[10:14:08] +6.78s  VOICE   "test the login flow"
[10:14:15] +13.79s NETWORK → POST /auth/login | Body: {"email":"...","password":"..."}
[10:14:16] +14.11s NETWORK ← POST /auth/login 200 | Body: {"success":true,"token":"..."}
[10:14:20] +18.30s NAV     https://localhost:8000/dashboard
[10:14:22] +20.39s SEND    user triggered send to AI
A floating Send to AI button appears in the bottom-right of the browser. Click it when you're done browsing — the full event timeline is sent to the agent for analysis.

lac mind

LacMind opens a local web-based debate interface where multiple AI models receive the same prompt, challenge each other's responses across rounds, and vote on the best answer.

# Launch the debate interface (opens in browser)
lac mind
Best for complex research questions, architectural decisions, or any prompt where you want diverse model perspectives before settling on an answer.

Configuration

lac-cli stores your provider and key in a local config file. The setup wizard handles everything — but here's what you can adjust manually.

SettingDescription
provider Active provider: claude, openai, or ollama
api_key Your API key for the selected provider. Not required for Ollama.
autocomplete_delay Milliseconds before ghost-text suggestions appear. Lower = faster, more API calls.
ollama_model Model name for Ollama. Defaults to llama3. Change to any model you have pulled.

To re-run the setup wizard at any time: lac shell --setup

Project Memory

LacAgent persists context about your project in a .lac-memory.json file at the root of your working directory. This lets the agent pick up where it left off across sessions.

// .lac-memory.json — auto-generated by lac agent
{
  "project": "my-app",
  "stack": ["Laravel", "Blade", "MySQL"],
  "context": "...",
  "history": [...]
}
Add .lac-memory.json to your .gitignore to avoid committing it. The file may contain project-specific notes and partial code.

Changelog

Recent releases and what changed.

VersionHighlights
v0.3.6 latest Multi Agent Mode (/multi) — parallel specialized agents with Project Manager review, live progress panels, and session-level undo
v0.3.5 Watch Mode (/watch) — browser monitoring with voice recognition, click/input/network capture, and AI session analysis
v0.3.3 Multi-provider fallback chain, raised agent iteration cap, native tool schemas
v0.3.0 LacAgent GA — project memory, undo/redo, PlanMode, API testing
v0.2.6 Persistent .lac-memory.json, improved provider selection UX
v0.2.0 LacMind debate engine, Ollama offline support
v0.1.0 Initial release — AI shell, ghost-text autocomplete, Claude + OpenAI support

We use cookies to keep you signed in and to serve ads via Google AdSense. By continuing to use this site you agree to our Privacy Policy.