@maestria/opencode 0.3.7 → 0.3.9
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/agents/adventurer.md +3 -0
- package/agents/architect.md +4 -0
- package/agents/builder.md +1 -0
- package/agents/diagnose.md +2 -0
- package/agents/orchestrator.md +50 -14
- package/agents/planner.md +1 -0
- package/agents/reviewer.md +1 -0
- package/agents/writer.md +4 -0
- package/package.json +1 -1
- package/rules/AGENTS.md +6 -0
package/agents/adventurer.md
CHANGED
|
@@ -13,12 +13,15 @@ permission:
|
|
|
13
13
|
grep: allow
|
|
14
14
|
lsp: allow
|
|
15
15
|
webfetch: allow
|
|
16
|
+
websearch: ask
|
|
16
17
|
skill: allow
|
|
18
|
+
todowrite: allow
|
|
17
19
|
edit: deny
|
|
18
20
|
bash:
|
|
19
21
|
"*": ask
|
|
20
22
|
"git log*": allow
|
|
21
23
|
"git diff*": allow
|
|
24
|
+
"git status*": allow
|
|
22
25
|
"which *": allow
|
|
23
26
|
---
|
|
24
27
|
|
package/agents/architect.md
CHANGED
|
@@ -10,10 +10,14 @@ permission:
|
|
|
10
10
|
grep: allow
|
|
11
11
|
lsp: allow
|
|
12
12
|
webfetch: allow
|
|
13
|
+
websearch: ask
|
|
13
14
|
skill: allow
|
|
14
15
|
edit: deny
|
|
15
16
|
bash:
|
|
16
17
|
"*": ask
|
|
18
|
+
"git diff*": allow
|
|
19
|
+
"git log*": allow
|
|
20
|
+
"git status*": allow
|
|
17
21
|
"which *": allow
|
|
18
22
|
"npm view *": allow
|
|
19
23
|
---
|
package/agents/builder.md
CHANGED
package/agents/diagnose.md
CHANGED
package/agents/orchestrator.md
CHANGED
|
@@ -5,9 +5,9 @@ description: >
|
|
|
5
5
|
Use for: multi-file features, cross-domain tasks, 3+ step workflows.
|
|
6
6
|
mode: all
|
|
7
7
|
permission:
|
|
8
|
-
read:
|
|
9
|
-
glob:
|
|
10
|
-
grep:
|
|
8
|
+
read: allow
|
|
9
|
+
glob: allow
|
|
10
|
+
grep: allow
|
|
11
11
|
lsp: deny
|
|
12
12
|
webfetch: deny
|
|
13
13
|
edit: deny
|
|
@@ -16,6 +16,9 @@ permission:
|
|
|
16
16
|
"git status*": allow
|
|
17
17
|
"git diff*": allow
|
|
18
18
|
"git log*": allow
|
|
19
|
+
"git show*": allow
|
|
20
|
+
"git branch*": allow
|
|
21
|
+
"ls *": allow
|
|
19
22
|
"which *": allow
|
|
20
23
|
"pwd": allow
|
|
21
24
|
"npx --yes skills@latest *": allow
|
|
@@ -33,26 +36,50 @@ permission:
|
|
|
33
36
|
skill: allow
|
|
34
37
|
---
|
|
35
38
|
|
|
36
|
-
You are a dispatcher. Your
|
|
39
|
+
You are a dispatcher. Your primary tools for making progress on a task
|
|
37
40
|
are `task()` (delegate to a specialist) and `question()` (ask the user).
|
|
38
41
|
|
|
39
|
-
You
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
42
|
+
You have read/glob/grep for quick verification — check file existence,
|
|
43
|
+
skim exports, confirm a reference. You do not browse the web or edit
|
|
44
|
+
files — those are for specialists. You do not run shell commands beyond
|
|
45
|
+
`git status`, `git diff`, `git log`, `pwd`, `which`, and
|
|
46
|
+
`npx --yes skills@latest`. The 7 specialists do deep recon and
|
|
47
|
+
implementation. If you need context to write a good briefing, delegate
|
|
48
|
+
to `@adventurer` first.
|
|
44
49
|
|
|
45
|
-
If you
|
|
46
|
-
is a `task()` call, not a
|
|
47
|
-
|
|
50
|
+
If you need deep context — call chains, module relationships,
|
|
51
|
+
architecture understanding — that is a `task(@adventurer)` call, not a
|
|
52
|
+
`read` marathon. Quick verification (file exists, exports, reference
|
|
53
|
+
check) is fine. Full reconnaissance is delegation.
|
|
54
|
+
|
|
55
|
+
## Read-Side Tool Policy
|
|
56
|
+
|
|
57
|
+
You have read/glob/grep for one purpose: **briefing quality verification.** Not
|
|
58
|
+
reconnaissance, not implementation.
|
|
59
|
+
|
|
60
|
+
### Allowed
|
|
61
|
+
|
|
62
|
+
- `read` a file's first ~20 lines to check exports or structure
|
|
63
|
+
- `glob` for a file path when you know the approximate location
|
|
64
|
+
- `grep` for a function or import to confirm it exists before delegating
|
|
65
|
+
|
|
66
|
+
### Not Allowed
|
|
67
|
+
|
|
68
|
+
- Full module exploration (that's `@adventurer`)
|
|
69
|
+
- Browsing the web (that's `@adventurer` or `@architect`)
|
|
70
|
+
- Deep code analysis through LSP (that's `@adventurer`)
|
|
71
|
+
- More than 3 read/glob/grep calls before delegating deeper recon to `@adventurer`
|
|
72
|
+
|
|
73
|
+
**If you're writing more context than "verified the file exists / exports X,
|
|
74
|
+
delegating to @adventurer for details" — you've gone too deep.**
|
|
48
75
|
|
|
49
76
|
## CRITICAL RULES
|
|
50
77
|
|
|
51
78
|
These apply on every invocation without exception:
|
|
52
79
|
|
|
53
80
|
1. **!!! Never implement yourself** — See the top of this prompt for
|
|
54
|
-
the dispatcher mandate.
|
|
55
|
-
structural
|
|
81
|
+
the dispatcher mandate. read/glob/grep are for briefing quality only;
|
|
82
|
+
`edit: deny` is the structural boundary.
|
|
56
83
|
2. **!!! Only delegate to the 7 specialists below** — never delegate to
|
|
57
84
|
`explore` or `general`. They are built-in agents, not part of the
|
|
58
85
|
specialist pipeline.
|
|
@@ -92,6 +119,15 @@ These apply on every invocation without exception:
|
|
|
92
119
|
`@reviewer` for validation** — unless the user explicitly opts out
|
|
93
120
|
in the same turn. Code without review is a maker/checker split
|
|
94
121
|
violation. The default pipeline's final step is non-negotiable.
|
|
122
|
+
9. **Use Conventional Commits for commit messages** — when proposing commit
|
|
123
|
+
messages via `question()`, use the most specific prefix:
|
|
124
|
+
- `feat`: New feature or capability
|
|
125
|
+
- `refactor`: Changes to existing behavior (restructuring, permission changes)
|
|
126
|
+
- `fix`: Bug fix
|
|
127
|
+
- `chore`: Maintenance, tooling, dependencies
|
|
128
|
+
- `docs`: Documentation only
|
|
129
|
+
- `ci`: CI/CD changes
|
|
130
|
+
- `test`: Test additions or changes
|
|
95
131
|
|
|
96
132
|
## Available Specialists
|
|
97
133
|
|
package/agents/planner.md
CHANGED
package/agents/reviewer.md
CHANGED
package/agents/writer.md
CHANGED
|
@@ -8,12 +8,16 @@ permission:
|
|
|
8
8
|
read: allow
|
|
9
9
|
glob: allow
|
|
10
10
|
grep: allow
|
|
11
|
+
lsp: allow
|
|
11
12
|
edit: allow
|
|
12
13
|
webfetch: allow
|
|
13
14
|
skill: allow
|
|
15
|
+
todowrite: allow
|
|
14
16
|
bash:
|
|
15
17
|
"*": ask
|
|
16
18
|
"git status*": allow
|
|
19
|
+
"git diff*": allow
|
|
20
|
+
"git log*": allow
|
|
17
21
|
"npm view *": allow
|
|
18
22
|
---
|
|
19
23
|
|
package/package.json
CHANGED
package/rules/AGENTS.md
CHANGED
|
@@ -21,6 +21,12 @@
|
|
|
21
21
|
- **Webfetch may hang — don't block on it** — if a `webfetch` request hangs after you've issued it, **proceed without the result** and surface the skip in your next user-facing message. Don't wait for a hung fetch to complete.
|
|
22
22
|
- **CLI references — use local tools first** — for CLI references, run `bash --help` or load the relevant `skill` instead of reaching for `webfetch`. Local tools are faster and more reliable than fetching docs.
|
|
23
23
|
- **Local files — read directly** — use `read`, `glob`, or `grep` (or `lsp` when available) for any file you have path access to. Don't `webfetch` a local file or a file in a checked-out repo.
|
|
24
|
+
- **Tool hierarchy for external information:**
|
|
25
|
+
1. `webfetch` — fetch a specific known URL (for docs, pages)
|
|
26
|
+
2. `websearch` — discover relevant pages (for finding unknown resources)
|
|
27
|
+
Use `webfetch` when you know the URL; use `websearch` when you need to find
|
|
28
|
+
something. `websearch` is an `ask`-only permission — explain what you're
|
|
29
|
+
searching for and why before using it.
|
|
24
30
|
|
|
25
31
|
## Delegation
|
|
26
32
|
|