Skip to content

Claude tooling on this box — sessions, hub, routines, memory, skills

Claude Code runs from /home/angel (so ~/CLAUDE.md is the L0 router for every session). Around it: a tmux launcher, a web hub, cron-driven prompt "routines", the auto-memory directory, and the icm-architect skill that produced this map.

Shape

  • Binary: ~/.local/bin/claude~/.local/share/claude/versions/2.1.263. Settings ~/.claude/settings.json (dark theme, push notifications on).
  • Sessions: ~/claude-start.sh [name] [-c] — persistent tmux session so SSH drops don't kill it; ~/claude-kill.sh stops interactive sessions but deliberately not claude-hub, the builder MCP proxy, or tunnel-client.
  • claude-hub: ~/claude-hub/app.py, user unit claude-hub.service (Restart=always), hub.lan — Garmin + Apple Health analytics, a Garmin coach, an app-builder prompt box; DB hub.db; reads Garmin MCP at 127.0.0.1:8000. claude-remote.service, codex-builder-tunnel.service, garmin-tunnel.service are sibling user units (tunnels for phone/ChatGPT access).
  • Routines: ~/.claude/routines/{evening-plan,prealarm-check,morning-sync}.md + _shared-facts.md, run by training-sync via claude -p --output-format json --tools "". Outputs .last-output-<mode>.json, status last-run-<mode>.json, log training-sync.log. Backups backup-2026-09-05/.
  • Memory: ~/.claude/projects/-home-angel/memory/MEMORY.md index + one file per fact. Holds user and feedback facts; server facts belong in this map (see map/CONTEXT.md).
  • Skills: ~/.claude/skills/icm-architect/ (upstream commit in UPSTREAM). Invoke with "ICM this / map this / audit this folder".
  • Builders: ~/claude-builder/, ~/codex-builder/, ~/codex-workspaces/ (own CLAUDE.md: everything stays inside /workspace, localhost-bound, no secrets) — the app-builder sandbox, separate from server work.
  • Artifacts: the hardening report is a claude.ai artifact (URL on the hardening-plan card). Redeploy by passing url; rebuild the local copy from the saved HTML each time.

Session gotchas (each cost tokens once): - Background Bash gets killed by the memory supervisor here (it reads free); run long jobs in the foreground — the 10-min timeout is not enforced on run_in_background, but the supervisor is. - The garmin MCP has 150+ tools; schemas are deferred, so they are not a context cost. - The claude.ai 5-hour usage window is shared with the phone/web; cron passes can hit "session limit" (the wrapper waits for the reset). - cat is bat in interactive shells; tool shells are fine.

If you change this

  • Hits: editing ~/CLAUDE.md changes every future session's first 1k tokens — keep it a router · moving map/ breaks the router table · renaming a routine file breaks training-sync:19-23.
  • Does not hit: the server; nothing operational depends on Claude being present except the three training-sync passes.

See

  • Source: ~/claude-start.sh · ~/claude-kill.sh · ~/claude-hub/claude-hub.service · ~/.local/bin/training-sync