save-idea
Quickly capture an idea from any repo or chat. Everything goes to the <ideas-repo> repo: video ideas to VIDEO-IDEAS.md; smaller podcast topics, guest ideas, questions, and AI observations to TOPICS.md; marketing and distribution ideas to MARKETING-IDEAS.md; startup ideas to STARTUP-IDEAS.md; convictions the user is certain about on AI-era building to CONVICTIONS.md; mini/technical/cool projects to build to mini-projects.md. Every entry gets a source line referencing the chat and repo it came from. Use when the user says "/save-idea", "save this idea", "video idea", "add a topic", "marketing idea", "startup idea", "save this conviction", "mini project", "cool project to build", "write this down for a video/podcast". Differentiator: appends to the user's idea backlogs — not a reminder, task, or general note tool.
NPX Install
npx skill4agent add davidondrej/skills save-ideaTags
Translated version includes tags in frontmatterSKILL.md Content
View Translation Comparison →save-idea
<ideas-repo>| Bucket | File | What belongs there |
|---|---|---|
| Video idea | | A concept big enough for a full video |
| Topic | | Smaller stuff: podcast topics, guests, questions, AI observations |
| Marketing idea | | Marketing and distribution: how we get products in front of people |
| Startup idea | | A business/product idea — a candidate for the user's next startup |
| Conviction | | A belief the user is CERTAIN about on AI-era building (startups, AI industry, agentic coding) — a conviction, not an idea |
| Mini project | | A small technical/cool project to build — just cool shit, not a startup candidate |
| Article idea | | A topic for the user's daily public articles (X, blog, YouTube community, email) |
Workflow
- Get the text. Everything after is the entry. Keep the user's wording verbatim — never rephrase, shorten, or "improve" it. (One exception: startup ideas get tightened per their repo's rules — see step 4.)
/save-idea - Route it.
- Starts with → video idea (strip the prefix).
video: - Starts with → topic (strip the prefix).
topic: - Starts with → marketing idea (strip the prefix).
marketing: - Starts with → startup idea (strip the prefix).
startup: - Starts with → mini project (strip the prefix).
mini: - Starts with → article idea (strip the prefix).
article: - Convictions have NO prefix (deliberate, the user's decision 2026-08-18) — route them by judgment only.
- No prefix → judge: a belief stated as a certainty about AI-era building (startups, AI industry, agentic coding) → conviction; business/product idea → startup idea; a small technical/cool project to build (not a company) → mini project; a way to get an existing product in front of people → marketing idea; full video concept → video idea; smaller thought or observation → topic. Only if genuinely ambiguous, ask the user one short question.
- Starts with
- Read the target file and find the last entry number. Next number = last + 1.
- ,
TOPICS.md,MARKETING-IDEAS.md,ARTICLE-IDEAS.md, andCONVICTIONS.mdstart at 1.mini-projects.mdcontinues from an old Google Doc.VIDEO-IDEAS.md - : continue from the last idea in the STARTUP IDEAS list. Gaps in its numbering are normal — discarded ideas live in
STARTUP-IDEAS.md, which has its own separate numbering. Ignore it; never reuse a gap number.startup/review/DISCARDED.md - Never renumber anything.
- Append the entry.
- Video ideas, topics, marketing ideas & article ideas — append at the bottom of the file, wording verbatim, context lines tab-indented under the numbered line:
NNNN. Idea title exactly as the user said it
source: <repo>, Cursor chat "Chat title", 2026-07-15
any extra links or notes the user gave- Startup ideas — insert after the last numbered idea, keeping the trailing separator and discarded-ideas note as the last lines of the file. Format per
----: one tight entry,<ideas-repo>/startup/AGENTS.mdRewrite for clarity and concision but stay loyal to the user's wording and voice. Blank line between entries. Source line indented with 4 spaces (that file uses spaces, not tabs):N. Title — one-line explanation.
69. Idea title — one-line explanation in the user's voice.
- source: <repo>, Cursor chat "Chat title", 2026-08-01- Convictions — append at the bottom of , same tight style as startup ideas:
CONVICTIONS.mdTighten for punch but stay loyal to the user's wording and voice. Blank line between entries, source line indented with 4 spaces:N. Punchy conviction — one-line why.
1. Punchy conviction — one-line why.
- source: <repo>, Cursor chat "Chat title", 2026-08-18- Mini projects — append at the bottom of , wording verbatim. Blank line between entries. Source line indented with 4 spaces (that file uses spaces, not tabs):
mini-projects.md
10. Idea title exactly as the user said it
- source: <repo>, Cursor chat "Chat title", 2026-08-24- Build the source line.
- Repo: the folder the skill was invoked from, as path (check
~/...; if not a repo, use the cwd).git rev-parse --show-toplevel - Chat: agent name plus chat title or session ID if the runtime exposes one (e.g. ,
Cursor chat "Fixing task sync"). If unknown, just the agent name.Claude Code session abc123 - Date: today, YYYY-MM-DD.
- Repo: the folder the skill was invoked from, as
- Commit and push the repo. Always use so the current working directory never matters — never
git -C, never launch another agent for this:cd
git -C <ideas-repo> pull --rebase --autostash origin main
git -C <ideas-repo> add VIDEO-IDEAS.md TOPICS.md MARKETING-IDEAS.md ARTICLE-IDEAS.md STARTUP-IDEAS.md CONVICTIONS.md mini-projects.md
git -C <ideas-repo> commit -m "Add idea 4839 on graph engineering video"
git -C <ideas-repo> push origin main- Stage ONLY the idea file(s) you touched. Never — unrelated work must not get swept in.
git add -A - Commit message: (or
Add idea NNNN on <short description>/Add topic NNNN on .../Add marketing idea NN on .../Add startup idea NN on .../Add conviction NN on ...). Multiple entries → list the numbers.Add mini project NN on ... - If the pull or push fails, report the exact error to the user and stop. Never force-push.
- Confirm back to the user: the exact entry text, its number, which file it went to, and that it was pushed.
Rules
- Append only. Never edit, reorder, or renumber existing entries.
- Multiple ideas in one invocation → one numbered entry each.
- Committing and pushing the idea files is REQUIRED and pre-authorized by the user (26-07-2026; startup bucket 01-08-2026; convictions bucket 18-08-2026; mini-projects bucket 24-08-2026). This is a deliberate exception to the global "never push to GitHub by yourself" rule in . Do not "fix" this back — the whole point is that the user never has to commit idea entries by hand.
<global-agents-file> - The exception covers ,
VIDEO-IDEAS.md,TOPICS.md,MARKETING-IDEAS.md(added 26-08-2026),ARTICLE-IDEAS.md,STARTUP-IDEAS.md, andCONVICTIONS.mdonly. Any other change in the repo is still the user's to commit.mini-projects.md - All idea capture was centralized into on 2026-08-14 (the user's decision). The old
<ideas-repo>repo is frozen pending archive — NEVER write or push there. Startup support material now lives in<old-startup-repo>.<ideas-repo>/startup/ - NEVER write to — only the user moves ideas there.
<ideas-repo>/startup/review/DISCARDED.md - If or
TOPICS.mdis missing, recreate it with its one-line header, then append entry 1.MARKETING-IDEAS.md - If is missing, recreate it with its header (
mini-projects.mdplus the one-line quote about cool shit to build), then append entry 1.# MINI PROJECTS - Indent context lines to match the target file: real tabs in ,
VIDEO-IDEAS.md, andTOPICS.md, 4 spaces inMARKETING-IDEAS.md,STARTUP-IDEAS.md, andCONVICTIONS.md.mini-projects.md