Files
esh-pfi-infrastructure/docs/fleettools/claude-only.md
T

3.6 KiB
Raw Blame History

Claude-Code-only tooling

Everything here depends on the Claude Code harness. A Codex, Grok, Aider or other non-Claude agent cannot use these — they are listed so you recognise a reference to them rather than hunting for a binary that will not work.

ratecheck — how close this session is to its rate limits

~/.claude/bin/ratecheck (NOT on PATH). Exit 0 GO · 1 PAUSE · 2 UNKNOWN. Prints both windows, the file's age and the reset time.

The numbers are not otherwise visible to an agent: no CLI subcommand exposes them and nothing else on disk carries them. The harness pipes them to the statusline only, so ~/.claude/statusline-command.sh tees them to ~/.claude/rate-limits.json on every render. If that tee is removed, everything built on it silently stops working, which is why a stale file reports UNKNOWN rather than healthy.

  • under ~85% — proceed normally
  • ~85–93% — prefer the cheap path; resume an existing subagent rather than spawning one
  • at/over the project threshold — stop starting new expensive work; let in-flight finish
  • UNKNOWN — proceed, loudly. A broken instrument that halts everything is a self-inflicted outage worse than the overspend it guards. Say plainly that limits were unreadable and you continued blind.

⚠ A GO is margin, not permission for an arbitrarily large action — one consult subagent has measured at 270k–650k tokens, so a round cleared at 92% can finish past 100%.

remote-ssh MCP

Project-scoped in eshpfi-management/.mcp.json; tools ssh_hosts / ssh_open / ssh_run / ssh_peek / ssh_interrupt / ssh_list / ssh_close. Holds a persistent shell, so cd and exports survive between calls at ~6 ms per command. For reconnaissance; it deliberately has no file transfer and no idempotency (that is elway's half).

⚠⚠ A bare sudo HANGS the session — always pipe it: sudo -n <cmd> | cat. Cause: sudo ≥1.9.14 defaults use_pty on; with stdin on /dev/null and stdout on the session PTY the relay never completes and the completion marker never arrives. A pipe makes stdout a non-tty and sudo skips the PTY.

⚠ The host allowlist is the only real containment boundary — the denylist is three regexes and bash -c walks past it. SSH_MCP_STRICT_ALLOWLIST=1 makes ~/.config/remote-ssh-mcp/config.json's allowedHosts authoritative.

albok MCP

albok-mcp, registered at user scope (2026-10-16: claude mcp add --scope user albok -- /home/lkraven/.local/bin/albok-mcp). Tools albok_search / albok_read / albok_sidecar / albok_related / albok_status / …, the same verbs as the albok CLI (see albok.md). It reads ALBOK_SERVICE and ALBOK_TOKEN from the environment the session inherits (~/.zshenv sources ~/.config/secrets/env.sh); no token is written into ~/.claude.json. A session started from a shell older than that wiring gets a "no token" error from the tools: start a new session.

task-board MCP — MOTHBALLED (2026-09-24)

Superseded by the High Seat (SVOS) and ledger; the container is stopped. Do not call task_* tools or wire its hooks into new sessions. Its data and stack are kept for a one-command bring-back (eshpfi CLAUDE.md).

Skills

Claude Code skills live in ~/.claude/skills/. Notable ones with fleet meaning: /snapshot (durable repo memory), /handoff (transfer active work to an agent of another family — this is the cross-family bridge), /heid (cross-frontier consult), /park, /elitk, /vor, /tdd.

/handoff is the supported way to move in-flight work from Claude to Codex/Grok — it writes an agent-agnostic brief to /tmp naming the repo's convention files.