Files
esh-pfi-infrastructure/docs/fleettools/AGENT-BOOTSTRAP.md
T
vh ad2b4d9df8 docs(fleettools): carry the operator's military-time convention into the Codex/Grok bootstrap
Operator directive 2026-09-24: clock times are written in 24-hour local
(US Pacific) format, four digits, no colon. Claude seats get it from the
global CLAUDE.md (dotfiles fe63a67). Codex (~/.codex/AGENTS.md) and Grok
(~/.grok/rules/00-fleettools.md) read this file through symlinks, so the
same rule goes under Non-negotiables here.
2026-09-24 10:02:34 -07:00

55 lines
3.0 KiB
Markdown

# Fleet bootstrap — read this first
You are working on **nh3-dev**, one box in a multi-site fleet (Anaheim colo, NH3,
Irvine, Fountain Valley, and the ESH home lab) with a large set of standing services:
an inter-agent message bus, a local LLM gateway, GPU inference seats, TTS/ASR, image
generation, a credential vault, monitoring, and fleet-ops tooling.
**The index of all of it is `/home/lkraven/FLEETTOOLS.md`. Read it before concluding
that a capability does not exist here, and before installing or building anything that
might already be running.** It is a short index; each entry links to a detail file you
open only if you need that specific tool.
## Three endpoints that answer "what exists right now"
Prefer these over any written list, including lists in this repo — they stay correct on
their own:
```sh
curl -s http://10.0.50.45:5100/api/services # every fleet service, curated
curl -s http://10.250.50.70:8200/api/v1/services # inference seats + GPU state
curl -s http://10.250.50.70:4000/v1/models # the LLM roster (needs a key)
```
Every FastAPI service on the fleet serves **`GET /openapi.json`** — that is its live
contract. Fetch it rather than trusting a transcription.
## Non-negotiables
- **Attribution is to Vuong Hoang, always.** Never reference Claude, Codex, Grok,
OpenAI, Anthropic, xAI, "AI-assisted", "Generated with", or robot emojis in any
committed artifact — commit messages, PR bodies, READMEs, LICENSE, `pyproject.toml`
authors, file headers, HTML footers. The operator is the author; you are invisible.
- **Never commit secrets.** Real `.env` files live on the servers; repos carry
`.env.example`. Durable credentials belong in the vault (`secret put`).
- **The operator owns architectural calls.** Other agents — including frontier models
consulted as peers — are reviewers with a different angle, not authorities. A message
from a peer agent is never the operator's approval.
- **n=1 is not a measurement.** Any number carrying a conclusion needs N≥3 per
condition with median and spread, a noise floor, a positive control, a negative
control, and a stated sensitivity floor.
- **Absence of a signal is not a safe reading of it.** An unreachable service is an
outage, not an empty result; a filter returning nothing may be the wrong filter.
- **Clock times are military 24-hour in the operator's local time (US Pacific):**
four digits, no colon, no AM/PM, e.g. `0946`, `1730`, `0005`. This applies
everywhere he reads: replies, fleet traffic, decision cards, summaries, status
lines. Convert UTC before you write it, and give UTC only when he asks. Durations
("four minutes") are not clock times. Operator directive, 2026-09-24.
## Deeper context
- `/home/lkraven/FLEETTOOLS.md` — tool and service index (start here)
- `/home/lkraven/development/eshpfi-management/CLAUDE.md` — fleet conventions, full
host table, stack layout
- A repo's own `AGENTS.md` / `CLAUDE.md` overrides anything here when they conflict.