<p align="center">
  <a href="https://github.com/DomLynch/DomCode">
    <picture>
      <source srcset="packages/console/app/src/asset/logo-ornate-dark.svg" media="(prefers-color-scheme: dark)">
      <source srcset="packages/console/app/src/asset/logo-ornate-light.svg" media="(prefers-color-scheme: light)">
      <img src="packages/console/app/src/asset/logo-ornate-light.svg" alt="DomCode logo">
    </picture>
  </a>
</p>
<p align="center">DomCode: a customized OpenCode fork for local-first autonomous coding in the terminal and desktop.</p>
<p align="center">
  <a href="https://github.com/DomLynch/DomCode"><img alt="Repository" src="https://img.shields.io/badge/github-DomCode-black?style=flat-square" /></a>
  <a href="https://github.com/DomLynch/DomCode/actions/workflows/publish.yml"><img alt="Build status" src="https://img.shields.io/github/actions/workflow/status/DomLynch/DomCode/publish.yml?style=flat-square&branch=main" /></a>
</p>

<p align="center">
  <a href="README.md">English</a> |
  <a href="README.zh.md">简体中文</a> |
  <a href="README.zht.md">繁體中文</a> |
  <a href="README.ko.md">한국어</a> |
  <a href="README.de.md">Deutsch</a> |
  <a href="README.es.md">Español</a> |
  <a href="README.fr.md">Français</a> |
  <a href="README.it.md">Italiano</a> |
  <a href="README.da.md">Dansk</a> |
  <a href="README.ja.md">日本語</a> |
  <a href="README.pl.md">Polski</a> |
  <a href="README.ru.md">Русский</a> |
  <a href="README.bs.md">Bosanski</a> |
  <a href="README.ar.md">العربية</a> |
  <a href="README.no.md">Norsk</a> |
  <a href="README.br.md">Português (Brasil)</a> |
  <a href="README.th.md">ไทย</a> |
  <a href="README.tr.md">Türkçe</a> |
  <a href="README.uk.md">Українська</a> |
  <a href="README.bn.md">বাংলা</a> |
  <a href="README.gr.md">Ελληνικά</a> |
  <a href="README.vi.md">Tiếng Việt</a>
</p>

### Install

DomCode is the public product name for this fork. The CLI binary is `domcode`.
The npm package name `domcode` is not published yet, and GitHub release artifacts are being moved over to the DomCode naming. Until that packaging pass lands, the canonical install path is from source:

```bash
git clone https://github.com/DomLynch/DomCode.git
cd DomCode
bun install
bun run --cwd packages/opencode dev
```

For a local CLI binary build:

```bash
bun run --cwd packages/opencode build
```

### Desktop App

DomCode has desktop app code in this repo. Public binary releases will be published under the DomCode name once packaging metadata and release automation are fully switched over.

#### Installer Path

The installer script already targets DomCode paths and installs into `~/.domcode/bin` by default.

### Agents

DomCode includes two built-in agents you can switch between with the `Tab` key.

- **build** - Default, full-access agent for development work
- **plan** - Read-only agent for analysis and code exploration
  - Denies file edits by default
  - Asks permission before running bash commands
  - Ideal for exploring unfamiliar codebases or planning changes

Also included is a **general** subagent for complex searches and multistep tasks.
This is used internally and can be invoked using `@general` in messages.

Learn more about agents in the fork docs as they land in this repo.

### Documentation

The source of truth for configuration, agents, desktop packaging, and provider support is this repository.

### Contributing

If you're interested in contributing to DomCode, please read our [contributing docs](./CONTRIBUTING.md) before submitting a pull request.

### Building on DomCode

DomCode is a customized OpenCode fork. Internal folders such as `packages/opencode` still reflect the upstream codebase layout, but the public fork identity is DomCode.

### FAQ

#### How is this different from Claude Code?

It's very similar to Claude Code in terms of capability. Here are the key differences:

- 100% open source
- Not coupled to any provider. DomCode can be used with Claude, OpenAI, Google, Z.AI-compatible endpoints, or local models.
- Out-of-the-box LSP support
- A focus on TUI and desktop workflows
- A desktop-first and TUI-first workflow with optional local headless runtime

---

**Repository** [GitHub](https://github.com/DomLynch/DomCode)

## License

[FSL-1.1-MIT](./LICENSE) — Functional Source License.

Free to use for personal projects, indie development, hobbyist use, and non-commercial purposes. Converts to MIT on 28 April 2028. Commercial use that competes with DomCode is not permitted.
