Draft a structured preregistration document (OSF, AsPredicted, or AEA RCT Registry style) from a research spec or free-form study description. Output is a Markdown file with hypotheses, design, sampling plan, analysis plan, exclusions, and inference criteria — annotated with MUST / SHOULD / MAY clarity flags. Use when user says "preregister", "draft a preregistration", "OSF preregistration", "AsPredicted", "AEA RCT registry", "PAP", "preanalysis plan", or before launching an experiment / data collection / analysis on data the analyst has not yet seen. NOT a registry submission tool — produces a document the user uploads to OSF / AsPredicted / AEA themselves.
npx skills add https://github.com/pedrohcgs/claude-code-my-workflow --skill preregister
Produce a registry-ready preregistration document. The user uploads it to a real registry (OSF / AsPredicted / AEA RCT Registry) — this skill writes the prose and structure, it does not submit anywhere.
Preregistration is a written commitment to your hypotheses, design, and analysis plan before you see the data (or, for observational analyses, before you analyse the realised outcome). It separates confirmatory tests from exploratory tests and protects you from p-hacking, HARKing, and forking-paths. Different fields use different registries:
Two input modes:
--input <path> — a research spec produced by /interview-me (saved under quality_reports/specs/) or any structured Markdown file. Read the spec and extract: research question, hypotheses (directional!), data source, design, sample, analysis approach. If the spec already has a paper_type: field (e.g., survey-experiment), use it to bias the style choice.--input — prompt the user for a 1–3 paragraph description of the study, then proceed. If the description omits a directional hypothesis, ask once. Do not fabricate.Refusal conditions (must be checked before any drafting):
/respond-to-referees or to write a methods section?"Default per field (used when --style is not given):
| Field signal | Default style |
|---|---|
| paper_type: survey-experiment or political-science / psychology context | osf |
| Field experiment in econ / labelled "RCT" / IRB-approved randomised intervention | aea-rct |
| 9-question quick-form ask, lab psych experiment, time-pressure | aspredicted |
| Anything else | osf |
User can override with --style osf|aspredicted|aea-rct.
Read templates/preregistration-template.md. The template has three style sections; only use the section matching the chosen style (don't merge — registries differ).
Common to all styles, the document MUST include:
--input was given) so traceability survives.Style-specific sections:
osf — Hypotheses (directional, numbered) · Design · Sampling Plan · Variables · Analysis Plan · Inference Criteria · Data Exclusions · Missing Data Handling · Exploratory Analyses (clearly labelled as such) · Other.aspredicted — 9 numbered fields per the AsPredicted form: (1) data collection status, (2) hypothesis, (3) key dependent variable, (4) conditions, (5) analyses, (6) outliers/exclusions, (7) sample size + stopping rule, (8) anything else, (9) name (study not paper).aea-rct — Intervention · Outcomes (primary, secondary) · Primary hypotheses · Sample (target N, eligibility, randomization unit, randomization method) · IRB approval · Trial dates · Power calc · Pre-analysis plan attachment · Status (not yet on the air / ongoing / completed).Annotate each section with one of:
Re-use the MUST/SHOULD/MAY framework from templates/requirements-spec.md. For each MUST that the input did not supply, write [CLARIFY: <specific question>] rather than fabricating content.
Refuse to mark the document "ready" if any of these fails:
/power-analysis to produce the MDE / required-N and a ready-to-paste power paragraph for this field.For each failure, the document gets a [CLARIFY: …] placeholder; the document is written to disk but flagged in the output summary as "INCOMPLETE — N MUST items unresolved".
If the document cites prior literature in the rationale section (e.g., "Building on Hainmueller et al. 2014, we expect …"), invoke /verify-claims via Task to fact-check those citations. Pass the draft path and a list of explicit citations. The claim-verifier agent (forked context, never sees the draft) returns PASS / PARTIAL / FAIL per citation. Surface any FAIL/PARTIAL in the output summary.
Skip post-flight if:
--no-verify (flag inherited from /lit-review and /research-ideation post-flight).Write to quality_reports/preregistrations/YYYY-MM-DD_<slug>.md (gitignored — preregistration is meant to be timestamped and uploaded externally, not committed alongside code).
Print to chat:
✓ Preregistration draft saved: quality_reports/preregistrations/<file>.md
Style: <osf|aspredicted|aea-rct>
Sections: <count> total — <complete> complete, <clarify> with [CLARIFY:] placeholders
Citations verified: <PASS>/<PARTIAL>/<FAIL> (or "no citations to verify")
Next: review the [CLARIFY:] placeholders, fill in, then upload to <registry-url>
Include the registry URL: OSF → osf.io/registries, AsPredicted → aspredicted.org, AEA RCT → socialscienceregistry.org.
templates/preregistration-template.md — the three style templates this skill consumes.templates/requirements-spec.md — MUST/SHOULD/MAY annotation language re-used here..claude/skills/interview-me/SKILL.md — produces the spec this skill consumes via --input..claude/skills/power-analysis/SKILL.md — supplies the MDE / required-N + power paragraph for the sample-plan field (RCTs)..claude/skills/verify-claims/SKILL.md — Phase 5 invokes this for citation post-flight..claude/references/discipline-cards.md — field defaults that drive --style selection..claude/rules/replication-protocol.md — preregistration is the *forward* commitment; replication-protocol is the *backward* contract.User says: "Preregister this study" (with --input quality_reports/specs/2026-04-15_priming-effects.md)
Actions:
paper_type: survey-experiment → default style osf.Result: Saved to quality_reports/preregistrations/2026-04-15_priming-effects.md. User uploads to OSF.
User says: "Draft an AEA RCT preregistration for the cash-transfer pilot" (with --style aea-rct --input quality_reports/specs/2026-03-10_ct-pilot.md)
Actions:
[CLARIFY: IRB approval number].Result: Document written. Output summary flags 1 [CLARIFY:] item to fill before AEA submission.
User says: "Preregister my next priming experiment, AsPredicted style" (no --input)
Actions:
[CLARIFY: target N or stopping rule].Result: Short form written; one MUST [CLARIFY:] flagged; user told to fill before pasting into AsPredicted.
"Description contains results" — by design. Move results into a methods + results write-up; preregistration is forward-looking.
Citation post-flight fails with FAIL — claim-verifier could not find a cited paper in WebSearch / corpus. Either the citation is real but the verifier missed it (common with very recent / paywalled work — cite explicitly with URL), or the citation is hallucinated. Inspect manually before upload.
Different registries asking for different things — use the registry's own template if this skill's mapping is too coarse. The three styles cover ~90% of social-science preregistrations; edge cases (PROSPERO, ClinicalTrials.gov, ISRCTN) need the registry's native form.
Output dir doesn't exist — quality_reports/preregistrations/.gitkeep should exist on a fresh fork; if missing, the skill will create the directory before writing.
Searches across your Notion workspace, synthesizes findings from multiple pages, and creates comprehensive research documentation saved as new Notion pages. Turns scattered information into structured reports with proper citations and actionable insights.
Generate concise (3-4 page), focused medical treatment plans in LaTeX/PDF format for all clinical specialties. Supports general medical treatment, rehabilitation therapy, mental health care, chronic disease management, perioperative care, and pain management. Includes SMART goal frameworks, evidence-based interventions with minimal text citations, regulatory compliance (HIPAA), and professional formatting. Prioritizes brevity and clinical actionability.
Generate concise (3-4 page), focused medical treatment plans in LaTeX/PDF format for all clinical specialties. Supports general medical treatment, rehabilitation therapy, mental health care, chronic disease management, perioperative care, and pain management. Includes SMART goal frameworks, evidence-based interventions with minimal text citations, regulatory compliance (HIPAA), and professional formatting. Prioritizes brevity and clinical actionability.
Generate concise (3-4 page), focused medical treatment plans in LaTeX/PDF format for all clinical specialties. Supports general medical treatment, rehabilitation therapy, mental health care, chronic disease management, perioperative care, and pain management. Includes SMART goal frameworks, evidence-based interventions with minimal text citations, regulatory compliance (HIPAA), and professional formatting. Prioritizes brevity and clinical actionability.
【强制】所有技术文档查询必须使用本技能,禁止在主对话中直接使用 mcp__context7-mcp 工具。触发关键词:查询/学习/了解某个库或框架的文档、API用法、配置参数、错误解释、版本差异、代码示例、最佳实践。本技能通过 context7-researcher agent 执行查询,避免大量文档内容污染主对话上下文,保持 token 效率。
Generates rich technical documentation pages with dark-mode Mermaid diagrams, source code citations, and first-principles depth. Use when writing documentation, generating wiki pages, creating technical deep-dives, or documenting specific components or systems.
Maximum-saturation research orchestration: ALWAYS proposes the final materials first (PDF+DOCX default), then parallel explore+librarian swarms across codebase, web, official docs, and OSS repos — max-roster teammode when the harness has it — with live journaling, a recursive EXPAND loop driven by leads workers return in message text, empirical verification by running code, and a cited synthesis with charts/Mermaid/assets behind a mandatory visual-QA gate. ACTIVATES ONLY on an explicit user demand for research — the word 'ulw-research' ('/ulw-research', '$ulw-research'), any 'ulw' research wording, 'ultradebate' or 'hyperdebate' research requests, or an explicit request for research / deep research / an ultra-precise investigation, in any language. Never self-activates for ordinary questions, debugging, or implementation context-gathering. While active it overrides exploration-bounding defaults: exhaustive coverage is the goal.
"Solve competition math problems (IMO, Putnam, USAMO, AIME) with adversarial verification that catches the errors self-verification misses. Activates when asked to 'solve this IMO problem', 'prove this olympiad inequality', 'verify this competition proof', 'find a counterexample', 'is this proof correct', or for any problem with 'IMO', 'Putnam', 'USAMO', 'olympiad', or 'competition math' in it. Uses pure reasoning (no tools) — then a fresh-context adversarial verifier attacks the proof using specific failure patterns, not generic 'check logic'. Outputs calibrated confidence — will say 'no confident solution' rather than bluff. If LaTeX is available, produces a clean PDF after verification passes."
Take pedrohcgs/preregister from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.