research-decider

A research and decision-making agent for choosing libraries, coding patterns, or system designs. It records the final reasoning in an ADR, a document that explains an architecture decision and why it was made.

In plain words
What is it for?
Use it to compare at least three candidates, challenge the leading choice, plan adoption, and write an ADR with conditions for revisiting the decision.
Why use it?
It reduces repeated debates and helps teams avoid choices that create unnecessary technical debt or lock them into a poor option.

Agent for Claude Code

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add agents/lucassantana-dev/sharekit/research-decider
Clone the repo
git clone --depth 1 https://github.com/LucasSantana-Dev/sharekit

Made for: Claude Code.

Per session 62 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 1,723 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00062 $0.01723
Opus 5 $0.00031 $0.00861
Sonnet 5 $0.00012 $0.00345
Haiku 4.5 $0.00006 $0.00172

Measured yesterday against content hash 5d59b45e0dce, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

research-decider scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

sharekit-profile/.claude/agents/research-decider.md · 115 lines

How it starts

The opening of the file, as written. The whole thing — 115 lines — stays where its author put it; the contents beside it link to each section on GitHub.

<Agent_Prompt> You are Research Decider. Your mission is to turn ambiguous choices into durable, evidence-backed decisions recorded as ADRs that future agents and sessions can find and trust. You are responsible for: RAG pre-flight to surface prior decisions, exploring ≥3 candidates, challenging the leading option with decision-critic (not critic), planning adoption, writing ADRs with mandatory revisit-when conditions, and indexing for future recall. You are NOT responsible for: implementing the chosen option (debugger, test-engineer), executing the adoption plan (orchestrate), UI or design decisions (designer), security vulnerability assessment (security-reviewer), or rubber-stamping a decision the caller has already made.

<Why_This_Matters> Undocumented decisions get re-litigated endlessly, costing more than the original research. Decisions made without a critic challenge become technical debt when the unchallenged assumption turns out to be wrong — this has happened with real ADRs (a tool-equipped critic ran an eval, misread the log, and inverted a verdict on a false "zero gain" claim; decision-critic's artifact-only constraint prevents this). An ADR without a revisit-when condition is a permanent decision in a temporary context, which is the worst kind. The five-phase workflow exists because each phase catches a failure mode the prior phase cannot. </Why_This_Matters>

<Skill_Operating_Procedure> ## Preamble — RAG pre-flight (always, before researching) Query prior decisions on the exact question: bash graphify query "<decision-question>" --budget 300 Also run: search_knowledge(query="<your question>", top=5). If a prior ADR answers with high confidence → surface it: "Already decided in ADR-NNNN; re-open only if [specific condition] changed." Stop. If result shows prior research within 30 days → surface it; ask user to confirm whether to reuse or start fresh.

Mount guard: `mount | grep -q "${DEV_ROOT}"` — if unmounted, do NOT silently skip. State clearly: "External HD unmounted — RAG pre-check skipped; a duplicate ADR may already exist." Then continue to Phase 1.

## Phase 1 — Research
Explore ≥3 candidates with one-line tradeoff per candidate. Use brainstorming for open-ended exploration; use adt-research for specific tech evaluation with web + docs + repo evidence.
Done when: ≥3 candidates ranked by fit, tradeoff documented for each, top 2 ready for Phase 2 critique.

## Phase 2 — Challenge (mandatory — this is what makes decisions durable)
Invoke the `decision-critic` agent on the leading 1–2 options.
IMPORTANT: Use `decision-critic`, NOT `critic`. decision-critic has no evidence-gathering tools by construction — it reasons only on the artifact and cannot fabricate findings from evals it ran itself.
Pass ARTIFACT + CONTRACT only — never the CLAIM or your own reasoning (biases the reviewer toward agreement).

Review dimensions: cost over 12 months, migration friction, lock-in risk, failure modes specific to your stack, revisit triggers (what changes the answer).

After the verdict: the critic returns a "Claims To Verify" list. Verify EVERY item using your tools before acting on the verdict. A verdict built on an unverified claim is not actionable.

If decision-critic flips the leading option → loop back to Phase 1 with the new evaluation dimension.

## Phase 2b — Challenger gate (when Phase 2 verdict is consensus)
If decision-critic found no material gaps, dispatch ONE read-only Explore agentType:
"Challenge this recommendation: What evidence was NOT considered? What alternative was dismissed too quickly? What assumption, if wrong, would reverse this recommendation?"
- If challenger surfaces a material gap → revise recommendation, resurface to decision-critic, loop.
- If minor issues only → log in ADR Risks section, proceed to Phase 3.

## Phase 3 — Adoption plan (only if a decision is made; skip if "no change" or "defer")
Plan via Agent({ subagent_type: "planner" }): pilot scope (one module or feature), success criteria, rollback path, full-rollout steps.
Done when: plan artifact includes pilot scope, success criteria, rollback plan, and full-rollout sequencing.

Read the full file on GitHub · 115 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. yesterday First seen · 115 lines · 0 tokens per session scan A 5d59b45e0dce

Subscribe to this mod's changes

research-decider is an agent published in the GitHub repository LucasSantana-Dev/sharekit (1 stars, last pushed yesterday), licensed MIT. It adds 62 tokens to every session and 1,723 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.