ledung 1.3.0 → 1.5.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.
package/CHANGELOG.md CHANGED
@@ -10,6 +10,10 @@ that changes `src/`, `web/` (not `web/dist/`) or `scripts/` without one (a commi
10
10
  is nothing user-facing in it).
11
11
 
12
12
  ## 2026-11-02
13
+ - Long-lived tokens work for accounts: run `ledung account token <name>` in your own terminal, the command is shown with a copy button when you add an account and under each account, and Accounts now shows whether each is signed in with a token or `/login` (#85)
14
+ - Open folder on an account now says in the page why it failed instead of doing nothing, and on Windows the folder window is no longer asked to open hidden (#83)
15
+ - Ledung no longer fails to start on a Mac when the system can't say who the user is (#83)
16
+ - A request whose address doesn't parse is now refused with a 400, also on the live connection, without an error in the log (Fluffy-Fluffy-and-Bouncy/Project-Ledung#467)
13
17
  - Started at sign-in on macOS or Linux, or from Ledung.app, Ledung now gets the same PATH as in your terminal, so Update Ledung, Ledung's GitHub features and the tools your sessions use work after a login too; a shell profile that hangs delays the start by about ten seconds instead of stopping it. Switch Start Ledung when I sign in off and on in Settings to get it (#464)
14
18
  - Settings → About has an update channel, Public or Dev: on Dev an npm-installed Ledung gets dev builds before they go to everyone, and Update & restart now checks npm and updates an npm install with one click (#461)
15
19
 
package/README.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # Project Ledung
2
2
 
3
+ **Agentic engineering, with you at the helm.**
4
+
3
5
  Ledung runs several Claude Code sessions on your computer and shows them in one place: the sessions and who started them, every question waiting for an answer, permission requests, token usage and machine load. It serves a web page on your own computer, which you can open in a browser or install as an app window. With a relay, your phone can reach it from anywhere.
4
6
 
5
7
  It runs on Windows, macOS and Linux.
@@ -48,7 +50,7 @@ Ledung runs Anthropic's Claude Agent SDK and Claude Code. They are installed fro
48
50
 
49
51
  **Sessions run your own installed Claude Code** (`claude` on the PATH, or where its installers put it: `~/.local/bin`, npm's global folder, Homebrew), with your own sign-in. It must be at least the version the SDK was built for (**Settings → Claude & usage → Claude Code** shows both; `claude update` updates it). If it is missing, older, or its version can't be read, a banner says how to install or update it, and sessions don't start until **Check again** finds it. **A project in a container needs Claude Code installed in that container**: Ledung starts the container's own `claude` there and doesn't install it for you.
50
52
 
51
- **Signing in.** Ledung never takes, keeps or passes a Claude sign-in token: signing in is done by Claude Code itself (Anthropic's terms allow that, not a product collecting tokens). An account is only a sign-in: each has a sign-in folder, and its sessions get it in `CLAUDE_SECURESTORAGE_CONFIG_DIR`, a Claude Code setting (not in its documentation; the SDK sets it itself) that moves only the sign-in there. Conversations, memory, skills and settings stay in the Claude Code folder every session uses, so moving a project to another account changes only whose plan and limits it uses. You sign in to an account once with Claude Code's own `/login`, using the command the page shows. For a container project, the account's sign-in folder is inside the container (`~/.ledung-accounts/<name>` by default, or a folder you name, which may be a mounted one so the sign-in survives a rebuild) and you sign in there. Ledung asks Claude Code's `claude auth status` whether each is signed in (no tokens spent). Removing an account removes its own sign-in from Claude Code's store (its sign-in file, or its Keychain entry on macOS) here and in every container its projects ran in, skipping a folder another login shares, and leaves the folders. Ledung doesn't use `claude auth logout` for this: in the shared layout it would also clear the account details of the computer's own login. An account can't use Claude Code's default folder, Ledung's own, or another account's. Token accounts from older Ledungs are moved once, with no new sign-in: the token is put into Claude Code's sign-in store for the account (a file in its sign-in folder, or the Keychain on macOS), checked, and Ledung's copy is deleted; a place added later is signed in with `/login`. A login-folder account made before that change keeps its sign-in, but not the conversations, skills and settings it kept in that folder.
53
+ **Signing in.** Ledung never takes, keeps or passes a Claude sign-in token: signing in is done by Claude Code itself (Anthropic's terms allow that, not a product collecting tokens). An account is only a sign-in: each has a sign-in folder, and its sessions get it in `CLAUDE_SECURESTORAGE_CONFIG_DIR`, a Claude Code setting (not in its documentation; the SDK sets it itself) that moves only the sign-in there. Conversations, memory, skills and settings stay in the Claude Code folder every session uses, so moving a project to another account changes only whose plan and limits it uses. You sign in to an account once with Claude Code's own `/login`, using the command the page shows, or with a long-lived token from `claude setup-token`: run `ledung account token <name>` in your own terminal (or the command the page shows, with a copy button) and paste it, or pipe it in (`pbpaste | ledung account token <name>`). That command, running as you, writes the token into Claude Code's sign-in store and asks Claude Code whether it took; Ledung's server, page, database and logs never receive it. It replaces any sign-in the account has, and Accounts shows how each account is signed in, from what `claude auth status` says. For a container project, the account's sign-in folder is inside the container (`~/.ledung-accounts/<name>` by default, or a folder you name, which may be a mounted one so the sign-in survives a rebuild) and you sign in there. Ledung asks Claude Code's `claude auth status` whether each is signed in (no tokens spent). Removing an account removes its own sign-in from Claude Code's store (its sign-in file, or its Keychain entry on macOS) here and in every container its projects ran in, skipping a folder another login shares, and leaves the folders. Ledung doesn't use `claude auth logout` for this: in the shared layout it would also clear the account details of the computer's own login. An account can't use Claude Code's default folder, Ledung's own, or another account's. Token accounts from older Ledungs are moved once, with no new sign-in: the token is put into Claude Code's sign-in store for the account (a file in its sign-in folder, or the Keychain on macOS), checked, and Ledung's copy is deleted; a place added later is signed in with `/login`. A login-folder account made before that change keeps its sign-in, but not the conversations, skills and settings it kept in that folder.
52
54
 
53
55
  **Projects and Claude accounts are added in the page** (**Add project**, and **Accounts** under Claude & usage, both in Settings), not in the config: an existing folder on this computer or in a running container, picked with Ledung's folder browser, or a brand-new project (a folder with git, and optionally a private GitHub repository). Each project has one manager and one Claude account. The folder browser shows only folders under `browseRoots` (default: your home folder); new projects go in `projectsFolder` (default: `Projects` in your home folder). Projects still listed under `"projects"` in the config are copied into Ledung once.
54
56