@orderful/droid 0.26.0 → 0.27.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.
- package/.claude-plugin/marketplace.json +7 -7
- package/AGENTS.md +36 -32
- package/CHANGELOG.md +29 -0
- package/dist/bin/droid.js +102 -24
- package/dist/index.js +59 -25
- package/dist/lib/migrations.d.ts +8 -0
- package/dist/lib/migrations.d.ts.map +1 -1
- package/dist/lib/skills.d.ts.map +1 -1
- package/dist/lib/tools.d.ts.map +1 -1
- package/dist/lib/types.d.ts +10 -2
- package/dist/lib/types.d.ts.map +1 -1
- package/dist/tools/brain/.claude-plugin/plugin.json +1 -1
- package/dist/tools/brain/TOOL.yaml +7 -5
- package/dist/tools/brain/commands/brain.md +17 -49
- package/dist/tools/brain/commands/scratchpad.md +13 -50
- package/{src/tools/brain/skills/droid-brain → dist/tools/brain/skills/brain}/SKILL.md +5 -5
- package/dist/tools/brain/skills/{droid-brain-obsidian → brain-obsidian}/SKILL.md +8 -8
- package/dist/tools/coach/.claude-plugin/plugin.json +1 -1
- package/dist/tools/coach/TOOL.yaml +4 -3
- package/dist/tools/coach/commands/coach.md +14 -54
- package/{src/tools/coach/skills/droid-coach → dist/tools/coach/skills/coach}/SKILL.md +4 -3
- package/dist/tools/code-review/.claude-plugin/plugin.json +1 -1
- package/dist/tools/code-review/TOOL.yaml +4 -3
- package/dist/tools/code-review/commands/code-review.md +18 -102
- package/dist/tools/code-review/skills/code-review/SKILL.md +154 -0
- package/dist/tools/codex/.claude-plugin/plugin.json +1 -1
- package/dist/tools/codex/TOOL.yaml +4 -3
- package/dist/tools/codex/commands/codex.md +18 -65
- package/dist/tools/codex/skills/{droid-codex → codex}/SKILL.md +64 -45
- package/{src/tools/codex/skills/droid-codex → dist/tools/codex/skills/codex}/references/loading.md +94 -55
- package/dist/tools/codex/skills/codex/scripts/git-finish-write.d.ts.map +1 -0
- package/dist/tools/codex/skills/codex/scripts/git-preamble.d.ts.map +1 -0
- package/dist/tools/codex/skills/codex/scripts/git-start-write.d.ts.map +1 -0
- package/dist/tools/comments/.claude-plugin/plugin.json +1 -1
- package/dist/tools/comments/TOOL.yaml +4 -3
- package/dist/tools/comments/commands/comments.md +12 -14
- package/{src/tools/comments/skills/droid-comments → dist/tools/comments/skills/comments}/SKILL.md +3 -1
- package/dist/tools/project/.claude-plugin/plugin.json +1 -1
- package/dist/tools/project/TOOL.yaml +4 -3
- package/dist/tools/project/commands/project.md +12 -27
- package/dist/tools/project/skills/{droid-project → project}/SKILL.md +12 -11
- package/dist/tools/tech-design/.claude-plugin/plugin.json +1 -1
- package/dist/tools/tech-design/TOOL.yaml +4 -3
- package/dist/tools/tech-design/commands/tech-design.md +18 -80
- package/{src/tools/tech-design/skills/droid-tech-design → dist/tools/tech-design/skills/tech-design}/SKILL.md +1 -1
- package/package.json +1 -1
- package/src/commands/tui/components/Badge.test.tsx +10 -4
- package/src/commands/tui.tsx +4 -4
- package/src/lib/migrations.ts +95 -4
- package/src/lib/skills.test.ts +199 -74
- package/src/lib/skills.ts +55 -54
- package/src/lib/tools.ts +19 -12
- package/src/lib/types.ts +20 -5
- package/src/tools/brain/.claude-plugin/plugin.json +1 -1
- package/src/tools/brain/TOOL.yaml +7 -5
- package/src/tools/brain/commands/brain.md +17 -49
- package/src/tools/brain/commands/scratchpad.md +13 -50
- package/{dist/tools/brain/skills/droid-brain → src/tools/brain/skills/brain}/SKILL.md +5 -5
- package/src/tools/brain/skills/{droid-brain-obsidian → brain-obsidian}/SKILL.md +8 -8
- package/src/tools/coach/.claude-plugin/plugin.json +1 -1
- package/src/tools/coach/TOOL.yaml +4 -3
- package/src/tools/coach/commands/coach.md +14 -54
- package/{dist/tools/coach/skills/droid-coach → src/tools/coach/skills/coach}/SKILL.md +4 -3
- package/src/tools/code-review/.claude-plugin/plugin.json +1 -1
- package/src/tools/code-review/TOOL.yaml +4 -3
- package/src/tools/code-review/commands/code-review.md +18 -102
- package/src/tools/code-review/skills/code-review/SKILL.md +154 -0
- package/src/tools/codex/.claude-plugin/plugin.json +1 -1
- package/src/tools/codex/TOOL.yaml +4 -3
- package/src/tools/codex/commands/codex.md +18 -65
- package/src/tools/codex/skills/{droid-codex → codex}/SKILL.md +64 -45
- package/{dist/tools/codex/skills/droid-codex → src/tools/codex/skills/codex}/references/loading.md +94 -55
- package/src/tools/comments/.claude-plugin/plugin.json +1 -1
- package/src/tools/comments/TOOL.yaml +4 -3
- package/src/tools/comments/commands/comments.md +12 -14
- package/{dist/tools/comments/skills/droid-comments → src/tools/comments/skills/comments}/SKILL.md +3 -1
- package/src/tools/project/.claude-plugin/plugin.json +1 -1
- package/src/tools/project/TOOL.yaml +4 -3
- package/src/tools/project/commands/project.md +12 -27
- package/src/tools/project/skills/{droid-project → project}/SKILL.md +12 -11
- package/src/tools/tech-design/.claude-plugin/plugin.json +1 -1
- package/src/tools/tech-design/TOOL.yaml +4 -3
- package/src/tools/tech-design/commands/tech-design.md +18 -80
- package/{dist/tools/tech-design/skills/droid-tech-design → src/tools/tech-design/skills/tech-design}/SKILL.md +1 -1
- package/dist/tools/code-review/skills/droid-code-review/SKILL.md +0 -55
- package/dist/tools/codex/skills/droid-codex/scripts/git-finish-write.d.ts.map +0 -1
- package/dist/tools/codex/skills/droid-codex/scripts/git-preamble.d.ts.map +0 -1
- package/dist/tools/codex/skills/droid-codex/scripts/git-start-write.d.ts.map +0 -1
- package/src/tools/code-review/skills/droid-code-review/SKILL.md +0 -55
- /package/dist/tools/brain/skills/{droid-brain → brain}/references/metadata.md +0 -0
- /package/dist/tools/brain/skills/{droid-brain → brain}/references/naming.md +0 -0
- /package/dist/tools/brain/skills/{droid-brain → brain}/references/templates.md +0 -0
- /package/dist/tools/brain/skills/{droid-brain → brain}/references/workflows.md +0 -0
- /package/dist/tools/brain/skills/{droid-brain-obsidian → brain-obsidian}/references/templates.md +0 -0
- /package/dist/tools/brain/skills/{droid-brain-obsidian → brain-obsidian}/references/workflows.md +0 -0
- /package/dist/tools/codex/skills/{droid-codex → codex}/references/creating.md +0 -0
- /package/dist/tools/codex/skills/{droid-codex → codex}/references/decisions.md +0 -0
- /package/dist/tools/codex/skills/{droid-codex → codex}/references/topics.md +0 -0
- /package/dist/tools/codex/skills/{droid-codex → codex}/scripts/git-finish-write.d.ts +0 -0
- /package/dist/tools/codex/skills/{droid-codex → codex}/scripts/git-finish-write.ts +0 -0
- /package/dist/tools/codex/skills/{droid-codex → codex}/scripts/git-preamble.d.ts +0 -0
- /package/dist/tools/codex/skills/{droid-codex → codex}/scripts/git-preamble.ts +0 -0
- /package/dist/tools/codex/skills/{droid-codex → codex}/scripts/git-scripts.test.ts +0 -0
- /package/dist/tools/codex/skills/{droid-codex → codex}/scripts/git-start-write.d.ts +0 -0
- /package/dist/tools/codex/skills/{droid-codex → codex}/scripts/git-start-write.ts +0 -0
- /package/dist/tools/project/skills/{droid-project → project}/references/changelog.md +0 -0
- /package/dist/tools/project/skills/{droid-project → project}/references/creating.md +0 -0
- /package/dist/tools/project/skills/{droid-project → project}/references/loading.md +0 -0
- /package/dist/tools/project/skills/{droid-project → project}/references/templates.md +0 -0
- /package/dist/tools/project/skills/{droid-project → project}/references/updating.md +0 -0
- /package/dist/tools/project/skills/{droid-project → project}/references/versioning.md +0 -0
- /package/dist/tools/tech-design/skills/{droid-tech-design → tech-design}/references/draft.md +0 -0
- /package/dist/tools/tech-design/skills/{droid-tech-design → tech-design}/references/gaps.md +0 -0
- /package/dist/tools/tech-design/skills/{droid-tech-design → tech-design}/references/publish.md +0 -0
- /package/dist/tools/tech-design/skills/{droid-tech-design → tech-design}/references/research-doc-template.md +0 -0
- /package/dist/tools/tech-design/skills/{droid-tech-design → tech-design}/references/rollup-template.md +0 -0
- /package/dist/tools/tech-design/skills/{droid-tech-design → tech-design}/references/start.md +0 -0
- /package/dist/tools/tech-design/skills/{droid-tech-design → tech-design}/references/think.md +0 -0
- /package/dist/tools/tech-design/skills/{droid-tech-design → tech-design}/references/thought-doc-template.md +0 -0
- /package/src/tools/brain/skills/{droid-brain → brain}/references/metadata.md +0 -0
- /package/src/tools/brain/skills/{droid-brain → brain}/references/naming.md +0 -0
- /package/src/tools/brain/skills/{droid-brain → brain}/references/templates.md +0 -0
- /package/src/tools/brain/skills/{droid-brain → brain}/references/workflows.md +0 -0
- /package/src/tools/brain/skills/{droid-brain-obsidian → brain-obsidian}/references/templates.md +0 -0
- /package/src/tools/brain/skills/{droid-brain-obsidian → brain-obsidian}/references/workflows.md +0 -0
- /package/src/tools/codex/skills/{droid-codex → codex}/references/creating.md +0 -0
- /package/src/tools/codex/skills/{droid-codex → codex}/references/decisions.md +0 -0
- /package/src/tools/codex/skills/{droid-codex → codex}/references/topics.md +0 -0
- /package/src/tools/codex/skills/{droid-codex → codex}/scripts/git-finish-write.ts +0 -0
- /package/src/tools/codex/skills/{droid-codex → codex}/scripts/git-preamble.ts +0 -0
- /package/src/tools/codex/skills/{droid-codex → codex}/scripts/git-scripts.test.ts +0 -0
- /package/src/tools/codex/skills/{droid-codex → codex}/scripts/git-start-write.ts +0 -0
- /package/src/tools/project/skills/{droid-project → project}/references/changelog.md +0 -0
- /package/src/tools/project/skills/{droid-project → project}/references/creating.md +0 -0
- /package/src/tools/project/skills/{droid-project → project}/references/loading.md +0 -0
- /package/src/tools/project/skills/{droid-project → project}/references/templates.md +0 -0
- /package/src/tools/project/skills/{droid-project → project}/references/updating.md +0 -0
- /package/src/tools/project/skills/{droid-project → project}/references/versioning.md +0 -0
- /package/src/tools/tech-design/skills/{droid-tech-design → tech-design}/references/draft.md +0 -0
- /package/src/tools/tech-design/skills/{droid-tech-design → tech-design}/references/gaps.md +0 -0
- /package/src/tools/tech-design/skills/{droid-tech-design → tech-design}/references/publish.md +0 -0
- /package/src/tools/tech-design/skills/{droid-tech-design → tech-design}/references/research-doc-template.md +0 -0
- /package/src/tools/tech-design/skills/{droid-tech-design → tech-design}/references/rollup-template.md +0 -0
- /package/src/tools/tech-design/skills/{droid-tech-design → tech-design}/references/start.md +0 -0
- /package/src/tools/tech-design/skills/{droid-tech-design → tech-design}/references/think.md +0 -0
- /package/src/tools/tech-design/skills/{droid-tech-design → tech-design}/references/thought-doc-template.md +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name:
|
|
2
|
+
name: codex
|
|
3
3
|
description: "Shared organizational knowledge - PRDs, tech designs, patterns, and explored topics. Use when loading project context ('load transaction-templates'), searching codex ('search webhook'), capturing decisions ('codex decision'), or adding explored topics ('add topic'). User prompts like 'check the codex', 'what's in the codex about X', 'load the PRD for Y'."
|
|
4
4
|
globs:
|
|
5
5
|
- "**/PRD.md"
|
|
@@ -7,7 +7,18 @@ globs:
|
|
|
7
7
|
- "**/CONTEXT.md"
|
|
8
8
|
- "**/DECISIONS.md"
|
|
9
9
|
alwaysApply: false
|
|
10
|
-
allowed-tools:
|
|
10
|
+
allowed-tools:
|
|
11
|
+
[
|
|
12
|
+
Read,
|
|
13
|
+
Write,
|
|
14
|
+
Edit,
|
|
15
|
+
Glob,
|
|
16
|
+
Grep,
|
|
17
|
+
Bash(gh:*),
|
|
18
|
+
Bash(git:*),
|
|
19
|
+
Bash(ls:*),
|
|
20
|
+
Bash(mkdir:*),
|
|
21
|
+
]
|
|
11
22
|
---
|
|
12
23
|
|
|
13
24
|
# Codex Skill
|
|
@@ -32,6 +43,7 @@ gh --version
|
|
|
32
43
|
```
|
|
33
44
|
|
|
34
45
|
If prerequisites fail, guide user to fix:
|
|
46
|
+
|
|
35
47
|
- Repo missing: `git clone git@github.com:orderful/orderful-codex.git {path}`
|
|
36
48
|
- gh missing: `brew install gh && gh auth login`
|
|
37
49
|
|
|
@@ -43,16 +55,16 @@ If prerequisites fail, guide user to fix:
|
|
|
43
55
|
|
|
44
56
|
The codex skill includes three git scripts. **Always use these instead of raw git commands.**
|
|
45
57
|
|
|
46
|
-
| Script
|
|
47
|
-
|
|
48
|
-
| `git-preamble`
|
|
49
|
-
| `git-start-write`
|
|
50
|
-
| `git-finish-write` | Commit + PR + return to main
|
|
58
|
+
| Script | Purpose | When to use |
|
|
59
|
+
| ------------------ | ------------------------------- | ----------------------- |
|
|
60
|
+
| `git-preamble` | Ensure clean main + pull latest | Before ANY operation |
|
|
61
|
+
| `git-start-write` | Preamble + create branch | Before write operations |
|
|
62
|
+
| `git-finish-write` | Commit + PR + return to main | After write operations |
|
|
51
63
|
|
|
52
64
|
### Read Operations (search, load, list)
|
|
53
65
|
|
|
54
66
|
```bash
|
|
55
|
-
droid config codex | droid exec
|
|
67
|
+
droid config codex | droid exec codex git-preamble --config -
|
|
56
68
|
# Then proceed with the read
|
|
57
69
|
```
|
|
58
70
|
|
|
@@ -60,12 +72,12 @@ droid config codex | droid exec droid-codex git-preamble --config -
|
|
|
60
72
|
|
|
61
73
|
```bash
|
|
62
74
|
# 1. Start write (runs preamble + creates branch)
|
|
63
|
-
droid config codex | droid exec
|
|
75
|
+
droid config codex | droid exec codex git-start-write --config - --branch codex/{action}-{name}
|
|
64
76
|
|
|
65
77
|
# 2. Make your changes (write files)
|
|
66
78
|
|
|
67
79
|
# 3. Finish write (commit + PR + return to main)
|
|
68
|
-
droid config codex | droid exec
|
|
80
|
+
droid config codex | droid exec codex git-finish-write --config - \
|
|
69
81
|
--message "{commit message}" \
|
|
70
82
|
--pr-title "{PR title}" \
|
|
71
83
|
--pr-body "{PR description}"
|
|
@@ -76,11 +88,13 @@ The scripts return JSON with success/failure status. Check the result before pro
|
|
|
76
88
|
### Error Handling
|
|
77
89
|
|
|
78
90
|
The scripts handle errors internally:
|
|
91
|
+
|
|
79
92
|
- Silent recovery for transient issues
|
|
80
93
|
- Clear error messages in JSON output
|
|
81
94
|
- Automatic return to main even on partial failure
|
|
82
95
|
|
|
83
96
|
If a script fails, check the JSON `error` field and report a user-friendly message:
|
|
97
|
+
|
|
84
98
|
- "I hit a sync issue with the codex. Let me try again..."
|
|
85
99
|
- Only escalate as last resort: "The codex repo needs manual attention."
|
|
86
100
|
|
|
@@ -134,44 +148,44 @@ fi
|
|
|
134
148
|
|
|
135
149
|
**ALWAYS read `~/.droid/skills/codex/overrides.yaml` first.**
|
|
136
150
|
|
|
137
|
-
| Setting
|
|
138
|
-
|
|
139
|
-
| `codex_repo`
|
|
140
|
-
| `freshness_days` | `30`
|
|
151
|
+
| Setting | Default | Description |
|
|
152
|
+
| ---------------- | --------------------------------- | ----------------------------- |
|
|
153
|
+
| `codex_repo` | `~/src/github.com/orderful-codex` | Path to local codex repo |
|
|
154
|
+
| `freshness_days` | `30` | Days before staleness warning |
|
|
141
155
|
|
|
142
156
|
## Categories
|
|
143
157
|
|
|
144
158
|
The codex has five categories:
|
|
145
159
|
|
|
146
|
-
| Category
|
|
147
|
-
|
|
148
|
-
| `projects`
|
|
149
|
-
| `domains`
|
|
150
|
-
| `proposals` | `{codex_repo}/proposals/` | Ideas and future direction - not yet committed
|
|
151
|
-
| `patterns`
|
|
152
|
-
| `topics`
|
|
160
|
+
| Category | Path | Purpose |
|
|
161
|
+
| ----------- | ------------------------- | ----------------------------------------------------- |
|
|
162
|
+
| `projects` | `{codex_repo}/projects/` | Feature/project context (PRD, tech design, decisions) |
|
|
163
|
+
| `domains` | `{codex_repo}/domains/` | Business domain knowledge - the "what" and "why" |
|
|
164
|
+
| `proposals` | `{codex_repo}/proposals/` | Ideas and future direction - not yet committed |
|
|
165
|
+
| `patterns` | `{codex_repo}/patterns/` | Cross-cutting technical patterns |
|
|
166
|
+
| `topics` | `{codex_repo}/topics/` | Explored codebase areas with freshness tracking |
|
|
153
167
|
|
|
154
168
|
## Commands
|
|
155
169
|
|
|
156
|
-
| Command
|
|
157
|
-
|
|
158
|
-
| `/codex`
|
|
159
|
-
| `/codex projects`
|
|
160
|
-
| `/codex domains`
|
|
161
|
-
| `/codex proposals`
|
|
162
|
-
| `/codex patterns`
|
|
163
|
-
| `/codex topics`
|
|
164
|
-
| `/codex {name}`
|
|
165
|
-
| `/codex search {query}`
|
|
166
|
-
| `/codex new {name}`
|
|
167
|
-
| `/codex new project {name}`
|
|
168
|
-
| `/codex new domain {name}`
|
|
169
|
-
| `/codex new proposal {name}`
|
|
170
|
-
| `/codex new pattern {name}`
|
|
171
|
-
| `/codex new topic {name}`
|
|
172
|
-
| `/codex decision {text}`
|
|
173
|
-
| `/codex snapshot {type} {file} {name}` | Import PDF/markdown to codex (uses agent)
|
|
174
|
-
| `/codex artifact {file} {project}`
|
|
170
|
+
| Command | Action |
|
|
171
|
+
| -------------------------------------- | ----------------------------------------------- |
|
|
172
|
+
| `/codex` | Show categories overview |
|
|
173
|
+
| `/codex projects` | List all projects |
|
|
174
|
+
| `/codex domains` | List all domains |
|
|
175
|
+
| `/codex proposals` | List all proposals |
|
|
176
|
+
| `/codex patterns` | List all patterns |
|
|
177
|
+
| `/codex topics` | List all topics |
|
|
178
|
+
| `/codex {name}` | Load entry (searches all categories) |
|
|
179
|
+
| `/codex search {query}` | Search across everything |
|
|
180
|
+
| `/codex new {name}` | Scaffold new project (shorthand) |
|
|
181
|
+
| `/codex new project {name}` | Scaffold new project from templates |
|
|
182
|
+
| `/codex new domain {name}` | Scaffold new domain entry |
|
|
183
|
+
| `/codex new proposal {name}` | Scaffold new proposal entry |
|
|
184
|
+
| `/codex new pattern {name}` | Scaffold new pattern entry |
|
|
185
|
+
| `/codex new topic {name}` | Scaffold new topic entry |
|
|
186
|
+
| `/codex decision {text}` | Append to active project's DECISIONS.md |
|
|
187
|
+
| `/codex snapshot {type} {file} {name}` | Import PDF/markdown to codex (uses agent) |
|
|
188
|
+
| `/codex artifact {file} {project}` | Add supporting artifact to project (uses agent) |
|
|
175
189
|
|
|
176
190
|
## Loading an Entry
|
|
177
191
|
|
|
@@ -181,7 +195,7 @@ The codex has five categories:
|
|
|
181
195
|
|
|
182
196
|
1. **Run preamble first:**
|
|
183
197
|
```bash
|
|
184
|
-
droid config codex | droid exec
|
|
198
|
+
droid config codex | droid exec codex git-preamble --config -
|
|
185
199
|
```
|
|
186
200
|
2. **Read `{codex_repo}/index.yaml`** - this contains all entry names and aliases for fast lookup
|
|
187
201
|
3. Match `{name}` against index keys and aliases (case-insensitive, partial match)
|
|
@@ -199,10 +213,11 @@ The codex has five categories:
|
|
|
199
213
|
**Progressive disclosure:** CONTEXT.md is the first layer - a synthesised summary (~2KB) that handles most queries. Only load full PRD/TECH-DESIGN/DECISIONS files when deeper detail is explicitly needed. This avoids loading 30KB+ of docs for simple context questions.
|
|
200
214
|
|
|
201
215
|
**If no CONTEXT.md exists for a project:**
|
|
202
|
-
|
|
203
|
-
-
|
|
204
|
-
-
|
|
205
|
-
-
|
|
216
|
+
|
|
217
|
+
- Synthesise one from PRD.md + TECH-DESIGN.md + DECISIONS.md
|
|
218
|
+
- Create branch, commit CONTEXT.md, open PR
|
|
219
|
+
- Output the new CONTEXT.md with "need more detail?" options
|
|
220
|
+
- **OPTIONAL:** You may use a background agent (Task tool with `run_in_background: true`) to avoid blocking the user, but synchronous generation is fine too
|
|
206
221
|
|
|
207
222
|
Full procedure: `references/loading.md`
|
|
208
223
|
|
|
@@ -225,6 +240,7 @@ codebase_paths:
|
|
|
225
240
|
```
|
|
226
241
|
|
|
227
242
|
**Status values (unified across all categories):**
|
|
243
|
+
|
|
228
244
|
- `draft` - Initial capture, not ready for consumption
|
|
229
245
|
- `active` - Current, being used for implementation
|
|
230
246
|
- `complete` - Project shipped, kept for reference
|
|
@@ -316,6 +332,7 @@ The main conversation handles: git branch, commit, PR creation, user interaction
|
|
|
316
332
|
**Trigger:** `/codex artifact {file} {project}` or user wants to add supporting material to a project
|
|
317
333
|
|
|
318
334
|
Artifacts are supplementary documents that support a project but aren't core document types (PRD, TECH-DESIGN, DECISIONS). Examples:
|
|
335
|
+
|
|
319
336
|
- Customer interviews / transcripts
|
|
320
337
|
- Research notes
|
|
321
338
|
- Meeting summaries
|
|
@@ -409,6 +426,7 @@ The codex holds **shared** organizational knowledge. The `/project` skill holds
|
|
|
409
426
|
```
|
|
410
427
|
|
|
411
428
|
When user runs `/project create --from codex:{name}`:
|
|
429
|
+
|
|
412
430
|
1. Load the codex entry
|
|
413
431
|
2. Extract key context for personal PROJECT.md
|
|
414
432
|
3. Create project in user's projects_dir
|
|
@@ -418,6 +436,7 @@ When user runs `/project create --from codex:{name}`:
|
|
|
418
436
|
**See "Git Hygiene (CRITICAL)" section above.** All codex changes go through PRs (main branch is protected).
|
|
419
437
|
|
|
420
438
|
**Key points:**
|
|
439
|
+
|
|
421
440
|
- Always run the preamble before any operation (ensures clean main + latest)
|
|
422
441
|
- Write operations: branch → commit → PR → **return to main**
|
|
423
442
|
- Safe changes (new files, decision appends) auto-merge via GitHub Action
|
package/{dist/tools/codex/skills/droid-codex → src/tools/codex/skills/codex}/references/loading.md
RENAMED
|
@@ -36,6 +36,7 @@ Detailed procedure for loading entries from the codex.
|
|
|
36
36
|
- Multiple matches → show list with category, let user pick
|
|
37
37
|
|
|
38
38
|
**Fallback:** If `index.yaml` doesn't exist, fall back to directory scanning:
|
|
39
|
+
|
|
39
40
|
```bash
|
|
40
41
|
ls {codex_repo}/projects/ | grep -i {name}
|
|
41
42
|
ls {codex_repo}/domains/ | grep -i {name}
|
|
@@ -59,11 +60,11 @@ projects/transaction-templates/
|
|
|
59
60
|
|
|
60
61
|
CONTEXT.md is the **first layer** - a synthesised summary that's enough for most queries. Only load full documents when deeper detail is needed.
|
|
61
62
|
|
|
62
|
-
| Layer | What
|
|
63
|
-
|
|
64
|
-
| 1
|
|
65
|
-
| 2
|
|
66
|
-
| 3
|
|
63
|
+
| Layer | What | When to use |
|
|
64
|
+
| ----- | ----------------- | ------------------------------------------------------------ |
|
|
65
|
+
| 1 | CONTEXT.md (~2KB) | General questions, getting oriented, "what is this project?" |
|
|
66
|
+
| 2 | Specific file | Deep dives - "show me the full technical architecture" |
|
|
67
|
+
| 3 | All files | Comprehensive review, major updates, onboarding |
|
|
67
68
|
|
|
68
69
|
### Procedure
|
|
69
70
|
|
|
@@ -71,6 +72,7 @@ CONTEXT.md is the **first layer** - a synthesised summary that's enough for most
|
|
|
71
72
|
2. **Check for CONTEXT.md:**
|
|
72
73
|
|
|
73
74
|
**If CONTEXT.md exists:**
|
|
75
|
+
|
|
74
76
|
```
|
|
75
77
|
📂 Loading transaction-templates
|
|
76
78
|
|
|
@@ -85,6 +87,7 @@ CONTEXT.md is the **first layer** - a synthesised summary that's enough for most
|
|
|
85
87
|
- TECH-DESIGN.md - Architecture and implementation
|
|
86
88
|
- DECISIONS.md - Decision log
|
|
87
89
|
```
|
|
90
|
+
|
|
88
91
|
Load CONTEXT.md automatically. Only load additional files if user asks.
|
|
89
92
|
|
|
90
93
|
**If no CONTEXT.md:**
|
|
@@ -125,83 +128,116 @@ topics/organization-hierarchy.md
|
|
|
125
128
|
|
|
126
129
|
## Auto-Generating CONTEXT.md
|
|
127
130
|
|
|
128
|
-
If loading a project and no CONTEXT.md exists, generate it
|
|
131
|
+
If loading a project and no CONTEXT.md exists, generate it immediately.
|
|
129
132
|
|
|
130
133
|
**User sees:**
|
|
134
|
+
|
|
131
135
|
```
|
|
132
136
|
📂 Loading transaction-templates
|
|
133
137
|
|
|
134
|
-
No CONTEXT.md found -
|
|
135
|
-
Meanwhile, which file do you want to load?
|
|
138
|
+
No CONTEXT.md found - generating summary from available artifacts...
|
|
136
139
|
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
140
|
+
Reading PRD.md...
|
|
141
|
+
→ Extracting problem statement, goals, success metrics
|
|
142
|
+
Reading TECH-DESIGN.md...
|
|
143
|
+
→ Extracting architecture overview, key decisions
|
|
144
|
+
Reading DECISIONS.md...
|
|
145
|
+
→ Extracting decision log summary
|
|
146
|
+
|
|
147
|
+
Synthesising unified context...
|
|
141
148
|
```
|
|
142
149
|
|
|
143
150
|
**Procedure:**
|
|
144
151
|
|
|
152
|
+
Generate CONTEXT.md either synchronously or asynchronously:
|
|
153
|
+
|
|
154
|
+
### Option A: Synchronous (works everywhere)
|
|
155
|
+
|
|
156
|
+
1. **Inform user:** "No CONTEXT.md found - generating summary from available artifacts"
|
|
157
|
+
2. **Read all available files:** PRD.md, TECH-DESIGN.md, DECISIONS.md
|
|
158
|
+
3. **Generate unified summary** (see template below)
|
|
159
|
+
4. **Create PR** (see git workflow below)
|
|
160
|
+
5. **Output the new CONTEXT.md** with "need more detail?" options
|
|
161
|
+
|
|
162
|
+
### Option B: Asynchronous (Claude Code only, optional)
|
|
163
|
+
|
|
145
164
|
1. **Spawn background agent** to synthesize CONTEXT.md (non-blocking):
|
|
146
165
|
```
|
|
147
|
-
Use Task tool with subagent_type: "general
|
|
166
|
+
Use Task tool with subagent_type: "general" and run_in_background: true
|
|
148
167
|
Prompt: "Generate CONTEXT.md for {project} from PRD.md, TECH-DESIGN.md, DECISIONS.md. Create branch, commit, open PR."
|
|
149
168
|
```
|
|
150
169
|
2. **Immediately ask user** which file to load (don't wait for synthesis)
|
|
151
170
|
3. **Load selected file** and continue working
|
|
152
171
|
4. **When background agent completes**, inform user: "CONTEXT.md ready - PR #{number}"
|
|
153
172
|
|
|
154
|
-
|
|
173
|
+
**Choose whichever approach works best.** Synchronous is simpler and works everywhere. Asynchronous avoids blocking but requires background agent support.
|
|
155
174
|
|
|
156
|
-
|
|
175
|
+
### CONTEXT.md Template
|
|
157
176
|
|
|
158
|
-
|
|
159
|
-
2. **Generate unified summary:**
|
|
160
|
-
```markdown
|
|
161
|
-
---
|
|
162
|
-
title: {Project Name}
|
|
163
|
-
type: context
|
|
164
|
-
created: {today}
|
|
165
|
-
updated: {today}
|
|
166
|
-
confidence: high
|
|
167
|
-
source: implementation
|
|
168
|
-
---
|
|
177
|
+
Generate a unified summary from the project files:
|
|
169
178
|
|
|
170
|
-
|
|
179
|
+
```markdown
|
|
180
|
+
---
|
|
181
|
+
title: { Project Name }
|
|
182
|
+
type: context
|
|
183
|
+
created: { today }
|
|
184
|
+
updated: { today }
|
|
185
|
+
confidence: high
|
|
186
|
+
source: implementation
|
|
187
|
+
---
|
|
171
188
|
|
|
172
|
-
|
|
173
|
-
{Synthesised from PRD problem statement + goals}
|
|
189
|
+
# {Project Name} - Context
|
|
174
190
|
|
|
175
|
-
|
|
176
|
-
{Synthesised from TECH-DESIGN architecture + key decisions}
|
|
191
|
+
## Overview
|
|
177
192
|
|
|
178
|
-
|
|
179
|
-
{Summarised from DECISIONS.md}
|
|
193
|
+
{Synthesised from PRD problem statement + goals}
|
|
180
194
|
|
|
181
|
-
|
|
182
|
-
{Inferred from most recent updates}
|
|
195
|
+
## Technical Approach
|
|
183
196
|
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
cd {codex_repo}
|
|
190
|
-
git checkout -b auto/context-{project-name}
|
|
191
|
-
# Write CONTEXT.md
|
|
192
|
-
git add projects/{project}/CONTEXT.md
|
|
193
|
-
git commit -F - <<EOF
|
|
194
|
-
feat: auto-generate CONTEXT.md for {project}
|
|
195
|
-
EOF
|
|
196
|
-
git push -u origin auto/context-{project-name}
|
|
197
|
-
gh pr create --title "Auto-generated CONTEXT.md for {project}" --body "Synthesised from PRD, TECH-DESIGN, and DECISIONS."
|
|
198
|
-
```
|
|
199
|
-
5. **Return result** (background agent outputs to task output file):
|
|
200
|
-
```
|
|
201
|
-
✅ CONTEXT.md synthesised and PR #{number} created for {project}
|
|
202
|
-
```
|
|
197
|
+
{Synthesised from TECH-DESIGN architecture + key decisions}
|
|
198
|
+
|
|
199
|
+
## Key Decisions
|
|
200
|
+
|
|
201
|
+
{Summarised from DECISIONS.md}
|
|
203
202
|
|
|
204
|
-
|
|
203
|
+
## Current Status
|
|
204
|
+
|
|
205
|
+
{Inferred from most recent updates}
|
|
206
|
+
|
|
207
|
+
---
|
|
208
|
+
|
|
209
|
+
_Auto-generated from PRD.md, TECH-DESIGN.md, and DECISIONS.md_
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
### Git Workflow for CONTEXT.md
|
|
213
|
+
|
|
214
|
+
After generating the CONTEXT.md content:
|
|
215
|
+
|
|
216
|
+
```bash
|
|
217
|
+
cd {codex_repo}
|
|
218
|
+
git checkout -b auto/context-{project-name}
|
|
219
|
+
# Write CONTEXT.md to projects/{project}/CONTEXT.md
|
|
220
|
+
git add projects/{project}/CONTEXT.md
|
|
221
|
+
git commit -F - <<EOF
|
|
222
|
+
feat: auto-generate CONTEXT.md for {project}
|
|
223
|
+
EOF
|
|
224
|
+
git push -u origin auto/context-{project-name}
|
|
225
|
+
gh pr create --title "Auto-generated CONTEXT.md for {project}" --body "Synthesised from PRD, TECH-DESIGN, and DECISIONS."
|
|
226
|
+
```
|
|
227
|
+
|
|
228
|
+
Then inform the user:
|
|
229
|
+
|
|
230
|
+
```
|
|
231
|
+
✅ CONTEXT.md created and PR #{number} opened
|
|
232
|
+
|
|
233
|
+
[Show CONTEXT.md content]
|
|
234
|
+
|
|
235
|
+
---
|
|
236
|
+
Need more detail? Available files:
|
|
237
|
+
- PRD.md - Full requirements and goals
|
|
238
|
+
- TECH-DESIGN.md - Architecture and implementation
|
|
239
|
+
- DECISIONS.md - Decision log
|
|
240
|
+
```
|
|
205
241
|
|
|
206
242
|
## Freshness Checking
|
|
207
243
|
|
|
@@ -219,16 +255,19 @@ After loading any file:
|
|
|
219
255
|
Want me to verify it's still accurate?
|
|
220
256
|
```
|
|
221
257
|
4. **Check codebase changes** (if `codebase_paths` present):
|
|
258
|
+
|
|
222
259
|
```bash
|
|
223
260
|
cd {workspace}
|
|
224
261
|
git log --oneline --since="{updated}" -- {codebase_paths}
|
|
225
262
|
```
|
|
263
|
+
|
|
226
264
|
- If commits found:
|
|
227
265
|
```
|
|
228
266
|
⚠️ Files in {paths} have changed since this doc was updated.
|
|
229
267
|
Recent commits: {list}
|
|
230
268
|
Want me to review for needed updates?
|
|
231
269
|
```
|
|
270
|
+
|
|
232
271
|
5. **Note confidence** (if `confidence: low`):
|
|
233
272
|
```
|
|
234
273
|
ℹ️ This was a quick exploration and may be incomplete.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "droid-comments",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "Enable inline conversations using @droid/@user markers. Tag @droid to ask the AI, AI responds with @{your-name}. Use /comments check to address markers, /comments cleanup to remove resolved threads. Ideal for code review notes and async collaboration.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Orderful",
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
name: comments
|
|
2
2
|
description: "Enable inline conversations using @droid/@user markers. Tag @droid to ask the AI, AI responds with @{your-name}. Use /comments check to address markers, /comments cleanup to remove resolved threads. Ideal for code review notes and async collaboration."
|
|
3
|
-
version: 0.
|
|
3
|
+
version: 0.3.0
|
|
4
4
|
status: beta
|
|
5
5
|
|
|
6
6
|
includes:
|
|
7
7
|
skills:
|
|
8
|
-
- name:
|
|
8
|
+
- name: comments
|
|
9
9
|
required: true
|
|
10
10
|
commands:
|
|
11
|
-
- comments
|
|
11
|
+
- name: comments
|
|
12
|
+
is_alias: false
|
|
12
13
|
agents: []
|
|
13
14
|
|
|
14
15
|
dependencies: []
|
|
@@ -1,29 +1,27 @@
|
|
|
1
1
|
---
|
|
2
|
-
|
|
2
|
+
name: comments
|
|
3
|
+
description: "Check and respond to inline @droid comments in code and docs"
|
|
3
4
|
argument-hint: "[check [{path}] | cleanup]"
|
|
4
|
-
allowed-tools: [Read, Edit, Grep, Glob, Bash(git diff:*), Bash(git status:*)]
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
-
# /comments
|
|
7
|
+
# /comments
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
**User invoked:** `/comments $ARGUMENTS`
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
**Your task:** Invoke the **comments skill** with these arguments.
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
## Examples
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
- `/comments` → Check all files in current directory for @droid markers
|
|
16
|
+
- `/comments check src/lib` → Check specific directory for @droid markers
|
|
17
|
+
- `/comments cleanup` → Remove resolved comment threads
|
|
18
|
+
|
|
19
|
+
## Quick Reference
|
|
16
20
|
|
|
17
21
|
```
|
|
18
22
|
/comments # Check all files in cwd
|
|
19
|
-
/comments check # Same as above
|
|
20
23
|
/comments check {path} # Check specific file or directory
|
|
21
24
|
/comments cleanup # Remove resolved comment threads
|
|
22
25
|
```
|
|
23
26
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
Refer to the comments skill for:
|
|
27
|
-
- **Check**: How to find markers, determine intent (action vs question), respond appropriately
|
|
28
|
-
- **Cleanup**: How to identify resolved threads and summarize decisions
|
|
29
|
-
- **Configuration**: `user_mention`, `ai_mentions`, `preserve_comments` settings
|
|
27
|
+
See the **comments skill** for complete documentation and procedures.
|
package/{dist/tools/comments/skills/droid-comments → src/tools/comments/skills/comments}/SKILL.md
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name:
|
|
2
|
+
name: comments
|
|
3
3
|
description: "Inline conversations using @droid/@user markers in any file. Use when leaving async questions in code or having discussion that should stay near the code. User prompts like 'check for comments', 'address the @droid markers', 'clean up resolved comments'."
|
|
4
4
|
globs:
|
|
5
5
|
- "**/*"
|
|
@@ -83,6 +83,7 @@ When you find a `@droid` marker:
|
|
|
83
83
|
**Use a two-pass approach for coherent responses:**
|
|
84
84
|
|
|
85
85
|
#### Pass 1: Read & Analyse
|
|
86
|
+
|
|
86
87
|
1. **Read config first:** Check `~/.droid/skills/comments/overrides.yaml` for `preserve_comments` setting (default: `true`)
|
|
87
88
|
2. Search for ALL `> @droid` comments (and any configured `ai_mentions`) in the specified scope
|
|
88
89
|
3. If there's a `git diff`, check those files first for relevant context
|
|
@@ -91,6 +92,7 @@ When you find a `@droid` marker:
|
|
|
91
92
|
6. Note any contradictions or tensions to address
|
|
92
93
|
|
|
93
94
|
#### Pass 2: Respond & Write
|
|
95
|
+
|
|
94
96
|
1. For each comment, determine intent:
|
|
95
97
|
- **Action request** ("do X", "add Y", "fix Z") → Execute the action
|
|
96
98
|
- **Question** ("what do you think", "should we") → Respond with `> @{user_mention}`
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "droid-project",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "Manage project context files for persistent AI memory across sessions. Load, update, or create project context before working on multi-session features.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Orderful",
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
name: project
|
|
2
2
|
description: "Manage project context files for persistent AI memory across sessions. Load, update, or create project context before working on multi-session features."
|
|
3
|
-
version: 0.
|
|
3
|
+
version: 0.3.0
|
|
4
4
|
status: beta
|
|
5
5
|
|
|
6
6
|
includes:
|
|
7
7
|
skills:
|
|
8
|
-
- name:
|
|
8
|
+
- name: project
|
|
9
9
|
required: true
|
|
10
10
|
commands:
|
|
11
|
-
- project
|
|
11
|
+
- name: project
|
|
12
|
+
is_alias: false
|
|
12
13
|
agents: []
|
|
13
14
|
|
|
14
15
|
dependencies: []
|
|
@@ -1,45 +1,30 @@
|
|
|
1
1
|
---
|
|
2
|
-
|
|
2
|
+
name: project
|
|
3
|
+
description: "Manage project context files for persistent AI memory across sessions"
|
|
3
4
|
argument-hint: "[{keywords} | update | create {name}]"
|
|
4
|
-
allowed-tools: [Read, Write, Edit, Glob, Bash(mkdir:*), Bash(ls:*)]
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# /project
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
**User invoked:** `/project $ARGUMENTS`
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
**Your task:** Invoke the **project skill** with these arguments.
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
## Example
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
If user typed `/project droid`, you should interpret this as: "Search for and load a project matching 'droid'"
|
|
16
16
|
|
|
17
|
-
|
|
17
|
+
If user typed `/project create new-feature`, interpret as: "Create a new project named 'new-feature'"
|
|
18
18
|
|
|
19
|
-
##
|
|
19
|
+
## Quick Reference
|
|
20
20
|
|
|
21
21
|
```
|
|
22
22
|
/project # List and select a project
|
|
23
|
-
/project {keywords} # SEARCH
|
|
23
|
+
/project {keywords} # SEARCH for existing project (default action)
|
|
24
24
|
/project update # Update from conversation context
|
|
25
|
-
/project
|
|
26
|
-
/project create # Create new project interactively
|
|
27
|
-
/project create {name} # Create with name (requires "create" keyword)
|
|
25
|
+
/project create {name} # CREATE new project
|
|
28
26
|
```
|
|
29
27
|
|
|
30
|
-
|
|
28
|
+
**Default behavior:** When given keywords, SEARCH first (don't create unless "create" keyword is present).
|
|
31
29
|
|
|
32
|
-
**
|
|
33
|
-
|
|
34
|
-
- If `projects_dir` is set → use **ONLY** that path (do NOT also search defaults)
|
|
35
|
-
- If not configured → use the default for current AI tool
|
|
36
|
-
- `preset` - Template format: `markdown` or `obsidian`
|
|
37
|
-
|
|
38
|
-
## Behavior
|
|
39
|
-
|
|
40
|
-
Refer to the project skill for:
|
|
41
|
-
- **Loading**: How to fuzzy-match, handle multiple matches, summarize after load
|
|
42
|
-
- **Updating**: What to extract from conversation, versioning rules, changelog format
|
|
43
|
-
- **Creating**: Template structure by preset, required files
|
|
44
|
-
|
|
45
|
-
The skill's `references/` folder contains detailed specs for versioning, changelog formatting, and templates.
|
|
30
|
+
See the **project skill** for complete documentation and procedures.
|