@kendoo.agentdesk/agentdesk 0.9.12 → 0.9.14
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/bin/agentdesk.mjs +1 -1
- package/cli/agents.mjs +35 -1
- package/cli/team.mjs +9 -2
- package/package.json +2 -2
package/bin/agentdesk.mjs
CHANGED
|
@@ -85,7 +85,7 @@ if (!command || command === "help" || command === "--help") {
|
|
|
85
85
|
agentdesk team -d "Fix the checkout total calculation"
|
|
86
86
|
agentdesk team -d "Add Google OAuth to the login page"
|
|
87
87
|
|
|
88
|
-
Dashboard:
|
|
88
|
+
Dashboard: \x1b[38;2;45;212;191mhttps://agentdesk.live\x1b[0m
|
|
89
89
|
`);
|
|
90
90
|
process.exit(0);
|
|
91
91
|
}
|
package/cli/agents.mjs
CHANGED
|
@@ -218,6 +218,18 @@ function trackerCommands(tracker, config) {
|
|
|
218
218
|
' -d \'{"query":"mutation { attachmentCreate(input: { issueId: \\"$ISSUE_ID\\", title: \\"Pull Request\\", url: \\"$PR_URL\\" }) { success } }"}\'',
|
|
219
219
|
'```',
|
|
220
220
|
].join('\n'),
|
|
221
|
+
attachScreenshots: [
|
|
222
|
+
'Upload each screenshot via Linear fileUpload mutation, then post a comment with the image URLs:',
|
|
223
|
+
'```bash',
|
|
224
|
+
'for f in screenshots/*.png; do',
|
|
225
|
+
' UPLOAD=$(curl -s -X POST https://api.linear.app/graphql \\',
|
|
226
|
+
' -H "Authorization: $LINEAR_API_KEY" -H "Content-Type: application/json" \\',
|
|
227
|
+
' -d \'{"query":"mutation { fileUpload(contentType: \\"image/png\\", filename: \\"\'$(basename "$f")\'\\", size: \'$(stat -f%z "$f")\') { uploadFile { uploadUrl assetUrl headers { key value } } } }"}\')',
|
|
228
|
+
' # Extract uploadUrl, assetUrl, headers from $UPLOAD — PUT the file to uploadUrl, then collect assetUrl',
|
|
229
|
+
'done',
|
|
230
|
+
'# Post a comment with all image URLs as markdown images',
|
|
231
|
+
'```',
|
|
232
|
+
].join('\n'),
|
|
221
233
|
agentComment: [
|
|
222
234
|
'Post a comment on Linear with key findings:',
|
|
223
235
|
'```',
|
|
@@ -252,6 +264,17 @@ function trackerCommands(tracker, config) {
|
|
|
252
264
|
` -d '{"object":{"url":"$PR_URL","title":"Pull Request"}}'`,
|
|
253
265
|
'```',
|
|
254
266
|
].join('\n'),
|
|
267
|
+
attachScreenshots: [
|
|
268
|
+
'Upload each screenshot as a Jira attachment:',
|
|
269
|
+
'```bash',
|
|
270
|
+
`for f in screenshots/*.png; do`,
|
|
271
|
+
` curl -s -X POST -u "$JIRA_EMAIL:$JIRA_API_TOKEN" \\`,
|
|
272
|
+
` -H "X-Atlassian-Token: no-check" \\`,
|
|
273
|
+
` -F "file=@$f" \\`,
|
|
274
|
+
` "${baseUrl}/rest/api/3/issue/$TASK_ID/attachments"`,
|
|
275
|
+
`done`,
|
|
276
|
+
'```',
|
|
277
|
+
].join('\n'),
|
|
255
278
|
agentComment: [
|
|
256
279
|
'Post a comment on Jira with key findings:',
|
|
257
280
|
'```bash',
|
|
@@ -285,6 +308,17 @@ function trackerCommands(tracker, config) {
|
|
|
285
308
|
'gh issue comment $TASK_ID --body "PR created: $PR_URL"',
|
|
286
309
|
'```',
|
|
287
310
|
].join('\n'),
|
|
311
|
+
attachScreenshots: [
|
|
312
|
+
'Upload screenshots and post them in a GitHub issue comment:',
|
|
313
|
+
'```bash',
|
|
314
|
+
'BODY=""',
|
|
315
|
+
'for f in screenshots/*.png; do',
|
|
316
|
+
' BASE64=$(base64 < "$f")',
|
|
317
|
+
' BODY="$BODY\\n"',
|
|
318
|
+
'done',
|
|
319
|
+
'gh issue comment $TASK_ID --body "$BODY"',
|
|
320
|
+
'```',
|
|
321
|
+
].join('\n'),
|
|
288
322
|
agentComment: [
|
|
289
323
|
'Post a comment on GitHub with key findings:',
|
|
290
324
|
'```bash',
|
|
@@ -373,7 +407,7 @@ export function generateTeamPrompt(team, opts = {}) {
|
|
|
373
407
|
return `Push and create PR.\n ${cmds.postPrLink}`;
|
|
374
408
|
}
|
|
375
409
|
if (/screenshot.*tracker/i.test(t)) {
|
|
376
|
-
return `
|
|
410
|
+
return `Upload screenshots to tracker, then post a comment.\n ${cmds.attachScreenshots}\n ${cmds.agentComment.replace('<COMMENT>', 'Screenshots attached — see attachments above.')}`;
|
|
377
411
|
}
|
|
378
412
|
return t;
|
|
379
413
|
});
|
package/cli/team.mjs
CHANGED
|
@@ -30,6 +30,9 @@ function loadDotEnv(dir) {
|
|
|
30
30
|
}
|
|
31
31
|
|
|
32
32
|
export async function runTeam(taskId, opts = {}) {
|
|
33
|
+
const teal = "\x1b[38;2;45;212;191m";
|
|
34
|
+
const reset = "\x1b[0m";
|
|
35
|
+
|
|
33
36
|
const cwd = opts.cwd || process.cwd();
|
|
34
37
|
const description = opts.description || "";
|
|
35
38
|
|
|
@@ -78,7 +81,11 @@ export async function runTeam(taskId, opts = {}) {
|
|
|
78
81
|
}
|
|
79
82
|
}
|
|
80
83
|
if (tracker) console.log(`Tracker: ${tracker}`);
|
|
81
|
-
if (taskLink)
|
|
84
|
+
if (taskLink) {
|
|
85
|
+
console.log(`Task: ${teal}${taskLink}${reset}`);
|
|
86
|
+
} else if (tracker === "jira" && config.jira?.baseUrl) {
|
|
87
|
+
console.log(`Jira: ${teal}${config.jira.baseUrl}${reset}`);
|
|
88
|
+
}
|
|
82
89
|
|
|
83
90
|
// Resolve team and generate dynamic prompt sections
|
|
84
91
|
const team = resolveTeam(config);
|
|
@@ -154,7 +161,7 @@ export async function runTeam(taskId, opts = {}) {
|
|
|
154
161
|
vizConnected = true;
|
|
155
162
|
if (!sessionStartSent) {
|
|
156
163
|
console.log("AgentDesk: connected");
|
|
157
|
-
console.log(`Dashboard: ${agentdeskServer}`);
|
|
164
|
+
console.log(`Dashboard: ${teal}${agentdeskServer}${reset}`);
|
|
158
165
|
} else {
|
|
159
166
|
console.log("AgentDesk: reconnected");
|
|
160
167
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kendoo.agentdesk/agentdesk",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.14",
|
|
4
4
|
"description": "AI team orchestrator for Claude Code — run collaborative agent sessions from your terminal",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
"server": "node server/index.mjs",
|
|
22
22
|
"build": "vite build",
|
|
23
23
|
"preview": "vite preview",
|
|
24
|
-
"test": "node --test tests/server.test.mjs tests/agents.test.mjs"
|
|
24
|
+
"test": "node --test tests/server.test.mjs tests/agents.test.mjs tests/homepage.test.mjs"
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
27
|
"bcryptjs": "^3.0.3",
|