teamshare-bridge 0.26.25 → 0.27.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.
Files changed (41) hide show
  1. package/dist/cli/commands/build.js +48 -22
  2. package/dist/cli/commands/build.js.map +1 -1
  3. package/dist/cli/commands/plan.js +40 -2
  4. package/dist/cli/commands/plan.js.map +1 -1
  5. package/dist/cli/commands/planner.js +3 -1
  6. package/dist/cli/commands/planner.js.map +1 -1
  7. package/dist/cli/commands/research.js +38 -1
  8. package/dist/cli/commands/research.js.map +1 -1
  9. package/dist/cli/commands/run.js +54 -3
  10. package/dist/cli/commands/run.js.map +1 -1
  11. package/dist/cli/commands/worker.js +52 -59
  12. package/dist/cli/commands/worker.js.map +1 -1
  13. package/dist/cli/commands/workflow.js +36 -2
  14. package/dist/cli/commands/workflow.js.map +1 -1
  15. package/dist/lib/api-content.d.ts +38 -0
  16. package/dist/lib/api-content.js +14 -0
  17. package/dist/lib/api-content.js.map +1 -1
  18. package/dist/lib/brief.d.ts +12 -0
  19. package/dist/lib/brief.js +10 -7
  20. package/dist/lib/brief.js.map +1 -1
  21. package/dist/lib/git/git-finalize.d.ts +2 -0
  22. package/dist/lib/git/git-finalize.js +32 -5
  23. package/dist/lib/git/git-finalize.js.map +1 -1
  24. package/dist/lib/git/git-pipeline.d.ts +3 -2
  25. package/dist/lib/git/git-pipeline.js.map +1 -1
  26. package/dist/lib/git/git-presence.js +1 -1
  27. package/dist/lib/git/git-presence.js.map +1 -1
  28. package/dist/lib/git/index.d.ts +2 -2
  29. package/dist/lib/git/index.js +4 -1
  30. package/dist/lib/git/index.js.map +1 -1
  31. package/dist/lib/git/pr-token.d.ts +74 -16
  32. package/dist/lib/git/pr-token.js +160 -16
  33. package/dist/lib/git/pr-token.js.map +1 -1
  34. package/dist/lib/run-report.d.ts +38 -11
  35. package/dist/lib/run-report.js +137 -88
  36. package/dist/lib/run-report.js.map +1 -1
  37. package/dist/lib/tools/pptx-deck.d.ts +90 -0
  38. package/dist/lib/tools/pptx-deck.js +1302 -147
  39. package/dist/lib/tools/pptx-deck.js.map +1 -1
  40. package/package.json +1 -1
  41. package/skills/teamshare-cdd/SKILL.md +219 -215
@@ -1 +1 @@
1
- {"version":3,"file":"pptx-deck.js","sourceRoot":"","sources":["../../../src/lib/tools/pptx-deck.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pptx-deck.js","sourceRoot":"","sources":["../../../src/lib/tools/pptx-deck.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "teamshare-bridge",
3
- "version": "0.26.25",
3
+ "version": "0.27.0",
4
4
  "description": "Local bridge for TeamShare agents - CLI session runner, auto-wake WebSocket daemon, and teamshare:// protocol handler.",
5
5
  "type": "commonjs",
6
6
  "license": "MIT",
@@ -1,216 +1,220 @@
1
- ---
2
- name: teamshare-cdd
3
- description: Documents-driven development for TeamShare. Before any code, find and read the project's documents in the Documents tab (virtual folders: docs/, agents/<you>/tasks/<taskId>/). Write the task-titled plan note BEFORE starting, keep progress.md/notes updated while working (update_document_note), and close with summary.md. Uploads and markdown notes live in Cloudinary-backed virtual folders, never loose files.
4
- ---
5
-
6
- # TeamShare Documents-Driven Development (CDD)
7
-
8
- You are working a task in a TeamShare project. In TeamShare, **the project's
9
- Documents tab is the source of truth** — the same way `docs/` + `AGENTS.md`
10
- drive TeamShare's own development at the repo root. Documents are organized
11
- in **virtual folders** (a lowercase path stored on each document; the UI
12
- renders them as a tree). Your job is to work from the docs, write the docs,
13
- and leave the task better documented than you found it.
14
-
15
- ## The document library convention
16
-
17
- Every project document carries a `folderPath` (lowercase kebab segments, `/`
18
- = root, max 8 levels). The folders an agent creates MUST follow this layout:
19
-
20
- ```
21
- docs/ <- shared, project-wide knowledge
22
- ├── contracts/ <- API/endpoint contract notes
23
- ├── adr/ <- ADR-<n>-<title>.md architecture decisions
24
- └── guides/ <- how-to guides for humans + agents
25
- agents/
26
- └── <agent-slug>/ <- ONE folder per agent (short, stable slug)
27
- └── tasks/
28
- └── <taskId>/ <- per-task workspace
29
- ├── <task-slug>-plan.md <- written BEFORE starting the work
30
- │ (named from the task title, NEVER a bare
31
- │ `plan.md` — six tasks must not produce six
32
- │ identical filenames)
33
- ├── progress.md <- updated while working (or rely on subtasks)
34
- └── summary.md <- written on completion
35
- reports/ <- milestone reports (optional)
36
- ```
37
-
38
- Rules that are not optional:
39
-
40
- - **Kebab-case** document names ending in `.md` (`.markdown`/`.txt` ok).
41
- - **Lowercase** folder paths; no spaces, no leading/trailing slashes.
42
- - **One folder per agent, one subfolder per task.** Never write outside your
43
- own folder except into `docs/**` when you add shared knowledge.
44
- - Document names are unique enough to be obvious (`<task-slug>-plan.md`,
45
- `progress.md`, `summary.md`, `adr-001-auth-rbac.md`). A plan note named
46
- exactly `plan.md` is forbidden: with N tasks the Documents tab shows N
47
- identical rows and nobody can tell which plan belongs to which task.
48
-
49
- ## The workflow — three gates
50
-
51
- ### START (before touching any code)
52
- 1. **Read the cloud project context** via `get_project_context` — the
53
- structured AGENTS.md every agent maintains (overview, architecture,
54
- structure, workflows, conventions, gotchas). This is your map of the
55
- codebase; it tells you where things live BEFORE you explore.
56
- **Section-granular reads:** pass `sections: ["..."]` and fetch ONLY what
57
- you need for this task (e.g. `["conventions","gotchas"]`) — never pull the
58
- whole document to read one section. Omit `sections` only when you
59
- genuinely need everything.
60
- 2. `list_document_folders` + `list_documents` for the project.
61
- 3. Read `docs/contracts`, `docs/adr`, `docs/guides` that exist — they govern
62
- your implementation (same way `docs/api-contract.md` and
63
- `docs/ui-style-guide.md` govern TeamShare's repos).
64
- 4. Read your own task folder if this is a `--continue`/resumed session.
65
- 5. **Write the plan note FIRST** via `create_document`: goal, decisions, files to
66
- touch, step list. Name it `<task-slug>-plan.md` from the task title
67
- (lowercase, words joined with `-`, e.g. `fix-login-redirect-plan.md`) —
68
- never a bare `plan.md`. On a re-plan, list the folder first and reuse the
69
- existing `*-plan.md` name so it versions in place. No code until the plan
70
- note exists.
71
- 6. **Move the task to `in_progress`** via `update_task` — you are now working it.
72
-
73
- ### DO (while working)
74
- 7. Check off subtasks (`update_subtask done: true`) and update
75
- `progress.md`/the plan note via `update_document_note` as you go — the human
76
- watches the app.
77
- 8. **Checklist items — ALWAYS list first.** Before creating checklist items,
78
- call `list_checklist_items` (pass `taskId` or `subtaskId`) to see what
79
- already exists. Use `update_checklist_item` with the existing ID to toggle
80
- done/rename — do NOT create duplicates. Only call `create_checklist_item`
81
- for genuinely new items. The `get_task` response also includes
82
- `checklistItems` for task-level items, and `list_subtasks` includes them
83
- per subtask.
84
- 9. When you make an architecture decision worth keeping, add it to `docs/adr`
85
- as `ADR-<n>-<title>.md` (short: context → decision → consequences).
86
- 10. Blocked? Use `ask_human` and include a pointer to the relevant note.
87
-
88
- ### DONE (before closing)
89
- 11. **Move the task to `in_review`** via `update_task` — signals the human
90
- to review your work.
91
- 12. Write `summary.md`: what you built, why, how it maps to the plan, links to
92
- related docs, follow-ups.
93
- 13. Post the closing comment referencing the summary doc.
94
- 14. Never leave a task without a plan note + `summary.md` notes.
95
- 15. **Git is the runner's job.** After your session the bridge automatically
96
- commits everything in the working tree on branch
97
- `teamshare/<taskId8>`, pushes it and opens a pull request — so do NOT
98
- run git commit/branch/push yourself and never leave work outside the
99
- linked folder; just save your files before finishing. The closing
100
- comment reports the commit/push/PR outcome (or why it was skipped).
101
-
102
- **CRITICAL: Multi-repo structure.** TeamShare is NOT a single git repo at the
103
- root. Each app folder (`frontend/`, `teamshare-backend/`, `teamshare-mobile-app/`,
104
- `teamshare-bridge/`) is its own independent git repository. The root directory is
105
- NOT a git repository. Running `git add`, `git commit`, or `git push` from the root
106
- will fail with "not a git repository" errors. See `docs/agent-guides/multi-repo-git.md`
107
- for the complete workflow.
108
- 16. **Update the project context when reality changed** (mandatory). If your
109
- work added/moved/deleted folders or files that matter, changed commands or
110
- workflows, or established new conventions — call `update_project_context`
111
- with ONLY the section(s) you actually changed and `append: true`, sending
112
- just your addition as the value (`structure`, `workflows`, `conventions`,
113
- `architecture`, `gotchas`). **Section-granular writes:** the backend
114
- merges your addition into the existing section server-side — never
115
- re-send untouched or pre-merged section text, and never re-send whole
116
- sections you only appended to. `append` needs no `baseVersion`; a full
117
- replace still does. BEFORE resolving a task, reflect the soft sections:
118
- call `reflect_context` with the `overview`/`architecture`/`conventions`/
119
- `gotchas` additions you decided are durable (you are the AI that decides —
120
- no other model runs on the hub; `update_project_context` handles the
121
- structural `structure`/`workflows` sections). Review `gotchas` and
122
- `conventions`: anything you learned about this codebase while working
123
- (env quirks, patterns that surprised you) belongs there — append those
124
- points as new bullets. A stale version on a replace means another writer
125
- got there first: re-read via `get_project_context` (with `sections`),
126
- merge, retry. Appending past the 60 000-char section cap fails with
127
- `SECTION_TOO_LARGE` — split the change instead. The next agent depends on
128
- this being accurate — do not leave the map stale.
129
-
130
- ## Task status progression (guidance)
131
-
132
- Status can be set to **any value from any state** — the system allows free
133
- transitions and reversal. No blocking errors. Use this as a guideline:
134
-
135
- ```
136
- open → in_progress → in_review
137
- ```
138
-
139
- | When | Set status to | Why |
140
- |---|---|---|
141
- | You start working the task | `in_progress` | You claimed it, work has begun |
142
- | Work is done, ready for human review | `in_review` | Human should review and approve |
143
-
144
- **Tip:** Set status as you go. The human sees live progress in the app.
145
- You can always reverse (e.g. `in_progress` → `open` if you need to reassess).
146
- Do NOT set `resolved` or `closed` — only humans can approve resolution and close tasks.
147
- The highest status you may set is `in_review`.
148
-
149
- ### Claim discipline (hard rule)
150
-
151
- If you called `claim_task` on a task, you MUST call `release_task` for it
152
- before your session ends — **regardless of the task's status** (even when
153
- it stays `open` or `in_progress` for someone else to review). An unreleased
154
- claim blocks every other agent from touching that task for the whole
155
- 30-minute lease. The bridge also auto-releases all claims made by your
156
- session at exit, but never rely on that: release explicitly as soon as
157
- your work is done.
158
-
159
- ## Build mode (IMP-700) — the project's workflow engine
160
-
161
- Some projects run **build mode**: the project has a build agent, and tasks
162
- marked **ready for dev** (`readyForDev: true`) form an ordered build queue
163
- (`sortOrder` asc, `createdAt` asc) that the agent works **strictly one at a
164
- time, fully completing each**. When you are working a task as part of a build
165
- run, the following rules apply ON TOP of everything above:
166
-
167
- - **Ready for dev is the gate.** A task stays out of the build queue until a
168
- human (or the planner) sets `readyForDev: true`. The queue only contains
169
- `readyForDev=true AND status=open` tasks (plus blocked in-progress ones).
170
- - **Strict order, full completion.** Work the queue in exact order — never
171
- pick a later task while an earlier one is open. Do not move on until the
172
- current task is genuinely complete: build passes, plan note written first,
173
- subtasks checked off, `summary.md` written, status moved to `in_review`.
174
- - **Failure protocol (never block the queue).** If a task cannot be finished,
175
- the BUILD LOOP (not you) handles it: it leaves a `[question]` comment on the
176
- task (marked with the literal prefix `[question]`) and a message in the
177
- project's `#agent-questions` channel, then continues with the next ready
178
- task. When a human answers, the loop resumes the skipped task automatically.
179
- - **Planning (`--draft`).** When the human asks you to plan a build run from a
180
- goal, create the tasks yourself with `create_task`:
181
- - `readyForDev: true` so they enter the queue,
182
- - increasing `sortOrder` (1, 2, 3, ...) so they are worked strictly in order,
183
- - dependencies first (a task that unblocks others comes before them),
184
- - write the plan into `agents/<your-slug>/tasks/<taskId>/<task-slug>-plan.md`
185
- per task (named from the task title, never bare `plan.md`),
186
- and a shared `docs/guides/build-plan.md` note summarizing the order.
187
- - **Progress signals.** Push the task to `in_progress` when you start it and
188
- `in_review` when done — the build loop watches status to decide
189
- done vs. failed, so a task left in `in_progress` at the end of a session is
190
- treated as failed and skipped.
191
-
192
- ## Tools to use
193
-
194
- - `get_project_context <projectId>` — the cloud AGENTS.md (+ version). Pass
195
- `sections: ["conventions","gotchas", …]` to fetch ONLY what you need.
196
- - `update_project_context` — section-granular write: send ONLY the section(s)
197
- you changed with `append: true` (your addition only — the backend merges it;
198
- no `baseVersion` needed). Full replace still needs `baseVersion` (409 =
199
- re-read + merge). Never re-send untouched sections.
200
- - `list_document_folders <projectId>` — the tree, with per-folder counts.
201
- - `list_documents <projectId>` — files (optionally filter by folder).
202
- - `read_document <documentId>` — content (notes return their markdown body).
203
- - `create_document` — write a note (`name`, `content`, `folderPath`).
204
- - `update_document_note <documentId> <content>` — replace a note's body.
205
- - Uploads (PDFs, images, binaries) are Cloudinary-hosted into
206
- `documents/<folderPath>` and recorded as file documents — mirror the same
207
- folder convention.
208
-
209
- ## References
210
-
211
- - `docs/agent-tasks/agent-hub-connection.md` — the agent contract.
212
- - `docs/api-contract.md` — response envelope, pagination, type mirroring.
213
- - TeamShare root `docs/` + `IMPLEMENTATION_TRACKER.md` — the convention this
214
- skill mirrors.
215
- - Backend: `GET /documents/folders`, `POST /documents/note`,
1
+ ---
2
+ name: teamshare-cdd
3
+ description: Documents-driven development for TeamShare. Before any code, find and read the project's documents in the Documents tab (virtual folders: docs/, agents/<you>/tasks/<taskId>/). Write the task-titled plan note BEFORE starting, keep progress.md/notes updated while working (update_document_note), and close with summary.md. Uploads and markdown notes live in Cloudinary-backed virtual folders, never loose files.
4
+ ---
5
+
6
+ # TeamShare Documents-Driven Development (CDD)
7
+
8
+ You are working a task in a TeamShare project. In TeamShare, **the project's
9
+ Documents tab is the source of truth** — the same way `docs/` + `AGENTS.md`
10
+ drive TeamShare's own development at the repo root. Documents are organized
11
+ in **virtual folders** (a lowercase path stored on each document; the UI
12
+ renders them as a tree). Your job is to work from the docs, write the docs,
13
+ and leave the task better documented than you found it.
14
+
15
+ ## The document library convention
16
+
17
+ Every project document carries a `folderPath` (lowercase kebab segments, `/`
18
+ = root, max 8 levels). The folders an agent creates MUST follow this layout:
19
+
20
+ ```
21
+ docs/ <- shared, project-wide knowledge
22
+ ├── contracts/ <- API/endpoint contract notes
23
+ ├── adr/ <- ADR-<n>-<title>.md architecture decisions
24
+ └── guides/ <- how-to guides for humans + agents
25
+ agents/
26
+ └── <agent-slug>/ <- ONE folder per agent (short, stable slug)
27
+ └── tasks/
28
+ └── <taskId>/ <- per-task workspace
29
+ ├── <task-slug>-plan.md <- written BEFORE starting the work
30
+ │ (named from the task title, NEVER a bare
31
+ │ `plan.md` — six tasks must not produce six
32
+ │ identical filenames)
33
+ ├── progress.md <- updated while working (or rely on subtasks)
34
+ └── summary.md <- written on completion
35
+ reports/ <- milestone reports (optional)
36
+ ```
37
+
38
+ Rules that are not optional:
39
+
40
+ - **Kebab-case** document names ending in `.md` (`.markdown`/`.txt` ok).
41
+ - **Lowercase** folder paths; no spaces, no leading/trailing slashes.
42
+ - **One folder per agent, one subfolder per task.** Never write outside your
43
+ own folder except into `docs/**` when you add shared knowledge.
44
+ - Document names are unique enough to be obvious (`<task-slug>-plan.md`,
45
+ `progress.md`, `summary.md`, `adr-001-auth-rbac.md`). A plan note named
46
+ exactly `plan.md` is forbidden: with N tasks the Documents tab shows N
47
+ identical rows and nobody can tell which plan belongs to which task.
48
+
49
+ ## The workflow — three gates
50
+
51
+ ### START (before touching any code)
52
+ 1. **Read the cloud project context** via `get_project_context` — the
53
+ structured AGENTS.md every agent maintains (overview, architecture,
54
+ structure, workflows, conventions, gotchas). This is your map of the
55
+ codebase; it tells you where things live BEFORE you explore.
56
+ **Section-granular reads:** pass `sections: ["..."]` and fetch ONLY what
57
+ you need for this task (e.g. `["conventions","gotchas"]`) — never pull the
58
+ whole document to read one section. Omit `sections` only when you
59
+ genuinely need everything.
60
+ 2. `list_document_folders` + `list_documents` for the project.
61
+ 3. Read `docs/contracts`, `docs/adr`, `docs/guides` that exist — they govern
62
+ your implementation (same way `docs/api-contract.md` and
63
+ `docs/ui-style-guide.md` govern TeamShare's repos).
64
+ 4. Read your own task folder if this is a `--continue`/resumed session.
65
+ 5. **Write the plan note FIRST** via `create_document`: goal, decisions, files to
66
+ touch, step list. Name it `<task-slug>-plan.md` from the task title
67
+ (lowercase, words joined with `-`, e.g. `fix-login-redirect-plan.md`) —
68
+ never a bare `plan.md`. On a re-plan, list the folder first and reuse the
69
+ existing `*-plan.md` name so it versions in place. No code until the plan
70
+ note exists.
71
+ 6. **Move the task to `in_progress`** via `update_task` — you are now working it.
72
+
73
+ ### DO (while working)
74
+ 7. Check off subtasks (`update_subtask done: true`) and update
75
+ `progress.md`/the plan note via `update_document_note` as you go — the human
76
+ watches the app. **Leave a run-report trail:** runner-owned sessions write
77
+ the narrative to the per-run file named in the task brief (`## Run report`)
78
+ — the runner publishes it; interactive sessions create the report with
79
+ `create_document` (see the session instructions) and attach it with
80
+ `attach_document_to_task` before finishing.
81
+ 8. **Checklist items — ALWAYS list first.** Before creating checklist items,
82
+ call `list_checklist_items` (pass `taskId` or `subtaskId`) to see what
83
+ already exists. Use `update_checklist_item` with the existing ID to toggle
84
+ done/rename — do NOT create duplicates. Only call `create_checklist_item`
85
+ for genuinely new items. The `get_task` response also includes
86
+ `checklistItems` for task-level items, and `list_subtasks` includes them
87
+ per subtask.
88
+ 9. When you make an architecture decision worth keeping, add it to `docs/adr`
89
+ as `ADR-<n>-<title>.md` (short: context → decision → consequences).
90
+ 10. Blocked? Use `ask_human` and include a pointer to the relevant note.
91
+
92
+ ### DONE (before closing)
93
+ 11. **Move the task to `in_review`** via `update_task` — signals the human
94
+ to review your work.
95
+ 12. Write `summary.md`: what you built, why, how it maps to the plan, links to
96
+ related docs, follow-ups.
97
+ 13. Post the closing comment referencing the summary doc.
98
+ 14. Never leave a task without a plan note + `summary.md` notes.
99
+ 15. **Git is the runner's job.** After your session the bridge automatically
100
+ commits everything in the working tree on branch
101
+ `teamshare/<taskId8>`, pushes it and opens a pull request — so do NOT
102
+ run git commit/branch/push yourself and never leave work outside the
103
+ linked folder; just save your files before finishing. The closing
104
+ comment reports the commit/push/PR outcome (or why it was skipped).
105
+
106
+ **CRITICAL: Multi-repo structure.** TeamShare is NOT a single git repo at the
107
+ root. Each app folder (`frontend/`, `teamshare-backend/`, `teamshare-mobile-app/`,
108
+ `teamshare-bridge/`) is its own independent git repository. The root directory is
109
+ NOT a git repository. Running `git add`, `git commit`, or `git push` from the root
110
+ will fail with "not a git repository" errors. See `docs/agent-guides/multi-repo-git.md`
111
+ for the complete workflow.
112
+ 16. **Update the project context when reality changed** (mandatory). If your
113
+ work added/moved/deleted folders or files that matter, changed commands or
114
+ workflows, or established new conventions — call `update_project_context`
115
+ with ONLY the section(s) you actually changed and `append: true`, sending
116
+ just your addition as the value (`structure`, `workflows`, `conventions`,
117
+ `architecture`, `gotchas`). **Section-granular writes:** the backend
118
+ merges your addition into the existing section server-side — never
119
+ re-send untouched or pre-merged section text, and never re-send whole
120
+ sections you only appended to. `append` needs no `baseVersion`; a full
121
+ replace still does. BEFORE resolving a task, reflect the soft sections:
122
+ call `reflect_context` with the `overview`/`architecture`/`conventions`/
123
+ `gotchas` additions you decided are durable (you are the AI that decides —
124
+ no other model runs on the hub; `update_project_context` handles the
125
+ structural `structure`/`workflows` sections). Review `gotchas` and
126
+ `conventions`: anything you learned about this codebase while working
127
+ (env quirks, patterns that surprised you) belongs there — append those
128
+ points as new bullets. A stale version on a replace means another writer
129
+ got there first: re-read via `get_project_context` (with `sections`),
130
+ merge, retry. Appending past the 60 000-char section cap fails with
131
+ `SECTION_TOO_LARGE` — split the change instead. The next agent depends on
132
+ this being accurate — do not leave the map stale.
133
+
134
+ ## Task status progression (guidance)
135
+
136
+ Status can be set to **any value from any state** — the system allows free
137
+ transitions and reversal. No blocking errors. Use this as a guideline:
138
+
139
+ ```
140
+ open → in_progress → in_review
141
+ ```
142
+
143
+ | When | Set status to | Why |
144
+ |---|---|---|
145
+ | You start working the task | `in_progress` | You claimed it, work has begun |
146
+ | Work is done, ready for human review | `in_review` | Human should review and approve |
147
+
148
+ **Tip:** Set status as you go. The human sees live progress in the app.
149
+ You can always reverse (e.g. `in_progress` → `open` if you need to reassess).
150
+ Do NOT set `resolved` or `closed` — only humans can approve resolution and close tasks.
151
+ The highest status you may set is `in_review`.
152
+
153
+ ### Claim discipline (hard rule)
154
+
155
+ If you called `claim_task` on a task, you MUST call `release_task` for it
156
+ before your session ends — **regardless of the task's status** (even when
157
+ it stays `open` or `in_progress` for someone else to review). An unreleased
158
+ claim blocks every other agent from touching that task for the whole
159
+ 30-minute lease. The bridge also auto-releases all claims made by your
160
+ session at exit, but never rely on that: release explicitly as soon as
161
+ your work is done.
162
+
163
+ ## Build mode (IMP-700) — the project's workflow engine
164
+
165
+ Some projects run **build mode**: the project has a build agent, and tasks
166
+ marked **ready for dev** (`readyForDev: true`) form an ordered build queue
167
+ (`sortOrder` asc, `createdAt` asc) that the agent works **strictly one at a
168
+ time, fully completing each**. When you are working a task as part of a build
169
+ run, the following rules apply ON TOP of everything above:
170
+
171
+ - **Ready for dev is the gate.** A task stays out of the build queue until a
172
+ human (or the planner) sets `readyForDev: true`. The queue only contains
173
+ `readyForDev=true AND status=open` tasks (plus blocked in-progress ones).
174
+ - **Strict order, full completion.** Work the queue in exact order — never
175
+ pick a later task while an earlier one is open. Do not move on until the
176
+ current task is genuinely complete: build passes, plan note written first,
177
+ subtasks checked off, `summary.md` written, status moved to `in_review`.
178
+ - **Failure protocol (never block the queue).** If a task cannot be finished,
179
+ the BUILD LOOP (not you) handles it: it leaves a `[question]` comment on the
180
+ task (marked with the literal prefix `[question]`) and a message in the
181
+ project's `#agent-questions` channel, then continues with the next ready
182
+ task. When a human answers, the loop resumes the skipped task automatically.
183
+ - **Planning (`--draft`).** When the human asks you to plan a build run from a
184
+ goal, create the tasks yourself with `create_task`:
185
+ - `readyForDev: true` so they enter the queue,
186
+ - increasing `sortOrder` (1, 2, 3, ...) so they are worked strictly in order,
187
+ - dependencies first (a task that unblocks others comes before them),
188
+ - write the plan into `agents/<your-slug>/tasks/<taskId>/<task-slug>-plan.md`
189
+ per task (named from the task title, never bare `plan.md`),
190
+ and a shared `docs/guides/build-plan.md` note summarizing the order.
191
+ - **Progress signals.** Push the task to `in_progress` when you start it and
192
+ `in_review` when done — the build loop watches status to decide
193
+ done vs. failed, so a task left in `in_progress` at the end of a session is
194
+ treated as failed and skipped.
195
+
196
+ ## Tools to use
197
+
198
+ - `get_project_context <projectId>` — the cloud AGENTS.md (+ version). Pass
199
+ `sections: ["conventions","gotchas", …]` to fetch ONLY what you need.
200
+ - `update_project_context` — section-granular write: send ONLY the section(s)
201
+ you changed with `append: true` (your addition only — the backend merges it;
202
+ no `baseVersion` needed). Full replace still needs `baseVersion` (409 =
203
+ re-read + merge). Never re-send untouched sections.
204
+ - `list_document_folders <projectId>` — the tree, with per-folder counts.
205
+ - `list_documents <projectId>` — files (optionally filter by folder).
206
+ - `read_document <documentId>` — content (notes return their markdown body).
207
+ - `create_document` — write a note (`name`, `content`, `folderPath`).
208
+ - `update_document_note <documentId> <content>` — replace a note's body.
209
+ - Uploads (PDFs, images, binaries) are Cloudinary-hosted into
210
+ `documents/<folderPath>` and recorded as file documents — mirror the same
211
+ folder convention.
212
+
213
+ ## References
214
+
215
+ - `docs/agent-tasks/agent-hub-connection.md` — the agent contract.
216
+ - `docs/api-contract.md` — response envelope, pagination, type mirroring.
217
+ - TeamShare root `docs/` + `IMPLEMENTATION_TRACKER.md` — the convention this
218
+ skill mirrors.
219
+ - Backend: `GET /documents/folders`, `POST /documents/note`,
216
220
  `PATCH /documents/:id/content`, `GET /documents/:id/raw`.