result-to-claim
Skill75 starsChanged 4 months agoMITView on GitHub
Use when experiments complete to judge what claims the results support, what they don't, and what evidence is still missing. The external LLM reviewer (via llm-chat MCP) evaluates results against intended claims and routes to next action (pivot, supplement, or confirm). Use after experiments finish — before writing the paper or running ablations.
- Reads credentials
4 other projects use a version of this, 3 of them edited.
Adopted by
Most recently taken up by
- wangyi0403/dl-research-workflowtheir own version, first seen Oct 13, 2026
- talhaMah56/claude_skillsedited, first seen Sep 12, 2026
- wanshuiyin/Auto-claude-code-research-in-sleepedited, first seen Jul 15, 2026
- raja21068/AutoResearchedited, first seen May 5, 2026
Other versions4 projects use a version of this.
Word for word · 0
None found.
Edited · 3
- wanshuiyin/Auto-claude-code-research-in-sleep★ 19k24% same
- raja21068/AutoResearch★ 250% same
- talhaMah56/claude_skills★ 022% same
Wrote their own version · 1
- wangyi0403/dl-research-workflow★ 4same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository52 other files it gives its agents.
- ablation-plannerSkill
- analyze-resultsSkill
- arxivSkill
- auto-claimSkill
- auto-experimentSkill
- auto-iteration-loopSkill
- autoSkill
- verify-pick-alternativesSkill
- auto-verifySkill
- data-ruleSkill
- experiment-auditSkill
- experiment-planSkill
- experiment-queueSkill
- finetune-hyperparameter-sweepSkill
- imageSkill
- multiple-choice-evaluationSkill
- experiment-tipsSkill
- steering-block-selectionSkill
- steering-coefficient-tuningSkill
- hypothesis-batchSkill
- idea-creatorSkill
- impact-checkSkill
- mechanic-db-searchSkill
- mechanism-auditSkill
- mechanism-behavior-discoverySkill
- mechanism-exploreSkill
- causal-attributionSkill
- CircuitSkill
- Feature Dictionary LearningSkill
- gradient-detectionSkill
- Magnitude AnalysisSkill
- Multi-Modal InterpretabilitySkill
- Neural Feature LearningSkill
- ProbingSkill
- Representation and Parameter AnalysisSkill
- SHAPSkill
- mechanism-skillsSkill
- Vocabulary ProjectionSkill
- mguideSkill
- mhistorySkill
- monitor-experimentSkill
- msearchSkill
- next-roundSkill
- notifySkill
- novelty-checkSkill
- paper-figureSkill
- research-litSkill
- research-refine-pipelineSkill
- research-refineSkill
- research-reviewSkill
- run-experimentSkill
- training-checkSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
16 rules. 6 are common, 2 are distinctive, and 8 are very specific to this project.
6
Common
Most of the 4 edited versions we read keep these.
2
Distinctive
This author's own choices. Worth a look.
8
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Common: line 16
After a set of experiments completes (main results, not just sanity checks)
- Common: line 17
Before committing to claims in a paper or review response
- Common: line 18
When results are ambiguous and you need an objective second opinion
- Very specific: line 50
Hard-fail rule: If LLM_MODEL is empty after this resolution (none of the three sources provides it), the skill MUST abort with:
- Very specific: line 53
Do not guess a default. Do not fall back to a model name read from task.md or any other project file.
- Very specific: line 63
EXPERIMENT_TRACKER.md: check which experiments are DONE vs still running
- Distinctive: line 166
If the gap is narrow (right direction, wrong magnitude / narrow coverage): list what supplementary experiments would close it.
- Distinctive: line 167
If the gap is wide (claim refuted, wrong direction): list constraints for future attempts (what NOT to try again)
- Common: line 168
Update CLAUDE.md Pipeline Status
- Very specific: line 178
If ablation studies are incomplete → trigger /ablation-planner
- Common: line 179
If all evidence is in → ready for paper writing
- Very specific: line 184
Do not inflate claims beyond what the data supports.
- Very specific: line 186
If confidence is low, treat the judgment as inconclusive and add experiments rather than committing to a claim.
- Very specific: line 187
If llm-chat MCP is unavailable (call fails), CC makes its own judgment and marks it [pending external review] — do not block the pipeline.
- Common: line 188
Always record the verdict and reasoning in findings.md, regardless of outcome.
- Very specific: line 192
After each mcp__llm-chat__chat reviewer call, save the trace following shared-references/review-tracing.md.
“Common” is measured: kept by at least 6 in 10 of the 4 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Result-to-Claim Gate
Experiments produce numbers; this gate decides what those numbers mean. Collect results from available sources, get an external-LLM judgment (via llm-chat MCP), then auto-route based on the verdict.
Context: $ARGUMENTS
When to Use
- After a set of experiments completes (main results, not just sanity checks)
- Before committing to claims in a paper or review response
- When results are ambiguous and you need an objective second opinion
Reviewer LLM Configuration (mandatory, read first)
This skill calls an external LLM reviewer. Never hardcode a model name and never read the reviewer model from task.md / project READMEs / source comments. Project-level files may list available API keys for unrelated purposes (e.g., LLM-as-judge inside experiment code); those are not the reviewer config.
Resolve LLM_MODEL, LLM_BASE_URL, LLM_API_KEY strictly in this priority order before any reviewer call:
- Project MCP config —
${PROJECT_ROOT}/.mcp.json, fieldmcpServers["llm-chat"].env.{LLM_MODEL,LLM_BASE_URL,LLM_API_KEY}. - User MCP config —
~/.claude/settings.json, same field. - Shell environment —
$LLM_MODEL,$LLM_BASE_URL,$LLM_API_KEY.
Pre-flight check (run before Step 1, mandatory)
LLM_MODEL_SRC=""
if [ -f .mcp.json ] && jq -e '.mcpServers["llm-chat"].env.LLM_MODEL' .mcp.json >/dev/null 2>&1 ; then
export LLM_MODEL=$(jq -r '.mcpServers["llm-chat"].env.LLM_MODEL' .mcp.json)
export LLM_BASE_URL=$(jq -r '.mcpServers["llm-chat"].env.LLM_BASE_URL' .mcp.json)
export LLM_API_KEY=$(jq -r '.mcpServers["llm-chat"].env.LLM_API_KEY' .mcp.json)
LLM_MODEL_SRC="project .mcp.json"
elif [ -f ~/.claude/settings.json ] && jq -e '.mcpServers["llm-chat"].env.LLM_MODEL' ~/.claude/settings.json >/dev/null 2>&1 ; then
export LLM_MODEL=$(jq -r '.mcpServers["llm-chat"].env.LLM_MODEL' ~/.claude/settings.json)
export LLM_BASE_URL=$(jq -r '.mcpServers["llm-chat"].env.LLM_BASE_URL' ~/.claude/settings.json)
export LLM_API_KEY=$(jq -r '.mcpServers["llm-chat"].env.LLM_API_KEY' ~/.claude/settings.json)
LLM_MODEL_SRC="user ~/.claude/settings.json"
elif [ -n "$LLM_MODEL" ] && [ -n "$LLM_BASE_URL" ] && [ -n "$LLM_API_KEY" ] ; then
LLM_MODEL_SRC="shell env"
fi
echo "[reviewer-config] LLM_MODEL=$LLM_MODEL LLM_BASE_URL=$LLM_BASE_URL source=$LLM_MODEL_SRC"Hard-fail rule: If LLM_MODEL is empty after this resolution (none of the three sources provides it), the skill MUST abort with:
"Reviewer model not configured. Add
mcpServers.llm-chat.env.{LLM_MODEL,LLM_BASE_URL,LLM_API_KEY}to.mcp.json(project) or~/.claude/settings.json(user)."
Do not guess a default. Do not fall back to a model name read from task.md or any other project file.
Workflow
Step 1: Collect Results
Gather experiment data from whatever sources are available in the project:
- W&B (preferred):
wandb.Api().run("<entity>/<project>/<run_id>").history()— metrics, training curves, comparisons - EXPERIMENT_LOG.md: full results table with baselines and verdicts
- EXPERIMENT_TRACKER.md: check which experiments are DONE vs still running
- Log files:
ssh server "tail -100 /path/to/training.log"if no other source - docs/research_contract.md: intended claims and experiment design
Assemble the key information:
- What experiments were run (method, dataset, config)
- Main metrics and baseline comparisons (deltas)
- The intended claim these experiments were designed to test
- Any known confounds or caveats
Step 2: External LLM Judgment
Send the collected results to the external LLM reviewer for objective evaluation. Always ask the external reviewer for strict, high-rigor feedback.
mcp__llm-chat__chat:
prompt: |
RESULT-TO-CLAIM EVALUATION
I need you to judge whether experimental results support the intended claim.
Intended claim: [the claim these experiments test]
Experiments run:
[list experiments with method, dataset, metrics]
Results:
[paste key numbers, comparison deltas, significance]
Baselines:
[baseline numbers and sources — reproduced or from paper]
Known caveats:
[any confounding factors, limited datasets, missing comparisons]
Please evaluate:
1. claim_supported: pass | fail
— `pass` means the data fully supports the claim as stated.
— `fail` means the data does NOT fully support the claim. This includes:
* the claim is refuted by the data
* the claim is only partially supported (some sub-claims work, others don't)
* coverage is too narrow for a general claim (e.g., only 1 dataset / 1 model / 1 seed)
* the direction is right but the magnitude misses the pre-registered pass criterion
* mixed results across metrics or splits
* critical baselines / controls are missing
Use `pass` only when the data unambiguously supports the claim. Anything borderline is `fail`.
2. what_results_support: what the data actually shows
3. what_results_dont_support: where the data falls short of the claim
4. missing_evidence: specific evidence gaps
5. suggested_claim_revision: if the claim should be strengthened, weakened, or reframed
6. next_experiments_needed: specific experiments to fill gaps (if any)
7. confidence: high | medium | low
Be honest. Do not inflate claims beyond what the data supports.
A single positive result on one dataset does not support a general claim — that is `fail`, not `pass`.Step 3: Parse and Normalize
Extract structured fields from the external reviewer's response:
- claim_supported: pass | fail
- what_results_support: "..."
- what_results_dont_support: "..."
- missing_evidence: "..."
- suggested_claim_revision: "..."
- next_experiments_needed: "..."
- confidence: high | medium | lowStep 3.5: Check Experiment Integrity (if audit exists)
Skip this step if EXPERIMENT_AUDIT.json does not exist.
if EXPERIMENT_AUDIT.json exists:
read integrity_status from file
attach to verdict output:
integrity_status: pass | warn | fail
if integrity_status == "fail":
append to verdict: "[INTEGRITY CONCERN] — audit found issues, see EXPERIMENT_AUDIT.md"
downgrade confidence to "low" regardless of external reviewer judgment
if integrity_status == "warn":
append to verdict: "[INTEGRITY: WARN] — audit flagged potential issues"
else:
integrity_status = "unavailable"
verdict is labeled "provisional — no integrity audit run"
(this does NOT block anything — pipeline continues normally)See shared-references/experiment-integrity.md for the full integrity protocol.
Step 4: Route Based on Verdict
fail — Claim not (fully) supported
Covers both outright refutation AND partial / borderline support — under the binary scheme, anything short of unambiguous support routes here.
- Record postmortem in findings.md (Research Findings section):
- What was tested, what worked, what fell short, hypotheses for why
- If the gap is narrow (right direction, wrong magnitude / narrow coverage): list what supplementary experiments would close it; re-run result-to-claim after they complete
- If the gap is wide (claim refuted, wrong direction): list constraints for future attempts (what NOT to try again)
- Update CLAUDE.md Pipeline Status
- Decide between three routes:
- Narrow the claim to the subset that IS supported, then re-evaluate
- Run supplementary experiments to fill the gaps and re-evaluate
- Pivot to the next idea from IDEA_CANDIDATES.md
- Multiple consecutive
failrounds on the same claim → record analysis in findings.md and lean toward narrowing the claim scope or pivoting.
pass — Claim supported
- Record confirmed claim in project notes
- If ablation studies are incomplete → trigger
/ablation-planner - If all evidence is in → ready for paper writing
Rules
- The external LLM is the judge, not CC. CC collects evidence and routes; the external reviewer evaluates. This prevents post-hoc rationalization.
- Do not inflate claims beyond what the data supports. Borderline / partial results are
fail, notpass; do not round up. - A single positive result on one dataset does not support a general claim. Be honest about scope.
- If
confidenceis low, treat the judgment as inconclusive and add experiments rather than committing to a claim. - If llm-chat MCP is unavailable (call fails), CC makes its own judgment and marks it
[pending external review]— do not block the pipeline. - Always record the verdict and reasoning in findings.md, regardless of outcome.
Review Tracing
After each mcp__llm-chat__chat reviewer call, save the trace following shared-references/review-tracing.md. Write files directly to .mechanist/traces/<skill>/<date>_run<NN>/. Respect the --- trace: parameter (default: full).
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

