Repository Public
1# Migration manifest — laptop Claude Code environment → M5M3623Inventory taken on 2026-11-09 on the owner's laptop (read-only; no secret value was printed or copied).4Status column: what has actually been done so far.56Classification: `SAFE_TO_COPY` · `REQUIRES_REINSTALL` · `REQUIRES_REAUTHENTICATION` · `REQUIRES_MANUAL_REVIEW` · `DO_NOT_COPY`78## Claude Code itself910| Item (laptop) | Class | Plan on M5M36 | Status |11|---|---|---|---|12| Claude Code CLI 2.1.322 (npm global) | REQUIRES_REINSTALL | `npm install -g @anthropic-ai/claude-code` | done, same version |13| Account login (OAuth, macOS Keychain) | REQUIRES_REAUTHENTICATION | owner runs `/login` in the first web session; tokens are never copied | pending (owner) |14| `~/.claude/settings.json` — model `fable[1m]`, fast mode | SAFE_TO_COPY (values only) | recreate these two preferences | done (settings limited to model + fast mode; status as of 2026-11-10) |15| `settings.json` — PreToolUse hook that **auto-approves every tool call** | DO_NOT_COPY | contradicts the requirement to keep Claude's native permission prompts on an Internet-reachable host. Use per-project allowlists instead | not copied |16| `settings.json` — SessionStart hook for AKOS | DO_NOT_COPY | AKOS was retired on 2026-11-09 | not copied |17| Skills: `jof250` | SAFE_TO_COPY | `~/.claude/skills/` — depends on the WP45 repository being cloned | copied (status as of 2026-11-10) |18| Commands: 6 `cluster*`, 10 `jof-*` | SAFE_TO_COPY | `~/.claude/commands/`; the cluster commands call wrappers under `~/Desktop/Cluster/cluster-skill` → clone `cluster-skill.git` on the node and adjust paths | 10 `jof-*` copied; the 6 cluster commands were **not** copied (status as of 2026-11-10) |19| Agents: 7 `jof-*` | SAFE_TO_COPY | `~/.claude/agents/` | copied (status as of 2026-11-10) |20| Plugins: clangd-lsp, rust-analyzer-lsp, swift-lsp | REQUIRES_REINSTALL | `/plugin install` if those languages are used remotely | pending |21| Global `~/.claude/CLAUDE.md` (cluster knowledge) | REQUIRES_MANUAL_REVIEW | **contains the nodes' sudo password** and laptop-specific paths. A reviewed copy without the password should be written for the node | sanitized copy (sudo password removed) written (status as of 2026-11-10) |22| Auto-memory (271 notes) | REQUIRES_MANUAL_REVIEW | private working memory; some notes hold passwords or keys | **copied 2026-11-10 at the owner's request**: 251 notes + index in `~/.claude/memory` (`autoMemoryDirectory`); 20 notes containing credentials were left on the laptop |23| Conversation history (125 project dirs), caches, telemetry, shell snapshots | DO_NOT_COPY | machine-specific | not copied |2425## MCP servers (10 configured on the laptop)2627| Server | Transport | Class | Notes |28|---|---|---|---|29| tavily, worldbank, polymarket, etherscan, notion | stdio, local `.mjs` scripts in `~/.claude/mcp*` | script SAFE_TO_COPY · **API keys REQUIRES_REAUTHENTICATION** | keys live in `~/.claude.json` env; they must be re-entered through the MCP manager (write-only fields) or explicitly authorised for transfer. Status as of 2026-11-10: 5 server scripts copied **without** API keys |30| openalex, anthropic | stdio, scripts in `~/mcp/` | same | both currently fail to connect on the laptop too |31| apify | stdio via `npx mcp-remote` (OAuth) | REQUIRES_REAUTHENTICATION | browser OAuth flow |32| hfmarketdata | stdio binary | DO_NOT_COPY | its backend (www.hfmarketdata.io) was shut down on 2026-10-02; FinData OS replaces it |33| akos | http | DO_NOT_COPY | service retired 2026-11-09 |34| cluster (MacLustr tools) | stdio | REQUIRES_MANUAL_REVIEW | drives SSH to every node; depends on the SSH-key decision below |3536## Tools and runtimes3738| Tool | Laptop | M5M36 | Class / plan |39|---|---|---|---|40| Node / pnpm / npm | 26.13 / 11.1 | 26.10 / 12.6 | present |41| Python / uv | 3.14 / 0.11 | 3.14 / 0.12 | present |42| git | yes | 2.54 | present; set `user.name` (email per repository) |43| tmux, ripgrep, PostgreSQL 17 | yes | installed for this project | done |44| TeX Live 2026 (xelatex, latexmk), pandoc, WeasyPrint | yes | missing | REQUIRES_REINSTALL (`brew install --cask mactex-no-gui`, ~6 GB) when paper compilation is wanted remotely |45| R 4.6, Rust 1.95, Bun, ffmpeg, gh, Swift/Xcode | yes | missing (except Swift CLT) | REQUIRES_REINSTALL on demand |46| Docker Desktop, LibreOffice, Chromium, Android tools | yes | missing | on demand; Xcode/TestFlight release work stays on the laptop by design |4748## Credentials and network identity4950| Item | Class | Notes |51|---|---|---|52| SSH private keys, SSH agent | DO_NOT_COPY | cluster rule: no private keys on nodes. A new key generated **on** M5M36 can be authorised on selected nodes — needs explicit approval (changes other nodes). Status as of 2026-11-10: done — key authorised on the git server (git-shell only) and on M3U96a / M3U96b (`CR_EXEC_HOSTS`) |53| `~/.ssh/config` (34 hosts) | REQUIRES_MANUAL_REVIEW | LAN aliases can be regenerated from the cluster's discovery instead of copied |54| Keychain items (skills registry token, etc.), browser cookies, `.env` files, `~/Desktop/Cluster/secrets` | DO_NOT_COPY | re-issue per service on the node if needed |55| Sudo passwords | DO_NOT_COPY | the web runtime never needs sudo |5657## Projects and data5859The laptop holds ~303 GB under `UQO/`, ~222 GB under `PhD/`, ~23 GB under `Cluster/`; M5M36 has 301 GB free. A bulk60copy is neither possible nor desirable.6162| Category | Class | Plan |63|---|---|---|64| Repositories that have a remote on the cluster git server (`gitsrv:srv/git/*.git` — all cluster apps, the UQO working papers `wp*_uqo.git`, etc.) | SAFE_TO_COPY via Git | "Clone repository" in the Projects page (`gitsrv:srv/git/<name>.git`) — needs the node key authorised on the git server |65| Cluster applications | already remote-first | their source of truth is the deployed directory on each node; reached from tasks/SSH, not copied |66| Teaching material, administrative files, OneDrive folder, PhD datasets | REQUIRES_MANUAL_REVIEW | large, partly personal data (student work, grades). Not transferred without an explicit list |67| Build artefacts, `node_modules`, virtualenvs, caches, `.next`, LaTeX aux files | DO_NOT_COPY | rebuilt on the node |6869## Scheduled work on the laptop7071No user crontab. LaunchAgents: Homebrew PostgreSQL/Redis, two NAS mount helpers, third-party agents — none is needed by72the remote environment.7374## Remaining laptop-only dependencies (by design)7576Xcode/App Store signing and TestFlight releases, GUI automation of Safari/Outlook (Moodle, Overleaf, SSRN flows), and the77macOS/iOS apps' source trees. These workflows cannot move to a headless web terminal and stay on the laptop.78