agentleFS
aemerson-commitsaemerson-commits/shareable-skills/skills/triage-ideas/SKILL.md

triage-ideas

Skill1 starsChanged 8 months agoMITView on GitHub

Process Obsidian Ideas.md inbox — route ideas to project roadmaps. NOT for direct roadmap edits or reviews.

The file

We split this skill into the rules it gives an agent

8 rules. About 0 are common, 6 are distinctive, and 2 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈6

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 2

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    If the only content is the frontmatter and # Ideas header with no bullets, report "Ideas inbox is clear" and stop.

    line 29
  2. Distinctive:

    Use vault context to flesh out the idea (run searches in parallel):

    line 40
  3. Distinctive:

    Ask the user to confirm or adjust before proceeding.

    line 55
  4. Distinctive:

    Use the Read tool then Edit tool on the actual file path (NOT Obsidian CLI — it has no edit command):

    line 63
  5. Distinctive:

    If using a database for roadmap tracking (e.g., D1, SQLite), batch ALL ideas into a single SQL file to minimize round-trips:

    line 74
  6. Distinctive:

    If no Roadmap.md exists, create one with the Write tool:

    line 95
  7. Very specific:

    Use the Read tool then Edit tool on {{vault_path}}/Ideas.md.

    line 114
  8. Distinctive:

    IMPORTANT: Do NOT use Obsidian CLI for editing — it doesn't support it.

    line 125

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Triage Ideas — Obsidian Inbox to Project Roadmaps

Process the Ideas inbox — route each idea to the appropriate project roadmap.

Obsidian CLI (for read/search only — no edit command):

OBS="/c/Program Files/Obsidian/Obsidian.exe"
[ ! -f "$OBS" ] && OBS="/c/Users/${USERNAME:-$USER}/AppData/Local/Programs/obsidian/Obsidian.exe"
# All commands need 2>&1 | grep -v "Loading\|out of date"
# NOTE: $USER is EMPTY in the Bash tool on Windows ($USERNAME carries it). A bare $USER
# builds /c/Users//AppData/... which fails [ -f ] and reads as "not installed".

Obsidian vault path: {{vault_path}} — resolve at runtime; don't hardcode a username. Roadmap file: {{vault_path}}/{{project}}/Roadmap.md Ideas file: {{vault_path}}/Ideas.md

Step 1 — Read the inbox

"$OBS" read path="Ideas.md" 2>&1 | grep -v "Loading\|out of date"

If the only content is the frontmatter and # Ideas header with no bullets, report "Ideas inbox is clear" and stop.

Step 2 — Classify each idea

Analyze each idea and classify:

  • Project: Which project does this belong to?
  • Type: Roadmap item (future work), Todo (actionable now), or Feature request
  • Priority: BLOCKING, CRITICAL, High, Medium, Low, or "When needed"
  • Effort: Low, Medium, Large
  • Table: Immediate Backlog (actionable items) or Long-Term Ideas (exploratory/future)

Use vault context to flesh out the idea (run searches in parallel):

"$OBS" search query="{relevant keywords}" limit=10 2>&1 | grep -v "Loading\|out of date"

Also read the roadmap to check for duplicates.

Present the triage plan to the user before executing:

| # | Idea | Project | Type | Priority | Effort | Table |
|---|------|---------|------|----------|--------|-------|
| 1 | ... | Project A | Roadmap | Medium | Low | Immediate |
| 2 | ... | Project A | Roadmap | Low | Medium | Long-Term |

Ask the user to confirm or adjust before proceeding.

Step 3 — Route to ALL destinations

For each confirmed idea, update destinations:

3a. Obsidian Roadmap.md

Use the Read tool then Edit tool on the actual file path (NOT Obsidian CLI — it has no edit command):

  • Immediate Backlog items: Insert new row in the Immediate table
  • Long-Term Ideas items: Append to the Long-Term Ideas table

Row format:

| {Priority} | **{Title}** — {Description} | Ideas inbox {YYYY-MM-DD} | {Effort} |

3b. Database (if applicable)

If using a database for roadmap tracking (e.g., D1, SQLite), batch ALL ideas into a single SQL file to minimize round-trips:

cat > tmp-ideas.sql << 'EOSQL'
INSERT INTO roadmap_items (id, title, description, project, status, createdDate, createdBy, updatedAt, updatedBy, estimatedTime)
VALUES
('idea-xxx', 'Title 1', 'Description. Priority: Medium.', 'your-project', 'planned', 'YYYY-MM-DD', 'claude', 'YYYY-MM-DDTHH:MM:SSZ', 'claude', 'Medium'),
('idea-yyy', 'Title 2', 'Description. Priority: Low.', 'your-project', 'planned', 'YYYY-MM-DD', 'claude', 'YYYY-MM-DDTHH:MM:SSZ', 'claude', 'Large');
EOSQL

# Execute against your database(s)
# npx wrangler d1 execute your-db --remote --file=tmp-ideas.sql

rm tmp-ideas.sql

3c. Other project roadmaps

For items routed to other projects, use the Edit tool on: {{vault_path}}/{Project}/Roadmap.md

If no Roadmap.md exists, create one with the Write tool:

---
type: roadmap
last_updated: {today}
---

# {Project} — Roadmap

## Backlog

| Priority | Item | Notes | Effort |
|----------|------|-------|--------|

## Completed

Step 4 — Clear the inbox

Use the Read tool then Edit tool on {{vault_path}}/Ideas.md.

Replace all idea content, leaving only:

---
type: ideas
---
# Ideas

IMPORTANT: Do NOT use Obsidian CLI for editing — it doesn't support it. Always use Read + Edit tools on the actual file path.

Step 5 — Report summary

## Ideas Triaged

Processed X ideas from inbox:
- → ProjectA/Roadmap.md (Immediate): "idea 1", "idea 2"
- → ProjectA/Roadmap.md (Long-Term): "idea 3"
- → ProjectB/Roadmap.md: "idea 4"
- Marked as already done: "idea 5"

Ideas inbox cleared.

Gotchas

  • Obsidian CLI has NO edit command — always use Read + Edit tools on full file paths
  • Batch database inserts — combine all ideas into one SQL file, run against all environments
  • Database has no priority column — encode priority in the description text if needed
  • Dedup check — search the roadmap for similar items before adding duplicates
  • Immediate vs Long-Term — actionable items with clear scope go to Immediate Backlog; exploratory/meta/tooling ideas go to Long-Term Ideas
  • Clean up tmp files — always remove temp SQL files after execution

Download now (ZIP)

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
What did you use it for? e.g. Reviewing pull requests in a Rails app

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.