@orderful/droid 0.6.0 → 0.7.0

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.
@@ -0,0 +1,45 @@
1
+ ---
2
+ description: Collaborative scratch pad for planning and research
3
+ argument-hint: [plan|research|review|note|add|check|done] {topic/text}
4
+ allowed-tools: Read, Write, Edit, Glob, Grep, Bash(mkdir:*), Bash(ls:*)
5
+ ---
6
+
7
+ # /brain
8
+
9
+ Entry point for brain doc management. See the **brain skill** for full behavior.
10
+
11
+ ## Arguments
12
+
13
+ $ARGUMENTS
14
+
15
+ ## Usage
16
+
17
+ ```
18
+ /brain # List recent docs or create new
19
+ /brain {topic} # Open existing (fuzzy match) → active
20
+ /brain plan {topic} # Create planning doc → active
21
+ /brain research {topic} # Create research doc → active
22
+ /brain review {topic} # Create review doc → active
23
+ /brain note {text} # Quick capture (fire-and-forget)
24
+ /brain add {text} # Append to active doc
25
+ /brain check # Address @droid comments in active doc
26
+ /brain done # Finalize active doc
27
+ ```
28
+
29
+ ## Configuration
30
+
31
+ From `~/.droid/skills/brain/overrides.yaml`:
32
+ - `brain_dir` - Where docs live (default varies by AI tool)
33
+ - `inbox_folder` - Subfolder for new docs (empty = flat)
34
+
35
+ ## Behavior
36
+
37
+ Refer to the brain skill for:
38
+ - **Opening**: How to fuzzy-match, handle multiple matches, set active
39
+ - **Creating**: Template structure by preset, naming conventions
40
+ - **Notes**: Quick capture workflow
41
+ - **Adding**: Append to active doc with timestamp
42
+ - **Checking**: Find and address @droid comments
43
+ - **Finalizing**: Update status, suggest next steps
44
+
45
+ The skill's `references/` folder contains detailed specs for workflows, templates, naming, and metadata.
@@ -0,0 +1,59 @@
1
+ # Brain Doc Metadata
2
+
3
+ Inline metadata and status lifecycle for brain docs.
4
+
5
+ ## Format
6
+
7
+ Status and type tracked inline at top of doc:
8
+
9
+ ```markdown
10
+ # {Topic}
11
+
12
+ **Type:** plan
13
+ **Status:** exploring
14
+ **Created:** 2025-01-15
15
+
16
+ ...
17
+ ```
18
+
19
+ Simple and portable. Works anywhere markdown is supported.
20
+
21
+ ## Fields
22
+
23
+ | Field | Required | Description |
24
+ |-------|----------|-------------|
25
+ | `Type` | Yes | Doc type: `plan`, `research`, `review`, or `note` |
26
+ | `Status` | Yes (except notes) | Current lifecycle stage |
27
+ | `Created` | Yes | Creation date |
28
+ | `Updated` | No | Last modification date (add when doc changes) |
29
+
30
+ ## Status Lifecycle
31
+
32
+ ```
33
+ exploring → drafting → decided → done
34
+ ↓ ↓ ↓
35
+ stale stale stale
36
+ ```
37
+
38
+ ### Status Definitions
39
+
40
+ | Status | Meaning | Typical Actions |
41
+ |--------|---------|-----------------|
42
+ | `exploring` | Initial discovery, gathering information | Research, ask questions, explore options |
43
+ | `drafting` | Forming opinions, narrowing options | Document trade-offs, propose approaches |
44
+ | `decided` | Decision made, ready to act | Document decision rationale, plan implementation |
45
+ | `done` | Work complete, doc is reference material | Archive or link from project |
46
+ | `stale` | Abandoned or outdated | Review for archival or deletion |
47
+
48
+ ### Transitions
49
+
50
+ - **exploring → drafting**: When you have enough info to start forming opinions
51
+ - **drafting → decided**: When a clear decision/direction emerges
52
+ - **decided → done**: When the work is complete
53
+ - **any → stale**: When doc hasn't been touched in 30+ days without resolution
54
+
55
+ ## Updating Metadata
56
+
57
+ When modifying a doc:
58
+ 1. Add or update the `Updated` field to current date
59
+ 2. Update `Status` if the work has progressed
@@ -0,0 +1,48 @@
1
+ # Brain Doc Naming
2
+
3
+ Conventions for naming brain docs.
4
+
5
+ ## Format
6
+
7
+ ```
8
+ {type}-{topic-slug}.md
9
+ ```
10
+
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
+ ## Slug Rules
19
+
20
+ 1. **Lowercase** all words
21
+ 2. **Replace spaces** with hyphens
22
+ 3. **Remove special characters** (keep alphanumeric and hyphens only)
23
+ 4. **Limit length** to ~50 characters (truncate at word boundary)
24
+ 5. **No trailing hyphens**
25
+
26
+ ## Examples
27
+
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` |
34
+
35
+ ## Notes
36
+
37
+ For notes, include the date in the filename:
38
+ ```
39
+ note-{YYYYMMDD}-{slug}.md
40
+ ```
41
+
42
+ This prevents collisions and allows chronological sorting.
43
+
44
+ ## Uniqueness
45
+
46
+ If a file with the generated name already exists:
47
+ 1. Check if user wants to open existing doc
48
+ 2. Or append a numeric suffix: `plan-auth-refactor-2.md`
@@ -0,0 +1,102 @@
1
+ # Brain Doc Templates
2
+
3
+ Templates for each doc type. All templates use simple markdown.
4
+
5
+ ## Plan Template
6
+
7
+ ```markdown
8
+ # {Topic}
9
+
10
+ **Type:** plan
11
+ **Status:** exploring
12
+ **Created:** {date}
13
+
14
+ Planning {brief description}.
15
+
16
+ ## Context
17
+
18
+ What we're solving and why.
19
+
20
+ ## Exploration
21
+
22
+ Options and approaches considered.
23
+
24
+ ## Decision
25
+
26
+ What we chose and why.
27
+
28
+ ## Next Steps
29
+
30
+ - [ ] Action items
31
+ ```
32
+
33
+ ## Research Template
34
+
35
+ ```markdown
36
+ # {Topic}
37
+
38
+ **Type:** research
39
+ **Status:** exploring
40
+ **Created:** {date}
41
+
42
+ Researching {brief description}.
43
+
44
+ ## Questions
45
+
46
+ What we're trying to understand.
47
+
48
+ ## Findings
49
+
50
+ What we've learned.
51
+
52
+ ## Summary
53
+
54
+ Key takeaways.
55
+ ```
56
+
57
+ ## Review Template
58
+
59
+ ```markdown
60
+ # {Topic}
61
+
62
+ **Type:** review
63
+ **Status:** exploring
64
+ **Created:** {date}
65
+
66
+ Reviewing {brief description}.
67
+
68
+ ## Overview
69
+
70
+ What's being reviewed and scope.
71
+
72
+ ## Observations
73
+
74
+ Key findings and notes.
75
+
76
+ ## Recommendations
77
+
78
+ Suggested changes or actions.
79
+
80
+ ## Verdict
81
+
82
+ Overall assessment.
83
+ ```
84
+
85
+ ## Note Template
86
+
87
+ ```markdown
88
+ # Note: {Brief Title}
89
+
90
+ **Created:** {date}
91
+
92
+ {content}
93
+ ```
94
+
95
+ ## Template Variables
96
+
97
+ | Variable | Description | Example |
98
+ |----------|-------------|---------|
99
+ | `{Topic}` | Doc title from user input | "Auth Refactor" |
100
+ | `{date}` | Current date (YYYY-MM-DD) | "2025-01-15" |
101
+ | `{brief description}` | Context from conversation | "refactoring the authentication system" |
102
+ | `{content}` | User-provided text | (for notes) |
@@ -0,0 +1,188 @@
1
+ # Brain Workflows
2
+
3
+ Detailed procedures for each brain operation.
4
+
5
+ ## Opening
6
+
7
+ **Trigger:** `/brain {topic}` or user asks to open a brain doc
8
+
9
+ **Steps:**
10
+
11
+ 1. **Resolve brain_dir** from config (default: `~/.claude/brain` for claude-code)
12
+
13
+ 2. **Search for matches**
14
+ ```
15
+ Glob: {brain_dir}/**/*{topic}*.md
16
+ ```
17
+ Fuzzy match the topic against doc filenames
18
+
19
+ 3. **Handle results:**
20
+ - **No matches**: Offer to create a new doc with that topic
21
+ - **One match**: Open it
22
+ - **Multiple matches**: Present list, let user choose
23
+
24
+ 4. **Read the doc** and summarize key points:
25
+ - Current status
26
+ - Main topic/context
27
+ - Any open `@droid` comments
28
+ - Recent updates
29
+
30
+ 5. **Set as active doc** - Remember path for subsequent `/brain add` and `/brain check` commands
31
+
32
+ ## Creating
33
+
34
+ **Trigger:** `/brain plan {topic}` or `/brain research {topic}`
35
+
36
+ **Steps:**
37
+
38
+ 1. **Resolve brain_dir** and **inbox_folder** from config
39
+
40
+ 2. **Generate filename** using naming conventions (see `naming.md`):
41
+ - Format: `{type}-{topic-slug}.md`
42
+ - Example: `plan-auth-refactor.md` or `research-caching-strategies.md`
43
+
44
+ 3. **Determine target path:**
45
+ - If `inbox_folder` is set: `{brain_dir}/{inbox_folder}/{filename}`
46
+ - Otherwise: `{brain_dir}/{filename}`
47
+
48
+ 4. **Create directory** if needed
49
+
50
+ 5. **Apply template** based on preset and type (see `templates.md`)
51
+
52
+ 6. **Gather initial context** from conversation:
53
+ - What problem are we solving?
54
+ - Any constraints or requirements mentioned?
55
+ - Related work or prior decisions?
56
+
57
+ 7. **Write the doc** with template structure and initial context
58
+
59
+ 8. **Set as active doc**
60
+
61
+ 9. **Confirm creation** and summarize what was captured
62
+
63
+ ## Notes
64
+
65
+ **Trigger:** `/brain note {text}`
66
+
67
+ **Steps:**
68
+
69
+ 1. **Resolve brain_dir** and **inbox_folder** from config
70
+
71
+ 2. **Generate filename:**
72
+ - Format: `note-{date}-{slug}.md` where date is `YYYYMMDD`
73
+ - Slug from first few words of text
74
+ - Example: `note-20250115-remember-rate-limits.md`
75
+
76
+ 3. **Determine target path:**
77
+ - If `inbox_folder` is set: `{brain_dir}/{inbox_folder}/{filename}`
78
+ - Otherwise: `{brain_dir}/{filename}`
79
+
80
+ 4. **Create simple note:**
81
+ - Markdown preset: Just the text
82
+ - Obsidian preset: Add frontmatter with `type: note`, `created: {date}`
83
+
84
+ 5. **Write the file** - Do NOT set as active (fire-and-forget)
85
+
86
+ 6. **Confirm** briefly: "Captured note to {filename}"
87
+
88
+ ## Adding
89
+
90
+ **Trigger:** `/brain add {text}`
91
+
92
+ **Steps:**
93
+
94
+ 1. **Check for active doc**
95
+ - If no active doc: Ask user which doc to add to, or offer to create new
96
+
97
+ 2. **Read current content** of active doc
98
+
99
+ 3. **Append new section:**
100
+ ```markdown
101
+
102
+ ---
103
+
104
+ ## Update ({date})
105
+
106
+ {text}
107
+ ```
108
+
109
+ 4. **Update the `updated` date** in frontmatter (if using obsidian preset)
110
+
111
+ 5. **Write changes**
112
+
113
+ 6. **Confirm** what was added
114
+
115
+ ## Checking
116
+
117
+ **Trigger:** `/brain check`
118
+
119
+ **Prefer `comments` skill:** If the `comments` skill is installed, use `/comments check` instead - it provides better comment detection, cleanup workflows, and supports the full `@droid`/`@user` convention. The workflow below is a fallback for basic comment handling.
120
+
121
+ **Steps:**
122
+
123
+ 1. **Check for active doc**
124
+ - If no active doc: Ask user which doc to check, or list docs with comments
125
+
126
+ 2. **Read active doc**
127
+
128
+ 3. **Find all `> @droid` comments**
129
+ - Pattern: Lines starting with `> @droid` (blockquote with mention)
130
+
131
+ 4. **For each comment:**
132
+ - Show the comment and surrounding context
133
+ - Address the question/request
134
+ - Add response as `> @{user_mention}` reply
135
+ - Or resolve inline if it was a simple note
136
+
137
+ 5. **Update the doc** with responses
138
+
139
+ 6. **Summarize** what was addressed
140
+
141
+ ## Finalizing
142
+
143
+ **Trigger:** `/brain done`
144
+
145
+ **Steps:**
146
+
147
+ 1. **Check for active doc**
148
+ - If no active doc: Ask which doc to finalize
149
+
150
+ 2. **Read active doc**
151
+
152
+ 3. **Review content:**
153
+ - Are there unresolved `@droid` comments?
154
+ - Is there a clear decision/outcome?
155
+ - Any loose ends?
156
+
157
+ 4. **Update status** to `done` in frontmatter (obsidian preset) or add "Status: Done" (markdown preset)
158
+
159
+ 5. **Suggest next steps:**
160
+ - Promote to project? (if substantial work)
161
+ - Archive? (if complete)
162
+ - Create follow-up tasks?
163
+
164
+ 6. **Clear active doc** from session
165
+
166
+ ## Listing
167
+
168
+ **Trigger:** `/brain` (no arguments)
169
+
170
+ **Steps:**
171
+
172
+ 1. **Resolve brain_dir** from config
173
+
174
+ 2. **Find recent docs:**
175
+ ```
176
+ Glob: {brain_dir}/**/*.md
177
+ ```
178
+ Sort by modification time, limit to 10-15
179
+
180
+ 3. **Present list** with:
181
+ - Filename
182
+ - Type (plan/research/note)
183
+ - Status (if available)
184
+ - Last modified
185
+
186
+ 4. **Offer options:**
187
+ - Select a doc to open
188
+ - Create new plan/research doc
@@ -0,0 +1,108 @@
1
+ ---
2
+ name: brain-obsidian
3
+ description: >-
4
+ Obsidian extension for brain skill. Adds YAML frontmatter, wikilinks, and folder
5
+ organization. Requires brain skill. Install this to use brain docs with your
6
+ Obsidian vault.
7
+ globs:
8
+ - "**/brain/**/*.md"
9
+ alwaysApply: false
10
+ ---
11
+
12
+ # Brain Obsidian Extension
13
+
14
+ Extends the brain skill with Obsidian-specific features. **This skill overrides brain's default templates and workflows.**
15
+
16
+ ## Requirements
17
+
18
+ - `brain` skill must be installed
19
+ - Set `brain_dir` to your Obsidian vault path in brain skill overrides
20
+
21
+ ## Configuration
22
+
23
+ **Required:** Set vault path in `~/.droid/skills/brain/overrides.yaml`:
24
+
25
+ ```yaml
26
+ brain_dir: ~/path/to/your/vault
27
+ ```
28
+
29
+ **Optional:** Configure folders in `~/.droid/skills/brain-obsidian/overrides.yaml`:
30
+
31
+ | Setting | Default | Description |
32
+ |--------------------|---------------|---------------------------------|
33
+ | `inbox_folder` | `0-Inbox` | Where new docs are created |
34
+ | `archive_folder` | `4-Archives` | Where stale/done docs go |
35
+ | `para_structure` | `false` | Enable full PARA organization |
36
+ | `projects_folder` | `1-Projects` | Active project docs (PARA only) |
37
+ | `areas_folder` | `1-Areas` | Area docs (PARA only) |
38
+ | `resources_folder` | `3-Resources` | Reference material (PARA only) |
39
+
40
+ ## What This Adds
41
+
42
+ | Feature | Description |
43
+ |---------------------|--------------------------------------------|
44
+ | YAML frontmatter | Type, status, dates, project links, tags |
45
+ | Wikilinks | `[[note-name]]` syntax for linking |
46
+ | Folder organization | Inbox + Archive always; full PARA optional |
47
+ | Project linking | Associate brain docs with project files |
48
+
49
+ ## Folder Organization
50
+
51
+ **Always available:**
52
+ - `inbox_folder` - New docs land here
53
+ - `archive_folder` - Stale/completed docs
54
+
55
+ **With `para_structure: true`:**
56
+ ```
57
+ vault/
58
+ ├── {inbox_folder}/ # New docs (default: 0-Inbox)
59
+ ├── {projects_folder}/ # Active project docs (default: 1-Projects)
60
+ ├── {areas_folder}/ # Area docs (default: 2-Areas)
61
+ ├── {resources_folder}/ # Reference material (default: 3-Resources)
62
+ └── {archive_folder}/ # Completed/stale (default: 4-Archives)
63
+ ```
64
+
65
+ ## Overridden Behavior
66
+
67
+ When this skill is installed, **ALL brain operations use Obsidian format**:
68
+
69
+ ### Templates
70
+
71
+ All docs get YAML frontmatter:
72
+
73
+ ```yaml
74
+ ---
75
+ type: plan | research | review | note
76
+ status: exploring | drafting | decided | done
77
+ created: YYYY-MM-DD
78
+ updated: YYYY-MM-DD
79
+ project: "[[project-name]]" # Optional
80
+ tags: [] # Optional
81
+ ---
82
+ ```
83
+
84
+ See `references/templates.md` for full templates.
85
+
86
+ ### File Location
87
+
88
+ Docs are created in your vault's inbox folder:
89
+ - `{brain_dir}/{inbox_folder}/{filename}.md`
90
+
91
+ ### Finalizing
92
+
93
+ When running `/brain done`:
94
+ 1. Updates status to `done` in frontmatter
95
+ 2. Suggests moving to archive (or projects/resources if PARA enabled)
96
+ 3. Confirms before moving
97
+
98
+ ## Commands
99
+
100
+ Same commands as brain skill, but with Obsidian output:
101
+
102
+ | Command | Obsidian Behavior |
103
+ |---------------------------|--------------------------------------------|
104
+ | `/brain plan {topic}` | Creates in inbox with frontmatter |
105
+ | `/brain research {topic}` | Creates in inbox with frontmatter |
106
+ | `/brain review {topic}` | Creates in inbox with frontmatter |
107
+ | `/brain note {text}` | Quick capture to inbox |
108
+ | `/brain done` | Updates status, suggests archive/PARA move |
@@ -0,0 +1,45 @@
1
+ name: brain-obsidian
2
+ description: >-
3
+ Obsidian extension for brain skill. Adds YAML frontmatter, wikilinks, and folder
4
+ organization. Requires brain skill. Install this to use brain docs with your
5
+ Obsidian vault.
6
+ version: 0.1.0
7
+ status: beta
8
+ dependencies:
9
+ - brain
10
+ # Optional: project skill enables linking features
11
+ provides_output: false
12
+ config_schema:
13
+ inbox_folder:
14
+ type: string
15
+ description: Folder for new brain docs
16
+ default: "0-Inbox"
17
+ archive_folder:
18
+ type: string
19
+ description: Folder for archived/stale docs
20
+ default: "4-Archives"
21
+ para_structure:
22
+ type: boolean
23
+ description: Enable full PARA folder organization
24
+ default: false
25
+ projects_folder:
26
+ type: string
27
+ description: Folder for active project docs (when para_structure is true)
28
+ default: "1-Projects"
29
+ areas_folder:
30
+ type: string
31
+ description: Folder for area docs (when para_structure is true)
32
+ default: "1-Areas"
33
+ resources_folder:
34
+ type: string
35
+ description: Folder for reference material (when para_structure is true)
36
+ default: "3-Resources"
37
+ examples:
38
+ - title: "Create planning doc in vault"
39
+ code: |
40
+ /brain plan auth refactor
41
+ # Creates in vault's 0-Inbox/ with YAML frontmatter
42
+ - title: "Link to project"
43
+ code: |
44
+ /brain plan feature-x
45
+ # Frontmatter includes project: "[[feature-x]]"