@troykelly/openclaw-projects 0.0.37 → 0.0.38

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 (88) hide show
  1. package/dist/api-client.js +1 -1
  2. package/dist/api-client.js.map +1 -1
  3. package/dist/cli.js +1 -1
  4. package/dist/cli.js.map +1 -1
  5. package/dist/gateway/oauth-rpc-methods.js +11 -11
  6. package/dist/gateway/oauth-rpc-methods.js.map +1 -1
  7. package/dist/gateway/rpc-methods.js +1 -1
  8. package/dist/gateway/rpc-methods.js.map +1 -1
  9. package/dist/hooks.js +5 -5
  10. package/dist/hooks.js.map +1 -1
  11. package/dist/register-openclaw.d.ts.map +1 -1
  12. package/dist/register-openclaw.js +85 -50
  13. package/dist/register-openclaw.js.map +1 -1
  14. package/dist/services/api-source-service.js +9 -9
  15. package/dist/services/api-source-service.js.map +1 -1
  16. package/dist/services/notification-service.js +1 -1
  17. package/dist/services/notification-service.js.map +1 -1
  18. package/dist/tool-guidance/catalog.d.ts.map +1 -1
  19. package/dist/tool-guidance/catalog.js +15 -3
  20. package/dist/tool-guidance/catalog.js.map +1 -1
  21. package/dist/tools/contacts.js +3 -3
  22. package/dist/tools/contacts.js.map +1 -1
  23. package/dist/tools/context-search.d.ts +4 -4
  24. package/dist/tools/context-search.d.ts.map +1 -1
  25. package/dist/tools/context-search.js +38 -8
  26. package/dist/tools/context-search.js.map +1 -1
  27. package/dist/tools/dev-prompts.d.ts +214 -0
  28. package/dist/tools/dev-prompts.d.ts.map +1 -0
  29. package/dist/tools/dev-prompts.js +415 -0
  30. package/dist/tools/dev-prompts.js.map +1 -0
  31. package/dist/tools/dev-session-search.d.ts +76 -0
  32. package/dist/tools/dev-session-search.d.ts.map +1 -0
  33. package/dist/tools/dev-session-search.js +118 -0
  34. package/dist/tools/dev-session-search.js.map +1 -0
  35. package/dist/tools/dev-sessions.d.ts +24 -4
  36. package/dist/tools/dev-sessions.d.ts.map +1 -1
  37. package/dist/tools/dev-sessions.js +68 -11
  38. package/dist/tools/dev-sessions.js.map +1 -1
  39. package/dist/tools/email-send.js +1 -1
  40. package/dist/tools/email-send.js.map +1 -1
  41. package/dist/tools/entity-links.js +8 -8
  42. package/dist/tools/entity-links.js.map +1 -1
  43. package/dist/tools/file-share.js +1 -1
  44. package/dist/tools/file-share.js.map +1 -1
  45. package/dist/tools/index.d.ts +3 -1
  46. package/dist/tools/index.d.ts.map +1 -1
  47. package/dist/tools/index.js +4 -0
  48. package/dist/tools/index.js.map +1 -1
  49. package/dist/tools/memory-forget.js +3 -3
  50. package/dist/tools/memory-forget.js.map +1 -1
  51. package/dist/tools/memory-recall.js +1 -1
  52. package/dist/tools/memory-recall.js.map +1 -1
  53. package/dist/tools/memory-store.js +1 -1
  54. package/dist/tools/memory-store.js.map +1 -1
  55. package/dist/tools/message-search.js +1 -1
  56. package/dist/tools/message-search.js.map +1 -1
  57. package/dist/tools/notebooks.js +3 -3
  58. package/dist/tools/notebooks.js.map +1 -1
  59. package/dist/tools/notes.js +5 -5
  60. package/dist/tools/notes.js.map +1 -1
  61. package/dist/tools/project-search.js +1 -1
  62. package/dist/tools/project-search.js.map +1 -1
  63. package/dist/tools/projects.js +3 -3
  64. package/dist/tools/projects.js.map +1 -1
  65. package/dist/tools/relationships.js +2 -2
  66. package/dist/tools/relationships.js.map +1 -1
  67. package/dist/tools/skill-store.js +11 -11
  68. package/dist/tools/skill-store.js.map +1 -1
  69. package/dist/tools/sms-send.js +1 -1
  70. package/dist/tools/sms-send.js.map +1 -1
  71. package/dist/tools/terminal-connections.js +8 -8
  72. package/dist/tools/terminal-connections.js.map +1 -1
  73. package/dist/tools/terminal-search.js +2 -2
  74. package/dist/tools/terminal-search.js.map +1 -1
  75. package/dist/tools/terminal-sessions.js +7 -7
  76. package/dist/tools/terminal-sessions.js.map +1 -1
  77. package/dist/tools/terminal-tunnels.js +3 -3
  78. package/dist/tools/terminal-tunnels.js.map +1 -1
  79. package/dist/tools/threads.js +2 -2
  80. package/dist/tools/threads.js.map +1 -1
  81. package/dist/tools/todo-search.js +1 -1
  82. package/dist/tools/todo-search.js.map +1 -1
  83. package/dist/tools/todos.js +3 -3
  84. package/dist/tools/todos.js.map +1 -1
  85. package/dist/utils/auto-linker.js +5 -5
  86. package/dist/utils/auto-linker.js.map +1 -1
  87. package/openclaw.plugin.json +1 -1
  88. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev-prompts.js","sourceRoot":"","sources":["../../src/tools/dev-prompts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,76 @@
1
+ /**
2
+ * Dev session search tool.
3
+ * Issue #1987 — Provides semantic search across dev sessions.
4
+ */
5
+ import { z } from 'zod';
6
+ import type { ApiClient } from '../api-client.js';
7
+ import type { Logger } from '../logger.js';
8
+ import type { PluginConfig } from '../config.js';
9
+ /** Tool configuration */
10
+ export interface DevSessionSearchToolOptions {
11
+ client: ApiClient;
12
+ logger: Logger;
13
+ config: PluginConfig;
14
+ user_id: string;
15
+ }
16
+ /** Dev session search result from API */
17
+ export interface DevSessionSearchItem {
18
+ id: string;
19
+ session_name: string;
20
+ status: string;
21
+ node: string;
22
+ task_summary?: string | null;
23
+ task_prompt?: string | null;
24
+ completion_summary?: string | null;
25
+ branch?: string | null;
26
+ repo_org?: string | null;
27
+ repo_name?: string | null;
28
+ similarity?: number;
29
+ match_source?: string;
30
+ created_at?: string;
31
+ completed_at?: string | null;
32
+ }
33
+ /** Failure result */
34
+ export interface DevSessionSearchFailure {
35
+ success: false;
36
+ error: string;
37
+ }
38
+ /** Parameters for dev_session_search */
39
+ export declare const DevSessionSearchParamsSchema: z.ZodObject<{
40
+ query: z.ZodString;
41
+ status: z.ZodOptional<z.ZodString>;
42
+ limit: z.ZodOptional<z.ZodNumber>;
43
+ }, "strip", z.ZodTypeAny, {
44
+ query: string;
45
+ status?: string | undefined;
46
+ limit?: number | undefined;
47
+ }, {
48
+ query: string;
49
+ status?: string | undefined;
50
+ limit?: number | undefined;
51
+ }>;
52
+ export type DevSessionSearchParams = z.infer<typeof DevSessionSearchParamsSchema>;
53
+ /** Successful search result */
54
+ export interface DevSessionSearchSuccess {
55
+ success: true;
56
+ data: {
57
+ content: string;
58
+ details: {
59
+ sessions: DevSessionSearchItem[];
60
+ total: number;
61
+ user_id: string;
62
+ };
63
+ };
64
+ }
65
+ export type DevSessionSearchResult = DevSessionSearchSuccess | DevSessionSearchFailure;
66
+ export interface DevSessionSearchTool {
67
+ name: string;
68
+ description: string;
69
+ parameters: typeof DevSessionSearchParamsSchema;
70
+ execute: (params: DevSessionSearchParams) => Promise<DevSessionSearchResult>;
71
+ }
72
+ /**
73
+ * Creates the dev_session_search tool.
74
+ */
75
+ export declare function createDevSessionSearchTool(options: DevSessionSearchToolOptions): DevSessionSearchTool;
76
+ //# sourceMappingURL=dev-session-search.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev-session-search.d.ts","sourceRoot":"","sources":["../../src/tools/dev-session-search.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAsBjD,yBAAyB;AACzB,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,SAAS,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,yCAAyC;AACzC,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED,qBAAqB;AACrB,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,KAAK,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAID,wCAAwC;AACxC,eAAO,MAAM,4BAA4B;;;;;;;;;;;;EAIvC,CAAC;AACH,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAElF,+BAA+B;AAC/B,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,IAAI,CAAC;IACd,IAAI,EAAE;QACJ,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE;YACP,QAAQ,EAAE,oBAAoB,EAAE,CAAC;YACjC,KAAK,EAAE,MAAM,CAAC;YACd,OAAO,EAAE,MAAM,CAAC;SACjB,CAAC;KACH,CAAC;CACH;AAED,MAAM,MAAM,sBAAsB,GAAG,uBAAuB,GAAG,uBAAuB,CAAC;AAEvF,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,OAAO,4BAA4B,CAAC;IAChD,OAAO,EAAE,CAAC,MAAM,EAAE,sBAAsB,KAAK,OAAO,CAAC,sBAAsB,CAAC,CAAC;CAC9E;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,2BAA2B,GAAG,oBAAoB,CA8FrG"}
@@ -0,0 +1,118 @@
1
+ /**
2
+ * Dev session search tool.
3
+ * Issue #1987 — Provides semantic search across dev sessions.
4
+ */
5
+ import { z } from 'zod';
6
+ import { sanitizeErrorMessage } from '../utils/sanitize.js';
7
+ /** UUID validation regex */
8
+ const UUID_REGEX = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
9
+ /**
10
+ * Validate UUID format.
11
+ */
12
+ function isValidUuid(id) {
13
+ return UUID_REGEX.test(id);
14
+ }
15
+ /**
16
+ * Sanitize query input.
17
+ */
18
+ function sanitizeQuery(query) {
19
+ return query.replace(/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F]/g, '').trim();
20
+ }
21
+ // ==================== dev_session_search ====================
22
+ /** Parameters for dev_session_search */
23
+ export const DevSessionSearchParamsSchema = z.object({
24
+ query: z.string().min(1, 'Search query is required').max(500, 'Query must be 500 characters or less'),
25
+ status: z.string().max(50).optional(),
26
+ limit: z.number().int().min(1).max(50).optional(),
27
+ });
28
+ /**
29
+ * Creates the dev_session_search tool.
30
+ */
31
+ export function createDevSessionSearchTool(options) {
32
+ const { client, logger, user_id } = options;
33
+ return {
34
+ name: 'dev_session_search',
35
+ description: 'Searches dev sessions semantically by task summary, prompt, and completion notes. Use to find past coding sessions by topic or context. For cross-entity search, prefer context_search. Read-only.',
36
+ parameters: DevSessionSearchParamsSchema,
37
+ async execute(params) {
38
+ const parseResult = DevSessionSearchParamsSchema.safeParse(params);
39
+ if (!parseResult.success) {
40
+ const errorMessage = parseResult.error.errors.map((e) => `${e.path.join('.')}: ${e.message}`).join(', ');
41
+ return { success: false, error: errorMessage };
42
+ }
43
+ const { query, status, limit = 10 } = parseResult.data;
44
+ const sanitizedQuery = sanitizeQuery(query);
45
+ if (sanitizedQuery.length === 0) {
46
+ return { success: false, error: 'Search query cannot be empty' };
47
+ }
48
+ logger.info('dev_session_search invoked', {
49
+ user_id,
50
+ queryLength: sanitizedQuery.length,
51
+ status,
52
+ limit,
53
+ });
54
+ try {
55
+ const queryParams = new URLSearchParams({
56
+ q: sanitizedQuery,
57
+ limit: String(limit),
58
+ });
59
+ if (status)
60
+ queryParams.set('status', status);
61
+ const response = await client.get(`/dev-sessions/search?${queryParams.toString()}`, { user_id, user_email: user_id });
62
+ if (!response.success) {
63
+ logger.error('dev_session_search API error', {
64
+ user_id,
65
+ status: response.error.status,
66
+ code: response.error.code,
67
+ });
68
+ return { success: false, error: response.error.message || 'Failed to search dev sessions' };
69
+ }
70
+ const sessions = response.data.items ?? [];
71
+ const total = response.data.total ?? sessions.length;
72
+ if (sessions.length === 0) {
73
+ return {
74
+ success: true,
75
+ data: {
76
+ content: 'No matching dev sessions found.',
77
+ details: { sessions: [], total: 0, user_id },
78
+ },
79
+ };
80
+ }
81
+ const content = sessions
82
+ .map((s) => {
83
+ const parts = [`**${s.session_name}** [${s.status}]`];
84
+ if (s.node)
85
+ parts.push(`on ${s.node}`);
86
+ if (s.branch)
87
+ parts.push(`branch: ${s.branch}`);
88
+ if (s.repo_org && s.repo_name)
89
+ parts.push(`repo: ${s.repo_org}/${s.repo_name}`);
90
+ if (s.similarity !== undefined)
91
+ parts.push(`(${(Number(s.similarity) * 100).toFixed(0)}% match)`);
92
+ if (s.task_summary)
93
+ parts.push(`\n Task: ${s.task_summary.substring(0, 200)}${s.task_summary.length > 200 ? '...' : ''}`);
94
+ if (s.completion_summary)
95
+ parts.push(`\n Completed: ${s.completion_summary.substring(0, 200)}${s.completion_summary.length > 200 ? '...' : ''}`);
96
+ return `- ${parts.join(' ')} (ID: ${s.id})`;
97
+ })
98
+ .join('\n\n');
99
+ logger.debug('dev_session_search completed', { user_id, count: sessions.length });
100
+ return {
101
+ success: true,
102
+ data: {
103
+ content,
104
+ details: { sessions, total, user_id },
105
+ },
106
+ };
107
+ }
108
+ catch (error) {
109
+ logger.error('dev_session_search failed', {
110
+ user_id,
111
+ error: error instanceof Error ? error.message : String(error),
112
+ });
113
+ return { success: false, error: sanitizeErrorMessage(error) };
114
+ }
115
+ },
116
+ };
117
+ }
118
+ //# sourceMappingURL=dev-session-search.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev-session-search.js","sourceRoot":"","sources":["../../src/tools/dev-session-search.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,16 @@ export interface DevSessionToolOptions {
14
14
  config: PluginConfig;
15
15
  user_id: string;
16
16
  }
17
+ /** Linked terminal session info (Issue #1988) */
18
+ export interface LinkedTerminal {
19
+ terminal_session_id: string;
20
+ linked_at: string;
21
+ tmux_session_name?: string;
22
+ status?: string;
23
+ connection_id?: string;
24
+ started_at?: string | null;
25
+ terminated_at?: string | null;
26
+ }
17
27
  /** Dev session from API */
18
28
  export interface DevSession {
19
29
  id: string;
@@ -39,6 +49,7 @@ export interface DevSession {
39
49
  completed_at?: string | null;
40
50
  created_at?: string;
41
51
  updated_at?: string;
52
+ terminals?: LinkedTerminal[];
42
53
  }
43
54
  /** Failure result */
44
55
  export interface DevSessionFailure {
@@ -59,15 +70,17 @@ export declare const DevSessionCreateParamsSchema: z.ZodObject<{
59
70
  task_prompt: z.ZodOptional<z.ZodString>;
60
71
  linked_issues: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
61
72
  linked_prs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
73
+ connection_id: z.ZodOptional<z.ZodString>;
62
74
  }, "strip", z.ZodTypeAny, {
63
75
  session_name: string;
64
76
  node: string;
77
+ connection_id?: string | undefined;
65
78
  project_id?: string | undefined;
79
+ branch?: string | undefined;
66
80
  container?: string | undefined;
67
81
  container_user?: string | undefined;
68
82
  repo_org?: string | undefined;
69
83
  repo_name?: string | undefined;
70
- branch?: string | undefined;
71
84
  task_summary?: string | undefined;
72
85
  task_prompt?: string | undefined;
73
86
  linked_issues?: string[] | undefined;
@@ -75,12 +88,13 @@ export declare const DevSessionCreateParamsSchema: z.ZodObject<{
75
88
  }, {
76
89
  session_name: string;
77
90
  node: string;
91
+ connection_id?: string | undefined;
78
92
  project_id?: string | undefined;
93
+ branch?: string | undefined;
79
94
  container?: string | undefined;
80
95
  container_user?: string | undefined;
81
96
  repo_org?: string | undefined;
82
97
  repo_name?: string | undefined;
83
- branch?: string | undefined;
84
98
  task_summary?: string | undefined;
85
99
  task_prompt?: string | undefined;
86
100
  linked_issues?: string[] | undefined;
@@ -204,14 +218,15 @@ export declare const DevSessionUpdateParamsSchema: z.ZodObject<{
204
218
  linked_issues: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
205
219
  linked_prs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
206
220
  webhook_id: z.ZodOptional<z.ZodString>;
221
+ terminal_session_id: z.ZodOptional<z.ZodString>;
207
222
  }, "strip", z.ZodTypeAny, {
208
223
  session_id: string;
209
224
  status?: string | undefined;
225
+ branch?: string | undefined;
210
226
  container?: string | undefined;
211
227
  container_user?: string | undefined;
212
228
  repo_org?: string | undefined;
213
229
  repo_name?: string | undefined;
214
- branch?: string | undefined;
215
230
  task_summary?: string | undefined;
216
231
  task_prompt?: string | undefined;
217
232
  linked_issues?: string[] | undefined;
@@ -221,14 +236,15 @@ export declare const DevSessionUpdateParamsSchema: z.ZodObject<{
221
236
  last_capture_at?: string | undefined;
222
237
  completion_summary?: string | undefined;
223
238
  webhook_id?: string | undefined;
239
+ terminal_session_id?: string | undefined;
224
240
  }, {
225
241
  session_id: string;
226
242
  status?: string | undefined;
243
+ branch?: string | undefined;
227
244
  container?: string | undefined;
228
245
  container_user?: string | undefined;
229
246
  repo_org?: string | undefined;
230
247
  repo_name?: string | undefined;
231
- branch?: string | undefined;
232
248
  task_summary?: string | undefined;
233
249
  task_prompt?: string | undefined;
234
250
  linked_issues?: string[] | undefined;
@@ -238,6 +254,7 @@ export declare const DevSessionUpdateParamsSchema: z.ZodObject<{
238
254
  last_capture_at?: string | undefined;
239
255
  completion_summary?: string | undefined;
240
256
  webhook_id?: string | undefined;
257
+ terminal_session_id?: string | undefined;
241
258
  }>;
242
259
  export type DevSessionUpdateParams = z.infer<typeof DevSessionUpdateParamsSchema>;
243
260
  /** Successful update result */
@@ -266,12 +283,15 @@ export declare function createDevSessionUpdateTool(options: DevSessionToolOption
266
283
  export declare const DevSessionCompleteParamsSchema: z.ZodObject<{
267
284
  session_id: z.ZodString;
268
285
  completion_summary: z.ZodOptional<z.ZodString>;
286
+ terminate_terminals: z.ZodOptional<z.ZodBoolean>;
269
287
  }, "strip", z.ZodTypeAny, {
270
288
  session_id: string;
271
289
  completion_summary?: string | undefined;
290
+ terminate_terminals?: boolean | undefined;
272
291
  }, {
273
292
  session_id: string;
274
293
  completion_summary?: string | undefined;
294
+ terminate_terminals?: boolean | undefined;
275
295
  }>;
276
296
  export type DevSessionCompleteParams = z.infer<typeof DevSessionCompleteParamsSchema>;
277
297
  /** Successful complete result */
@@ -1 +1 @@
1
- {"version":3,"file":"dev-sessions.d.ts","sourceRoot":"","sources":["../../src/tools/dev-sessions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dev-sessions.d.ts","sourceRoot":"","sources":["../../src/tools/dev-sessions.ts"],"names":[],"mappings":"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"}
@@ -38,6 +38,7 @@ export const DevSessionCreateParamsSchema = z.object({
38
38
  task_prompt: z.string().max(10000).optional(),
39
39
  linked_issues: z.array(z.string()).optional(),
40
40
  linked_prs: z.array(z.string()).optional(),
41
+ connection_id: z.string().optional().describe('Terminal connection UUID. If provided, auto-creates and links a terminal session.'),
41
42
  });
42
43
  /**
43
44
  * Creates the dev_session_create tool.
@@ -54,14 +55,18 @@ export function createDevSessionCreateTool(options) {
54
55
  const errorMessage = parseResult.error.errors.map((e) => `${e.path.join('.')}: ${e.message}`).join(', ');
55
56
  return { success: false, error: errorMessage };
56
57
  }
57
- const { session_name, node, project_id, container, container_user, repo_org, repo_name, branch, task_summary, task_prompt, linked_issues, linked_prs } = parseResult.data;
58
+ const { session_name, node, project_id, container, container_user, repo_org, repo_name, branch, task_summary, task_prompt, linked_issues, linked_prs, connection_id } = parseResult.data;
58
59
  if (project_id && !isValidUuid(project_id)) {
59
60
  return { success: false, error: 'Invalid project_id format. Expected UUID.' };
60
61
  }
62
+ if (connection_id && !isValidUuid(connection_id)) {
63
+ return { success: false, error: 'Invalid connection_id format. Expected UUID.' };
64
+ }
61
65
  logger.info('dev_session_create invoked', {
62
66
  user_id,
63
67
  sessionName: session_name,
64
68
  node,
69
+ hasConnectionId: !!connection_id,
65
70
  });
66
71
  try {
67
72
  const body = {
@@ -89,7 +94,7 @@ export function createDevSessionCreateTool(options) {
89
94
  body.linked_issues = linked_issues;
90
95
  if (linked_prs)
91
96
  body.linked_prs = linked_prs;
92
- const response = await client.post('/api/dev-sessions', body, { user_id });
97
+ const response = await client.post('/dev-sessions', body, { user_id });
93
98
  if (!response.success) {
94
99
  logger.error('dev_session_create API error', {
95
100
  user_id,
@@ -100,15 +105,50 @@ export function createDevSessionCreateTool(options) {
100
105
  return { success: false, error: response.error.message || 'Failed to create dev session' };
101
106
  }
102
107
  const session = response.data;
108
+ // Issue #1988: auto-create and link terminal session if connection_id provided
109
+ let linkedTerminalId;
110
+ if (connection_id) {
111
+ try {
112
+ const termResponse = await client.post('/terminal/sessions', { connection_id, tmux_session_name: `dev-${session.id.slice(0, 8)}` }, { user_id });
113
+ if (termResponse.success) {
114
+ linkedTerminalId = termResponse.data.id;
115
+ // Link terminal session to dev session
116
+ await client.post(`/dev-sessions/${session.id}/terminals`, { terminal_session_id: linkedTerminalId }, { user_id });
117
+ logger.debug('dev_session_create linked terminal', {
118
+ sessionId: session.id,
119
+ terminalSessionId: linkedTerminalId,
120
+ });
121
+ }
122
+ else {
123
+ logger.warn('dev_session_create terminal creation failed', {
124
+ sessionId: session.id,
125
+ connectionId: connection_id,
126
+ error: termResponse.error.message,
127
+ });
128
+ }
129
+ }
130
+ catch (termErr) {
131
+ logger.warn('dev_session_create terminal auto-link failed', {
132
+ sessionId: session.id,
133
+ connectionId: connection_id,
134
+ error: termErr instanceof Error ? termErr.message : String(termErr),
135
+ });
136
+ }
137
+ }
103
138
  logger.debug('dev_session_create completed', {
104
139
  user_id,
105
140
  sessionId: session.id,
106
141
  sessionName: session.session_name,
142
+ linkedTerminalId,
107
143
  });
144
+ const contentParts = [`Created dev session "${session.session_name}" on ${node} (ID: ${session.id}) — status: ${session.status}`];
145
+ if (linkedTerminalId) {
146
+ contentParts.push(`Linked terminal session: ${linkedTerminalId}`);
147
+ }
108
148
  return {
109
149
  success: true,
110
150
  data: {
111
- content: `Created dev session "${session.session_name}" on ${node} (ID: ${session.id}) — status: ${session.status}`,
151
+ content: contentParts.join('\n'),
112
152
  details: {
113
153
  session_id: session.id,
114
154
  session_name: session.session_name,
@@ -169,7 +209,7 @@ export function createDevSessionListTool(options) {
169
209
  queryParams.set('node', node);
170
210
  if (project_id)
171
211
  queryParams.set('project_id', project_id);
172
- const response = await client.get(`/api/dev-sessions?${queryParams.toString()}`, { user_id, user_email: user_id });
212
+ const response = await client.get(`/dev-sessions?${queryParams.toString()}`, { user_id, user_email: user_id });
173
213
  if (!response.success) {
174
214
  logger.error('dev_session_list API error', {
175
215
  user_id,
@@ -228,7 +268,7 @@ export function createDevSessionGetTool(options) {
228
268
  const { client, logger, user_id } = options;
229
269
  return {
230
270
  name: 'dev_session_get',
231
- description: 'Gets detailed information about a specific dev session including task summary, branch, context percentage, and linked issues/PRs. Use to resume or review a session. Read-only.',
271
+ description: 'Gets detailed information about a specific dev session including task summary, branch, context percentage, linked issues/PRs, and linked terminal sessions. Use to resume or review a session. Read-only.',
232
272
  parameters: DevSessionGetParamsSchema,
233
273
  async execute(params) {
234
274
  const parseResult = DevSessionGetParamsSchema.safeParse(params);
@@ -242,7 +282,7 @@ export function createDevSessionGetTool(options) {
242
282
  }
243
283
  logger.info('dev_session_get invoked', { user_id, sessionId: session_id });
244
284
  try {
245
- const response = await client.get(`/api/dev-sessions/${session_id}`, { user_id, user_email: user_id });
285
+ const response = await client.get(`/dev-sessions/${session_id}`, { user_id, user_email: user_id });
246
286
  if (!response.success) {
247
287
  if (response.error.code === 'NOT_FOUND') {
248
288
  return { success: false, error: 'Dev session not found.' };
@@ -274,6 +314,13 @@ export function createDevSessionGetTool(options) {
274
314
  lines.push(`Created: ${session.created_at}`);
275
315
  if (session.completed_at)
276
316
  lines.push(`Completed: ${session.completed_at}`);
317
+ // Issue #1988: include linked terminal sessions
318
+ if (session.terminals && session.terminals.length > 0) {
319
+ lines.push(`Terminals (${session.terminals.length}):`);
320
+ for (const t of session.terminals) {
321
+ lines.push(` - ${t.tmux_session_name ?? t.terminal_session_id} [${t.status ?? 'unknown'}]`);
322
+ }
323
+ }
277
324
  logger.debug('dev_session_get completed', { user_id, sessionId: session_id });
278
325
  return {
279
326
  success: true,
@@ -313,6 +360,7 @@ export const DevSessionUpdateParamsSchema = z.object({
313
360
  linked_issues: z.array(z.string()).optional(),
314
361
  linked_prs: z.array(z.string()).optional(),
315
362
  webhook_id: z.string().max(200).optional(),
363
+ terminal_session_id: z.string().optional().describe('Terminal session UUID to link to this dev session.'),
316
364
  });
317
365
  /**
318
366
  * Creates the dev_session_update tool.
@@ -321,7 +369,7 @@ export function createDevSessionUpdateTool(options) {
321
369
  const { client, logger, user_id } = options;
322
370
  return {
323
371
  name: 'dev_session_update',
324
- description: 'Updates a dev session with new status, task summary, context percentage, or capture data. Only provided fields are modified. Use to track progress during ongoing work. Does not complete the session (use dev_session_complete).',
372
+ description: 'Updates a dev session with new status, task summary, context percentage, or capture data. Only provided fields are modified. Optionally links a terminal session. Use to track progress during ongoing work. Does not complete the session (use dev_session_complete).',
325
373
  parameters: DevSessionUpdateParamsSchema,
326
374
  async execute(params) {
327
375
  const parseResult = DevSessionUpdateParamsSchema.safeParse(params);
@@ -333,6 +381,9 @@ export function createDevSessionUpdateTool(options) {
333
381
  if (!isValidUuid(session_id)) {
334
382
  return { success: false, error: 'Invalid session ID format. Expected UUID.' };
335
383
  }
384
+ if (updates.terminal_session_id && !isValidUuid(updates.terminal_session_id)) {
385
+ return { success: false, error: 'Invalid terminal_session_id format. Expected UUID.' };
386
+ }
336
387
  logger.info('dev_session_update invoked', {
337
388
  user_id,
338
389
  sessionId: session_id,
@@ -370,7 +421,9 @@ export function createDevSessionUpdateTool(options) {
370
421
  body.linked_prs = updates.linked_prs;
371
422
  if (updates.webhook_id)
372
423
  body.webhook_id = updates.webhook_id;
373
- const response = await client.patch(`/api/dev-sessions/${session_id}`, body, { user_id });
424
+ if (updates.terminal_session_id)
425
+ body.terminal_session_id = updates.terminal_session_id;
426
+ const response = await client.patch(`/dev-sessions/${session_id}`, body, { user_id });
374
427
  if (!response.success) {
375
428
  if (response.error.code === 'NOT_FOUND') {
376
429
  return { success: false, error: 'Dev session not found.' };
@@ -412,6 +465,7 @@ export function createDevSessionUpdateTool(options) {
412
465
  export const DevSessionCompleteParamsSchema = z.object({
413
466
  session_id: z.string().min(1, 'Session ID is required'),
414
467
  completion_summary: z.string().max(5000).optional(),
468
+ terminate_terminals: z.boolean().optional().describe('If true, terminates all linked terminal sessions when completing.'),
415
469
  });
416
470
  /**
417
471
  * Creates the dev_session_complete tool.
@@ -420,7 +474,7 @@ export function createDevSessionCompleteTool(options) {
420
474
  const { client, logger, user_id } = options;
421
475
  return {
422
476
  name: 'dev_session_complete',
423
- description: 'Marks a dev session as completed and records the completion timestamp. Optionally include a summary of what was accomplished. Use dev_session_update for incremental progress updates instead.',
477
+ description: 'Marks a dev session as completed and records the completion timestamp. Optionally include a summary and terminate linked terminal sessions. Use dev_session_update for incremental progress updates instead.',
424
478
  parameters: DevSessionCompleteParamsSchema,
425
479
  async execute(params) {
426
480
  const parseResult = DevSessionCompleteParamsSchema.safeParse(params);
@@ -428,7 +482,7 @@ export function createDevSessionCompleteTool(options) {
428
482
  const errorMessage = parseResult.error.errors.map((e) => `${e.path.join('.')}: ${e.message}`).join(', ');
429
483
  return { success: false, error: errorMessage };
430
484
  }
431
- const { session_id, completion_summary } = parseResult.data;
485
+ const { session_id, completion_summary, terminate_terminals } = parseResult.data;
432
486
  if (!isValidUuid(session_id)) {
433
487
  return { success: false, error: 'Invalid session ID format. Expected UUID.' };
434
488
  }
@@ -436,12 +490,15 @@ export function createDevSessionCompleteTool(options) {
436
490
  user_id,
437
491
  sessionId: session_id,
438
492
  hasSummary: !!completion_summary,
493
+ terminateTerminals: !!terminate_terminals,
439
494
  });
440
495
  try {
441
496
  const body = { user_email: user_id };
442
497
  if (completion_summary)
443
498
  body.completion_summary = stripHtml(completion_summary);
444
- const response = await client.post(`/api/dev-sessions/${session_id}/complete`, body, { user_id });
499
+ if (terminate_terminals)
500
+ body.terminate_terminals = true;
501
+ const response = await client.post(`/dev-sessions/${session_id}/complete`, body, { user_id });
445
502
  if (!response.success) {
446
503
  if (response.error.code === 'NOT_FOUND') {
447
504
  return { success: false, error: 'Dev session not found.' };