一键导入
axiom
Ara observability — query logs across api, web, and app. Primary dataset is "logs". Filter by service, environment, user_id, or runtime_session_id.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Ara observability — query logs across api, web, and app. Primary dataset is "logs". Filter by service, environment, user_id, or runtime_session_id.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | axiom |
| version | 1.0.0 |
| description | Ara observability — query logs across api, web, and app. Primary dataset is "logs". Filter by service, environment, user_id, or runtime_session_id. |
| allowed-tools | ["Bash"] |
All Ara services log to a single Axiom dataset: logs.
service | What it is |
|---|---|
api | Python FastAPI on Railway |
web | Web console (React, browser) |
desktop | Tauri desktop app |
| Field | Notes |
|---|---|
_time | ISO timestamp |
service | see above |
environment | production or staging |
level | info, warn, error |
message | log message |
user_id | Supabase user UUID |
user_email | user email |
runtime_session_id | session correlation id |
request_id | request correlation id |
axiom auth login # one-time browser login
axiom dataset info logs # confirm dataset exists
# Production errors right now
axiom query "['logs'] | where environment == 'production' and level == 'error' | sort by _time desc | limit 20"
# All logs for a user
axiom query "['logs'] | where user_id == 'uuid-here' | sort by _time desc | limit 50"
# Full session trace
axiom query "['logs'] | where runtime_session_id == 'sess-xxx' | sort by _time asc"
# API errors, last hour
axiom query "['logs'] | where service == 'api' and level == 'error'" --start-time -1h
# Tail production live
axiom query "['logs'] | where environment == 'production' | sort by _time desc | limit 50" --start-time -2m
--start-time -1h # last hour (also: -30m, -24h, -7d)
--format table # pretty table
--format json # pipe to jq
# Unique users with errors today
axiom query "['logs'] | where level == 'error'" --start-time -24h --format json \
| jq -r '.[] | .user_email' | sort -u
# Full trace as readable lines
axiom query "['logs'] | where runtime_session_id == 'sess-xxx'" --format json \
| jq -r '.[] | "\(._time) [\(.service)] \(.level): \(.message)"' | sort
user_id or runtime_session_id from resultssort by _time ascEnd-to-end validate a `text.ara.so/backend` (website-agent) fix against a real Railway preview environment BEFORE merging to main. Pushes the current branch, deploys the SHA to the long-lived `preview` Railway env, confirms the new `git_sha` is live via `/healthz`, then sends a focused signed webhook replay (single-turn or short multi-turn) to a reserved 555-01XX test phone, and polls Braintrust for the root span's `outcome` / rounds / tools / reply. Use whenever you change anything in `backend/src/` (tool handlers, system prompt, builder loop, etc.) and want production-fidelity proof — not just unit tests — before opening the PR. Invoked as `/replay-railway-preview` or `/replay railway preview`.
Ara's secrets convention — all runtime credentials live in Infisical (project "Ara-passwords"), one folder per active GitHub repo (`/ara-engineer`, `/text-ara-so`). The old megarepo lives at `/legacy-ara-megarepo` tagged `legacy` — reference only. Never ask the user to paste keys; never commit .env; never build a custom vault.
Align the website-agent (system prompt + routing) with successful on-Ara website building; analyze Braintrust traces for derailment (wrong phase, local-dev tutoring, missing deploy, paywall/connect confusion), patch `text.ara.so/backend` (primarily `system-prompt.ts`), then verify in a tight loop—`bt` / Braintrust evals / `bun run e2e` (replay + live)—and report a before vs after fit table. Invoked as `/align`, `/align <trace url>`, `/align users …` (pair with `/trace` to gather traces). Companion to `/trace`.
Ara agent-trace debugging — inspect Braintrust traces for the website-agent (TS/Bun, Cerebras, Vercel AI SDK v6). Invoked as `/trace recent`, `/trace turn <turn_id>`, `/trace convo <chat_id>`, `/trace user <phone>`, `/trace top users` (aggregate: who messaged most in a time window — one latest-turn link per sender, table below), `/trace tool <name>`, `/trace span <id>`, `/trace <url>`, `/trace test` (run canonical e2e via `text.ara.so/backend/scripts/e2e.ts` (`bun run e2e --target=local --scenarios=<name>`)), `/trace score`, `/trace online`, or `/trace grow`. **Use `/align`** to align system prompt and gates to traces and report before/after tables (`skills/align/SKILL.md`). **When the user asks for users’ traces / links:** give **one permalink per user** — the **latest** `webhook.inbound` root only. **When they ask for top / busiest users over a time range:** use the **top users table** format (Msgs, User, single review link) — no per-thread “all turns” column unless they ask.
Deeply research a technology already in the stack. Pulls latest official docs, changelogs, release notes, production recipes, and pitfalls via heavy web search — then maps findings onto the exact usage pattern in this repo to surface underused features and confirm best practices. Use whenever someone asks "are we using X right?", "what's the best way to use X for Y?", or "what did X ship recently that we should adopt?"
Braintrust `bt` CLI for Ara — every agent-facing service emits spans to the `Ara` project (org `Aradotso`). Use for inspecting logs/traces/prompts/evals, authenticating, SQL over spans, and wrapping new code with tracing. For the Ara-specific span shape and debug recipes (`/trace recent`, `/trace turn`, `/trace user`, etc.) see the companion `/trace` skill.