@kendoo.agentdesk/agentdesk 0.4.3 → 0.4.4
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/prompts/team.md +80 -1
package/package.json
CHANGED
package/prompts/team.md
CHANGED
|
@@ -152,13 +152,92 @@ When a task involves UI changes, the team MUST capture screenshots of the affect
|
|
|
152
152
|
kill $DEV_PID 2>/dev/null
|
|
153
153
|
```
|
|
154
154
|
|
|
155
|
-
4. Upload screenshots to the task tracker
|
|
155
|
+
4. Upload screenshots to the task tracker (see upload instructions below).
|
|
156
156
|
|
|
157
157
|
**When to capture:**
|
|
158
158
|
- After ALL code changes, reviews, and fixes are complete (during Bart's review step)
|
|
159
159
|
- Before creating the PR
|
|
160
160
|
- Only capture the pages/views that were actually affected by the changes
|
|
161
161
|
|
|
162
|
+
### Uploading screenshots to the task tracker
|
|
163
|
+
|
|
164
|
+
{{#LINEAR}}
|
|
165
|
+
**Linear — Upload & attach screenshots:**
|
|
166
|
+
|
|
167
|
+
Step 1: Get an upload URL from Linear:
|
|
168
|
+
```bash
|
|
169
|
+
UPLOAD_RESPONSE=$(curl -s -X POST https://api.linear.app/graphql \
|
|
170
|
+
-H "Authorization: $LINEAR_API_KEY" \
|
|
171
|
+
-H "Content-Type: application/json" \
|
|
172
|
+
-d '{"query":"mutation { fileUpload(contentType: \"image/png\", filename: \"screenshot.png\", size: '$(stat -f%z screenshot.png)') { uploadFile { uploadUrl assetUrl headers { key value } } } }"}')
|
|
173
|
+
|
|
174
|
+
UPLOAD_URL=$(echo "$UPLOAD_RESPONSE" | python3 -c "import sys,json; d=json.load(sys.stdin); print(d['data']['fileUpload']['uploadFile']['uploadUrl'])")
|
|
175
|
+
ASSET_URL=$(echo "$UPLOAD_RESPONSE" | python3 -c "import sys,json; d=json.load(sys.stdin); print(d['data']['fileUpload']['uploadFile']['assetUrl'])")
|
|
176
|
+
HEADERS=$(echo "$UPLOAD_RESPONSE" | python3 -c "import sys,json; d=json.load(sys.stdin); h=d['data']['fileUpload']['uploadFile']['headers']; print(' '.join([f'-H \"{x[\"key\"]}: {x[\"value\"]}\"' for x in h]))")
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
Step 2: Upload the file to the signed URL:
|
|
180
|
+
```bash
|
|
181
|
+
eval curl -s -X PUT "$UPLOAD_URL" \
|
|
182
|
+
-H "Content-Type: image/png" \
|
|
183
|
+
$HEADERS \
|
|
184
|
+
--data-binary @screenshot.png
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
Step 3: Post a comment with the uploaded image URLs (as a SEPARATE comment, not inside badge blocks):
|
|
188
|
+
```bash
|
|
189
|
+
curl -s -X POST https://api.linear.app/graphql \
|
|
190
|
+
-H "Authorization: $LINEAR_API_KEY" \
|
|
191
|
+
-H "Content-Type: application/json" \
|
|
192
|
+
-d '{"query":"mutation { commentCreate(input: { issueId: \"'$ISSUE_ID'\", body: \"\n\nDesktop view.\n\n\n\nMobile view.\" }) { success } }"}'
|
|
193
|
+
```
|
|
194
|
+
|
|
195
|
+
Repeat steps 1-2 for each screenshot file (desktop, mobile). Use the ASSET_URL values in the comment body.
|
|
196
|
+
{{/LINEAR}}
|
|
197
|
+
|
|
198
|
+
{{#JIRA}}
|
|
199
|
+
**Jira — Upload & attach screenshots:**
|
|
200
|
+
|
|
201
|
+
Upload each screenshot as an attachment:
|
|
202
|
+
```bash
|
|
203
|
+
curl -s -X POST "$JIRA_BASE_URL/rest/api/3/issue/{{TASK_ID}}/attachments" \
|
|
204
|
+
-u "$JIRA_EMAIL:$JIRA_API_TOKEN" \
|
|
205
|
+
-H "X-Atlassian-Token: no-check" \
|
|
206
|
+
-F "file=@screenshots/desktop.png" \
|
|
207
|
+
-F "file=@screenshots/mobile.png"
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
Then post a comment referencing the attachments:
|
|
211
|
+
```bash
|
|
212
|
+
curl -s -X POST "$JIRA_BASE_URL/rest/api/3/issue/{{TASK_ID}}/comment" \
|
|
213
|
+
-u "$JIRA_EMAIL:$JIRA_API_TOKEN" \
|
|
214
|
+
-H "Content-Type: application/json" \
|
|
215
|
+
-d '{"body":{"type":"doc","version":1,"content":[{"type":"paragraph","content":[{"type":"text","text":"Screenshots of affected views:"}]},{"type":"mediaGroup","content":[{"type":"media","attrs":{"type":"file","collection":"","id":"desktop.png"}},{"type":"media","attrs":{"type":"file","collection":"","id":"mobile.png"}}]}]}}'
|
|
216
|
+
```
|
|
217
|
+
{{/JIRA}}
|
|
218
|
+
|
|
219
|
+
{{#GITHUB}}
|
|
220
|
+
**GitHub — Upload & attach screenshots:**
|
|
221
|
+
|
|
222
|
+
GitHub supports drag-and-drop image uploads in comments. To upload via CLI, use the GitHub API:
|
|
223
|
+
```bash
|
|
224
|
+
# Upload image to GitHub's user content (via issue comment with image)
|
|
225
|
+
# The simplest approach: create a comment with base64-embedded images or use gh CLI
|
|
226
|
+
gh issue comment {{TASK_ID}} --body "$(cat <<SCREENSHOT_EOF
|
|
227
|
+
**Screenshots of affected views:**
|
|
228
|
+
|
|
229
|
+
Desktop (1280x800):
|
|
230
|
+
.read()).decode())"))
|
|
231
|
+
|
|
232
|
+
Mobile (375x812):
|
|
233
|
+
.read()).decode())"))
|
|
234
|
+
SCREENSHOT_EOF
|
|
235
|
+
)"
|
|
236
|
+
```
|
|
237
|
+
|
|
238
|
+
Note: If base64 images are too large, upload them as release assets or to a gist and reference the raw URLs instead.
|
|
239
|
+
{{/GITHUB}}
|
|
240
|
+
|
|
162
241
|
{{#LINEAR}}
|
|
163
242
|
## LINEAR INTEGRATION
|
|
164
243
|
|