From d615fe786467eed84de6cf6d637a6031b3a1180e Mon Sep 17 00:00:00 2001 From: Jakub Czajka Date: Thu, 9 Jul 2026 18:46:31 +0200 Subject: [PATCH] [home] Move TODOs from README to dedicated TODO file. Add TODO to remove CLAUDE_CONFIG_DIR from the paseo Shepherd service and set it generically for all daemons that spawn Claude Code. Co-Authored-By: Claude --- README | 35 +---------------------------------- TODO | 40 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 41 insertions(+), 34 deletions(-) create mode 100644 TODO diff --git a/README b/README index f38e2e6..5478b97 100644 --- a/README +++ b/README @@ -53,37 +53,4 @@ Paseo's daemon starts automatically via Shepherd and listens on - Pair: run ``paseo`` to get a pairing link (use --qr for a QR code), or tail the log at ``~/.local/var/log/paseo-daemon.log``. -TODO ----- - -* Automatically update the version of Claude Code in conf/home/claude-code.scm. - - 1. Latest version at https://downloads.claude.ai/claude-code-releases/. - 2. Update the version field in conf/home/claude-code.scm. - 3. Add claude-code at the end, run guix build -f conf/home/claude-code.scm and - get the correct hash from the "hash mismatch" error message. - -* Avoid merge conflicts when running multiple Claude Code instances. - - 1. Work on a separate branch per instance (e.g. claude-). - 2. Or use EnterWorktree for automatic isolation. - 3. Or add a PreToolUse hook that auto-creates/switches to a per-session - branch before Edit/Write. - - -* Go back to the upstream pi release tarball once Bun's --compile bug is - fixed. Bun 1.2.20-1.3.11 produces broken binaries; 1.3.14 fails entirely on - this system (kernel 7.0.12, glibc 2.39). When a fixed Bun is available, just - download the tarball, extract the binary, and wrap it - no build step needed. - Remove the npm-install-build-system wrapper and the Node.js dependency in - conf/home/pi.scm. - -* When Paseo triggers Claude Code from mobile, get-api-key runs pass(1) which - prompts for a GPG passphrase on a headless terminal — the session hangs. - Claude Code runs on the laptop (spawned by the Paseo daemon) but the API key - lives on the phone behind Paseo's relay; the key needs to cross that relay - into the laptop somehow, which there is currently no mechanism for. - -* Move configuration files to the Guix store and bundle them with the binary. - This requires redesigning home-program-configuration so dotfiles are part of - the package derivation rather than symlinked via home-symlink-service-type. +See TODO for planned improvements. diff --git a/TODO b/TODO new file mode 100644 index 0000000..2f7226a --- /dev/null +++ b/TODO @@ -0,0 +1,40 @@ +TODO +==== + +* Automatically update the version of Claude Code in conf/home/claude.scm. + + 1. Latest version at https://downloads.claude.ai/claude-code-releases/. + 2. Update the version field in conf/home/claude.scm. + 3. Add claude-code at the end, run guix build -f conf/home/claude.scm and + get the correct hash from the "hash mismatch" error message. + +* Avoid merge conflicts when running multiple Claude Code instances. + + 1. Work on a separate branch per instance (e.g. claude-). + 2. Or use EnterWorktree for automatic isolation. + 3. Or add a PreToolUse hook that auto-creates/switches to a per-session + branch before Edit/Write. + +* Go back to the upstream pi release tarball once Bun's --compile bug is + fixed. Bun 1.2.20-1.3.11 produces broken binaries; 1.3.14 fails + entirely on this system (kernel 7.0.12, glibc 2.39). When a fixed Bun + is available, just download the tarball, extract the binary, and wrap it + -- no build step needed. Remove the npm-install-build-system wrapper + and the Node.js dependency in conf/home/pi.scm. + +* Move configuration files to the Guix store and bundle them with the + binary. This requires redesigning home-program-configuration so + dotfiles are part of the package derivation rather than symlinked via + home-symlink-service-type. + +* When Paseo triggers Claude Code from mobile, get-api-key runs pass(1) which + prompts for a GPG passphrase on a headless terminal — the session hangs. + Claude Code runs on the laptop (spawned by the Paseo daemon) but the API + key lives on the phone behind Paseo's relay; the key needs to cross that + relay into the laptop somehow, which there is currently no mechanism for. + +* Claude Code defaults to ~/.claude for its config directory but we store + it at ~/.config/claude (XDG), so CLAUDE_CONFIG_DIR must be set to + redirect it. Remove the explicit CLAUDE_CONFIG_DIR from the paseo + Shepherd service and find a generic way to set it for all daemons that + spawn Claude Code. -- 2.47.3