agentsclimarketplace

Structured research

Skill rfxlamia/pocketto/skills/structured-research

Standalone skill for validating an explicit assumption with structured research. Use when a user holds a belief that is still an assumption — a technical claim, a library's behavior, a "this is probably how X works" — and wants it investigated methodically before it leaks into planning or code. Recommends a research methodology (non-binding) and returns an evidence-backed, graded verdict (Confirmed / Refuted / Inconclusive). Trigger on "structured-research", "validate this assumption", "is it true that", "research whether", "verify my assumption", "check this claim", "I assume X — is that right?". Standalone like bug-hunting / hotfix / brand-design — no pipeline required.From its SKILL.md

Install
npx -y skills add rfxlamia/pocketto --skill structured-research

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • 4 stars4 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
  • runs commandsInstructs the agent to run 1 command, including `git log --oneline -10`.

SKILL.md

8.8 KB, ~1.9k tokens by cl100k_base, as published. Nobody here has run it

Structured Research

Validate an explicit assumption against evidence before it becomes a planning input. Take the "thing the user still treats as an assumption", frame it as a falsifiable question, research it with a chosen methodology, and return a graded, evidence-backed verdict with a non-binding recommendation the maintainer may adopt, adapt, or replace.

Core principle: An assumption is not evidence. Evidence is not a verdict. A verdict is advisory, not a decree.

Violating the letter of this process is violating the spirit of structured research.

When to Use

Trigger when:

  • A belief is still an assumption — "I think X works this way", "this library probably supports Y", "Z is the fast path"
  • An assumption is about to enter planning/development unvalidated and the cost of being wrong is real
  • The user says "validate this", "is it true that…", "research whether…", "verify my assumption"

Do NOT use:

  • To generate or explore ideas (→ pocket-pitching / pocket-grinding — those diverge, this validates)
  • To fix a known defect (→ bug-hunting)
  • When the claim is already settled and just needs implementing (→ hotfix)

Boundary with pitching / grinding

structured-researchpocket-pitching / pocket-grinding
Tests whether a stated assumption holdsGenerates and explores ideas
Convergent — narrows to a verdictDivergent — widens the option space
Output: graded verdict + evidenceOutput: directions / spec
Single explicit assumption inVague problem in

The Three Iron Laws

LAW 1: NO VERDICT WITHOUT EVIDENCE
       A graded conclusion must cite the sources/observations behind it.

LAW 2: SEEK REFUTATION, NOT JUST CONFIRMATION
       At least one selected method must actively try to disprove the assumption.

LAW 3: THE VERDICT IS ADVISORY
       Output a recommendation, never a mandate. The maintainer decides.

Hard Gates

GATE 0: PREFLIGHT MUST COMPLETE BEFORE GREETING.
        Scan project context silently. No output until greeting.

GATE 1: NO RESEARCH without a confirmed, operationalized assumption.
        Phase 1 ends with the user confirming the restated, falsifiable question.
        Silence or vague approval is not confirmation.

GATE 2: AT LEAST ONE REFUTATION METHOD selected (Law 2).
        A research run that only seeks confirmation is invalid.

GATE 3: CURATION GATE before grading.
        After evidence is gathered, run the curation pass (advisor) — see Phase 4.
        Do not grade straight from raw evidence.

GATE 4: VERDICT MUST BE GRADED + ADVISORY.
        Confirmed / Refuted / Inconclusive, with cited evidence, framed non-binding.

Phase 0: Preflight

Goal: Understand context silently before greeting.

Scan (silent — no output yet):

  • Stack: detect from root files (package.json, Cargo.toml, requirements.txt, go.mod, pom.xml)
  • Whether the assumption touches a library/API present in the project (so a code/version check is possible)
  • Recent commits: git log --oneline -10 (the assumption may already be answered in history)

Then greet:

Project: [name] · Stack: [detected]
What assumption would you like to validate?

Phase 1: Assumption Intake

Goal: Turn a fuzzy belief into one confirmed, falsifiable question.

Process:

  1. User states the assumption.
  2. Operationalize it — restate as a precise, testable claim (use the Operationalization method from the catalog). Strip vague terms; name the measurable condition.
  3. Confirm:
    Assumption under test: [precise, falsifiable restatement]
    What would make it FALSE: [the disconfirming observation]
    Is this the right question before I research?
    

Rules:

  • Max 2 clarifying questions. This is intake, not interrogation.
  • If the assumption bundles several claims, ask which ONE to validate this session (one assumption per run).

HARD GATE: User must explicitly confirm the restatement. Do not proceed on silence.


Phase 2: Method Selection

Goal: Recommend 1–3 research methods (non-binding) for this assumption.

→ Read references/research-methods.csv — the methodology catalog (category,technique_name,description).

Selection heuristic (lean — no separate selection doc):

  • Always include ≥1 adversarial method (Falsification, Counterexample Hunt, Pre-Mortem…) — satisfies Law 2 / Gate 2.
  • Pick the evidence-gathering method that fits the claim's type:
    • Library/API/version behavior → empirical (Technical Spike, Reproduction Test) + triangulation (Documentation vs Reality Check).
    • Factual/published claim → triangulation (Source Triangulation, Citation Chaining).
    • Open-ended / "what are the possibilities" → elicitation (Verbalized Sampling to surface a distribution of candidate truths with likelihoods, then narrow).
    • Reasoning/causal claim → analytical (First-Principles Decomposition, Five Whys).
  • For a calibrated final confidence, optionally add a probabilistic method (Bayesian Updating).
  • 1 method if the claim is simple; 3 max — past 3, synthesis blurs.

State the recommendation (non-binding):

Recommended methods (you may pick, drop, or combine):
1. [Method] ([category]) — because [1-line reason]
2. [Method] ([category]) — because [reason]   ← refutation method (required)

Let the user adjust before gathering evidence.


Phase 3: Evidence Gathering

Goal: Apply the selected methods and collect cited evidence.

  • Use the right tool per method: Context7 (library docs / API behavior — preferred for any library claim), Tavily / WebSearch (published facts, recency), code scan / Technical Spike (project-internal or reproducible behavior).
  • For each method, record: what was checked, what was found, and the source (URL, doc, file:line, or spike output). No source → not evidence (Law 1).
  • Run the refutation method honestly — go looking for the disconfirming case, not around it.
  • One unknown blocking the rest? Resolve it with a focused spike before continuing.

Output evidence to the conversation, grouped by method, before the curation gate.


Phase 4: Curation Gate

Goal: Pressure-test the evidence before grading. (GATE 3)

After ALL evidence is output, run a curation pass with advisor() — it reads the full conversation (evidence included) and returns: which evidence is strong vs weak, contradictions, and what is still missing.

Fallback (advisor unavailable — e.g. Claude Code without the Pi extension): do the curation pass inline as the main agent — re-read every piece of evidence adversarially, list the strongest support, the strongest counter-evidence, and any gap — and say explicitly that the inline fallback was used. The gate is never skipped; only its executor changes.


Phase 5: Graded Verdict + Recommendation

Goal: A graded, evidence-backed, advisory conclusion.

→ Load references/verdict-format.md for the grading rubric and report template.

Present:

## Verdict: [Confirmed | Refuted | Inconclusive]   (confidence: [low/medium/high])

Assumption tested: [the operationalized question]

Why: [2-4 sentences tying the verdict to the cited evidence]

Key evidence:
- [finding] — [source]
- [counter-evidence, if any] — [source]

Recommendation (non-binding): [what the maintainer might do — adopt / adapt / investigate further]
What would change this verdict: [the evidence that would flip it]

Save report to:

docs/pocket/research/YYYY-MM-DD-kebab-slug/research-report.md

Handoff (explicit, advisory):

Research report written to: docs/pocket/research/[path]

This verdict is advisory. What next?
  1. Adopt the recommendation as-is
  2. Validate a related assumption (new run)
  3. Carry this into pocket-grinding / pocket-planning as a confirmed input
  4. Save and stop here

Reference Triggers

ReferenceWhen to Load
references/research-methods.csvPhase 2: read to recommend methods
references/verdict-format.mdPhase 5: grading rubric + report template

What ships with it: 2 files

10.3 KB alongside SKILL.md

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.