oracle

작성자: firecrawl

oracle CLI 사용 모범 사례 (프롬프트 + 파일 번들링, 엔진, 세션 및 파일 첨부 패턴)

npx skills add https://github.com/firecrawl/openclaw --skill oracle

oracle — best use

Oracle bundles your prompt + selected files into one “one-shot” request so another model can answer with real repo context (API or browser automation). Treat output as advisory: verify against code + tests.

Main use case (browser, GPT‑5.2 Pro)

Default workflow here: --engine browser with GPT‑5.2 Pro in ChatGPT. This is the common “long think” path: ~10 minutes to ~1 hour is normal; expect a stored session you can reattach to.

Recommended defaults:

  • Engine: browser (--engine browser)
  • Model: GPT‑5.2 Pro (--model gpt-5.2-pro or --model "5.2 Pro")

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 the usual GPT‑5.2 Pro workflow; use API only when you explicitly want it.
  4. If the run detaches/timeouts: reattach to the stored session (don’t 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.2-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 + GPT‑5.2 Pro often does). If the CLI times out: don’t 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”).

Safety

  • Don’t attach secrets by default (.env, key files, auth tokens). Redact aggressively; share only what’s required.

“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).

firecrawl의 다른 스킬

firecrawl-research-index
firecrawl
Firecrawl Research를 사용하여 연구 질문에 답하는 논문을 찾습니다. 의미론적 검색, 의미론적 및 구조적 확장, 본문 내 검증을 활용합니다. 단일 논문 조회나 전체 다중 논문 세트 등 논문 검색/문
data-analysisresearchweb-scraping
pinecone
firecrawl
프로덕션 AI 애플리케이션을 위한 관리형 벡터 데이터베이스입니다. 완전 관리형, 자동 확장, 하이브리드 검색(밀집 + 희소), 메타데이터 필터링, 네임스페이스를 지원합니다.
wpds
firecrawl
WordPress 디자인 시스템(WPDS)과 그 컴포넌트, 토큰, 패턴 등을 활용하여 UI를 구축할 때 사용합니다.
audiocraft-audio-generation
firecrawl
PyTorch 라이브러리로, 텍스트-음악(MusicGen) 및 텍스트-사운드(AudioGen)를 포함한 오디오 생성을 지원합니다. 텍스트로부터 음악을 생성해야 할 때 사용합니다…
skypilot-multi-cloud-orchestration
firecrawl
다중 클라우드에서 ML 워크로드를 오케스트레이션하며 자동 비용 최적화를 제공합니다. 여러 클라우드에 걸쳐 학습 또는 배치 작업을 실행해야 하거나, 활용해야 할 때 사용하세요.
firecrawl-seo-audit
firecrawl
Firecrawl을 사용하여 웹사이트의 SEO를 감사합니다. 사용자가 SEO 감사, 메타데이터 및 헤딩 검토, 사이트맵/사이트 구조 분석, 키워드 기회, 경쟁사 SERP 비교, 또는 우선순위가 지정된 검색 최적화 추천을 요청할 때 사용하세요.
data-analysisresearchweb-scraping
gh-issues
firecrawl
GitHub 이슈를 가져오고, 수정을 구현할 하위 에이전트를 생성한 후 PR을 열고, PR 리뷰 코멘트를 모니터링하고 대응합니다. 사용법: /gh-issues [소유자/저장소] [--레이블…]
tmux
firecrawl
대화형 CLI를 위해 키 입력을 보내고 패널 출력을 스크래핑하여 tmux 세션을 원격 제어합니다.