explaingit

21st-dev/1code

5,522TypeScriptAudience · vibe coderComplexity · 3/5LicenseSetup · moderate

TLDR

A desktop app that gives AI coding agents like Claude Code a visual interface, see what files the agent edits, review changes before they apply, and keep your main codebase safe in an isolated workspace.

Mindmap

mindmap
  root((repo))
    What it does
      Visual AI agent UI
      Safe isolated workspace
    Key features
      Git worktree isolation
      Diff preview
      Plan mode
    Supported agents
      Claude Code
      OpenAI Codex
    Integrations
      GitHub events
      Linear events
      Slack events
    Tech stack
      TypeScript
      Bun
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Run Claude Code or OpenAI Codex through a visual desktop app instead of a terminal, with real-time file and diff previews.

USE CASE 2

Let an AI agent work on your codebase in a safe isolated copy, then review and commit only the changes you approve.

USE CASE 3

Set up automated coding workflows triggered by GitHub, Linear, or Slack events without writing glue code.

USE CASE 4

Run AI coding sessions in a cloud sandbox that continues working even when your laptop is closed.

Tech stack

TypeScriptBun

Getting it running

Difficulty · moderate Time to first run · 30min

Requires Bun installed to build from source, or a paid subscription at 1code.dev for pre-built downloads and cloud background agents.

Free to use and modify for any purpose including commercially, as long as you include the license notice.

In plain English

1Code is an open-source desktop application that provides a unified interface for running AI coding agents, including Claude Code and OpenAI Codex. Instead of running these agents from the command line, you interact with them through a visual app that shows you what the agent is doing in real time, including which files it is editing, what terminal commands it is running, and what changes it is making before they are applied. A central feature is git worktree isolation. When you start a chat session with an agent, the app creates a separate isolated copy of your codebase for that session. This means the agent works without touching your main branch or interfering with other work, and you can review and roll back changes from any point in the conversation. The app includes a built-in git client for staging, committing, and pushing changes to GitHub, a file viewer with keyboard search, an integrated terminal, and diff previews that show exactly what the agent changed. There is also a plan mode where the agent asks clarifying questions and produces a step-by-step plan for your review before it starts making any changes. Background agents are supported: these run in cloud sandboxes and continue working even when your laptop is closed. The app also exposes an API so you can trigger agents programmatically from other tools, and it supports automations that fire based on events in GitHub, Linear, or Slack. You can build the app from source using Bun and a few prerequisites, or subscribe at 1code.dev for pre-built downloads and background agent access. The project is released under the Apache 2.0 license.

Copy-paste prompts

Prompt 1
Walk me through building 1code from source using Bun on a Mac and connecting it to Claude Code for the first time.
Prompt 2
How does 1code's git worktree isolation work? Show me how to start a new agent session, review the diff, and commit only selected changes.
Prompt 3
Set up a 1code automation that triggers a Claude Code agent whenever a new GitHub issue is labeled 'needs-fix' in my repo.
Prompt 4
How do I use the 1code API to trigger an agent session programmatically from a script so it runs without opening the desktop app?
Open on GitHub → Explain another repo

← 21st-dev on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.