@kendoo.agentdesk/agentdesk 0.9.14 → 0.9.15

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/cli/agents.mjs CHANGED
@@ -276,11 +276,17 @@ function trackerCommands(tracker, config) {
276
276
  '```',
277
277
  ].join('\n'),
278
278
  agentComment: [
279
- 'Post a comment on Jira with key findings:',
279
+ 'Post a comment on Jira with key findings. IMPORTANT: Any URLs in the comment MUST use ADF inlineCard nodes so they render as clickable links:',
280
280
  '```bash',
281
281
  `curl -s -X POST -u "$JIRA_EMAIL:$JIRA_API_TOKEN" -H "Content-Type: application/json" \\`,
282
282
  ` "${baseUrl}/rest/api/3/issue/$TASK_ID/comment" \\`,
283
- ` -d '{"body":{"type":"doc","version":1,"content":[{"type":"paragraph","content":[{"type":"text","text":"<COMMENT>"}]}]}}'`,
283
+ ` -d '<ADF_BODY>'`,
284
+ '```',
285
+ 'For plain text: `{"type":"text","text":"..."}`',
286
+ 'For clickable URLs: `{"type":"inlineCard","attrs":{"url":"https://..."}}`',
287
+ 'Example body with a link:',
288
+ '```json',
289
+ '{"body":{"type":"doc","version":1,"content":[{"type":"paragraph","content":[{"type":"text","text":"Session: "},{"type":"inlineCard","attrs":{"url":"https://agentdesk.live/sessions/..."}}]}]}}',
284
290
  '```',
285
291
  ].join('\n'),
286
292
  transitionToReview: [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kendoo.agentdesk/agentdesk",
3
- "version": "0.9.14",
3
+ "version": "0.9.15",
4
4
  "description": "AI team orchestrator for Claude Code — run collaborative agent sessions from your terminal",
5
5
  "type": "module",
6
6
  "bin": {
package/prompts/team.md CHANGED
@@ -136,15 +136,36 @@ Keep comments to bullet points. The tracker should tell the story without the da
136
136
 
137
137
  Post comments using badge format with session link: {{SESSION_URL}}
138
138
 
139
+ ### Clickable URLs in Jira comments
140
+
141
+ IMPORTANT: Jira REST API v3 uses ADF (Atlassian Document Format). Plain text URLs are NOT clickable. Always use `inlineCard` nodes for any URL you post:
142
+
143
+ ```json
144
+ {"body":{"type":"doc","version":1,"content":[
145
+ {"type":"paragraph","content":[
146
+ {"type":"text","text":"Session: "},
147
+ {"type":"inlineCard","attrs":{"url":"https://agentdesk.live/sessions/..."}}
148
+ ]}
149
+ ]}}
150
+ ```
151
+
152
+ - Plain text: `{"type":"text","text":"some text"}`
153
+ - Clickable link: `{"type":"inlineCard","attrs":{"url":"<URL>"}}`
154
+ - Line break between paragraphs: use separate `{"type":"paragraph","content":[...]}` blocks
155
+
139
156
  ### Required tracker actions
140
157
 
141
- 1. **Session start (Jane):** Post "Team session started. Session: {{SESSION_URL}}" and transition to "In Progress":
158
+ 1. **Session start (Jane):** Post "Team session started" with clickable session link and transition to "In Progress":
142
159
  ```bash
143
160
  curl -s -u "$JIRA_EMAIL:$JIRA_API_TOKEN" "{{JIRA_BASE_URL}}/rest/api/3/issue/{{TASK_ID}}/transitions"
144
161
  # Find "In Progress" transition ID, then:
145
162
  curl -s -X POST -u "$JIRA_EMAIL:$JIRA_API_TOKEN" -H "Content-Type: application/json" \
146
163
  "{{JIRA_BASE_URL}}/rest/api/3/issue/{{TASK_ID}}/transitions" \
147
164
  -d '{"transition":{"id":"<TRANSITION_ID>"}}'
165
+ # Post session start comment with clickable link:
166
+ curl -s -X POST -u "$JIRA_EMAIL:$JIRA_API_TOKEN" -H "Content-Type: application/json" \
167
+ "{{JIRA_BASE_URL}}/rest/api/3/issue/{{TASK_ID}}/comment" \
168
+ -d '{"body":{"type":"doc","version":1,"content":[{"type":"paragraph","content":[{"type":"text","text":"Team session started. Session: "},{"type":"inlineCard","attrs":{"url":"{{SESSION_URL}}"}}]}]}}'
148
169
  ```
149
170
 
150
171
  2. **PR created (Bart):** Post PR link and attach as remote link:
@@ -154,14 +175,50 @@ Post comments using badge format with session link: {{SESSION_URL}}
154
175
  -d '{"object":{"url":"$PR_URL","title":"Pull Request"}}'
155
176
  ```
156
177
 
157
- 3. **Session end (Jane):** Transition to "In Review" and post summary.
178
+ 3. **Session end (Jane):** Transition to "In Review", attach session protocol, and post summary.
179
+
180
+ ### Session protocol attachment
181
+
182
+ At the end of the session, Jane MUST create and attach a session protocol file to the Jira task. This is a text file summarizing the entire session:
183
+
184
+ ```bash
185
+ cat > /tmp/session-protocol.txt << 'PROTOCOL'
186
+ Session Protocol — {{TASK_ID}}
187
+ Date: $(date -u +"%Y-%m-%d %H:%M UTC")
188
+ Session: {{SESSION_URL}}
189
+
190
+ ## Agents
191
+ <list each agent and their role>
192
+
193
+ ## Plan
194
+ <brief plan summary>
195
+
196
+ ## Changes Made
197
+ <list of files changed and what was done>
198
+
199
+ ## Decisions
200
+ <key technical decisions and reasoning>
201
+
202
+ ## PR
203
+ <PR URL if created>
204
+
205
+ ## Status
206
+ <final status — e.g., "In Review", "Blocked", etc.>
207
+ PROTOCOL
208
+
209
+ # Attach to Jira task
210
+ curl -s -X POST -u "$JIRA_EMAIL:$JIRA_API_TOKEN" \
211
+ -H "X-Atlassian-Token: no-check" \
212
+ -F "file=@/tmp/session-protocol.txt" \
213
+ "{{JIRA_BASE_URL}}/rest/api/3/issue/{{TASK_ID}}/attachments"
214
+ ```
158
215
 
159
216
  ### Agent tracker comments
160
217
 
161
- After completing work, agents post a brief comment on the tracker with key findings:
218
+ After completing work, agents post a brief comment on the tracker with key findings. All URLs MUST use inlineCard:
162
219
  - **Dennis**: Files changed, technical decisions
163
220
  - **Sam**: Architecture concerns or clean audit
164
- - **Bart**: PR link, test results, screenshots
221
+ - **Bart**: PR link (as inlineCard), test results, screenshots
165
222
 
166
223
  Keep comments to bullet points. The tracker should tell the story without the dashboard.
167
224
  {{/JIRA}}