opencode-herdr-orchestration 0.1.1 → 0.1.2
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/package.json +1 -1
- package/src/agents.js +6 -0
- package/src/prompts.js +4 -0
package/package.json
CHANGED
package/src/agents.js
CHANGED
|
@@ -52,6 +52,12 @@ const herdrInspection = {
|
|
|
52
52
|
"herdr pane layout*": "allow",
|
|
53
53
|
"herdr pane split*": "allow",
|
|
54
54
|
"herdr pane read*": "allow",
|
|
55
|
+
"herdr worktree": "allow",
|
|
56
|
+
"herdr worktree list*": "allow",
|
|
57
|
+
"herdr worktree create *": "allow",
|
|
58
|
+
"herdr worktree open *": "allow",
|
|
59
|
+
"herdr worktree remove --workspace *": "allow",
|
|
60
|
+
"herdr worktree remove * --force*": "deny",
|
|
55
61
|
};
|
|
56
62
|
|
|
57
63
|
const markdownOnly = {
|
package/src/prompts.js
CHANGED
|
@@ -13,6 +13,8 @@ Never pass another agent, model, --auto, or extra OpenCode argument. Use send-ke
|
|
|
13
13
|
|
|
14
14
|
Worker names must be unique and satisfy Herdr's naming rules. Assign bounded work with herdr agent prompt <name> "..." --wait --timeout <milliseconds>. If additional research is needed, prompt the same worker again or create another non-overlapping sheep-plan assignment.
|
|
15
15
|
|
|
16
|
+
When isolated planning needs a worktree, use Herdr's installed worktree commands. A worktree created from another worktree is a peer that shares the same Git common repository, not its child. Inspect existing worktrees first, use an explicit non-protected branch and base commit, and place the checkout outside the current worktree rather than nesting it. Record the worker, branch, path, and base commit. Remove only worktrees you created, only after their planning artifacts are preserved and the worktree is clean; never force removal.
|
|
17
|
+
|
|
16
18
|
After a worker settles, use herdr_agent_response as the authoritative result channel. Call it first with the worker name, then call it with each returned cursor until complete is true. Do not summarize, decide, or act on the worker result until every page has been read in order. Use herdr agent read only for live status, blocked dialogs, and stuck-worker diagnosis; terminal snapshots are never the completed worker response. If retrieval says the worker is not settled, wait and retry. If an interrupted worker has no completed response, inspect its actual partial state and redesign the task.
|
|
17
19
|
|
|
18
20
|
If a worker is blocked, inspect it with herdr agent get and herdr agent read; do not answer approvals or questions without applying the user's safety constraints. Treat unknown as inconclusive, not complete. Synthesize worker findings instead of forwarding raw reports. Resolve contradictions when repository evidence permits and surface unresolved product choices to the user.
|
|
@@ -45,6 +47,8 @@ Delegate using structured contracts containing, where relevant: task_id, plan_id
|
|
|
45
47
|
|
|
46
48
|
Parallelize only tasks that will not conflict. When implementation tasks can run concurrently, give each sheep-build a dedicated branch and worktree with non-overlapping ownership and explicit integration order.
|
|
47
49
|
|
|
50
|
+
Use Herdr's installed worktree commands for worker isolation. Worktrees created while you are already in a worktree are peers sharing the same Git common repository. Inspect the existing worktree list before creation, create each worker branch from the approved base commit, and never nest a worker checkout inside the current worktree. Record worker name, branch, path, base commit, and owned scope before delegation. Never reuse a branch checked out elsewhere. Remove only worktrees you created, only after their commits are integrated or otherwise preserved and the worktree is clean; never force removal.
|
|
51
|
+
|
|
48
52
|
Spawn only these configured workers with no extra OpenCode arguments:
|
|
49
53
|
|
|
50
54
|
herdr agent start <name> --kind opencode --pane <pane-id> -- --agent sheep-plan
|