codeden 0.1.0 → 0.2.0

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.
Files changed (37) hide show
  1. package/README.md +25 -1
  2. package/dist/cli.js +214 -56089
  3. package/dist/cli.js.map +1 -1
  4. package/dist/drizzle/20261108041036_session_worktree_cleanup/migration.sql +2 -0
  5. package/dist/drizzle/20261108041036_session_worktree_cleanup/snapshot.json +3424 -0
  6. package/dist/drizzle/20261108045102_project_pin_order/migration.sql +4 -0
  7. package/dist/drizzle/20261108045102_project_pin_order/snapshot.json +3444 -0
  8. package/dist/drizzle/20261108052259_queued_message_sender/migration.sql +1 -0
  9. package/dist/drizzle/20261108052259_queued_message_sender/snapshot.json +3454 -0
  10. package/dist/main-CzmG0d8t.js +59 -0
  11. package/dist/main-CzmG0d8t.js.map +1 -0
  12. package/dist/main-pXwL7GDQ.js +58418 -0
  13. package/dist/main-pXwL7GDQ.js.map +1 -0
  14. package/dist/{runner-CoJjefjZ.js → runner-CJetH9jW.js} +2182 -490
  15. package/dist/runner-CJetH9jW.js.map +1 -0
  16. package/dist/runner.js +16 -52
  17. package/dist/runner.js.map +1 -1
  18. package/dist/web/assets/{core-DpRfWkWN.js → core-BeOBW-Wr.js} +1 -1
  19. package/dist/web/assets/engine-oniguruma-BLpLufIT.js +1 -0
  20. package/dist/web/assets/{highlighted-body-JLMTFACH-H03v731F.js → highlighted-body-JLMTFACH-D-L40tHI.js} +1 -1
  21. package/dist/web/assets/{highlights-Dz1cMTeO.js → highlights-ZCqssNA3.js} +1 -1
  22. package/dist/web/assets/index-D8qaPF_E.css +1 -0
  23. package/dist/web/assets/index-DR-I5EC5.js +892 -0
  24. package/dist/web/assets/langs-DKjK0GUN.js +1 -0
  25. package/dist/web/assets/mermaid-WFAXDIZX-fZTzmfWq.js +1 -0
  26. package/dist/web/assets/{shiki-NQ4ryC1Y.js → shiki-CWXnlX2q.js} +2 -2
  27. package/dist/web/assets/{stream-tokenizer-BxwNb7lW.js → stream-tokenizer-BpK1CZzW.js} +1 -1
  28. package/dist/web/assets/{themes-CNX2CYCy.js → themes-Bm7B3n10.js} +2 -2
  29. package/dist/web/favicon.svg +1 -1
  30. package/dist/web/index.html +2 -2
  31. package/package.json +1 -1
  32. package/dist/runner-CoJjefjZ.js.map +0 -1
  33. package/dist/web/assets/engine-oniguruma-C_TN-UZT.js +0 -1
  34. package/dist/web/assets/index-BG4dO7iI.js +0 -885
  35. package/dist/web/assets/index-BpVrEjZE.css +0 -1
  36. package/dist/web/assets/langs-D6g8tc-L.js +0 -1
  37. package/dist/web/assets/mermaid-WFAXDIZX-DbjU3Ezf.js +0 -1
package/README.md CHANGED
@@ -19,6 +19,8 @@ npx codeden
19
19
 
20
20
  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
21
 
22
+ 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).
23
+
22
24
  ---
23
25
 
24
26
  ## Contents
@@ -29,6 +31,7 @@ That's the whole install. CodeDen starts a local server, opens your browser on a
29
31
  - [Security model](#security-model)
30
32
  - [Configuration](#configuration)
31
33
  - [CLI reference](#cli-reference)
34
+ - [Updating](#updating)
32
35
  - [FAQ](#faq)
33
36
  - [Documentation](#documentation)
34
37
  - [Contributing](#contributing) · [License](#license)
@@ -51,6 +54,8 @@ That's the whole install. CodeDen starts a local server, opens your browser on a
51
54
  npx codeden # or: npm i -g codeden && codeden
52
55
  ```
53
56
 
57
+ 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. Unsigned builds show a SmartScreen or Gatekeeper warning the first time; see [The desktop app](https://github.com/leonvanzyl/codeden/blob/main/docs/desktop.md).
58
+
54
59
  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.
55
60
  2. **Add a project:** pick a local folder (a server-side folder picker) or paste a GitHub URL to clone.
56
61
  3. **Start a session.** The agent works in its own git worktree and branch, so your checkout is never touched.
@@ -75,7 +80,7 @@ Every unit of work carries a **work key** (`issue:142`, `automation:security-aud
75
80
 
76
81
  ### One inbox
77
82
 
78
- Questions, approvals, PRs ready for review, failed runs, triage decisions, duplicate-work conflicts and budget alerts all land in one **Inbox**, each linked to its session, issue and PR and answerable in place. Toasts and (opt-in) browser notifications tell you when something new arrives.
83
+ Questions, approvals, PRs ready for review, failed runs, triage decisions, duplicate-work conflicts and budget alerts all land in one **Inbox**, each linked to its session, issue and PR and answerable in place. Toasts and (opt-in) browser notifications tell you when something new arrives, and when an agent is blocked on you a chime, a sticky toast and an amber dot on the tab icon make sure you notice.
79
84
 
80
85
  ![The inbox with a conflict, an approval and a PR ready for review](https://raw.githubusercontent.com/leonvanzyl/codeden/main/docs/images/inbox.png)
81
86
 
@@ -196,6 +201,9 @@ Inside the data directory:
196
201
  orchestrator/ the orchestrator's working directory
197
202
  backups/ copies of config files taken before CodeDen overwrote them
198
203
  logs/runner.log runner output
204
+ deps/ Claude Code support, installed on demand
205
+ app/<version>/ CodeDen versions installed by one-click updates
206
+ app/current.json which installed version `codeden` starts
199
207
  ```
200
208
 
201
209
  Two copies can run side by side with different homes and ports, for example `codeden --home ~/.codeden-test --port 4400`.
@@ -214,6 +222,7 @@ A minimal `.codeden/project.json`:
214
222
  ```
215
223
  codeden [options] Start CodeDen and open it in the browser
216
224
  codeden doctor Check the installation (--install: add Claude Code support now)
225
+ codeden update Install the latest version and switch to it (--rollback: go back)
217
226
  codeden stop Stop the server and the runner
218
227
 
219
228
  Options:
@@ -231,6 +240,20 @@ Options:
231
240
 
232
241
  Environment variables: `CODEDEN_HOME` (data directory), `CODEDEN_DEBUG=1` (server log lines in the terminal), `CODEDEN_SHELL` (terminal shell; PowerShell on Windows, `$SHELL` elsewhere), `CODEDEN_GITHUB_SYNC=0` (turn GitHub polling off).
233
242
 
243
+ ## Updating
244
+
245
+ CodeDen checks npm for a new version when it starts and every 6 hours (only the package name is sent; turn it off under **Settings > General > Updates**). When one is out, a banner says so: **What's new** shows the release notes, **Update now** installs it and restarts CodeDen, and the page reconnects on its own. Running agents are drained and resumed, the same as after any runner restart.
246
+
247
+ - **How it works.** New versions install side by side into `~/.codeden/app/<version>/`, and `~/.codeden/app/current.json` names the one to run. Whatever `codeden` you start (`npx codeden`, a global install) checks that file first and runs the newer installed version in its place, so there's nothing to reinstall by hand. The previous version is kept for rollback.
248
+ - **Install automatically.** Set **Updates** to *Install automatically* to download new versions in the background; they start the next time you open CodeDen (or right away with **Restart now**).
249
+ - **From the terminal.** `codeden update` does the same as the button (and restarts a running CodeDen); `codeden update --rollback` goes back to the previous version. `codeden doctor` lists the installed versions and which one starts.
250
+ - **Roll back** from **Settings > About** as well.
251
+ - **If it can't restart itself** (for example when started some other way), the banner says "Update installed, restart CodeDen to finish" with the command to run.
252
+ - **Running from source** (a clone of this repository) never switches versions: pull and rebuild (`git pull && pnpm install && pnpm build`).
253
+ - **The old way still works:** `npm i -g codeden@latest`, or `npx codeden@latest`. A globally installed version newer than the side-by-side one always wins.
254
+ - **Upgrading from 0.1.0:** 0.1.0 predates one-click updates; update it once by hand (`npm i -g codeden@latest` or `npx codeden@latest`).
255
+ - **The desktop app** updates itself from GitHub Releases with the same banner and the same setting; see [The desktop app](https://github.com/leonvanzyl/codeden/blob/main/docs/desktop.md#updates).
256
+
234
257
  ## FAQ
235
258
 
236
259
  **Do I need API keys?**
@@ -262,6 +285,7 @@ It's experimental. Read [Autonomy and the dark factory](https://github.com/leonv
262
285
  | Guide | |
263
286
  |---|---|
264
287
  | [Getting started](https://github.com/leonvanzyl/codeden/blob/main/docs/getting-started.md) | Install, first-run setup, first project and session |
288
+ | [The desktop app](https://github.com/leonvanzyl/codeden/blob/main/docs/desktop.md) | Install, tray, notifications, updates, signing and where data lives |
265
289
  | [Orchestration](https://github.com/leonvanzyl/codeden/blob/main/docs/orchestration.md) | Orchestrator, PMs, agents, work keys, conflicts and notices |
266
290
  | [GitHub](https://github.com/leonvanzyl/codeden/blob/main/docs/github.md) | Issues, PRs, checks, reviews and the evidence branch |
267
291
  | [Automations](https://github.com/leonvanzyl/codeden/blob/main/docs/automations.md) | Triggers, guards, templates and writing your own |