chainlesschain 0.45.70 → 0.45.75

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 (89) hide show
  1. package/package.json +1 -1
  2. package/src/assets/web-panel/.build-hash +1 -1
  3. package/src/assets/web-panel/assets/Analytics-B4OM8S8X.css +1 -0
  4. package/src/assets/web-panel/assets/Analytics-sBrYoc3A.js +3 -0
  5. package/src/assets/web-panel/assets/AppLayout-2RCrdXxl.js +1 -0
  6. package/src/assets/web-panel/assets/AppLayout-D9pBLPC3.css +1 -0
  7. package/src/assets/web-panel/assets/Backup-D68fenbD.js +1 -0
  8. package/src/assets/web-panel/assets/Backup-fZqtfC1m.css +1 -0
  9. package/src/assets/web-panel/assets/{Chat-DXtvKoM0.js → Chat-B2nB8o_F.js} +1 -1
  10. package/src/assets/web-panel/assets/{Cron-BJ4ODHOy.js → Cron-CNs03iHJ.js} +2 -2
  11. package/src/assets/web-panel/assets/{Dashboard-BZd4wDPQ.js → Dashboard-DanoHPSI.js} +2 -2
  12. package/src/assets/web-panel/assets/Git-CCMVr3Y8.js +2 -0
  13. package/src/assets/web-panel/assets/Git-DGcuBXST.css +1 -0
  14. package/src/assets/web-panel/assets/{Logs-CSeKZEG_.js → Logs-BY6A0UNG.js} +2 -2
  15. package/src/assets/web-panel/assets/{McpTools-BYQAK11r.js → McpTools-CrBVYlg6.js} +2 -2
  16. package/src/assets/web-panel/assets/{Memory-gkUAPyuZ.js → Memory-CWx3SpUt.js} +2 -2
  17. package/src/assets/web-panel/assets/{Notes-bjNrQgAo.js → Notes-1LcGD49x.js} +2 -2
  18. package/src/assets/web-panel/assets/Organization-DdOOM4ic.css +1 -0
  19. package/src/assets/web-panel/assets/Organization-Dx2DhbkM.js +4 -0
  20. package/src/assets/web-panel/assets/P2P-B16fjqfJ.js +2 -0
  21. package/src/assets/web-panel/assets/P2P-OEzOeMZX.css +1 -0
  22. package/src/assets/web-panel/assets/Permissions-BQbC9FzG.js +4 -0
  23. package/src/assets/web-panel/assets/Permissions-C9WlkGl-.css +1 -0
  24. package/src/assets/web-panel/assets/Projects-CjhZbNYm.js +2 -0
  25. package/src/assets/web-panel/assets/Projects-DxKelI5h.css +1 -0
  26. package/src/assets/web-panel/assets/Providers-BEakqcO5.css +1 -0
  27. package/src/assets/web-panel/assets/Providers-ivOAQtHM.js +2 -0
  28. package/src/assets/web-panel/assets/RssFeed-BlFC20eg.css +1 -0
  29. package/src/assets/web-panel/assets/RssFeed-BrsErdrU.js +3 -0
  30. package/src/assets/web-panel/assets/Security-DnEvJU5h.js +4 -0
  31. package/src/assets/web-panel/assets/Security-Dwxw7rfP.css +1 -0
  32. package/src/assets/web-panel/assets/{Services-CS0oMdxh.js → Services-7jQywNbl.js} +2 -2
  33. package/src/assets/web-panel/assets/Skills-CLlblJcG.js +1 -0
  34. package/src/assets/web-panel/assets/{Tasks-qULws8pc.js → Tasks-CmJBC1cf.js} +1 -1
  35. package/src/assets/web-panel/assets/Templates-DOY_oZnm.css +1 -0
  36. package/src/assets/web-panel/assets/Templates-RXT8-DNk.js +1 -0
  37. package/src/assets/web-panel/assets/Wallet-3iYASEx_.js +4 -0
  38. package/src/assets/web-panel/assets/Wallet-DnIumafl.css +1 -0
  39. package/src/assets/web-panel/assets/WebAuthn-CNPl2VQR.css +1 -0
  40. package/src/assets/web-panel/assets/WebAuthn-s3Hzd9db.js +5 -0
  41. package/src/assets/web-panel/assets/{antd-CJSBocer.js → antd-gZyc63Qr.js} +114 -114
  42. package/src/assets/web-panel/assets/chat-DWBA4-cl.js +1 -0
  43. package/src/assets/web-panel/assets/index-CyGtHm63.js +2 -0
  44. package/src/assets/web-panel/assets/{markdown-Bo5cVN4u.js → markdown-Bv7nG63L.js} +1 -1
  45. package/src/assets/web-panel/assets/ws-CU7Gvoom.js +1 -0
  46. package/src/assets/web-panel/index.html +2 -2
  47. package/src/commands/doctor.js +33 -151
  48. package/src/commands/mcp.js +1 -1
  49. package/src/commands/plugin.js +1 -1
  50. package/src/commands/session.js +106 -7
  51. package/src/commands/status.js +39 -69
  52. package/src/gateways/ws/session-protocol.js +1 -1
  53. package/src/gateways/ws/ws-agent-handler.js +484 -0
  54. package/src/gateways/ws/ws-server.js +758 -4
  55. package/src/gateways/ws/ws-session-gateway.js +1432 -1
  56. package/src/harness/mcp-client.js +417 -0
  57. package/src/harness/mock-llm-provider.js +167 -0
  58. package/src/harness/plugin-manager.js +434 -0
  59. package/src/lib/agent-core.js +25 -1902
  60. package/src/lib/hashline.js +208 -0
  61. package/src/lib/jsonl-session-store.js +11 -0
  62. package/src/lib/mcp-client.js +14 -412
  63. package/src/lib/plugin-manager.js +29 -428
  64. package/src/lib/prompt-compressor.js +11 -0
  65. package/src/lib/session-hooks.js +61 -0
  66. package/src/lib/skill-loader.js +4 -0
  67. package/src/lib/skill-mcp.js +190 -0
  68. package/src/lib/workflow-state-reader.js +94 -0
  69. package/src/lib/ws-agent-handler.js +8 -472
  70. package/src/lib/ws-server.js +12 -756
  71. package/src/lib/ws-session-manager.js +8 -1417
  72. package/src/repl/agent-repl.js +27 -3
  73. package/src/runtime/agent-core.js +1760 -0
  74. package/src/runtime/agent-runtime.js +3 -1
  75. package/src/runtime/coding-agent-contract-shared.cjs +496 -0
  76. package/src/runtime/coding-agent-contract.js +49 -229
  77. package/src/runtime/coding-agent-policy.cjs +54 -5
  78. package/src/runtime/diagnostics.js +317 -0
  79. package/src/runtime/index.js +3 -0
  80. package/src/tools/index.js +3 -0
  81. package/src/tools/legacy-agent-tools.js +5 -0
  82. package/src/assets/web-panel/assets/AppLayout-B_tkw3Pn.js +0 -1
  83. package/src/assets/web-panel/assets/AppLayout-CFP4dGIJ.css +0 -1
  84. package/src/assets/web-panel/assets/Providers-Brm-S_hS.css +0 -1
  85. package/src/assets/web-panel/assets/Providers-Dbf57Tbv.js +0 -1
  86. package/src/assets/web-panel/assets/Skills-B2fgruv8.js +0 -1
  87. package/src/assets/web-panel/assets/chat-DnH09sSR.js +0 -1
  88. package/src/assets/web-panel/assets/index-IK-oro0g.js +0 -2
  89. package/src/assets/web-panel/assets/ws-DjelKkD6.js +0 -1
@@ -36,7 +36,7 @@ import {
36
36
  appendCompactEvent,
37
37
  rebuildMessages,
38
38
  sessionExists,
39
- } from "../lib/jsonl-session-store.js";
39
+ } from "../harness/jsonl-session-store.js";
40
40
  import { storeMemory, consolidateMemory } from "../lib/hierarchical-memory.js";
41
41
  import { CLIContextEngineering } from "../lib/cli-context-engineering.js";
42
42
  import { createChatFn } from "../lib/cowork-adapter.js";
@@ -46,16 +46,18 @@ import {
46
46
  } from "../lib/task-model-selector.js";
47
47
  import { CLIPermanentMemory } from "../lib/permanent-memory.js";
48
48
  import { CLIAutonomousAgent, GoalStatus } from "../lib/autonomous-agent.js";
49
- import { PromptCompressor } from "../lib/prompt-compressor.js";
49
+ import { PromptCompressor } from "../harness/prompt-compressor.js";
50
50
  import { feature } from "../lib/feature-flags.js";
51
51
  import { recordCompressionMetric } from "../lib/compression-telemetry.js";
52
+ import { fireSessionHook } from "../lib/session-hooks.js";
53
+ import { HookEvents } from "../lib/hook-manager.js";
52
54
  import {
53
55
  AGENT_TOOLS,
54
56
  buildSystemPrompt,
55
57
  executeTool as coreExecuteTool,
56
58
  agentLoop as coreAgentLoop,
57
59
  formatToolArgs,
58
- } from "../lib/agent-core.js";
60
+ } from "../runtime/agent-core.js";
59
61
 
60
62
  /**
61
63
  * Reference to the runtime DB for hook execution (set during startAgentRepl)
@@ -259,6 +261,15 @@ export async function startAgentRepl(options = {}) {
259
261
  rl.setPrompt(getPrompt());
260
262
  rl.prompt();
261
263
  };
264
+
265
+ // Fire SessionStart hook (fire-and-forget; hook failures never break REPL)
266
+ await fireSessionHook(_hookDb, HookEvents.SessionStart, {
267
+ sessionId,
268
+ provider,
269
+ model,
270
+ cwd: process.cwd(),
271
+ });
272
+
262
273
  prompt();
263
274
 
264
275
  rl.on("line", async (input) => {
@@ -1042,6 +1053,13 @@ export async function startAgentRepl(options = {}) {
1042
1053
  return;
1043
1054
  }
1044
1055
 
1056
+ // Fire UserPromptSubmit hook (fire-and-forget; observational only)
1057
+ await fireSessionHook(_hookDb, HookEvents.UserPromptSubmit, {
1058
+ sessionId,
1059
+ prompt: trimmed,
1060
+ messageCount: messages.length,
1061
+ });
1062
+
1045
1063
  // Add user message
1046
1064
  messages.push({ role: "user", content: trimmed });
1047
1065
 
@@ -1221,6 +1239,12 @@ export async function startAgentRepl(options = {}) {
1221
1239
  // Non-critical
1222
1240
  }
1223
1241
  }
1242
+ // Fire SessionEnd hook before shutdown (fire-and-forget)
1243
+ await fireSessionHook(_hookDb, HookEvents.SessionEnd, {
1244
+ sessionId,
1245
+ messageCount: messages.length,
1246
+ });
1247
+
1224
1248
  // Shutdown runtime
1225
1249
  try {
1226
1250
  await shutdown();