overlord-cli 0.2609091647.0 → 0.2609150845.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/dist/connectors/VERSION +1 -1
- package/dist/connectors/adapters/antigravity/conformance-manifest.yaml +1 -1
- package/dist/connectors/adapters/antigravity/plugin.json +1 -1
- package/dist/connectors/adapters/claude/.claude-plugin/plugin.json +1 -1
- package/dist/connectors/adapters/claude/conformance-manifest.yaml +1 -1
- package/dist/connectors/adapters/codex/.codex-plugin/plugin.json +1 -1
- package/dist/connectors/adapters/codex/conformance-manifest.yaml +1 -1
- package/dist/connectors/adapters/cursor/.cursor-plugin/plugin.json +1 -1
- package/dist/connectors/adapters/cursor/conformance-manifest.yaml +1 -1
- package/dist/connectors/adapters/opencode/conformance-manifest.yaml +1 -1
- package/dist/connectors/adapters/pi/conformance-manifest.yaml +1 -1
- package/dist/connectors/core/overlord-mission/SKILL.md +31 -20
- package/dist/connectors/core/overlord-mission/reference/cli.md +7 -6
- package/dist/connectors/core/overlord-mission/reference/mcp.md +2 -1
- package/dist/connectors/core/overlord-mission/reference/record-work.md +6 -2
- package/dist/connectors/core/scripts/overlord-mcp.mjs +31 -12
- package/dist/index.js +13 -9
- package/dist/index.js.map +2 -2
- package/package.json +1 -1
package/dist/connectors/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
0.3.
|
|
1
|
+
0.3.46
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://antigravity.google/schemas/v1/plugin.json",
|
|
3
3
|
"name": "overlord",
|
|
4
|
-
"version": "0.3.
|
|
4
|
+
"version": "0.3.46",
|
|
5
5
|
"description": "Chat-driven access to Overlord mission protocol workflows through skills and MCP.",
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "Cooperativ",
|
|
@@ -33,7 +33,12 @@ never include Git operations or routine review/testing. Every human action needs
|
|
|
33
33
|
and `category`; add `command`, `verify`, and `link` whenever they exist so the operator can act
|
|
34
34
|
without re-reading the delivery (see **Delivery Evidence** below). Tradeoffs record the
|
|
35
35
|
implementation decision, alternatives considered, and rationale. Each `deferredWork` item
|
|
36
|
-
|
|
36
|
+
must be a recommended new objective that is not part of this mission (for example a bug
|
|
37
|
+
discovered here that belongs outside it). Name the component or file involved and say why
|
|
38
|
+
the work was left. Never list work already covered by this mission's future objectives,
|
|
39
|
+
leftover slices of the current objective (add an objective to this mission instead), or
|
|
40
|
+
human implementation follow-up such as deploy, secrets, or migrations (those belong in
|
|
41
|
+
`humanActions`). Use an empty array when nothing qualifies. These fields improve
|
|
37
42
|
review visibility but never block delivery.
|
|
38
43
|
|
|
39
44
|
For full command syntax, flags, phase values, and event types see **CLI Command Reference** below.
|
|
@@ -77,9 +82,9 @@ Do not attach to a mission just because it was mentioned or opened in conversati
|
|
|
77
82
|
|
|
78
83
|
Use this mode when the conversation starts normally and the user asks the agent to create, inspect, connect to, or otherwise use Overlord.
|
|
79
84
|
|
|
80
|
-
1. If the user wants to create missions (and does not ask to start execution), run `ovld protocol create --agent <agent-identifier> --objectives-json '[{"objective":"..."}]'`.
|
|
85
|
+
1. If the user wants to create missions (and does not ask to start execution), resolve the intended project and run `ovld protocol create --project-id <project-id> --agent <agent-identifier> --objectives-json '[{"objective":"..."}]'`.
|
|
81
86
|
- When `--session-key` and `--mission-id` are provided, it creates a follow-up draft.
|
|
82
|
-
-
|
|
87
|
+
- Creation never infers a project. If the user explicitly asks to capture work outside every project, use `--unassigned-to-project`; otherwise resolve a project first with `ovld protocol discover-project` and pass its id.
|
|
83
88
|
- Pass multiple items in `--objectives-json` when creating ordered steps for the same feature or goal.
|
|
84
89
|
- If the user wants to **add more objectives to an existing mission** (not create a new mission), use `ovld protocol add-objectives --mission-id <mission_id> --objectives-json '[{"objective":"..."}]'` instead.
|
|
85
90
|
2. Default to `create` for new missions. Only use `ovld protocol prompt --agent <agent-identifier> --objectives-json '[{"objective":"..."}]'` when the user explicitly asks to create and execute immediately.
|
|
@@ -90,7 +95,7 @@ Use this mode when the conversation starts normally and the user asks the agent
|
|
|
90
95
|
5. If the user wants to establish a persistent session with a mission by ID, run `ovld protocol attach --mission-id <mission_id>`.
|
|
91
96
|
6. If the user wants to find a mission but does not know the ID, run `ovld protocol search-missions --query "..." --status execute,review` and ask the user to confirm.
|
|
92
97
|
7. If you need to understand project routing before prompting, use `ovld protocol discover-project`.
|
|
93
|
-
8. If the user wants to **record work that is already finished** in this chat (for example, something you just built in a chat app) as a completed mission, run `ovld protocol record-work
|
|
98
|
+
8. If the user wants to **record work that is already finished** in this chat (for example, something you just built in a chat app) as a completed mission, run `ovld protocol record-work --project-id <project-id>` (or the hosted `overlord_record_work` MCP tool). This creates a mission with one completed objective, records explicitly supplied changed files and optional rationales, lands it in the review column, and runs the standard Gemini delivery summary — all in one call, with no `attach`/`deliver`. Do **not** use it for in-progress work. The exact submission format is in [reference/record-work.md](reference/record-work.md).
|
|
94
99
|
9. If you need other lifecycle commands or flags, run `ovld protocol help` and use the real subcommand list instead of guessing.
|
|
95
100
|
10. Once you attach to a mission, switch back to Mode 1 and follow the full mission lifecycle.
|
|
96
101
|
|
|
@@ -207,23 +212,28 @@ Only list a human action when a person must perform a concrete non-Git step outs
|
|
|
207
212
|
agent's completed work (for example, add a secret, run a production migration, deploy, or
|
|
208
213
|
configure an external integration). Never list committing, pushing, opening a pull request,
|
|
209
214
|
reviewing code, or ordinary tests. A tradeoff must state the decision, alternatives considered,
|
|
210
|
-
and rationale. Each `deferredWork` item
|
|
211
|
-
|
|
215
|
+
and rationale. Each `deferredWork` item must be a recommended new objective that is not
|
|
216
|
+
part of this mission (for example a bug discovered here that belongs outside it). Name
|
|
217
|
+
the component or file involved and say why the work was left. Never list work already
|
|
218
|
+
covered by this mission's future objectives, leftover slices of the current objective
|
|
219
|
+
(add an objective to this mission instead), or human implementation follow-up such as
|
|
220
|
+
deploy, secrets, or migrations (those belong in `humanActions`). Use an empty array when
|
|
221
|
+
nothing qualifies. Omit the report when none of these facts apply.
|
|
212
222
|
|
|
213
223
|
#### Writing a human action the operator can complete
|
|
214
224
|
|
|
215
225
|
Human actions are collected across every mission into the Feed page's **Human actions** rail,
|
|
216
226
|
where the operator reads them without the delivery context. Each item must stand alone:
|
|
217
227
|
|
|
218
|
-
| Field | Expected
|
|
219
|
-
| ---------- |
|
|
220
|
-
| `action` | required
|
|
221
|
-
| `reason` | expected
|
|
222
|
-
| `category` | expected
|
|
223
|
-
| `blocking` | optional
|
|
228
|
+
| Field | Expected | What to write |
|
|
229
|
+
| ---------- | ---------- | ------------------------------------------------------------------------------------------------- |
|
|
230
|
+
| `action` | required | One imperative sentence naming the exact thing to do, where, and with what value. |
|
|
231
|
+
| `reason` | expected | Why the step is needed and what breaks or stays incomplete until it is done. |
|
|
232
|
+
| `category` | expected | `environment`, `database`, `deployment`, `codegen`, `packaging`, `external_service`, or `other`. |
|
|
233
|
+
| `blocking` | optional | `true` when the delivered work does not function until this is done. |
|
|
224
234
|
| `command` | when known | The exact command, setting name, or value to apply, verbatim. Placeholders in `<angle brackets>`. |
|
|
225
|
-
| `verify` | when known | How the operator confirms it worked: a command to run, a URL to open, or the state to observe.
|
|
226
|
-
| `link` | when known | An HTTP(S) URL or a repository-relative file path (never another URI scheme).
|
|
235
|
+
| `verify` | when known | How the operator confirms it worked: a command to run, a URL to open, or the state to observe. |
|
|
236
|
+
| `link` | when known | An HTTP(S) URL or a repository-relative file path (never another URI scheme). |
|
|
227
237
|
|
|
228
238
|
Vague (the operator has to rediscover everything):
|
|
229
239
|
|
|
@@ -323,8 +333,8 @@ When creating missions from within a repository:
|
|
|
323
333
|
|
|
324
334
|
- Prefer `create` by default for draft mission creation.
|
|
325
335
|
- Use `prompt` only when the user explicitly asks to start execution immediately.
|
|
326
|
-
-
|
|
327
|
-
-
|
|
336
|
+
- `create`, `prompt`, and `record-work` require an explicit `--project-id`; use `discover-project` first when the project is known only from the checkout. They never infer a destination project.
|
|
337
|
+
- Use `create --unassigned-to-project` only when the user deliberately requests an account-owned inbox capture. `--inbox` is a compatibility alias.
|
|
328
338
|
- Create multiple missions when each prompt represents a different feature or goal.
|
|
329
339
|
- Add objectives to the same mission when each prompt is a sequential step toward the same feature or goal; use `ovld protocol add-objectives --mission-id <mission_id> --objectives-json '[{"objective":"..."}]'`.
|
|
330
340
|
- `create` and `prompt` require `--objectives-json` or `--objectives-file` with an ordered array of `{ "objective": "...", "title": "...", "autoAdvance": true }` objects. A single objective is just an array with one item. `--auto-advance` / `--no-auto-advance` set the default when an item omits `autoAdvance` (default off).
|
|
@@ -335,17 +345,18 @@ When creating missions from within a repository:
|
|
|
335
345
|
- `create`, `prompt`, `create-mission`, and `record-work` accept `--assigned-to <member>` to set the mission's human owner. Accepts a username, an email, a user-id UUID, or the `orgid:username` member ID. When omitted, the assignee defaults to the mission creator.
|
|
336
346
|
|
|
337
347
|
```bash
|
|
338
|
-
ovld protocol create --agent <agent-identifier> --objectives-json '[{"objective":"Capture follow-up work from this repository"}]'
|
|
348
|
+
ovld protocol create --project-id <project-id> --agent <agent-identifier> --objectives-json '[{"objective":"Capture follow-up work from this repository"}]'
|
|
339
349
|
```
|
|
340
350
|
|
|
341
351
|
```bash
|
|
342
352
|
# One call: a draft mission whose first objective is already assigned to Codex.
|
|
343
353
|
ovld protocol create --agent <agent-identifier> \
|
|
354
|
+
--project-id <project-id> \
|
|
344
355
|
--objectives-json '[{"objective":"Implement the API","agent":"codex","model":"gpt-5.6-terra"},{"objective":"Add CLI docs","agent":"claude"}]'
|
|
345
356
|
```
|
|
346
357
|
|
|
347
358
|
```bash
|
|
348
|
-
ovld protocol prompt --agent <agent-identifier> --objectives-json '[{"objective":"Implement feature X"}]'
|
|
359
|
+
ovld protocol prompt --project-id <project-id> --agent <agent-identifier> --objectives-json '[{"objective":"Implement feature X"}]'
|
|
349
360
|
```
|
|
350
361
|
|
|
351
362
|
```bash
|
|
@@ -403,8 +414,8 @@ When you need a project ID for a protocol command and the mission prompt did not
|
|
|
403
414
|
**Locally (CLI inside a shell on the user's machine):**
|
|
404
415
|
|
|
405
416
|
1. `--project-id` if explicitly provided.
|
|
406
|
-
2. Otherwise,
|
|
407
|
-
3. If
|
|
417
|
+
2. Otherwise, run `ovld protocol discover-project` for the current working directory, then pass its returned id via `--project-id`.
|
|
418
|
+
3. If discovery returns nothing, read `.overlord/project.json` from the cwd (or any ancestor you have access to). Select the `projects[]` entry with `isPrimary: true` and pass its id via `--project-id`. If the array or primary entry is missing, treat the metadata as invalid and run `ovld doctor`; do not fall back to a top-level projection. To associate missions with a different linked project, pass that project's id explicitly.
|
|
408
419
|
|
|
409
420
|
**Over MCP (web agents and hosted tools, where the server cannot see the agent's cwd):**
|
|
410
421
|
|
|
@@ -175,8 +175,8 @@ When creating missions from within a repository:
|
|
|
175
175
|
|
|
176
176
|
- Prefer `create` by default for draft mission creation.
|
|
177
177
|
- Use `prompt` only when the user explicitly asks to start execution immediately.
|
|
178
|
-
-
|
|
179
|
-
-
|
|
178
|
+
- `create`, `prompt`, and `record-work` require an explicit `--project-id`; use `discover-project` first when the project is known only from the checkout. They never infer a destination project.
|
|
179
|
+
- Use `create --unassigned-to-project` only when the user deliberately requests an account-owned inbox capture. `--inbox` is a compatibility alias.
|
|
180
180
|
- Create multiple missions when each prompt represents a different feature or goal.
|
|
181
181
|
- Add objectives to the same mission when each prompt is a sequential step toward the same feature or goal; use `ovld protocol add-objectives --mission-id <mission_id> --objectives-json '[{"objective":"..."}]'`.
|
|
182
182
|
- `create` and `prompt` require `--objectives-json` or `--objectives-file` with an ordered array of `{ "objective": "...", "title": "...", "autoAdvance": true }` objects. A single objective is just an array with one item. `--auto-advance` / `--no-auto-advance` map each opted-in item to authoritative Run Queue membership (default off).
|
|
@@ -186,17 +186,18 @@ When creating missions from within a repository:
|
|
|
186
186
|
- `record-work` creates exactly one **completed** objective from a single `--objective` (or positional / an `objective` field in `--payload-json`) plus a `--summary` and file-change data — it does not take `--objectives-json`. See [record-work.md](record-work.md).
|
|
187
187
|
|
|
188
188
|
```bash
|
|
189
|
-
ovld protocol create --agent <agent-identifier> --objectives-json '[{"objective":"Capture follow-up work from this repository"}]'
|
|
189
|
+
ovld protocol create --project-id <project-id> --agent <agent-identifier> --objectives-json '[{"objective":"Capture follow-up work from this repository"}]'
|
|
190
190
|
```
|
|
191
191
|
|
|
192
192
|
```bash
|
|
193
193
|
# One call: a draft mission whose first objective is already assigned to Codex.
|
|
194
194
|
ovld protocol create --agent <agent-identifier> \
|
|
195
|
+
--project-id <project-id> \
|
|
195
196
|
--objectives-json '[{"objective":"Implement the API","agent":"codex","model":"gpt-5.6-terra"},{"objective":"Add CLI docs","agent":"claude"}]'
|
|
196
197
|
```
|
|
197
198
|
|
|
198
199
|
```bash
|
|
199
|
-
ovld protocol prompt --agent <agent-identifier> --objectives-json '[{"objective":"Implement feature X"}]'
|
|
200
|
+
ovld protocol prompt --project-id <project-id> --agent <agent-identifier> --objectives-json '[{"objective":"Implement feature X"}]'
|
|
200
201
|
```
|
|
201
202
|
|
|
202
203
|
```bash
|
|
@@ -277,8 +278,8 @@ When you need a project ID for a protocol command and the mission prompt did not
|
|
|
277
278
|
**Locally (CLI inside a shell on the user's machine):**
|
|
278
279
|
|
|
279
280
|
1. `--project-id` if explicitly provided.
|
|
280
|
-
2. Otherwise,
|
|
281
|
-
3. If
|
|
281
|
+
2. Otherwise, run `ovld protocol discover-project` for the current working directory, then pass its returned id via `--project-id`.
|
|
282
|
+
3. If discovery returns nothing, read `.overlord/project.json` from the cwd (or any ancestor you have access to). Select the `projects[]` entry with `isPrimary: true` and pass its id via `--project-id`. If the array or primary entry is missing, treat the metadata as invalid and run `ovld doctor`; do not fall back to a top-level projection. To associate missions with a different linked project, pass that project's id explicitly.
|
|
282
283
|
|
|
283
284
|
**Over MCP (web agents and hosted tools, where the server cannot see the agent's cwd):**
|
|
284
285
|
|
|
@@ -7,7 +7,8 @@
|
|
|
7
7
|
- `permission-request` is invoked by connector permission hooks installed by adapter bundles. Agents do not normally call it directly.
|
|
8
8
|
- Execution request tools (`request_execution`, `claim_execution`, `list_execution_requests`, `clear_execution_requests`, `complete_execution_launch`, `fail_execution_launch`) back the local runner queue. Agents normally work missions with `attach`/`update`/`deliver`; runner processes use these queue tools.
|
|
9
9
|
- Change rationales are optional annotations attached to `update` or `deliver` (`--change-rationales-json` / `--change-rationales-file`, or `changeRationales` over MCP) and stored as `change_rationales` rows. Normal delivery requires only a summary; objective-ledger evidence is captured locally and synchronized independently.
|
|
10
|
-
- `
|
|
10
|
+
- `overlord_create_mission` requires `projectId` for a mission, unless `unassignedToProject: true` deliberately requests an account-owned inbox item; omission of both is rejected. `overlord_create_inbox_item` is also explicit by name.
|
|
11
|
+
- `overlord_record_work` (hosted MCP) and `ovld protocol record-work` (CLI) record already-completed chat work as a single review-column mission with a completed objective, explicitly supplied changed files, optional rationales, and the standard Gemini delivery summary — no `attach`/`deliver`. Both require an explicit project reference. The submission format is in [record-work.md](record-work.md). The route is `POST /api/protocol/record-work`.
|
|
11
12
|
- `overlord_add_artifact` (hosted MCP) and `ovld protocol add-artifact` (CLI) create a mission artifact during a turn without delivering. Required: `type` / `--type`, `label` / `--label`, mission scope (`missionId` / `--mission-id`, or an objective display id as `objectiveId` / `--objective-id`), plus at least one of `contentText` / `--content-text`/`--content-text-file` or `externalUrl` / `--external-url`. Optional `sessionKey` / `--session-key` stamps session/objective provenance; `objectiveId` / `--objective-id` does the same when there is no live session, and the session key wins if both are given. Same service as REST `POST /api/missions/:id/artifacts`. The route is `POST /api/protocol/add-artifact`.
|
|
12
13
|
- `overlord_update_artifact` (hosted MCP) and `ovld protocol update-artifact` (CLI) revise an existing mission artifact's label, Markdown content, and/or HTTP(S) URL in place. Required: `artifactId` / `--artifact-id`, `expectedRevision` / `--expected-revision`, and mission scope (`missionId` / `--mission-id`, or an objective display id as `objectiveId` / `--objective-id`). Provide at least one editable field. No session key is required. Same service as REST `PATCH /api/missions/:id/artifacts/:artifactId`. The route is `POST /api/protocol/update-artifact`.
|
|
13
14
|
- `overlord_delete_missions` / `overlord_delete_objectives` (hosted MCP) and `ovld protocol delete-missions` / `delete-objectives` (CLI) bulk soft-delete one to 100 mission or objective UUID/display-id references atomically. They require `confirm: true` / `--confirm`; before setting it, agents must show the resolved list to the user and receive affirmative approval. A missing, duplicate, deleted, or unauthorized target rejects the entire request. Mission deletion includes live child objectives; objective deletion removes live Run Queue membership.
|
|
@@ -60,8 +60,12 @@ identical across the CLI (`--payload-file -`) and the hosted MCP tool
|
|
|
60
60
|
or `decision`.
|
|
61
61
|
- **`deliveryReport`** (optional) — you may include a `deliveryReport.agentReport`
|
|
62
62
|
(`humanActions`, `tradeoffsMade`, `knownRisks`, `deferredWork`, `assumptions`) just as
|
|
63
|
-
in `deliver`. Each `deferredWork` item
|
|
64
|
-
|
|
63
|
+
in `deliver`. Each `deferredWork` item must be a recommended new objective that is not
|
|
64
|
+
part of this mission (for example a bug discovered here that belongs outside it). Name
|
|
65
|
+
the component or file involved and say why the work was left. Never list work already
|
|
66
|
+
covered by this mission's future objectives, leftover slices of the current objective,
|
|
67
|
+
or human implementation follow-up (those belong in `humanActions`). Use an empty array
|
|
68
|
+
when nothing qualifies. It improves review visibility but never blocks the record.
|
|
65
69
|
|
|
66
70
|
## CLI
|
|
67
71
|
|
|
@@ -257,10 +257,15 @@ const tools = [
|
|
|
257
257
|
name: 'overlord_create_mission',
|
|
258
258
|
title: 'Create Overlord mission',
|
|
259
259
|
description:
|
|
260
|
-
'Create a draft mission
|
|
260
|
+
'Create a draft mission with projectId. To intentionally create an account-owned inbox item, set unassignedToProject to true; omission of both is rejected.',
|
|
261
261
|
inputSchema: objectSchema(
|
|
262
262
|
{
|
|
263
|
-
projectId: stringProperty(
|
|
263
|
+
projectId: stringProperty(
|
|
264
|
+
'Overlord project id, slug, or name. Required unless unassignedToProject is true.'
|
|
265
|
+
),
|
|
266
|
+
unassignedToProject: booleanProperty(
|
|
267
|
+
'Set true only to intentionally create an account-owned inbox item instead of a project mission. Cannot be combined with projectId.'
|
|
268
|
+
),
|
|
264
269
|
objective: stringProperty('Initial objective text.'),
|
|
265
270
|
title: stringProperty('Optional mission title.'),
|
|
266
271
|
resourceKey: stringProperty('Optional logical project resource key for the objective.'),
|
|
@@ -271,7 +276,7 @@ const tools = [
|
|
|
271
276
|
'Optional model identifier for the assigned agent. Requires agent; rejected without it.'
|
|
272
277
|
),
|
|
273
278
|
assignedTo: stringProperty(
|
|
274
|
-
'Optional workspace member to own the mission (workspace_users.id, profile UUID, orgid:username, bare username, or email). Rejected when the member is not in the workspace; meaningless
|
|
279
|
+
'Optional workspace member to own the mission (workspace_users.id, profile UUID, orgid:username, bare username, or email). Rejected when the member is not in the workspace; meaningless for an unassigned inbox item.'
|
|
275
280
|
),
|
|
276
281
|
autoAdvance: booleanProperty(
|
|
277
282
|
'When true, Overlord queues the next objective for execution after this one is delivered. Defaults to false.'
|
|
@@ -634,14 +639,27 @@ const tools = [
|
|
|
634
639
|
items: {
|
|
635
640
|
type: 'object',
|
|
636
641
|
properties: {
|
|
637
|
-
action: {
|
|
638
|
-
|
|
642
|
+
action: {
|
|
643
|
+
type: 'string',
|
|
644
|
+
description: 'Required. One imperative sentence: what, where, which value.'
|
|
645
|
+
},
|
|
646
|
+
reason: {
|
|
647
|
+
type: 'string',
|
|
648
|
+
description: 'Expected. Why it is needed and what stays broken until done.'
|
|
649
|
+
},
|
|
639
650
|
category: {
|
|
640
651
|
type: 'string',
|
|
641
|
-
description:
|
|
652
|
+
description:
|
|
653
|
+
'Expected. environment, database, deployment, codegen, packaging, external_service, or other.'
|
|
654
|
+
},
|
|
655
|
+
blocking: {
|
|
656
|
+
type: 'boolean',
|
|
657
|
+
description: 'True when the delivered work does not function until this is done.'
|
|
658
|
+
},
|
|
659
|
+
command: {
|
|
660
|
+
type: 'string',
|
|
661
|
+
description: 'Exact command, setting, or value to apply, verbatim.'
|
|
642
662
|
},
|
|
643
|
-
blocking: { type: 'boolean', description: 'True when the delivered work does not function until this is done.' },
|
|
644
|
-
command: { type: 'string', description: 'Exact command, setting, or value to apply, verbatim.' },
|
|
645
663
|
verify: { type: 'string', description: 'How the operator confirms it worked.' },
|
|
646
664
|
link: { type: 'string', description: 'HTTP(S) URL or repository-relative file path.' }
|
|
647
665
|
},
|
|
@@ -656,7 +674,7 @@ const tools = [
|
|
|
656
674
|
deferredWork: {
|
|
657
675
|
type: 'array',
|
|
658
676
|
description:
|
|
659
|
-
'
|
|
677
|
+
'Recommended new objective outside this mission (for example an out-of-scope bug). Name the component or file and why it was left. Omit queued future objectives, leftover current-objective work, and human follow-up (those belong in humanActions).'
|
|
660
678
|
},
|
|
661
679
|
assumptions: { type: 'array', description: 'Material implementation assumptions.' }
|
|
662
680
|
},
|
|
@@ -852,7 +870,8 @@ async function callOverlordTool(name, args) {
|
|
|
852
870
|
return runProtocol('create', {
|
|
853
871
|
...(optionalString(args, 'projectId')
|
|
854
872
|
? { 'project-id': requiredString(args, 'projectId') }
|
|
855
|
-
: {
|
|
873
|
+
: {}),
|
|
874
|
+
...(args.unassignedToProject === true ? { 'unassigned-to-project': true } : {}),
|
|
856
875
|
objective: requiredString(args, 'objective'),
|
|
857
876
|
...(optionalString(args, 'title') ? { title: requiredString(args, 'title') } : {}),
|
|
858
877
|
...(optionalString(args, 'resourceKey')
|
|
@@ -873,7 +892,7 @@ async function callOverlordTool(name, args) {
|
|
|
873
892
|
}
|
|
874
893
|
if (name === 'overlord_create_inbox_item') {
|
|
875
894
|
return runProtocol('create', {
|
|
876
|
-
|
|
895
|
+
'unassigned-to-project': true,
|
|
877
896
|
title: requiredString(args, 'title'),
|
|
878
897
|
objective: requiredString(args, 'objective')
|
|
879
898
|
});
|
|
@@ -1209,7 +1228,7 @@ process.stdin.on('data', async chunk => {
|
|
|
1209
1228
|
result: {
|
|
1210
1229
|
protocolVersion: PROTOCOL_VERSION,
|
|
1211
1230
|
capabilities: { tools: { listChanged: false } },
|
|
1212
|
-
serverInfo: { name: 'overlord-__OVERLORD_ADAPTER_KEY__', version: '0.3.
|
|
1231
|
+
serverInfo: { name: 'overlord-__OVERLORD_ADAPTER_KEY__', version: '0.3.46' }
|
|
1213
1232
|
}
|
|
1214
1233
|
});
|
|
1215
1234
|
continue;
|
package/dist/index.js
CHANGED
|
@@ -38450,15 +38450,16 @@ delete-objectives:
|
|
|
38450
38450
|
|
|
38451
38451
|
create:
|
|
38452
38452
|
Purpose:
|
|
38453
|
-
Create a draft mission without attaching.
|
|
38454
|
-
|
|
38455
|
-
|
|
38453
|
+
Create a draft mission without attaching. A project must be named
|
|
38454
|
+
explicitly; use --unassigned-to-project only for deliberate account-owned
|
|
38455
|
+
inbox capture.
|
|
38456
38456
|
Required:
|
|
38457
38457
|
--objective "<text>" or --objectives-json / --objectives-file <path|->
|
|
38458
38458
|
Optional:
|
|
38459
38459
|
--title <text>
|
|
38460
|
-
--project-id <id>
|
|
38461
|
-
--
|
|
38460
|
+
--project-id <id> Required for a project mission; never inferred
|
|
38461
|
+
--unassigned-to-project Intentionally create an account-owned inbox item
|
|
38462
|
+
--inbox Compatibility alias for --unassigned-to-project
|
|
38462
38463
|
--assigned-to <id> Workspace member to own the mission (meaningless on the inbox fallback)
|
|
38463
38464
|
--auto-advance / --no-auto-advance
|
|
38464
38465
|
Add matching objectives to the authoritative Run Queue. Defaults to off.
|
|
@@ -38475,9 +38476,9 @@ prompt:
|
|
|
38475
38476
|
Create a mission and attach to it in one call.
|
|
38476
38477
|
Required:
|
|
38477
38478
|
--objective "<text>" or --objectives-json / --objectives-file <path|->
|
|
38479
|
+
--project-id <id>
|
|
38478
38480
|
Optional:
|
|
38479
38481
|
--title <text>
|
|
38480
|
-
--project-id <id>
|
|
38481
38482
|
--agent <identifier>
|
|
38482
38483
|
--model <identifier>
|
|
38483
38484
|
--external-session-id <id>
|
|
@@ -38501,9 +38502,9 @@ record-work:
|
|
|
38501
38502
|
Required:
|
|
38502
38503
|
--objective "<text>" (or positional, or an "objective" field in --payload-json)
|
|
38503
38504
|
--summary or --summary-file <path|->
|
|
38505
|
+
--project-id <id>
|
|
38504
38506
|
Optional:
|
|
38505
38507
|
--title <text>
|
|
38506
|
-
--project-id <id>
|
|
38507
38508
|
--assigned-to <id> Workspace member to own the mission
|
|
38508
38509
|
--artifacts-json / --artifacts-file <path|->
|
|
38509
38510
|
--change-rationales-json / --change-rationales-file <path|->
|
|
@@ -38575,8 +38576,11 @@ deliver:
|
|
|
38575
38576
|
The payload may also include deliveryReport: { schemaVersion: 1, agentReport: {
|
|
38576
38577
|
humanActions, tradeoffsMade, knownRisks, deferredWork, assumptions } }. Use empty arrays
|
|
38577
38578
|
when none apply. Human actions exclude Git operations and routine review/testing.
|
|
38578
|
-
|
|
38579
|
-
|
|
38579
|
+
Deferred work is only a recommended new objective that is not part of this mission
|
|
38580
|
+
(for example an out-of-scope bug). Name the component or file involved and say why
|
|
38581
|
+
the work was left. Never list work already covered by this mission's future
|
|
38582
|
+
objectives, leftover slices of the current objective, or human implementation
|
|
38583
|
+
follow-up (those belong in humanActions). Use an empty array when nothing qualifies.
|
|
38580
38584
|
Human action shape (each item in agentReport.humanActions):
|
|
38581
38585
|
{
|
|
38582
38586
|
"action": "Add GEMINI_API_KEY to the production backend service on Railway.", // required. one imperative sentence: what, where, which value.
|