@orderful/droid 0.10.3 → 0.10.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -8,8 +8,8 @@ Templates with YAML frontmatter and wikilink support.
8
8
  ---
9
9
  type: plan
10
10
  status: exploring
11
- created: {date}
12
- updated: {date}
11
+ created: { date }
12
+ updated: { date }
13
13
  project: "[[{project}]]"
14
14
  tags: []
15
15
  ---
@@ -41,8 +41,8 @@ What we chose and why.
41
41
  ---
42
42
  type: research
43
43
  status: exploring
44
- created: {date}
45
- updated: {date}
44
+ created: { date }
45
+ updated: { date }
46
46
  project: "[[{project}]]"
47
47
  tags: []
48
48
  ---
@@ -75,8 +75,8 @@ Key takeaways.
75
75
  ---
76
76
  type: review
77
77
  status: exploring
78
- created: {date}
79
- updated: {date}
78
+ created: { date }
79
+ updated: { date }
80
80
  project: "[[{project}]]"
81
81
  tags: []
82
82
  ---
@@ -102,12 +102,12 @@ Suggested changes or actions.
102
102
  Overall assessment.
103
103
  ```
104
104
 
105
- ## Note Template
105
+ ## Idea Template
106
106
 
107
107
  ```markdown
108
108
  ---
109
- type: note
110
- created: {date}
109
+ type: idea
110
+ created: { date }
111
111
  tags: []
112
112
  ---
113
113
 
@@ -118,24 +118,24 @@ tags: []
118
118
 
119
119
  ## Template Variables
120
120
 
121
- | Variable | Description | Example |
122
- |----------|-------------|---------|
123
- | `{Topic}` | Doc title from user input | "Auth Refactor" |
124
- | `{date}` | Current date (YYYY-MM-DD) | "2025-01-15" |
125
- | `{brief description}` | Context from conversation | "refactoring the authentication system" |
126
- | `{project}` | Active project name (if any) | "transaction-templates" |
127
- | `{content}` | User-provided text | (for notes) |
121
+ | Variable | Description | Example |
122
+ | --------------------- | ---------------------------- | --------------------------------------- |
123
+ | `{Topic}` | Doc title from user input | "Auth Refactor" |
124
+ | `{date}` | Current date (YYYY-MM-DD) | "2025-01-15" |
125
+ | `{brief description}` | Context from conversation | "refactoring the authentication system" |
126
+ | `{project}` | Active project name (if any) | "transaction-templates" |
127
+ | `{content}` | User-provided text | (for notes) |
128
128
 
129
129
  ## Frontmatter Fields
130
130
 
131
- | Field | Type | Description |
132
- |-------|------|-------------|
133
- | `type` | string | Doc type: `plan`, `research`, `review`, `note` |
134
- | `status` | string | Lifecycle: `exploring`, `drafting`, `decided`, `done`, `stale` |
135
- | `created` | date | Creation date (YYYY-MM-DD) |
136
- | `updated` | date | Last modification date |
137
- | `project` | wikilink | Link to related project: `"[[project-name]]"` |
138
- | `tags` | list | Tags for filtering: `[tag1, tag2]` |
131
+ | Field | Type | Description |
132
+ | --------- | -------- | -------------------------------------------------------------- |
133
+ | `type` | string | Doc type: `plan`, `research`, `review`, `idea` |
134
+ | `status` | string | Lifecycle: `exploring`, `drafting`, `decided`, `done`, `stale` |
135
+ | `created` | date | Creation date (YYYY-MM-DD) |
136
+ | `updated` | date | Last modification date |
137
+ | `project` | wikilink | Link to related project: `"[[project-name]]"` |
138
+ | `tags` | list | Tags for filtering: `[tag1, tag2]` |
139
139
 
140
140
  ## Wikilink Conventions
141
141
 
@@ -12,10 +12,13 @@ Obsidian-specific procedures that override brain defaults.
12
12
  - `brain_dir` from brain skill (your vault path)
13
13
  - `inbox_folder` from brain-obsidian (default: `0-Inbox`)
14
14
 
15
- 2. **Target folder:** `{brain_dir}/{inbox_folder}/`
15
+ 2. **Determine target folder based on type:**
16
+ - `plan` → `{brain_dir}/{inbox_folder}/plans/`
17
+ - `research` → `{brain_dir}/{inbox_folder}/research/`
18
+ - `review` → `{brain_dir}/{inbox_folder}/reviews/`
16
19
 
17
20
  3. **Generate filename** using brain's naming conventions:
18
- - Format: `{type}-{topic-slug}.md`
21
+ - Format: `{topic-slug}.md` (no type prefix - folder indicates type)
19
22
 
20
23
  4. **Check for active project:**
21
24
  - If `/project` was loaded this session, use its name for `project` field
@@ -26,7 +29,7 @@ Obsidian-specific procedures that override brain defaults.
26
29
  - Set `created` and `updated` to today
27
30
  - Set `status: exploring`
28
31
 
29
- 6. **Create the file** in vault
32
+ 6. **Create the file** in vault (create type folder if needed)
30
33
 
31
34
  7. **Set as active doc** (same as brain)
32
35
 
@@ -37,6 +40,7 @@ Obsidian-specific procedures that override brain defaults.
37
40
  **Steps:**
38
41
 
39
42
  1. **Search in brain_dir** (your vault):
43
+
40
44
  ```
41
45
  Glob: {brain_dir}/**/*{topic}*.md
42
46
  ```
@@ -82,25 +86,27 @@ When modifying any brain doc:
82
86
  4. **Confirm move with user** before relocating
83
87
 
84
88
  5. **Move the file** if confirmed:
89
+
85
90
  ```bash
86
91
  mv "{brain_dir}/{inbox_folder}/{file}" "{brain_dir}/{destination}/{file}"
87
92
  ```
88
93
 
89
94
  6. **Clear active doc** from session
90
95
 
91
- ## Quick Notes
96
+ ## Quick Ideas
92
97
 
93
- **Overrides:** brain's Notes workflow
98
+ **Overrides:** brain's Ideas workflow
94
99
 
95
100
  **Steps:**
96
101
 
97
- 1. **Create in inbox:** `{brain_dir}/{inbox_folder}/note-{date}-{slug}.md`
102
+ 1. **Create in ideas folder:** `{brain_dir}/{inbox_folder}/ideas/{date}-{slug}.md`
103
+
104
+ 2. **Use idea template** with minimal frontmatter:
98
105
 
99
- 2. **Use note template** with minimal frontmatter:
100
106
  ```yaml
101
107
  ---
102
- type: note
103
- created: {date}
108
+ type: idea
109
+ created: { date }
104
110
  tags: []
105
111
  ---
106
112
  ```
@@ -110,6 +116,7 @@ When modifying any brain doc:
110
116
  ## Project Integration (Optional)
111
117
 
112
118
  **Requires:** `project` skill. If not installed, suggest:
119
+
113
120
  > "Linking to projects requires the project skill. Install it with `droid` → Skills → project"
114
121
 
115
122
  When a project is loaded via `/project {name}`:
@@ -123,6 +130,7 @@ When a project is loaded via `/project {name}`:
123
130
  **Trigger:** User says "add this to the project", "link this to project", or "capture in project"
124
131
 
125
132
  **Requires:** `project` skill. If not installed, suggest:
133
+
126
134
  > "Linking to projects requires the project skill. Install it with `droid` → Skills → project"
127
135
 
128
136
  For linking a brain doc (research, notes, design) to an existing project.
@@ -150,6 +158,7 @@ For linking a brain doc (research, notes, design) to an existing project.
150
158
  **Trigger:** User says "promote to project", "make this a project", or "convert to project"
151
159
 
152
160
  **Requires:** `project` skill. If not installed, suggest:
161
+
153
162
  > "Promoting to project requires the project skill. Install it with `droid` → Skills → project"
154
163
 
155
164
  For graduating a full tech design or plan into its own project.
@@ -184,9 +193,10 @@ For graduating a full tech design or plan into its own project.
184
193
 
185
194
  **Overrides:** brain's Listing workflow
186
195
 
187
- Search in vault:
196
+ Search in type folders within vault:
197
+
188
198
  ```
189
- Glob: {brain_dir}/**/*.md
199
+ Glob: {brain_dir}/{inbox_folder}/{plans,research,reviews,ideas}/**/*.md
190
200
  ```
191
201
 
192
- Filter to brain doc types by checking frontmatter for `type: plan|research|review|note`.
202
+ Filter to brain doc types by checking frontmatter for `type: plan|research|review|idea`.
@@ -17,29 +17,46 @@ Review target: $ARGUMENTS
17
17
  /code-review path/to/file # Review specific file
18
18
  ```
19
19
 
20
+ ### Step 0: Check for Brain Integration
21
+
22
+ **If the `brain` skill is installed** (check for `~/.claude/skills/brain/SKILL.md` or `~/.config/opencode/skills/brain/SKILL.md`):
23
+
24
+ Ask the user: **"Would you like the review results saved to a `/brain review` doc?"**
25
+
26
+ - If yes: Create a brain review doc at the start using `/brain review {PR title or branch name}`
27
+ - The final report will be written to the brain doc instead of just displayed
28
+ - This allows for async discussion via `@droid`/`@{user}` comments
29
+
30
+ If brain skill is not installed or user declines, proceed with normal terminal output.
31
+
20
32
  ### Step 1: Determine Review Scope
21
33
 
22
34
  Parse the argument to determine what to review:
23
35
 
24
36
  **If argument starts with `#` or is a number (e.g., `#123` or `123`):**
37
+
25
38
  - This is a PR number
26
39
  - Fetch PR details: `gh pr view $PR_NUMBER --json title,body,baseRefName,headRefName,files`
27
40
  - Get the diff: `gh pr diff $PR_NUMBER`
28
41
  - Note the PR author and description for context
29
42
 
30
43
  **If argument is `staged` or empty:**
44
+
31
45
  - Review staged changes: `git diff --cached`
32
46
 
33
47
  **If argument is `branch`:**
48
+
34
49
  - Review current branch vs main: `git diff origin/main...HEAD`
35
50
 
36
51
  **If argument is a file path:**
52
+
37
53
  - Review specific file: `git diff HEAD -- $FILE_PATH`
38
54
  - If no changes, review the entire file for issues
39
55
 
40
56
  ### Step 2: Gather Context
41
57
 
42
58
  For PR reviews, also fetch:
59
+
43
60
  - PR description (may contain context about the change)
44
61
  - Linked issues: `gh pr view $PR_NUMBER --json body` and parse for #issue refs
45
62
  - Changed files list for targeted agent assignment
@@ -54,6 +71,7 @@ Launch these agents in parallel using the Task tool with `run_in_background: tru
54
71
  4. **type-reviewer**: Type design, interface contracts
55
72
 
56
73
  Pass each agent:
74
+
57
75
  1. The diff content
58
76
  2. The full file content for changed files (for context)
59
77
  3. PR description if available
@@ -70,15 +88,18 @@ Filter out issues with confidence < 80.
70
88
  Compile findings into a prioritized report:
71
89
 
72
90
  **PR #123: "Add partnership billing events"** (if reviewing a PR)
73
- *Author: @username*
91
+ _Author: @username_
74
92
 
75
93
  **Critical** (security, data loss, billing errors)
94
+
76
95
  - `file.ts:42` - Issue description
77
96
 
78
97
  **Important** (bugs, missing tests, type issues)
98
+
79
99
  - `file.ts:67` - Issue description
80
100
 
81
101
  **Suggestions** (style, readability)
102
+
82
103
  - `file.ts:89` - Issue description
83
104
 
84
105
  **Summary**: X critical, Y important, Z suggestions across N files.
@@ -86,6 +107,7 @@ Compile findings into a prioritized report:
86
107
  ### Step 6: Offer Actions (for PRs)
87
108
 
88
109
  After presenting the report, offer:
110
+
89
111
  - "Would you like me to post this as a PR comment?"
90
112
  - "Should I suggest fixes for any of these issues?"
91
113
  - "Want me to check out this branch and fix the critical issues?"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@orderful/droid",
3
- "version": "0.10.3",
3
+ "version": "0.10.5",
4
4
  "description": "AI workflow toolkit for sharing skills, commands, and agents across the team",
5
5
  "type": "module",
6
6
  "bin": {
package/src/lib/skills.ts CHANGED
@@ -313,16 +313,10 @@ export function installSkill(skillName: string): { success: boolean; message: st
313
313
  const commandsPath = getCommandsInstallPath(config.ai_tool);
314
314
 
315
315
  // Check for collisions BEFORE installing (only if not already installed by droid)
316
+ // Note: If skill folder exists but skill isn't in config, we allow overwriting (stale state
317
+ // from AI tool switch or manual cleanup). Command/agent collisions still checked.
316
318
  if (!config.skills[skillName]) {
317
- // Check skill folder collision
318
- if (existsSync(targetSkillDir)) {
319
- return {
320
- success: false,
321
- message: `Cannot install: skill folder '${skillName}' already exists at ${targetSkillDir}`,
322
- };
323
- }
324
-
325
- // Check command file collisions
319
+ // Check command file collisions (these could conflict with other skills)
326
320
  const commandsSource = join(bundledSkillDir, 'commands');
327
321
  if (existsSync(commandsSource)) {
328
322
  const commandFiles = readdirSync(commandsSource).filter(f => f.endsWith('.md') && f.toLowerCase() !== 'readme.md');
@@ -38,26 +38,41 @@ Ideas develop through iteration, not single prompts.
38
38
 
39
39
  **IMPORTANT:** Before using any default paths, ALWAYS read `~/.droid/skills/brain/overrides.yaml` first. If `brain_dir` is configured there, use that path. Only fall back to defaults if the file doesn't exist or lacks a `brain_dir` setting.
40
40
 
41
- | Setting | Default | Description |
42
- | -------------- | ----------- | --------------------------------------------------------- |
43
- | `brain_dir` | (see below) | Where docs are stored |
44
- | `inbox_folder` | (empty) | Optional subfolder for new docs (omit for flat structure) |
41
+ | Setting | Default | Description |
42
+ | -------------- | ----------- | --------------------------------------------- |
43
+ | `brain_dir` | (see below) | Where docs are stored |
44
+ | `inbox_folder` | (empty) | Root folder for new docs (e.g., `0-Inbox`) |
45
45
 
46
46
  Default `brain_dir` by AI tool (only if not configured):
47
47
 
48
48
  - **claude-code**: `~/.claude/brain`
49
49
  - **opencode**: `~/.config/opencode/brain`
50
50
 
51
+ ## Folder Structure
52
+
53
+ Docs are organized by type into subfolders:
54
+
55
+ ```
56
+ {brain_dir}/
57
+ └── {inbox_folder}/ # e.g., "0-Inbox" (or root if not set)
58
+ ├── plans/ # Structured planning docs
59
+ ├── research/ # Open-ended exploration
60
+ ├── reviews/ # Code reviews, evaluations
61
+ └── ideas/ # Quick captures
62
+ ```
63
+
64
+ Folders are created automatically when needed.
65
+
51
66
  ## Core Concepts
52
67
 
53
68
  **Active doc:** Opening or creating a brain doc makes it "active" for the session. Subsequent `/brain add` commands append to it without specifying a path.
54
69
 
55
- **Doc types:**
70
+ **Doc types:** (each stored in its own folder)
56
71
 
57
- - `plan` - Structured: Context → Exploration → Decision → Next Steps
58
- - `research` - Open-ended exploration of a topic
59
- - `review` - Code review, document review, or any evaluation task
60
- - `note` - Quick capture (fire-and-forget, doesn't become active)
72
+ - `plan` → `plans/` - Structured: Context → Exploration → Decision → Next Steps
73
+ - `research` → `research/` - Open-ended exploration of a topic
74
+ - `review` → `reviews/` - Code review, document review, or any evaluation task
75
+ - `idea` → `ideas/` - Quick capture (fire-and-forget, doesn't become active)
61
76
 
62
77
  **Comment conventions:** In markdown files, ALWAYS use blockquote `>` prefix for @mention comments:
63
78
 
@@ -84,10 +99,10 @@ Read user's configured mention from `~/.droid/config.yaml` → `user_mention` (e
84
99
  | ------------------------- | ---------------------------------------------------------- |
85
100
  | `/brain` | List recent docs or create new |
86
101
  | `/brain {topic}` | **Search** for existing doc (fuzzy match) → becomes active |
87
- | `/brain plan {topic}` | Create planning doc (requires `plan` keyword) |
88
- | `/brain research {topic}` | Create research doc (requires `research` keyword) |
89
- | `/brain review {topic}` | Create review doc (requires `review` keyword) |
90
- | `/brain note {text}` | Quick capture (standalone, doesn't become active) |
102
+ | `/brain plan {topic}` | Create planning doc `plans/{topic}.md` |
103
+ | `/brain research {topic}` | Create research doc `research/{topic}.md` |
104
+ | `/brain review {topic}` | Create review doc `reviews/{topic}.md` |
105
+ | `/brain idea {text}` | Quick capture `ideas/{date}-{slug}.md` (not active) |
91
106
  | `/brain add {text}` | Append to active doc |
92
107
  | `/brain check` | Address @droid comments in active doc |
93
108
  | `/brain done` | Finalize active doc, update status |
@@ -112,13 +127,13 @@ Full procedure: `references/workflows.md` § Creating
112
127
  Templates: `references/templates.md`
113
128
  Naming: `references/naming.md`
114
129
 
115
- ## Quick Notes
130
+ ## Quick Ideas
116
131
 
117
- **Trigger:** `/brain note {text}`
132
+ **Trigger:** `/brain idea {text}`
118
133
 
119
- **TLDR:** Fire-and-forget capture to inbox. Does not become active doc.
134
+ **TLDR:** Fire-and-forget capture to `ideas/` folder. Does not become active doc.
120
135
 
121
- Full procedure: `references/workflows.md` § Notes
136
+ Full procedure: `references/workflows.md` § Ideas
122
137
 
123
138
  ## Adding Content
124
139
 
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  description: Collaborative scratchpad for planning and research
3
- argument-hint: "[{topic} | plan|research|review {topic} | note|add {text} | check|done]"
3
+ argument-hint: "[{topic} | plan|research|review {topic} | idea|add {text} | check|done]"
4
4
  allowed-tools: Read, Write, Edit, Glob, Grep, Bash(mkdir:*), Bash(ls:*)
5
5
  ---
6
6
 
@@ -23,10 +23,10 @@ $ARGUMENTS
23
23
  ```
24
24
  /brain # List recent docs or create new
25
25
  /brain {topic} # SEARCH: Open existing doc (fuzzy match) → active
26
- /brain plan {topic} # CREATE: New planning doc → active
27
- /brain research {topic} # Create research doc → active
28
- /brain review {topic} # Create review doc → active
29
- /brain note {text} # Quick capture (fire-and-forget)
26
+ /brain plan {topic} # CREATE: New planning doc → plans/
27
+ /brain research {topic} # Create research doc → research/
28
+ /brain review {topic} # Create review doc → reviews/
29
+ /brain idea {text} # Quick capture → ideas/ (fire-and-forget)
30
30
  /brain add {text} # Append to active doc
31
31
  /brain check # Address @droid comments in active doc
32
32
  /brain done # Finalize active doc
@@ -37,7 +37,19 @@ $ARGUMENTS
37
37
  **ALWAYS read `~/.droid/skills/brain/overrides.yaml` first.** Use configured values if present, only fall back to defaults if missing.
38
38
 
39
39
  - `brain_dir` - Where docs live (default varies by AI tool)
40
- - `inbox_folder` - Subfolder for new docs (empty = flat)
40
+ - `inbox_folder` - Root for type folders (e.g., `0-Inbox`)
41
+
42
+ ## Folder Structure
43
+
44
+ Docs are organized by type:
45
+
46
+ ```
47
+ {brain_dir}/{inbox_folder}/
48
+ ├── plans/
49
+ ├── research/
50
+ ├── reviews/
51
+ └── ideas/
52
+ ```
41
53
 
42
54
  ## Behavior
43
55
 
@@ -45,7 +57,7 @@ Refer to the brain skill for:
45
57
 
46
58
  - **Opening**: How to fuzzy-match, handle multiple matches, set active
47
59
  - **Creating**: Template structure by preset, naming conventions
48
- - **Notes**: Quick capture workflow
60
+ - **Ideas**: Quick capture workflow
49
61
  - **Adding**: Append to active doc with timestamp
50
62
  - **Checking**: Find and address @droid comments
51
63
  - **Finalizing**: Update status, suggest next steps
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  description: Collaborative scratchpad for planning and research
3
- argument-hint: "[{topic} | plan|research|review {topic} | note|add {text} | check|done]"
3
+ argument-hint: "[{topic} | plan|research|review {topic} | idea|add {text} | check|done]"
4
4
  allowed-tools: Read, Write, Edit, Glob, Grep, Bash(mkdir:*), Bash(ls:*)
5
5
  ---
6
6
 
@@ -23,10 +23,10 @@ $ARGUMENTS
23
23
  ```
24
24
  /scratchpad # List recent docs or create new
25
25
  /scratchpad {topic} # SEARCH: Open existing doc (fuzzy match) → active
26
- /scratchpad plan {topic} # CREATE: New planning doc → active
27
- /scratchpad research {topic} # Create research doc → active
28
- /scratchpad review {topic} # Create review doc → active
29
- /scratchpad note {text} # Quick capture (fire-and-forget)
26
+ /scratchpad plan {topic} # CREATE: New planning doc → plans/
27
+ /scratchpad research {topic} # Create research doc → research/
28
+ /scratchpad review {topic} # Create review doc → reviews/
29
+ /scratchpad idea {text} # Quick capture → ideas/ (fire-and-forget)
30
30
  /scratchpad add {text} # Append to active doc
31
31
  /scratchpad check # Address @droid comments in active doc
32
32
  /scratchpad done # Finalize active doc
@@ -37,7 +37,19 @@ $ARGUMENTS
37
37
  **ALWAYS read `~/.droid/skills/brain/overrides.yaml` first.** Use configured values if present, only fall back to defaults if missing.
38
38
 
39
39
  - `brain_dir` - Where docs live (default varies by AI tool)
40
- - `inbox_folder` - Subfolder for new docs (empty = flat)
40
+ - `inbox_folder` - Root for type folders (e.g., `0-Inbox`)
41
+
42
+ ## Folder Structure
43
+
44
+ Docs are organized by type:
45
+
46
+ ```
47
+ {brain_dir}/{inbox_folder}/
48
+ ├── plans/
49
+ ├── research/
50
+ ├── reviews/
51
+ └── ideas/
52
+ ```
41
53
 
42
54
  ## Behavior
43
55
 
@@ -45,7 +57,7 @@ Refer to the brain skill for:
45
57
 
46
58
  - **Opening**: How to fuzzy-match, handle multiple matches, set active
47
59
  - **Creating**: Template structure by preset, naming conventions
48
- - **Notes**: Quick capture workflow
60
+ - **Ideas**: Quick capture workflow
49
61
  - **Adding**: Append to active doc with timestamp
50
62
  - **Checking**: Find and address @droid comments
51
63
  - **Finalizing**: Update status, suggest next steps
@@ -4,17 +4,12 @@ Conventions for naming brain docs.
4
4
 
5
5
  ## Format
6
6
 
7
+ Since docs are organized into type folders (`plans/`, `research/`, `reviews/`, `ideas/`), filenames no longer need a type prefix:
8
+
7
9
  ```
8
- {type}-{topic-slug}.md
10
+ {topic-slug}.md
9
11
  ```
10
12
 
11
- ## Components
12
-
13
- | Component | Description | Examples |
14
- | -------------- | ------------------------------------ | ------------------------------------- |
15
- | `{type}` | Doc type: `plan`, `research`, `note` | `plan`, `research`, `note` |
16
- | `{topic-slug}` | Lowercase, hyphen-separated topic | `auth-refactor`, `caching-strategies` |
17
-
18
13
  ## Slug Rules
19
14
 
20
15
  1. **Lowercase** all words
@@ -25,26 +20,26 @@ Conventions for naming brain docs.
25
20
 
26
21
  ## Examples
27
22
 
28
- | Input | Filename |
29
- | -------------------------------------------- | ----------------------------------------- |
30
- | `/brain plan Auth Refactor` | `plan-auth-refactor.md` |
31
- | `/brain research Caching Strategies` | `research-caching-strategies.md` |
32
- | `/brain plan Transaction Template Rendering` | `plan-transaction-template-rendering.md` |
33
- | `/brain note Remember to check rate limits` | `note-20250115-remember-to-check-rate.md` |
23
+ | Input | Path |
24
+ | -------------------------------------------- | ------------------------------------------------ |
25
+ | `/brain plan Auth Refactor` | `plans/auth-refactor.md` |
26
+ | `/brain research Caching Strategies` | `research/caching-strategies.md` |
27
+ | `/brain review PR 4530` | `reviews/pr-4530.md` |
28
+ | `/brain idea Remember to check rate limits` | `ideas/20250115-remember-to-check-rate.md` |
34
29
 
35
- ## Notes
30
+ ## Ideas (Quick Captures)
36
31
 
37
- For notes, include the date in the filename:
32
+ For ideas, include the date in the filename to prevent collisions:
38
33
 
39
34
  ```
40
- note-{YYYYMMDD}-{slug}.md
35
+ {YYYYMMDD}-{slug}.md
41
36
  ```
42
37
 
43
- This prevents collisions and allows chronological sorting.
38
+ This allows chronological sorting within the `ideas/` folder.
44
39
 
45
40
  ## Uniqueness
46
41
 
47
42
  If a file with the generated name already exists:
48
43
 
49
44
  1. Check if user wants to open existing doc
50
- 2. Or append a numeric suffix: `plan-auth-refactor-2.md`
45
+ 2. Or append a numeric suffix: `auth-refactor-2.md`
@@ -82,11 +82,12 @@ Suggested changes or actions.
82
82
  Overall assessment.
83
83
  ```
84
84
 
85
- ## Note Template
85
+ ## Idea Template
86
86
 
87
87
  ```markdown
88
- # Note: {Brief Title}
88
+ # {Brief Title}
89
89
 
90
+ **Type:** idea
90
91
  **Created:** {date}
91
92
 
92
93
  {content}
@@ -37,26 +37,28 @@ Detailed procedures for each brain operation.
37
37
 
38
38
  ## Creating
39
39
 
40
- **Trigger:** `/brain plan {topic}` or `/brain research {topic}`
40
+ **Trigger:** `/brain plan {topic}`, `/brain research {topic}`, or `/brain review {topic}`
41
41
 
42
42
  **Steps:**
43
43
 
44
44
  1. **Read config first (MANDATORY)**
45
45
  - Use the Read tool on `~/.droid/skills/brain/overrides.yaml`
46
46
  - If file exists and contains `brain_dir:`, use that path
47
+ - Also check for `inbox_folder` setting (e.g., `0-Inbox`)
47
48
  - Only use defaults if the file doesn't exist or `brain_dir` is not set
48
- - Also check for `inbox_folder` setting
49
49
  - **Do NOT skip this step or assume defaults**
50
50
 
51
51
  2. **Generate filename** using naming conventions (see `naming.md`):
52
- - Format: `{type}-{topic-slug}.md`
53
- - Example: `plan-auth-refactor.md` or `research-caching-strategies.md`
52
+ - Format: `{topic-slug}.md` (no type prefix - folder indicates type)
53
+ - Example: `auth-refactor.md` or `caching-strategies.md`
54
54
 
55
- 3. **Determine target path:**
56
- - If `inbox_folder` is set: `{brain_dir}/{inbox_folder}/{filename}`
57
- - Otherwise: `{brain_dir}/{filename}`
55
+ 3. **Determine target path based on type:**
56
+ - Base: `{brain_dir}/{inbox_folder}` (or just `{brain_dir}` if no inbox_folder)
57
+ - `plan` `{base}/plans/{filename}`
58
+ - `research` → `{base}/research/{filename}`
59
+ - `review` → `{base}/reviews/{filename}`
58
60
 
59
- 4. **Create directory** if needed
61
+ 4. **Create directory** if needed (type folder may not exist yet)
60
62
 
61
63
  5. **Apply template** based on preset and type (see `templates.md`)
62
64
 
@@ -76,35 +78,35 @@ Detailed procedures for each brain operation.
76
78
 
77
79
  10. **Confirm creation** and summarize what was captured
78
80
 
79
- ## Notes
81
+ ## Ideas
80
82
 
81
- **Trigger:** `/brain note {text}`
83
+ **Trigger:** `/brain idea {text}`
82
84
 
83
85
  **Steps:**
84
86
 
85
87
  1. **Read config first (MANDATORY)**
86
88
  - Use the Read tool on `~/.droid/skills/brain/overrides.yaml`
87
89
  - If file exists and contains `brain_dir:`, use that path
90
+ - Also check for `inbox_folder` setting (e.g., `0-Inbox`)
88
91
  - Only use defaults if the file doesn't exist or `brain_dir` is not set
89
- - Also check for `inbox_folder` setting
90
92
  - **Do NOT skip this step or assume defaults**
91
93
 
92
94
  2. **Generate filename:**
93
- - Format: `note-{date}-{slug}.md` where date is `YYYYMMDD`
95
+ - Format: `{date}-{slug}.md` where date is `YYYYMMDD`
94
96
  - Slug from first few words of text
95
- - Example: `note-20250115-remember-rate-limits.md`
97
+ - Example: `20250115-remember-rate-limits.md`
96
98
 
97
99
  3. **Determine target path:**
98
- - If `inbox_folder` is set: `{brain_dir}/{inbox_folder}/{filename}`
99
- - Otherwise: `{brain_dir}/{filename}`
100
+ - Base: `{brain_dir}/{inbox_folder}` (or just `{brain_dir}` if no inbox_folder)
101
+ - Path: `{base}/ideas/{filename}`
100
102
 
101
- 4. **Create simple note:**
103
+ 4. **Create simple idea doc:**
102
104
  - Markdown preset: Just the text
103
- - Obsidian preset: Add frontmatter with `type: note`, `created: {date}`
105
+ - Obsidian preset: Add frontmatter with `type: idea`, `created: {date}`
104
106
 
105
107
  5. **Write the file** - Do NOT set as active (fire-and-forget)
106
108
 
107
- 6. **Confirm** briefly: "Captured note to {filename}"
109
+ 6. **Confirm** briefly: "Captured idea to ideas/{filename}"
108
110
 
109
111
  ## Adding
110
112