Research across many sources for Codex in the ChatGPT desktop app, and in Claude Code. See what has been found, what is still uncertain, what it used, and where to steer next.
New to Dig? Open Start here in Dig for a visual introduction to asking a question, observing the saved research, and steering the next step. It includes practical examples and plain-language explanations of sources, evidence and costs. Or read the getting started guide.
You need:
- the ChatGPT desktop app with Codex (tested on macOS);
- Node.js 22 or newer (
node --versionto check).
Then run:
codex plugin marketplace add jonpage0/dig
codex plugin add dig@digIf your terminal doesn't know codex, use the copy inside the ChatGPT app:
/Applications/ChatGPT.app/Contents/Resources/codex-cli/bin/codex plugin marketplace add jonpage0/dig
/Applications/ChatGPT.app/Contents/Resources/codex-cli/bin/codex plugin add dig@digRefresh the plugin connection, then type $dig:setup in a new conversation. It walks you through choosing sources. If Dig still does not appear after the refresh, quit and reopen ChatGPT.
Try it with no keys: Hacker News, DeepWiki, Polymarket and the Wayback Machine work without any account.
For a first run, enable Hacker News and ask: “Use Dig and Hacker News to research how developers approach local-first software. Show the strongest findings, disagreements and remaining gaps. Save the supporting research and suggest a useful next question.” Open Overview, choose the question, and use its saved findings and coverage to decide what to ask next.
Dig also runs in Claude Code 2.1 or newer, with the same Node 22 requirement:
claude plugin marketplace add jonpage0/dig
claude plugin install dig@digStart a new session and type /dig:setup. Run one method directly with /dig:hackernews, /dig:reddit and so on, or ask a research question with /dig:dig. Claude Code and Codex share the same settings, keys and research library. Claude Code shows no Dig views: research, saved reports, library search and reading work through the conversation, and the library is the folder under ~/.local/share/dig. Update with claude plugin marketplace update dig then claude plugin update dig@dig; remove with claude plugin uninstall dig@dig.
To add keys in Claude Code, edit ~/.local/share/dig/keys.env directly, or run /dig:setup for the exact lines to add.
Ask a question in Codex. Your assistant chooses useful enabled sources, reads their reports and important originals, and explains the findings. Dig presents the saved research state for you to observe and steer; full records are available when you want to inspect a particular point.
25 sources · 30 research methods · 81 tools, including two optional shared helpers
What you get back:
- An overview of saved research, with provider usage visible and a research trail for the current conversation.
- Direct reading for each question: its saved answer or latest report, with coverage, reported gaps and activity available under Research details.
- A way to steer the next step: review a proposed instruction, place it in the conversation as an unsent draft or copy it, then send when ready.
- A retained-evidence reader for full reports and saved answers, with document navigation and original responses retained when enabled and saving succeeds.
The interface shows retained observations. A missing report does not mean an agent is paused or still running, and a source count does not prove that a question has been fully covered. Provider costs remain in their reported units; unknown never means free.
Good to know:
- You choose the sources. Run one directly (
$dig:redditin Codex,/dig:redditin Claude Code) or let Codex combine several. - Public research by default. Optional X sign-in reads your own bookmarks and likes. Video analysis can upload a local project clip you select. Coverage varies by platform.
- X has two ways in. X's API returns the posts themselves, and your assistant can look at the pictures in them; Grok adds search by meaning and reads images and videos. Four methods use them: X judge weighs claims, X breadth finds as many angles as it can, X post inspects one post, and X trace follows a conversation outward and weighs who is speaking.
In Codex, each save shows a compact card in the conversation: the research's title, its outcome (such as Report saved or Answer has gaps), its sources, when it was saved and the provider cost recorded for it. Its one Open button opens the saved file in Dig, or reads the complete retained file in place when Codex cannot open the link. The card carries no summary or findings: the conversation explains the conclusions, and displaying a card does not verify them. Claude Code shows no card. See research cards.
For website discovery, SEO and GEO questions, Dig's method connects customer intent and search/AI observations to the actual cited or competing page and the owned page, then proposes specific changes and verification. The initiating conversation combines DataForSEO evidence, page reads and any owner-supplied analytics; provider-native history and saved reports support comparisons without a separate tracking system.
Ask “Use Dig’s YouTube video method to analyze this demo from 35 to 55 seconds. What changes, and does it support the speaker’s claim? Give the video URL and original timestamps for each finding.”
The optional YouTube video method ($dig:youtube-video in Codex, /dig:youtube-video in Claude Code) uses Gemini 3.8 Flash for standard deeper analysis. Choose Gemini 4 Argon next when the question needs harder reasoning. It can analyze selected intervals, compare up to ten video inputs, follow up on stored context, and return structured findings. Enable YouTube and add GEMINI_API_KEY in keys.env; this route needs no local downloader. The key is separate from the optional YouTube Data API key, and transcript research still works without it.
Use the standalone Video analysis tool ($dig:video-analyze in Codex, /dig:video-analyze in Claude Code) with Elorian Glimpse for a focused visual need or when you explicitly choose it. It works directly in the conversation, without a dig or report, and alongside appropriate source research. Enable it under Sources & tools → Shared tools and add ELORIAN_API_KEY. Direct video-file URLs work; local or YouTube clips need ffmpeg and ffprobe, plus yt-dlp for YouTube, and cover at most two minutes per selected interval.
Analysis remains model interpretation. Check exact speech and timestamps against the original; with several videos, require a separate original-video timeline for each. Google’s stored interaction history and Elorian’s uploaded media have their own retention, separate from Dig’s library. Both providers return token usage without a per-call dollar charge, so Dig records cost as unknown. See YouTube video understanding and Glimpse video inspection for controls, storage and evidence limits.
When a shortlist of collected excerpts is burdensome to compare, Evidence ranking can suggest what to read first and how each excerpt relates to a specific claim. It uses TypeSafe Jev on the supplied text, keeps every candidate available, and gives contradictions attention alongside supporting evidence. Scores and confidence are reading advice, not a truth check.
Enable Evidence ranking under Sources & tools → Shared tools and add TYPESAFE_API_KEY in keys.env. Enabling it does not run it automatically; a few obvious candidates usually need no extra call. The agent still reads relied-on reports completely and checks important originals. See evidence ranking for inputs, limits and interpretation.
You only need keys for the sources you turn on. Each service bills you directly, separately from your ChatGPT plan.
No key needed: Hacker News, DeepWiki, Polymarket, Wayback Machine.
Works without a key, with limits: GitHub (lower rate limits), Papers (shared rate limits), YouTube (needs yt-dlp installed).
| Service | Used by | Key name in keys.env |
|---|---|---|
| Elorian | Video analysis: selected clips, visual events and available speech | ELORIAN_API_KEY |
| TypeSafe (optional) | Evidence ranking: a suggested reading order for supplied excerpts | TYPESAFE_API_KEY |
| Exa | Exa: web search, page text, similar pages | EXA_API_KEY |
| Perplexity | Perplexity: cited answers and web search | PERPLEXITY_API_KEY |
| GitHub (optional) | GitHub: higher limits, plus review and issue samples | GH_TOKEN or GITHUB_TOKEN |
| xAI | X: Grok's search by meaning, including images and videos | XAI_API_KEY |
| X API | X: exact posts, threads, replies, accounts, search, counts, News | X_BEARER_TOKEN |
| X sign-in (optional) | X: your bookmarks and likes; people and Communities search | X_CONSUMER_KEY, X_CONSUMER_SECRET, X_ACCESS_TOKEN, X_ACCESS_TOKEN_SECRET |
| ScrapeCreators | Reddit, TikTok, Instagram, Facebook, LinkedIn, Telegram, Threads, Facebook ads, Google ads, LinkedIn ads, TikTok ads (Ad Library), YouTube (hosted transcripts and comments) | SCRAPECREATORS_API_KEY |
| TikHub | Reddit (advanced), China social, TikTok ads (Creative Center), X (Communities) | TIKHUB_API_KEY |
| Just One (optional) | China social: an alternative backend, used only when asked for | JUSTONE_API_KEY |
| Scrape.do | Amazon: products, search, deals, Best Sellers | SCRAPE_DO_API_KEY |
| Nexscope (optional) | Amazon: reviews and price/rank history | NEXSCOPE_API_KEY |
| Semantic Scholar (optional) | Papers: higher limits for paper search | SEMANTIC_SCHOLAR_API_KEY |
| OpenAlex (optional) | Papers: your own OpenAlex allowance | OPENALEX_API_KEY |
| Google Cloud (optional) | YouTube: Data API search | OPENCODE_RESEARCH_GOOGLE_API_KEY |
| Google Gemini (optional) | YouTube: Gemini video understanding and follow-up analysis | GEMINI_API_KEY |
| DataForSEO | DataForSEO: search results, keywords, rankings, backlinks | DATAFORSEO_USERNAME, DATAFORSEO_PASSWORD |
Partial setups work. X's API and Grok are independent, and so are Amazon's current data and its history. YouTube discovery, hosted transcripts and Gemini video understanding have separate prerequisites. Dig names what's unavailable instead of quietly swapping in another source.
Local tools: YouTube transcripts need yt-dlp. Federated paper search, full text, PDFs and section extraction need the optional Papers bridge (git and uv).
Sources and their keys has every option, alias and setup step.
Keys never go in the chat. On Dig's Sources & tools page, click Edit keys.env, paste your keys after the = signs and save. Dig picks up the change right away. The file lives at ~/.local/share/dig/keys.env; Claude Code has no Dig pages, so there you edit it directly.
- Ask a research question normally, or name the sources you want.
- Run one method: type
$dig:and pick one, such as$dig:x-postor$dig:facebook. - Open Dig from the sidebar to read reports, original responses and costs.
- Keep the overview in sight: activity charts and costs stay visible above recent research. Expand the charts for more detail, and inspect original responses alongside a report.
- Find saved research through the conversation: ask Dig to locate earlier reports by project, source or topic. The dashboard focuses on the overview and reading.
- Reuse past research by typing
@in the composer.
The Dig routing companion is a separate, instruction-only plugin that can use the current Dig connection or delegate to an authorized connected computer. Install it only if you want that routing skill:
codex plugin marketplace upgrade dig
codex plugin add dig-routing@digIts explicit invocation is $dig-routing:route; matching requests may select it automatically. Local installation makes it discoverable locally. Cloud-dot discovery and delegation require host support and separate verification.
codex plugin marketplace upgrade dig
codex plugin add dig@digRefresh Dig’s plugin/MCP connection, then verify the running version in About Dig or through source_info. Refresh an already-open Dig view after the server updates. Quit and reopen ChatGPT only if the connection still uses the old version. Your settings, keys and research are kept.
- Runs on your computer. Dig has no server of its own and collects nothing.
- What leaves your computer: searches go to the services you turn on, with your keys. YouTube understanding sends selected public video references and your question to Google; Glimpse sends selected media or media references to Elorian; optional evidence ranking sends the selected question and excerpts to TypeSafe. Their results enter your Codex conversation.
- Provider history: Google interaction storage is enabled by default for follow-ups and background results; a foreground first request can opt out with
store: false. Elorian uploads expire according to its returned file metadata. These are separate from Dig’s local retention. - Where things are kept: settings, keys and research live in
~/.local/share/dig(you can choose another research folder). - Costs: each service bills you. Dig shows what each reports; Codex model usage isn't included.
- Provider terms still apply to what you search and reuse.
codex plugin remove dig@dig
codex plugin marketplace remove digYour research stays in ~/.local/share/dig until you delete it.
npm install
npm run check # build, type check and offline tests
npm run smoke # one live, keyless Hacker News search in a throwaway folder
npm run live-check # one live call per free tool, saved under verification/liveInstall a local checkout with codex plugin marketplace add /path/to/dig. See the architecture, the changelog and the security policy.
MIT. See LICENSE; bundled third-party licenses are in plugin/THIRD_PARTY_NOTICES.md. Service logos are their owners' trademarks, shown to identify each service. Dig is an independent project, not affiliated with OpenAI, X or any provider.