oracle — Claude Code skill: what it does, how to install
Bundles selected project files and prompts for an independent second-model review via API or browser. Helps inspect patches and debug tricky bugs.
npx skills add openclaw/openclaw --skill oracle -a claude-codeWhat oracle does
This skill runs the @steipete/oracle CLI to package your prompt and selected files for a single second-model pass. It defaults to gpt-5.5-pro. Before spending tokens, you can preview the full payload and file tree using --dry-run summary --files-report.
Oracle operates in two modes: browser mode for long ChatGPT Pro thinking runs or API mode when OPENAI_API_KEY or Azure settings are present. It honors .gitignore, skips directories like node_modules or .git, and rejects files over 1 MB unless explicitly targeted.
All runs are stored under ~/.oracle/sessions. If a browser run detaches or times out, reattach with oracle session instead of running it again. Install it if you need an advisory second opinion from another model before shipping code.
What it helps with
- review critical patches with a second independent model
- inspect token usage and payload size before running queries
- run long reasoning prompts through a browser session
- reattach to detached analysis sessions without rerunning
Example prompts for the agent
- Run an oracle dry run on src/** excluding test files
- Ask oracle to review src/api.ts using the browser engine
- Check status of previous oracle sessions from the last 72 hours
How to install oracle
1Skills CLI (Vercel)
npx skills add openclaw/openclaw --skill oracle -a claude-code2Manually: put the files in place
~/.claude/skills/oracle/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/oracle/
1Skills CLI (Vercel)
npx skills add openclaw/openclaw --skill oracle -a codex2Manually: put the files in place
.agents/skills/oracle/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add openclaw/openclaw --skill oracle -a cursor2Manually: put the files in place
.cursor/skills/oracle/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install openclaw/openclaw oracle2Manually: put the files in place
.github/skills/oracle/SKILL.md1Skills CLI (Vercel)
npx skills add openclaw/openclaw --skill oracle -a gemini-cli2Platform CLI
gemini skills install https://github.com/openclaw/openclaw --path skills/oracleManually: put the files in place
.devin/skills/oracle/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add openclaw/openclaw --skill oracle -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
From the same set48
The whole set →Similar
Questions about oracle
How to install oracle in Claude Code?
Run npx skills add openclaw/openclaw --skill oracle -a claude-code in your terminal. You will also need the @steipete/oracle package installed.
What does the oracle skill do?
It bundles selected files and a prompt into a standalone pass for an advisory review by a second LLM.
When should I use browser mode instead of API?
Browser mode suits long ChatGPT Pro runs and works without an API key, while API mode handles explicit calls and models outside GPT or Gemini.
Source text
SKILL.md · MIT
---
name: oracle
description: "Oracle CLI second-model review/debug/refactor/design with selected files, dry-run token checks, API or browser engine."
homepage: https://askoracle.dev
metadata:
{
"openclaw":
{
"emoji": "🧿",
"requires": { "bins": ["oracle"] },
"install":
[
{
"id": "node",
"kind": "node",
"package": "@steipete/oracle",
"bins": ["oracle"],
"label": "Install oracle (node)",
},
],
},
}
---
# oracle
Oracle bundles a prompt + selected files for one second-model pass. Treat output as advisory; verify against code + tests.
## Main path
Current CLI default model: `gpt-5.5-pro`. Browser engine is useful for long ChatGPT Pro runs; API engine is useful when `OPENAI_API_KEY` or Azure config is ready.
Recommended defaults:
- Preview first: `--dry-run summary --files-report`
- Browser long run: `--engine browser --model gpt-5.5-pro`
- API explicit: `--engine api --model gpt-5.5`
## Golden path
1. Pick a tight file set (fewest files that still contain the truth).
2. Preview payload + token spend (`--dry-run` + `--files-report`).
3. Use browser mode for long Pro thinking; API mode for explicit API calls.
4. If the run detaches/timeouts: reattach to the stored session. Do not blindly re-run.
## Commands (preferred)
- Help:
- `oracle --help`
- If the binary isn't installed: `npx -y @steipete/oracle --help` (avoid `pnpx` here; sqlite bindings).
- Preview (no tokens):
- `oracle --dry-run summary -p "<task>" --file "src/**" --file "!**/*.test.*"`
- `oracle --dry-run full -p "<task>" --file "src/**"`
- Token sanity:
- `oracle --dry-run summary --files-report -p "<task>" --file "src/**"`
- Browser run (main path; long-running is normal):
- `oracle --engine browser --model gpt-5.5-pro -p "<task>" --file "src/**"`
- Manual paste fallback:
- `oracle --render --copy -p "<task>" --file "src/**"`
- Note: `--copy` is a hidden alias for `--copy-markdown`.
## Attaching files (`--file`)
`--file` accepts files, directories, and globs. You can pass it multiple times; entries can be comma-separated.
- Include:
- `--file "src/**"`
- `--file src/index.ts`
- `--file docs --file README.md`
- Exclude:
- `--file "src/**" --file "!src/**/*.test.ts" --file "!**/*.snap"`
- Defaults (implementation behavior):
- Default-ignored dirs: `node_modules`, `dist`, `coverage`, `.git`, `.turbo`, `.next`, `build`, `tmp` (skipped unless explicitly passed as literal dirs/files).
- Honors `.gitignore` when expanding globs.
- Does not follow symlinks.
- Dotfiles filtered unless opted in via pattern (e.g. `--file ".github/**"`).
- Files > 1 MB rejected.
## Engines (API vs browser)
- Auto-pick: `api` when `OPENAI_API_KEY` is set; otherwise `browser`.
- Browser supports GPT + Gemini only; use `--engine api` for Claude/Grok/Codex or multi-model runs.
- Browser attachments:
- `--browser-attachments auto|never|always` (auto pastes inline up to ~60k chars then uploads).
- Remote browser host:
- Host: `oracle serve --host 0.0.0.0 --port 9473 --token <secret>`
- Client: `oracle --engine browser --remote-host <host:port> --remote-token <secret> -p "<task>" --file "src/**"`
## Sessions + slugs
- Stored under `~/.oracle/sessions` (override with `ORACLE_HOME_DIR`).
- Runs may detach or take a long time (browser + Pro often does). If the CLI times out: do not re-run; reattach.
- List: `oracle status --hours 72`
- Attach: `oracle session <id> --render`
- Use `--slug "<3-5 words>"` to keep session IDs readable.
- Duplicate prompt guard exists; use `--force` only when you truly want a fresh run.
## Prompt template (high signal)
Oracle starts with **zero** project knowledge. Assume the model cannot infer your stack, build tooling, conventions, or "obvious" paths. Include:
- Project briefing (stack + build/test commands + platform constraints).
- "Where things live" (key directories, entrypoints, config files, boundaries).
- Exact question + what you tried + the error text (verbatim).
- Constraints ("don't change X", "must keep public API", etc).
- Desired output ("return patch plan + tests", "give 3 options with tradeoffs").
## Attachments
- Leave `.env`, key files, and auth tokens out of attachments unless the user asks to include them.
## "Exhaustive prompt" restoration pattern
For long investigations, write a standalone prompt + file set so you can rerun days later:
- 6-30 sentence project briefing + the goal.
- Repro steps + exact errors + what you tried.
- Attach all context files needed (entrypoints, configs, key modules, docs).
Oracle runs are one-shot; the model doesn't remember prior runs. "Restoring context" means re-running with the same prompt + `--file …` set (or reattaching a still-running stored session).
© openclaw · MIT · openclaw/openclaw