@tekmidian/pai 0.59.0 → 0.60.0

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 (129) hide show
  1. package/.claude-plugin/plugin.json +8 -33
  2. package/PLUGIN-ARCHITECTURE.md +4 -6
  3. package/dist/{aibroker-client-B8Wtasez.mjs → aibroker-client-BYG-GtAg.mjs} +1 -1
  4. package/dist/{chain-Cltx0NjY.mjs → chain-DFlzAfDE.mjs} +4 -4
  5. package/dist/{chain-Cltx0NjY.mjs.map → chain-DFlzAfDE.mjs.map} +1 -1
  6. package/dist/cli/index.mjs +12 -12
  7. package/dist/cli/program.mjs +12 -12
  8. package/dist/{config-DCYWFaEi.mjs → config-GceCMUxa.mjs} +1 -1
  9. package/dist/{config-D1omG_UU.mjs → config-msER8xj_.mjs} +16 -4
  10. package/dist/config-msER8xj_.mjs.map +1 -0
  11. package/dist/{context-handover-cache-Dt4HW1Ro.mjs → context-handover-cache-DF0xWVB0.mjs} +4 -4
  12. package/dist/{context-handover-cache-Dt4HW1Ro.mjs.map → context-handover-cache-DF0xWVB0.mjs.map} +1 -1
  13. package/dist/daemon/index.mjs +12 -12
  14. package/dist/daemon-BppwJtrH.mjs +19 -0
  15. package/dist/{daemon-CmqJfeb9.mjs → daemon-DArRKBlk.mjs} +97 -23
  16. package/dist/daemon-DArRKBlk.mjs.map +1 -0
  17. package/dist/daemon-mcp/index.mjs +9 -9
  18. package/dist/daemon-mcp/index.mjs.map +1 -1
  19. package/dist/{factory-DiuntvwG.mjs → factory-ChfAvCzO.mjs} +7 -7
  20. package/dist/{factory-DiuntvwG.mjs.map → factory-ChfAvCzO.mjs.map} +1 -1
  21. package/dist/{factory-C9wGUe30.mjs → factory-D6I2jmjQ.mjs} +1 -1
  22. package/dist/{fallback-B_2ozQHw.mjs → fallback-B7VEMMRn.mjs} +80 -9
  23. package/dist/fallback-B7VEMMRn.mjs.map +1 -0
  24. package/dist/hooks/block-sleep-poll.mjs +7590 -0
  25. package/dist/hooks/block-sleep-poll.mjs.map +7 -0
  26. package/dist/hooks/capture-all-events.mjs +8 -4
  27. package/dist/hooks/capture-all-events.mjs.map +2 -2
  28. package/dist/hooks/capture-session-summary.mjs.map +1 -1
  29. package/dist/hooks/capture-tool-output.mjs.map +1 -1
  30. package/dist/hooks/cleanup-session-files.mjs.map +1 -1
  31. package/dist/hooks/context-compression-hook.mjs +6 -6
  32. package/dist/hooks/context-compression-hook.mjs.map +3 -3
  33. package/dist/hooks/initialize-session.mjs.map +1 -1
  34. package/dist/hooks/load-core-context.mjs.map +1 -1
  35. package/dist/hooks/load-project-context.mjs.map +2 -2
  36. package/dist/hooks/post-compact-inject.mjs +1 -1
  37. package/dist/hooks/post-compact-inject.mjs.map +2 -2
  38. package/dist/hooks/route-agents-to-worker.mjs +4 -3
  39. package/dist/hooks/route-agents-to-worker.mjs.map +3 -3
  40. package/dist/hooks/security-validator.mjs +4 -3
  41. package/dist/hooks/security-validator.mjs.map +3 -3
  42. package/dist/hooks/stop-hook.mjs.map +1 -1
  43. package/dist/hooks/sync-todo-to-md.mjs.map +1 -1
  44. package/dist/hooks/whisper-rules.mjs +4 -3
  45. package/dist/hooks/whisper-rules.mjs.map +3 -3
  46. package/dist/hooks/worker-proxy.mjs +4 -3
  47. package/dist/hooks/worker-proxy.mjs.map +3 -3
  48. package/dist/hooks/worker-status-line.mjs +9 -6
  49. package/dist/hooks/worker-status-line.mjs.map +3 -3
  50. package/dist/hooks/worker-supervision.mjs +4 -3
  51. package/dist/hooks/worker-supervision.mjs.map +3 -3
  52. package/dist/{main-resolver-DYNxxNwJ.mjs → main-resolver-BqTjt-GL.mjs} +100 -21
  53. package/dist/main-resolver-BqTjt-GL.mjs.map +1 -0
  54. package/dist/main-resolver-CCojcYr2.mjs +7 -0
  55. package/dist/{planner-DsZZEZCA.mjs → planner-DbpsMZqY.mjs} +83 -30
  56. package/dist/planner-DbpsMZqY.mjs.map +1 -0
  57. package/dist/{program-B5miXqQa.mjs → program-QSuci3RH.mjs} +278 -92
  58. package/dist/program-QSuci3RH.mjs.map +1 -0
  59. package/dist/router-C5hPk9YP.mjs +3 -0
  60. package/dist/{router-BdxdsAvs.mjs → router-DjFZIoDl.mjs} +2 -1
  61. package/dist/router-DjFZIoDl.mjs.map +1 -0
  62. package/dist/{run-XaA-UPdW.mjs → run-BFxuNnIJ.mjs} +100 -17
  63. package/dist/run-BFxuNnIJ.mjs.map +1 -0
  64. package/dist/{run-env-DyTWgZC9.mjs → run-env-kbWVwUvU.mjs} +2 -2
  65. package/dist/{run-env-DyTWgZC9.mjs.map → run-env-kbWVwUvU.mjs.map} +1 -1
  66. package/dist/{server-CzqHGbKt.mjs → server-B0vBmfJt.mjs} +2 -2
  67. package/dist/{server-CzqHGbKt.mjs.map → server-B0vBmfJt.mjs.map} +1 -1
  68. package/dist/{session-keepalive-DDsEo81Q.mjs → session-keepalive-CUcFa8ld.mjs} +5 -5
  69. package/dist/{session-keepalive-DDsEo81Q.mjs.map → session-keepalive-CUcFa8ld.mjs.map} +1 -1
  70. package/dist/{tools-Diro2s8J.mjs → tools-CaTZnIau.mjs} +2 -2
  71. package/dist/{tools-Diro2s8J.mjs.map → tools-CaTZnIau.mjs.map} +1 -1
  72. package/dist/{tools-KgL1rkPD.mjs → tools-_7MF8Ebb.mjs} +3 -3
  73. package/dist/{wakeup-D0uvqLsE.mjs → wakeup-CTX3rlz-.mjs} +2 -2
  74. package/dist/wakeup-CTX3rlz-.mjs.map +1 -0
  75. package/dist/{work-queue-worker-DL9lu8sN.mjs → work-queue-worker-B4eZGy5n.mjs} +2 -2
  76. package/dist/{work-queue-worker-DL9lu8sN.mjs.map → work-queue-worker-B4eZGy5n.mjs.map} +1 -1
  77. package/dist/work-queue-worker-DuhZmfDB.mjs +11 -0
  78. package/docker/init.sql +1 -1
  79. package/docs/commands/README.md +4 -4
  80. package/docs/commands/daemon.md +6 -6
  81. package/docs/commands/session.md +2 -2
  82. package/docs/commands/worker.md +5 -2
  83. package/docs/workers-config.md +5 -1
  84. package/package.json +1 -1
  85. package/plugins/context-preservation/hooks/hooks.json +38 -31
  86. package/plugins/context-preservation/plugin.json +1 -4
  87. package/plugins/core/hooks/hooks.json +51 -46
  88. package/plugins/core/plugin.json +1 -4
  89. package/plugins/creative/plugin.json +1 -5
  90. package/plugins/observability/hooks/hooks.json +87 -72
  91. package/plugins/observability/plugin.json +1 -5
  92. package/plugins/productivity/hooks/hooks.json +22 -19
  93. package/plugins/productivity/plugin.json +2 -5
  94. package/plugins/semantic-search/plugin.json +1 -16
  95. package/plugins/ui/hooks/hooks.json +17 -14
  96. package/plugins/ui/plugin.json +1 -5
  97. package/plugins/zettelkasten/plugin.json +1 -14
  98. package/src/hooks/session-autosave.sh +4 -2
  99. package/src/hooks/session-stop.sh +2 -2
  100. package/src/hooks/ts/capture-all-events.ts +3 -3
  101. package/src/hooks/ts/lib/metadata-extraction.ts +3 -2
  102. package/src/hooks/ts/lib/pai-paths.test.ts +1 -1
  103. package/src/hooks/ts/lib/sleep-poll-gate.test.ts +62 -0
  104. package/src/hooks/ts/lib/sleep-poll-gate.ts +77 -0
  105. package/src/hooks/ts/post-tool-use/capture-tool-output.ts +1 -1
  106. package/src/hooks/ts/post-tool-use/sync-todo-to-md.ts +1 -1
  107. package/src/hooks/ts/pre-compact/context-compression-hook.ts +1 -1
  108. package/src/hooks/ts/pre-tool-use/block-sleep-poll.test.ts +44 -0
  109. package/src/hooks/ts/pre-tool-use/block-sleep-poll.ts +50 -0
  110. package/src/hooks/ts/session-end/capture-session-summary.ts +1 -1
  111. package/src/hooks/ts/session-start/initialize-session.ts +2 -2
  112. package/src/hooks/ts/session-start/load-core-context.ts +2 -2
  113. package/src/hooks/ts/session-start/load-project-context.ts +1 -1
  114. package/src/hooks/ts/stop/stop-hook.ts +1 -1
  115. package/src/hooks/ts/user-prompt/cleanup-session-files.ts +1 -1
  116. package/statusline-command.sh +26 -11
  117. package/dist/config-D1omG_UU.mjs.map +0 -1
  118. package/dist/daemon-B6hx1Ysz.mjs +0 -19
  119. package/dist/daemon-CmqJfeb9.mjs.map +0 -1
  120. package/dist/fallback-B_2ozQHw.mjs.map +0 -1
  121. package/dist/main-resolver-DYNxxNwJ.mjs.map +0 -1
  122. package/dist/main-resolver-Df65bPAi.mjs +0 -7
  123. package/dist/planner-DsZZEZCA.mjs.map +0 -1
  124. package/dist/program-B5miXqQa.mjs.map +0 -1
  125. package/dist/router-BXOf_e9e.mjs +0 -3
  126. package/dist/router-BdxdsAvs.mjs.map +0 -1
  127. package/dist/run-XaA-UPdW.mjs.map +0 -1
  128. package/dist/wakeup-D0uvqLsE.mjs.map +0 -1
  129. package/dist/work-queue-worker-BY7xn4pw.mjs +0 -11
@@ -7371,7 +7371,7 @@ function isWorkerSession(env = process.env) {
7371
7371
 
7372
7372
  // src/hooks/ts/pre-compact/context-compression-hook.ts
7373
7373
  import { existsSync as existsSync10, readFileSync as readFileSync10, writeFileSync as writeFileSync5 } from "fs";
7374
- import { basename as basename4, dirname as dirname3, join as join11 } from "path";
7374
+ import { basename as basename5, dirname as dirname3, join as join11 } from "path";
7375
7375
  import { tmpdir as tmpdir3 } from "os";
7376
7376
  import { connect } from "net";
7377
7377
  import { randomUUID } from "crypto";
@@ -8273,7 +8273,7 @@ function contextWindowFromModelId(model) {
8273
8273
 
8274
8274
  // src/daemon/config.ts
8275
8275
  import { homedir as homedir4, userInfo } from "node:os";
8276
- import { join as join8, dirname as dirname2 } from "node:path";
8276
+ import { join as join8, dirname as dirname2, basename as basename4 } from "node:path";
8277
8277
 
8278
8278
  // src/notifications/types.ts
8279
8279
  var DEFAULT_ROUTING = {
@@ -8830,7 +8830,7 @@ function deriveTitle(data) {
8830
8830
  }
8831
8831
  if (data.filesModified.length > 0) {
8832
8832
  const basenames = data.filesModified.slice(-5).map((f) => {
8833
- const b = basename4(f);
8833
+ const b = basename5(f);
8834
8834
  return b.replace(/\.[^.]+$/, "");
8835
8835
  });
8836
8836
  const unique = [...new Set(basenames)];
@@ -9067,7 +9067,7 @@ async function main() {
9067
9067
  if (noteContent.includes("**Status:** Completed")) {
9068
9068
  noteContent = noteContent.replace("**Status:** Completed", "**Status:** In Progress");
9069
9069
  writeFileSync5(notePath, noteContent);
9070
- console.error(`Reopened completed note for continued session: ${basename4(notePath)}`);
9070
+ console.error(`Reopened completed note for continued session: ${basename5(notePath)}`);
9071
9071
  }
9072
9072
  } catch {
9073
9073
  }
@@ -9097,14 +9097,14 @@ ${state}` : `Context compression triggered at ~${tokenDisplay} tokens with ${sta
9097
9097
  notePath = newPath;
9098
9098
  }
9099
9099
  }
9100
- console.error(`Rich checkpoint saved: ${basename4(notePath)}`);
9100
+ console.error(`Rich checkpoint saved: ${basename5(notePath)}`);
9101
9101
  } catch (noteError) {
9102
9102
  console.error(`Could not save checkpoint: ${noteError}`);
9103
9103
  }
9104
9104
  saveCumulativeState(notesInfo.path, merged, notePath);
9105
9105
  if (hookInput.cwd && notePath) {
9106
9106
  try {
9107
- const noteFilename = basename4(notePath);
9107
+ const noteFilename = basename5(notePath);
9108
9108
  updateTodoContinue(hookInput.cwd, noteFilename, state, tokenDisplay);
9109
9109
  console.error("TODO.md ## Continue section updated");
9110
9110
  } catch (todoError) {