Docs

Quickstart

Install the LinkCode desktop app, run the host (the LinkCode daemon) from source, and start your first thread with Claude Code, Codex, OpenCode, or Pi.

No installer for the host yet

The desktop app is a packaged download, but the host it connects to isn't — there's no installer, package, or bundled copy of it yet. This guide runs it from source instead, which takes about 15 minutes and requires git, Node.js, and pnpm. A packaged host is in development.

Before you begin

  • Supported OS: macOS or Windows for the desktop app. Linux support is in development.
  • An agent you can authenticate: either a Claude account already signed in via the claude CLI on this machine, or an Anthropic API key. The API-key path currently needs extra setup — see settings.
  • Optional — pull request status: install and sign in to the GitHub CLI (gh auth login) if you want pull request status to show up in the Git panel.
  • Optional — OpenCode: LinkCode doesn't bundle the OpenCode CLI. If you plan to use it, install opencode yourself so it's on the same PATH the host runs with — see OpenCode.

Set up

Install the desktop app

Download the build for your platform from the GitHub releases page and install it. Don't launch it yet — it has nothing to connect to until a host is running.

Clone the repo and install dependencies

The host ships as part of the LinkCode source repository. You'll need git, Node.js 24 or newer, and pnpm 11.

git clone https://github.com/arcboxlabs/linkcode.git
cd linkcode
pnpm install

Start the host and leave it running

Optional: enable in-app terminals

Skip this unless you need the Terminal panel. From apps/daemon, run pnpm run build:rust once (requires a stable Rust toolchain with cargo) — it builds the sidecar the host needs to open terminals. Everything else in LinkCode works without it.

cd apps/daemon
pnpm run dev

Leave this running in its own terminal — it's the process the desktop app talks to. A successful start prints a line like this:

[linkcode/daemon] listening on http://127.0.0.1:19523 (socket.io)

Launch the desktop app

Open the app you installed in step 1. It discovers the running host automatically by reading ~/.linkcode/runtime.json, so you shouldn't need to configure anything. If it can't find the host, or you're pointing it at a host on another machine, set the URL explicitly under Settings → Connection.

The desktop app connected to a local host: the sidebar shows the Chats section and a New Task button

Screenshot coming soon

/images/docs/quickstart-connected.png

If you see an "Unable to connect to the host" error instead, see troubleshooting.

Start your first thread

Pick an agent (start with Claude Code — it needs no separate installation), pick a folder to work in, or choose Chats if you just want to talk without a project attached. Type your prompt into the composer — the input box at the bottom of the thread — and send it.

If you picked Claude Code, watch for permission prompts as it works — they appear pinned above the composer, and it waits for your answer before acting on anything it isn't already cleared to do. Not every agent asks first; see the agent comparison for how each one handles approval.

A first thread with Claude Code: the agent working through a prompt, with a permission request pinned above the composer

Screenshot coming soon

/images/docs/quickstart-first-thread.png

Next steps

On this page