Less busywork.
Build everywhere.

Meet the software engineering agent that works where you do. In your terminal, browser, or editor. With your models and your tools.

macOS & Linux Bring your own model credentials

~/kodelet

# Your terminal. Your project.

kodelet chat

From deep to flair"How does the skill tool work in Kodelet? Walk me through the code."

01 / Your way of working

Close the terminal. Keep the work going.

Start in the TUI. Follow the same task in your browser—without starting over.

Silent 4K recording at twice normal speed. Run kodelet chat and ask it to trace the daemon connection and live-stream reattachment without changing files. Press Ctrl+C to exit the TUI while the task is running. Run kodelet server url --open and open the same conversation in the Web UI. Reopen kodelet chat and use Ctrl+L to find the running conversation. Both views stream the same ongoing code analysis, side by side. The browser follows the transcript to the bottom, and the recording ends with the completed explanation visible in both views. The task was not restarted.

Explore terminal, browser, editor, and automation commands

Talk it through. Then ship it.

Open the terminal UI for an interactive session. Return to a saved conversation whenever you need.

# Start in your project directory
kodelet chat

# Continue a saved conversation
kodelet chat --resume CONVERSATION_ID

A little more room to think.

Start the local daemon and open its Web UI. Prefer to manage the process yourself? See the foreground setup.

# Start or reuse your local background daemon
kodelet server start

# Open the Web UI with its local access token
kodelet server url --open

Bring the agent to your editor.

Connect an ACP-compatible client to Kodelet. The local daemon starts automatically.

# Use this command in your editor's ACP setup
kodelet acp

# Or connect to your managed server and runner
kodelet acp --server https://kodelet.example \
  --runner workstation

Build it into your own workflow.

Pipe context into a task, export a conversation, or integrate with the TypeScript SDK.

git diff main | kodelet run "Review these changes"

# Export a saved conversation as structured data
kodelet conversation show ID --format json

# Use the final response in a shell workflow
kodelet run --result-only "Summarize this project"

02 / Make it yours

Your tools. Your machines. Your models.

Extend Kodelet with plugins, put another machine to work, and choose your model right from the terminal.

Bring the tools you rely on.

Add tools, skills, and reusable workflows through plugins. Give Kodelet capabilities that match the work you actually do.

Here, a Python extension turns a request in terminal chat into an image of London, ready to open in the Web UI.

Extend your agent

Silent walkthrough of the Nano Banana plugin. Read the real Python tool definition with bat, open kodelet chat, and ask it to generate an image of London at golden hour. The local plugin generates the image. Open the same conversation in the Web UI, then open the image at full size in a browser tab. Preparation pauses are shortened; the image generation and its result are real.

Nano Banana · Code to image · 1.2× playback. Download video

Your terminal. Another machine.

Keep your terminal here and run workspace tools there. Connect a runner on another machine to work with its files, dependencies, and environment.

Start on Fedora, find the connected MacBook Air, and ask Kodelet to introduce the machine it is working on.

Connect a runner
Fedora → MacBook Air

# Find the machine you want to work on.

fastfetch

kodelet runner list | rg m3-air

# Use its runner ID to start a conversation.

kodelet chat --runner RUNNER_ID

Ask the remote machine“Give me an introduction to this machine.”

Terminal walkthrough. Run fastfetch on Fedora, filter kodelet runner list for m3-air, and open kodelet chat with the connected MacBook Air runner. Ask for an introduction to the machine. Kodelet inspects the remote machine rather than the Fedora client.

Fedora terminal · MacBook Air workspace. Download recording

Pick the model for the job.

Choose from your configured model profiles without leaving the terminal. Use the setup that suits the task ahead.

Press Ctrl+T for the model profile and Ctrl+Y for reasoning effort before your first message. Each conversation keeps those settings.

Set up your models
Your choice of model

# Choose your setup before the first message.

kodelet chat

Start with the model that fitsCtrl+T → Model profileCtrl+Y → Reasoning effort

Terminal walkthrough. Open kodelet chat, press Ctrl+T, move up and down through the configured model profiles, and confirm with Enter. Press Ctrl+Y, explore the reasoning efforts with the arrow keys, and confirm. Leave a draft prompt without submitting it. Both selections happen before the first message; this is not a model change within an existing conversation.

A new conversation · Your model and reasoning effort. Download recording

03 / From zero to building

A good place to start.

Full setup guide
01

Install Kodelet

Homebrew on macOS or Linux.

brew tap jingkaihe/kodelet
brew install kodelet
Prefer the install script? →
02

Bring a model

Set credentials before the daemon starts.

export OPENAI_API_KEY="your-api-key"
export KODELET_WEAK_MODEL="gpt-5.6-luna"
Other providers & authentication →
03

Make yourself at home

Start the TUI in your project directory.

cd your-project
kodelet chat
Or open the Web UI →

Already running Kodelet? Restart the daemon after changing its credentials or configuration: kodelet server restart.

04 / Field notes

Learning by building.

From the blog

Your tools. Your models. Your agent.

Open source, so you can see how it works. Extensible, so you can change what it does.

Make something with Kodelet