# Athos on OpenClaw (recommended) OpenClaw is the first-class Athos runtime: the one-command installer lays down the skill, the webhook transform hook, and an `athos` CLI, so proactive notifications and skill updates work natively with no polling. ## Install ```bash curl -fsSL /install | bash athos login --api-key "" --url "" ``` Default `` is `https://app.athos.fitness` (production). Use the test env only for verification: `https://app-test.athos.fitness`. The installer writes: - Skill: `~/.openclaw/workspace/skills/athos/` (SKILL.md + `references/`) - Hook transform: `~/.openclaw/hooks/transforms/athos-webhook/athos-webhook-transform.mjs` - CLI: `~/.openclaw/bin/athos` - Config: `~/.openclaw/workspace/memory/athos-config.json` (`ATHOS_API_URL`, `ATHOS_API_KEY`, chmod 600) ## Config `athos login` persists config to `memory/athos-config.json`. Environment variables `ATHOS_API_URL` / `ATHOS_API_KEY` override it. Every API call uses: ```bash curl -H "Authorization: Bearer $ATHOS_API_KEY" "$ATHOS_API_URL/api/v1/program/week/current" ``` ## Verify setup, then onboard Prove the hook loop before onboarding a user: 1. `GET /api/v1/skill/setup-requirements` — required events + hook contract. 2. `POST /api/v1/webhooks` — register the `athos-webhook` callback for all `required_webhook_events`. 3. `POST /api/v1/skill/setup-test` — emits `athos.installation_test` and `skill.updated` through the hook. Expect `ok=true`; repair if not. Then start onboarding: - `GET /api/v1/onboarding/questions` - `POST /api/v1/onboarding/submit-answers` - Wait for the `onboarding.strategy_ready` webhook (poll `/api/v1/onboarding/status` only as fallback), confirm, then deliver `GET /api/v1/program/week/current`. Do **not** create local notification crons. Athos owns `notification_jobs`; Railway Cron dispatches `notification.due` to your hook. Full instructions and coaching rules live in `SKILL.md` (and `references/`).