@kafca/agentdock 0.1.46 → 0.1.48

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 (103) hide show
  1. package/README.md +11 -0
  2. package/dist/renderer/assets/{Badge-BIesaDYG.js → Badge-C92lMj9Q.js} +1 -1
  3. package/dist/renderer/assets/{Chat-CpataoDh.js → Chat-DqoKCPwz.js} +1 -1
  4. package/dist/renderer/assets/{ChatMarkdown-_Mdmltgv.js → ChatMarkdown-C4psQvmt.js} +1 -1
  5. package/dist/renderer/assets/{Config-Pe5-zKZk.js → Config-1uk8FQL7.js} +2 -2
  6. package/dist/renderer/assets/{CronList-BnaOSPT8.js → CronList-DnKCiYWC.js} +1 -1
  7. package/dist/renderer/assets/{Dashboard-D05l8GKE.js → Dashboard-rOAQcJA0.js} +2 -2
  8. package/dist/renderer/assets/{EmptyState-BDBavDll.js → EmptyState-bF6Sc61O.js} +1 -1
  9. package/dist/renderer/assets/{KnowledgeDetail-DvR798l_.js → KnowledgeDetail-C5-Dp95R.js} +2 -2
  10. package/dist/renderer/assets/{KnowledgeHome-r2ZuvU8-.js → KnowledgeHome-DGa1EWXD.js} +2 -2
  11. package/dist/renderer/assets/{Logs-BaljtmAV.js → Logs-CKKVW2k8.js} +1 -1
  12. package/dist/renderer/assets/{Modal-CXhD_OWR.js → Modal-DIc9HxD5.js} +3 -3
  13. package/dist/renderer/assets/{MonitorList-D7tyipbx.js → MonitorList-D2YOJRIX.js} +1 -1
  14. package/dist/renderer/assets/{Page-KUuFYgjg.js → Page-vZ-_l6Kn.js} +1 -1
  15. package/dist/renderer/assets/ProjectDetail-CqTa6kAh.js +11 -0
  16. package/dist/renderer/assets/{ProjectList-CbdHd5Ev.js → ProjectList-LgDQVVyZ.js} +1 -1
  17. package/dist/renderer/assets/{Select-Djc8BXMC.js → Select-BN2HMOmY.js} +1 -1
  18. package/dist/renderer/assets/SessionChat-Beco1N1T.js +1 -0
  19. package/dist/renderer/assets/{SessionList-DHgl1s1D.js → SessionList-3NkskCJJ.js} +1 -1
  20. package/dist/renderer/assets/ThreadChat-Ji8pOm5p.js +28 -0
  21. package/dist/renderer/assets/{Workspace-DTocqY-F.js → Workspace-yarrGItB.js} +1 -1
  22. package/dist/renderer/assets/{arrow-left-CXyya3hP.js → arrow-left-DNovvfPp.js} +1 -1
  23. package/dist/renderer/assets/{book-open-9n4Kxc7E.js → book-open-CarZFsXv.js} +1 -1
  24. package/dist/renderer/assets/{bot-C9HBk5XH.js → bot-g16rGMp6.js} +1 -1
  25. package/dist/renderer/assets/{check-CutSg9a5.js → check-DjFX73Zi.js} +1 -1
  26. package/dist/renderer/assets/{chevron-down-DrydR4i3.js → chevron-down-B02YlQS_.js} +1 -1
  27. package/dist/renderer/assets/{circle-BEjtahw6.js → circle-DPfWdG1F.js} +1 -1
  28. package/dist/renderer/assets/{desktop-DATgk_ka.js → desktop-DMkue1T6.js} +1 -1
  29. package/dist/renderer/assets/{funnel-BhqZpS4f.js → funnel-Dy1VL-D9.js} +1 -1
  30. package/dist/renderer/assets/{heart-Dp8Vs-7_.js → heart-YjvGwq5-.js} +1 -1
  31. package/dist/renderer/assets/{index-BKpv0P0s.js → index-CZN1STMc.js} +2 -2
  32. package/dist/renderer/assets/index-CjCuR6DI.css +11 -0
  33. package/dist/renderer/assets/{index-cI3pWBnN.js → index-mvjDN9uV.js} +9 -9
  34. package/dist/renderer/assets/{pencil-ywcJzeOo.js → pencil-qpMjLIFd.js} +1 -1
  35. package/dist/renderer/assets/{play-AtN492Cx.js → play-CPCcNQcH.js} +1 -1
  36. package/dist/renderer/assets/{plus-BEj14BBV.js → plus-B76JWGKd.js} +1 -1
  37. package/dist/renderer/assets/projects-C1nFINjh.js +1 -0
  38. package/dist/renderer/assets/{save-D6ov4CNv.js → save-DtvrD3W1.js} +1 -1
  39. package/dist/renderer/assets/{search-C3bvw7AR.js → search-Ddth-YHH.js} +1 -1
  40. package/dist/renderer/assets/{server-C1Uyedyx.js → server-D0zmghb3.js} +1 -1
  41. package/dist/renderer/assets/{session-utils-DpRwJ6Nh.js → session-utils-C9oe-21F.js} +1 -1
  42. package/dist/renderer/assets/{sessions-BWmAppwK.js → sessions-BXOnLLah.js} +1 -1
  43. package/dist/renderer/assets/{shield-check-CVx1mEs2.js → shield-check-Cv5d_blH.js} +1 -1
  44. package/dist/renderer/assets/{trash-2-o-heXOgs.js → trash-2-C2mimX2b.js} +1 -1
  45. package/dist/renderer/assets/{user-dPOzUqIc.js → user-BrLJ4elW.js} +1 -1
  46. package/dist/renderer/assets/{wifi-off-Fz5c3_x_.js → wifi-off-DvRJYLbG.js} +1 -1
  47. package/dist/renderer/index.html +2 -2
  48. package/dist-electron/packages/core-sdk/src/index.js +4 -0
  49. package/dist-electron/services/local-ai-core/src/acp/local-core-acp-session-coordinator.js +53 -7
  50. package/dist-electron/services/local-ai-core/src/acp/store/local-core-acp-store.js +3 -0
  51. package/dist-electron/services/local-ai-core/src/acp/store/platform-store.js +13 -5
  52. package/dist-electron/services/local-ai-core/src/acp/store/schema.js +1 -0
  53. package/dist-electron/services/local-ai-core/src/acp/store/thread-store.js +3 -0
  54. package/dist-electron/services/local-ai-core/src/agents/pi/launch.js +1 -1
  55. package/dist-electron/services/local-ai-core/src/agents/shared/launch-utils.js +22 -0
  56. package/dist-electron/services/local-ai-core/src/channel/lark/local-core-lark-gateway.js +132 -348
  57. package/dist-electron/services/local-ai-core/src/channel/shared/base-channel-gateway.js +306 -0
  58. package/dist-electron/services/local-ai-core/src/channel/shared/session-command-runtime.js +14 -3
  59. package/dist-electron/services/local-ai-core/src/channel/weixin/local-core-weixin-gateway.js +131 -382
  60. package/dist-electron/services/local-ai-core/src/router/workspace-router.js +8 -1
  61. package/dist-electron/services/local-ai-core/src/runtime/agent-runtime-detector.js +2 -1
  62. package/dist-electron/services/local-ai-core/src/runtime/channel-service.js +150 -0
  63. package/dist-electron/services/local-ai-core/src/runtime/env-utils.js +12 -0
  64. package/dist-electron/services/local-ai-core/src/runtime/external-service.js +234 -0
  65. package/dist-electron/services/local-ai-core/src/runtime/handlers/automation-handler.js +34 -0
  66. package/dist-electron/services/local-ai-core/src/runtime/handlers/capabilities-handler.js +12 -0
  67. package/dist-electron/services/local-ai-core/src/runtime/handlers/channel-handler.js +65 -0
  68. package/dist-electron/services/local-ai-core/src/runtime/handlers/external-handler.js +17 -0
  69. package/dist-electron/services/local-ai-core/src/runtime/handlers/knowledge-handler.js +65 -0
  70. package/dist-electron/services/local-ai-core/src/runtime/handlers/openai-handler.js +496 -0
  71. package/dist-electron/services/local-ai-core/src/runtime/handlers/provider-handler.js +24 -0
  72. package/dist-electron/services/local-ai-core/src/runtime/handlers/runtime-handler.js +68 -0
  73. package/dist-electron/services/local-ai-core/src/runtime/handlers/runtimes-handler.js +37 -0
  74. package/dist-electron/services/local-ai-core/src/runtime/handlers/scheduler-handler.js +34 -0
  75. package/dist-electron/services/local-ai-core/src/runtime/handlers/security-handler.js +49 -0
  76. package/dist-electron/services/local-ai-core/src/runtime/handlers/task-handler.js +27 -0
  77. package/dist-electron/services/local-ai-core/src/runtime/handlers/thread-handler.js +46 -0
  78. package/dist-electron/services/local-ai-core/src/runtime/handlers/workspace-handler.js +29 -0
  79. package/dist-electron/services/local-ai-core/src/runtime/local-core-controller.js +40 -592
  80. package/dist-electron/services/local-ai-core/src/runtime/server-helpers.js +96 -0
  81. package/dist-electron/services/local-ai-core/src/runtime/server-routes.js +3 -0
  82. package/dist-electron/services/local-ai-core/src/runtime/server.js +107 -1084
  83. package/dist-electron/services/local-ai-core/src/runtime/standalone.js +13 -1
  84. package/dist-electron/services/local-ai-core/src/thread/thread-command-service.js +23 -2
  85. package/dist-electron/services/local-ai-core/src/thread/thread-slash-command-dispatcher.js +1 -0
  86. package/dist-electron/src/pages/Projects/project-provider-config.js +75 -0
  87. package/dist-electron/src/pages/Threads/thread-chat-model.js +2 -0
  88. package/dist-electron/tests/contracts/architecture-docs.test.js +1 -0
  89. package/dist-electron/tests/electron/agent-runtime-detector.test.js +18 -0
  90. package/dist-electron/tests/electron/knowledge-skill-script.test.js +15 -5
  91. package/dist-electron/tests/electron/lac-cli.test.js +591 -688
  92. package/dist-electron/tests/electron/plugin-kernel.test.js +47 -31
  93. package/dist-electron/tests/electron/project-provider-config.test.js +71 -0
  94. package/dist-electron/tests/electron/workspace-task-store.test.js +40 -11
  95. package/dist-electron/tests/integration/local-core-cors.test.js +22 -0
  96. package/dist-electron/tests/integration/local-core-refactor.test.js +177 -0
  97. package/dist-electron/tests/integration/local-core-routes.test.js +45 -0
  98. package/package.json +2 -2
  99. package/dist/renderer/assets/ProjectDetail-Ddq94-yu.js +0 -11
  100. package/dist/renderer/assets/SessionChat-DOy0iKQR.js +0 -1
  101. package/dist/renderer/assets/ThreadChat-I7dYibDc.js +0 -23
  102. package/dist/renderer/assets/index-CO4fGqmv.css +0 -11
  103. package/dist/renderer/assets/projects-Clar8lgb.js +0 -1
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.registerSecurityHandlers = registerSecurityHandlers;
4
+ const server_helpers_js_1 = require("../server-helpers.js");
5
+ function registerSecurityHandlers(map, workspaceRouter) {
6
+ map.set('workspace-security.get', async (route, _req, res) => {
7
+ (0, server_helpers_js_1.json)(res, 200, await workspaceRouter.getWorkspaceSecuritySettings(route.workspaceId));
8
+ });
9
+ map.set('workspace-security.update', async (route, req, res) => {
10
+ const body = await (0, server_helpers_js_1.readJsonBody)(req);
11
+ (0, server_helpers_js_1.json)(res, 200, await workspaceRouter.updateWorkspaceSecuritySettings(route.workspaceId, body));
12
+ });
13
+ map.set('security.command-risk.classify', async (_route, req, res) => {
14
+ const body = await (0, server_helpers_js_1.readJsonBody)(req);
15
+ (0, server_helpers_js_1.json)(res, 200, await workspaceRouter.classifyCommand(String(body.command || ''), String(body.workspaceId || '') || undefined));
16
+ });
17
+ map.set('approvals.list', async (_route, _req, res, url) => {
18
+ const statusParam = url.searchParams.get('status') || '';
19
+ const status = statusParam ? statusParam.split(',').map((item) => item.trim()).filter(Boolean) : undefined;
20
+ (0, server_helpers_js_1.json)(res, 200, await workspaceRouter.listApprovalRequests({
21
+ workspaceId: url.searchParams.get('workspace_id') || undefined,
22
+ taskId: url.searchParams.get('task_id') || undefined,
23
+ status,
24
+ limit: Number(url.searchParams.get('limit') || '50'),
25
+ }));
26
+ });
27
+ map.set('approvals.create', async (_route, req, res) => {
28
+ const body = await (0, server_helpers_js_1.readJsonBody)(req);
29
+ (0, server_helpers_js_1.json)(res, 200, await workspaceRouter.createApprovalRequest(body));
30
+ });
31
+ map.set('approval.get', async (route, _req, res) => {
32
+ (0, server_helpers_js_1.json)(res, 200, await workspaceRouter.getApprovalRequest(route.approvalId));
33
+ });
34
+ map.set('approval.resolve', async (route, req, res) => {
35
+ const body = await (0, server_helpers_js_1.readJsonBody)(req);
36
+ (0, server_helpers_js_1.json)(res, 200, await workspaceRouter.resolveApprovalRequest(route.approvalId, body));
37
+ });
38
+ map.set('audit-events.list', async (_route, _req, res, url) => {
39
+ const typeParam = url.searchParams.get('type') || '';
40
+ const type = typeParam ? typeParam.split(',').map((item) => item.trim()).filter(Boolean) : undefined;
41
+ (0, server_helpers_js_1.json)(res, 200, await workspaceRouter.listAuditEvents({
42
+ workspaceId: url.searchParams.get('workspace_id') || undefined,
43
+ taskId: url.searchParams.get('task_id') || undefined,
44
+ approvalId: url.searchParams.get('approval_id') || undefined,
45
+ type,
46
+ limit: Number(url.searchParams.get('limit') || '50'),
47
+ }));
48
+ });
49
+ }
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.registerTaskHandlers = registerTaskHandlers;
4
+ const server_helpers_js_1 = require("../server-helpers.js");
5
+ function registerTaskHandlers(map, workspaceRouter) {
6
+ map.set('tasks.list', async (_route, _req, res, url) => {
7
+ const statusParam = url.searchParams.get('status') || '';
8
+ const status = statusParam ? statusParam.split(',').map((item) => item.trim()).filter(Boolean) : undefined;
9
+ (0, server_helpers_js_1.json)(res, 200, await workspaceRouter.listAgentTasks({
10
+ workspaceId: url.searchParams.get('workspace_id') || undefined,
11
+ runtimeId: url.searchParams.get('runtime_id') || undefined,
12
+ status,
13
+ limit: Number(url.searchParams.get('limit') || '50'),
14
+ }));
15
+ });
16
+ map.set('tasks.create', async (_route, req, res) => {
17
+ const body = await (0, server_helpers_js_1.readJsonBody)(req);
18
+ (0, server_helpers_js_1.json)(res, 200, await workspaceRouter.createAgentTask(body));
19
+ });
20
+ map.set('task.get', async (route, _req, res) => {
21
+ (0, server_helpers_js_1.json)(res, 200, await workspaceRouter.getAgentTask(route.taskId));
22
+ });
23
+ map.set('task.update', async (route, req, res) => {
24
+ const body = await (0, server_helpers_js_1.readJsonBody)(req);
25
+ (0, server_helpers_js_1.json)(res, 200, await workspaceRouter.updateAgentTask(route.taskId, body));
26
+ });
27
+ }
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.registerThreadHandlers = registerThreadHandlers;
4
+ const server_helpers_js_1 = require("../server-helpers.js");
5
+ function registerThreadHandlers(map, workspaceRouter) {
6
+ map.set('threads.list', async (_route, _req, res, url) => {
7
+ const workspaceId = String(url.searchParams.get('workspace_id') || '');
8
+ (0, server_helpers_js_1.json)(res, 200, { threads: workspaceId ? await workspaceRouter.listThreads(workspaceId) : [] });
9
+ });
10
+ map.set('threads.create', async (_route, req, res) => {
11
+ const body = await (0, server_helpers_js_1.readJsonBody)(req);
12
+ (0, server_helpers_js_1.json)(res, 200, await workspaceRouter.createThread(String(body.workspaceId || ''), String(body.title || '') || undefined));
13
+ });
14
+ map.set('thread.get', async (route, _req, res) => {
15
+ (0, server_helpers_js_1.json)(res, 200, await workspaceRouter.getThread(route.threadId));
16
+ });
17
+ map.set('thread.update-knowledge-bases', async (route, req, res) => {
18
+ const body = await (0, server_helpers_js_1.readJsonBody)(req);
19
+ const knowledgeBaseIds = Array.isArray(body.knowledgeBaseIds)
20
+ ? body.knowledgeBaseIds.map((value) => String(value || ''))
21
+ : [];
22
+ (0, server_helpers_js_1.json)(res, 200, await workspaceRouter.updateThreadKnowledgeBases(route.threadId, knowledgeBaseIds));
23
+ });
24
+ map.set('thread.update-mode', async (route, req, res) => {
25
+ const body = await (0, server_helpers_js_1.readJsonBody)(req);
26
+ (0, server_helpers_js_1.json)(res, 200, await workspaceRouter.setThreadMode(route.threadId, String(body.mode || '')));
27
+ });
28
+ map.set('thread.rename', async (route, req, res) => {
29
+ const body = await (0, server_helpers_js_1.readJsonBody)(req);
30
+ (0, server_helpers_js_1.json)(res, 200, await workspaceRouter.renameThread(route.threadId, String(body.title || '')));
31
+ });
32
+ map.set('thread.delete', async (route, _req, res) => {
33
+ (0, server_helpers_js_1.json)(res, 200, await workspaceRouter.deleteThread(route.threadId));
34
+ });
35
+ map.set('thread.messages.send', async (route, req, res) => {
36
+ const body = await (0, server_helpers_js_1.readJsonBody)(req);
37
+ (0, server_helpers_js_1.json)(res, 200, await workspaceRouter.sendThreadMessage(route.threadId, String(body.content || '')));
38
+ });
39
+ map.set('thread.actions.send', async (route, req, res) => {
40
+ const body = await (0, server_helpers_js_1.readJsonBody)(req);
41
+ (0, server_helpers_js_1.json)(res, 200, await workspaceRouter.sendThreadAction(route.threadId, String(body.content || '')));
42
+ });
43
+ map.set('run.interrupt', async (route, _req, res) => {
44
+ (0, server_helpers_js_1.json)(res, 200, await workspaceRouter.interruptRun(route.runId));
45
+ });
46
+ }
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.registerWorkspaceHandlers = registerWorkspaceHandlers;
4
+ const server_helpers_js_1 = require("../server-helpers.js");
5
+ function registerWorkspaceHandlers(map, workspaceRouter) {
6
+ map.set('workspaces.list', async (_route, _req, res) => {
7
+ (0, server_helpers_js_1.json)(res, 200, { workspaces: await workspaceRouter.listWorkspaces() });
8
+ });
9
+ map.set('workspace.streaming-probe', async (route, _req, res) => {
10
+ (0, server_helpers_js_1.json)(res, 200, await workspaceRouter.probeWorkspaceStreaming(route.workspaceId));
11
+ });
12
+ map.set('workspace-registry.list', async (_route, _req, res) => {
13
+ (0, server_helpers_js_1.json)(res, 200, { workspaces: await workspaceRouter.listWorkspaceRegistry() });
14
+ });
15
+ map.set('workspace-registry.create', async (_route, req, res) => {
16
+ const body = await (0, server_helpers_js_1.readJsonBody)(req);
17
+ (0, server_helpers_js_1.json)(res, 200, await workspaceRouter.createWorkspaceRegistryEntry(body));
18
+ });
19
+ map.set('workspace-registry.get', async (route, _req, res) => {
20
+ (0, server_helpers_js_1.json)(res, 200, await workspaceRouter.getWorkspaceRegistryEntry(route.workspaceId));
21
+ });
22
+ map.set('workspace-registry.update', async (route, req, res) => {
23
+ const body = await (0, server_helpers_js_1.readJsonBody)(req);
24
+ (0, server_helpers_js_1.json)(res, 200, await workspaceRouter.updateWorkspaceRegistryEntry(route.workspaceId, body));
25
+ });
26
+ map.set('workspace-registry.delete', async (route, _req, res) => {
27
+ (0, server_helpers_js_1.json)(res, 200, await workspaceRouter.deleteWorkspaceRegistryEntry(route.workspaceId));
28
+ });
29
+ }