structured-analytic-skills

Structured analytic techniques as agent skills. Heuer's ACH, NATO Admiralty grading, GRADE, Cochrane RoB 2, AMSTAR 2, Delphi, scenario planning, Wardley mapping, NASA TRL, Brier scoring, meta-analysis, reference-class forecasting, AHP/MCDA, ICD 203 estimative language. Every skill implements a published method, cites it, and ships a copy-ready output template, a worked example, a verification checklist, eval cases, and — where the method contains arithmetic — a deterministic, standard-library-only companion tool.

validate skills deterministic per-skill score companion tools spec license


Most agent-skill collections are prompt grab-bags. These are established analytical methods — from intelligence analysis, evidence-based medicine, foresight, decision analysis and strategy practice — adapted into agent-executable form and held to a bar you can measure:

  • Method fidelity. Each skill uses the method's own labels, scales and step order, names the originator and year in the body, and cites the canonical publication with a locator. Fidelity is audited source-by-source; see the independent audit, second-pass verification, and changelog.
  • A deterministic quality score. evaluation/score_skills.py scores every skill on 12 mechanically-checked dimensions. No model, no judgement: the same skill files give the same per-skill numbers, and every lost point names the check to fix. The single library score is a different thing and is not purely content-determined — it is 0.85 × mean(skill score) + 0.15 × repo hygiene, and the hygiene component inspects the working tree, so a stray .DS_Store or an out-of-date index.json moves it. Reproduce the per-skill figures; read the library figure as a snapshot of the checkout it was run on.
  • Discoverability evals. Every skill ships evals/evals.json — prompts phrased the way a user would ask, plus near-miss negatives naming the sibling that should handle them. A BM25 trigger eval gates rank-1 accuracy in CI; the same cases run under model-based harnesses (claude plugin eval, the anthropics/skills skill-creator loop) via evaluation/run_evals.py.
  • Deterministic tools. 36 companion scripts — the RoB 2 judgement algorithm, GRADE certainty, AMSTAR 2 ratings, Brier decomposition, meta-analytic pooling, ACH scoring, power and sample size, AHP consistency ratios, EVPI, IP valuation, S-curve fitting, HHI patent concentration, PRISMA counts and more. Standard library only, --selftest, --help, JSON I/O, byte-for-byte reproducible, offline unless you opt in.
  • Self-contained and spec-exact. Frontmatter follows the Agent Skills specification; all 69 skills pass the agentskills.io reference validator — agentskills validate, the console script from the PyPI package skills-ref, run per skill in CI — and claude plugin validate --strict; nothing references a tool or system that is not in this repository. (skill-creator is an authoring skill in anthropics/skills, not a validator and not an OpenAI tool; what this repo takes from it is its eval-file schema, checked by evaluation/eval_schema.py.)

Install

Claude Code (plugin)

claude plugin marketplace add radarist/structured-analytic-skills
claude plugin install structured-analytic-skills@structured-analytic-skills

Skills are then available as /structured-analytic-skills:<skill-name>, and Claude loads one automatically when a request matches its description.

Codex / ChatGPT desktop

git clone https://github.com/radarist/structured-analytic-skills.git
mkdir -p .agents/skills
cp -R structured-analytic-skills/skills/* .agents/skills/

Codex discovers .agents/skills from the working directory to the repository root and also supports ~/.agents/skills for user-wide installation. Each skill includes optional agents/openai.yaml UI metadata. Codex budgets its initial skill listing, so for the strongest routing in a large personal library copy the relevant category or individual skill rather than every installed collection.

Concretely: the full 69-skill listing currently renders as approximately 58,400 characters of skill metadata — about 7.3× the 8,000-character initial skill-listing budget Codex documents. On any client with a capped listing, copy one category subset from the catalog below rather than all 69, or the client may truncate descriptions or omit skills.

Kimi Code CLI

git clone https://github.com/radarist/structured-analytic-skills.git
kimi --skills-dir "$PWD/structured-analytic-skills/skills"

Kimi also discovers project or user skills under .agents/skills / ~/.agents/skills; the canonical <name>/SKILL.md layout here needs no conversion.

Other Agent-Skills-compatible harnesses (Cursor, Copilot, Gemini CLI, Goose …)

Copy one or more directories from skills/ into the client's Agent Skills directory. Each SKILL.md is self-contained; the content is plain method prose, usable as a prompt, checklist or reference. index.json is the machine-readable catalog (name, description, category, method, origin, version, scripts, references, evals, sha256).

Quality at a glance

Both columns were produced by the same scorer. The "before" column is a preserved pre-publication score artifact generated by applying the current rubric to an early development tree. The public Git history begins at v1.0.0, so that earlier source tree is deliberately not part of the release and the baseline cannot be re-run from a public clone. make compare compares the current tree with the preserved JSON record. The library score is 0.85 × mean(skill score) + 0.15 × repo hygiene; the hygiene component inspects the working tree, so it describes the checkout it was measured on rather than the commit alone.

Metric Before (pre-publication baseline) Now (v1.0)
Library score (0–100; incl. working-tree hygiene) 70.4 100.0
Mean skill score 77.5 100.0
Median skill score 77.1 100.0
Lowest-scoring skill 61.3 100.0
Skills · with tools · with eval cases 59 · 12 · 0 69 · 36 · 69
Trigger eval — positives ranked 1 / negatives held 100% / 100% (365 cases)
Mechanical checks passed 2902 / 3708 4356 / 4356

The 2026-08-18 second pass closed the seven remaining D11 word-budget checks without removing the necessary attribution. The deterministic suite now reports every mechanical check passing; that is evidence of structural conformance, reproducibility and internal consistency, not a substitute for expert review of method fidelity or cross-model output quality.

Behavioral evidence is kept separate from mechanical conformance, and it is thin. The Claude probe was ten skills, one eval case each, one run per arm, answered and scored by a fast model (haiku answering, haiku judging), and four of the ten cases came out flat or negative (one at −0.20); the +0.38 mean expectation pass-rate lift is that sample's average, not a benchmark result. The pre-publication Codex IP-valuation forward test is likewise one case, one run per arm: 6/8 → 8/8 (+33.3% relative) after one documented revision. Neither is a cross-model benchmark; the per-case table and caveats are in evaluation/report.md §5.

Dimension-by-dimension movement and the original behavioral probes are in the historical evaluation/report.md; the release-readiness evidence is in the independent audit and second-pass verification. The rubric is evaluation/rubric.md; the research the redesign was built on is in evaluation/research/.

The catalog

Decision & strategy

Choosing between options, ranking explanations, and stress-testing a decision before it is made.

Skill Method Tool
analysis-of-competing-hypotheses Analysis of Competing Hypotheses (ACH) ach.py
cheapest-experiment Cheapest decisive experiment (minimum viable test with a pre-committed decision rule)
cynefin-classification Cynefin framework
decision-matrix-mcda Weighted Decision Matrix / Multi-Criteria Decision Analysis (MCDA) with AHP weights mcda.py
decompose-research-question Issue-tree decomposition (MECE sub-questions with dependency order and a recombination plan)
delphi-method Delphi method (anonymous iterated expert elicitation with controlled feedback) delphi.py
expected-value-decision-tree Decision tree analysis — expected-value roll-back, EVPI/EVSI, one-way sensitivity (tornado) dtree.py
five-forces-analysis Five Forces (industry structure analysis)
foresight Single-trajectory dated prediction with weak-signal and kill-signal watchlist (composite)
jtbd-framing Jobs to be Done (JTBD) framing — Ulwick's outcome-driven job and outcome statements with Christensen's hire / non-consumption lens
morphological-analysis General Morphological Analysis (GMA) with Cross-Consistency Assessment (CCA) morph.py
premortem-analysis Premortem (prospective hindsight)
scenario-planning Scenario planning (Shell/GBN deductive 2×2)
three-horizons Three Horizons of Growth (McKinsey)
wardley-map-drafting Wardley mapping

Foresight

Looking further out: weak signals, alternative futures, and the indicators that tell you which one is arriving.

Skill Method Tool
backcasting Backcasting (normative foresight)
causal-layered-analysis Causal Layered Analysis (CLA)
cross-impact-analysis Cross-impact analysis with MICMAC-style structural analysis (direct stage) crossimpact.py
futures-wheel Futures Wheel
high-impact-low-probability High-Impact/Low-Probability Analysis (with "What If?" Analysis)
horizon-scanning Horizon scanning
indicators-validation Indicators and Indicators Validator (indicators generation, validation and evaluation) indicators.py
steep-pestle-analysis STEEP / PESTLE macro-environment analysis
trend-analysis Trend analysis with Trend Impact Analysis (TIA) trend.py

Technology assessment

Reading the maturity, momentum and competitive position of a technology or the organisations building it.

Skill Method Tool
analyze-patent-claims Patent claim construction and structural claim analysis claims.py
analyze-release-notes Release-note parsing against SemVer, Conventional Commits and Keep a Changelog relnotes.py
apply-hype-cycle Gartner Hype Cycle placement
assess-research-momentum Bibliometric momentum assessment (publication S-curve + citation velocity) momentum.py
estimate-market-size TAM/SAM/SOM triangulation (top-down × bottom-up Fermi estimation) market.py
evolution-stage Wardley evolution stage (evolution axis)
oss-project-health CHAOSS community-health metrics (repository vitality read) osshealth.py
position-competitor Two-axis competitive positioning map positioning.py
read-patent-landscape Patent landscape analysis (WIPO PLR methodology) landscape.py
score-technology-readiness Technology Readiness Level (TRL) assessment trl.py
value-intellectual-property WIPO IP valuation using cost, market, income, rNPV and real-options approaches ipvalue.py

Evidence & verification

Establishing what is actually known, how well it is sourced, and where a conclusion would break.

Skill Method Tool
abstain-or-escalate Abstention and escalation decision for unverifiable claims
amstar2-review-appraisal AMSTAR 2 (A MeaSurement Tool to Assess systematic Reviews, version 2) amstar2.py
claim-provenance Validated-vs-assumption claim tagging (adapted from Discovery-Driven Planning)
critique-report Structured self-critique of a draft document
evidence-appraisal GRADE certainty of evidence (Grading of Recommendations Assessment, Development and Evaluation) grade.py
grounded-answer Chain-of-Verification (CoVe)
grounded-fact-check Pre-publication fact-check of load-bearing specifics (adaptation of newsroom fact-checking practice)
key-assumptions-check Key Assumptions Check
meta-analysis Meta-analysis (fixed-effect and DerSimonian–Laird random-effects pooling) metapool.py
quality-of-information-check Quality of Information Check
rate-source-admiralty Admiralty Code (NATO System, 6×6 source reliability × information credibility) admiralty.py
red-team-claim Red team / challenge analysis of a single claim
sift-source-check SIFT (Stop, Investigate the source, Find better coverage, Trace claims to the original context)
steelman-argument Steelmanning (Rapoport's rules; ideological Turing test)
triangulate-sources Source triangulation (data triangulation applied to sourcing)
verify-citations Scholarly identifier format and checksum validation (ISO 26324, ISO 2108, ISO/IEC 7064) citecheck.py

Quantitative checks

The arithmetic behind a claim: significance, power, pooling, calibration, base rates.

Skill Method Tool
assess-study-bias Cochrane Risk of Bias 2 (RoB 2) for randomized trials rob2.py
bayesian-update Bayesian belief updating in odds form (prior odds × Bayes factor) bayes.py
benchmark-model-claims Benchmark claim integrity audit (six-domain checklist)
brier-score-calibration Brier score with Murphy decomposition and Brier Skill Score brier.py
experimental-design Randomized experimental design with a priori power analysis and validity audit power.py
quantitative-sanity-check Quantitative sanity check (internal-consistency arithmetic checklist) sanity.py
reference-class-forecasting Reference Class Forecasting (outside view) refclass.py
systematic-review Systematic review reported to PRISMA 2020 prisma.py
test-significance Null-hypothesis significance test with confidence interval and effect size significance.py

Domain-specific

Checks that need a field's own rules.

Skill Method Tool
chemistry-claim-check Formula arithmetic (DBE/RDBE, molecular weight) plus Lipinski's rule of five chem.py
detect-funding-round Funding-round event extraction (Form D / venture round taxonomy) funding.py
detect-ma-event M&A event extraction (deal-structure taxonomy) maevent.py
smiles-sanity-check SMILES syntax sanity check (Weininger 1988; OpenSMILES 1.0) smiles.py

Writing

Getting the finished analysis in front of a reader in a form they can act on.

Skill Method Tool
cite-ieee IEEE numbered-bracket citation style ieee.py
estimative-language Estimative language — words of estimative probability and analytic confidence wep.py
pyramid-principle The Pyramid Principle (governing thought, MECE support, SCQ framing)
write-imrad-report IMRAD (Introduction, Methods, Results, Discussion)
write-sbar-brief SBAR (Situation, Background, Assessment, Recommendation)

Methodology deep-dives

methodologies/ holds 28 long-form treatments of the underlying methods — origins, core concepts, full process detail, strengths and limitations, documented case studies, and an Agent Adaptation section (roles, pipeline, prompt templates, failure modes, human-in-the-loop gates, I/O contract) for each. Where a methodology counterpart exists, the skill and deep-dive link to one another. Start with methodologies/agent-playbook.md for the role catalog and end-to-end pipeline recipes. This directory is part of the published research and provenance record, not build residue.

Evaluating and reporting issues

make check      # structural gate: frontmatter, links, self-containment, script self-tests
make score      # deterministic 12-dimension scorecard, with deltas against the baseline
make compare    # compare current results with the preserved pre-publication baseline JSON
make trigger    # discoverability eval over every skill's evals/evals.json
make index      # regenerate index.json and the catalog above from frontmatter
make validate   # claude plugin validate --strict (needs the Claude Code CLI)
make all        # all of the above

CI runs the same gates on every push to main and on manual dispatch. This is an issue-only, maintainer-authored repository: pull requests, code contributions, co-maintenance and collaboration proposals are not accepted. CONTRIBUTING.md documents the reporting policy, house style, companion-tool conventions and maintainer review bar. A skill that misrepresents a method is the most valuable issue you can file — quote the line and the primary source. Pull requests are disabled in the repository settings.

On provenance

These skills encode methods developed by other people. Where a technique has a canonical source, the skill names it: Heuer for ACH, Klein for the premortem, Wardley for evolution stages, NASA for TRL, Cochrane for RoB 2, Shea et al. for AMSTAR 2, the GRADE Working Group for certainty ratings, Saaty for AHP, Kahneman & Lovallo and Flyvbjerg for reference-class forecasting, ODNI/PHIA/IPCC for calibrated uncertainty language, Zwicky and Ritchey for morphological analysis, Dhuliawala et al. for Chain-of-Verification. The contribution here is the adaptation into an agent-executable, verifiable form — not the underlying method.

Origin

Extracted from Radarist, a technology-intelligence system where these skills run inside research missions. References to that system's internals were removed so each skill stands alone, and a denylist in evaluation/check_repo.py keeps them out. Skills specific to that system's workflow and development pipeline are deliberately not included — they are procedures, not analytical methods.

License

MIT — see LICENSE. Cite with CITATION.cff.

The MIT grant covers this repository's own text and code. It does not relicense the third-party material some skills reproduce: CC BY, CC BY-SA, OGL v3, Apache-2.0 and US-public-domain sources are listed file by file, with their rights holders and the required attribution statements, in THIRD-PARTY-NOTICES.md. Read it before redistributing.