Writing Livekit Scenarios
livekit-examples/agent-starter-python
Creates and maintains the scenarios a LiveKit agent simulation runs, and wires the agent to consume them.
A skill your agent uses when someone asks to roast an idea, pressure-test or stress-test an idea, validate a business idea, "convene the panel", get a brutal second opinion before building…
$ npx skills add alirezarezvani/claude-skills --skill roast -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install alirezarezvani/claude-skills roast --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/alirezarezvani/claude-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/productivity/roast/skills/roast .claude/skills/roast && 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 "roast" agent skill from https://github.com/alirezarezvani/claude-skills/tree/main/productivity/roast/skills/roast into .claude/skills/roast/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "roast", 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/alirezarezvani/claude-skills/tree/main/productivity/roast/skills/roastType 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 alirezarezvani/claude-skills --skill roast -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install alirezarezvani/claude-skills roast --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/alirezarezvani/claude-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/productivity/roast/skills/roast .agents/skills/roast && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "roast" agent skill from https://github.com/alirezarezvani/claude-skills/tree/main/productivity/roast/skills/roast into .agents/skills/roast/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "roast", 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 alirezarezvani/claude-skills --skill roast -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install alirezarezvani/claude-skills roast --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/alirezarezvani/claude-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/productivity/roast/skills/roast .cursor/skills/roast && 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 "roast" agent skill from https://github.com/alirezarezvani/claude-skills/tree/main/productivity/roast/skills/roast into .cursor/skills/roast/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "roast", 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/alirezarezvani/claude-skills.git --path productivity/roast/skills/roast--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 alirezarezvani/claude-skills --skill roast -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install alirezarezvani/claude-skills roast --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/alirezarezvani/claude-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/productivity/roast/skills/roast .gemini/skills/roast && 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 "roast" agent skill from https://github.com/alirezarezvani/claude-skills/tree/main/productivity/roast/skills/roast into .gemini/skills/roast/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "roast", 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 alirezarezvani/claude-skills roastInstalls 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 alirezarezvani/claude-skills --skill roast -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/alirezarezvani/claude-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/productivity/roast/skills/roast .github/skills/roast && 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 "roast" agent skill from https://github.com/alirezarezvani/claude-skills/tree/main/productivity/roast/skills/roast into .github/skills/roast/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "roast", 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 alirezarezvani/claude-skills --skill roast -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install alirezarezvani/claude-skills roast --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/alirezarezvani/claude-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/productivity/roast/skills/roast .opencode/skills/roast && 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 "roast" agent skill from https://github.com/alirezarezvani/claude-skills/tree/main/productivity/roast/skills/roast into .opencode/skills/roast/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "roast", 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.
roastA skill your agent uses when someone asks to roast an idea, pressure-test or stress-test an idea, validate a business idea, "convene the panel", get a brutal second opinion before building…
Roast is an agent skill from alirezarezvani/claude-skills. Use when someone asks to roast an idea, pressure-test or stress-test an idea, validate a business idea, "convene the panel", get a brutal second opinion before building something, or says "/roast". Spins up a 5-angle panel (Critic, Champion, Analyst, Investigator, Customer) that attacks the idea from every angle, then a Judge returns one GO / RESHAPE / KILL verdict with the cheapest test to de-risk it.
Its SKILL.md is about 2.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 12 other files, including scripts, reference files and assets (for example `README.md`, `assets/example_roast_verdict.md` and `assets/roast_brief_worksheet.md`).
It sits in Testing & QA, covering Load testing. The repository describes itself as: 380 Claude Code skills & agent skills & plugins (30+ Agents, 70+ custom commands, 380+ skills, customizable references, scripts)for Claude Code, Codex, Gemini CLI, Cursor, and 8… The licence is MIT.
3 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 19392f7. 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.
Ships 3 files in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
pythonFrom 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.
Roast loads about 2.6k tokens when it runs, and up to ~6.5k if it reads all its reference files. Until then it costs about 103 tokens; SKILL.md has 1,271 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); the scripts in this folder are not scanned.
The full file from alirezarezvani/claude-skills at commit 19392f7, republished under its MIT licence (© alirezarezvani). 1,271 words, ~2,617 tokens.
.claude/skills/roast/SKILL.md (or your agent's skills folder). This skill also uses 9 other files; get the full folder from GitHub.Portability: Reasoning-led skill with 3 stdlib Python tools. No external APIs, no LLM calls in scripts. Works in Claude Code CLI and Claude.ai web. The panel does the depth; the Judge does the call.
Claude's default is to agree with you. /roast is the opposite. It convenes a panel of five
independent reviewers — The Critic, The Champion, The Analyst, The Investigator, and The
Customer — who tear an idea apart and build it up from every angle, then a Judge synthesizes
everything into one honest verdict. Use it before you sink time and money into building the wrong
thing.
The panel is adversarial on purpose. No reviewer is allowed to hedge or be polite. The point is to surface what you can't see because you're too close to it.
If $ARGUMENTS contains the idea, start there. Then ask the user a tight set of clarifying
questions so the panel has real context to work with. Ask only what hasn't already been provided.
Keep it to 3-4 questions max, in one batch:
If the user says "just run it" or gives you enough already, skip the questions and proceed. Don't over-interrogate. One round, then run the panel.
Assemble the brief with scripts/brief_builder.py — it normalizes the four load-bearing inputs into
one paragraph and tells you if anything critical is still missing before you spend five subagents:
python scripts/brief_builder.py \
--idea "AI that drafts grant applications for small nonprofits from a 10-min intake call" \
--who "1-3 person nonprofits with no grant writer" \
--money "$99/mo SaaS" --edge "I ran a nonprofit for 8 years" \
--constraints "bootstrapped, first dollar in 30 days"Paste the resulting brief verbatim into every panelist's prompt, so all five judge the same thing.
Spin up all five reviewers in parallel in a single message (one Task call each,
subagent_type: general-purpose). Paste the same brief into each, then give each its mandate below.
Each panelist must return: a one-line stance, their 3-5 sharpest points, the single most important thing the user must hear, and a 1-10 score on their own dimension (1 = walk away, 10 = no-brainer).
1. The Critic — "What kills this?"
You are The Critic on an idea panel. Assume this idea fails. Your job is to find the fatal flaws, the fastest way it dies, and the load-bearing assumptions that are probably wrong. Be ruthless and specific. No hedging, no "but it could work." Attack the weakest points. THE BRIEF: [brief]
2. The Champion — "What's the 10x upside?"
You are The Champion on an idea panel. Make the strongest possible case FOR this idea. Find the biggest upside, the 10x version, the adjacent opportunities and unlock points the founder isn't seeing. Fight for the potential. Be specific about where the real money and leverage could be. THE BRIEF: [brief]
3. The Analyst — "Does the logic actually hold?"
You are The Analyst on an idea panel. Use NO outside research and NO web. Reason purely from first principles: does the core mechanism make sense, do the incentives line up, is the underlying logic sound, does the math even work in theory? Strip it to fundamentals and tell us if it holds together. THE BRIEF: [brief]
4. The Investigator — "What does the real market say?"
You are The Investigator on an idea panel. Use web search. Bring real-world evidence: who the existing competitors are, market size or demand signals, what comparable products charge, whether this is validated by what's already out there or contradicted by it. Cite what you find. Is the real world saying yes or no? THE BRIEF: [brief]
5. The Customer — "Would I actually pay?"
You are The Customer on an idea panel. Role-play the exact target customer described in the brief. React as them, in first person. Would you actually pay for this? What's your real objection? What would make you choose a competitor or just do nothing instead? What price feels right, and what would make you say yes today? Be the honest, slightly skeptical customer, not a cheerleader. THE BRIEF: [brief]
Once all five return, YOU act as the Judge. Read every panelist's findings, weigh them, and synthesize one decisive verdict. Do not just average the scores. Run the five scores through the synthesizer so the call is reproducible weighting, not vibes — then name the real tension between the reviewers and resolve it in prose:
python scripts/verdict_synthesizer.py \
--critic 4 --champion 8 --analyst 7 --investigator 5 --customer 6The tool weights demand (Customer) and survival (Critic) heaviest and the bull (Champion) lightest, applies hard gates (a Customer who won't pay, or a fatal flaw the Critic landed, vetoes a GO), and flags the widest disagreement as the tension you must resolve. Use its verdict + confidence as your spine; write the prose yourself.
Fold in the economics lens yourself: rough pricing, realistic time-to-first-dollar, and whether the user can actually ship this fast given the edge they described. Then design the cheapest test from the riskiest assumption the panel surfaced:
python scripts/cheapest_test_designer.py --risk price --price 99Output the verdict in this exact shape:
## THE VERDICT: GO / RESHAPE / KILL
Confidence: [low / medium / high]
**The call in one line:** [the decision, plainly]
**Why:** [2-3 sentences resolving the panel's tension]
**Biggest risk:** [the single thing most likely to kill it]
**Biggest upside:** [the strongest reason to do it]
**Money read:** [rough price, time-to-first-dollar, can they ship fast]
**The cheapest 48-hour test:** [the smallest, fastest thing they can do
to validate the riskiest assumption BEFORE building anything]
**If RESHAPE:** [the specific pivot that fixes the fatal flaw while keeping the upside]Then list the five panel scores in one line: Critic X/10 · Champion X/10 · Analyst X/10 · Investigator X/10 · Customer X/10.
| Script | Role |
|---|---|
scripts/brief_builder.py | Normalizes the 4 load-bearing inputs into one shared brief; flags missing/thin inputs before the panel convenes. |
scripts/verdict_synthesizer.py | Weights the 5 panel scores (Customer + Critic heaviest, Champion lightest), applies veto gates, flags the real tension → GO / RESHAPE / KILL + confidence. |
scripts/cheapest_test_designer.py | Maps the riskiest assumption (demand/price/feasibility/differentiation/channel/retention) to a concrete 48-hour test with pass/fail signals. |
references/adversarial_panel_canon.md — why a diverse adversarial panel beats one reviewer (red-teaming, devil's advocacy, dialectical inquiry; 7 sources)references/verdict_synthesis_method.md — the weighting, the veto gates, and why you must not average (6 sources)references/cheapest_test_canon.md — demand testing before building: smoke test, pre-sale, concierge, fake-door (7 sources)assets/roast_brief_worksheet.md — fillable 4-input brief worksheetassets/example_roast_verdict.md — a full worked roast (brief → 5 panel scores → tension → verdict → cheapest test)productivity/andreessen — a single market-first operator. roast is five independent lenses → a judge. Use andreessen when you specifically want the market-dominates thesis; use roast when you want 360° coverage.c-level-advisor boardroom / /cs:boardroom — an enterprise C-suite pipeline that needs company-context.md onboarding and outputs a board memo. roast is a zero-setup, solo-founder, 90-second gut check.engineering/grill-me — interrogates a plan one question at a time to reach shared understanding. It does not issue a GO/KILL verdict. Roast judges; grill-me clarifies.Version: 1.0.0 Build pattern: Path-B persona skill — adversarial panel preserved + deterministic verdict tooling added.
© alirezarezvani, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 9 other files (scripts, references, assets) in productivity/roast/skills/roast of alirezarezvani/claude-skills.
Open the folder on GitHubat commit 19392f7
Roast 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 |
|---|---|---|---|---|---|---|
| Roast this skillalirezarezvani/claude-skills | 28k | — | ~2.6k | Automated safety check: Pass | MIT | |
| Writing Livekit Scenarioslivekit-examples/agent-starter-python | 264 | 1 repos | ~2.5k | Automated safety check: Pass | MIT | |
| Go Testingcxuu/golang-skills | 170 | 1 repos | ~1.3k | Automated safety check: Pass | Apache-2.0 | |
| Goalcraftgrp06/goalcraft | 102 | — | ~3.8k | Automated safety check: Pass | MIT | |
| Thinking Partnermattnowdev/thinking-partner | 206 | — | ~4.4k | Automated safety check: Pass | MIT | |
| Visionkunchenguid/vision | 329 | — | ~2.9k | Automated safety check: Pass | MIT |
livekit-examples/agent-starter-python
Creates and maintains the scenarios a LiveKit agent simulation runs, and wires the agent to consume them.
cxuu/golang-skills
A skill your agent uses when writing, reviewing, or improving Go test code — including table-driven tests, subtests, parallel tests, test helpers, test doubles, and assertions with cmp.Diff.
grp06/goalcraft
Turn a rough draft, vague ambition, or messy task brief into a powerful Codex /goal objective for persistent, evidence-checked work.
mattnowdev/thinking-partner
A deterministic thinking partner that challenges assumptions and applies mental models to sharpen decisions, solve problems, and think more clearly.
kunchenguid/vision
Draft and stress-test a VISION.md for a repository, then iterate with the author on an interactive review board until approved.
owenHochwald/volt
Safely exercise and evaluate HTTP APIs with the Volt CLI, including authenticated requests, JSON bodies, staged load, machine-readable results, performance baselines, and before/after comparisons.
alirezarezvani/claude-skills
Writes INVEST-checked user stories with acceptance criteria, splits epics, plans sprints from velocity and ranks the backlog with a weighted score.
alirezarezvani/claude-skills
OKR cascade toolkit for product leaders: generates aligned company-to-team OKRs from five strategy types and scores how well they line up.
alirezarezvani/claude-skills
App Store Optimization (ASO) toolkit for researching keywords, analyzing competitor rankings, generating metadata suggestions, and improving app visibility on Apple App Store and Google Play Store.
alirezarezvani/claude-skills
Design AWS architectures for startups using serverless patterns and IaC templates.
alirezarezvani/claude-skills
Calculates attribution, funnel and ROI figures for marketing campaigns with three Python scripts that need only the standard library.
alirezarezvani/claude-skills
Reverse-engineers a frontend, backend or fullstack codebase into a product requirements document with per-page docs, an enum dictionary and an API inventory.
Categories
A skill your agent uses when someone asks to roast an idea, pressure-test or stress-test an idea, validate a business idea, "convene the panel", get a brutal second opinion before building…. Roast is an agent skill from alirezarezvani/claude-skills. Use when someone asks to roast an idea, pressure-test or stress-test an idea, validate a business idea, "convene the panel", get a brutal second opinion before building something, or says "/roast".
Roast fits situations like: someone asks to roast an idea; stress-test an idea; validate a business idea; convene the panel.
Run `npx skills add alirezarezvani/claude-skills --skill roast -a claude-code`. Or copy the skill folder (productivity/roast/skills/roast in alirezarezvani/claude-skills) into .claude/skills/roast in your project. Claude Code loads it when a task matches its description.
Run `npx skills add alirezarezvani/claude-skills --skill roast -a codex`. Or copy the skill folder (productivity/roast/skills/roast in alirezarezvani/claude-skills) into .agents/skills/roast 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 alirezarezvani/claude-skills --skill roast -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/roast, .gemini/skills/roast, .github/skills/roast and .opencode/skills/roast in your project.
Going by SKILL.md and its folder, Roast needs Python for the scripts in its folder and the command-line tools its instructions call (python). Our summary lists: Python 3.
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. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Roast is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.6k 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. Its references folder adds about 3.9k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Roast: Writing Livekit Scenarios (livekit-examples/agent-starter-python, 264 stars), Go Testing (cxuu/golang-skills, 170 stars), Goalcraft (grp06/goalcraft, 102 stars) and Thinking Partner (mattnowdev/thinking-partner, 206 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
alirezarezvani (a GitHub user) maintains it in alirezarezvani/claude-skills, which has 27,829 GitHub stars. The repository holds 342 skills in this directory. The repository was last updated on August 30, 2026.
Source: alirezarezvani/claude-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.