Sandbox
@assafkip/research-mode

Claude Code plugin for citation-grounded research mode

This plugin adds a toggleable research mode to Claude Code. When it is on, Claude is constrained to cite sources, use direct quotes, and avoid guessing when evidence is missing.

151 stars16 forksUpdated 5mo ago
Who it's for

Builders who use Claude Code for research and want answers tied to named sources.

What it delivers

You can ask research questions with responses that stay grounded in citations instead of drifting into hallucination.

What it does

Citation guardrails

Forces Claude to cite every claim and retract unsourced statements.

Quote-first responses

Asks Claude to ground answers in direct quotes before it analyzes them.

I don't know behavior

Makes Claude say it does not know when there is no credible source.

Source cascade

Checks local files, web search snippets, web fetch, and Scholar Gateway in that order.

Toggle on and off

Keeps research mode separate from normal work so you can switch it on only when needed.

How to get it

  1. 1Step 1 -- Add the marketplace
    /plugin marketplace add assafkip/research-mode
  2. 2Step 2 -- Install the plugin
    /plugin install research-mode@assafkip-research-mode

README

Research Mode for Claude Code

Anti-hallucination toggle for Claude Code. Activates citation constraints from Anthropic's documentation that force Claude to cite sources, say "I don't know" when unsure, and ground responses in direct quotes.

Using Kipi Founder OS? Research mode is already built into kipi-core. Just run /q-research <topic>. No extra install needed.

Install

Works in Claude Code CLI, the macOS desktop app, and the VS Code extension. Open Claude Code and run these two commands:

Step 1 -- Add the marketplace:

/plugin marketplace add assafkip/research-mode

Step 2 -- Install the plugin:

/plugin install research-mode@assafkip-research-mode

That's it. To confirm it installed, run /plugin and check that research-mode appears in your list.

Alternative -- install as a standalone skill: If you prefer not to use the plugin system, clone this repo and copy the SKILL.md file into your project's .claude/skills/research-mode/ directory.

Use

/research-mode:research

Or with a topic:

/research-mode:research what caused the Change Healthcare breach

Say "exit research mode" to turn it off.

What it does

Three constraints activate simultaneously:

  1. Say "I don't know" -- no guessing, no inferring. If there's no credible source, Claude says so.
  2. Cite everything -- every claim must reference a file, URL, paper, or named source. Unsourced claims get retracted.
  3. Quote first, then analyze -- responses are grounded in word-for-word quotes from source material, not paraphrased summaries.

Source cascade (keeps token costs low)

Sources are checked in order. Claude stops at the first level that answers the question:

  1. Local files (Grep + Read) -- zero cost, most reliable
  2. WebSearch snippets -- cite the snippet directly, skip downloading full pages
  3. WebFetch -- only when the snippet is ambiguous or user needs full quotes
  4. Scholar Gateway -- for academic papers, if available

Token budget: 5 WebSearch, 3 WebFetch max per question. If the limit is hit, Claude summarizes what it found and asks before going deeper.

What it doesn't do

  • Not always-on. It's a toggle. Turn it on for research, off for creative work.
  • Not slow. Claude still uses tools in parallel and works efficiently.
  • Not restrictive on new ideas. You can synthesize across sources, but inputs must be grounded.

Why

LLMs hallucinate. When you're doing research that matters, you need guardrails that force citation discipline. This plugin packages Anthropic's own recommendations into a one-command toggle.

Troubleshooting

"Plugin not found" after Step 1: Make sure you typed the marketplace command exactly as shown. The marketplace name is assafkip/research-mode (GitHub username/repo).

Command doesn't appear after install: Run /reload-plugins to refresh, or restart Claude Code.

Want to scope it to one project only: Add --scope project to the install command in Step 2.

Built by

Assaf Kipnis -- built while running GTM, investor outreach, and content ops for KTLYST entirely through Claude Code. When your AI assistant is writing your pitch decks, researching competitors, and drafting investor briefs, hallucinated facts aren't a minor annoyance. They're a credibility risk. This toggle exists because I needed it.

Questions or feedback: [REDACTED]

Files in the repo

Repository payload4 top-level entries
  • .claude-plugin
  • commands
  • README.md
  • SKILL.md

Discussion (0)

Ask about usage, or say what you built with it

Sign in to join the discussion.

No comments yet. Be the first to say what this is good for.

More plugins

Makes your AI agent think like the laziest senior dev in the room. The best code is the code you never wrote.

138k
1 add

Graphs that teach > graphs that impress. Turn any code into an interactive knowledge graph you can explore, search, and ask questions about. Works with Claude Code, Codex, Cursor, Copilot, Gemini CLI, and more.

82k
code-yeongyu/
oh-my-openagent

OmO: Just type "mass ulw" keyword with your prompt. Now you are the master of graph engineering.

69k

Persistent Context Across Sessions for Every Agent – Captures everything your agent does during sessions, compresses it with AI, and injects relevant context back into future sessions. Works with Claude Code, OpenClaw, Codex, Gemini, Hermes, Copilot, OpenCode + More

94k

Opinionated Oxlint rules for rejecting low-evidence TypeScript and JavaScript patterns

4.3k