@nail00749/agent-gvozd 0.1.7 → 0.2.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/README.md +68 -11
- package/defaults/agents/back-deep.jsonc +1923 -6
- package/defaults/agents/back-fast.jsonc +1908 -3
- package/defaults/agents/front-deep.jsonc +1978 -17
- package/defaults/agents/front-fast.jsonc +1963 -14
- package/defaults/agents/git.jsonc +20 -0
- package/defaults/agents/master-trusted.jsonc +32 -0
- package/defaults/agents/master.jsonc +0 -1
- package/defaults/agents/review-deep.jsonc +2443 -18
- package/defaults/agents/review-fast.jsonc +2428 -15
- package/defaults/agents/security.jsonc +2213 -29
- package/defaults/prompts/back-deep.md +1 -1
- package/defaults/prompts/back-fast.md +1 -1
- package/defaults/prompts/devops.md +1 -1
- package/defaults/prompts/front-deep.md +1 -1
- package/defaults/prompts/front-fast.md +1 -1
- package/defaults/prompts/master-trusted.md +7 -0
- package/defaults/prompts/master.md +2 -2
- package/defaults/prompts/review-deep.md +3 -1
- package/defaults/prompts/review-fast.md +1 -1
- package/defaults/prompts/security.md +3 -1
- package/dist/cli.js +174 -58
- package/dist/index.js +261 -2
- package/dist/tui.js +956 -0
- package/package.json +13 -3
- package/defaults/agents/verifier.jsonc +0 -1298
package/README.md
CHANGED
|
@@ -2,7 +2,33 @@
|
|
|
2
2
|
|
|
3
3
|
Gvozd installs one permission-aware agent team globally, so every OpenCode
|
|
4
4
|
project can use it without copying plugin or agent files into the repository.
|
|
5
|
-
Release `0.
|
|
5
|
+
Release `0.2.0` targets OpenCode V2 `2.0.*` — any 2.0.x patch release.
|
|
6
|
+
|
|
7
|
+
## What is new in 0.2.0
|
|
8
|
+
|
|
9
|
+
- **File-lease verification for writers**: Back Fast, Back Deep, Front Fast,
|
|
10
|
+
and Front Deep hold the read-only toolchain shell baseline (tests, builds,
|
|
11
|
+
typecheck, lint) and verify their own changes while their lease is active;
|
|
12
|
+
mutating shell stays denied.
|
|
13
|
+
- **Verifier removed**: writers verify themselves; routing text, permissions,
|
|
14
|
+
and the model profile no longer reference the agent.
|
|
15
|
+
- **TUI plugin** (`./tui` export): a session sidebar section with subagent
|
|
16
|
+
tree, skills, permission history (durable across restarts), and tool
|
|
17
|
+
statistics, plus `/gvozd` (insights), `/gvozd-dryrun` (permission dry run
|
|
18
|
+
per pipeline segment), `/gvozd-leases` (lease snapshot), and `/gvozd-mode`
|
|
19
|
+
(session permission posture).
|
|
20
|
+
- **Permission dry run RPC** (`gvozd-permissions`): evaluates the exact
|
|
21
|
+
effect a ruleset produces for a hypothetical call.
|
|
22
|
+
- **Lease snapshot RPC** (`gvozd-leases`): lists active and reserved leases
|
|
23
|
+
with owners and TTLs.
|
|
24
|
+
- **Session trust modes RPC** (`gvozd-mode`): switch a session between
|
|
25
|
+
balanced, trusted (full shell; destructive Git stays denied), and strict
|
|
26
|
+
postures; child sessions inherit the mode.
|
|
27
|
+
- **`gvozd agents`** CLI: list the resolved team and disable or enable
|
|
28
|
+
built-in agents in the managed global config.
|
|
29
|
+
- **OpenCode `2.0.*` compatibility range** instead of an exact patch pin.
|
|
30
|
+
- **Unconfigured agents may edit while no writer leases are active** instead
|
|
31
|
+
of a hard edit deadlock; parallel writer protection is unchanged.
|
|
6
32
|
|
|
7
33
|
## Global setup
|
|
8
34
|
|
|
@@ -27,8 +53,8 @@ OpenCode first if the desired provider is absent from `opencode models`.
|
|
|
27
53
|
For a deterministic unattended rerun, use `gvozd setup --yes`. It retains a
|
|
28
54
|
valid existing profile, or selects the built-in OpenAI preset only when Luna,
|
|
29
55
|
Sol, and Codex Spark are all available. Setup registers the exact current
|
|
30
|
-
release (`@nail00749/agent-gvozd@0.
|
|
31
|
-
after updating the CLI is the supported
|
|
56
|
+
release (`@nail00749/agent-gvozd@0.2.0`), not a version range. Rerunning setup
|
|
57
|
+
after updating the CLI is the supported upgrade path.
|
|
32
58
|
|
|
33
59
|
Inspect an installation at any time:
|
|
34
60
|
|
|
@@ -47,6 +73,7 @@ Unrelated JSONC fields and comments are preserved. Project overrides under
|
|
|
47
73
|
The installed team contains:
|
|
48
74
|
|
|
49
75
|
- `master` — primary coordinator
|
|
76
|
+
- `master-trusted` — Master with full shell access for sessions the user marks as trusted
|
|
50
77
|
- `planner` — read-only planning subagent
|
|
51
78
|
- `back-fast` / `back-deep` — fast and deep backend implementation tiers
|
|
52
79
|
- `front-fast` / `front-deep` — fast and deep frontend implementation tiers
|
|
@@ -55,7 +82,6 @@ The installed team contains:
|
|
|
55
82
|
- `explorer` — read-only local file and execution-path discovery
|
|
56
83
|
- `git` — focused Git inspection and explicitly authorized operations
|
|
57
84
|
- `docs` — documentation, examples, and migration notes
|
|
58
|
-
- `verifier` — independent build, runtime, and manual scenario verification
|
|
59
85
|
- `debugger` — read-only root-cause investigation
|
|
60
86
|
- `security` — read-only security and trust-boundary review
|
|
61
87
|
- `devops` — CI, Docker, infrastructure, deployment, and release configuration
|
|
@@ -232,6 +258,35 @@ same-UID process that deliberately races the final validated component, or a
|
|
|
232
258
|
non-cooperating process that performs a final rename between validation and
|
|
233
259
|
mutation, remains outside this cooperative setup threat model.
|
|
234
260
|
|
|
261
|
+
## Permission modes
|
|
262
|
+
|
|
263
|
+
Switch a session's permission posture without changing agents. In the TUI run
|
|
264
|
+
`/gvozd-mode` and pick a posture:
|
|
265
|
+
|
|
266
|
+
- `balanced` — the default; unknown shell commands and edits ask.
|
|
267
|
+
- `trusted` — all shell and edits allowed; destructive Git (push --force,
|
|
268
|
+
reset --hard, clean, rebase, filter-branch/filter-repo, checkout --,
|
|
269
|
+
restore) stays denied, and writer-lease pauses still apply.
|
|
270
|
+
- `strict` — every shell command and edit asks.
|
|
271
|
+
|
|
272
|
+
Modes apply through session-scoped rules that evaluate after agent rules, and
|
|
273
|
+
child sessions inherit the mode in effect when they are created. For a
|
|
274
|
+
persistent per-session agent, switch to the `master-trusted` primary agent
|
|
275
|
+
(Tab in the TUI): it holds full shell access under the same lease protocol.
|
|
276
|
+
|
|
277
|
+
The permissions sidebar section shows pending requests, answered requests
|
|
278
|
+
(durable across TUI restarts), and the saved `always` approvals. Run
|
|
279
|
+
`/gvozd-dryrun` to evaluate a hypothetical command — including compound
|
|
280
|
+
pipelines, segment by segment — against the resolved ruleset.
|
|
281
|
+
|
|
282
|
+
## Managing the team
|
|
283
|
+
|
|
284
|
+
`gvozd agents` lists the resolved team with mode, lease role, and model.
|
|
285
|
+
`gvozd agents disable <id>` and `gvozd agents enable <id>` toggle a built-in
|
|
286
|
+
agent in the managed global config; rerun `gvozd sync` and `gvozd doctor` to
|
|
287
|
+
apply. Disabled agents disappear from the runtime, the generated files, and
|
|
288
|
+
doctor checks.
|
|
289
|
+
|
|
235
290
|
## Cooperative file leases
|
|
236
291
|
|
|
237
292
|
Writer agents coordinate exact project files before editing them. The default
|
|
@@ -242,8 +297,11 @@ roles are:
|
|
|
242
297
|
- planning, exploration, review, research, Git, verification, debugging, and
|
|
243
298
|
security agents: `readonly`
|
|
244
299
|
|
|
245
|
-
Custom agents default to `readonly`.
|
|
246
|
-
|
|
300
|
+
Custom agents default to `readonly`. Agents with no configured lease role
|
|
301
|
+
participate as outsiders: they may edit files while no writer leases are
|
|
302
|
+
active — the normal single-agent case — and pause during parallel writer work.
|
|
303
|
+
They cannot join the coordination protocol itself; set `fileLease` explicitly
|
|
304
|
+
when a custom agent must write:
|
|
247
305
|
|
|
248
306
|
```jsonc
|
|
249
307
|
{
|
|
@@ -347,7 +405,6 @@ Gvozd's tool-level permissions apply.
|
|
|
347
405
|
| `explorer` | GitNexus exploration | GitNexus read-only |
|
|
348
406
|
| `git` | none | GitLab reads; mutations ask; CI variables denied |
|
|
349
407
|
| `docs` | none | Context7 |
|
|
350
|
-
| `verifier` | verification before completion | Context7; read-only GitNexus; Playwright interactions ask |
|
|
351
408
|
| `debugger` | systematic debugging and GitNexus debugging/PDG | Context7; read-only GitNexus; Playwright interactions ask |
|
|
352
409
|
| `security` | code review and GitNexus taint/PDG | Context7; read-only GitLab/GitNexus; Playwright interactions ask |
|
|
353
410
|
| `devops` | verification before completion | Context7; GitLab reads and CI validation; mutations ask; CI variables denied |
|
|
@@ -380,7 +437,7 @@ Researcher, Git, and Docs prefer `openai/gpt-5.6-luna` with
|
|
|
380
437
|
`openai/gpt-5.6-sol` as fallback. Explorer prefers
|
|
381
438
|
`openai/gpt-5.3-codex-spark` with `openai/gpt-5.6-luna` as fallback. Researcher
|
|
382
439
|
is restricted to web search and fetch tools; Explorer is restricted to local
|
|
383
|
-
glob, grep, and read tools. Git and
|
|
440
|
+
glob, grep, and read tools. Git and the other read-only roles allow read-only Git commands and
|
|
384
441
|
listing forms (status, diff, log, show, rev-parse, ls-files, branch, tag,
|
|
385
442
|
remote, symbolic-ref HEAD, reflog, worktree list); any form that creates,
|
|
386
443
|
deletes, renames, or rewrites state requires approval, and destructive
|
|
@@ -390,9 +447,9 @@ denied outright. Docs
|
|
|
390
447
|
can edit Markdown and files under `docs/`; edits elsewhere require approval,
|
|
391
448
|
and shell access is denied.
|
|
392
449
|
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
450
|
+
Debugger, Security, and DevOps use `openai/gpt-5.6-luna` with
|
|
451
|
+
`openai/gpt-5.6-sol` as fallback. Debugger and Security are read-only and
|
|
452
|
+
require approval for shell commands. DevOps can edit
|
|
396
453
|
common CI, Docker, and infrastructure paths; other edits require approval, shell
|
|
397
454
|
is denied for the writer role, and every external mutation requires explicit
|
|
398
455
|
task authorization.
|