Capture and integrate improvement ideas for the shared Claude Code and Codex infrastructure. Use when recording an infrastructure enhancement for later review rather than implementing it immediately.
Installs into .claude/skills of the current project.
Are you the author of Ideas?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/flonat-ideas)
---
name: ideas
description: "Capture and integrate improvement ideas for the shared Claude Code and Codex infrastructure. Use when recording an infrastructure enhancement for later review rather than implementing it immediately."
allowed-tools:
- Read
- Write
- Edit
- Glob
- Grep
- Bash(ls*, mkdir*, date*)
- AskUserQuestion
- Task
argument-hint: "capture [text] | integrate [since:YYYY-MM-DD] [dryrun]"
---
# Ideas: Capture & Integrate
> An inbox for improvement ideas — the gap between `[LEARN]` tags (immediate corrections) and `skill-extract` (full skill creation). Captures raw improvement ideas and periodically integrates the best ones into the system.
## Two Modes
| Mode | Trigger | What it does |
|------|---------|-------------|
| **Capture** | `ideas capture [text]` | Append a structured idea entry to `log/ideas.md` |
| **Integrate** | `ideas integrate` | Review unprocessed ideas and turn them into actions |
---
## Mode 1: Capture
### With argument: `ideas capture [text]`
Parse the text and append a structured entry to `log/ideas.md`.
### Without argument: `ideas capture`
Ask interactively:
1. "What's the idea?" (free text)
2. "Where did this come from?" (current session / external repo / user feedback / reading)
### Entry Format
```markdown
## [YYYY-MM-DD] [category] Idea title
- **Quality:** [high] | [medium]
- **Source:** [session | external:repo-name | user-feedback | reading:source]
- **Proposed action:** One-sentence description of what to do
- **Details:** [the idea text, expanded if needed]
- **Status:** unprocessed
```
### Auto-Classification
Classify each idea into one of these categories based on content:
| Category | Signal words / patterns |
|----------|------------------------|
| `[skill-design]` | "new skill", "workflow for", "automate", "slash command" |
| `[rule]` | "always", "never", "enforce", "prevent", "require" |
| `[workflow]` | "process", "steps for", "how to handle", "protocol" |
| `[infrastructure]` | "hook", "MCP", "settings", "permissions", "symlink" |
| `[research]` | "method", "analysis", "paper", "experiment", "data" |
### Quality Rating
| Rating | Criteria |
|--------|----------|
| `[high]` | Specific, actionable, addresses a known friction point or recurring issue |
| `[medium]` | Interesting but needs more thought, or addresses a minor convenience issue |
Skip `[low]` ideas — if it's not worth recording, don't record it.
### After Capture
Confirm: "Idea captured in `log/ideas.md`. You have [N] unprocessed ideas — run `ideas integrate` when ready to act on them."
---
## Mode 2: Integrate
### Trigger: `ideas integrate [since:YYYY-MM-DD] [dryrun]`
### Step 1: Read State
Read `log/.ideas-state.json` to find the last integration date. If `since:` argument is provided, use that instead. If no state file exists, process all entries.
### Step 2: Gather Unprocessed Ideas
Read `log/ideas.md` and collect all entries with `**Status:** unprocessed` (optionally filtered by date).
### Step 3: Classify Each Idea
For each unprocessed idea, classify as:
| Type | Description | Action |
|------|-------------|--------|
| **Direct proposal** | Specific edit to a known file — can be implemented now | Present the edit for approval |
| **Investigation** | Needs research or design before implementation | Create a vault task |
| **Duplicate** | Already covered by an existing skill, rule, or convention | Mark as `duplicate` with reference |
| **Declined** | Not worth pursuing after reflection | Mark as `declined` with reason |
### Step 4: Present for Approval
Show a summary table:
```
| # | Idea | Category | Quality | Proposed action | Classification |
|---|------|----------|---------|-----------------|---------------|
| 1 | ... | [rule] | [high] | ... | Direct proposal |
| 2 | ... | [skill-design] | [medium] | ... | Investigation |
```
Ask: "Which ideas should I act on? (all / numbers / skip)"
### Step 5: Execute Approved Ideas
- **Direct proposals:** Make the edit, following break-the-glass rules for protected files
- **Investigations:** Create a vault task in the Tasks Tracker with:
- Task name: "Investigate: [idea title]"
- Source: "Ideas inbox"
- Priority: High for `[high]` quality, Medium for `[medium]`
- Description: Full idea text + proposed approach
### Step 6: Update State
Update each processed entry's status in `log/ideas.md`:
- `**Status:** implemented (YYYY-MM-DD)` — direct proposal was executed
- `**Status:** task-created (YYYY-MM-DD)` — vault task created for investigation
- `**Status:** duplicate → [reference]` — already exists
- `**Status:** declined — [reason]` — not worth pursuing
Write `log/.ideas-state.json`:
```json
{
"last_integration": "YYYY-MM-DD",
"total_captured": N,
"total_implemented": N,
"total_pending": N
}
```
### Dry Run Mode
When `dryrun` is specified, run steps 1-4 only — classify and present, but don't execute or update state. Useful for reviewing the backlog without committing to action.
---
## Important Notes
- Ideas are **not** tasks — they're raw material that may or may not become actionable
- The capture threshold is deliberately low — if something seems worth noting, capture it
- Integration should happen periodically (weekly or when the backlog reaches 10+ ideas)
- This skill complements `[LEARN]` tags (which record corrections) and `skill-extract` (which creates full skills)
- Break-the-glass rules still apply — direct proposals that modify protected files need confirmation