Academic Research
voidful/academic-skills
Complete academic research skill suite covering the full pipeline: paper reading (read/explain papers with storytelling), idea generation (brainstorm research directions), experiment design (plan…
Agent skill
by growthenginenowoslawski in growthenginenowoslawski/coldoutboundskills
Framework for running single-variable cold email experiments.
$ npx skills add growthenginenowoslawski/coldoutboundskills --skill experiment-design -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install growthenginenowoslawski/coldoutboundskills experiment-design --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/growthenginenowoslawski/coldoutboundskills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/experiment-design .claude/skills/experiment-design && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "experiment-design" agent skill from https://github.com/growthenginenowoslawski/coldoutboundskills/tree/main/skills/experiment-design into .claude/skills/experiment-design/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "experiment-design", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/growthenginenowoslawski/coldoutboundskills/tree/main/skills/experiment-designType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add growthenginenowoslawski/coldoutboundskills --skill experiment-design -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install growthenginenowoslawski/coldoutboundskills experiment-design --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/growthenginenowoslawski/coldoutboundskills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/experiment-design .agents/skills/experiment-design && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "experiment-design" agent skill from https://github.com/growthenginenowoslawski/coldoutboundskills/tree/main/skills/experiment-design into .agents/skills/experiment-design/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "experiment-design", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add growthenginenowoslawski/coldoutboundskills --skill experiment-design -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install growthenginenowoslawski/coldoutboundskills experiment-design --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/growthenginenowoslawski/coldoutboundskills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/experiment-design .cursor/skills/experiment-design && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "experiment-design" agent skill from https://github.com/growthenginenowoslawski/coldoutboundskills/tree/main/skills/experiment-design into .cursor/skills/experiment-design/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "experiment-design", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/growthenginenowoslawski/coldoutboundskills.git --path skills/experiment-design--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add growthenginenowoslawski/coldoutboundskills --skill experiment-design -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install growthenginenowoslawski/coldoutboundskills experiment-design --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/growthenginenowoslawski/coldoutboundskills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/experiment-design .gemini/skills/experiment-design && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "experiment-design" agent skill from https://github.com/growthenginenowoslawski/coldoutboundskills/tree/main/skills/experiment-design into .gemini/skills/experiment-design/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "experiment-design", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install growthenginenowoslawski/coldoutboundskills experiment-designInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add growthenginenowoslawski/coldoutboundskills --skill experiment-design -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/growthenginenowoslawski/coldoutboundskills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/experiment-design .github/skills/experiment-design && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "experiment-design" agent skill from https://github.com/growthenginenowoslawski/coldoutboundskills/tree/main/skills/experiment-design into .github/skills/experiment-design/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "experiment-design", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add growthenginenowoslawski/coldoutboundskills --skill experiment-design -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install growthenginenowoslawski/coldoutboundskills experiment-design --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/growthenginenowoslawski/coldoutboundskills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/experiment-design .opencode/skills/experiment-design && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "experiment-design" agent skill from https://github.com/growthenginenowoslawski/coldoutboundskills/tree/main/skills/experiment-design into .opencode/skills/experiment-design/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "experiment-design", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
experiment-designFramework for running single-variable cold email experiments.
Experiment Design is an agent skill from growthenginenowoslawski/coldoutboundskills. Framework for running single-variable cold email experiments. Defines experiment types (list-only, copy-only, combined), confidence weighting, minimum sample sizes, and success criteria. Use when the user wants to improve a campaign, test a new list vs old one, or compare copy variants. Prevents the
Its SKILL.md is about 2.5k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Research & Science, covering Experimental design and Cold outreach. The repository describes itself as: Open-source Claude Code skills for cold email and outbound sales. Grade campaigns, export Prospeo searches, scrape Google Maps — all from Claude Code. The licence is MIT.
8 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 25c5d85. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are yaml).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Experiment Design loads about 2.5k tokens when it runs. Until then it costs about 80 tokens; SKILL.md has 1,147 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from growthenginenowoslawski/coldoutboundskills at commit 25c5d85, republished under its MIT licence (© growthenginenowoslawski). 1,147 words, ~2,495 tokens.
.claude/skills/experiment-design/SKILL.md (or your agent's skills folder).If you change your list, your copy, and your offer at the same time, you learn nothing. This skill forces you to isolate one variable per experiment so you actually learn what's working.
Most cold email operators run "throw-everything" experiments. Campaign 1 gets a new list, new copy, and a new offer. It works better. They declare victory. But they can't tell you WHY — was it the list? The copy? The offer?
Then campaign 2 changes all three again. Regression. Nobody knows why.
This skill is the antidote: plan each experiment around ONE variable, keep everything else constant, and confidence-weight the results.
Every experiment starts with a one-sentence hypothesis:
"Targeting Heads of Marketing at 50-200 person B2B SaaS companies will get a higher positive reply rate than our current VP Sales baseline, because [reason]."
Or:
"Leading with a question about their recent product launch will get a higher reply rate than our current benefit-focused opener, because [reason]."
If you can't write the hypothesis in one sentence, you don't understand the experiment yet. Go back.
Write down exactly what changes and what stays the same.
Variable: Target job title
Change: "VP Sales" → "Head of Marketing"
Constants:
- Industry filter: unchanged
- Headcount: unchanged
- Geography: unchanged
- Copy: unchanged (same 4-step sequence)
- Offer: unchanged (same lead magnet)
- Sending infrastructure: unchanged (same 20 domains, 40 inboxes)
- Send schedule: unchangedIf ANY constant is actually changing, stop. Either lock it down, or reclassify as a combined experiment.
Before running any experiment, confirm your baseline is healthy: overall reply rate ≥1% after 200+ sends. If your baseline is below 1% after 200 sends, the problem isn't your experiment — your infrastructure or copy is already broken. Run /email-deliverability-audit first.
Running an experiment on a broken baseline is wasted effort: you'll learn that "both arms are bad," not "which arm wins."
The smaller your effect, the more leads you need. Use these rough rules for cold email:
| Current baseline | Expected lift | Minimum sends per arm |
|---|---|---|
| 1% positive reply rate | 2x (1% → 2%) | ~500 |
| 1% positive reply rate | 1.5x (1% → 1.5%) | ~2,000 |
| 1% positive reply rate | 1.2x (1% → 1.2%) | ~10,000 |
| 2% positive reply rate | 2x (2% → 4%) | ~250 |
| 2% positive reply rate | 1.5x (2% → 3%) | ~1,000 |
Rule of thumb: if your test has fewer than 500 sends per arm, you can't tell signal from noise.
For most beginners, 2,000 sends per arm is the right default.
Before launching, write:
Success = positive reply rate > X% (our current baseline is Y%)
Failure = positive reply rate < Z%
Inconclusive = between X and Z
Required sample: at least N sends per arm, reported after day 21 of sequenceDecide now — not after seeing the data. This prevents "oh we learned something else instead" rationalization.
Same day, same sending infrastructure split, same sequence. If your control arm sends Monday and your variant arm sends Thursday, day-of-week effects will confound the test.
Best practice in Smartlead/Instantly: create two campaigns, assign each half of your inboxes, launch at the exact same time, same schedule.
Wait until the full sequence (typically Day 0, 3, 7, 11 + reply grace period) has finished for ALL leads. Measuring earlier biases toward the first email's reply rate.
Pull metrics via /positive-reply-scoring skill:
Secondary metrics (report but don't optimize for):
Use this framework when reporting:
Experiment: <name>
Type: List-only | Copy-only | Combined
Variable: <what changed>
Result: <winner name> at <positive reply rate>% vs <baseline>%
Confidence: HIGH | MEDIUM | LOW (based on experiment type + sample size)
Learnings (by confidence):
HIGH confidence:
- <thing you can trust>
MEDIUM confidence:
- <thing that looks good but needs replication>
LOW confidence:
- <thing you're speculating about>HIGH only if: experiment type isolates the variable AND sample size meets the minimum.
If you're just starting out, don't experiment at all until you have a baseline from a single shipped campaign running for 3 weeks. You need a control before you can run tests.
Once you have a baseline, the priority order of experiments is usually:
Don't jump to step 6 when step 1 is broken.
At the end of planning, write to:
~/cold-email-ai-skills/profiles/<business-slug>/experiments/YYYY-MM-DD-<name>.yamlSchema:
experiment:
name: <short name>
hypothesis: <one sentence>
type: list-only | copy-only | combined
variable: <what changes>
constants: <list of what stays fixed>
success_criteria:
positive_reply_rate_target: <float>
baseline: <float>
minimum_sends_per_arm: <int>
measurement_date: <YYYY-MM-DD>
arms:
control:
smartlead_campaign_id: <tbd until launch>
description: <what's in the control>
variant:
smartlead_campaign_id: <tbd until launch>
description: <what's in the variant>
results: <empty until day 21>
control_positive_reply_rate: null
variant_positive_reply_rate: null
winner: null
confidence: null
decision: nullreferences/sample-size-calculator.md — longer math for power calculationsreferences/example-experiments/ — 3 worked examples (list, copy, combined)/positive-reply-scoring skill — how to actually measure the outcomeLaunch the planned experiment via /smartlead-campaign-upload-public (manual) or /auto-research-public (automated). Use the variants.yaml from /campaign-copywriting.
Then wait 21 days before evaluating — reply rate needs that long to stabilize. After 21 days, /positive-reply-scoring on each arm.
Or wait: if you don't have 2,000+ leads per experiment arm, you can't detect normal-sized effects. Build a bigger list (/prospeo-full-export, /disco-like) first.
/campaign-copywriting — produces the copy variants this experiment tests/smartlead-campaign-upload-public — launches each arm/positive-reply-scoring — measures the outcome after 21 days© growthenginenowoslawski, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/experiment-design of growthenginenowoslawski/coldoutboundskills.
Open the folder on GitHubat commit 25c5d85
Experiment Design next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Experiment Design this skillgrowthenginenowoslawski/coldoutboundskills | 753 | — | ~2.5k | Automated safety check: Pass | MIT | |
| Academic Researchvoidful/academic-skills | 135 | — | ~887 | Automated safety check: Pass | MIT | |
| Scientific Critical Thinkingweapp-tailwindcss/weapp-tailwindcss | 1.9k | 22 repos | ~5.9k | Automated safety check: Notes | MIT | |
| Benchmark Paper TemplateHKUSTDial/Supervisor-Skills | 8.8k | — | ~2.8k | Automated safety check: Pass | CC-BY-4.0 | |
| Claim-Driven Experiment PlannerzjYao36/Auto-Research-Refine | 128 | 6 repos | ~2.3k | Automated safety check: Notes | None | |
| Research Refine PipelinezjYao36/Auto-Research-Refine | 128 | 5 repos | ~1.4k | Automated safety check: Notes | None |
voidful/academic-skills
Complete academic research skill suite covering the full pipeline: paper reading (read/explain papers with storytelling), idea generation (brainstorm research directions), experiment design (plan…
weapp-tailwindcss/weapp-tailwindcss
Evaluate research rigor. An agent skill from weapp-tailwindcss/weapp-tailwindcss.
HKUSTDial/Supervisor-Skills
Structures benchmark and evaluation papers around five pillars, with a completeness audit, an Introduction logic chain, a section skeleton and a pre-submission checklist.
zjYao36/Auto-Research-Refine
Turns a refined research proposal into a claim-to-evidence-to-run-order roadmap instead of a sprawling benchmark wishlist.
zjYao36/Auto-Research-Refine
Chains research-refine and experiment-plan to turn a vague research direction into a focused proposal and a claim-driven experiment roadmap.
aiming-lab/AutoResearchClaw
Turns a broad metabolic modelling topic into a concrete, paper-shaped plan with organism, model, perturbations, metrics and figures before any FBA code is written.
growthenginenowoslawski/coldoutboundskills
Diagnostic audit for a running cold email program. An agent skill from growthenginenowoslawski/coldoutboundskills.
growthenginenowoslawski/coldoutboundskills
Conversational intake for cold email campaigns. An agent skill from growthenginenowoslawski/coldoutboundskills.
growthenginenowoslawski/coldoutboundskills
META skill — build the largest possible qualified lead list for any request, end to end.
growthenginenowoslawski/coldoutboundskills
Autonomous cold email campaign launcher. An agent skill from growthenginenowoslawski/coldoutboundskills.
growthenginenowoslawski/coldoutboundskills
Use the Blitz API to find decision-makers at specific companies when you already have a list of company domains.
growthenginenowoslawski/coldoutboundskills
Compare reply rates, bounce rates, and positive reply rates broken down by inbox type (SMTP / Gmail / Outlook) for a Smartlead account.
Categories
Framework for running single-variable cold email experiments. Experiment Design is an agent skill from growthenginenowoslawski/coldoutboundskills. Framework for running single-variable cold email experiments.
Experiment Design fits situations like: the user wants to improve a campaign; test a new list vs old one; compare copy variants.
Run `npx skills add growthenginenowoslawski/coldoutboundskills --skill experiment-design -a claude-code`. Or copy the skill folder (skills/experiment-design in growthenginenowoslawski/coldoutboundskills) into .claude/skills/experiment-design in your project. Claude Code loads it when a task matches its description.
Run `npx skills add growthenginenowoslawski/coldoutboundskills --skill experiment-design -a codex`. Or copy the skill folder (skills/experiment-design in growthenginenowoslawski/coldoutboundskills) into .agents/skills/experiment-design in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add growthenginenowoslawski/coldoutboundskills --skill experiment-design -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/experiment-design, .gemini/skills/experiment-design, .github/skills/experiment-design and .opencode/skills/experiment-design in your project.
SKILL.md names no scripts, command-line tools or credentials: Experiment Design is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Experiment Design is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.5k tokens (SKILL.md is roughly 10k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Experiment Design: Academic Research (voidful/academic-skills, 135 stars), Scientific Critical Thinking (weapp-tailwindcss/weapp-tailwindcss, 1.9k stars), Benchmark Paper Template (HKUSTDial/Supervisor-Skills, 8.8k stars) and Claim-Driven Experiment Planner (zjYao36/Auto-Research-Refine, 128 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
growthenginenowoslawski (a GitHub user) maintains it in growthenginenowoslawski/coldoutboundskills, which has 753 GitHub stars. The repository holds 49 skills in this directory. The repository was last updated on October 5, 2026.
Source: growthenginenowoslawski/coldoutboundskills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.