Added
oracle-mcpstdio server (bin) withconsultandsessionstools plus read-only session resources atoracle-session://{id}/{metadata|log|request}.- MCP logging notifications for consult streaming (info/debug with byte sizes); browser engine guardrails now check Chrome availability before a browser run starts.
- Hidden root-level aliases
--message(prompt) and--include(files) to mirror common agent calling conventions. --previewnow works with--engine browser, emitting the composed browser payload (token estimate, attachment list, optional JSON/full dumps) without launching Chrome or requiring an API key.- New
--browser-bundle-filesflag to opt into bundling all attachments into a single upload; bundling is still auto-applied when more than 10 files are provided. - Desktop session notifications (default on unless CI/SSH) with
--[no-]notifyand optional--notify-sound; completed runs announce session name, API cost, and character count via OS-native toasts. - Per-user JSON5 config at
~/.oracle/config.jsonto set default engine/model, notification prefs (including sound/mute rules), browser defaults, heartbeat, file-reporting, background mode, and prompt suffixes. CLI/env still override config. - Session lists now show headers plus a cost column for quick scanning.
Changed
- Browser model picker is now more robust: longer menu-open window, richer tokens/testids for GPT-5.1 and GPT-5 Pro, fallback snapshot logging, and best-effort selection to reduce “model not found” errors.
- MCP consult honors notification settings so the macOS Swift notifier fires for MCP-triggered runs.
sessionstool now returns a summary row foridlookups by default; passdetail: trueto fetch full metadata/log/request to avoid large accidental payloads.- Directory/glob expansions now honor
.gitignorefiles and skip dotfiles by default; explicitly matching patterns (e.g.,--file "src/**/.keep") still opt in. - Default ignores when crawling project roots now drop common build/cache folders (
node_modules,dist,coverage,.git,.turbo,.next,build,tmp) unless the path is passed explicitly. Oracle logs each skipped path for transparency. - Browser engine now logs a one-line warning before cookie sync, noting macOS may prompt for a Keychain password and how to bypass via
--browser-no-cookie-syncor--browser-allow-cookie-errors. - gpt-5-pro API runs default to non-blocking; add
--waitto block.gpt-5.1and browser runs still block by default. CLI now polls once forin_progressresponses before failing. - macOS notifier helper now ships signed/notarized with the Oracle icon and auto-repairs execute bits for the fallback terminal-notifier.
- Session summaries and cost displays are clearer, with zombie-session detection to avoid stale runs.
- Token estimation now uses the full request body (instructions + input text + tools/reasoning/background/store) and compares estimated vs actual tokens in the finished stats to reduce 400/413 surprises.
MCP configuration (quick reference)
- Local stdio (mcporter): add to
config/mcporter.json{ "name": "oracle", "type": "stdio", "command": "npx", "args": ["-y", "@steipete/oracle", "oracle-mcp"] } - Claude Code (global/user scope):
claude mcp add --scope user --transport stdio oracle -- oracle-mcp - Project-scoped Claude: drop
.mcp.jsonnext to the repo root with{ "mcpServers": { "oracle": { "type": "stdio", "command": "npx", "args": ["-y", "@steipete/oracle", "oracle-mcp"] } } } - The MCP
consulttool honors~/.oracle/config.jsondefaults (engine/model/search/prompt suffix/heartbeat/background/filesReport) unless the caller overrides them.