@ashx-j/lunr 0.2.11 → 0.2.13

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 (342) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/README.md +211 -236
  3. package/dist/builtin-extensions/ashxj-tui.d.ts +3 -0
  4. package/dist/builtin-extensions/ashxj-tui.d.ts.map +1 -1
  5. package/dist/builtin-extensions/ashxj-tui.js +28 -11
  6. package/dist/builtin-extensions/ashxj-tui.js.map +1 -1
  7. package/dist/builtin-extensions/index.d.ts.map +1 -1
  8. package/dist/builtin-extensions/index.js +0 -2
  9. package/dist/builtin-extensions/index.js.map +1 -1
  10. package/dist/builtin-extensions/lunr-cron.d.ts +1 -1
  11. package/dist/builtin-extensions/lunr-cron.d.ts.map +1 -1
  12. package/dist/builtin-extensions/lunr-cron.js +1 -1
  13. package/dist/builtin-extensions/lunr-cron.js.map +1 -1
  14. package/dist/builtin-extensions/pi-subagents/src/extension/chain-validation.d.ts.map +1 -1
  15. package/dist/builtin-extensions/pi-subagents/src/extension/chain-validation.js +3 -3
  16. package/dist/builtin-extensions/pi-subagents/src/extension/chain-validation.js.map +1 -1
  17. package/dist/builtin-extensions/pi-subagents/src/extension/doctor.d.ts +0 -2
  18. package/dist/builtin-extensions/pi-subagents/src/extension/doctor.d.ts.map +1 -1
  19. package/dist/builtin-extensions/pi-subagents/src/extension/doctor.js +1 -23
  20. package/dist/builtin-extensions/pi-subagents/src/extension/doctor.js.map +1 -1
  21. package/dist/builtin-extensions/pi-subagents/src/extension/fanout-child.d.ts.map +1 -1
  22. package/dist/builtin-extensions/pi-subagents/src/extension/fanout-child.js +6 -7
  23. package/dist/builtin-extensions/pi-subagents/src/extension/fanout-child.js.map +1 -1
  24. package/dist/builtin-extensions/pi-subagents/src/extension/index.d.ts +1 -1
  25. package/dist/builtin-extensions/pi-subagents/src/extension/index.d.ts.map +1 -1
  26. package/dist/builtin-extensions/pi-subagents/src/extension/index.js +7 -14
  27. package/dist/builtin-extensions/pi-subagents/src/extension/index.js.map +1 -1
  28. package/dist/builtin-extensions/pi-subagents/src/extension/schemas.d.ts +12 -9
  29. package/dist/builtin-extensions/pi-subagents/src/extension/schemas.d.ts.map +1 -1
  30. package/dist/builtin-extensions/pi-subagents/src/extension/schemas.js +38 -34
  31. package/dist/builtin-extensions/pi-subagents/src/extension/schemas.js.map +1 -1
  32. package/dist/builtin-extensions/pi-subagents/src/extension/tool-description.d.ts +3 -3
  33. package/dist/builtin-extensions/pi-subagents/src/extension/tool-description.d.ts.map +1 -1
  34. package/dist/builtin-extensions/pi-subagents/src/extension/tool-description.js +32 -47
  35. package/dist/builtin-extensions/pi-subagents/src/extension/tool-description.js.map +1 -1
  36. package/dist/builtin-extensions/pi-subagents/src/intercom/intercom-bridge.d.ts +2 -2
  37. package/dist/builtin-extensions/pi-subagents/src/intercom/intercom-bridge.d.ts.map +1 -1
  38. package/dist/builtin-extensions/pi-subagents/src/intercom/intercom-bridge.js.map +1 -1
  39. package/dist/builtin-extensions/pi-subagents/src/runs/background/async-execution.d.ts +7 -10
  40. package/dist/builtin-extensions/pi-subagents/src/runs/background/async-execution.d.ts.map +1 -1
  41. package/dist/builtin-extensions/pi-subagents/src/runs/background/async-execution.js +90 -109
  42. package/dist/builtin-extensions/pi-subagents/src/runs/background/async-execution.js.map +1 -1
  43. package/dist/builtin-extensions/pi-subagents/src/runs/background/async-resume.d.ts +3 -2
  44. package/dist/builtin-extensions/pi-subagents/src/runs/background/async-resume.d.ts.map +1 -1
  45. package/dist/builtin-extensions/pi-subagents/src/runs/background/async-resume.js +37 -50
  46. package/dist/builtin-extensions/pi-subagents/src/runs/background/async-resume.js.map +1 -1
  47. package/dist/builtin-extensions/pi-subagents/src/runs/background/run-status.d.ts.map +1 -1
  48. package/dist/builtin-extensions/pi-subagents/src/runs/background/run-status.js +1 -1
  49. package/dist/builtin-extensions/pi-subagents/src/runs/background/run-status.js.map +1 -1
  50. package/dist/builtin-extensions/pi-subagents/src/runs/background/scheduled-runs.d.ts +4 -0
  51. package/dist/builtin-extensions/pi-subagents/src/runs/background/scheduled-runs.d.ts.map +1 -1
  52. package/dist/builtin-extensions/pi-subagents/src/runs/background/scheduled-runs.js +5 -5
  53. package/dist/builtin-extensions/pi-subagents/src/runs/background/scheduled-runs.js.map +1 -1
  54. package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-runner.d.ts.map +1 -1
  55. package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-runner.js +31 -13
  56. package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-runner.js.map +1 -1
  57. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/chain-clarify.d.ts +2 -2
  58. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/chain-clarify.d.ts.map +1 -1
  59. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/chain-clarify.js.map +1 -1
  60. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/chain-execution.d.ts +4 -3
  61. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/chain-execution.d.ts.map +1 -1
  62. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/chain-execution.js +48 -20
  63. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/chain-execution.js.map +1 -1
  64. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/execution.d.ts +2 -2
  65. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/execution.d.ts.map +1 -1
  66. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/execution.js +90 -64
  67. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/execution.js.map +1 -1
  68. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/subagent-executor.d.ts +6 -8
  69. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/subagent-executor.d.ts.map +1 -1
  70. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/subagent-executor.js +262 -161
  71. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/subagent-executor.js.map +1 -1
  72. package/dist/builtin-extensions/pi-subagents/src/runs/shared/acceptance.d.ts +2 -1
  73. package/dist/builtin-extensions/pi-subagents/src/runs/shared/acceptance.d.ts.map +1 -1
  74. package/dist/builtin-extensions/pi-subagents/src/runs/shared/acceptance.js +24 -33
  75. package/dist/builtin-extensions/pi-subagents/src/runs/shared/acceptance.js.map +1 -1
  76. package/dist/builtin-extensions/pi-subagents/src/runs/shared/child-tools.d.ts +25 -0
  77. package/dist/builtin-extensions/pi-subagents/src/runs/shared/child-tools.d.ts.map +1 -0
  78. package/dist/builtin-extensions/pi-subagents/src/runs/shared/child-tools.js +51 -0
  79. package/dist/builtin-extensions/pi-subagents/src/runs/shared/child-tools.js.map +1 -0
  80. package/dist/builtin-extensions/pi-subagents/src/runs/shared/dynamic-fanout.d.ts.map +1 -1
  81. package/dist/builtin-extensions/pi-subagents/src/runs/shared/dynamic-fanout.js +20 -3
  82. package/dist/builtin-extensions/pi-subagents/src/runs/shared/dynamic-fanout.js.map +1 -1
  83. package/dist/builtin-extensions/pi-subagents/src/runs/shared/parallel-utils.d.ts +4 -1
  84. package/dist/builtin-extensions/pi-subagents/src/runs/shared/parallel-utils.d.ts.map +1 -1
  85. package/dist/builtin-extensions/pi-subagents/src/runs/shared/parallel-utils.js.map +1 -1
  86. package/dist/builtin-extensions/pi-subagents/src/runs/shared/pi-args.d.ts +5 -0
  87. package/dist/builtin-extensions/pi-subagents/src/runs/shared/pi-args.d.ts.map +1 -1
  88. package/dist/builtin-extensions/pi-subagents/src/runs/shared/pi-args.js +9 -3
  89. package/dist/builtin-extensions/pi-subagents/src/runs/shared/pi-args.js.map +1 -1
  90. package/dist/builtin-extensions/pi-subagents/src/runs/shared/subagent-prompt-runtime.d.ts.map +1 -1
  91. package/dist/builtin-extensions/pi-subagents/src/runs/shared/subagent-prompt-runtime.js +2 -2
  92. package/dist/builtin-extensions/pi-subagents/src/runs/shared/subagent-prompt-runtime.js.map +1 -1
  93. package/dist/builtin-extensions/pi-subagents/src/runs/shared/task-intent.d.ts +2 -2
  94. package/dist/builtin-extensions/pi-subagents/src/runs/shared/task-intent.d.ts.map +1 -1
  95. package/dist/builtin-extensions/pi-subagents/src/runs/shared/task-intent.js +20 -17
  96. package/dist/builtin-extensions/pi-subagents/src/runs/shared/task-intent.js.map +1 -1
  97. package/dist/builtin-extensions/pi-subagents/src/shared/child-spec.d.ts +70 -0
  98. package/dist/builtin-extensions/pi-subagents/src/shared/child-spec.d.ts.map +1 -0
  99. package/dist/builtin-extensions/pi-subagents/src/shared/child-spec.js +153 -0
  100. package/dist/builtin-extensions/pi-subagents/src/shared/child-spec.js.map +1 -0
  101. package/dist/builtin-extensions/pi-subagents/src/shared/settings.d.ts +13 -8
  102. package/dist/builtin-extensions/pi-subagents/src/shared/settings.d.ts.map +1 -1
  103. package/dist/builtin-extensions/pi-subagents/src/shared/settings.js +20 -51
  104. package/dist/builtin-extensions/pi-subagents/src/shared/settings.js.map +1 -1
  105. package/dist/builtin-extensions/pi-subagents/src/shared/types.d.ts +80 -20
  106. package/dist/builtin-extensions/pi-subagents/src/shared/types.d.ts.map +1 -1
  107. package/dist/builtin-extensions/pi-subagents/src/shared/types.js +10 -2
  108. package/dist/builtin-extensions/pi-subagents/src/shared/types.js.map +1 -1
  109. package/dist/builtin-extensions/pi-subagents/src/slash/prompt-workflows.d.ts +2 -2
  110. package/dist/builtin-extensions/pi-subagents/src/slash/prompt-workflows.d.ts.map +1 -1
  111. package/dist/builtin-extensions/pi-subagents/src/slash/prompt-workflows.js +20 -32
  112. package/dist/builtin-extensions/pi-subagents/src/slash/prompt-workflows.js.map +1 -1
  113. package/dist/builtin-extensions/pi-subagents/src/slash/slash-commands.d.ts +2 -1
  114. package/dist/builtin-extensions/pi-subagents/src/slash/slash-commands.d.ts.map +1 -1
  115. package/dist/builtin-extensions/pi-subagents/src/slash/slash-commands.js +23 -449
  116. package/dist/builtin-extensions/pi-subagents/src/slash/slash-commands.js.map +1 -1
  117. package/dist/builtin-extensions/pi-subagents/src/tui/render.d.ts +2 -1
  118. package/dist/builtin-extensions/pi-subagents/src/tui/render.d.ts.map +1 -1
  119. package/dist/builtin-extensions/pi-subagents/src/tui/render.js +13 -11
  120. package/dist/builtin-extensions/pi-subagents/src/tui/render.js.map +1 -1
  121. package/dist/builtin-extensions/pi-subagents/src/watchdog/runtime.d.ts +2 -1
  122. package/dist/builtin-extensions/pi-subagents/src/watchdog/runtime.d.ts.map +1 -1
  123. package/dist/builtin-extensions/pi-subagents/src/watchdog/runtime.js +18 -17
  124. package/dist/builtin-extensions/pi-subagents/src/watchdog/runtime.js.map +1 -1
  125. package/dist/builtin-extensions/simple-pi-memory.d.ts +2 -2
  126. package/dist/builtin-extensions/simple-pi-memory.d.ts.map +1 -1
  127. package/dist/builtin-extensions/simple-pi-memory.js +41 -17
  128. package/dist/builtin-extensions/simple-pi-memory.js.map +1 -1
  129. package/dist/catalog/models.json +1 -1
  130. package/dist/catalog/providers/amazon-bedrock.json +1 -1
  131. package/dist/catalog/providers/azure-openai-responses.json +1 -1
  132. package/dist/catalog/providers/cloudflare-ai-gateway.json +1 -1
  133. package/dist/catalog/providers/cloudflare-workers-ai.json +1 -1
  134. package/dist/catalog/providers/fireworks.json +1 -1
  135. package/dist/catalog/providers/github-copilot.json +1 -1
  136. package/dist/catalog/providers/huggingface.json +1 -1
  137. package/dist/catalog/providers/minimax-cn.json +1 -1
  138. package/dist/catalog/providers/minimax.json +1 -1
  139. package/dist/catalog/providers/mistral.json +1 -1
  140. package/dist/catalog/providers/nvidia.json +1 -1
  141. package/dist/catalog/providers/openai.json +1 -1
  142. package/dist/catalog/providers/opencode-go.json +1 -1
  143. package/dist/catalog/providers/opencode.json +1 -1
  144. package/dist/catalog/providers/openrouter.json +1 -1
  145. package/dist/catalog/providers/qwen-cloud-cn.json +1 -1
  146. package/dist/catalog/providers/qwen-cloud.json +1 -1
  147. package/dist/catalog/providers/qwen-token-plan-cn.json +1 -1
  148. package/dist/catalog/providers/qwen-token-plan.json +1 -1
  149. package/dist/catalog/providers/together.json +1 -1
  150. package/dist/catalog/providers/vercel-ai-gateway.json +1 -1
  151. package/dist/catalog/providers/zai-coding-cn.json +1 -1
  152. package/dist/catalog/providers/zai.json +1 -1
  153. package/dist/catalog/publication.json +3 -3
  154. package/dist/core/agent-session.d.ts +7 -1
  155. package/dist/core/agent-session.d.ts.map +1 -1
  156. package/dist/core/agent-session.js +34 -4
  157. package/dist/core/agent-session.js.map +1 -1
  158. package/dist/core/context-breakdown.d.ts +3 -1
  159. package/dist/core/context-breakdown.d.ts.map +1 -1
  160. package/dist/core/context-breakdown.js +5 -2
  161. package/dist/core/context-breakdown.js.map +1 -1
  162. package/dist/core/customize.d.ts +2 -0
  163. package/dist/core/customize.d.ts.map +1 -1
  164. package/dist/core/customize.js +6 -0
  165. package/dist/core/customize.js.map +1 -1
  166. package/dist/core/memory-cap.d.ts +4 -8
  167. package/dist/core/memory-cap.d.ts.map +1 -1
  168. package/dist/core/memory-cap.js +8 -8
  169. package/dist/core/memory-cap.js.map +1 -1
  170. package/dist/core/permissions.d.ts +2 -0
  171. package/dist/core/permissions.d.ts.map +1 -1
  172. package/dist/core/permissions.js +30 -14
  173. package/dist/core/permissions.js.map +1 -1
  174. package/dist/core/plan-mode.d.ts.map +1 -1
  175. package/dist/core/plan-mode.js +1 -9
  176. package/dist/core/plan-mode.js.map +1 -1
  177. package/dist/core/rollback.d.ts.map +1 -1
  178. package/dist/core/rollback.js +1 -1
  179. package/dist/core/rollback.js.map +1 -1
  180. package/dist/core/settings-manager.d.ts +16 -5
  181. package/dist/core/settings-manager.d.ts.map +1 -1
  182. package/dist/core/settings-manager.js +37 -10
  183. package/dist/core/settings-manager.js.map +1 -1
  184. package/dist/core/slash-commands.d.ts.map +1 -1
  185. package/dist/core/slash-commands.js +1 -5
  186. package/dist/core/slash-commands.js.map +1 -1
  187. package/dist/core/subagent-permission-inherit.d.ts +34 -22
  188. package/dist/core/subagent-permission-inherit.d.ts.map +1 -1
  189. package/dist/core/subagent-permission-inherit.js +37 -80
  190. package/dist/core/subagent-permission-inherit.js.map +1 -1
  191. package/dist/core/swarm.d.ts.map +1 -1
  192. package/dist/core/swarm.js +13 -7
  193. package/dist/core/swarm.js.map +1 -1
  194. package/dist/core/system-prompt.d.ts +6 -4
  195. package/dist/core/system-prompt.d.ts.map +1 -1
  196. package/dist/core/system-prompt.js +38 -48
  197. package/dist/core/system-prompt.js.map +1 -1
  198. package/dist/core/usage-adapters/openai-codex.d.ts +1 -1
  199. package/dist/core/usage-adapters/openai-codex.d.ts.map +1 -1
  200. package/dist/core/usage-adapters/openai-codex.js +22 -17
  201. package/dist/core/usage-adapters/openai-codex.js.map +1 -1
  202. package/dist/core/usage-service.d.ts +10 -1
  203. package/dist/core/usage-service.d.ts.map +1 -1
  204. package/dist/core/usage-service.js +17 -6
  205. package/dist/core/usage-service.js.map +1 -1
  206. package/dist/gateway/agent-bridge.d.ts.map +1 -1
  207. package/dist/gateway/agent-bridge.js +1 -4
  208. package/dist/gateway/agent-bridge.js.map +1 -1
  209. package/dist/gateway/cron.d.ts.map +1 -1
  210. package/dist/gateway/cron.js +1 -4
  211. package/dist/gateway/cron.js.map +1 -1
  212. package/dist/index.d.ts +1 -1
  213. package/dist/index.d.ts.map +1 -1
  214. package/dist/index.js.map +1 -1
  215. package/dist/main.d.ts.map +1 -1
  216. package/dist/main.js +0 -5
  217. package/dist/main.js.map +1 -1
  218. package/dist/migrations.d.ts +2 -0
  219. package/dist/migrations.d.ts.map +1 -1
  220. package/dist/migrations.js +21 -0
  221. package/dist/migrations.js.map +1 -1
  222. package/dist/modes/interactive/components/settings-selector.d.ts +7 -4
  223. package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
  224. package/dist/modes/interactive/components/settings-selector.js +122 -162
  225. package/dist/modes/interactive/components/settings-selector.js.map +1 -1
  226. package/dist/modes/interactive/components/usage-view.d.ts +1 -1
  227. package/dist/modes/interactive/components/usage-view.d.ts.map +1 -1
  228. package/dist/modes/interactive/components/usage-view.js +7 -4
  229. package/dist/modes/interactive/components/usage-view.js.map +1 -1
  230. package/dist/modes/interactive/interactive-mode.d.ts +1 -2
  231. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  232. package/dist/modes/interactive/interactive-mode.js +55 -96
  233. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  234. package/dist/modes/interactive/skill-tag-autocomplete.d.ts +13 -0
  235. package/dist/modes/interactive/skill-tag-autocomplete.d.ts.map +1 -0
  236. package/dist/modes/interactive/skill-tag-autocomplete.js +72 -0
  237. package/dist/modes/interactive/skill-tag-autocomplete.js.map +1 -0
  238. package/docs/compaction.md +23 -23
  239. package/docs/containerization.md +24 -24
  240. package/docs/custom-provider.md +18 -18
  241. package/docs/development.md +16 -15
  242. package/docs/docs.json +6 -2
  243. package/docs/extensions.md +82 -80
  244. package/docs/features.md +102 -0
  245. package/docs/index.md +25 -19
  246. package/docs/json.md +7 -7
  247. package/docs/keybindings.md +4 -4
  248. package/docs/models.md +2 -2
  249. package/docs/packages.md +38 -42
  250. package/docs/prompt-templates.md +4 -4
  251. package/docs/providers.md +22 -10
  252. package/docs/quickstart.md +81 -46
  253. package/docs/rpc.md +7 -13
  254. package/docs/sdk.md +43 -41
  255. package/docs/security.md +18 -18
  256. package/docs/session-format.md +9 -9
  257. package/docs/sessions.md +13 -12
  258. package/docs/settings.md +63 -24
  259. package/docs/shell-aliases.md +2 -2
  260. package/docs/skills.md +21 -11
  261. package/docs/terminal-setup.md +5 -5
  262. package/docs/termux.md +7 -7
  263. package/docs/themes.md +12 -14
  264. package/docs/tmux.md +4 -4
  265. package/docs/tui.md +23 -23
  266. package/docs/usage.md +112 -87
  267. package/docs/windows.md +10 -2
  268. package/examples/README.md +3 -1
  269. package/examples/extensions/README.md +6 -6
  270. package/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
  271. package/examples/extensions/custom-provider-anthropic/package.json +1 -1
  272. package/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
  273. package/examples/extensions/doom-overlay/README.md +2 -2
  274. package/examples/extensions/gondolin/package-lock.json +2 -2
  275. package/examples/extensions/gondolin/package.json +1 -1
  276. package/examples/extensions/plan-mode/README.md +3 -1
  277. package/examples/extensions/sandbox/package-lock.json +2 -2
  278. package/examples/extensions/sandbox/package.json +1 -1
  279. package/examples/extensions/subagent/README.md +13 -11
  280. package/examples/extensions/todo.ts +2 -1
  281. package/examples/extensions/with-deps/package-lock.json +2 -2
  282. package/examples/extensions/with-deps/package.json +1 -1
  283. package/examples/sdk/README.md +9 -5
  284. package/package.json +6 -7
  285. package/dist/builtin-extensions/lunr-behavior.d.ts +0 -44
  286. package/dist/builtin-extensions/lunr-behavior.d.ts.map +0 -1
  287. package/dist/builtin-extensions/lunr-behavior.js +0 -213
  288. package/dist/builtin-extensions/lunr-behavior.js.map +0 -1
  289. package/dist/builtin-extensions/pi-subagents/agents/context-builder.md +0 -46
  290. package/dist/builtin-extensions/pi-subagents/agents/deep-researcher.md +0 -36
  291. package/dist/builtin-extensions/pi-subagents/agents/delegate.md +0 -12
  292. package/dist/builtin-extensions/pi-subagents/agents/oracle.md +0 -73
  293. package/dist/builtin-extensions/pi-subagents/agents/planner.md +0 -55
  294. package/dist/builtin-extensions/pi-subagents/agents/research-writer.md +0 -37
  295. package/dist/builtin-extensions/pi-subagents/agents/researcher.md +0 -52
  296. package/dist/builtin-extensions/pi-subagents/agents/reviewer.md +0 -79
  297. package/dist/builtin-extensions/pi-subagents/agents/scout.md +0 -50
  298. package/dist/builtin-extensions/pi-subagents/agents/worker.md +0 -55
  299. package/dist/builtin-extensions/pi-subagents/src/agents/agent-management.d.ts +0 -20
  300. package/dist/builtin-extensions/pi-subagents/src/agents/agent-management.d.ts.map +0 -1
  301. package/dist/builtin-extensions/pi-subagents/src/agents/agent-management.js +0 -1273
  302. package/dist/builtin-extensions/pi-subagents/src/agents/agent-management.js.map +0 -1
  303. package/dist/builtin-extensions/pi-subagents/src/agents/agent-memory.d.ts +0 -49
  304. package/dist/builtin-extensions/pi-subagents/src/agents/agent-memory.d.ts.map +0 -1
  305. package/dist/builtin-extensions/pi-subagents/src/agents/agent-memory.js +0 -252
  306. package/dist/builtin-extensions/pi-subagents/src/agents/agent-memory.js.map +0 -1
  307. package/dist/builtin-extensions/pi-subagents/src/agents/agent-scope.d.ts +0 -3
  308. package/dist/builtin-extensions/pi-subagents/src/agents/agent-scope.d.ts.map +0 -1
  309. package/dist/builtin-extensions/pi-subagents/src/agents/agent-scope.js +0 -6
  310. package/dist/builtin-extensions/pi-subagents/src/agents/agent-scope.js.map +0 -1
  311. package/dist/builtin-extensions/pi-subagents/src/agents/agent-selection.d.ts +0 -3
  312. package/dist/builtin-extensions/pi-subagents/src/agents/agent-selection.d.ts.map +0 -1
  313. package/dist/builtin-extensions/pi-subagents/src/agents/agent-selection.js +0 -23
  314. package/dist/builtin-extensions/pi-subagents/src/agents/agent-selection.js.map +0 -1
  315. package/dist/builtin-extensions/pi-subagents/src/agents/agent-serializer.d.ts +0 -8
  316. package/dist/builtin-extensions/pi-subagents/src/agents/agent-serializer.d.ts.map +0 -1
  317. package/dist/builtin-extensions/pi-subagents/src/agents/agent-serializer.js +0 -143
  318. package/dist/builtin-extensions/pi-subagents/src/agents/agent-serializer.js.map +0 -1
  319. package/dist/builtin-extensions/pi-subagents/src/agents/agents.d.ts +0 -176
  320. package/dist/builtin-extensions/pi-subagents/src/agents/agents.d.ts.map +0 -1
  321. package/dist/builtin-extensions/pi-subagents/src/agents/agents.js +0 -1326
  322. package/dist/builtin-extensions/pi-subagents/src/agents/agents.js.map +0 -1
  323. package/dist/builtin-extensions/pi-subagents/src/agents/chain-serializer.d.ts +0 -7
  324. package/dist/builtin-extensions/pi-subagents/src/agents/chain-serializer.d.ts.map +0 -1
  325. package/dist/builtin-extensions/pi-subagents/src/agents/chain-serializer.js +0 -307
  326. package/dist/builtin-extensions/pi-subagents/src/agents/chain-serializer.js.map +0 -1
  327. package/dist/builtin-extensions/pi-subagents/src/agents/identity.d.ts +0 -8
  328. package/dist/builtin-extensions/pi-subagents/src/agents/identity.d.ts.map +0 -1
  329. package/dist/builtin-extensions/pi-subagents/src/agents/identity.js +0 -30
  330. package/dist/builtin-extensions/pi-subagents/src/agents/identity.js.map +0 -1
  331. package/dist/builtin-extensions/pi-subagents/src/agents/proactive-skills.d.ts +0 -35
  332. package/dist/builtin-extensions/pi-subagents/src/agents/proactive-skills.d.ts.map +0 -1
  333. package/dist/builtin-extensions/pi-subagents/src/agents/proactive-skills.js +0 -151
  334. package/dist/builtin-extensions/pi-subagents/src/agents/proactive-skills.js.map +0 -1
  335. package/dist/builtin-extensions/pi-subagents/src/profiles/profiles.d.ts +0 -131
  336. package/dist/builtin-extensions/pi-subagents/src/profiles/profiles.d.ts.map +0 -1
  337. package/dist/builtin-extensions/pi-subagents/src/profiles/profiles.js +0 -491
  338. package/dist/builtin-extensions/pi-subagents/src/profiles/profiles.js.map +0 -1
  339. package/dist/core/behavior-preset.d.ts +0 -60
  340. package/dist/core/behavior-preset.d.ts.map +0 -1
  341. package/dist/core/behavior-preset.js +0 -257
  342. package/dist/core/behavior-preset.js.map +0 -1
package/docs/tmux.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # tmux Setup
2
2
 
3
- Pi works inside tmux, but tmux strips modifier information from certain keys by default. Without configuration, `Shift+Enter` and `Ctrl+Enter` are usually indistinguishable from plain `Enter`.
3
+ lunR works inside tmux, but tmux strips modifier information from certain keys by default. Without configuration, `Shift+Enter` and `Ctrl+Enter` are usually indistinguishable from plain `Enter`.
4
4
 
5
5
  ## Recommended Configuration
6
6
 
@@ -18,7 +18,7 @@ tmux kill-server
18
18
  tmux
19
19
  ```
20
20
 
21
- Pi requests extended key reporting automatically when Kitty keyboard protocol is not available. With `extended-keys-format csi-u`, tmux forwards modified keys in CSI-u format, which is the most reliable configuration. The `extended-keys-format` option requires tmux 3.5 or later.
21
+ lunR requests extended key reporting automatically when Kitty keyboard protocol is not available. With `extended-keys-format csi-u`, tmux forwards modified keys in CSI-u format, which is the most reliable configuration. The `extended-keys-format` option requires tmux 3.5 or later.
22
22
 
23
23
  ## Why `csi-u` Is Recommended
24
24
 
@@ -40,7 +40,7 @@ With `extended-keys-format csi-u`, the same keys are forwarded as:
40
40
  - `Ctrl+D` → `\x1b[100;5u`
41
41
  - `Ctrl+Enter` → `\x1b[13;5u`
42
42
 
43
- Pi supports both formats, but `csi-u` is the recommended tmux setup.
43
+ lunR supports both formats, but `csi-u` is the recommended tmux setup.
44
44
 
45
45
  ## What This Fixes
46
46
 
@@ -60,4 +60,4 @@ This affects the default keybindings (`Enter` to submit, `Shift+Enter` for newli
60
60
  - tmux 3.5 or later for `extended-keys-format csi-u` (run `tmux -V` to check)
61
61
  - A terminal emulator that supports extended keys (Ghostty, Kitty, iTerm2, WezTerm, Windows Terminal)
62
62
 
63
- With tmux 3.2 through 3.4, omit `extended-keys-format csi-u`; Pi still supports tmux's default xterm `modifyOtherKeys` format.
63
+ With tmux 3.2 through 3.4, omit `extended-keys-format csi-u`; lunR still supports tmux's default xterm `modifyOtherKeys` format.
package/docs/tui.md CHANGED
@@ -1,10 +1,10 @@
1
- > pi can create TUI components. Ask it to build one for your use case.
1
+ > lunR can create TUI components. Ask it to build one for your use case.
2
2
 
3
3
  # TUI Components
4
4
 
5
5
  Extensions and custom tools can render custom TUI components for interactive user interfaces. This page covers the component system and available building blocks.
6
6
 
7
- **Source:** [`@earendil-works/pi-tui`](https://github.com/earendil-works/pi-mono/tree/main/packages/tui)
7
+ **Source:** [`@ashx-j/lunr-tui`](https://github.com/ashx-j/lunR/tree/master/packages/tui)
8
8
 
9
9
  ## Component Interface
10
10
 
@@ -33,7 +33,7 @@ The TUI appends a full SGR reset and OSC 8 reset at the end of each rendered lin
33
33
  Components that display a text cursor and need IME (Input Method Editor) support should implement the `Focusable` interface:
34
34
 
35
35
  ```typescript
36
- import { CURSOR_MARKER, type Component, type Focusable } from "@earendil-works/pi-tui";
36
+ import { CURSOR_MARKER, type Component, type Focusable } from "@ashx-j/lunr-tui";
37
37
 
38
38
  class MyInput implements Component, Focusable {
39
39
  focused: boolean = false; // Set by TUI when focus changes
@@ -59,7 +59,7 @@ The cursor remains hidden by default. This keeps the fake cursor rendering, whil
59
59
  When a container component (dialog, selector, etc.) contains an `Input` or `Editor` child, the container must implement `Focusable` and propagate the focus state to the child. Otherwise, the hardware cursor won't be positioned correctly for IME input.
60
60
 
61
61
  ```typescript
62
- import { Container, type Focusable, Input } from "@earendil-works/pi-tui";
62
+ import { Container, type Focusable, Input } from "@ashx-j/lunr-tui";
63
63
 
64
64
  class SearchDialog extends Container implements Focusable {
65
65
  private searchInput: Input;
@@ -188,10 +188,10 @@ See [overlay-qa-tests.ts](../examples/extensions/overlay-qa-tests.ts) for compre
188
188
 
189
189
  ## Built-in Components
190
190
 
191
- Import from `@earendil-works/pi-tui`:
191
+ Import from `@ashx-j/lunr-tui`:
192
192
 
193
193
  ```typescript
194
- import { Text, Box, Container, Spacer, Markdown } from "@earendil-works/pi-tui";
194
+ import { Text, Box, Container, Spacer, Markdown } from "@ashx-j/lunr-tui";
195
195
  ```
196
196
 
197
197
  ### Text
@@ -273,7 +273,7 @@ const image = new Image(
273
273
  Use `matchesKey()` for key detection:
274
274
 
275
275
  ```typescript
276
- import { matchesKey, Key } from "@earendil-works/pi-tui";
276
+ import { matchesKey, Key } from "@ashx-j/lunr-tui";
277
277
 
278
278
  handleInput(data: string) {
279
279
  if (matchesKey(data, Key.up)) {
@@ -299,7 +299,7 @@ handleInput(data: string) {
299
299
  **Critical:** Each line from `render()` must not exceed the `width` parameter.
300
300
 
301
301
  ```typescript
302
- import { visibleWidth, truncateToWidth } from "@earendil-works/pi-tui";
302
+ import { visibleWidth, truncateToWidth } from "@ashx-j/lunr-tui";
303
303
 
304
304
  render(width: number): string[] {
305
305
  // Truncate long lines
@@ -320,7 +320,7 @@ Example: Interactive selector
320
320
  import {
321
321
  matchesKey, Key,
322
322
  truncateToWidth, visibleWidth
323
- } from "@earendil-works/pi-tui";
323
+ } from "@ashx-j/lunr-tui";
324
324
 
325
325
  class MySelector {
326
326
  private items: string[];
@@ -434,8 +434,8 @@ renderResult(result, options, theme, context) {
434
434
  **For Markdown**, use `getMarkdownTheme()`:
435
435
 
436
436
  ```typescript
437
- import { getMarkdownTheme } from "@earendil-works/pi-coding-agent";
438
- import { Markdown } from "@earendil-works/pi-tui";
437
+ import { getMarkdownTheme } from "@ashx-j/lunr";
438
+ import { Markdown } from "@ashx-j/lunr-tui";
439
439
 
440
440
  renderResult(result, options, theme, context) {
441
441
  const mdTheme = getMarkdownTheme();
@@ -596,12 +596,12 @@ These patterns cover the most common UI needs in extensions. **Copy these patter
596
596
 
597
597
  ### Pattern 1: Selection Dialog (SelectList)
598
598
 
599
- For letting users pick from a list of options. Use `SelectList` from `@earendil-works/pi-tui` with `DynamicBorder` for framing.
599
+ For letting users pick from a list of options. Use `SelectList` from `@ashx-j/lunr-tui` with `DynamicBorder` for framing.
600
600
 
601
601
  ```typescript
602
- import type { ExtensionAPI } from "@earendil-works/pi-coding-agent";
603
- import { DynamicBorder } from "@earendil-works/pi-coding-agent";
604
- import { Container, type SelectItem, SelectList, Text } from "@earendil-works/pi-tui";
602
+ import type { ExtensionAPI } from "@ashx-j/lunr";
603
+ import { DynamicBorder } from "@ashx-j/lunr";
604
+ import { Container, type SelectItem, SelectList, Text } from "@ashx-j/lunr-tui";
605
605
 
606
606
  pi.registerCommand("pick", {
607
607
  handler: async (_args, ctx) => {
@@ -659,7 +659,7 @@ pi.registerCommand("pick", {
659
659
  For operations that take time and should be cancellable. `BorderedLoader` shows a spinner and handles escape to cancel.
660
660
 
661
661
  ```typescript
662
- import { BorderedLoader } from "@earendil-works/pi-coding-agent";
662
+ import { BorderedLoader } from "@ashx-j/lunr";
663
663
 
664
664
  pi.registerCommand("fetch", {
665
665
  handler: async (_args, ctx) => {
@@ -688,11 +688,11 @@ pi.registerCommand("fetch", {
688
688
 
689
689
  ### Pattern 3: Settings/Toggles (SettingsList)
690
690
 
691
- For toggling multiple settings. Use `SettingsList` from `@earendil-works/pi-tui` with `getSettingsListTheme()`.
691
+ For toggling multiple settings. Use `SettingsList` from `@ashx-j/lunr-tui` with `getSettingsListTheme()`.
692
692
 
693
693
  ```typescript
694
- import { getSettingsListTheme } from "@earendil-works/pi-coding-agent";
695
- import { Container, type SettingItem, SettingsList, Text } from "@earendil-works/pi-tui";
694
+ import { getSettingsListTheme } from "@ashx-j/lunr";
695
+ import { Container, type SettingItem, SettingsList, Text } from "@ashx-j/lunr-tui";
696
696
 
697
697
  pi.registerCommand("settings", {
698
698
  handler: async (_args, ctx) => {
@@ -746,7 +746,7 @@ ctx.ui.setStatus("my-ext", undefined);
746
746
 
747
747
  ### Pattern 4b: Working Indicator Customization
748
748
 
749
- Customize the inline working indicator shown while pi is streaming a response.
749
+ Customize the inline working indicator shown while lunR is streaming a response.
750
750
 
751
751
  ```typescript
752
752
  // Static indicator
@@ -766,7 +766,7 @@ ctx.ui.setWorkingIndicator({
766
766
  // Hide the indicator entirely
767
767
  ctx.ui.setWorkingIndicator({ frames: [] });
768
768
 
769
- // Restore pi's default spinner
769
+ // Restore lunR's default spinner
770
770
  ctx.ui.setWorkingIndicator();
771
771
  ```
772
772
 
@@ -831,8 +831,8 @@ Token stats available via `ctx.sessionManager.getBranch()` and `ctx.model`.
831
831
  Replace the main input editor with a custom implementation. Useful for modal editing (vim), different keybindings (emacs), or specialized input handling.
832
832
 
833
833
  ```typescript
834
- import { CustomEditor, type ExtensionAPI } from "@earendil-works/pi-coding-agent";
835
- import { matchesKey, truncateToWidth } from "@earendil-works/pi-tui";
834
+ import { CustomEditor, type ExtensionAPI } from "@ashx-j/lunr";
835
+ import { matchesKey, truncateToWidth } from "@ashx-j/lunr-tui";
836
836
 
837
837
  type Mode = "normal" | "insert";
838
838
 
package/docs/usage.md CHANGED
@@ -1,6 +1,6 @@
1
- # Using Pi
1
+ # Using lunR
2
2
 
3
- This page collects day-to-day usage details that do not fit on the quickstart page.
3
+ This page collects day-to-day usage details that do not fit on the quickstart page. Built-in MCP, subagents, gateway, cron, plan, and related workflows are covered in [Built-in features](features.md).
4
4
 
5
5
  ## Interactive Mode
6
6
 
@@ -11,9 +11,9 @@ The interface has four main areas:
11
11
  - **Startup header** - shortcuts, loaded context files, prompt templates, skills, and extensions
12
12
  - **Messages** - user messages, assistant responses, tool calls, tool results, notifications, errors, and extension UI
13
13
  - **Editor** - where you type; border color indicates the current thinking level
14
- - **Footer** - working directory, session name, token/cache usage, cost, context usage, and current model
14
+ - **Footer** - working directory, git branch, session name, token/cache usage, cost, context usage, plan bar, and current model
15
15
 
16
- The editor can be replaced temporarily by built-in UI such as `/settings` or by custom extension UI.
16
+ The editor can be replaced temporarily by built-in UI such as `/settings` or by custom extension UI. Click a thinking or tool card to expand or collapse that item. Smooth streaming (`smoothStreaming`, default off) is interactive TUI only.
17
17
 
18
18
  ### Editor Features
19
19
 
@@ -23,42 +23,60 @@ The editor can be replaced temporarily by built-in UI such as `/settings` or by
23
23
  | Path completion | Press Tab to complete paths |
24
24
  | Multi-line input | Shift+Enter, or Ctrl+Enter on Windows Terminal |
25
25
  | Copy response | Ctrl+X copies the last assistant message; in `/tree`, it copies the selected message |
26
- | Images | Paste with Ctrl+V, Alt+V on Windows, or drag into the terminal |
26
+ | Images | Paste with Ctrl+V, Alt+V on Windows, or drag into the terminal. Images insert `[image_n]` chips, not a temp path. |
27
27
  | Shell command | `!command` runs and sends output to the model |
28
28
  | Hidden shell command | `!!command` runs without sending output to the model |
29
29
  | External editor | Ctrl+G opens `externalEditor`, `$VISUAL`, `$EDITOR`, Notepad on Windows, or `nano` elsewhere |
30
30
 
31
- See [Keybindings](keybindings.md) for all shortcuts and customization.
31
+ See [Keybindings](keybindings.md) for all shortcuts and customization. Shift+Tab cycles permission mode (`manual` → `yolo` → `plan` → `auto`). Ctrl+O cycles `/tree` filters; it does not expand tool cards. `app.tools.expand` is unbound.
32
32
 
33
33
  ## Slash Commands
34
34
 
35
35
  Type `/` in the editor to open command completion. Extensions can register custom commands, skills are available as `/skill:name`, and prompt templates expand via `/templatename`.
36
36
 
37
+ Built-in commands (from `slash-commands.ts`):
38
+
37
39
  | Command | Description |
38
40
  |---------|-------------|
39
- | `/login`, `/logout` | Manage OAuth or API-key credentials |
40
- | `/model` | Switch models |
41
- | `/mode` | Set permission mode: manual, yolo, plan, or auto (Shift+Tab cycles) |
42
- | `/plan` | Switch to plan permission mode, or `/plan <task>` to plan a task |
41
+ | `/settings` | Open settings menu |
42
+ | `/model` | Select model (stored-cred providers) |
43
+ | `/refresh` | Refresh model lists for all providers |
43
44
  | `/scoped-models` | Enable/disable models for Ctrl+P cycling |
44
- | `/settings` | Thinking level, theme, message delivery, transport |
45
- | `/resume` | Pick from previous sessions |
46
- | `/new` | Start a new session |
47
- | `/name <name>` | Set session display name |
48
- | `/session` | Show session file, ID, messages, tokens, and cost |
49
- | `/tree` | Jump to any point in the session and continue from there |
45
+ | `/export` | Export session (HTML default, or `.html`/`.jsonl` path) |
46
+ | `/import` | Import and resume a session from a JSONL file |
47
+ | `/share` | Share session as a secret GitHub gist. HTML viewer still defaults to https://pi.dev/session/ (leftover, not lunR-hosted). Override with `PI_SHARE_VIEWER_URL`. |
48
+ | `/copy` | Copy last agent message to clipboard |
49
+ | `/name`, `/title` | Set session display name |
50
+ | `/session` | Show session info and stats |
51
+ | `/usage` | This-session token totals, context, and every stored subscription plan (no `/token-usage`) |
52
+ | `/fast [on\|off\|status]` | Toggle Fast mode for OpenAI Codex subscriptions only |
53
+ | `/context` | Estimated context-window breakdown |
54
+ | `/plan` | Switch to plan permission mode, or `/plan <task>` to plan a task |
55
+ | `/mode` | Set permission mode: `manual`, `yolo`, `plan`, or `auto` |
56
+ | `/manual`, `/yolo`, `/auto` | Activate that permission mode |
57
+ | `/processes` | View and manage background processes started this session |
58
+ | `/rollback` | Undo the last turn's file changes and rewind the conversation |
59
+ | `/hotkeys` | Show all keyboard shortcuts |
60
+ | `/fork` | Create a new fork from a previous user message |
61
+ | `/clone` | Duplicate the current session at the current position |
62
+ | `/tree` | Navigate session tree (`ctrl+o` cycles filters) |
63
+ | `/undo` | Rewind the last turn (same session; `/redo` restores) |
64
+ | `/edit` | Rewind the last turn and put its text in the chat box |
65
+ | `/redo` | Restore a turn undone with `/undo` |
50
66
  | `/trust` | Save project trust decision for future sessions |
51
- | `/fork` | Create a new session from a previous user message |
52
- | `/clone` | Duplicate the current active branch into a new session |
53
- | `/compact [prompt]` | Manually compact context, optionally with custom instructions |
54
- | `/copy` | Copy last assistant message to clipboard |
55
- | `/export [file]` | Export session to HTML or JSONL |
56
- | `/import <file>` | Import and resume a session from a JSONL file |
57
- | `/share` | Upload as private GitHub gist with shareable HTML link |
67
+ | `/login`, `/auth` | Configure provider authentication |
68
+ | `/logout`, `/deauth` | Remove provider authentication |
69
+ | `/new` | Start a new session |
70
+ | `/init` | Generate a starter AGENTS.md for this project |
71
+ | `/swarm` | Orchestrate parallel subagents for a complex task |
72
+ | `/compact` | Manually compact the session context |
73
+ | `/resume`, `/sessions` | Browse and resume sessions |
58
74
  | `/reload` | Reload keybindings, extensions, skills, prompts, themes, and context files |
59
- | `/hotkeys` | Show all keyboard shortcuts |
60
- | `/changelog` | Display version history |
61
- | `/quit` | Quit pi |
75
+ | `/quit`, `/exit` | Quit lunR |
76
+
77
+ There is no `/changelog` command.
78
+
79
+ Notable extension-registered commands (always available unless you disable those built-ins): `/thinking`, `/effort`, `/reasoning`, `/cron`, `/goal`, `/mcp`, `/mcp-auth`, `/lsp`, `/lsp-restart`, `/websearch`. See [Built-in features](features.md).
62
80
 
63
81
  ## Message Queue
64
82
 
@@ -69,21 +87,22 @@ You can submit messages while the agent is still working:
69
87
  - **Escape** aborts and restores queued messages to the editor.
70
88
  - **Alt+Up** retrieves queued messages back to the editor.
71
89
 
72
- On Windows Terminal, Alt+Enter is fullscreen by default. Remap it as described in [Terminal setup](terminal-setup.md) if you want pi to receive the shortcut.
90
+ On Windows Terminal, Alt+Enter is fullscreen by default. Remap it as described in [Terminal setup](terminal-setup.md) if you want lunR to receive the shortcut.
73
91
 
74
92
  Configure delivery in [Settings](settings.md) with `steeringMode` and `followUpMode`.
75
93
 
76
94
  ## Sessions
77
95
 
78
- Sessions are saved automatically to `~/.pi/agent/sessions/`, organized by working directory.
96
+ Sessions are saved automatically to `~/.lunr/agent/sessions/`, organized by working directory.
79
97
 
80
98
  ```bash
81
- pi -c # Continue most recent session
82
- pi -r # Browse and select a session
83
- pi --no-session # Ephemeral mode; do not save
84
- pi --name "my task" # Set session display name at startup
85
- pi --session <path|id> # Use a specific session file or session ID
86
- pi --fork <path|id> # Fork a session into a new session file
99
+ lunr -c # Continue most recent session
100
+ lunr -r # Browse and select a session
101
+ lunr --no-session # Ephemeral mode; do not save
102
+ lunr --name "my task" # Set session display name at startup
103
+ lunr --session <path|id> # Use a specific session file or session ID
104
+ lunr --session-id <id> # Exact project session ID, created if missing
105
+ lunr --fork <path|id> # Fork a session into a new session file
87
106
  ```
88
107
 
89
108
  Useful session commands:
@@ -93,14 +112,15 @@ Useful session commands:
93
112
  - `/fork` creates a new session from an earlier user message.
94
113
  - `/clone` duplicates the current active branch into a new session file.
95
114
  - `/compact` summarizes older messages to free context.
115
+ - `/undo` / `/edit` / `/redo` stay in the same session. `/rollback` forks and restores files.
96
116
 
97
117
  See [Sessions](sessions.md) and [Compaction](compaction.md) for details.
98
118
 
99
119
  ## Context Files
100
120
 
101
- Pi loads `AGENTS.md` or `CLAUDE.md` at startup from:
121
+ lunR loads `AGENTS.md` or `CLAUDE.md` at startup from:
102
122
 
103
- - `~/.pi/agent/AGENTS.md` for global instructions
123
+ - `~/.lunr/agent/AGENTS.md` for global instructions
104
124
  - parent directories, walking up from the current working directory
105
125
  - the current directory
106
126
 
@@ -110,59 +130,58 @@ Use context files for project conventions, commands, safety rules, and preferenc
110
130
 
111
131
  Replace the default system prompt with:
112
132
 
113
- - `.pi/SYSTEM.md` for a project
114
- - `~/.pi/agent/SYSTEM.md` globally
133
+ - `.lunr/SYSTEM.md` for a project
134
+ - `~/.lunr/agent/SYSTEM.md` globally
115
135
 
116
136
  Append to the default prompt without replacing it with `APPEND_SYSTEM.md` in either location.
117
137
 
118
138
  ### Project Trust
119
139
 
120
- On interactive startup, pi asks before trusting a project folder that contains project-local settings, resources, or project `.agents/skills` and has no saved decision for the folder or a parent folder in `~/.pi/agent/trust.json`. Trusting a project allows pi to load `.pi/settings.json` and `.pi` resources, install missing project packages, and execute project extensions.
140
+ On interactive startup, lunR asks before trusting a project folder that contains project-local settings, resources, or project `.agents/skills` and has no saved decision for the folder or a parent folder in `~/.lunr/agent/trust.json`. Trusting a project allows lunR to load `.lunr/settings.json` and `.lunr` resources, install missing project packages, and execute project extensions.
121
141
 
122
- Before the trust decision, pi loads only context files, user/global extensions, and CLI `-e` extensions so they can handle the `project_trust` event. Project-local extensions, project package-managed extensions, and project settings are loaded only after the project is trusted. This split also applies when switching to a session from a different cwd whose trust has not been resolved in the current process.
142
+ Before the trust decision, lunR loads only context files, user/global extensions, and CLI `-e` extensions so they can handle the `project_trust` event. Project-local extensions, project package-managed extensions, and project settings are loaded only after the project is trusted. This split also applies when switching to a session from a different cwd whose trust has not been resolved in the current process.
123
143
 
124
144
  Non-interactive modes (`-p`, `--mode json`, and `--mode rpc`) do not show a trust prompt. Without an applicable saved trust decision, they use `defaultProjectTrust` from global settings: `ask` (default) and `never` ignore those project resources, while `always` trusts them. Pass `--approve`/`-a` or `--no-approve`/`-na` to override project trust for one run.
125
145
 
126
- If no extension or saved decision applies, `defaultProjectTrust` controls the fallback behavior. Set it to `"ask"`, `"always"`, or `"never"` in `~/.pi/agent/settings.json`, or change it with `/settings`.
127
-
128
- `pi config` and package commands use the same project trust flow, except `pi update` never prompts. Pass `--approve` to trust project-local settings for one command or `--no-approve` to ignore them.
146
+ If no extension or saved decision applies, `defaultProjectTrust` controls the fallback behavior. Set it to `"ask"`, `"always"`, or `"never"` in `~/.lunr/agent/settings.json`, or change it with `/settings`.
129
147
 
130
- Use `/trust` in interactive mode to save a project trust decision for future sessions, including trust for the immediate parent folder. It writes `~/.pi/agent/trust.json` only; the current session is not reloaded, so restart pi for changes to take effect.
148
+ `lunr config` and package commands use the same project trust flow. Pass `--approve` to trust project-local settings for one command or `--no-approve` to ignore them. `lunr update` never prompts; it only reinstalls the global CLI.
131
149
 
150
+ Use `/trust` in interactive mode to save a project trust decision for future sessions, including trust for the immediate parent folder. It writes `~/.lunr/agent/trust.json` only; the current session is not reloaded, so restart lunR for changes to take effect.
132
151
 
133
152
  ## Exporting and Sharing Sessions
134
153
 
135
154
  Use `/export [file]` to write a session to HTML.
136
155
 
137
- Use `/share` to upload a private GitHub gist with a shareable HTML link.
138
-
139
- If you use pi for open source work and want to publish sessions for model, prompt, tool, and evaluation research, see [`badlogic/pi-share-hf`](https://github.com/badlogic/pi-share-hf). It publishes sessions to Hugging Face datasets.
156
+ Use `/share` to upload a private GitHub gist. The HTML viewer URL still defaults to https://pi.dev/session/ — that is an intentional leftover, not a lunR-hosted viewer. Set `PI_SHARE_VIEWER_URL` to point elsewhere.
140
157
 
141
158
  ## CLI Reference
142
159
 
143
160
  ```bash
144
- pi [options] [@files...] [messages...]
161
+ lunr [options] [@files...] [messages...]
145
162
  ```
146
163
 
147
- ### Package Commands
164
+ ### Product and Package Commands
148
165
 
149
166
  ```bash
150
- pi install <source> [-l] # Install package, -l for project-local
151
- pi remove <source> [-l] # Remove package
152
- pi uninstall <source> [-l] # Alias for remove
153
- pi update [source|self|pi] # Update pi only, or one package source
154
- pi update --all # Update pi and packages; reconcile pinned git refs
155
- pi update --extensions # Update packages only; reconcile pinned git refs
156
- pi update --models # Refresh model catalogs only
157
- pi update --self # Update pi only
158
- pi update --extension <src> # Update one package
159
- pi list # List installed packages
160
- pi config # Enable/disable package resources
167
+ lunr setup # First-run / reconfigure optional features
168
+ lunr features [list|enable|disable]
169
+ lunr gateway [] # Chat gateway (requires chat-platforms)
170
+ lunr uninstall [--purge] # Remove this lunR install (keeps ~/.lunr/agent unless --purge)
171
+ lunr uninstall <source> [-l] # Remove an extension package (alias for remove)
172
+ lunr install <source> [-l] # Install package, -l for project-local
173
+ lunr remove <source> [-l] # Remove package
174
+ lunr list # List installed packages
175
+ lunr config # Enable/disable package resources
176
+ lunr update # Reinstall global @ashx-j/lunr only
177
+ lunr update --self # Same as lunr update
161
178
  ```
162
179
 
163
- These commands manage pi packages and `pi update` can update the pi CLI installation. To uninstall pi itself, see [Quickstart](quickstart.md#uninstall). `pi config` and project package commands accept `--approve`/`--no-approve` to trust or ignore project-local settings for one command. `pi update` never prompts for project trust.
180
+ `lunr update` does not take `--models`, `--all`, `--force`, or `--extensions`. Refresh catalogs with `/refresh`. Workspace `npx lunr` from this repo refuses to self-update.
181
+
182
+ To uninstall lunR itself, see [Quickstart](quickstart.md#uninstall). `lunr config` and project package commands accept `--approve`/`--no-approve` to trust or ignore project-local settings for one command.
164
183
 
165
- See [Pi Packages](packages.md) for package sources and security notes.
184
+ See [Packages](packages.md) for package sources and security notes.
166
185
 
167
186
  ### Modes
168
187
 
@@ -174,10 +193,10 @@ See [Pi Packages](packages.md) for package sources and security notes.
174
193
  | `--mode rpc` | RPC mode over stdin/stdout; see [RPC mode](rpc.md) |
175
194
  | `--export <in> [out]` | Export a session to HTML |
176
195
 
177
- In print mode, pi also reads piped stdin and merges it into the initial prompt:
196
+ In print mode, lunR also reads piped stdin and merges it into the initial prompt:
178
197
 
179
198
  ```bash
180
- cat README.md | pi -p "Summarize this text"
199
+ cat README.md | lunr -p "Summarize this text"
181
200
  ```
182
201
 
183
202
  ### Model Options
@@ -198,6 +217,7 @@ cat README.md | pi -p "Summarize this text"
198
217
  | `-c`, `--continue` | Continue the most recent session |
199
218
  | `-r`, `--resume` | Browse and select a session |
200
219
  | `--session <path\|id>` | Use a specific session file or partial UUID |
220
+ | `--session-id <id>` | Use exact project session ID, creating it if missing |
201
221
  | `--fork <path\|id>` | Fork a session file or partial UUID into a new session |
202
222
  | `--session-dir <dir>` | Custom session storage directory |
203
223
  | `--no-session` | Ephemeral mode; do not save |
@@ -212,7 +232,7 @@ cat README.md | pi -p "Summarize this text"
212
232
  | `--no-builtin-tools`, `-nbt` | Disable built-in tools but keep extension/custom tools enabled |
213
233
  | `--no-tools`, `-nt` | Disable all tools |
214
234
 
215
- Built-in tools: `read`, `bash`, `edit`, `write`, `grep`, `find`, `ls`.
235
+ Built-in tools: `read`, `bash`, `edit`, `write`, `grep`, `find`, `ls`. Default on: `read`, `bash`, `edit`, `write`. `grep`/`find`/`ls` start off.
216
236
 
217
237
  ### Resource Options
218
238
 
@@ -231,7 +251,7 @@ Built-in tools: `read`, `bash`, `edit`, `write`, `grep`, `find`, `ls`.
231
251
  Combine `--no-*` with explicit flags to load exactly what you need, ignoring settings. Example:
232
252
 
233
253
  ```bash
234
- pi --no-extensions -e ./my-extension.ts
254
+ lunr --no-extensions -e ./my-extension.ts
235
255
  ```
236
256
 
237
257
  ### Other Options
@@ -243,6 +263,7 @@ pi --no-extensions -e ./my-extension.ts
243
263
  | `--verbose` | Force verbose startup |
244
264
  | `-a`, `--approve` | Trust project-local files for this run |
245
265
  | `-na`, `--no-approve` | Ignore project-local files for this run |
266
+ | `--offline` | Disable startup network operations (same as `PI_OFFLINE=1`) |
246
267
  | `-h`, `--help` | Show help |
247
268
  | `-v`, `--version` | Show version |
248
269
 
@@ -251,62 +272,66 @@ pi --no-extensions -e ./my-extension.ts
251
272
  Prefix files with `@` to include them in the message:
252
273
 
253
274
  ```bash
254
- pi @prompt.md "Answer this"
255
- pi -p @screenshot.png "What's in this image?"
256
- pi @code.ts @test.ts "Review these files"
275
+ lunr @prompt.md "Answer this"
276
+ lunr -p @screenshot.png "What's in this image?"
277
+ lunr @code.ts @test.ts "Review these files"
257
278
  ```
258
279
 
259
280
  ### Examples
260
281
 
261
282
  ```bash
262
283
  # Interactive with initial prompt
263
- pi "List all .ts files in src/"
284
+ lunr "List all .ts files in src/"
264
285
 
265
286
  # Non-interactive
266
- pi -p "Summarize this codebase"
287
+ lunr -p "Summarize this codebase"
267
288
 
268
289
  # Non-interactive with piped stdin
269
- cat README.md | pi -p "Summarize this text"
290
+ cat README.md | lunr -p "Summarize this text"
270
291
 
271
292
  # Named one-shot session
272
- pi --name "release audit" -p "Audit this repository"
293
+ lunr --name "release audit" -p "Audit this repository"
273
294
 
274
295
  # Different model
275
- pi --provider openai --model gpt-4o "Help me refactor"
296
+ lunr --provider openai --model gpt-4o "Help me refactor"
276
297
 
277
298
  # Model with provider prefix
278
- pi --model openai/gpt-4o "Help me refactor"
299
+ lunr --model openai/gpt-4o "Help me refactor"
279
300
 
280
301
  # Model with thinking level shorthand
281
- pi --model sonnet:high "Solve this complex problem"
302
+ lunr --model sonnet:high "Solve this complex problem"
282
303
 
283
304
  # Limit model cycling
284
- pi --models "claude-*,gpt-4o"
305
+ lunr --models "claude-*,gpt-4o"
285
306
 
286
307
  # Read-only mode
287
- pi --tools read,grep,find,ls -p "Review the code"
308
+ lunr --tools read,grep,find,ls -p "Review the code"
288
309
 
289
310
  # Disable one extension or built-in tool while keeping the rest available
290
- pi --exclude-tools ask_question
311
+ lunr --exclude-tools ask_question
312
+
313
+ # Offline (no startup network)
314
+ lunr --offline
291
315
  ```
292
316
 
293
317
  ### Environment Variables
294
318
 
319
+ These names stay `PI_*`. Do not invent `LUNR_*` replacements for them.
320
+
295
321
  | Variable | Description |
296
322
  |----------|-------------|
297
- | `PI_CODING_AGENT_DIR` | Override config directory; default is `~/.pi/agent` |
323
+ | `PI_CODING_AGENT_DIR` | Override config directory; default is `~/.lunr/agent` |
298
324
  | `PI_CODING_AGENT_SESSION_DIR` | Override session storage directory; overridden by `--session-dir` |
299
325
  | `PI_PACKAGE_DIR` | Override package directory, useful for Nix/Guix store paths |
300
- | `PI_OFFLINE` | Disable startup network operations, including update checks, package update checks, and install/update telemetry |
301
- | `PI_SKIP_VERSION_CHECK` | Skip the Pi version update check at startup. This prevents the `pi.dev` latest-version request |
302
- | `PI_TELEMETRY` | Override install/update telemetry and provider attribution headers: `1`/`true`/`yes` or `0`/`false`/`no`. This does not disable update checks |
326
+ | `PI_OFFLINE` | Disable startup network operations, including the npm update check and package update checks |
327
+ | `PI_SHARE_VIEWER_URL` | Base URL for `/share` HTML viewer (default: `https://pi.dev/session/`) |
303
328
  | `PI_CACHE_RETENTION` | Set to `long` for extended prompt cache where supported |
304
329
  | `VISUAL`, `EDITOR` | Fallback external editor for Ctrl+G when `externalEditor` is unset; defaults to Notepad on Windows and `nano` elsewhere |
305
330
 
306
- ## Design Principles
331
+ `PI_SKIP_VERSION_CHECK` and `PI_TELEMETRY` are not used by lunR. Gateway bot tokens optionally use `LUNR_TELEGRAM_BOT_TOKEN` / `LUNR_DISCORD_BOT_TOKEN`.
307
332
 
308
- Pi keeps the core small and pushes workflow-specific behavior into extensions, skills, prompt templates, and packages.
333
+ ## Design Principles
309
334
 
310
- It intentionally does not include built-in MCP, sub-agents, permission popups, plan mode, to-dos, or background bash. You can build or install those workflows as extensions or packages, or use external tools such as containers and tmux.
335
+ lunR keeps the core small and still ships the workflows most coding agents expect: MCP, subagents, permission modes, plan + `present_plan`, todos, `/processes`, cron, gateway, web search, LSP, agent memory, goals, intercom, skill-creator, and model tiers. Everything else stays in extensions, skills, prompt templates, and packages.
311
336
 
312
- For the full rationale, read the [blog post](https://mariozechner.at/posts/2025-11-30-pi-coding-agent/).
337
+ See [Built-in features](features.md) and the [README philosophy](../README.md#philosophy).
package/docs/windows.md CHANGED
@@ -1,8 +1,8 @@
1
1
  # Windows Setup
2
2
 
3
- Pi requires a bash shell on Windows. Checked locations (in order):
3
+ lunR requires a bash shell on Windows. Checked locations (in order):
4
4
 
5
- 1. Custom path from `~/.pi/agent/settings.json`
5
+ 1. Custom path from `~/.lunr/agent/settings.json`
6
6
  2. Git Bash (`C:\Program Files\Git\bin\bash.exe`)
7
7
  3. `bash.exe` on PATH (Cygwin, MSYS2, WSL)
8
8
 
@@ -15,3 +15,11 @@ For most users, [Git for Windows](https://git-scm.com/download/win) is sufficien
15
15
  "shellPath": "C:\\cygwin64\\bin\\bash.exe"
16
16
  }
17
17
  ```
18
+
19
+ ## Image paste
20
+
21
+ Ctrl+V is the terminal's paste. lunR image paste is **Alt+V**. The editor inserts `[image_n]` chips, not a temp path. VS Code may eat Alt+V (View mnemonic); forward it with `sendSequence` `\u001b[118;3u`.
22
+
23
+ ## LSP
24
+
25
+ Language servers spawned through npm `.cmd` shims need a real process start on Windows. If an LSP never starts, tools silently fall back to tree-sitter. Check `/lsp` if language features look missing.
@@ -1,6 +1,8 @@
1
1
  # Examples
2
2
 
3
- Example code for pi-coding-agent SDK and extensions.
3
+ Example code for the lunR SDK (`@ashx-j/lunr`) and extensions.
4
+
5
+ After a global install, these files live under `node_modules/@ashx-j/lunr/examples` (or `npm root -g` then `@ashx-j/lunr/examples`). From this repo they are `packages/coding-agent/examples/`. Sample extensions such as `plan-mode`, `todo.ts`, and `subagent/` demonstrate the Extension API; they are not the product implementation.
4
6
 
5
7
  ## Directories
6
8
 
@@ -1,15 +1,15 @@
1
1
  # Extension Examples
2
2
 
3
- Example extensions for pi-coding-agent.
3
+ Example extensions for lunR. These are Extension API samples, not the product implementation of plan mode, todos, or subagents (those are built-ins; see [docs/features.md](../../docs/features.md)).
4
4
 
5
5
  ## Usage
6
6
 
7
7
  ```bash
8
8
  # Load an extension with --extension flag
9
- pi --extension examples/extensions/permission-gate.ts
9
+ lunr --extension examples/extensions/permission-gate.ts
10
10
 
11
11
  # Or copy to extensions directory for auto-discovery
12
- cp permission-gate.ts ~/.pi/agent/extensions/
12
+ cp permission-gate.ts ~/.lunr/agent/extensions/
13
13
  ```
14
14
 
15
15
  ## Examples
@@ -100,7 +100,7 @@ cp permission-gate.ts ~/.pi/agent/extensions/
100
100
 
101
101
  | Extension | Description |
102
102
  |-----------|-------------|
103
- | `mac-system-theme.ts` | Syncs pi theme with macOS dark/light mode |
103
+ | `mac-system-theme.ts` | Syncs lunR theme with macOS dark/light mode |
104
104
 
105
105
  ### Resources
106
106
 
@@ -142,7 +142,7 @@ cp permission-gate.ts ~/.pi/agent/extensions/
142
142
  See [docs/extensions.md](../../docs/extensions.md) for full documentation.
143
143
 
144
144
  ```typescript
145
- import type { ExtensionAPI } from "@earendil-works/pi-coding-agent";
145
+ import type { ExtensionAPI } from "@ashx-j/lunr";
146
146
  import { Type } from "typebox";
147
147
 
148
148
  export default function (pi: ExtensionAPI) {
@@ -184,7 +184,7 @@ export default function (pi: ExtensionAPI) {
184
184
 
185
185
  **Use StringEnum for string parameters** (required for Google API compatibility):
186
186
  ```typescript
187
- import { StringEnum } from "@earendil-works/pi-ai";
187
+ import { StringEnum } from "@ashx-j/lunr-ai";
188
188
 
189
189
  // Good
190
190
  action: StringEnum(["list", "add"] as const)