@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.
- package/CHANGELOG.md +20 -0
- package/dist/lib/skills.d.ts.map +1 -1
- package/dist/lib/skills.js +3 -8
- package/dist/lib/skills.js.map +1 -1
- package/dist/skills/brain/SKILL.md +32 -17
- package/dist/skills/brain/commands/brain.md +19 -7
- package/dist/skills/brain/commands/scratchpad.md +19 -7
- package/dist/skills/brain/references/naming.md +14 -19
- package/dist/skills/brain/references/templates.md +3 -2
- package/dist/skills/brain/references/workflows.md +20 -18
- package/dist/skills/brain-obsidian/SKILL.md +36 -19
- package/dist/skills/brain-obsidian/references/templates.md +24 -24
- package/dist/skills/brain-obsidian/references/workflows.md +22 -12
- package/dist/skills/code-review/commands/code-review.md +23 -1
- package/package.json +1 -1
- package/src/lib/skills.ts +3 -9
- package/src/skills/brain/SKILL.md +32 -17
- package/src/skills/brain/commands/brain.md +19 -7
- package/src/skills/brain/commands/scratchpad.md +19 -7
- package/src/skills/brain/references/naming.md +14 -19
- package/src/skills/brain/references/templates.md +3 -2
- package/src/skills/brain/references/workflows.md +20 -18
- package/src/skills/brain-obsidian/SKILL.md +36 -19
- package/src/skills/brain-obsidian/references/templates.md +24 -24
- package/src/skills/brain-obsidian/references/workflows.md +22 -12
- package/src/skills/code-review/commands/code-review.md +23 -1
|
@@ -26,7 +26,7 @@ brain_dir: ~/path/to/your/vault
|
|
|
26
26
|
**Optional:** Configure folders in `~/.droid/skills/brain-obsidian/overrides.yaml`:
|
|
27
27
|
|
|
28
28
|
| Setting | Default | Description |
|
|
29
|
-
|
|
29
|
+
| ------------------ | ------------- | ------------------------------- |
|
|
30
30
|
| `inbox_folder` | `0-Inbox` | Where new docs are created |
|
|
31
31
|
| `archive_folder` | `4-Archives` | Where stale/done docs go |
|
|
32
32
|
| `para_structure` | `false` | Enable full PARA organization |
|
|
@@ -37,7 +37,7 @@ brain_dir: ~/path/to/your/vault
|
|
|
37
37
|
## What This Adds
|
|
38
38
|
|
|
39
39
|
| Feature | Description |
|
|
40
|
-
|
|
40
|
+
| ------------------- | ------------------------------------------ |
|
|
41
41
|
| YAML frontmatter | Type, status, dates, project links, tags |
|
|
42
42
|
| Wikilinks | `[[note-name]]` syntax for linking |
|
|
43
43
|
| Folder organization | Inbox + Archive always; full PARA optional |
|
|
@@ -45,14 +45,26 @@ brain_dir: ~/path/to/your/vault
|
|
|
45
45
|
|
|
46
46
|
## Folder Organization
|
|
47
47
|
|
|
48
|
-
**
|
|
49
|
-
- `inbox_folder` - New docs land here
|
|
50
|
-
- `archive_folder` - Stale/completed docs
|
|
48
|
+
**Docs are organized by type within the inbox:**
|
|
51
49
|
|
|
52
|
-
**With `para_structure: true`:**
|
|
53
50
|
```
|
|
54
51
|
vault/
|
|
55
|
-
|
|
52
|
+
└── {inbox_folder}/ # (default: 0-Inbox)
|
|
53
|
+
├── plans/ # Planning docs
|
|
54
|
+
├── research/ # Research docs
|
|
55
|
+
├── reviews/ # Review docs
|
|
56
|
+
└── ideas/ # Quick captures
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
**With `para_structure: true`** (adds archive + organization folders):
|
|
60
|
+
|
|
61
|
+
```
|
|
62
|
+
vault/
|
|
63
|
+
├── {inbox_folder}/ # New docs by type (default: 0-Inbox)
|
|
64
|
+
│ ├── plans/
|
|
65
|
+
│ ├── research/
|
|
66
|
+
│ ├── reviews/
|
|
67
|
+
│ └── ideas/
|
|
56
68
|
├── {projects_folder}/ # Active project docs (default: 1-Projects)
|
|
57
69
|
├── {areas_folder}/ # Area docs (default: 2-Areas)
|
|
58
70
|
├── {resources_folder}/ # Reference material (default: 3-Resources)
|
|
@@ -69,12 +81,12 @@ All docs get YAML frontmatter:
|
|
|
69
81
|
|
|
70
82
|
```yaml
|
|
71
83
|
---
|
|
72
|
-
type: plan | research | review |
|
|
84
|
+
type: plan | research | review | idea
|
|
73
85
|
status: exploring | drafting | decided | done
|
|
74
86
|
created: YYYY-MM-DD
|
|
75
87
|
updated: YYYY-MM-DD
|
|
76
|
-
project: "[[project-name]]"
|
|
77
|
-
tags: []
|
|
88
|
+
project: "[[project-name]]" # Optional
|
|
89
|
+
tags: [] # Optional
|
|
78
90
|
---
|
|
79
91
|
```
|
|
80
92
|
|
|
@@ -82,12 +94,17 @@ See `references/templates.md` for full templates.
|
|
|
82
94
|
|
|
83
95
|
### File Location
|
|
84
96
|
|
|
85
|
-
Docs are created in your vault's inbox
|
|
86
|
-
|
|
97
|
+
Docs are created in type-specific folders within your vault's inbox:
|
|
98
|
+
|
|
99
|
+
- `{brain_dir}/{inbox_folder}/plans/{filename}.md`
|
|
100
|
+
- `{brain_dir}/{inbox_folder}/research/{filename}.md`
|
|
101
|
+
- `{brain_dir}/{inbox_folder}/reviews/{filename}.md`
|
|
102
|
+
- `{brain_dir}/{inbox_folder}/ideas/{filename}.md`
|
|
87
103
|
|
|
88
104
|
### Finalizing
|
|
89
105
|
|
|
90
106
|
When running `/brain done`:
|
|
107
|
+
|
|
91
108
|
1. Updates status to `done` in frontmatter
|
|
92
109
|
2. Suggests moving to archive (or projects/resources if PARA enabled)
|
|
93
110
|
3. Confirms before moving
|
|
@@ -96,10 +113,10 @@ When running `/brain done`:
|
|
|
96
113
|
|
|
97
114
|
Same commands as brain skill, but with Obsidian output:
|
|
98
115
|
|
|
99
|
-
| Command | Obsidian Behavior
|
|
100
|
-
|
|
101
|
-
| `/brain plan {topic}` | Creates in
|
|
102
|
-
| `/brain research {topic}` | Creates in
|
|
103
|
-
| `/brain review {topic}` | Creates in
|
|
104
|
-
| `/brain
|
|
105
|
-
| `/brain done` | Updates status, suggests archive/PARA move
|
|
116
|
+
| Command | Obsidian Behavior |
|
|
117
|
+
| ------------------------- | --------------------------------------------- |
|
|
118
|
+
| `/brain plan {topic}` | Creates in `plans/` with frontmatter |
|
|
119
|
+
| `/brain research {topic}` | Creates in `research/` with frontmatter |
|
|
120
|
+
| `/brain review {topic}` | Creates in `reviews/` with frontmatter |
|
|
121
|
+
| `/brain idea {text}` | Quick capture to `ideas/` |
|
|
122
|
+
| `/brain done` | Updates status, suggests archive/PARA move |
|
|
@@ -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
|
-
##
|
|
105
|
+
## Idea Template
|
|
106
106
|
|
|
107
107
|
```markdown
|
|
108
108
|
---
|
|
109
|
-
type:
|
|
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
|
|
122
|
-
|
|
123
|
-
| `{Topic}`
|
|
124
|
-
| `{date}`
|
|
125
|
-
| `{brief description}` | Context from conversation
|
|
126
|
-
| `{project}`
|
|
127
|
-
| `{content}`
|
|
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
|
|
132
|
-
|
|
133
|
-
| `type`
|
|
134
|
-
| `status`
|
|
135
|
-
| `created` | date
|
|
136
|
-
| `updated` | date
|
|
137
|
-
| `project` | wikilink | Link to related project: `"[[project-name]]"`
|
|
138
|
-
| `tags`
|
|
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. **
|
|
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: `{
|
|
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
|
|
96
|
+
## Quick Ideas
|
|
92
97
|
|
|
93
|
-
**Overrides:** brain's
|
|
98
|
+
**Overrides:** brain's Ideas workflow
|
|
94
99
|
|
|
95
100
|
**Steps:**
|
|
96
101
|
|
|
97
|
-
1. **Create in
|
|
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:
|
|
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|
|
|
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
|
-
|
|
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?"
|