codeden 0.5.0 → 0.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +14 -13
- package/dist/cli.js +1 -1
- package/dist/drizzle/20261111152627_session_plan_mode/migration.sql +1 -0
- package/dist/drizzle/20261111152627_session_plan_mode/snapshot.json +3494 -0
- package/dist/drizzle/20261112083233_session_forked_from/migration.sql +1 -0
- package/dist/drizzle/20261112083233_session_forked_from/snapshot.json +3504 -0
- package/dist/{main-BQwSt6Az.js → main-BTA6NERX.js} +4386 -1396
- package/dist/main-BTA6NERX.js.map +1 -0
- package/dist/{main-Drh58zq6.js → main-DgIYOEGD.js} +7 -3
- package/dist/main-DgIYOEGD.js.map +1 -0
- package/dist/{runner-WAbCC8k2.js → runner-C59QJvYP.js} +5641 -976
- package/dist/runner-C59QJvYP.js.map +1 -0
- package/dist/runner.js +1 -1
- package/dist/web/assets/{core-aeJ3srYS.js → core-BE80EdZx.js} +1 -1
- package/dist/web/assets/engine-oniguruma-CYbHTBkj.js +1 -0
- package/dist/web/assets/{highlighted-body-JLMTFACH-NhDHKomc.js → highlighted-body-JLMTFACH-DKf-ZukU.js} +1 -1
- package/dist/web/assets/{highlights-af6Fohu4.js → highlights-CXgTTgn7.js} +1 -1
- package/dist/web/assets/index-Bq-TWYoS.css +1 -0
- package/dist/web/assets/{index-iad71iug.js → index-Cr_5sx1k.js} +238 -215
- package/dist/web/assets/langs-2fbnR5VK.js +1 -0
- package/dist/web/assets/mermaid-WFAXDIZX-VZd02gKu.js +1 -0
- package/dist/web/assets/{shiki-Do52T6bJ.js → shiki-BoVdalr2.js} +2 -2
- package/dist/web/assets/{stream-tokenizer-DFPcXHG7.js → stream-tokenizer-Ccxf5ToF.js} +1 -1
- package/dist/web/assets/{themes-B76yFk4c.js → themes-C9K67wea.js} +2 -2
- package/dist/web/index.html +2 -2
- package/package.json +3 -2
- package/dist/main-BQwSt6Az.js.map +0 -1
- package/dist/main-Drh58zq6.js.map +0 -1
- package/dist/runner-WAbCC8k2.js.map +0 -1
- package/dist/web/assets/engine-oniguruma-CyGcXvAw.js +0 -1
- package/dist/web/assets/index-BlGTOYYh.css +0 -1
- package/dist/web/assets/langs-DEIJuibn.js +0 -1
- package/dist/web/assets/mermaid-WFAXDIZX-RdnNjs5C.js +0 -1
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# CodeDen
|
|
4
4
|
|
|
5
|
-
**A local-first harness for coding agents.** Run Claude Code and
|
|
5
|
+
**A local-first harness for coding agents.** Run Claude Code, Codex and OpenCode side by side in a calm, focused workspace, and when you're ready, let a small software factory work through your backlog while every step stays visible in GitHub.
|
|
6
6
|
|
|
7
7
|
[](https://www.codeden.app)
|
|
8
8
|
[](https://www.npmjs.com/package/codeden)
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
npx codeden
|
|
19
19
|
```
|
|
20
20
|
|
|
21
|
-
That's the whole install. CodeDen starts a local server, opens your browser on an already signed-in URL, and reuses the Claude Code, Codex, GitHub and git setup you already have. No accounts, no license keys, no hosted backend, no telemetry.
|
|
21
|
+
That's the whole install. CodeDen starts a local server, opens your browser on an already signed-in URL, and reuses the Claude Code, Codex, OpenCode, GitHub and git setup you already have. No accounts, no license keys, no hosted backend, no telemetry.
|
|
22
22
|
|
|
23
23
|
Prefer an app? **[Download the desktop app](https://github.com/leonvanzyl/codeden/releases/latest)** for Windows, macOS or Linux: the same CodeDen in its own window, with a tray icon, notifications and automatic updates, and no Node.js needed. See [The desktop app](https://github.com/leonvanzyl/codeden/blob/main/docs/desktop.md).
|
|
24
24
|
|
|
@@ -45,7 +45,7 @@ Prefer an app? **[Download the desktop app](https://github.com/leonvanzyl/codede
|
|
|
45
45
|
|---|---|
|
|
46
46
|
| **Node.js 24+** | `node --version` |
|
|
47
47
|
| **git** | with `user.name` and `user.email` set |
|
|
48
|
-
| **An agent CLI, signed in** | [Claude Code](https://docs.claude.com/en/docs/claude-code) (`claude`)
|
|
48
|
+
| **An agent CLI, signed in** | [Claude Code](https://docs.claude.com/en/docs/claude-code) (`claude`), [Codex CLI](https://developers.openai.com/codex/cli) (`codex`) and/or [OpenCode](https://opencode.ai) 2.2+ (`opencode`). At least one is required |
|
|
49
49
|
| **GitHub CLI** *(optional)* | `gh auth login` unlocks issues, pull requests, evidence and the factory. Local-only folders work without it |
|
|
50
50
|
| **Edge or Chrome** *(optional)* | for the browser panel and the agents' browser tools |
|
|
51
51
|
|
|
@@ -57,7 +57,7 @@ npx codeden # or: npm i -g codeden && codeden
|
|
|
57
57
|
|
|
58
58
|
Or install the **desktop app** from the [latest release](https://github.com/leonvanzyl/codeden/releases/latest) (`CodeDen-Setup-<version>.exe` on Windows, a `.dmg` on macOS, an AppImage or `.deb` on Linux). It needs no Node.js, uses the same data as `npx codeden` (`~/.codeden`), lives in the tray and updates itself. Builds without a publisher signature show a warning the first time you open them: on Windows choose **More info › Run anyway**; on macOS open CodeDen once, then choose **Open Anyway** under **System Settings › Privacy & Security**. If macOS says the app is "damaged", see [Unsigned builds](https://github.com/leonvanzyl/codeden/blob/main/docs/desktop.md#unsigned-builds).
|
|
59
59
|
|
|
60
|
-
1. The **setup checklist** detects Claude Code, Codex, GitHub, your git identity and a browser, and only asks about what's missing. Each failed check has one fix: an install command, or a **Sign in** button that runs the tool's own login in an embedded terminal.
|
|
60
|
+
1. The **setup checklist** detects Claude Code, Codex, OpenCode, GitHub, your git identity and a browser, and only asks about what's missing. Each failed check has one fix: an install command, or a **Sign in** button that runs the tool's own login in an embedded terminal.
|
|
61
61
|
2. **Add a project:** pick a local folder (a server-side folder picker) or paste a GitHub URL to clone.
|
|
62
62
|
3. **Start a session.** The agent works in its own git worktree and branch, so your checkout is never touched.
|
|
63
63
|
|
|
@@ -95,11 +95,11 @@ Background work you switch on per project: **security audit**, **refactor sweep*
|
|
|
95
95
|
|
|
96
96
|

|
|
97
97
|
|
|
98
|
-
###
|
|
98
|
+
### A software factory, and an experimental dark factory
|
|
99
99
|
|
|
100
|
-
Each project climbs a ladder: **Manual** → **Assisted** (the default) → **
|
|
100
|
+
Each project climbs a ladder: **Manual** → **Assisted** (the default) → **Software factory** → **Dark factory**. In a **software factory**, the GitHub issues you and the people you trust file are classified as a bug, a feature or a docs change, and a pool of agents runs each through its pipeline: reproduce, fix and review a bug; analyze, implement and review a feature; change the docs. Every pull request carries its test results, and screenshots for UI changes; you merge it, or turn on auto-merge. Issues from anyone else (on a public repository, anyone at all) are ignored until you let one in, and what you let in is never merged automatically. A **dark factory** adds a scheduled scout that reviews the app against your vision with a few long-lived reviewer agents and files the issues itself. The project page draws the pipelines live: click an issue to open the agent working on it. Limits (agents at once, a daily budget, pause after repeated failures) are enforced by the server, and a kill switch stops everything with one click. Both are **experimental**. [The software factory and the dark factory](https://github.com/leonvanzyl/codeden/blob/main/docs/software-factory.md).
|
|
101
101
|
|
|
102
|
-

|
|
103
103
|
|
|
104
104
|
### Workbench
|
|
105
105
|
|
|
@@ -152,13 +152,13 @@ When an agent finishes, CodeDen suggests two to four next prompts as one-click c
|
|
|
152
152
|
│ runner protocol over WebSocket │ events + acks
|
|
153
153
|
┌───────────────▼──────────────────────────────────────┴──────────────┐
|
|
154
154
|
│ RUNNER (separate process, next to the code) │
|
|
155
|
-
│ Claude Agent SDK · codex app-server ·
|
|
155
|
+
│ Claude Agent SDK · codex app-server · opencode serve · node-pty │
|
|
156
156
|
│ Chromium over CDP · worktrees, checkpoints, git · MCP proxy │
|
|
157
157
|
└──────────────────────────────────────────────────────────────────────┘
|
|
158
158
|
```
|
|
159
159
|
|
|
160
160
|
- **Two processes.** The **server** owns the database, orchestration, the inbox, automations and GitHub sync, and serves the UI. The **runner** hosts the agent processes, terminals, the browser and git. If the server restarts (an update, a crash), running agents keep going; the runner journals their events until the server is back.
|
|
161
|
-
- **Real SDKs and protocols.** Claude Code runs through the Claude Agent SDK using your installed `claude` binary; Codex runs through `codex app-server` over JSON-RPC. No scraped terminal output.
|
|
161
|
+
- **Real SDKs and protocols.** Claude Code runs through the Claude Agent SDK using your installed `claude` binary; Codex runs through `codex app-server` over JSON-RPC; OpenCode runs as a private `opencode serve` per session, over its HTTP API and event stream. No scraped terminal output.
|
|
162
162
|
- **Everything is an event.** Agent activity is an append-only event log in SQLite, so every action can be seen, replayed and traced to an issue, branch or PR.
|
|
163
163
|
- **Agents reach CodeDen through MCP.** Each session gets a role-scoped token for CodeDen's internal MCP server (`report_progress`, `ask_user`, `create_pull_request`, `attach_evidence`, the browser tools, `generate_image`, ...). Tools outside a role are never listed.
|
|
164
164
|
|
|
@@ -186,7 +186,7 @@ Details and how to report a vulnerability: [docs/security.md](https://github.com
|
|
|
186
186
|
| API keys | Settings, stored in the OS keychain |
|
|
187
187
|
| Per-project setup | `.codeden/project.json` in the repo: worktree setup commands and the dev server |
|
|
188
188
|
| Automations | `~/.codeden/automations/*.md` (all projects) and `<repo>/.codeden/automations/*.md` |
|
|
189
|
-
| Project vision | `<repo>/.codeden/VISION.md` (
|
|
189
|
+
| Project vision | `<repo>/.codeden/VISION.md` (software and dark factory) |
|
|
190
190
|
|
|
191
191
|
Inside the data directory:
|
|
192
192
|
|
|
@@ -201,6 +201,7 @@ Inside the data directory:
|
|
|
201
201
|
artifacts/ screenshots and files shared in chat
|
|
202
202
|
orchestrator/ the orchestrator's working directory
|
|
203
203
|
backups/ copies of config files taken before CodeDen overwrote them
|
|
204
|
+
agent-config/ hooks you switched off on the Agents page (until you enable them)
|
|
204
205
|
logs/runner.log runner output
|
|
205
206
|
deps/ Claude Code support, installed on demand
|
|
206
207
|
app/<version>/ CodeDen versions installed by one-click updates
|
|
@@ -260,7 +261,7 @@ CodeDen checks npm for a new version when it starts and every 6 hours (only the
|
|
|
260
261
|
## FAQ
|
|
261
262
|
|
|
262
263
|
**Do I need API keys?**
|
|
263
|
-
No. CodeDen runs your installed `claude` and `
|
|
264
|
+
No. CodeDen runs your installed `claude`, `codex` and `opencode` CLIs, which use their own logins, including claude.ai and ChatGPT subscriptions. CodeDen never implements a login of its own and never asks for a credential it can already use. API keys are an optional extra for Gemini or OpenAI image generation and cloud voice. Check your provider's terms for how your plan may be used.
|
|
264
265
|
|
|
265
266
|
**Where does my data go?**
|
|
266
267
|
It stays on your machine, in `~/.codeden/`. CodeDen has no account system and no hosted backend. The only network traffic is what you set up: your agents talking to their providers, GitHub (through your `gh` login), and the optional image and voice engines you enable.
|
|
@@ -284,7 +285,7 @@ Windows, macOS and Linux. Windows is tested first.
|
|
|
284
285
|
Yes. Turn on **Settings › Network access**, set a password, and scan the QR code with your phone on the same Wi-Fi (or over your own VPN such as Tailscale). The UI adapts to phones and tablets, and **Add to Home Screen** opens it full screen. Plain http addresses mean no notifications or microphone on the phone. See [Phones, tablets and network access](https://github.com/leonvanzyl/codeden/blob/main/docs/remote-access.md).
|
|
285
286
|
|
|
286
287
|
**Is the dark factory safe to leave running?**
|
|
287
|
-
It's experimental. Read [
|
|
288
|
+
It's experimental. Read [The software factory and the dark factory](https://github.com/leonvanzyl/codeden/blob/main/docs/software-factory.md) first, start with the software factory on a sandbox repository with auto-merge off, set a budget, trusted authors and protected areas, and keep the kill switch in reach.
|
|
288
289
|
|
|
289
290
|
## Documentation
|
|
290
291
|
|
|
@@ -295,7 +296,7 @@ It's experimental. Read [Autonomy and the dark factory](https://github.com/leonv
|
|
|
295
296
|
| [Orchestration](https://github.com/leonvanzyl/codeden/blob/main/docs/orchestration.md) | Orchestrator, PMs, agents, work keys, conflicts and notices |
|
|
296
297
|
| [GitHub](https://github.com/leonvanzyl/codeden/blob/main/docs/github.md) | Issues, PRs, checks, reviews and the evidence branch |
|
|
297
298
|
| [Automations](https://github.com/leonvanzyl/codeden/blob/main/docs/automations.md) | Triggers, guards, templates and writing your own |
|
|
298
|
-
| [
|
|
299
|
+
| [The software factory and the dark factory](https://github.com/leonvanzyl/codeden/blob/main/docs/software-factory.md) | Modes, pipelines, trusted authors, the scout, the vision file, merge checks, limits and the kill switch |
|
|
299
300
|
| [Workbench](https://github.com/leonvanzyl/codeden/blob/main/docs/workbench.md) | Diffs, checkpoints, files, terminal, browser, composer, shortcuts |
|
|
300
301
|
| [Agent configuration](https://github.com/leonvanzyl/codeden/blob/main/docs/agent-config.md) | Memory, skills, subagents and MCP servers |
|
|
301
302
|
| [Voice and images](https://github.com/leonvanzyl/codeden/blob/main/docs/voice-and-images.md) | Dictation, read-aloud and image generation |
|
package/dist/cli.js
CHANGED
|
@@ -242,7 +242,7 @@ async function run() {
|
|
|
242
242
|
console.log(selfVersion);
|
|
243
243
|
process.exit(0);
|
|
244
244
|
}
|
|
245
|
-
await import("./main-
|
|
245
|
+
await import("./main-BTA6NERX.js");
|
|
246
246
|
}
|
|
247
247
|
/** Settles once this copy's CLI has loaded (an older launcher that switched here awaits it). */
|
|
248
248
|
const started = run();
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
ALTER TABLE `sessions` ADD `plan_mode` integer DEFAULT false NOT NULL;
|