Build an auditable evidence map for a contested technical choice, research synthesis, proposal review, or consequential decision. Use when Copilot must preserve supporting, contradicting, qualifying, and missing evidence with exact source regions instead of collapsing disagreement into prose.
f11a4e4Turn one contested question into a portable decision artifact that shows what supports the current position, what pushes against it, and what remains unknown. Do not use a graph to decorate an answer that has not been sourced.
For a simple factual claim or a general fact-checking request, use a verification
workflow such as doublecheck instead. Use this skill when the relationships
between evidence, intermediate claims, trade-offs, and missing facts matter.
Frame one decision. Write one falsifiable question and one provisional position. Narrow the question until a reader can identify what action or belief the map is testing.
Collect bounded source regions. Prefer direct observations and primary sources. Record the URL or absolute local path, publisher, publication date, retrieval date, section/page/line/timestamp locator, and a short checkable excerpt. Read references/evidence-ladder.md when source quality is disputed.
Atomize the reasoning. Create only four node types:
position: the single current verdict;claim: an intermediate proposition;evidence: a faithful statement of one source region;unknown: a specific missing fact that could change the verdict.Type every edge. Use supports, contradicts, qualifies, or
missing. Add a plain-language note explaining why the source node bears on
the target. Topical similarity is not support. Different scope, date, or
population is not automatically a contradiction.
Preserve counterevidence. Do not delete contrary evidence because the
provisional verdict survives it. Represent scope differences with
qualifies edges.
Express uncertainty structurally. Do not invent confidence percentages.
Add an unknown, narrow the position, or qualify a claim.
Write UTF-8 JSON with a .doubt.json suffix. Follow
references/map-schema.md. Keep IDs short,
stable, and semantic.
Validate fail-closed. Resolve
scripts/validate.mjs relative to this SKILL.md, then run it with Node.js
18 or newer:
node <skill-directory>/scripts/validate.mjs decision.doubt.json
The bundled validator uses only Node.js built-ins and does not require npm or
network access. Fix every finding before reporting success. Only say the map
is valid when the command exits 0 and prints VALID followed by a
64-character receipt. A file hash, node count, JSON parse, or manual schema
review is not a Doubt receipt. If deterministic validation cannot run, report
that block instead of inventing success.
Render the validated map only when the user has already installed
doubt-ai@0.8.0; do not install or execute a remote package implicitly:
doubt map decision.doubt.json --out decision.html
Verify source snapshots only with explicit network permission. The following command retrieves each recorded HTTP(S) source and fails closed if an excerpt cannot be matched:
doubt verify decision.doubt.json \
--out decision.verified.doubt.json
Never run this command implicitly. Local file verification does not use the
network. Do not write a verification object by hand or hide a mismatch.
Inspect the deliverable. Confirm that the question, verdict, counterevidence, unknowns, edge notes, and exact source regions remain readable. Treat JSON as the canonical editable artifact; HTML is a shareable view.
A finished map must satisfy all of these:
position has incoming reasoning;unknown node;Report:
Never describe a structurally valid map as proven true. Validation establishes traceability and graph integrity; source quality and inference quality still require human review.
Copy a source-pinned command for your client. You run it yourself.
Destination: .claude/skills/build-evidence-map · pinned to the source commit
# Run from your project root
git clone https://github.com/github/awesome-copilot.git .skillboard-tmp
git -C .skillboard-tmp checkout f11a4e441c5ff061b4f8ae37952be8c602e4034e
mkdir -p ".claude/skills"
cp -r ".skillboard-tmp/skills/build-evidence-map" ".claude/skills/"
rm -rf .skillboard-tmpReview the source before running. This copies files into your project; it is not a one-click install and does not verify runtime safety.
sudo apt update && sudo apt install -y gitnpm install -g @anthropic-ai/claude-code# Run from your project root
git clone https://github.com/github/awesome-copilot.git .skillboard-tmp
git -C .skillboard-tmp checkout f11a4e441c5ff061b4f8ae37952be8c602e4034e
mkdir -p ".claude/skills"
cp -r ".skillboard-tmp/skills/build-evidence-map" ".claude/skills/"
rm -rf .skillboard-tmpDestination: .claude/skills/build-evidence-map
Scanner static-checks@0.1.0 · commit f11a4e441c5f. Static checks cannot prove runtime safety – review the source and the exact diff before installing. How checks work.
No static rules matched. This is not a safety guarantee.