@jait/gateway 0.1.315 → 0.1.316

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 (77) hide show
  1. package/dist/routes/chat.d.ts.map +1 -1
  2. package/dist/routes/chat.js +34 -8
  3. package/dist/routes/chat.js.map +1 -1
  4. package/dist/routes/sessions.js +2 -2
  5. package/dist/routes/sessions.js.map +1 -1
  6. package/dist/routes/workspace.d.ts.map +1 -1
  7. package/dist/routes/workspace.js +18 -7
  8. package/dist/routes/workspace.js.map +1 -1
  9. package/dist/services/architecture-diagrams.d.ts +1 -1
  10. package/dist/services/architecture-diagrams.d.ts.map +1 -1
  11. package/dist/services/architecture-diagrams.js +1 -1
  12. package/dist/services/architecture-diagrams.js.map +1 -1
  13. package/dist/tools/architecture-tools.d.ts.map +1 -1
  14. package/dist/tools/architecture-tools.js +8 -25
  15. package/dist/tools/architecture-tools.js.map +1 -1
  16. package/dist/voice-assistant/service.d.ts +2 -0
  17. package/dist/voice-assistant/service.d.ts.map +1 -1
  18. package/dist/voice-assistant/service.js +113 -12
  19. package/dist/voice-assistant/service.js.map +1 -1
  20. package/dist/voice-assistant/tools.d.ts +2 -0
  21. package/dist/voice-assistant/tools.d.ts.map +1 -1
  22. package/dist/voice-assistant/tools.js +79 -6
  23. package/dist/voice-assistant/tools.js.map +1 -1
  24. package/package.json +1 -1
  25. package/web-dist/assets/{_basePickBy-BkYSS_zr.js → _basePickBy-DcnHWTMy.js} +1 -1
  26. package/web-dist/assets/{_baseUniq-BRrURlFx.js → _baseUniq-wrfFH47p.js} +1 -1
  27. package/web-dist/assets/{arc-gA21vhyr.js → arc-Di_fyp4e.js} +1 -1
  28. package/web-dist/assets/{architectureDiagram-2XIMDMQ5-CR8Cakml.js → architectureDiagram-2XIMDMQ5-TcsNXbBE.js} +1 -1
  29. package/web-dist/assets/{blockDiagram-WCTKOSBZ-BfRpI2WU.js → blockDiagram-WCTKOSBZ-DXv6Puor.js} +1 -1
  30. package/web-dist/assets/{c4Diagram-IC4MRINW-CVdJDAWT.js → c4Diagram-IC4MRINW-x4IKYS6T.js} +1 -1
  31. package/web-dist/assets/channel-C9T5EzPq.js +1 -0
  32. package/web-dist/assets/{chunk-4BX2VUAB-qfdwIPy6.js → chunk-4BX2VUAB-Dr3GegpK.js} +1 -1
  33. package/web-dist/assets/{chunk-55IACEB6-_cy7IY2x.js → chunk-55IACEB6-BachXTZl.js} +1 -1
  34. package/web-dist/assets/{chunk-FMBD7UC4-Zck8E0dg.js → chunk-FMBD7UC4-GdcspR2-.js} +1 -1
  35. package/web-dist/assets/{chunk-JSJVCQXG-XJNbT7EB.js → chunk-JSJVCQXG-uoQUahWH.js} +1 -1
  36. package/web-dist/assets/{chunk-KX2RTZJC-BCIa75bO.js → chunk-KX2RTZJC-DFRhOuRW.js} +1 -1
  37. package/web-dist/assets/{chunk-NQ4KR5QH-Ch0tarAj.js → chunk-NQ4KR5QH-DLWQzJBA.js} +1 -1
  38. package/web-dist/assets/{chunk-QZHKN3VN-CYM1Jaj2.js → chunk-QZHKN3VN-CPGwxBL3.js} +1 -1
  39. package/web-dist/assets/{chunk-WL4C6EOR-u5S5eCe7.js → chunk-WL4C6EOR-CTdOYSwb.js} +1 -1
  40. package/web-dist/assets/classDiagram-VBA2DB6C-Z35jQz0D.js +1 -0
  41. package/web-dist/assets/classDiagram-v2-RAHNMMFH-Z35jQz0D.js +1 -0
  42. package/web-dist/assets/clone-BRdTdlTj.js +1 -0
  43. package/web-dist/assets/{cose-bilkent-S5V4N54A-RMjpnnrj.js → cose-bilkent-S5V4N54A-C_E9xmH_.js} +1 -1
  44. package/web-dist/assets/{dagre-KLK3FWXG-B7P_cc_u.js → dagre-KLK3FWXG-Bnr2TTMn.js} +1 -1
  45. package/web-dist/assets/{diagram-E7M64L7V-CxmbgWmK.js → diagram-E7M64L7V-CTLd0ugI.js} +1 -1
  46. package/web-dist/assets/{diagram-IFDJBPK2-hXgowSC5.js → diagram-IFDJBPK2-VYIsI-6G.js} +1 -1
  47. package/web-dist/assets/{diagram-P4PSJMXO-BbdKyFK7.js → diagram-P4PSJMXO-DiuRH5jM.js} +1 -1
  48. package/web-dist/assets/{erDiagram-INFDFZHY-BzFPUl40.js → erDiagram-INFDFZHY-DOzxpt2K.js} +1 -1
  49. package/web-dist/assets/{flowDiagram-PKNHOUZH-oIIaZIf3.js → flowDiagram-PKNHOUZH-duqE5WOK.js} +1 -1
  50. package/web-dist/assets/{ganttDiagram-A5KZAMGK-NxL6mcuQ.js → ganttDiagram-A5KZAMGK-CH9aPoM8.js} +1 -1
  51. package/web-dist/assets/{gitGraphDiagram-K3NZZRJ6-B1zq60dp.js → gitGraphDiagram-K3NZZRJ6-B18c_zSc.js} +1 -1
  52. package/web-dist/assets/{graph-BjwvzpnM.js → graph-BkyoMFvu.js} +1 -1
  53. package/web-dist/assets/{index-Be2yWE3-.js → index-y_dlzWTy.js} +281 -281
  54. package/web-dist/assets/{infoDiagram-LFFYTUFH-OAMHUl2q.js → infoDiagram-LFFYTUFH-jh6kICX6.js} +1 -1
  55. package/web-dist/assets/{ishikawaDiagram-PHBUUO56-B7zYElD3.js → ishikawaDiagram-PHBUUO56-CobPIDwo.js} +1 -1
  56. package/web-dist/assets/{journeyDiagram-4ABVD52K-Be4Yy1F3.js → journeyDiagram-4ABVD52K-ppoTZ9fp.js} +1 -1
  57. package/web-dist/assets/{kanban-definition-K7BYSVSG-CvgTk7_h.js → kanban-definition-K7BYSVSG-BXshArES.js} +1 -1
  58. package/web-dist/assets/{layout-C2w5S1sV.js → layout-DDM5I06H.js} +1 -1
  59. package/web-dist/assets/{linear-C7Hh-kRI.js → linear-HYy7yskA.js} +1 -1
  60. package/web-dist/assets/{mindmap-definition-YRQLILUH-XnjDEP-M.js → mindmap-definition-YRQLILUH-BMg_eLKK.js} +1 -1
  61. package/web-dist/assets/{pieDiagram-SKSYHLDU-CLdOp98B.js → pieDiagram-SKSYHLDU-Co1psLwZ.js} +1 -1
  62. package/web-dist/assets/{quadrantDiagram-337W2JSQ-Bd3r42fH.js → quadrantDiagram-337W2JSQ-DxXwHPKb.js} +1 -1
  63. package/web-dist/assets/{requirementDiagram-Z7DCOOCP-GDbWQm8B.js → requirementDiagram-Z7DCOOCP-KtkIRThd.js} +1 -1
  64. package/web-dist/assets/{sankeyDiagram-WA2Y5GQK-Ca7gZIYw.js → sankeyDiagram-WA2Y5GQK-Dyolq605.js} +1 -1
  65. package/web-dist/assets/{sequenceDiagram-2WXFIKYE-BdjncgJn.js → sequenceDiagram-2WXFIKYE-CAE3hzXs.js} +1 -1
  66. package/web-dist/assets/{stateDiagram-RAJIS63D-BY0BWEkh.js → stateDiagram-RAJIS63D-D_-jKdGl.js} +1 -1
  67. package/web-dist/assets/stateDiagram-v2-FVOUBMTO-BS6__ktA.js +1 -0
  68. package/web-dist/assets/{timeline-definition-YZTLITO2-V19hKHOS.js → timeline-definition-YZTLITO2-0PEUE5bY.js} +1 -1
  69. package/web-dist/assets/{treemap-KZPCXAKY-e1mrjPLq.js → treemap-KZPCXAKY-xw8ogfZc.js} +1 -1
  70. package/web-dist/assets/{vennDiagram-LZ73GAT5-B0fwukiY.js → vennDiagram-LZ73GAT5-Djpgu-Fy.js} +1 -1
  71. package/web-dist/assets/{xychartDiagram-JWTSCODW-B2_hXqBb.js → xychartDiagram-JWTSCODW-DIN5T3B4.js} +1 -1
  72. package/web-dist/index.html +1 -1
  73. package/web-dist/assets/channel-BhUKCAsS.js +0 -1
  74. package/web-dist/assets/classDiagram-VBA2DB6C-oAElh17R.js +0 -1
  75. package/web-dist/assets/classDiagram-v2-RAHNMMFH-oAElh17R.js +0 -1
  76. package/web-dist/assets/clone-BiPGDRb1.js +0 -1
  77. package/web-dist/assets/stateDiagram-v2-FVOUBMTO-Dzx8MGZb.js +0 -1
@@ -215,17 +215,28 @@ export function registerWorkspaceRoutes(app, surfaceRegistry, _sessionState, ses
215
215
  });
216
216
  }
217
217
  const session = sessionService?.getById(sessionId);
218
- if (session?.workspaceId && workspaceState) {
219
- workspaceState.set(session.workspaceId, { "workspace.panel": { open: true, remotePath: workspacePath, surfaceId, nodeId } });
220
- }
218
+ let workspaceId = session?.workspaceId ?? null;
221
219
  try {
222
- sessionService?.update(sessionId, { workspacePath });
223
- if (session?.workspaceId) {
224
- workspaceService?.touch(session.workspaceId);
220
+ if (!workspaceId && session?.userId && workspaceService) {
221
+ const workspace = workspaceService.getOrCreateForRoot({
222
+ userId: session.userId,
223
+ rootPath: workspacePath,
224
+ nodeId,
225
+ });
226
+ workspaceId = workspace.id;
227
+ sessionService?.update(sessionId, { workspaceId, workspacePath });
225
228
  }
229
+ else {
230
+ sessionService?.update(sessionId, { workspacePath });
231
+ }
232
+ if (workspaceId)
233
+ workspaceService?.touch(workspaceId);
226
234
  }
227
235
  catch { /* best effort */ }
228
- return { surfaceId, workspaceRoot: workspacePath, nodeId };
236
+ if (workspaceId && workspaceState) {
237
+ workspaceState.set(workspaceId, { "workspace.panel": { open: true, remotePath: workspacePath, surfaceId, nodeId } });
238
+ }
239
+ return { surfaceId, workspaceRoot: workspacePath, nodeId, workspaceId };
229
240
  });
230
241
  // GET /api/workspace/list?path=&surfaceId= — list directory entries
231
242
  app.get("/api/workspace/list", async (req, reply) => {
@@ -1 +1 @@
1
- {"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../src/routes/workspace.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../src/routes/workspace.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import type { JaitDB } from "../db/connection.js";
2
2
  import { architectureDiagrams } from "../db/schema.js";
3
3
  export type ArchitectureDiagramRow = typeof architectureDiagrams.$inferSelect;
4
- export declare const DEFAULT_ARCHITECTURE_DIAGRAM_FILE = "architecture.mmd";
4
+ export declare const DEFAULT_ARCHITECTURE_DIAGRAM_FILE = ".jait/architecture.mmd";
5
5
  export interface ArchitectureDiagramRecord extends ArchitectureDiagramRow {
6
6
  filePath: string;
7
7
  source: "file" | "database";
@@ -1 +1 @@
1
- {"version":3,"file":"architecture-diagrams.d.ts","sourceRoot":"","sources":["../../src/services/architecture-diagrams.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAIvD,MAAM,MAAM,sBAAsB,GAAG,OAAO,oBAAoB,CAAC,YAAY,CAAC;AAC9E,eAAO,MAAM,iCAAiC,qBAAqB,CAAC;AAEpE,MAAM,WAAW,yBAA0B,SAAQ,sBAAsB;IACvE,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,GAAG,UAAU,CAAC;CAC7B;AAED,qBAAa,0BAA0B;IACzB,OAAO,CAAC,QAAQ,CAAC,EAAE;gBAAF,EAAE,EAAE,MAAM;IAEvC,OAAO,CAAC,YAAY;IAuBpB,WAAW,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM;IAO1C,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,yBAAyB,GAAG,IAAI;IAkClF,IAAI,CAAC,MAAM,EAAE;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAuCnH,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,sBAAsB,EAAE;CAahD"}
1
+ {"version":3,"file":"architecture-diagrams.d.ts","sourceRoot":"","sources":["../../src/services/architecture-diagrams.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAIvD,MAAM,MAAM,sBAAsB,GAAG,OAAO,oBAAoB,CAAC,YAAY,CAAC;AAC9E,eAAO,MAAM,iCAAiC,2BAA2B,CAAC;AAE1E,MAAM,WAAW,yBAA0B,SAAQ,sBAAsB;IACvE,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,GAAG,UAAU,CAAC;CAC7B;AAED,qBAAa,0BAA0B;IACzB,OAAO,CAAC,QAAQ,CAAC,EAAE;gBAAF,EAAE,EAAE,MAAM;IAEvC,OAAO,CAAC,YAAY;IAuBpB,WAAW,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM;IAO1C,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,yBAAyB,GAAG,IAAI;IAkClF,IAAI,CAAC,MAAM,EAAE;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAuCnH,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,sBAAsB,EAAE;CAahD"}
@@ -5,7 +5,7 @@ import { and, desc, eq, isNull } from "drizzle-orm";
5
5
  import { architectureDiagrams } from "../db/schema.js";
6
6
  import { uuidv7 } from "../db/uuidv7.js";
7
7
  import { PathGuard } from "../security/path-guard.js";
8
- export const DEFAULT_ARCHITECTURE_DIAGRAM_FILE = "architecture.mmd";
8
+ export const DEFAULT_ARCHITECTURE_DIAGRAM_FILE = ".jait/architecture.mmd";
9
9
  export class ArchitectureDiagramService {
10
10
  db;
11
11
  constructor(db) {
@@ -1 +1 @@
1
- {"version":3,"file":"architecture-diagrams.js","sourceRoot":"","sources":["../../src/services/architecture-diagrams.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"architecture-diagrams.js","sourceRoot":"","sources":["../../src/services/architecture-diagrams.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"architecture-tools.d.ts","sourceRoot":"","sources":["../../src/tools/architecture-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC/C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAErD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AAIvF,UAAU,iBAAiB;IACzB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,sBAAsB,CACpC,EAAE,CAAC,EAAE,cAAc,EACnB,QAAQ,CAAC,EAAE,0BAA0B,GACpC,cAAc,CAAC,iBAAiB,CAAC,CAqFnC"}
1
+ {"version":3,"file":"architecture-tools.d.ts","sourceRoot":"","sources":["../../src/tools/architecture-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC/C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAErD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AAIvF,UAAU,iBAAiB;IACzB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,sBAAsB,CACpC,EAAE,CAAC,EAAE,cAAc,EACnB,QAAQ,CAAC,EAAE,0BAA0B,GACpC,cAAc,CAAC,iBAAiB,CAAC,CAmEnC"}
@@ -5,7 +5,7 @@ export function createArchitectureTool(ws, diagrams) {
5
5
  description: "Generate and display a Mermaid architecture diagram of the current workspace. " +
6
6
  "Analyze the project structure, dependencies, modules, and data flow, then produce " +
7
7
  "a valid Mermaid diagram (flowchart, graph, C4, etc.). The diagram will be rendered " +
8
- "in the editor Architecture tab. Output the Mermaid source as the `diagram` parameter.",
8
+ "in the editor Architecture tab and saved to .jait/architecture.mmd. Output the Mermaid source as the `diagram` parameter.",
9
9
  tier: "standard",
10
10
  category: "browser",
11
11
  source: "builtin",
@@ -33,38 +33,21 @@ export function createArchitectureTool(ws, diagrams) {
33
33
  const filePath = typeof diagrams?.getFilePath === "function"
34
34
  ? diagrams.getFilePath(workspaceRoot)
35
35
  : undefined;
36
+ const saved = await diagrams?.save({
37
+ workspaceRoot,
38
+ diagram,
39
+ userId: context.userId,
40
+ });
36
41
  // Push the diagram to the frontend via WS
37
42
  if (ws) {
38
43
  ws.sendUICommand({
39
44
  command: "architecture.update",
40
- data: { diagram, requestId, workspaceRoot, filePath },
45
+ data: { diagram, requestId, workspaceRoot, filePath: saved?.filePath ?? filePath },
41
46
  }, context.sessionId);
42
- try {
43
- const renderResult = await ws.waitForArchitectureRenderResult(requestId);
44
- if (!renderResult.ok) {
45
- return {
46
- ok: false,
47
- message: `Architecture render failed: ${renderResult.error}`,
48
- data: { requestId, diagramLength: diagram.length, error: renderResult.error },
49
- };
50
- }
51
- }
52
- catch (error) {
53
- return {
54
- ok: false,
55
- message: error instanceof Error ? error.message : "Architecture render confirmation failed",
56
- data: { requestId, diagramLength: diagram.length },
57
- };
58
- }
59
47
  }
60
- const saved = await diagrams?.save({
61
- workspaceRoot,
62
- diagram,
63
- userId: context.userId,
64
- });
65
48
  return {
66
49
  ok: true,
67
- message: "Architecture diagram saved to architecture.mmd and sent to the editor.",
50
+ message: "Architecture diagram saved to .jait/architecture.mmd and sent to the editor.",
68
51
  data: {
69
52
  requestId,
70
53
  diagramLength: diagram.length,
@@ -1 +1 @@
1
- {"version":3,"file":"architecture-tools.js","sourceRoot":"","sources":["../../src/tools/architecture-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"architecture-tools.js","sourceRoot":"","sources":["../../src/tools/architecture-tools.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAShC,MAAM,UAAU,sBAAsB,CACpC,EAAmB,EACnB,QAAqC;IAErC,OAAO;QACL,IAAI,EAAE,uBAAuB;QAC7B,WAAW,EACT,gFAAgF;YAChF,oFAAoF;YACpF,qFAAqF;YACrF,2HAA2H;QAC7H,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE,SAAS;QACnB,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,yEAAyE;wBACzE,6EAA6E;iBAChF;aACF;YACD,QAAQ,EAAE,CAAC,SAAS,CAAC;SACtB;QACD,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO;YAC1B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC;YACtC,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,6BAA6B,EAAE,CAAC;YAC/D,CAAC;YACD,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,EAAE,IAAI,EAAE,CAAC;YACpD,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,wDAAwD,EAAE,CAAC;YAC1F,CAAC;YAED,MAAM,SAAS,GAAG,MAAM,EAAE,CAAC;YAC3B,MAAM,QAAQ,GAAG,OAAO,QAAQ,EAAE,WAAW,KAAK,UAAU;gBAC1D,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,aAAa,CAAC;gBACrC,CAAC,CAAC,SAAS,CAAC;YACd,MAAM,KAAK,GAAG,MAAM,QAAQ,EAAE,IAAI,CAAC;gBACjC,aAAa;gBACb,OAAO;gBACP,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CAAC,CAAC;YAEH,0CAA0C;YAC1C,IAAI,EAAE,EAAE,CAAC;gBACP,EAAE,CAAC,aAAa,CACd;oBACE,OAAO,EAAE,qBAAqB;oBAC9B,IAAI,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,IAAI,QAAQ,EAAE;iBACnF,EACD,OAAO,CAAC,SAAS,CAClB,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,EAAE,EAAE,IAAI;gBACR,OAAO,EAAE,8EAA8E;gBACvF,IAAI,EAAE;oBACJ,SAAS;oBACT,aAAa,EAAE,OAAO,CAAC,MAAM;oBAC7B,aAAa;oBACb,QAAQ,EAAE,KAAK,EAAE,QAAQ,IAAI,QAAQ,IAAI,IAAI;oBAC7C,SAAS,EAAE,KAAK,EAAE,SAAS,IAAI,IAAI;iBACpC;aACF,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -27,6 +27,8 @@ export declare class VoiceAssistantService {
27
27
  /** Handle HTTP → WebSocket upgrade for the /ws/voice-assistant path. */
28
28
  handleUpgrade(request: IncomingMessage, socket: Duplex, head: Buffer): void;
29
29
  private handleConnection;
30
+ private buildSessionUpdate;
31
+ private buildTurnDetection;
30
32
  private buildInstructions;
31
33
  }
32
34
  //# sourceMappingURL=service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/voice-assistant/service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,OAAO,EAAyC,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAOvF,MAAM,WAAW,yBAA0B,SAAQ,aAAa;IAC9D,qDAAqD;IACrD,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC,CAAC;IACjF,qDAAqD;IACrD,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC7D;AAED,qBAAa,qBAAqB;IAChC,OAAO,CAAC,GAAG,CAAkB;IAC7B,OAAO,CAAC,IAAI,CAA4B;gBAE5B,IAAI,EAAE,yBAAyB;IAW3C,wEAAwE;IACxE,aAAa,CAAC,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;YAMtD,gBAAgB;IA4T9B,OAAO,CAAC,iBAAiB;CAoD1B"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/voice-assistant/service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,OAAO,EAAyC,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAgCvF,MAAM,WAAW,yBAA0B,SAAQ,aAAa;IAC9D,qDAAqD;IACrD,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC,CAAC;IACjF,qDAAqD;IACrD,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC7D;AAED,qBAAa,qBAAqB;IAChC,OAAO,CAAC,GAAG,CAAkB;IAC7B,OAAO,CAAC,IAAI,CAA4B;gBAE5B,IAAI,EAAE,yBAAyB;IAW3C,wEAAwE;IACxE,aAAa,CAAC,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;YAMtD,gBAAgB;IAuW9B,OAAO,CAAC,kBAAkB;IAc1B,OAAO,CAAC,kBAAkB;IA2B1B,OAAO,CAAC,iBAAiB;CAsD1B"}
@@ -71,7 +71,11 @@ export class VoiceAssistantService {
71
71
  let responseInProgress = false;
72
72
  let pendingToolResponse = false;
73
73
  let suppressAssistantAudio = false;
74
+ const timing = {};
74
75
  const pendingAnnouncements = [];
76
+ const logTiming = (event, data) => {
77
+ console.log(`[voice-assistant] timing.${event}`, JSON.stringify(data));
78
+ };
75
79
  const flushNextAnnouncement = () => {
76
80
  if (responseInProgress)
77
81
  return;
@@ -95,17 +99,7 @@ export class VoiceAssistantService {
95
99
  openaiWs.on("open", () => {
96
100
  openaiReady = true;
97
101
  console.log(`[voice-assistant] OpenAI Realtime connected (model: ${model})`);
98
- // Configure the session
99
- const sessionUpdate = {
100
- type: "session.update",
101
- session: {
102
- type: "realtime",
103
- instructions: this.buildInstructions(user.username),
104
- tools: getVoiceToolSchemas(),
105
- tool_choice: "auto",
106
- },
107
- };
108
- openaiWs.send(JSON.stringify(sessionUpdate));
102
+ openaiWs.send(JSON.stringify(this.buildSessionUpdate(user.username)));
109
103
  send(clientWs, { type: "session.started" });
110
104
  send(clientWs, { type: "status", status: "listening" });
111
105
  });
@@ -122,12 +116,26 @@ export class VoiceAssistantService {
122
116
  console.log(`[voice-assistant] OpenAI event: ${event.type}`, event.type === "error" ? event.error : "");
123
117
  }
124
118
  switch (event.type) {
119
+ case "response.created":
120
+ timing.responseStartedAt = performance.now();
121
+ break;
125
122
  // ── Audio from assistant ──────────────────────────────
126
123
  case "response.audio.delta":
127
124
  case "response.output_audio.delta":
128
125
  responseInProgress = true;
129
126
  if (suppressAssistantAudio)
130
127
  break;
128
+ if (timing.firstAudioAt === undefined) {
129
+ timing.firstAudioAt = performance.now();
130
+ logTiming("first_audio", {
131
+ ms_after_speech_stop: timing.speechStoppedAt === undefined
132
+ ? undefined
133
+ : Math.round(timing.firstAudioAt - timing.speechStoppedAt),
134
+ ms_after_response_start: timing.responseStartedAt === undefined
135
+ ? undefined
136
+ : Math.round(timing.firstAudioAt - timing.responseStartedAt),
137
+ });
138
+ }
131
139
  send(clientWs, { type: "audio", data: event.delta });
132
140
  send(clientWs, { type: "status", status: "speaking" });
133
141
  break;
@@ -162,7 +170,12 @@ export class VoiceAssistantService {
162
170
  console.log(`[voice-assistant] Tool call: ${fnName}`, JSON.stringify(fnArgs));
163
171
  send(clientWs, { type: "tool_call", name: fnName, status: "running" });
164
172
  send(clientWs, { type: "status", status: "thinking" });
165
- const connectionDeps = { ...this.deps, userApiKeys, userId: user.id };
173
+ const connectionDeps = {
174
+ ...this.deps,
175
+ userApiKeys,
176
+ userId: user.id,
177
+ clientIp: getClientIp(req),
178
+ };
166
179
  const result = await executeVoiceTool(fnName, fnArgs, connectionDeps);
167
180
  // ── Handle stop_voice: say goodbye then close ──
168
181
  if (result === "__STOP_VOICE__") {
@@ -214,8 +227,16 @@ export class VoiceAssistantService {
214
227
  }
215
228
  // ── Interruption (server VAD detected user speech) ───
216
229
  case "input_audio_buffer.speech_started":
230
+ timing.speechStartedAt = performance.now();
231
+ logTiming("speech_started", {
232
+ ms_after_first_audio: timing.firstAudioAt === undefined
233
+ ? undefined
234
+ : Math.round(timing.speechStartedAt - timing.firstAudioAt),
235
+ response_in_progress: responseInProgress,
236
+ });
217
237
  // User started speaking — cancel only if assistant is actively responding
218
238
  if (responseInProgress) {
239
+ timing.interruptStartedAt = performance.now();
219
240
  suppressAssistantAudio = true;
220
241
  openaiWs.send(JSON.stringify({ type: "response.cancel" }));
221
242
  send(clientWs, { type: "audio.interrupt" });
@@ -227,15 +248,34 @@ export class VoiceAssistantService {
227
248
  // Acknowledged by OpenAI after we sent conversation.item.truncate
228
249
  break;
229
250
  case "input_audio_buffer.speech_stopped":
251
+ timing.speechStoppedAt = performance.now();
252
+ timing.responseStartedAt = undefined;
253
+ timing.firstAudioAt = undefined;
254
+ logTiming("speech_stopped", {
255
+ speech_ms: timing.speechStartedAt === undefined
256
+ ? undefined
257
+ : Math.round(timing.speechStoppedAt - timing.speechStartedAt),
258
+ });
230
259
  // Server VAD detected end of speech — response will be created automatically
231
260
  break;
232
261
  case "response.cancelled":
262
+ if (timing.interruptStartedAt !== undefined) {
263
+ logTiming("interrupt_cancelled", {
264
+ cancel_ms: Math.round(performance.now() - timing.interruptStartedAt),
265
+ });
266
+ timing.interruptStartedAt = undefined;
267
+ }
233
268
  responseInProgress = false;
234
269
  suppressAssistantAudio = false;
235
270
  flushNextAnnouncement();
236
271
  send(clientWs, { type: "status", status: "listening" });
237
272
  break;
238
273
  case "response.done":
274
+ if (timing.firstAudioAt !== undefined) {
275
+ logTiming("response_done", {
276
+ audio_ms: Math.round(performance.now() - timing.firstAudioAt),
277
+ });
278
+ }
239
279
  responseInProgress = false;
240
280
  suppressAssistantAudio = false;
241
281
  // If a tool result was submitted while a response was active, trigger now
@@ -292,6 +332,7 @@ export class VoiceAssistantService {
292
332
  break;
293
333
  case "interrupt":
294
334
  if (responseInProgress) {
335
+ timing.interruptStartedAt = performance.now();
295
336
  suppressAssistantAudio = true;
296
337
  openaiWs.send(JSON.stringify({ type: "response.cancel" }));
297
338
  send(clientWs, { type: "audio.interrupt" });
@@ -329,6 +370,44 @@ export class VoiceAssistantService {
329
370
  catch { }
330
371
  });
331
372
  }
373
+ buildSessionUpdate(username) {
374
+ return {
375
+ type: "session.update",
376
+ session: {
377
+ type: "realtime",
378
+ instructions: this.buildInstructions(username),
379
+ voice: this.deps.config.realtimeVoice,
380
+ turn_detection: this.buildTurnDetection(),
381
+ tools: getVoiceToolSchemas(),
382
+ tool_choice: "auto",
383
+ },
384
+ };
385
+ }
386
+ buildTurnDetection() {
387
+ const mode = (process.env["OPENAI_REALTIME_TURN_DETECTION"] ?? "server_vad").trim();
388
+ if (mode === "disabled" || mode === "none" || mode === "manual")
389
+ return null;
390
+ if (mode === "semantic_vad") {
391
+ const rawEagerness = process.env["OPENAI_REALTIME_SEMANTIC_EAGERNESS"] ?? "auto";
392
+ const eagerness = ["low", "medium", "high", "auto"].includes(rawEagerness)
393
+ ? rawEagerness
394
+ : "auto";
395
+ return {
396
+ type: "semantic_vad",
397
+ eagerness,
398
+ create_response: true,
399
+ interrupt_response: true,
400
+ };
401
+ }
402
+ return {
403
+ type: "server_vad",
404
+ threshold: envNumber("OPENAI_REALTIME_VAD_THRESHOLD", 0.5),
405
+ prefix_padding_ms: envInteger("OPENAI_REALTIME_PREFIX_PADDING_MS", 300),
406
+ silence_duration_ms: envInteger("OPENAI_REALTIME_SILENCE_DURATION_MS", 450),
407
+ create_response: true,
408
+ interrupt_response: true,
409
+ };
410
+ }
332
411
  buildInstructions(username) {
333
412
  const locale = Intl.DateTimeFormat().resolvedOptions().locale || "en";
334
413
  return `# Persona
@@ -364,6 +443,7 @@ You have direct access to the Jait system through function calls:
364
443
  - send_to_agent — delegate coding tasks to CLI agents
365
444
  - search_memory, save_memory — recall and store information
366
445
  - search_web — look up current events, news, facts
446
+ - get_location — approximate current location for local questions
367
447
  - get_weather — weather by city
368
448
  - get_time_and_date — current time
369
449
  - get_system_info — host computer resources
@@ -375,6 +455,7 @@ You have direct access to the Jait system through function calls:
375
455
  - When the user tells you personal information, use save_memory to remember it.
376
456
  - Before answering questions about past interactions, use search_memory.
377
457
  - Default to ask_agent_about_request for almost every real question from the user.
458
+ - If the user says "ask the normal agent", "ask a normal agent", "ask the regular agent", "ask Jait agent", "ask Codex", or "ask an agent", you MUST call ask_agent_about_request with the user's exact request.
378
459
  - Only answer without ask_agent_about_request for very small talk or direct one-tool lookups like time/date, weather, memory recall, or short greetings.
379
460
  - When the user asks what something is, how something works, why something happened, what a tool/result means, or asks for a deeper explanation about Jait, code, threads, tools, providers, sessions, errors, or workspace state, you MUST call ask_agent_about_request before answering.
380
461
  - Use ask_agent_about_request whenever the normal agent is likely to know materially more than you do, which is most non-trivial questions.
@@ -387,4 +468,24 @@ function send(ws, msg) {
387
468
  ws.send(JSON.stringify(msg));
388
469
  }
389
470
  }
471
+ function getClientIp(req) {
472
+ const forwarded = req.headers["x-forwarded-for"];
473
+ if (typeof forwarded === "string" && forwarded.trim()) {
474
+ return forwarded.split(",")[0]?.trim();
475
+ }
476
+ if (Array.isArray(forwarded) && forwarded[0]) {
477
+ return forwarded[0].split(",")[0]?.trim();
478
+ }
479
+ return req.socket.remoteAddress;
480
+ }
481
+ function envNumber(name, fallback) {
482
+ const raw = process.env[name];
483
+ if (!raw)
484
+ return fallback;
485
+ const parsed = Number(raw);
486
+ return Number.isFinite(parsed) ? parsed : fallback;
487
+ }
488
+ function envInteger(name, fallback) {
489
+ return Math.round(envNumber(name, fallback));
490
+ }
390
491
  //# sourceMappingURL=service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/voice-assistant/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/voice-assistant/service.ts"],"names":[],"mappings":"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"}
@@ -28,6 +28,8 @@ export interface VoiceToolDeps {
28
28
  toolExecutor?: (name: string, input: unknown, ctx: ToolContext) => Promise<ToolResult>;
29
29
  /** Per-connection user API keys (from user settings). */
30
30
  userApiKeys?: Record<string, string>;
31
+ /** Client IP from the voice WebSocket request, used only for coarse location lookup. */
32
+ clientIp?: string;
31
33
  }
32
34
  /** OpenAI function-calling tool schema */
33
35
  export interface RealtimeToolDef {
@@ -1 +1 @@
1
- {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/voice-assistant/tools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAErE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAG9C,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,SAAS,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,YAAY,CAAC,EAAE,mBAAmB,CAAC;IACnC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,WAAW,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC;IACvF,yDAAyD;IACzD,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACtC;AAED,0CAA0C;AAC1C,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC;AAED,gDAAgD;AAChD,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,eAAe,CAAC;IACxB,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,aAAa,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CAClF;AAshBD,yDAAyD;AACzD,wBAAgB,mBAAmB,IAAI,eAAe,EAAE,CAEvD;AAED,sFAAsF;AACtF,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,IAAI,EAAE,aAAa,GAClB,OAAO,CAAC,MAAM,CAAC,CAQjB"}
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/voice-assistant/tools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAErE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAG9C,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,SAAS,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,YAAY,CAAC,EAAE,mBAAmB,CAAC;IACnC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,WAAW,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC;IACvF,yDAAyD;IACzD,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,wFAAwF;IACxF,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,0CAA0C;AAC1C,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC;AAED,gDAAgD;AAChD,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,eAAe,CAAC;IACxB,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,aAAa,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CAClF;AA4mBD,yDAAyD;AACzD,wBAAgB,mBAAmB,IAAI,eAAe,EAAE,CAEvD;AAED,sFAAsF;AACtF,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,IAAI,EAAE,aAAa,GAClB,OAAO,CAAC,MAAM,CAAC,CAQjB"}