@sjawhar/pi-legion-envoy 1.35.1 → 1.37.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 CHANGED
@@ -85,10 +85,10 @@ extension files it does not contain.
85
85
 
86
86
  ## Native Dispatch tools
87
87
 
88
- The extension registers twelve native Dispatch tools: `dispatch_issue`, `dispatch_ask`, `dispatch_edit_ask`,
89
- `dispatch_resolve_ask`, `dispatch_comment`, `dispatch_suggest`, `dispatch_message`,
90
- `dispatch_doc_edit`, `dispatch_doc_read`, `dispatch_artifact`, `dispatch_read`, and
91
- `dispatch_search`, when Dispatch configuration resolves both a base URL and bearer token.
88
+ The extension registers fifteen native Dispatch tools: `dispatch_issue`, `dispatch_ask`, `dispatch_edit_ask`,
89
+ `dispatch_resolve_ask`, `dispatch_follow`, `dispatch_comment`, `dispatch_suggest`, `dispatch_message`,
90
+ `dispatch_doc_edit`, `dispatch_doc_read`, `dispatch_request_approval`, `dispatch_artifact`, `dispatch_read`,
91
+ `dispatch_search`, and `dispatch_open_asks`, when Dispatch configuration resolves both a base URL and bearer token.
92
92
 
93
93
  Configure the shared `envoy.json` with:
94
94
 
@@ -112,21 +112,23 @@ whose trimmed contents are the token — how the Legion daemon delivers it to a
112
112
  pane) wins over every other token source and never falls back when unreadable.
113
113
  Omitting `dispatch.serverUrl` while `dispatch.enabled` is true targets
114
114
  `http://localhost:8766`, the Go server's listen address. Invalid configuration,
115
- an invalid URL, or an empty token leaves the twelve tools unavailable and
115
+ an invalid URL, or an empty token leaves the fifteen tools unavailable and
116
116
  reports the source of the error.
117
117
 
118
118
  Owner-scoped calls use either an issue (a native `KEY` or external `owner/repo#n` reference) or
119
119
  an unlinked project document (`project` plus its `artifact` slug). A Legion session may omit
120
120
  `issue` when `LEGION_ISSUE` identifies its root issue and its working directory resolves to a
121
121
  repository. `dispatch_doc_read` and `dispatch_read` also accept `dispatch://` references,
122
- including `dispatch://PROJECT/artifact/<slug>`. `dispatch_search` needs only its query and
123
- returns no subscription topic. `dispatch_edit_ask` and `dispatch_resolve_ask` instead identify
124
- an existing ask with `ask`. Every mutation result carries `details.topic`: issue writes use
125
- `notifications.dispatch.issue.<KEY>.>` and project-document writes use
126
- `notifications.dispatch.document.<PROJECT>.<SLUG>.>`. The extension's `tool_result` hook
127
- subscribes to that exact topic, then registers the session so retained events arrive as Pi
128
- steering. `dispatch_doc_read` and `dispatch_read` return owner details without a subscription
129
- topic.
122
+ including `dispatch://PROJECT/artifact/<slug>`. `dispatch_search` needs only its query.
123
+ `dispatch_edit_ask`, `dispatch_resolve_ask`, and `dispatch_follow` instead identify an existing
124
+ ask with `ask`. No result carries a subscription topic: opening an ask or replying to one with
125
+ `dispatch_comment({ reply_to_ask })` makes the session a follower of that ask (its answer and
126
+ replies reach the session directly, server-side), the result carries `details.follows.ask`, and
127
+ the extension's `tool_result` hook tells the model so once per ask. Whole-issue or
128
+ whole-document subscription is the model's own `envoy_subscribe` of the topic every write
129
+ result names (`notifications.dispatch.issue.<KEY>.>` or
130
+ `notifications.dispatch.document.<PROJECT>.<SLUG>.>`). `dispatch_doc_read` and
131
+ `dispatch_read` return owner details only.
130
132
 
131
133
  The shared contract supplies the model-facing schemas and descriptions. The
132
134
  `dispatch` skill describes when to use each operation for issues, asks, review