ideation
Skill155 starsChanged 4 months agoMITView on GitHub
Front stage for /data2story-pro when the reader has no dataset — only a vague idea. Converges the idea into a concrete, data-backed topic through a sparring-partner dialogue (anti-sycophantic, feasibility-pressure-tested), then acquires a REAL dataset through find-data, with a user checkpoint after each. Returns a validated DATA_DIR for the main pipeline. Not a newsroom role — runs upstream of Detective, before any dataset exists. Real data only; never a reason to synthesize data.
11 other projects use a version of this.
Adopted by
Most recently taken up by
- ashleysbrain/skillstheir own version, first seen Nov 8, 2026
- AI-Answer/ContentRepurposeSystemtheir own version, first seen Oct 28, 2026
- nicknisi/ideationtheir own version, first seen Oct 20, 2026
- Tommy-yw/RunbookHermestheir own version, first seen Oct 8, 2026
- greatSumini/cc-systemtheir own version, first seen Oct 8, 2026
- nielsmadan/skillstheir own version, first seen Sep 5, 2026
Used with
Projects with it also use webhook-subscriptions, minecraft-modpack-server and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
Tommy-ywSkillwebhook-subscriptions
Create and manage webhook subscriptions for event-driven agent activation, or for direct push notifications (zero LLM cost). Use when the user wants external services to trigger agent runs OR push notifications to chats.
Also in 3 projects that use this
math-incSkillminecraft-modpack-server
Set up a modded Minecraft server from a CurseForge/Modrinth server pack zip. Covers NeoForge/Forge install, Java version, JVM tuning, firewall, LAN config, backups, and launch scripts.
Also in 3 projects that use this
math-incSkillpokemon-player
Play Pokemon games autonomously via headless emulation. Starts a game server, reads structured game state from RAM, makes strategic decisions, and sends button inputs — all from the terminal.
Also in 3 projects that use this
Tommy-ywSkillsongwriting-and-ai-music
Songwriting craft, AI music generation prompts (Suno focus), parody/adaptation techniques, phonetic tricks, and lessons learned. These are tools and ideas, not rules. Break any of them when the art calls for it.
Also in 3 projects that use this
xuanxuan1983Skillbaoyu-comic
Knowledge comic creator supporting multiple styles (Logicomix/Ligne Claire, Ohmsha manga guide). Creates original educational comics with detailed panel layouts and sequential image generation. Use when user asks to create "知识漫画", "教育漫画", "biography comic", "tutorial comic", or "Logicomix-style comic".
Also in 3 projects that use this
mae616Skillp5js
p5.js(クリエイティブコーディング)のProcessing由来「コードでスケッチ」思想を軸に、setup/drawループ・座標系・インタラクション・パフォーマンス最適化を整理する。p5.js、Processing、クリエイティブコーディング、ジェネラティブアート、インタラクティブ表現、ビジュアルプログラミング、Canvas描画、パーティクル、フラクタル、ノイズ表現に関する相談で必ず使うこと。ユーザーが「コードでアート」「動くビジュアル」「インタラクティブな描画」と言った場合にも適用する。
Also in 3 projects that use this
- +5 more from math-inc
- +1 more from Tommy-yw
Other versions11 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 11
- Tommy-yw/RunbookHermes★ 546same name
- greatSumini/cc-system★ 438same name
- AI-Answer/ContentRepurposeSystem★ 26same name
- nicknisi/ideation★ 17same name
- nbbaier/agent-skills★ 14same name
- Samin12/skills★ 8same name
- Samin12/content-skill-pack★ 5same name
- ashleysbrain/skills★ 1same name
- nielsmadan/skills★ 1same name
- ishanbhosale08/Daedalus★ 0same name
1 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository28 other files it gives its agents.
- analystSkill
- auditorSkill
- designerSkill
- detectiveSkill
- editorSkill
- inspectorSkill
- analystSkill
- auditorSkill
- cinematographerSkill
- copywriterSkill
- criticSkill
- designerSkill
- detectiveSkill
- editorSkill
- programmerSkill
- heroSkill
- imagineerSkill
- inspectorSkill
- interactionSkill
- programmerSkill
- scoutSkill
- data2story-proSkill
- data2storySkill
- dataviz-craftSkill
- find-dataSkill
- frontend-design-proSkill
- frontend-designSkill
- sparring-partnerSkill
The file
We split this skill into the rules it gives an agent
7 rules. 0 are common, 2 are distinctive, and 5 are very specific to this project.
0
Common
Most of the 10 edited versions we read keep these.
2
Distinctive
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 42
Run the brainstorming dialogue by following Skill sparring-partner with the mission in references/sparring_brief.md: drive the reader from …
- Distinctive: line 77
Bounded acquisition loop (≤ 2 attempts): If find-data returns BLOCKED / no adequate dataset:
- Distinctive: line 82
Never invent a dataset, a source URL, or a license to "succeed."
- Very specific: line 84
After 2 failed attempts with no path forward → return IDEATION_ABORTED: no real dataset supports this idea (closest gap: <gate>).
- Very specific: line 93
Only AFTER find-data's audit has run (so it never lands inside the data-file glob), write the approved brief to …
- Very specific: line 108
Real data only: No synthesis, no simulated rows, no fabricated source URLs or licenses — that would break the whole verifiability premise.
- Very specific: line 112
Portability: No hardcoded machine paths — derive everything from $2 and the resolved skill dir.
“Common” is measured: kept by at least 6 in 10 of the 10 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Ideation — from a vague idea to a data-backed topic + a real dataset
The /data2story-pro orchestrator routes here in IDEA MODE: the reader handed over a hunch, a
question, or a half-formed angle instead of a dataset. Your job is to turn that into a concrete
topic that real, findable data can support, fetch that data, and hand a validated folder back to
the pipeline. You do this WITH the reader, not for them — two real checkpoints, no railroading.
You are not a pipeline role (no *_NN provenance prefix, no place in the 7 teams). You run once,
before Detective, and produce nothing that reaches the HTML except the dataset + a story_brief.
Inputs
$1= the reader's raw idea text (may be empty → open by inviting it).$2=DATA2STORY_ROOT(resolved by the orchestrator; wheredata/<slug>/will live).
Return contract (how the orchestrator continues)
- Success: emit a final line
DATA_DIR=<absolute path to the validated dataset folder>. Thestory_brief.jsonsits at<DATA_DIR>/meta/story_brief.json. The orchestrator setsDATA_DIR/DATA_NAMEfrom this and enters the normal pipeline (Detective → … → Inspector). - Abort: emit
IDEATION_ABORTED: <one-line reason>(reader stopped, or no real dataset supports the idea after the bounded loop). The orchestrator halts honestly and runs NO pipeline. Never fabricate data to manufacture a success.
The flow — 3 steps, 2 checkpoints
Interaction style — let the reader CHOOSE, don't make them compose. Drive the convergence
and BOTH checkpoints with AskUserQuestion: frame the angles / scope / data-forks as options the
reader clicks, not paragraphs they must write — picking is far lower-friction and each question
doubles as a micro-checkpoint. ALWAYS keep the Other / free-text escape open: the menu is your
framing, and the reader's own off-menu angle is often the best one, so never let it cage the
brainstorm. (This is NOT the cold opening questionnaire sparring-partner warns against — it is
choice-driven convergence after you have framed the space: lead the very first turn with
substance + an open invite, then switch to options.)
Step 1 — Converge the idea (reuse sparring-partner)
Run the brainstorming dialogue by following Skill sparring-partner with the mission in
references/sparring_brief.md: drive the reader from a vague idea to
ONE concrete data-story topic. Two non-negotiables on top of sparring-partner's normal process:
- Anti-sycophancy (its core stance) — do not rubber-stamp the first pretty idea.
- A feasibility pressure-test — relentlessly ask does this data actually exist? at what granularity? who publishes it? for which years/places? A beautiful idea with no obtainable data is a failure of this step, not a success. Steer toward a nearby idea the data CAN support.
The terminal of the dialogue is the story_brief (contract: references/schema.json) —
topic, angle, audience, the questions the data must answer, a structured data_needs spec, any
real candidate sources surfaced, and the exact find_data_invocation.query. Reply in the
reader's language (sparring-partner's rule).
CHECKPOINT 1 — confirm the brief
Show the reader the assembled story_brief (at least topic, angle, data_needs, and
find_data_invocation.query). Use AskUserQuestion (approve · edit · abort) or a plain confirm.
Loop back into Step 1 on edits. Do not proceed until the reader approves the brief. On abort →
return IDEATION_ABORTED: reader stopped at brief.
Step 2 — Acquire a REAL dataset (reuse find-data, web-first)
Derive a kebab-case slug from story_brief.topic; set OUT_DIR to the ABSOLUTE path
$2/data/<slug> (resolve $2 to an absolute path first). Then follow Skill find-data with the
brief's query and ALWAYS pass that explicit --out OUT_DIR — never rely on find-data's bare default
(its default is DATASETS_ROOT/<name>, a DIFFERENT root: ./datasets/<name>, not data/<slug>).
An explicit --out always wins, so the dataset is guaranteed to land at the path ideation chose:
Skill find-data "<story_brief.find_data_invocation.query>" --out OUT_DIR [--mode <single|theme>] [other flags]find-data searches (web-first on an open-source machine with no local corpora), fetches, and runs
its 4 completeness gates, writing OUT_DIR/validate.json. Read that file back for the verdict. The
dataset files land directly under OUT_DIR, and the DATA_DIR returned to the orchestrator (the
success line below) is exactly that absolute OUT_DIR — not find-data's default location.
Bounded acquisition loop (≤ 2 attempts). If find-data returns BLOCKED / no adequate dataset:
- Surface honestly what was and wasn't found (the failing gates).
- Offer the reader: (a) re-enter Step 1 to pivot/narrow the topic (often the data exists only at a coarser granularity — adjust the brief), (b) try an alternate real source/query, or (c) abort.
- Never invent a dataset, a source URL, or a license to "succeed."
After 2 failed attempts with no path forward → return IDEATION_ABORTED: no real dataset supports
this idea (closest gap: <gate>); suggested pivot: <one line>.
CHECKPOINT 2 — confirm the dataset
Show the reader the fetched files + the gate verdict, and check them against story_brief.acceptance
(does it actually have the entities / metric / coverage you agreed on?). AskUserQuestion
(use it · send back to Step 2 · abort). Do not proceed until approved.
Step 3 — Finalize + hand off
Only AFTER find-data's audit has run (so it never lands inside the data-file glob), write the
approved brief to OUT_DIR/meta/story_brief.json:
mkdir -p "OUT_DIR/meta" && # write story_brief.json there (valid JSON matching references/schema.json)It carries the reader's intent into provenance; the Detective MAY read it for human-intent context (loose coupling — not required). Then emit the success line:
DATA_DIR=OUT_DIRGuardrails
- Real data only. No synthesis, no simulated rows, no fabricated source URLs or licenses — that
would break the whole verifiability premise. "Can't find data" is an honest
IDEATION_ABORTED, not a reason to invent it. - Checkpoints are real stops. The reader drives; you converge with them, not at them.
- Portability. No hardcoded machine paths — derive everything from
$2and the resolved skill dir. Works on a fresh open-source clone with no local data corpora. - Stay in your lane. You write only inside
OUT_DIR(the dataset folder). You do not build HTML, run the pipeline, or touch any role artifact — that's the orchestrator's job after you return.
Reference files
references/schema.json— thestory_briefcontract (annotated example).references/sparring_brief.md— the specialized mission handed tosparring-partner, with the feasibility pressure-test and a worked vague-idea → brief example.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

