dev-issues — brain-dump → distributed issues
SkillDocs & knowledgeTurn a free-form brain-dump into a clean, ordered set of `notes/issues/*.md` work items. The user tags `/dev-issues` and writes a long stream of everything in their head — features, refactors, bugs, half-formed ideas, product direction. This skill decomposes that stream into discrete, well-shaped, individually-actionable issue files, asks clarifying questions only where a decision is genuinely the user's, collision-checks against the existing `notes/` inbox so it updates rather than duplicates, then commits the batch. The end state: every thought is captured as an issue a downstream agent (or `/dev-loop`) can pick up and execute. USE WHEN the user types `/dev-issues`, says "let me brain-dump", "capture all of this into issues", "break this into issues", "I have a bunch of ideas", "distribute these thoughts", or pastes a long unstructured list of things they want done to Ralphy. DO NOT FIRE for a single scoped change (just do it), for content/video work (that is the routing table), or to capture a one-off idea / decision into the `notes/` inbox (that is `dev-tasks`). See body for ALSO FIRE / DO NOT FIRE / HARD INVARIANTS.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the dev-issues — brain-dump → distributed issues skill
What this skill tells your AI
The instructions your AI receives, as published by alecs5am/ralphy in .agents/skills/dev-issues/SKILL.md and read by ahel’s review.
A maintainer skill. It does not touch .ralphy/workspaces/<ws>/projects/ or call media models. It converts an unstructured stream of thoughts into a set of correctly-shaped notes/issues/*.md work items. Pairs with /dev-loop, which executes the issues this skill files.
When it fires
- The user tags
/dev-issuesand then writes a lot — a wall of ideas, gripes, product direction, "and also we should…". The longer and less structured the input, the more this skill earns its keep. - ALSO FIRE when a normal dev conversation produces ≥3 distinct actionable threads the user wants preserved before they evaporate.
- DO NOT FIRE for one scoped task (do it, or file a single note via
dev-tasks), for content production, or for one-off idea/decision capture into thenotes/inbox (dev-tasks).
Workflow
-
Read the inputs first. Read
notes/README.md(the note shape + the Issues folder layout),docs/developing-ralphy.md(English-only rule, the lint suite), and skim the active backlog (the flat top level ofnotes/issues/) plusnotes/ideas/so you know what already exists.notes/issues/done/andnotes/issues/deprecated/are the closed archive — skim them only during collision-check (step 3).dev-tasksis the sibling skill fornotes/inbox capture (ideas / decisions).Status-by-folder.
notes/issues/is split into the flat top level (the live backlog),done/(resolved / promoted-and-landed), anddeprecated/(superseded / won't-do). New issues are always filed at the flat top level. Each issue keeps its> **Status:**line in sync with its folder. -
Decompose the brain-dump into discrete items. One issue = one coherent unit of work (one verb / file / feature / refactor / bug). Split compound thoughts; merge near-duplicates. Aim for issues a single sub-agent could execute end-to-end.
-
Collision-check before filing each. Search all of
notes/issues/(active top level +done/+deprecated/) andnotes/ideas/for an existing entity that already covers the thought. If one exists, update it (or note the overlap) rather than spawning a duplicate. If the match lives indone/, the thought is likely a regression or follow-up —git mvit back to the active top level and reset its> **Status:**line, or file a fresh issue that cross-links it. Never let the same thing live in two places. -
Ask clarifying questions only where the answer changes what gets filed — a genuine fork the user must decide (scope, irreversibility, a product direction with no sensible default). Use
AskUserQuestion, batch the questions, and offer a recommended option. Do NOT ask about things you can decide from the repo or sensible defaults. If the user wrote in Russian (or any non-English), that is fine in chat — but everything you WRITE to disk is English (translate/paraphrase). -
Write each issue at the flat top level as
notes/issues/NNN-kebab-slug.md, numbered monotonically across all three locations (fd -e md . notes/issues | rg -o '[0-9]{3}' | sort -n | tail -1, increment — never reuse a number freed by a move intodone//deprecated/). Follow thenotes/README.mdshape (Status / Filed / Folder / Context / What / Why it matters / Notes) plus a concrete## Scope / acceptancesection listing what "done" means — file paths, gates to pass, acceptance criteria — so a downstream agent can execute without re-deriving scope. Add severity + category when useful. Cross-link related issues by number. -
Order + dependencies. When the batch has a natural execution order (foundational schema before consumers, a cross-cutting rename before dependent work, plan-only/docs as low-risk), note it — either in a short lead issue or in each issue's Notes ("sequence after #NNN").
/dev-loopreads this ordering. -
Commit the batch.
git add notes/issues/<new files>and commit with adocs(notes): …message summarizing the set. Run the Cyrillic gate (rg '\p{Cyrillic}' --pcre2 notes/issues/<files>) before committing — empty is the gate. Push only if the user works commit-to-main (this repo does; see the user's memory). -
Report back a thought→issue map: for each filed issue, one line (number, slug, the thought it captures), plus the recommended execution order and any item you deliberately dropped or merged.
HARD INVARIANTS
- English-only on disk. Translate any non-English brain-dump before writing.
- One thought, one home. Collision-check first; update over duplicate.
- Every issue is executable. If it lacks a concrete
## Scope / acceptance, it is not ready — sharpen it or ask. - Capture, don't execute. This skill files issues; it does NOT implement them. Hand execution to
/dev-loopor a targeted dev session. - Numbering is monotonic across active +
done/+deprecated/. Never reuse a number freed by a move, and never renumber existing issues. - File active issues at the flat top level only.
done/anddeprecated/are written to by/dev-loop(or a manual resolve), never by initial filing.
Signals
- GitHub stars
- 133
- Forks
- 13
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
dev-issues- Source
- github.com/alecs5am/ralphy