Horosa Agent Skill (Codex / agentskills.io entry)
Thin client-agnostic contract. The single policy source is
skills/horosa-agent/SKILL.md — read it
(and its references/) before deep work. Maintainer/repo law: AGENTS.md.
Non-negotiable rules
- Never hand-calculate any Horosa/星阙 technique (no shell/Python/JS/web formulas, no memorized
tables). Every 盘/课/卦/运 comes from a
horosaMCP tool call (horosa_astro_chart,horosa_cn_qimen,horosa_cn_liureng_gods, …) or thehorosa-skillCLI. - Clarify before calling: if a result-changing setting is missing (birth/event time, place,
timezone, gender, house system, 起局方式, 贵人体系, target year), ask the user a short question
with options first. Tools reject unconfirmed calls with
agent_guidance.required; after the user answers, retry withagent_confirmed_settings: true(ordefaults_accepted: truewhen they accept defaults) plusclarification_notes. Never self-confirm; never switch tools to bypass the gate. In non-interactive runs (codex exec), surface the question as your final answer instead of guessing. - Read results only from
export_snapshot.export_text/.sections— that text is the chart. Do not restate numbers that are not in it, and do not invent sections it lacks. - If
horosatools are absent from the tool list: first turn after a cold start may simply be too early (Codex waits ~1s for optional servers; the runtime warms in ~45s) — retry next turn. Still absent → the server is not configured; point the user atexamples/clients/codex.md. - Errors carry structured recovery: on
details.agent_recovery, relayprompt_to_userverbatim and stop. On transport errors, suggesthorosa-skill doctor/horosa-skill selfcheck.
Shell-only agents (no MCP)
codex exec without MCP, CI bots, plain shell tools: the CLI carries the same contract. Parse stdout only
(exactly one JSON document; progress lines and error envelopes go to stderr). On Windows PowerShell 5.1 pass
payloads as --input / --output files, never through the pipe (it re-encodes bytes and mangles Chinese).
| Need | Command |
|---|---|
Tool names + aka: aliases |
horosa-skill tool list |
| What to confirm before a call | horosa-skill agent guidance --tool qimen |
| Run one technique | horosa-skill tool run qimen --input payload.json --output result.json |
| Natural-language routing | horosa-skill dispatch --input query.json --output result.json |
| One-command onboarding on a fresh machine | horosa-skill setup --client codex (uv run horosa-skill setup --client codex inside a checkout) |
Exit 2 + stderr code: "agent_guidance.required" = ask the user with details.agent_recovery.prompt_to_user,
then rerun with agent_confirmed_settings: true + clarification_notes (or defaults_accepted: true only when
the user explicitly accepts defaults). Exit 0 with ok: false = a real engine error (error.code), not a missing
technique. Read results only from data.export_snapshot.export_text; quote data.technique_card afterwards.