@sns-myagent/cli 0.2.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 (1320) hide show
  1. package/CHANGELOG.md +69 -0
  2. package/README.md +603 -0
  3. package/bin/snscoder.js +98 -0
  4. package/package.json +117 -0
  5. package/scripts/apply-pi-natives-patch.js +86 -0
  6. package/scripts/bench-guard.ts +71 -0
  7. package/scripts/build-binary.ts +108 -0
  8. package/scripts/bundle-dist.ts +117 -0
  9. package/scripts/cron-daily.sh +69 -0
  10. package/scripts/diagnose.sh +183 -0
  11. package/scripts/embed-mupdf-wasm.ts +67 -0
  12. package/scripts/fetch-binary.mjs +359 -0
  13. package/scripts/format-prompts.ts +68 -0
  14. package/scripts/generate-aria-snapshot.ts +134 -0
  15. package/scripts/generate-docs-index.ts +56 -0
  16. package/scripts/generate-share-viewer.ts +36 -0
  17. package/scripts/measure-prompt-tokens.ts +63 -0
  18. package/scripts/omp +42 -0
  19. package/scripts/omp.ts +19 -0
  20. package/scripts/pre-commit.sh +85 -0
  21. package/src/adapters/telegram/bot.ts +181 -0
  22. package/src/adapters/telegram/format.ts +215 -0
  23. package/src/adapters/telegram/handler.ts +128 -0
  24. package/src/adapters/telegram/index.ts +73 -0
  25. package/src/advisor/__tests__/advisor.test.ts +1133 -0
  26. package/src/advisor/advise-tool.ts +165 -0
  27. package/src/advisor/index.ts +4 -0
  28. package/src/advisor/runtime.ts +434 -0
  29. package/src/advisor/transcript-recorder.ts +136 -0
  30. package/src/advisor/watchdog.ts +83 -0
  31. package/src/async/index.ts +1 -0
  32. package/src/async/job-manager.ts +674 -0
  33. package/src/auto-thinking/classifier.ts +190 -0
  34. package/src/autolearn/controller.ts +139 -0
  35. package/src/autolearn/managed-skills.ts +255 -0
  36. package/src/autoresearch/command-resume.md +14 -0
  37. package/src/autoresearch/dashboard.ts +436 -0
  38. package/src/autoresearch/git.ts +331 -0
  39. package/src/autoresearch/helpers.ts +218 -0
  40. package/src/autoresearch/index.ts +536 -0
  41. package/src/autoresearch/prompt-setup.md +43 -0
  42. package/src/autoresearch/prompt.md +103 -0
  43. package/src/autoresearch/resume-message.md +10 -0
  44. package/src/autoresearch/state.ts +273 -0
  45. package/src/autoresearch/storage.ts +700 -0
  46. package/src/autoresearch/tools/init-experiment.ts +269 -0
  47. package/src/autoresearch/tools/log-experiment.ts +521 -0
  48. package/src/autoresearch/tools/run-experiment.ts +407 -0
  49. package/src/autoresearch/tools/update-notes.ts +109 -0
  50. package/src/autoresearch/types.ts +168 -0
  51. package/src/capability/context-file.ts +44 -0
  52. package/src/capability/extension-module.ts +34 -0
  53. package/src/capability/extension.ts +47 -0
  54. package/src/capability/fs.ts +117 -0
  55. package/src/capability/hook.ts +40 -0
  56. package/src/capability/index.ts +436 -0
  57. package/src/capability/instruction.ts +37 -0
  58. package/src/capability/mcp.ts +76 -0
  59. package/src/capability/prompt.ts +35 -0
  60. package/src/capability/rule-buckets.ts +66 -0
  61. package/src/capability/rule.ts +261 -0
  62. package/src/capability/settings.ts +34 -0
  63. package/src/capability/skill.ts +63 -0
  64. package/src/capability/slash-command.ts +40 -0
  65. package/src/capability/ssh.ts +41 -0
  66. package/src/capability/system-prompt.ts +34 -0
  67. package/src/capability/tool.ts +38 -0
  68. package/src/capability/types.ts +168 -0
  69. package/src/cli/agents-cli.ts +138 -0
  70. package/src/cli/args.ts +360 -0
  71. package/src/cli/auth-broker-cli.ts +893 -0
  72. package/src/cli/auth-gateway-cli.ts +608 -0
  73. package/src/cli/bench-cli.ts +552 -0
  74. package/src/cli/classify-install-target.ts +76 -0
  75. package/src/cli/claude-trace-cli.ts +795 -0
  76. package/src/cli/commands/init-xdg.ts +27 -0
  77. package/src/cli/completion-gen.ts +550 -0
  78. package/src/cli/config-cli.ts +418 -0
  79. package/src/cli/dry-balance-cli.ts +858 -0
  80. package/src/cli/entry.ts +40 -0
  81. package/src/cli/extension-flags.ts +48 -0
  82. package/src/cli/file-processor.ts +133 -0
  83. package/src/cli/flag-tables.ts +322 -0
  84. package/src/cli/gallery-cli.ts +231 -0
  85. package/src/cli/gallery-fixtures/agentic.ts +407 -0
  86. package/src/cli/gallery-fixtures/codeintel.ts +187 -0
  87. package/src/cli/gallery-fixtures/edit.ts +194 -0
  88. package/src/cli/gallery-fixtures/fs.ts +220 -0
  89. package/src/cli/gallery-fixtures/index.ts +40 -0
  90. package/src/cli/gallery-fixtures/interaction.ts +49 -0
  91. package/src/cli/gallery-fixtures/memory.ts +81 -0
  92. package/src/cli/gallery-fixtures/misc.ts +250 -0
  93. package/src/cli/gallery-fixtures/search.ts +213 -0
  94. package/src/cli/gallery-fixtures/shell.ts +167 -0
  95. package/src/cli/gallery-fixtures/types.ts +57 -0
  96. package/src/cli/gallery-fixtures/web.ts +158 -0
  97. package/src/cli/gallery-screenshot.ts +279 -0
  98. package/src/cli/grep-cli.ts +160 -0
  99. package/src/cli/grievances-cli.ts +256 -0
  100. package/src/cli/index.ts +416 -0
  101. package/src/cli/initial-message.ts +58 -0
  102. package/src/cli/models-cli.ts +427 -0
  103. package/src/cli/plugin-cli.ts +996 -0
  104. package/src/cli/profile-alias.ts +338 -0
  105. package/src/cli/profile-bootstrap.ts +233 -0
  106. package/src/cli/read-cli.ts +57 -0
  107. package/src/cli/session-picker.ts +79 -0
  108. package/src/cli/setup-cli.ts +332 -0
  109. package/src/cli/setup-model-picker.ts +43 -0
  110. package/src/cli/shell-cli.ts +176 -0
  111. package/src/cli/ssh-cli.ts +179 -0
  112. package/src/cli/startup-cwd.ts +58 -0
  113. package/src/cli/stats-cli.ts +229 -0
  114. package/src/cli/tiny-models-cli.ts +132 -0
  115. package/src/cli/ttsr-cli.ts +995 -0
  116. package/src/cli/update-cli.ts +671 -0
  117. package/src/cli/usage-cli.ts +774 -0
  118. package/src/cli/web-search-cli.ts +132 -0
  119. package/src/cli/worktree-cli.ts +291 -0
  120. package/src/cli-commands.ts +131 -0
  121. package/src/cli.ts +326 -0
  122. package/src/collab/crypto.ts +63 -0
  123. package/src/collab/guest.ts +602 -0
  124. package/src/collab/host.ts +619 -0
  125. package/src/collab/protocol.ts +289 -0
  126. package/src/collab/relay-client.ts +216 -0
  127. package/src/commands/acp.ts +24 -0
  128. package/src/commands/agents.ts +57 -0
  129. package/src/commands/auth-broker.ts +99 -0
  130. package/src/commands/auth-gateway.ts +69 -0
  131. package/src/commands/bench.ts +42 -0
  132. package/src/commands/chat.ts +24 -0
  133. package/src/commands/commit.ts +46 -0
  134. package/src/commands/complete.ts +66 -0
  135. package/src/commands/completions.ts +60 -0
  136. package/src/commands/config.ts +51 -0
  137. package/src/commands/dry-balance.ts +43 -0
  138. package/src/commands/gallery.ts +52 -0
  139. package/src/commands/grep.ts +48 -0
  140. package/src/commands/grievances.ts +51 -0
  141. package/src/commands/install.ts +107 -0
  142. package/src/commands/join.ts +39 -0
  143. package/src/commands/launch.ts +182 -0
  144. package/src/commands/models.ts +61 -0
  145. package/src/commands/plugin.ts +78 -0
  146. package/src/commands/read.ts +38 -0
  147. package/src/commands/say.ts +102 -0
  148. package/src/commands/setup.ts +67 -0
  149. package/src/commands/shell.ts +29 -0
  150. package/src/commands/ssh.ts +60 -0
  151. package/src/commands/stats.ts +29 -0
  152. package/src/commands/tiny-models.ts +36 -0
  153. package/src/commands/token.ts +108 -0
  154. package/src/commands/ttsr.ts +125 -0
  155. package/src/commands/update.ts +21 -0
  156. package/src/commands/usage.ts +43 -0
  157. package/src/commands/web-search.ts +42 -0
  158. package/src/commands/worktree.ts +56 -0
  159. package/src/commit/agentic/agent.ts +318 -0
  160. package/src/commit/agentic/fallback.ts +96 -0
  161. package/src/commit/agentic/index.ts +355 -0
  162. package/src/commit/agentic/prompts/analyze-file.md +22 -0
  163. package/src/commit/agentic/prompts/session-user.md +25 -0
  164. package/src/commit/agentic/prompts/split-confirm.md +1 -0
  165. package/src/commit/agentic/prompts/system.md +38 -0
  166. package/src/commit/agentic/state.ts +60 -0
  167. package/src/commit/agentic/tools/analyze-file.ts +149 -0
  168. package/src/commit/agentic/tools/git-file-diff.ts +191 -0
  169. package/src/commit/agentic/tools/git-hunk.ts +52 -0
  170. package/src/commit/agentic/tools/git-overview.ts +81 -0
  171. package/src/commit/agentic/tools/index.ts +54 -0
  172. package/src/commit/agentic/tools/propose-changelog.ts +147 -0
  173. package/src/commit/agentic/tools/propose-commit.ts +109 -0
  174. package/src/commit/agentic/tools/recent-commits.ts +81 -0
  175. package/src/commit/agentic/tools/schemas.ts +11 -0
  176. package/src/commit/agentic/tools/split-commit.ts +241 -0
  177. package/src/commit/agentic/topo-sort.ts +44 -0
  178. package/src/commit/agentic/trivial.ts +51 -0
  179. package/src/commit/agentic/validation.ts +183 -0
  180. package/src/commit/analysis/conventional.ts +64 -0
  181. package/src/commit/analysis/index.ts +4 -0
  182. package/src/commit/analysis/scope.ts +242 -0
  183. package/src/commit/analysis/summary.ts +107 -0
  184. package/src/commit/analysis/validation.ts +66 -0
  185. package/src/commit/changelog/detect.ts +40 -0
  186. package/src/commit/changelog/generate.ts +101 -0
  187. package/src/commit/changelog/index.ts +234 -0
  188. package/src/commit/changelog/parse.ts +44 -0
  189. package/src/commit/cli.ts +85 -0
  190. package/src/commit/git/diff.ts +148 -0
  191. package/src/commit/index.ts +5 -0
  192. package/src/commit/map-reduce/index.ts +69 -0
  193. package/src/commit/map-reduce/map-phase.ts +193 -0
  194. package/src/commit/map-reduce/reduce-phase.ts +49 -0
  195. package/src/commit/map-reduce/utils.ts +9 -0
  196. package/src/commit/message.ts +11 -0
  197. package/src/commit/model-selection.ts +89 -0
  198. package/src/commit/pipeline.ts +243 -0
  199. package/src/commit/prompts/analysis-system.md +148 -0
  200. package/src/commit/prompts/analysis-user.md +38 -0
  201. package/src/commit/prompts/changelog-system.md +50 -0
  202. package/src/commit/prompts/changelog-user.md +18 -0
  203. package/src/commit/prompts/file-observer-system.md +24 -0
  204. package/src/commit/prompts/file-observer-user.md +8 -0
  205. package/src/commit/prompts/reduce-system.md +50 -0
  206. package/src/commit/prompts/reduce-user.md +17 -0
  207. package/src/commit/prompts/summary-retry.md +3 -0
  208. package/src/commit/prompts/summary-system.md +38 -0
  209. package/src/commit/prompts/summary-user.md +13 -0
  210. package/src/commit/prompts/types-description.md +2 -0
  211. package/src/commit/shared-llm.ts +70 -0
  212. package/src/commit/types.ts +118 -0
  213. package/src/commit/utils/exclusions.ts +42 -0
  214. package/src/commit/utils.ts +58 -0
  215. package/src/config/api-key-resolver.ts +67 -0
  216. package/src/config/append-only-context-mode.ts +76 -0
  217. package/src/config/config-file.ts +315 -0
  218. package/src/config/defaults.ts +55 -0
  219. package/src/config/file-lock.ts +164 -0
  220. package/src/config/index.ts +105 -0
  221. package/src/config/keybindings.ts +634 -0
  222. package/src/config/loader.ts +93 -0
  223. package/src/config/mcp-schema.json +238 -0
  224. package/src/config/model-discovery.ts +589 -0
  225. package/src/config/model-registry.ts +2267 -0
  226. package/src/config/model-resolver.ts +1819 -0
  227. package/src/config/model-roles.ts +99 -0
  228. package/src/config/models-config-schema.ts +266 -0
  229. package/src/config/models-config.ts +131 -0
  230. package/src/config/prompt-templates.ts +185 -0
  231. package/src/config/resolve-config-value.ts +94 -0
  232. package/src/config/schema.ts +139 -0
  233. package/src/config/settings-schema.ts +4903 -0
  234. package/src/config/settings.ts +1248 -0
  235. package/src/config/sns-config.ts +126 -0
  236. package/src/config.ts +242 -0
  237. package/src/cron/__tests__/cron-parser.test.ts +147 -0
  238. package/src/cron/cron-parser.ts +228 -0
  239. package/src/cron/cron-scheduler.ts +260 -0
  240. package/src/cron/cron-store.ts +275 -0
  241. package/src/cron/index.ts +21 -0
  242. package/src/cron/types.ts +65 -0
  243. package/src/cursor.ts +340 -0
  244. package/src/dap/client.ts +666 -0
  245. package/src/dap/config.ts +189 -0
  246. package/src/dap/defaults.json +212 -0
  247. package/src/dap/index.ts +4 -0
  248. package/src/dap/session.ts +1441 -0
  249. package/src/dap/types.ts +610 -0
  250. package/src/debug/index.ts +559 -0
  251. package/src/debug/log-formatting.ts +58 -0
  252. package/src/debug/log-viewer.ts +908 -0
  253. package/src/debug/profiler.ts +162 -0
  254. package/src/debug/protocol-probe.ts +267 -0
  255. package/src/debug/raw-sse-buffer.ts +294 -0
  256. package/src/debug/raw-sse.ts +292 -0
  257. package/src/debug/remote-debugger.ts +151 -0
  258. package/src/debug/report-bundle.ts +375 -0
  259. package/src/debug/system-info.ts +111 -0
  260. package/src/debug/terminal-info.ts +124 -0
  261. package/src/discovery/agents-md.ts +67 -0
  262. package/src/discovery/agents.ts +230 -0
  263. package/src/discovery/at-imports.ts +273 -0
  264. package/src/discovery/builtin-defaults.ts +39 -0
  265. package/src/discovery/builtin-rules/index.ts +56 -0
  266. package/src/discovery/builtin-rules/rs-box-leak.md +48 -0
  267. package/src/discovery/builtin-rules/rs-future-prelude.md +23 -0
  268. package/src/discovery/builtin-rules/rs-lazylock.md +51 -0
  269. package/src/discovery/builtin-rules/rs-match-ergonomics.md +67 -0
  270. package/src/discovery/builtin-rules/rs-parking-lot.md +44 -0
  271. package/src/discovery/builtin-rules/rs-result-type.md +19 -0
  272. package/src/discovery/builtin-rules/ts-bare-catch.md +38 -0
  273. package/src/discovery/builtin-rules/ts-import-type.md +42 -0
  274. package/src/discovery/builtin-rules/ts-no-any.md +65 -0
  275. package/src/discovery/builtin-rules/ts-no-deprecated-leftovers.md +44 -0
  276. package/src/discovery/builtin-rules/ts-no-dynamic-import.md +39 -0
  277. package/src/discovery/builtin-rules/ts-no-inline-cast-access.md +55 -0
  278. package/src/discovery/builtin-rules/ts-no-return-type.md +44 -0
  279. package/src/discovery/builtin-rules/ts-no-test-timers.md +55 -0
  280. package/src/discovery/builtin-rules/ts-no-tiny-functions.md +51 -0
  281. package/src/discovery/builtin-rules/ts-promise-with-resolvers.md +65 -0
  282. package/src/discovery/builtin-rules/ts-redundant-clear-guard.md +75 -0
  283. package/src/discovery/builtin-rules/ts-set-map.md +28 -0
  284. package/src/discovery/builtin.ts +934 -0
  285. package/src/discovery/claude-plugins.ts +386 -0
  286. package/src/discovery/claude.ts +584 -0
  287. package/src/discovery/cline.ts +83 -0
  288. package/src/discovery/codex.ts +522 -0
  289. package/src/discovery/cursor.ts +220 -0
  290. package/src/discovery/gemini.ts +383 -0
  291. package/src/discovery/github.ts +337 -0
  292. package/src/discovery/helpers.ts +1092 -0
  293. package/src/discovery/index.ts +81 -0
  294. package/src/discovery/mcp-json.ts +172 -0
  295. package/src/discovery/omp-extension-roots.ts +190 -0
  296. package/src/discovery/omp-plugins.ts +383 -0
  297. package/src/discovery/opencode.ts +441 -0
  298. package/src/discovery/plugin-dir-roots.ts +28 -0
  299. package/src/discovery/ssh.ts +153 -0
  300. package/src/discovery/substitute-plugin-root.ts +29 -0
  301. package/src/discovery/vscode.ts +105 -0
  302. package/src/discovery/windsurf.ts +147 -0
  303. package/src/edit/apply-patch/index.ts +87 -0
  304. package/src/edit/apply-patch/parser.ts +174 -0
  305. package/src/edit/diff.ts +999 -0
  306. package/src/edit/file-snapshot-store.ts +143 -0
  307. package/src/edit/hashline/block-resolver.ts +33 -0
  308. package/src/edit/hashline/diff.ts +290 -0
  309. package/src/edit/hashline/execute.ts +237 -0
  310. package/src/edit/hashline/filesystem.ts +138 -0
  311. package/src/edit/hashline/index.ts +5 -0
  312. package/src/edit/hashline/noop-loop-guard.ts +99 -0
  313. package/src/edit/hashline/params.ts +19 -0
  314. package/src/edit/index.ts +620 -0
  315. package/src/edit/modes/apply-patch.lark +19 -0
  316. package/src/edit/modes/apply-patch.ts +53 -0
  317. package/src/edit/modes/patch.ts +1904 -0
  318. package/src/edit/modes/replace.ts +1136 -0
  319. package/src/edit/normalize.ts +345 -0
  320. package/src/edit/notebook.ts +242 -0
  321. package/src/edit/read-file.ts +25 -0
  322. package/src/edit/renderer.ts +819 -0
  323. package/src/edit/streaming.ts +517 -0
  324. package/src/eval/__tests__/agent-bridge.test.ts +769 -0
  325. package/src/eval/__tests__/bridge-timeout.test.ts +64 -0
  326. package/src/eval/__tests__/budget-bridge.test.ts +69 -0
  327. package/src/eval/__tests__/completion-bridge.test.ts +412 -0
  328. package/src/eval/__tests__/helpers-local-roots.test.ts +58 -0
  329. package/src/eval/__tests__/idle-timeout.test.ts +80 -0
  330. package/src/eval/__tests__/js-context-manager.test.ts +291 -0
  331. package/src/eval/__tests__/julia-prelude.test.ts +77 -0
  332. package/src/eval/__tests__/kernel-spawn.test.ts +103 -0
  333. package/src/eval/__tests__/prelude-agent.test.ts +73 -0
  334. package/src/eval/agent-bridge.ts +319 -0
  335. package/src/eval/backend-helpers.ts +48 -0
  336. package/src/eval/backend.ts +71 -0
  337. package/src/eval/bridge-timeout.ts +44 -0
  338. package/src/eval/budget-bridge.ts +48 -0
  339. package/src/eval/completion-bridge.ts +211 -0
  340. package/src/eval/concurrency-bridge.ts +34 -0
  341. package/src/eval/executor-base.ts +425 -0
  342. package/src/eval/idle-timeout.ts +91 -0
  343. package/src/eval/index.ts +6 -0
  344. package/src/eval/jl/executor.ts +540 -0
  345. package/src/eval/jl/index.ts +54 -0
  346. package/src/eval/jl/kernel.ts +235 -0
  347. package/src/eval/jl/prelude.jl +930 -0
  348. package/src/eval/jl/prelude.ts +3 -0
  349. package/src/eval/jl/runner.jl +634 -0
  350. package/src/eval/jl/runtime.ts +118 -0
  351. package/src/eval/js/context-manager.ts +621 -0
  352. package/src/eval/js/executor.ts +173 -0
  353. package/src/eval/js/index.ts +40 -0
  354. package/src/eval/js/shared/helpers.ts +283 -0
  355. package/src/eval/js/shared/indirect-eval.ts +30 -0
  356. package/src/eval/js/shared/local-module-loader.ts +342 -0
  357. package/src/eval/js/shared/prelude.ts +2 -0
  358. package/src/eval/js/shared/prelude.txt +307 -0
  359. package/src/eval/js/shared/rewrite-imports.ts +532 -0
  360. package/src/eval/js/shared/runtime.ts +580 -0
  361. package/src/eval/js/shared/types.ts +18 -0
  362. package/src/eval/js/tool-bridge.ts +163 -0
  363. package/src/eval/js/worker-core.ts +151 -0
  364. package/src/eval/js/worker-entry.ts +37 -0
  365. package/src/eval/js/worker-protocol.ts +47 -0
  366. package/src/eval/kernel-base.ts +569 -0
  367. package/src/eval/py/__tests__/prelude.test.ts +19 -0
  368. package/src/eval/py/display.ts +71 -0
  369. package/src/eval/py/executor.ts +533 -0
  370. package/src/eval/py/index.ts +57 -0
  371. package/src/eval/py/kernel.ts +233 -0
  372. package/src/eval/py/prelude.py +683 -0
  373. package/src/eval/py/prelude.ts +3 -0
  374. package/src/eval/py/runner.py +1177 -0
  375. package/src/eval/py/runtime.ts +276 -0
  376. package/src/eval/py/spawn-options.ts +126 -0
  377. package/src/eval/py/tool-bridge.ts +182 -0
  378. package/src/eval/rb/executor.ts +504 -0
  379. package/src/eval/rb/index.ts +54 -0
  380. package/src/eval/rb/kernel.ts +230 -0
  381. package/src/eval/rb/prelude.rb +721 -0
  382. package/src/eval/rb/prelude.ts +3 -0
  383. package/src/eval/rb/runner.rb +474 -0
  384. package/src/eval/rb/runtime.ts +132 -0
  385. package/src/eval/runtime-env.ts +104 -0
  386. package/src/eval/session-id.ts +8 -0
  387. package/src/eval/types.ts +48 -0
  388. package/src/exa/index.ts +2 -0
  389. package/src/exa/mcp-client.ts +370 -0
  390. package/src/exa/types.ts +69 -0
  391. package/src/exec/bash-executor.ts +478 -0
  392. package/src/exec/exec.ts +53 -0
  393. package/src/exec/non-interactive-env.ts +119 -0
  394. package/src/export/custom-share.ts +65 -0
  395. package/src/export/html/index.ts +308 -0
  396. package/src/export/html/share-loader.js +102 -0
  397. package/src/export/html/template.css +1337 -0
  398. package/src/export/html/template.html +49 -0
  399. package/src/export/html/template.js +1626 -0
  400. package/src/export/html/tool-views.generated.js +37 -0
  401. package/src/export/html/vendor/highlight.min.js +1213 -0
  402. package/src/export/html/vendor/marked.min.js +6 -0
  403. package/src/export/html/web-palette.ts +142 -0
  404. package/src/export/share.ts +481 -0
  405. package/src/export/ttsr.ts +583 -0
  406. package/src/extensibility/custom-commands/bundled/ci-green/index.ts +54 -0
  407. package/src/extensibility/custom-commands/bundled/review/index.ts +698 -0
  408. package/src/extensibility/custom-commands/index.ts +2 -0
  409. package/src/extensibility/custom-commands/loader.ts +242 -0
  410. package/src/extensibility/custom-commands/types.ts +119 -0
  411. package/src/extensibility/custom-tools/index.ts +7 -0
  412. package/src/extensibility/custom-tools/loader.ts +268 -0
  413. package/src/extensibility/custom-tools/types.ts +277 -0
  414. package/src/extensibility/custom-tools/wrapper.ts +47 -0
  415. package/src/extensibility/extensions/compact-handler.ts +40 -0
  416. package/src/extensibility/extensions/get-commands-handler.ts +78 -0
  417. package/src/extensibility/extensions/index.ts +16 -0
  418. package/src/extensibility/extensions/loader.ts +587 -0
  419. package/src/extensibility/extensions/model-api.ts +41 -0
  420. package/src/extensibility/extensions/runner.ts +982 -0
  421. package/src/extensibility/extensions/types.ts +1394 -0
  422. package/src/extensibility/extensions/wrapper.ts +259 -0
  423. package/src/extensibility/hooks/index.ts +6 -0
  424. package/src/extensibility/hooks/loader.ts +244 -0
  425. package/src/extensibility/hooks/runner.ts +425 -0
  426. package/src/extensibility/hooks/tool-wrapper.ts +107 -0
  427. package/src/extensibility/hooks/types.ts +613 -0
  428. package/src/extensibility/legacy-pi-ai-shim.ts +73 -0
  429. package/src/extensibility/legacy-pi-coding-agent-shim.ts +128 -0
  430. package/src/extensibility/plugins/doctor.ts +65 -0
  431. package/src/extensibility/plugins/git-url.ts +367 -0
  432. package/src/extensibility/plugins/index.ts +9 -0
  433. package/src/extensibility/plugins/installer.ts +192 -0
  434. package/src/extensibility/plugins/legacy-pi-compat.ts +712 -0
  435. package/src/extensibility/plugins/loader.ts +458 -0
  436. package/src/extensibility/plugins/manager.ts +1026 -0
  437. package/src/extensibility/plugins/marketplace/cache.ts +136 -0
  438. package/src/extensibility/plugins/marketplace/fetcher.ts +315 -0
  439. package/src/extensibility/plugins/marketplace/index.ts +6 -0
  440. package/src/extensibility/plugins/marketplace/manager.ts +770 -0
  441. package/src/extensibility/plugins/marketplace/registry.ts +196 -0
  442. package/src/extensibility/plugins/marketplace/source-resolver.ts +147 -0
  443. package/src/extensibility/plugins/marketplace/types.ts +191 -0
  444. package/src/extensibility/plugins/marketplace-auto-update.ts +49 -0
  445. package/src/extensibility/plugins/parser.ts +105 -0
  446. package/src/extensibility/plugins/runtime-config.ts +9 -0
  447. package/src/extensibility/plugins/types.ts +194 -0
  448. package/src/extensibility/session-handler-types.ts +21 -0
  449. package/src/extensibility/shared-events.ts +367 -0
  450. package/src/extensibility/skills.ts +408 -0
  451. package/src/extensibility/slash-commands.ts +131 -0
  452. package/src/extensibility/tool-proxy.ts +28 -0
  453. package/src/extensibility/typebox.ts +945 -0
  454. package/src/extensibility/utils.ts +44 -0
  455. package/src/global.d.ts +57 -0
  456. package/src/goals/guided-setup.ts +142 -0
  457. package/src/goals/index.ts +3 -0
  458. package/src/goals/runtime.ts +521 -0
  459. package/src/goals/state.ts +37 -0
  460. package/src/goals/tools/goal-tool.ts +251 -0
  461. package/src/hindsight/backend.ts +354 -0
  462. package/src/hindsight/bank.ts +156 -0
  463. package/src/hindsight/client.ts +623 -0
  464. package/src/hindsight/config.ts +175 -0
  465. package/src/hindsight/content.ts +226 -0
  466. package/src/hindsight/index.ts +8 -0
  467. package/src/hindsight/mental-models.ts +429 -0
  468. package/src/hindsight/seeds.json +32 -0
  469. package/src/hindsight/state.ts +492 -0
  470. package/src/hindsight/transcript.ts +71 -0
  471. package/src/index.ts +66 -0
  472. package/src/internal-urls/agent-protocol.ts +146 -0
  473. package/src/internal-urls/artifact-protocol.ts +107 -0
  474. package/src/internal-urls/docs-index.generated.txt +2 -0
  475. package/src/internal-urls/docs-index.ts +102 -0
  476. package/src/internal-urls/filesystem-resource.ts +34 -0
  477. package/src/internal-urls/history-protocol.ts +118 -0
  478. package/src/internal-urls/index.ts +25 -0
  479. package/src/internal-urls/issue-pr-protocol.ts +594 -0
  480. package/src/internal-urls/json-query.ts +126 -0
  481. package/src/internal-urls/local-protocol.ts +315 -0
  482. package/src/internal-urls/mcp-protocol.ts +151 -0
  483. package/src/internal-urls/memory-protocol.ts +173 -0
  484. package/src/internal-urls/omp-protocol.ts +94 -0
  485. package/src/internal-urls/parse.ts +72 -0
  486. package/src/internal-urls/registry-helpers.ts +25 -0
  487. package/src/internal-urls/router.ts +105 -0
  488. package/src/internal-urls/rule-protocol.ts +45 -0
  489. package/src/internal-urls/skill-protocol.ts +112 -0
  490. package/src/internal-urls/types.ts +152 -0
  491. package/src/internal-urls/vault-protocol.ts +939 -0
  492. package/src/irc/bus.ts +311 -0
  493. package/src/jsonrpc/message-framing.ts +142 -0
  494. package/src/lib/xai-http.ts +124 -0
  495. package/src/lsp/client.ts +1135 -0
  496. package/src/lsp/clients/biome-client.ts +264 -0
  497. package/src/lsp/clients/index.ts +50 -0
  498. package/src/lsp/clients/lsp-linter-client.ts +85 -0
  499. package/src/lsp/clients/swiftlint-client.ts +120 -0
  500. package/src/lsp/config.ts +502 -0
  501. package/src/lsp/defaults.json +499 -0
  502. package/src/lsp/diagnostics-ledger.ts +51 -0
  503. package/src/lsp/edits.ts +267 -0
  504. package/src/lsp/format-options.ts +119 -0
  505. package/src/lsp/index.ts +2480 -0
  506. package/src/lsp/lspmux.ts +233 -0
  507. package/src/lsp/render.ts +668 -0
  508. package/src/lsp/startup-events.ts +13 -0
  509. package/src/lsp/types.ts +444 -0
  510. package/src/lsp/utils.ts +718 -0
  511. package/src/main.ts +1429 -0
  512. package/src/markit/NOTICE +32 -0
  513. package/src/markit/converters/docx.ts +56 -0
  514. package/src/markit/converters/epub.ts +136 -0
  515. package/src/markit/converters/mammoth.d.ts +24 -0
  516. package/src/markit/converters/pdf/columns.ts +103 -0
  517. package/src/markit/converters/pdf/extract.ts +574 -0
  518. package/src/markit/converters/pdf/grid.ts +780 -0
  519. package/src/markit/converters/pdf/headers.ts +106 -0
  520. package/src/markit/converters/pdf/index.ts +146 -0
  521. package/src/markit/converters/pdf/render.ts +501 -0
  522. package/src/markit/converters/pdf/types.ts +84 -0
  523. package/src/markit/converters/pptx.ts +325 -0
  524. package/src/markit/converters/xlsx.ts +173 -0
  525. package/src/markit/index.ts +2 -0
  526. package/src/markit/registry.ts +59 -0
  527. package/src/markit/types.ts +35 -0
  528. package/src/mcp/client.ts +509 -0
  529. package/src/mcp/config-writer.ts +229 -0
  530. package/src/mcp/config.ts +365 -0
  531. package/src/mcp/index.ts +29 -0
  532. package/src/mcp/json-rpc.ts +122 -0
  533. package/src/mcp/loader.ts +125 -0
  534. package/src/mcp/manager.ts +1346 -0
  535. package/src/mcp/oauth-credentials.ts +104 -0
  536. package/src/mcp/oauth-discovery.ts +467 -0
  537. package/src/mcp/oauth-flow.ts +555 -0
  538. package/src/mcp/render.ts +155 -0
  539. package/src/mcp/smithery-auth.ts +104 -0
  540. package/src/mcp/smithery-connect.ts +145 -0
  541. package/src/mcp/smithery-registry.ts +477 -0
  542. package/src/mcp/startup-events.ts +116 -0
  543. package/src/mcp/timeout.ts +59 -0
  544. package/src/mcp/tool-bridge.ts +429 -0
  545. package/src/mcp/tool-cache.ts +117 -0
  546. package/src/mcp/transports/http.ts +519 -0
  547. package/src/mcp/transports/index.ts +6 -0
  548. package/src/mcp/transports/stdio.ts +622 -0
  549. package/src/mcp/types.ts +427 -0
  550. package/src/memories/index.ts +1281 -0
  551. package/src/memories/storage.ts +578 -0
  552. package/src/memory-backend/index.ts +18 -0
  553. package/src/memory-backend/lcm-backend.ts +385 -0
  554. package/src/memory-backend/local-backend.ts +45 -0
  555. package/src/memory-backend/mem0-backend.ts +326 -0
  556. package/src/memory-backend/mnemosyne-backend.ts +462 -0
  557. package/src/memory-backend/off-backend.ts +25 -0
  558. package/src/memory-backend/resolve.ts +28 -0
  559. package/src/memory-backend/runtime.ts +66 -0
  560. package/src/memory-backend/types.ts +166 -0
  561. package/src/mnemopi/backend.ts +612 -0
  562. package/src/mnemopi/config.ts +267 -0
  563. package/src/mnemopi/embed-client.ts +246 -0
  564. package/src/mnemopi/embed-protocol.ts +35 -0
  565. package/src/mnemopi/embed-worker.ts +113 -0
  566. package/src/mnemopi/index.ts +3 -0
  567. package/src/mnemopi/state.ts +659 -0
  568. package/src/modes/acp/acp-agent.ts +2362 -0
  569. package/src/modes/acp/acp-client-bridge.ts +154 -0
  570. package/src/modes/acp/acp-event-mapper.ts +933 -0
  571. package/src/modes/acp/acp-mode.ts +23 -0
  572. package/src/modes/acp/index.ts +2 -0
  573. package/src/modes/acp/terminal-auth.ts +37 -0
  574. package/src/modes/components/__tests__/skill-message.test.ts +92 -0
  575. package/src/modes/components/advisor-message.ts +99 -0
  576. package/src/modes/components/agent-dashboard.ts +1183 -0
  577. package/src/modes/components/agent-hub.ts +570 -0
  578. package/src/modes/components/agent-transcript-viewer.ts +463 -0
  579. package/src/modes/components/assistant-message.ts +811 -0
  580. package/src/modes/components/background-tan-message.ts +36 -0
  581. package/src/modes/components/bash-execution.ts +220 -0
  582. package/src/modes/components/bordered-loader.ts +41 -0
  583. package/src/modes/components/btw-panel.ts +124 -0
  584. package/src/modes/components/cache-invalidation-marker.ts +110 -0
  585. package/src/modes/components/chat-block.ts +111 -0
  586. package/src/modes/components/chat-transcript-builder.ts +398 -0
  587. package/src/modes/components/collab-prompt-message.ts +32 -0
  588. package/src/modes/components/compaction-summary-message.ts +215 -0
  589. package/src/modes/components/copy-selector.ts +206 -0
  590. package/src/modes/components/countdown-timer.ts +75 -0
  591. package/src/modes/components/custom-editor.test.ts +164 -0
  592. package/src/modes/components/custom-editor.ts +648 -0
  593. package/src/modes/components/custom-message.ts +67 -0
  594. package/src/modes/components/diff.ts +254 -0
  595. package/src/modes/components/dynamic-border.ts +34 -0
  596. package/src/modes/components/error-banner.ts +33 -0
  597. package/src/modes/components/eval-execution.ts +158 -0
  598. package/src/modes/components/execution-shared.ts +101 -0
  599. package/src/modes/components/extensions/extension-dashboard.ts +390 -0
  600. package/src/modes/components/extensions/extension-list.ts +474 -0
  601. package/src/modes/components/extensions/index.ts +9 -0
  602. package/src/modes/components/extensions/inspector-panel.ts +321 -0
  603. package/src/modes/components/extensions/state-manager.ts +627 -0
  604. package/src/modes/components/extensions/types.ts +186 -0
  605. package/src/modes/components/footer.ts +276 -0
  606. package/src/modes/components/history-search.ts +268 -0
  607. package/src/modes/components/hook-editor.ts +170 -0
  608. package/src/modes/components/hook-input.ts +87 -0
  609. package/src/modes/components/hook-message.ts +67 -0
  610. package/src/modes/components/hook-selector.ts +659 -0
  611. package/src/modes/components/index.ts +38 -0
  612. package/src/modes/components/keybinding-hints.ts +65 -0
  613. package/src/modes/components/late-diagnostics-message.ts +60 -0
  614. package/src/modes/components/login-dialog.ts +164 -0
  615. package/src/modes/components/logout-account-selector.ts +130 -0
  616. package/src/modes/components/mcp-add-wizard.ts +1360 -0
  617. package/src/modes/components/message-frame.ts +92 -0
  618. package/src/modes/components/model-selector.ts +1378 -0
  619. package/src/modes/components/oauth-selector.ts +457 -0
  620. package/src/modes/components/omfg-panel.ts +141 -0
  621. package/src/modes/components/overlay-box.ts +109 -0
  622. package/src/modes/components/plan-review-overlay.ts +847 -0
  623. package/src/modes/components/plan-toc.ts +138 -0
  624. package/src/modes/components/plugin-selector.ts +95 -0
  625. package/src/modes/components/plugin-settings.ts +739 -0
  626. package/src/modes/components/queue-mode-selector.ts +56 -0
  627. package/src/modes/components/read-tool-group.ts +676 -0
  628. package/src/modes/components/reset-usage-selector.ts +161 -0
  629. package/src/modes/components/segment-track.ts +89 -0
  630. package/src/modes/components/selector-helpers.ts +129 -0
  631. package/src/modes/components/session-selector.ts +629 -0
  632. package/src/modes/components/settings-defs.ts +225 -0
  633. package/src/modes/components/settings-selector.ts +1097 -0
  634. package/src/modes/components/show-images-selector.ts +45 -0
  635. package/src/modes/components/skill-message.ts +110 -0
  636. package/src/modes/components/snapcompact-shape-preview-doc.md +18 -0
  637. package/src/modes/components/snapcompact-shape-preview.ts +192 -0
  638. package/src/modes/components/status-line/component.ts +1005 -0
  639. package/src/modes/components/status-line/context-thresholds.ts +86 -0
  640. package/src/modes/components/status-line/git-utils.ts +42 -0
  641. package/src/modes/components/status-line/index.ts +5 -0
  642. package/src/modes/components/status-line/presets.ts +106 -0
  643. package/src/modes/components/status-line/segments.ts +616 -0
  644. package/src/modes/components/status-line/separators.ts +55 -0
  645. package/src/modes/components/status-line/token-rate.ts +66 -0
  646. package/src/modes/components/status-line/types.ts +125 -0
  647. package/src/modes/components/theme-selector.ts +63 -0
  648. package/src/modes/components/thinking-selector.ts +52 -0
  649. package/src/modes/components/tiny-title-download-progress.ts +90 -0
  650. package/src/modes/components/tips.txt +24 -0
  651. package/src/modes/components/todo-reminder.ts +39 -0
  652. package/src/modes/components/tool-execution.ts +1173 -0
  653. package/src/modes/components/transcript-container.ts +806 -0
  654. package/src/modes/components/tree-selector.ts +989 -0
  655. package/src/modes/components/ttsr-notification.ts +123 -0
  656. package/src/modes/components/usage-row.ts +18 -0
  657. package/src/modes/components/user-message-selector.ts +227 -0
  658. package/src/modes/components/user-message.ts +68 -0
  659. package/src/modes/components/visual-truncate.ts +63 -0
  660. package/src/modes/components/welcome.ts +581 -0
  661. package/src/modes/controllers/btw-controller.ts +198 -0
  662. package/src/modes/controllers/command-controller-shared.ts +109 -0
  663. package/src/modes/controllers/command-controller.ts +1669 -0
  664. package/src/modes/controllers/event-controller.ts +1191 -0
  665. package/src/modes/controllers/extension-ui-controller.ts +897 -0
  666. package/src/modes/controllers/input-controller.ts +1627 -0
  667. package/src/modes/controllers/mcp-command-controller.ts +2190 -0
  668. package/src/modes/controllers/omfg-controller.ts +283 -0
  669. package/src/modes/controllers/omfg-rule.ts +647 -0
  670. package/src/modes/controllers/selector-controller.ts +1293 -0
  671. package/src/modes/controllers/session-focus-controller.ts +112 -0
  672. package/src/modes/controllers/ssh-command-controller.ts +384 -0
  673. package/src/modes/controllers/streaming-reveal.ts +353 -0
  674. package/src/modes/controllers/tan-command-controller.ts +190 -0
  675. package/src/modes/controllers/todo-command-controller.ts +484 -0
  676. package/src/modes/controllers/tool-args-reveal.ts +174 -0
  677. package/src/modes/data/emojis.json +1 -0
  678. package/src/modes/emoji-autocomplete.ts +285 -0
  679. package/src/modes/gradient-highlight.ts +99 -0
  680. package/src/modes/image-references.ts +137 -0
  681. package/src/modes/index.ts +17 -0
  682. package/src/modes/interactive-mode.ts +4053 -0
  683. package/src/modes/internal-url-autocomplete.ts +143 -0
  684. package/src/modes/loop-limit.ts +192 -0
  685. package/src/modes/magic-keywords.ts +42 -0
  686. package/src/modes/markdown-prose.ts +247 -0
  687. package/src/modes/oauth-manual-input.ts +69 -0
  688. package/src/modes/orchestrate.ts +42 -0
  689. package/src/modes/print-mode.ts +130 -0
  690. package/src/modes/prompt-action-autocomplete.ts +260 -0
  691. package/src/modes/rpc/host-tools.ts +186 -0
  692. package/src/modes/rpc/host-uris.ts +235 -0
  693. package/src/modes/rpc/rpc-client.ts +995 -0
  694. package/src/modes/rpc/rpc-mode.ts +1156 -0
  695. package/src/modes/rpc/rpc-subagents.ts +265 -0
  696. package/src/modes/rpc/rpc-types.ts +487 -0
  697. package/src/modes/runtime-init.ts +142 -0
  698. package/src/modes/session-observer-registry.ts +215 -0
  699. package/src/modes/setup-version.ts +11 -0
  700. package/src/modes/setup-wizard/index.ts +101 -0
  701. package/src/modes/setup-wizard/lazy.ts +16 -0
  702. package/src/modes/setup-wizard/scenes/glyph.ts +114 -0
  703. package/src/modes/setup-wizard/scenes/outro.ts +35 -0
  704. package/src/modes/setup-wizard/scenes/providers.ts +103 -0
  705. package/src/modes/setup-wizard/scenes/sign-in.ts +286 -0
  706. package/src/modes/setup-wizard/scenes/splash.ts +201 -0
  707. package/src/modes/setup-wizard/scenes/theme.ts +326 -0
  708. package/src/modes/setup-wizard/scenes/types.ts +57 -0
  709. package/src/modes/setup-wizard/scenes/web-search.ts +145 -0
  710. package/src/modes/setup-wizard/startup-splash.ts +107 -0
  711. package/src/modes/setup-wizard/wizard-overlay.ts +334 -0
  712. package/src/modes/shared.ts +49 -0
  713. package/src/modes/theme/dark.json +95 -0
  714. package/src/modes/theme/defaults/alabaster.json +93 -0
  715. package/src/modes/theme/defaults/amethyst.json +96 -0
  716. package/src/modes/theme/defaults/anthracite.json +93 -0
  717. package/src/modes/theme/defaults/basalt.json +91 -0
  718. package/src/modes/theme/defaults/birch.json +95 -0
  719. package/src/modes/theme/defaults/dark-abyss.json +91 -0
  720. package/src/modes/theme/defaults/dark-arctic.json +104 -0
  721. package/src/modes/theme/defaults/dark-aurora.json +95 -0
  722. package/src/modes/theme/defaults/dark-catppuccin.json +107 -0
  723. package/src/modes/theme/defaults/dark-cavern.json +91 -0
  724. package/src/modes/theme/defaults/dark-copper.json +95 -0
  725. package/src/modes/theme/defaults/dark-cosmos.json +90 -0
  726. package/src/modes/theme/defaults/dark-cyberpunk.json +102 -0
  727. package/src/modes/theme/defaults/dark-dracula.json +98 -0
  728. package/src/modes/theme/defaults/dark-eclipse.json +91 -0
  729. package/src/modes/theme/defaults/dark-ember.json +95 -0
  730. package/src/modes/theme/defaults/dark-equinox.json +90 -0
  731. package/src/modes/theme/defaults/dark-forest.json +96 -0
  732. package/src/modes/theme/defaults/dark-github.json +105 -0
  733. package/src/modes/theme/defaults/dark-gruvbox.json +112 -0
  734. package/src/modes/theme/defaults/dark-lavender.json +95 -0
  735. package/src/modes/theme/defaults/dark-lunar.json +89 -0
  736. package/src/modes/theme/defaults/dark-midnight.json +95 -0
  737. package/src/modes/theme/defaults/dark-monochrome.json +94 -0
  738. package/src/modes/theme/defaults/dark-monokai.json +98 -0
  739. package/src/modes/theme/defaults/dark-nebula.json +90 -0
  740. package/src/modes/theme/defaults/dark-nord.json +97 -0
  741. package/src/modes/theme/defaults/dark-ocean.json +101 -0
  742. package/src/modes/theme/defaults/dark-one.json +100 -0
  743. package/src/modes/theme/defaults/dark-poimandres.json +142 -0
  744. package/src/modes/theme/defaults/dark-rainforest.json +91 -0
  745. package/src/modes/theme/defaults/dark-reef.json +91 -0
  746. package/src/modes/theme/defaults/dark-retro.json +92 -0
  747. package/src/modes/theme/defaults/dark-rose-pine.json +96 -0
  748. package/src/modes/theme/defaults/dark-sakura.json +95 -0
  749. package/src/modes/theme/defaults/dark-slate.json +95 -0
  750. package/src/modes/theme/defaults/dark-solarized.json +97 -0
  751. package/src/modes/theme/defaults/dark-solstice.json +90 -0
  752. package/src/modes/theme/defaults/dark-starfall.json +91 -0
  753. package/src/modes/theme/defaults/dark-sunset.json +99 -0
  754. package/src/modes/theme/defaults/dark-swamp.json +90 -0
  755. package/src/modes/theme/defaults/dark-synthwave.json +103 -0
  756. package/src/modes/theme/defaults/dark-taiga.json +91 -0
  757. package/src/modes/theme/defaults/dark-terminal.json +95 -0
  758. package/src/modes/theme/defaults/dark-tokyo-night.json +101 -0
  759. package/src/modes/theme/defaults/dark-tundra.json +91 -0
  760. package/src/modes/theme/defaults/dark-twilight.json +91 -0
  761. package/src/modes/theme/defaults/dark-volcanic.json +91 -0
  762. package/src/modes/theme/defaults/graphite.json +92 -0
  763. package/src/modes/theme/defaults/index.ts +199 -0
  764. package/src/modes/theme/defaults/light-arctic.json +107 -0
  765. package/src/modes/theme/defaults/light-aurora-day.json +91 -0
  766. package/src/modes/theme/defaults/light-canyon.json +91 -0
  767. package/src/modes/theme/defaults/light-catppuccin.json +106 -0
  768. package/src/modes/theme/defaults/light-cirrus.json +90 -0
  769. package/src/modes/theme/defaults/light-coral.json +95 -0
  770. package/src/modes/theme/defaults/light-cyberpunk.json +96 -0
  771. package/src/modes/theme/defaults/light-dawn.json +90 -0
  772. package/src/modes/theme/defaults/light-dunes.json +91 -0
  773. package/src/modes/theme/defaults/light-eucalyptus.json +95 -0
  774. package/src/modes/theme/defaults/light-forest.json +100 -0
  775. package/src/modes/theme/defaults/light-frost.json +95 -0
  776. package/src/modes/theme/defaults/light-github.json +115 -0
  777. package/src/modes/theme/defaults/light-glacier.json +91 -0
  778. package/src/modes/theme/defaults/light-gruvbox.json +108 -0
  779. package/src/modes/theme/defaults/light-haze.json +90 -0
  780. package/src/modes/theme/defaults/light-honeycomb.json +95 -0
  781. package/src/modes/theme/defaults/light-lagoon.json +91 -0
  782. package/src/modes/theme/defaults/light-lavender.json +95 -0
  783. package/src/modes/theme/defaults/light-meadow.json +91 -0
  784. package/src/modes/theme/defaults/light-mint.json +95 -0
  785. package/src/modes/theme/defaults/light-monochrome.json +101 -0
  786. package/src/modes/theme/defaults/light-ocean.json +99 -0
  787. package/src/modes/theme/defaults/light-one.json +99 -0
  788. package/src/modes/theme/defaults/light-opal.json +91 -0
  789. package/src/modes/theme/defaults/light-orchard.json +91 -0
  790. package/src/modes/theme/defaults/light-paper.json +95 -0
  791. package/src/modes/theme/defaults/light-poimandres.json +142 -0
  792. package/src/modes/theme/defaults/light-prism.json +90 -0
  793. package/src/modes/theme/defaults/light-retro.json +98 -0
  794. package/src/modes/theme/defaults/light-sand.json +95 -0
  795. package/src/modes/theme/defaults/light-savanna.json +91 -0
  796. package/src/modes/theme/defaults/light-solarized.json +102 -0
  797. package/src/modes/theme/defaults/light-soleil.json +90 -0
  798. package/src/modes/theme/defaults/light-sunset.json +99 -0
  799. package/src/modes/theme/defaults/light-synthwave.json +98 -0
  800. package/src/modes/theme/defaults/light-tokyo-night.json +111 -0
  801. package/src/modes/theme/defaults/light-wetland.json +91 -0
  802. package/src/modes/theme/defaults/light-zenith.json +89 -0
  803. package/src/modes/theme/defaults/limestone.json +94 -0
  804. package/src/modes/theme/defaults/mahogany.json +97 -0
  805. package/src/modes/theme/defaults/marble.json +93 -0
  806. package/src/modes/theme/defaults/obsidian.json +91 -0
  807. package/src/modes/theme/defaults/onyx.json +91 -0
  808. package/src/modes/theme/defaults/pearl.json +93 -0
  809. package/src/modes/theme/defaults/porcelain.json +91 -0
  810. package/src/modes/theme/defaults/quartz.json +96 -0
  811. package/src/modes/theme/defaults/sandstone.json +95 -0
  812. package/src/modes/theme/defaults/titanium.json +90 -0
  813. package/src/modes/theme/light.json +93 -0
  814. package/src/modes/theme/mermaid-cache.ts +92 -0
  815. package/src/modes/theme/shimmer.ts +235 -0
  816. package/src/modes/theme/theme-schema.json +459 -0
  817. package/src/modes/theme/theme.ts +2950 -0
  818. package/src/modes/turn-budget.ts +31 -0
  819. package/src/modes/types.ts +425 -0
  820. package/src/modes/ultrathink.ts +41 -0
  821. package/src/modes/utils/context-usage.ts +432 -0
  822. package/src/modes/utils/copy-targets.ts +361 -0
  823. package/src/modes/utils/hotkeys-markdown.ts +62 -0
  824. package/src/modes/utils/interactive-context-helpers.ts +27 -0
  825. package/src/modes/utils/keybinding-matchers.ts +86 -0
  826. package/src/modes/utils/tools-markdown.ts +27 -0
  827. package/src/modes/utils/transcript-render-helpers.ts +157 -0
  828. package/src/modes/utils/ui-helpers.ts +783 -0
  829. package/src/modes/workflow.ts +42 -0
  830. package/src/plan-mode/approved-plan.ts +186 -0
  831. package/src/plan-mode/plan-handoff.ts +37 -0
  832. package/src/plan-mode/plan-protection.ts +31 -0
  833. package/src/plan-mode/state.ts +6 -0
  834. package/src/priority.json +45 -0
  835. package/src/prompts/advisor/advise-tool.md +3 -0
  836. package/src/prompts/advisor/system.md +75 -0
  837. package/src/prompts/agents/designer.md +74 -0
  838. package/src/prompts/agents/explore.md +58 -0
  839. package/src/prompts/agents/frontmatter.md +11 -0
  840. package/src/prompts/agents/init.md +33 -0
  841. package/src/prompts/agents/librarian.md +119 -0
  842. package/src/prompts/agents/oracle.md +54 -0
  843. package/src/prompts/agents/plan.md +48 -0
  844. package/src/prompts/agents/reviewer.md +139 -0
  845. package/src/prompts/agents/task.md +17 -0
  846. package/src/prompts/bench.md +12 -0
  847. package/src/prompts/ci-green-request.md +36 -0
  848. package/src/prompts/dry-balance-bench.md +8 -0
  849. package/src/prompts/goals/goal-budget-limit.md +16 -0
  850. package/src/prompts/goals/goal-continuation.md +28 -0
  851. package/src/prompts/goals/goal-mode-active.md +23 -0
  852. package/src/prompts/goals/guided-goal-interview.md +8 -0
  853. package/src/prompts/goals/guided-goal-system.md +12 -0
  854. package/src/prompts/memories/consolidation.md +30 -0
  855. package/src/prompts/memories/consolidation_system.md +4 -0
  856. package/src/prompts/memories/read-path.md +17 -0
  857. package/src/prompts/memories/stage_one_input.md +6 -0
  858. package/src/prompts/memories/stage_one_system.md +21 -0
  859. package/src/prompts/review-custom-request.md +22 -0
  860. package/src/prompts/review-headless-request.md +16 -0
  861. package/src/prompts/review-request.md +69 -0
  862. package/src/prompts/steering/user-interjection.md +9 -0
  863. package/src/prompts/system/agent-creation-architect.md +50 -0
  864. package/src/prompts/system/agent-creation-user.md +6 -0
  865. package/src/prompts/system/auto-continue.md +1 -0
  866. package/src/prompts/system/auto-thinking-difficulty-local.md +14 -0
  867. package/src/prompts/system/auto-thinking-difficulty.md +12 -0
  868. package/src/prompts/system/autolearn-guidance-learn.md +1 -0
  869. package/src/prompts/system/autolearn-guidance.md +7 -0
  870. package/src/prompts/system/autolearn-nudge.md +3 -0
  871. package/src/prompts/system/background-tan-dispatch.md +8 -0
  872. package/src/prompts/system/btw-user.md +8 -0
  873. package/src/prompts/system/commit-message-system.md +14 -0
  874. package/src/prompts/system/custom-system-prompt.md +64 -0
  875. package/src/prompts/system/eager-task.md +7 -0
  876. package/src/prompts/system/eager-todo.md +18 -0
  877. package/src/prompts/system/empty-stop-retry.md +4 -0
  878. package/src/prompts/system/irc-autoreply.md +6 -0
  879. package/src/prompts/system/irc-incoming.md +7 -0
  880. package/src/prompts/system/manual-continue.md +7 -0
  881. package/src/prompts/system/memory-consolidation-system.md +8 -0
  882. package/src/prompts/system/memory-extraction-system.md +26 -0
  883. package/src/prompts/system/omfg-user.md +50 -0
  884. package/src/prompts/system/orchestrate-notice.md +40 -0
  885. package/src/prompts/system/personalities/default.md +18 -0
  886. package/src/prompts/system/personalities/friendly.md +17 -0
  887. package/src/prompts/system/personalities/pragmatic.md +15 -0
  888. package/src/prompts/system/plan-mode-active.md +109 -0
  889. package/src/prompts/system/plan-mode-approved.md +25 -0
  890. package/src/prompts/system/plan-mode-compact-instructions.md +16 -0
  891. package/src/prompts/system/plan-mode-reference.md +11 -0
  892. package/src/prompts/system/plan-mode-subagent.md +33 -0
  893. package/src/prompts/system/plan-mode-tool-decision-reminder.md +9 -0
  894. package/src/prompts/system/project-prompt.md +54 -0
  895. package/src/prompts/system/side-channel-no-tools.md +3 -0
  896. package/src/prompts/system/snapcompact-context-frames-note.md +1 -0
  897. package/src/prompts/system/snapcompact-context-stub.md +1 -0
  898. package/src/prompts/system/snapcompact-system-frames-note.md +1 -0
  899. package/src/prompts/system/snapcompact-system-stub.md +1 -0
  900. package/src/prompts/system/snapcompact-toolresult-note.md +1 -0
  901. package/src/prompts/system/subagent-system-prompt.md +71 -0
  902. package/src/prompts/system/subagent-user-prompt.md +3 -0
  903. package/src/prompts/system/subagent-yield-reminder.md +12 -0
  904. package/src/prompts/system/system-prompt.md +250 -0
  905. package/src/prompts/system/tiny-title-system.md +8 -0
  906. package/src/prompts/system/title-marker-instruction.md +1 -0
  907. package/src/prompts/system/title-system-marker.md +16 -0
  908. package/src/prompts/system/title-system.md +16 -0
  909. package/src/prompts/system/ttsr-interrupt.md +7 -0
  910. package/src/prompts/system/ttsr-tool-reminder.md +5 -0
  911. package/src/prompts/system/ultrathink-notice.md +3 -0
  912. package/src/prompts/system/unexpected-stop-classifier.md +17 -0
  913. package/src/prompts/system/unexpected-stop-retry.md +4 -0
  914. package/src/prompts/system/web-search.md +25 -0
  915. package/src/prompts/system/workflow-notice.md +70 -0
  916. package/src/prompts/tools/apply-patch.md +65 -0
  917. package/src/prompts/tools/ask.md +22 -0
  918. package/src/prompts/tools/ast-edit.md +22 -0
  919. package/src/prompts/tools/ast-grep.md +25 -0
  920. package/src/prompts/tools/async-result.md +8 -0
  921. package/src/prompts/tools/bash.md +44 -0
  922. package/src/prompts/tools/browser.md +45 -0
  923. package/src/prompts/tools/checkpoint.md +15 -0
  924. package/src/prompts/tools/debug.md +17 -0
  925. package/src/prompts/tools/eval.md +72 -0
  926. package/src/prompts/tools/find.md +15 -0
  927. package/src/prompts/tools/github.md +17 -0
  928. package/src/prompts/tools/goal.md +11 -0
  929. package/src/prompts/tools/image-attachment-describe-system.md +8 -0
  930. package/src/prompts/tools/image-attachment-describe.md +10 -0
  931. package/src/prompts/tools/image-gen.md +7 -0
  932. package/src/prompts/tools/inspect-image-system.md +20 -0
  933. package/src/prompts/tools/inspect-image.md +22 -0
  934. package/src/prompts/tools/irc.md +33 -0
  935. package/src/prompts/tools/job.md +17 -0
  936. package/src/prompts/tools/learn.md +7 -0
  937. package/src/prompts/tools/lsp-late-diagnostic.md +8 -0
  938. package/src/prompts/tools/lsp.md +39 -0
  939. package/src/prompts/tools/manage-skill.md +9 -0
  940. package/src/prompts/tools/memory-edit.md +8 -0
  941. package/src/prompts/tools/patch.md +57 -0
  942. package/src/prompts/tools/read.md +75 -0
  943. package/src/prompts/tools/recall.md +5 -0
  944. package/src/prompts/tools/reflect.md +5 -0
  945. package/src/prompts/tools/replace.md +29 -0
  946. package/src/prompts/tools/resolve.md +4 -0
  947. package/src/prompts/tools/retain.md +6 -0
  948. package/src/prompts/tools/rewind.md +13 -0
  949. package/src/prompts/tools/search-tool-bm25.md +32 -0
  950. package/src/prompts/tools/search.md +22 -0
  951. package/src/prompts/tools/ssh.md +22 -0
  952. package/src/prompts/tools/task-summary.md +17 -0
  953. package/src/prompts/tools/task.md +91 -0
  954. package/src/prompts/tools/todo.md +39 -0
  955. package/src/prompts/tools/web-search.md +6 -0
  956. package/src/prompts/tools/write.md +14 -0
  957. package/src/registry/agent-lifecycle.ts +270 -0
  958. package/src/registry/agent-registry.ts +190 -0
  959. package/src/sdk.ts +2948 -0
  960. package/src/secrets/index.ts +123 -0
  961. package/src/secrets/obfuscator.ts +441 -0
  962. package/src/secrets/regex.ts +21 -0
  963. package/src/session/agent-session.ts +12886 -0
  964. package/src/session/agent-storage.ts +478 -0
  965. package/src/session/artifacts.ts +153 -0
  966. package/src/session/auth-broker-config.ts +92 -0
  967. package/src/session/auth-storage.ts +24 -0
  968. package/src/session/blob-store.ts +255 -0
  969. package/src/session/client-bridge.ts +85 -0
  970. package/src/session/codex-auto-reset.ts +202 -0
  971. package/src/session/compact-modes.ts +105 -0
  972. package/src/session/history-storage.ts +360 -0
  973. package/src/session/indexed-session-storage.ts +427 -0
  974. package/src/session/messages.ts +546 -0
  975. package/src/session/redis-session-storage.ts +170 -0
  976. package/src/session/session-context.ts +404 -0
  977. package/src/session/session-dump-format.ts +216 -0
  978. package/src/session/session-entries.ts +204 -0
  979. package/src/session/session-history-format.ts +348 -0
  980. package/src/session/session-listing.ts +588 -0
  981. package/src/session/session-loader.ts +93 -0
  982. package/src/session/session-manager.ts +1750 -0
  983. package/src/session/session-migrations.ts +78 -0
  984. package/src/session/session-paths.ts +193 -0
  985. package/src/session/session-persistence.ts +147 -0
  986. package/src/session/session-storage.ts +590 -0
  987. package/src/session/shake-types.ts +43 -0
  988. package/src/session/snapcompact-inline.ts +545 -0
  989. package/src/session/snapcompact-savings-journal.ts +113 -0
  990. package/src/session/sql-session-storage.ts +314 -0
  991. package/src/session/streaming-output.ts +1330 -0
  992. package/src/session/tool-choice-queue.ts +290 -0
  993. package/src/session/unexpected-stop-classifier.ts +129 -0
  994. package/src/session/yield-queue.ts +183 -0
  995. package/src/slash-commands/acp-builtins.ts +70 -0
  996. package/src/slash-commands/available-commands.ts +105 -0
  997. package/src/slash-commands/builtin-registry.ts +2433 -0
  998. package/src/slash-commands/helpers/active-oauth-account.ts +44 -0
  999. package/src/slash-commands/helpers/collab-qrcode.ts +28 -0
  1000. package/src/slash-commands/helpers/context-report.ts +66 -0
  1001. package/src/slash-commands/helpers/cron.ts +331 -0
  1002. package/src/slash-commands/helpers/format.ts +46 -0
  1003. package/src/slash-commands/helpers/logout.ts +88 -0
  1004. package/src/slash-commands/helpers/marketplace-manager.ts +25 -0
  1005. package/src/slash-commands/helpers/mcp.ts +532 -0
  1006. package/src/slash-commands/helpers/parse.ts +85 -0
  1007. package/src/slash-commands/helpers/reset-usage.ts +66 -0
  1008. package/src/slash-commands/helpers/ssh.ts +195 -0
  1009. package/src/slash-commands/helpers/stats-dashboard.ts +85 -0
  1010. package/src/slash-commands/helpers/todo.ts +285 -0
  1011. package/src/slash-commands/helpers/usage-report.ts +128 -0
  1012. package/src/slash-commands/marketplace-install-parser.ts +99 -0
  1013. package/src/slash-commands/types.ts +137 -0
  1014. package/src/ssh/config-writer.ts +183 -0
  1015. package/src/ssh/connection-manager.ts +510 -0
  1016. package/src/ssh/ssh-executor.ts +189 -0
  1017. package/src/ssh/sshfs-mount.ts +140 -0
  1018. package/src/ssh/utils.ts +8 -0
  1019. package/src/startup-splash.ts +19 -0
  1020. package/src/stt/asr-client.ts +341 -0
  1021. package/src/stt/asr-protocol.ts +65 -0
  1022. package/src/stt/asr-worker.ts +638 -0
  1023. package/src/stt/downloader.ts +138 -0
  1024. package/src/stt/endpointer.ts +259 -0
  1025. package/src/stt/index.ts +7 -0
  1026. package/src/stt/models.ts +150 -0
  1027. package/src/stt/recorder.ts +538 -0
  1028. package/src/stt/stt-controller.ts +380 -0
  1029. package/src/stt/transcriber.ts +60 -0
  1030. package/src/stt/wav.ts +173 -0
  1031. package/src/subprocess/worker-client.ts +297 -0
  1032. package/src/subprocess/worker-runtime.ts +277 -0
  1033. package/src/system-prompt.ts +698 -0
  1034. package/src/task/agents.ts +166 -0
  1035. package/src/task/commands.ts +132 -0
  1036. package/src/task/discovery.ts +122 -0
  1037. package/src/task/executor.ts +2356 -0
  1038. package/src/task/index.ts +1580 -0
  1039. package/src/task/name-generator.ts +1577 -0
  1040. package/src/task/omp-command.ts +26 -0
  1041. package/src/task/output-manager.ts +93 -0
  1042. package/src/task/parallel.ts +116 -0
  1043. package/src/task/persisted-revive.ts +128 -0
  1044. package/src/task/render.ts +1558 -0
  1045. package/src/task/repair-args.ts +129 -0
  1046. package/src/task/subprocess-tool-registry.ts +88 -0
  1047. package/src/task/types.ts +401 -0
  1048. package/src/task/worktree.ts +522 -0
  1049. package/src/telemetry-export.ts +144 -0
  1050. package/src/thinking.ts +187 -0
  1051. package/src/tiny/device.ts +111 -0
  1052. package/src/tiny/dtype.ts +101 -0
  1053. package/src/tiny/models.ts +256 -0
  1054. package/src/tiny/text.ts +169 -0
  1055. package/src/tiny/title-client.ts +378 -0
  1056. package/src/tiny/title-protocol.ts +56 -0
  1057. package/src/tiny/worker.ts +341 -0
  1058. package/src/tool-discovery/mode.ts +24 -0
  1059. package/src/tool-discovery/tool-index.ts +271 -0
  1060. package/src/tools/__tests__/json-tree.test.ts +35 -0
  1061. package/src/tools/acp-bridge.ts +66 -0
  1062. package/src/tools/approval.ts +189 -0
  1063. package/src/tools/ask.ts +977 -0
  1064. package/src/tools/ast-edit.ts +700 -0
  1065. package/src/tools/ast-grep.ts +483 -0
  1066. package/src/tools/auto-generated-guard.ts +322 -0
  1067. package/src/tools/bash-command-fixup.ts +37 -0
  1068. package/src/tools/bash-interactive.ts +408 -0
  1069. package/src/tools/bash-interceptor.ts +67 -0
  1070. package/src/tools/bash-pty-selection.ts +14 -0
  1071. package/src/tools/bash-skill-urls.ts +248 -0
  1072. package/src/tools/bash.ts +1405 -0
  1073. package/src/tools/browser/aria/aria-snapshot.bundle.txt +7 -0
  1074. package/src/tools/browser/aria/aria-snapshot.ts +103 -0
  1075. package/src/tools/browser/attach.ts +194 -0
  1076. package/src/tools/browser/cmux/cmux-tab.ts +1336 -0
  1077. package/src/tools/browser/cmux/rpc.ts +156 -0
  1078. package/src/tools/browser/cmux/socket-client.ts +309 -0
  1079. package/src/tools/browser/launch.ts +749 -0
  1080. package/src/tools/browser/readable.ts +112 -0
  1081. package/src/tools/browser/registry.ts +241 -0
  1082. package/src/tools/browser/render.ts +221 -0
  1083. package/src/tools/browser/tab-protocol.ts +107 -0
  1084. package/src/tools/browser/tab-supervisor.ts +799 -0
  1085. package/src/tools/browser/tab-worker-entry.ts +29 -0
  1086. package/src/tools/browser/tab-worker.ts +1421 -0
  1087. package/src/tools/browser.ts +408 -0
  1088. package/src/tools/builtin-names.ts +34 -0
  1089. package/src/tools/checkpoint.ts +136 -0
  1090. package/src/tools/conflict-detect.ts +718 -0
  1091. package/src/tools/context.ts +39 -0
  1092. package/src/tools/debug.ts +1087 -0
  1093. package/src/tools/eval-backends.ts +34 -0
  1094. package/src/tools/eval-render.ts +771 -0
  1095. package/src/tools/eval.ts +765 -0
  1096. package/src/tools/fetch.ts +1902 -0
  1097. package/src/tools/file-recorder.ts +35 -0
  1098. package/src/tools/find.ts +628 -0
  1099. package/src/tools/fs-cache-invalidation.ts +28 -0
  1100. package/src/tools/gh-cache-invalidation.ts +255 -0
  1101. package/src/tools/gh-format.ts +12 -0
  1102. package/src/tools/gh-renderer.ts +481 -0
  1103. package/src/tools/gh.ts +3752 -0
  1104. package/src/tools/github-cache.ts +663 -0
  1105. package/src/tools/grouped-file-output.ts +210 -0
  1106. package/src/tools/image-gen.ts +1586 -0
  1107. package/src/tools/index.ts +672 -0
  1108. package/src/tools/inspect-image-renderer.ts +132 -0
  1109. package/src/tools/inspect-image.ts +260 -0
  1110. package/src/tools/irc.ts +788 -0
  1111. package/src/tools/job.ts +612 -0
  1112. package/src/tools/json-tree.ts +260 -0
  1113. package/src/tools/jtd-to-json-schema.ts +219 -0
  1114. package/src/tools/jtd-to-typescript.ts +136 -0
  1115. package/src/tools/jtd-utils.ts +102 -0
  1116. package/src/tools/learn.ts +141 -0
  1117. package/src/tools/list-limit.ts +40 -0
  1118. package/src/tools/manage-skill.ts +100 -0
  1119. package/src/tools/match-line-format.ts +20 -0
  1120. package/src/tools/memory-edit.ts +59 -0
  1121. package/src/tools/memory-recall.ts +102 -0
  1122. package/src/tools/memory-reflect.ts +88 -0
  1123. package/src/tools/memory-render.ts +202 -0
  1124. package/src/tools/memory-retain.ts +89 -0
  1125. package/src/tools/output-meta.ts +768 -0
  1126. package/src/tools/output-schema-validator.ts +132 -0
  1127. package/src/tools/path-utils.ts +1116 -0
  1128. package/src/tools/plan-mode-guard.ts +142 -0
  1129. package/src/tools/puppeteer/00_stealth_tampering.txt +44 -0
  1130. package/src/tools/puppeteer/01_stealth_activity.txt +80 -0
  1131. package/src/tools/puppeteer/02_stealth_hairline.txt +57 -0
  1132. package/src/tools/puppeteer/03_stealth_botd.txt +380 -0
  1133. package/src/tools/puppeteer/04_stealth_iframe.txt +174 -0
  1134. package/src/tools/puppeteer/05_stealth_webgl.txt +233 -0
  1135. package/src/tools/puppeteer/06_stealth_screen.txt +260 -0
  1136. package/src/tools/puppeteer/07_stealth_fonts.txt +99 -0
  1137. package/src/tools/puppeteer/08_stealth_audio.txt +63 -0
  1138. package/src/tools/puppeteer/09_stealth_locale.txt +51 -0
  1139. package/src/tools/puppeteer/10_stealth_plugins.txt +212 -0
  1140. package/src/tools/puppeteer/11_stealth_hardware.txt +59 -0
  1141. package/src/tools/puppeteer/12_stealth_codecs.txt +42 -0
  1142. package/src/tools/puppeteer/13_stealth_worker.txt +235 -0
  1143. package/src/tools/read.ts +3124 -0
  1144. package/src/tools/render-utils.ts +895 -0
  1145. package/src/tools/renderers.ts +86 -0
  1146. package/src/tools/report-tool-issue.ts +530 -0
  1147. package/src/tools/resolve.ts +302 -0
  1148. package/src/tools/review.ts +251 -0
  1149. package/src/tools/search-tool-bm25.ts +351 -0
  1150. package/src/tools/search.ts +1592 -0
  1151. package/src/tools/sqlite-reader.ts +884 -0
  1152. package/src/tools/ssh.ts +369 -0
  1153. package/src/tools/todo.ts +944 -0
  1154. package/src/tools/tool-errors.ts +62 -0
  1155. package/src/tools/tool-result.ts +102 -0
  1156. package/src/tools/tool-timeouts.ts +30 -0
  1157. package/src/tools/tts.ts +265 -0
  1158. package/src/tools/write.ts +1156 -0
  1159. package/src/tools/yield.ts +269 -0
  1160. package/src/tts/downloader.ts +64 -0
  1161. package/src/tts/index.ts +8 -0
  1162. package/src/tts/models.ts +137 -0
  1163. package/src/tts/player.ts +137 -0
  1164. package/src/tts/runtime.ts +21 -0
  1165. package/src/tts/streaming-player.ts +266 -0
  1166. package/src/tts/tts-client.ts +474 -0
  1167. package/src/tts/tts-protocol.ts +60 -0
  1168. package/src/tts/tts-worker.ts +431 -0
  1169. package/src/tts/vocalizer.ts +162 -0
  1170. package/src/tts/wav.ts +58 -0
  1171. package/src/tui/code-cell.ts +268 -0
  1172. package/src/tui/file-list.ts +55 -0
  1173. package/src/tui/hyperlink.ts +178 -0
  1174. package/src/tui/index.ts +13 -0
  1175. package/src/tui/output-block.ts +240 -0
  1176. package/src/tui/status-line.ts +54 -0
  1177. package/src/tui/tree-list.ts +133 -0
  1178. package/src/tui/types.ts +15 -0
  1179. package/src/tui/utils.ts +103 -0
  1180. package/src/tui/width-aware-text.ts +58 -0
  1181. package/src/ui/banner.ts +41 -0
  1182. package/src/ui/chat-prompt.ts +34 -0
  1183. package/src/ui/colors.ts +37 -0
  1184. package/src/ui/index.ts +6 -0
  1185. package/src/ui/spinner.ts +15 -0
  1186. package/src/ui/status-bar.ts +57 -0
  1187. package/src/utils/block-context.ts +312 -0
  1188. package/src/utils/changelog.ts +132 -0
  1189. package/src/utils/clipboard.ts +262 -0
  1190. package/src/utils/command-args.ts +76 -0
  1191. package/src/utils/commit-message-generator.ts +147 -0
  1192. package/src/utils/edit-mode.ts +41 -0
  1193. package/src/utils/enhanced-paste.ts +230 -0
  1194. package/src/utils/event-bus.ts +33 -0
  1195. package/src/utils/external-editor.ts +78 -0
  1196. package/src/utils/file-display-mode.ts +44 -0
  1197. package/src/utils/file-mentions.ts +284 -0
  1198. package/src/utils/git.ts +1839 -0
  1199. package/src/utils/image-loading.ts +231 -0
  1200. package/src/utils/image-resize.ts +309 -0
  1201. package/src/utils/image-vision-fallback.ts +197 -0
  1202. package/src/utils/ipc.ts +38 -0
  1203. package/src/utils/jj.ts +295 -0
  1204. package/src/utils/lang-from-path.ts +244 -0
  1205. package/src/utils/markit.ts +143 -0
  1206. package/src/utils/mupdf-wasm-embed.ts +12 -0
  1207. package/src/utils/open.ts +55 -0
  1208. package/src/utils/qrcode.ts +535 -0
  1209. package/src/utils/session-color.ts +142 -0
  1210. package/src/utils/shell-snapshot.ts +249 -0
  1211. package/src/utils/sixel.ts +69 -0
  1212. package/src/utils/thinking-display.ts +89 -0
  1213. package/src/utils/title-generator.ts +348 -0
  1214. package/src/utils/tool-choice.ts +49 -0
  1215. package/src/utils/tools-manager.ts +372 -0
  1216. package/src/utils/turndown.ts +83 -0
  1217. package/src/utils/zip.ts +1091 -0
  1218. package/src/web/kagi.ts +304 -0
  1219. package/src/web/parallel.ts +354 -0
  1220. package/src/web/scrapers/artifacthub.ts +207 -0
  1221. package/src/web/scrapers/arxiv.ts +83 -0
  1222. package/src/web/scrapers/aur.ts +162 -0
  1223. package/src/web/scrapers/biorxiv.ts +133 -0
  1224. package/src/web/scrapers/bluesky.ts +262 -0
  1225. package/src/web/scrapers/brew.ts +172 -0
  1226. package/src/web/scrapers/cheatsh.ts +68 -0
  1227. package/src/web/scrapers/chocolatey.ts +196 -0
  1228. package/src/web/scrapers/choosealicense.ts +95 -0
  1229. package/src/web/scrapers/cisa-kev.ts +87 -0
  1230. package/src/web/scrapers/clojars.ts +154 -0
  1231. package/src/web/scrapers/coingecko.ts +177 -0
  1232. package/src/web/scrapers/crates-io.ts +97 -0
  1233. package/src/web/scrapers/crossref.ts +136 -0
  1234. package/src/web/scrapers/devto.ts +147 -0
  1235. package/src/web/scrapers/discogs.ts +306 -0
  1236. package/src/web/scrapers/discourse.ts +197 -0
  1237. package/src/web/scrapers/dockerhub.ts +138 -0
  1238. package/src/web/scrapers/docs-rs.ts +652 -0
  1239. package/src/web/scrapers/fdroid.ts +134 -0
  1240. package/src/web/scrapers/firefox-addons.ts +191 -0
  1241. package/src/web/scrapers/flathub.ts +223 -0
  1242. package/src/web/scrapers/github-gist.ts +58 -0
  1243. package/src/web/scrapers/github.ts +800 -0
  1244. package/src/web/scrapers/gitlab.ts +401 -0
  1245. package/src/web/scrapers/go-pkg.ts +266 -0
  1246. package/src/web/scrapers/hackage.ts +140 -0
  1247. package/src/web/scrapers/hackernews.ts +189 -0
  1248. package/src/web/scrapers/hex.ts +105 -0
  1249. package/src/web/scrapers/huggingface.ts +321 -0
  1250. package/src/web/scrapers/iacr.ts +89 -0
  1251. package/src/web/scrapers/index.ts +252 -0
  1252. package/src/web/scrapers/jetbrains-marketplace.ts +159 -0
  1253. package/src/web/scrapers/lemmy.ts +203 -0
  1254. package/src/web/scrapers/lobsters.ts +175 -0
  1255. package/src/web/scrapers/mastodon.ts +292 -0
  1256. package/src/web/scrapers/maven.ts +138 -0
  1257. package/src/web/scrapers/mdn.ts +173 -0
  1258. package/src/web/scrapers/metacpan.ts +222 -0
  1259. package/src/web/scrapers/musicbrainz.ts +250 -0
  1260. package/src/web/scrapers/npm.ts +98 -0
  1261. package/src/web/scrapers/nuget.ts +183 -0
  1262. package/src/web/scrapers/nvd.ts +222 -0
  1263. package/src/web/scrapers/ollama.ts +239 -0
  1264. package/src/web/scrapers/open-vsx.ts +106 -0
  1265. package/src/web/scrapers/opencorporates.ts +292 -0
  1266. package/src/web/scrapers/openlibrary.ts +336 -0
  1267. package/src/web/scrapers/orcid.ts +286 -0
  1268. package/src/web/scrapers/osv.ts +176 -0
  1269. package/src/web/scrapers/packagist.ts +160 -0
  1270. package/src/web/scrapers/pub-dev.ts +143 -0
  1271. package/src/web/scrapers/pubmed.ts +211 -0
  1272. package/src/web/scrapers/pypi.ts +112 -0
  1273. package/src/web/scrapers/rawg.ts +110 -0
  1274. package/src/web/scrapers/readthedocs.ts +120 -0
  1275. package/src/web/scrapers/reddit.ts +95 -0
  1276. package/src/web/scrapers/repology.ts +251 -0
  1277. package/src/web/scrapers/rfc.ts +201 -0
  1278. package/src/web/scrapers/rubygems.ts +103 -0
  1279. package/src/web/scrapers/searchcode.ts +189 -0
  1280. package/src/web/scrapers/sec-edgar.ts +261 -0
  1281. package/src/web/scrapers/semantic-scholar.ts +171 -0
  1282. package/src/web/scrapers/snapcraft.ts +187 -0
  1283. package/src/web/scrapers/sourcegraph.ts +336 -0
  1284. package/src/web/scrapers/spdx.ts +108 -0
  1285. package/src/web/scrapers/spotify.ts +198 -0
  1286. package/src/web/scrapers/stackoverflow.ts +120 -0
  1287. package/src/web/scrapers/terraform.ts +277 -0
  1288. package/src/web/scrapers/tldr.ts +47 -0
  1289. package/src/web/scrapers/twitter.ts +94 -0
  1290. package/src/web/scrapers/types.ts +354 -0
  1291. package/src/web/scrapers/utils.ts +109 -0
  1292. package/src/web/scrapers/vimeo.ts +133 -0
  1293. package/src/web/scrapers/vscode-marketplace.ts +187 -0
  1294. package/src/web/scrapers/w3c.ts +156 -0
  1295. package/src/web/scrapers/wikidata.ts +344 -0
  1296. package/src/web/scrapers/wikipedia.ts +84 -0
  1297. package/src/web/scrapers/youtube.ts +325 -0
  1298. package/src/web/search/index.ts +317 -0
  1299. package/src/web/search/provider.ts +169 -0
  1300. package/src/web/search/providers/anthropic.ts +343 -0
  1301. package/src/web/search/providers/base.ts +90 -0
  1302. package/src/web/search/providers/brave.ts +152 -0
  1303. package/src/web/search/providers/codex.ts +593 -0
  1304. package/src/web/search/providers/exa.ts +400 -0
  1305. package/src/web/search/providers/gemini.ts +518 -0
  1306. package/src/web/search/providers/jina.ts +111 -0
  1307. package/src/web/search/providers/kagi.ts +86 -0
  1308. package/src/web/search/providers/kimi.ts +196 -0
  1309. package/src/web/search/providers/parallel.ts +136 -0
  1310. package/src/web/search/providers/perplexity-auth.ts +133 -0
  1311. package/src/web/search/providers/perplexity.ts +878 -0
  1312. package/src/web/search/providers/searxng.ts +325 -0
  1313. package/src/web/search/providers/synthetic.ts +114 -0
  1314. package/src/web/search/providers/tavily.ts +176 -0
  1315. package/src/web/search/providers/utils.ts +128 -0
  1316. package/src/web/search/providers/zai.ts +333 -0
  1317. package/src/web/search/render.ts +262 -0
  1318. package/src/web/search/types.ts +462 -0
  1319. package/src/web/search/utils.ts +17 -0
  1320. package/src/workspace-tree.ts +326 -0
package/CHANGELOG.md ADDED
@@ -0,0 +1,69 @@
1
+ # Changelog
2
+
3
+ All notable changes to SNS-MyAgent will be documented in this file.
4
+
5
+ Format: [Keep a Changelog](https://keepachangelog.com/en/1.1.0/)
6
+ Versioning: [Semantic Versioning](https://semver.org/spec/v2.0.0.html)
7
+
8
+ ---
9
+
10
+ ## [Unreleased]
11
+
12
+ ### Added
13
+ - Phase 1 scaffold complete: forked from Pi Agent, rebranded as `@sns-myagent/cli` with `snscoder` binary (commit `d1480eb`)
14
+ - GitHub Actions CI/CD pipeline (`.github/workflows/ci.yml`) with staged verify → install → typecheck → lint → build → diagnose jobs
15
+ - BYOK provider config system with `.sns-myagent/config.yaml` + env overrides
16
+ - Real source-derived inventory of 58 built-in slash commands and 70+ tools documented in README
17
+ - `docs/memory.md` covering mnemopi / mnemosyne / mem0 / lcm backends
18
+ - `docs/tbm.md` Token Budget Manager reference
19
+ - `SECURITY.md` vulnerability reporting + security model
20
+ - `CONTRIBUTING.md` dev setup + commit conventions
21
+ - `install.sh` / `install.ps1` cross-platform installers
22
+ - Phase 1.5: prebuilt Linux x64 standalone binary (`bin/snscoder-linux-x64`) produced via `bun build --compile` in `scripts/build-binary.ts`
23
+ - Phase 1.5: integration smoke tests (`test/integration/`) covering CLI binary launch + version/help output
24
+ - Phase 1.5: `grammy` dependency added for the Telegram adapter (`src/telegram/` adapter stub)
25
+ - Phase 1.5: default-config YAML writer (`DEFAULT_CONFIG_YAML` in `src/config/defaults.ts`) — first-run writes a real `config.yaml` instead of silently no-op
26
+
27
+ ### Changed
28
+ - Bumped `@oh-my-pi/*` packages from `16.1.15` → `16.1.18`
29
+ - `bin/snscoder` entrypoint now resolves to `bin/snscoder.js`
30
+ - README rewritten to remove fabricated slash-commands and tools tables — all claims now sourced from `src/`
31
+ - CHANGELOG Phase 2 entries flagged Telegram bot as not yet shipped (no `src/telegram/` files)
32
+ - `package.json` `build` script moved from inline `bun build` flags to `bun scripts/build-binary.ts` for readability
33
+ - `src/config/defaults.ts` now exports `DEFAULT_CONFIG_FILE`, `DEFAULT_CONFIG_YAML`, `DEFAULT_MODEL`, `DEFAULT_PROVIDER` to satisfy `src/config/index.ts` import (was 4 pre-existing TS errors)
34
+
35
+ ### Removed
36
+ - Dead code: `src/shims/pi-agent-core-shim.ts` — never imported anywhere, kept only as a self-documented escape hatch that became obsolete once `@oh-my-pi/pi-agent-core` 16.1.18 barrel re-exports stabilised
37
+ - `package.json.orig` migration artifact (superseded by current `package.json`; diff captured in `.sns-myagent/`)
38
+ - `src/shims/` directory (empty after shim removal)
39
+
40
+ ### Fixed
41
+ - 4 pre-existing TS errors at `src/config/index.ts:20` — missing exports on `defaults.ts` (`DEFAULT_CONFIG_FILE`, `DEFAULT_CONFIG_YAML`, `DEFAULT_MODEL`, `DEFAULT_PROVIDER`)
42
+
43
+ ### Status
44
+ - Latest released version: [0.1.0] — 2026-06-23
45
+ - Internal phase tracker: see `PROGRESS.md` (gitignored, not on GitHub)
46
+
47
+ ---
48
+
49
+ ## [0.1.0] — 2026-06-23
50
+
51
+ ### Added
52
+ - Project repository created (github.com/Reihantt6/sns-myagent)
53
+ - PRD v2.0 — Product Requirements Document (competitive analysis)
54
+ - README.md — full project documentation with install methods
55
+ - `package.json` — package config with `snscoder` bin
56
+ - `install.sh` — curl one-liner installer
57
+ - SECURITY.md — vulnerability reporting, security model
58
+ - CONTRIBUTING.md — dev setup, commit convention, code style
59
+ - CHANGELOG.md — this file
60
+ - `docs/installation.md` — install guide + platform specs
61
+ - `docs/configuration.md` — config reference
62
+ - `docs/memory.md` — 4 memory backends (mnemopi, mnemosyne, mem0, lcm) + Mem0 self-host guide
63
+ - `docs/tbm.md` — Token Budget Manager deep dive
64
+ - `docs/troubleshooting.md` — common issues + fixes
65
+ - `docs/faq.md` — FAQ
66
+ - `docs/terminal-ui.md` — TUI design spec
67
+
68
+ ### Status
69
+ - v0.1.0 = scaffold + docs complete; core agent landing
package/README.md ADDED
@@ -0,0 +1,603 @@
1
+ <p align="center">
2
+ <pre>
3
+ ╔══════════════════════════════════════════════════════════════╗
4
+ ║ ║
5
+ ║ ███████╗███╗ ██╗███████╗ ██╗ ██╗██╗ ██╗ ║
6
+ ║ ██╔════╝████╗ ██║██╔════╝ ██║ ██║╚██╗ ██╔╝ ║
7
+ ║ ███████╗██╔██╗ ██║███████╗ ██║ ██║ ╚████╔╝ ║
8
+ ║ ╚════██║██║╚██╗██║╚════██║ ╚██╗ ██╔╝ ╚██╔╝ ║
9
+ ║ ███████║██║ ╚████║███████║ ╚████╔╝ ██║ ║
10
+ ║ ╚══════╝╚═╝ ╚═══╝╚══════╝ ╚═══╝ ╚═╝ ║
11
+ ║ ║
12
+ ║ A G E N T ║
13
+ ║ ║
14
+ ║ Configure your agent by talking to it. ║
15
+ ║ ║
16
+ ╚══════════════════════════════════════════════════════════════╝
17
+ </pre>
18
+ </p>
19
+
20
+ <p align="center">
21
+ <strong>BYOK coding agent CLI — 30 built-in tools, 58 slash commands, multi-provider LLM, memory, MCP, Telegram.</strong>
22
+ </p>
23
+
24
+ <p align="center">
25
+ <a href="./LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue?style=flat-square" alt="License: MIT"></a>
26
+ <img src="https://img.shields.io/badge/version-0.1.0-yellow?style=flat-square" alt="Version 0.1.0">
27
+ <img src="https://img.shields.io/badge/bun-%3E%3D1.3.14-efbbf4?style=flat-square&logo=bun&logoColor=black" alt="Bun >= 1.3.14">
28
+ <img src="https://img.shields.io/badge/typescript-5.x-3178C6?style=flat-square&logo=typescript&logoColor=white" alt="TypeScript 5.x">
29
+ </p>
30
+
31
+ ---
32
+
33
+ **snscoder** is a personal, single-user AI coding agent CLI. Bring your own API key, talk to the agent, and it configures itself — MCP servers, memory backends, model switching, all through conversation. Forked from [Pi Agent / oh-my-pi](https://github.com/can1357/oh-my-pi) and stripped to a focused, local-first, terminal-first agent.
34
+
35
+ ---
36
+
37
+ ## Table of Contents
38
+
39
+ - [Features](#features)
40
+ - [Tools](#tools-30-built-in)
41
+ - [Slash Commands](#slash-commands)
42
+ - [Memory Backends](#memory-backends)
43
+ - [Installation](#installation)
44
+ - [Quick Start](#quick-start)
45
+ - [Configuration](#configuration)
46
+ - [CLI Reference](#cli-reference)
47
+ - [MCP Integration](#mcp-integration)
48
+ - [Telegram](#telegram)
49
+ - [Architecture](#architecture)
50
+ - [Development](#development)
51
+ - [Contributing](#contributing)
52
+ - [Security](#security)
53
+ - [License](#license)
54
+ - [Credits](#credits)
55
+
56
+ ---
57
+
58
+ ## Features
59
+
60
+ | Feature | Source |
61
+ |---------|--------|
62
+ | **30 built-in tools** | `src/tools/builtin-names.ts` |
63
+ | **58 slash commands** | `src/slash-commands/builtin-registry.ts` |
64
+ | **Multi-provider LLM** | OpenAI, Anthropic, Ollama, custom endpoints via `@oh-my-pi/pi-ai` |
65
+ | **4 memory backends** | mnemopi (default), hindsight, local, off — `src/memory-backend/resolve.ts` |
66
+ | **MCP integration** | 22 source files in `src/mcp/` |
67
+ | **Plan mode** | `src/plan-mode/` — agent plans before executing |
68
+ | **Goal mode** | Autonomous objective with token budget and lifecycle |
69
+ | **Subagent delegation** | `src/task/` — spawn child agents for parallel work |
70
+ | **Advisor** | Second model reviews each turn and injects notes |
71
+ | **Collaborative sessions** | `src/collab/` — host/join sessions via link or QR code |
72
+ | **Skills & plugins** | `src/extensibility/` — markdown skills + plugin marketplace |
73
+ | **Auto-learning** | `src/autolearn/` — agent learns from interactions |
74
+ | **Browser automation** | Puppeteer-based headless browser — `src/tools/` browser tool |
75
+ | **LSP integration** | Language Server Protocol — `src/lsp/` |
76
+ | **Eval backends** | Python, Ruby, Julia, JavaScript — `src/eval/` |
77
+ | **SSH remote execution** | `src/ssh/` |
78
+ | **Text-to-speech** | 10 files in `src/tts/` |
79
+ | **TinyLLM local inference** | 7 files in `src/tiny/` |
80
+ | **Telegram bot** | `src/adapters/telegram/` — auto-boot with `SNS_TELEGRAM_BOT_TOKEN` |
81
+ | **Debug Adapter Protocol** | `src/dap/` |
82
+ | **Context compaction** | Automatic context window management with multiple strategies |
83
+ | **IRC** | IRC tool for chat protocol interaction |
84
+ | **Todo system** | Markdown-based todo list with reminders |
85
+
86
+ ---
87
+
88
+ ## Tools (30 Built-in)
89
+
90
+ All tool names come from `src/tools/builtin-names.ts`.
91
+
92
+ ### File & Code Operations
93
+
94
+ | Tool | Description |
95
+ |------|-------------|
96
+ | `read` | Read file contents with line ranges |
97
+ | `write` | Write / create / append to files |
98
+ | `edit` | Find-and-replace edits in files |
99
+ | `find` | Find files by name or pattern |
100
+ | `search` | Search file contents (regex) |
101
+
102
+ ### Shell & Execution
103
+
104
+ | Tool | Description |
105
+ |------|-------------|
106
+ | `bash` | Execute shell commands |
107
+ | `eval` | Evaluate code snippets (Python, JS, Ruby, Julia) |
108
+ | `ssh` | Execute commands on remote hosts via SSH |
109
+
110
+ ### Code Intelligence
111
+
112
+ | Tool | Description |
113
+ |------|-------------|
114
+ | `ast_grep` | AST-based code search |
115
+ | `ast_edit` | AST-aware code editing |
116
+ | `lsp` | Language Server Protocol operations |
117
+ | `debug` | Debugging assistance |
118
+
119
+ ### Web & Browser
120
+
121
+ | Tool | Description |
122
+ |------|-------------|
123
+ | `web_search` | Web search via configured provider |
124
+ | `search` | File/content search |
125
+ | `search_tool_bm25` | BM25-based search tool |
126
+ | `browser` | Headless browser automation (Puppeteer) |
127
+ | `inspect_image` | Image analysis |
128
+
129
+ ### Memory & Learning
130
+
131
+ | Tool | Description |
132
+ |------|-------------|
133
+ | `memory_edit` | Edit memory entries |
134
+ | `retain` | Store information in memory |
135
+ | `recall` | Retrieve information from memory |
136
+ | `reflect` | Self-reflection on past actions |
137
+ | `learn` | Learn from interactions |
138
+ | `manage_skill` | Manage skill files |
139
+
140
+ ### Sessions & Tasks
141
+
142
+ | Tool | Description |
143
+ |------|-------------|
144
+ | `task` | Spawn subagent for delegated work |
145
+ | `job` | Manage background jobs |
146
+ | `checkpoint` | Save session checkpoint |
147
+ | `rewind` | Rewind to a previous checkpoint |
148
+
149
+ ### Communication & Other
150
+
151
+ | Tool | Description |
152
+ |------|-------------|
153
+ | `irc` | IRC chat protocol |
154
+ | `todo` | Markdown todo list management |
155
+ | `github` | GitHub operations (repos, issues, PRs) |
156
+ | `ask` | Ask clarifying questions |
157
+
158
+ ---
159
+
160
+ ## Slash Commands
161
+
162
+ 58 built-in commands from `src/slash-commands/builtin-registry.ts`. Most useful:
163
+
164
+ ### Session & Navigation
165
+
166
+ | Command | Description |
167
+ |---------|-------------|
168
+ | `/compact` | Compact conversation context |
169
+ | `/context` | Show context-window breakdown |
170
+ | `/copy` | Copy last response to clipboard |
171
+ | `/export` | Export session to file |
172
+ | `/dump` | Dump raw session transcript |
173
+ | `/share` | Share session via collab link |
174
+ | `/reset` | Reset session |
175
+ | `/help` | Show help |
176
+
177
+ ### Model & Provider
178
+
179
+ | Command | Description |
180
+ |---------|-------------|
181
+ | `/model` | Switch model for this session |
182
+ | `/switch` | Quick model switch (same as alt+p) |
183
+ | `/fast [on\|off\|status]` | Toggle priority service tier |
184
+ | `/settings` | Open settings menu |
185
+ | `/setup` | Open provider setup wizard |
186
+
187
+ ### Goals & Planning
188
+
189
+ | Command | Description |
190
+ |---------|-------------|
191
+ | `/plan` | Toggle plan mode |
192
+ | `/plan-review` | Review the active plan |
193
+ | `/goal <set\|show\|pause\|resume\|drop\|budget>` | Goal lifecycle management |
194
+ | `/guided-goal` | Guided goal walkthrough |
195
+ | `/loop [count\|duration]` | Toggle loop mode |
196
+ | `/advisor [on\|off\|status\|dump]` | Advisor subagent control |
197
+
198
+ ### Output & Collaboration
199
+
200
+ | Command | Description |
201
+ |---------|-------------|
202
+ | `/collab [view\|status\|stop]` | Host a live collab session |
203
+ | `/join <link>` | Join a collab session |
204
+ | `/leave` | Leave collab session |
205
+ | `/todo <edit\|copy\|export\|import\|append\|start\|done\|drop>` | Todo list management |
206
+ | `/browser [headless\|visible]` | Switch browser mode |
207
+
208
+ ### System
209
+
210
+ | Command | Description |
211
+ |---------|-------------|
212
+ | `/mcp [reload]` | MCP server status / reload |
213
+ | `/ssh` | Run command on remote host |
214
+ | `/plugins` | Show installed plugins |
215
+ | `/marketplace` | Open marketplace manager |
216
+ | `/stats [--port]` | Launch stats dashboard |
217
+ | `/usage [show\|reset]` | Token usage / rate-limit reset |
218
+ | `/version` | Show version |
219
+ | `/changelog [full]` | Show changelog entries |
220
+ | `/debug` | Toggle debug logging |
221
+ | `/theme` | Switch UI theme |
222
+ | `/unpin` | Unpin pinned context |
223
+
224
+ ---
225
+
226
+ ## Memory Backends
227
+
228
+ Seven backends, configured via `memory.backend` in settings. Source: `src/memory-backend/resolve.ts`.
229
+
230
+ | Backend | Description | Source |
231
+ |---------|-------------|--------|
232
+ | **mnemopi** (default) | SQLite + vector embeddings + graph. Local, zero setup. | `src/mnemopi/` (7 files) |
233
+ | **hindsight** | Remote memory backend | `src/hindsight/` (5 files) |
234
+ | **mnemosyne** | Three-tier memory: episodic → semantic → procedural. Auto-consolidation. | `src/memory-backend/mnemosyne-backend.ts` |
235
+ | **mem0** | Semantic facts with auto-extraction. Relevance + recency scoring. | `src/memory-backend/mem0-backend.ts` |
236
+ | **lcm** | Latent Context Memory. Delta encoding + multi-resolution. | `src/memory-backend/lcm-backend.ts` |
237
+ | **local** | Rollout summary pipeline | `src/memory-backend/local-backend.ts` |
238
+ | **off** | Memory disabled | `src/memory-backend/off-backend.ts` |
239
+
240
+ ## Cron Scheduler
241
+
242
+ Persistent background scheduler, SQLite-backed. Source: `src/cron/`.
243
+
244
+ ```bash
245
+ /cron list # List all jobs
246
+ /cron add <name> <expr> <action> [args] # Add: action = prompt|shell|skill
247
+ /cron run <name> # Run immediately
248
+ /cron remove <name> # Delete
249
+ /cron status # Show scheduler status
250
+ /cron enable <name> # Enable
251
+ /cron disable <name> # Disable
252
+ ```
253
+
254
+ Example: `/cron add backup "0 2 * * *" shell "git push"` runs `git push` daily at 2 AM.
255
+
256
+ ### mnemopi Settings
257
+
258
+ | Key | Default | Description |
259
+ |-----|---------|-------------|
260
+ | `mnemopi.dbPath` | — | SQLite database path |
261
+ | `mnemopi.bank` | — | Memory bank |
262
+ | `mnemopi.scoping` | — | Scoping mode |
263
+ | `mnemopi.embeddingVariant` | — | Embedding model variant |
264
+ | `mnemopi.autoRecall` | — | Auto-recall on context load |
265
+ | `mnemopi.autoRetain` | — | Auto-retain after conversations |
266
+ | `mnemopi.retainEveryNTurns` | `4` | Turns between auto-retains |
267
+ | `mnemopi.recallLimit` | `8` | Max recall results |
268
+ | `mnemopi.recallContextTurns` | `3` | Context turns for recall |
269
+ | `mnemopi.recallMaxQueryChars` | `4000` | Max query characters |
270
+ | `mnemopi.injectionTokenLimit` | `5000` | Token budget for injected memories |
271
+ | `mnemopi.debug` | `false` | Debug logging |
272
+
273
+ ---
274
+
275
+ ## Installation
276
+
277
+ ### Option 1: One-liner (Linux / macOS / WSL)
278
+
279
+ ```bash
280
+ curl -fsSL https://raw.githubusercontent.com/Reihantt6/sns-myagent/main/install.sh | bash
281
+ ```
282
+
283
+ Multi-arch: detects Linux x64, Linux ARM64 (Termux/Android), macOS.
284
+
285
+ ### Option 2: npm (all platforms)
286
+
287
+ ```bash
288
+ npm install -g @sns-myagent/cli
289
+ ```
290
+
291
+ Works on Linux, macOS, Windows, WSL. Requires Node.js 18+. Prebuilt binary downloaded on install.
292
+
293
+ ### Option 3: Build from source
294
+
295
+ ```bash
296
+ git clone https://github.com/Reihantt6/sns-myagent.git
297
+ cd sns-myagent
298
+ bun install # requires Bun >= 1.3.14
299
+ bun run build # produces bin/snscoder-linux-x64
300
+ ```
301
+
302
+ ### Option 4: Windows PowerShell
303
+
304
+ ```powershell
305
+ irm raw.githubusercontent.com/Reihantt6/sns-myagent/main/install.ps1 | iex
306
+ ```
307
+
308
+ Uses npm under the hood. WSL also supported via Option 1 or 2.
309
+
310
+ ### Run from source (development)
311
+
312
+ ```bash
313
+ bun run src/cli/entry.ts
314
+ ```
315
+
316
+ ### Platform Support
317
+
318
+ | Platform | Method |
319
+ |----------|--------|
320
+ | Linux x64 | Binary, npm, curl, source |
321
+ | Linux ARM64 (Termux/Android) | Binary, npm, curl, source |
322
+ | macOS x64 | Binary (CI), npm, source |
323
+ | macOS ARM64 (M1/M2/M3) | Binary (CI), npm, source |
324
+ | Windows x64 | Binary (CI), npm, PowerShell installer, WSL |
325
+ | Android (Termux) | Binary, curl installer |
326
+
327
+ Prebuilt binaries: [GitHub Releases](https://github.com/Reihantt6/sns-myagent/releases). Auto-built for all platforms on every `v*` tag via `.github/workflows/build-release.yml`.
328
+
329
+ ---
330
+
331
+ ## Quick Start
332
+
333
+ ### 1. Set an API key
334
+
335
+ ```bash
336
+ export OPENAI_API_KEY="sk-..."
337
+ # or
338
+ export ANTHROPIC_API_KEY="sk-ant-..."
339
+ ```
340
+
341
+ ### 2. Run
342
+
343
+ ```bash
344
+ snscoder
345
+ ```
346
+
347
+ Or from source:
348
+
349
+ ```bash
350
+ bun run src/cli/entry.ts
351
+ ```
352
+
353
+ ### 3. Use it
354
+
355
+ ```
356
+ > what files are in the current directory?
357
+ > search the web for "bun runtime benchmarks"
358
+ > create a TypeScript module that parses CSV files
359
+ > refactor src/utils.ts to use async/await
360
+ ```
361
+
362
+ ### 4. Configure through conversation
363
+
364
+ ```
365
+ > add MCP filesystem for /home/user/projects
366
+ > switch to anthropic with claude-sonnet
367
+ > load coding skill
368
+ ```
369
+
370
+ ---
371
+
372
+ ## Configuration
373
+
374
+ Config lives at `.sns-myagent/config.json` (JSON, not YAML). Source: `src/config/loader.ts`.
375
+
376
+ ### Key Config Categories
377
+
378
+ Settings use dot-separated paths. Full schema in `src/config/settings-schema.ts`.
379
+
380
+ ```jsonc
381
+ {
382
+ // Model selection
383
+ "model.*": "...",
384
+
385
+ // Feature toggles
386
+ "advisor.enabled": true,
387
+ "bash.enabled": true,
388
+ "browser.enabled": true,
389
+ "browser.headless": true,
390
+ "checkpoint.enabled": true,
391
+ "compaction.enabled": true,
392
+ "debug.enabled": false,
393
+ "github.enabled": true,
394
+ "goal.enabled": true,
395
+ "todo.enabled": true,
396
+
397
+ // Eval backends
398
+ "eval.py": true,
399
+ "eval.js": true,
400
+ "eval.rb": true,
401
+ "eval.jl": true,
402
+
403
+ // Memory
404
+ "memory.backend": "mnemopi", // "mnemopi" | "hindsight" | "local" | "off"
405
+ "hindsight.scoping": "...",
406
+
407
+ // MCP
408
+ "mcp.*": {},
409
+
410
+ // Session
411
+ "session.*": {},
412
+
413
+ // Theme
414
+ "theme.dark": "titanium",
415
+
416
+ // Compaction
417
+ "compaction.enabled": true,
418
+ "compaction.strategy": "...",
419
+ "compaction.thresholdPercent": 80,
420
+ "compaction.idleEnabled": true,
421
+ "compaction.idleTimeoutSeconds": 300,
422
+
423
+ // Todo
424
+ "todo.enabled": true,
425
+ "todo.reminders": true,
426
+ "todo.reminders.max": 5,
427
+
428
+ // Mnemopi (when memory.backend = "mnemopi")
429
+ "mnemopi.dbPath": "...",
430
+ "mnemopi.autoRecall": true,
431
+ "mnemopi.autoRetain": true,
432
+ "mnemopi.retainEveryNTurns": 4,
433
+ "mnemopi.recallLimit": 8
434
+ }
435
+ ```
436
+
437
+ Access in TUI via `/settings` or through conversation.
438
+
439
+ ---
440
+
441
+ ## CLI Reference
442
+
443
+ ```
444
+ snscoder # Interactive TUI mode
445
+ snscoder "prompt" # Single-prompt mode
446
+ snscoder telegram # Start Telegram adapter
447
+ snscoder --help # Show help
448
+ snscoder --version # Show version
449
+ ```
450
+
451
+ ---
452
+
453
+ ## MCP Integration
454
+
455
+ Connect Model Context Protocol servers for additional tools. 22 source files in `src/mcp/`.
456
+
457
+ ### Through Conversation
458
+
459
+ ```
460
+ > add MCP filesystem for /home/user/projects
461
+ > add MCP github
462
+ ```
463
+
464
+ ### Through Config
465
+
466
+ Configure via `/mcp` or the settings panel. Servers are defined in the MCP config section.
467
+
468
+ ### Popular MCP Servers
469
+
470
+ | Server | Package |
471
+ |--------|---------|
472
+ | Filesystem | `@modelcontextprotocol/server-filesystem` |
473
+ | PostgreSQL | `@modelcontextprotocol/server-postgres` |
474
+ | GitHub | `@modelcontextprotocol/server-github` |
475
+
476
+ ---
477
+
478
+ ## Telegram
479
+
480
+ Telegram bot adapter in `src/adapters/telegram/` (4 files). Built on [grammY](https://grammy.dev/).
481
+
482
+ ### Setup
483
+
484
+ 1. Create a bot via [@BotFather](https://t.me/BotFather) on Telegram
485
+ 2. Set the token:
486
+
487
+ ```bash
488
+ export SNS_TELEGRAM_BOT_TOKEN="your-bot-token-here"
489
+ ```
490
+
491
+ 3. Run snscoder — the bot auto-starts polling:
492
+
493
+ ```bash
494
+ snscoder
495
+ ```
496
+
497
+ The adapter starts automatically when `SNS_TELEGRAM_BOT_TOKEN` is set. Disable auto-start with:
498
+
499
+ ```bash
500
+ export SNS_TELEGRAM_AUTOSTART=0
501
+ ```
502
+
503
+ Or start the Telegram adapter explicitly:
504
+
505
+ ```bash
506
+ snscoder telegram
507
+ ```
508
+
509
+ ---
510
+
511
+ ## Architecture
512
+
513
+ ```
514
+ sns-myagent/
515
+ ├── src/
516
+ │ ├── cli/ # CLI entry point + commands
517
+ │ ├── config/ # Settings schema, loader, defaults
518
+ │ ├── tools/ # 30 built-in tools
519
+ │ ├── modes/ # Interactive mode, TUI, controllers
520
+ │ ├── session/ # Session management
521
+ │ ├── mcp/ # MCP integration (22 files)
522
+ │ ├── prompts/ # System prompts
523
+ │ ├── memory-backend/ # Memory backend resolver
524
+ │ ├── mnemopi/ # mnemopi backend (SQLite + vector + graph)
525
+ │ ├── hindsight/ # hindsight backend (remote memory)
526
+ │ ├── extensibility/ # Skills, plugins, marketplace
527
+ │ ├── capability/ # Skill system
528
+ │ ├── task/ # Subagent delegation
529
+ │ ├── plan-mode/ # Plan mode
530
+ │ ├── web/ # Web search, scrapers
531
+ │ ├── ssh/ # SSH tool
532
+ │ ├── lsp/ # LSP tool
533
+ │ ├── eval/ # Eval backends (Python, Ruby, Julia, JS)
534
+ │ ├── collab/ # Collaborative sessions
535
+ │ ├── autolearn/ # Auto-learning system
536
+ │ ├── adapters/
537
+ │ │ └── telegram/ # Telegram bot adapter
538
+ │ ├── tts/ # Text-to-speech (10 files)
539
+ │ ├── tiny/ # TinyLLM local inference (7 files)
540
+ │ ├── dap/ # Debug Adapter Protocol
541
+ │ ├── stt/ # Speech-to-text
542
+ │ ├── thinking/ # Thinking mode support
543
+ │ ├── ui/ # Terminal UI components
544
+ │ └── utils/ # Utilities
545
+ ├── docs/ # Documentation
546
+ ├── bin/ # Prebuilt binaries
547
+ ├── scripts/ # Build + dev scripts
548
+ ├── install.sh # Multi-arch installer
549
+ ├── install.ps1 # Windows installer
550
+ └── package.json
551
+ ```
552
+
553
+ ---
554
+
555
+ ## Development
556
+
557
+ ```bash
558
+ bun install # Install dependencies
559
+ bun run build # Build binary to bin/
560
+ bun run src/cli/entry.ts # Run from source
561
+ bun test # Run tests
562
+ bun run check # Biome check + type check
563
+ bun run lint # Biome lint
564
+ bun run fix # Auto-fix lint + format
565
+ ```
566
+
567
+ ---
568
+
569
+ ## Contributing
570
+
571
+ 1. Fork the repository
572
+ 2. Create a feature branch (`git checkout -b feature/my-change`)
573
+ 3. Commit with clear messages
574
+ 4. Push and open a Pull Request
575
+
576
+ ### Commit Convention
577
+
578
+ ```
579
+ add: new feature or file
580
+ fix: bug fix
581
+ refactor: code restructuring
582
+ docs: documentation changes
583
+ test: test additions or changes
584
+ chore: maintenance tasks
585
+ ```
586
+
587
+ ---
588
+
589
+ ## Security
590
+
591
+ See [SECURITY.md](SECURITY.md) for vulnerability reporting and security policies.
592
+
593
+ ---
594
+
595
+ ## License
596
+
597
+ MIT — see [LICENSE](LICENSE).
598
+
599
+ ---
600
+
601
+ ## Credits
602
+
603
+ Forked from [Pi Agent / oh-my-pi](https://github.com/can1357/oh-my-pi) by can1357. Stripped to a focused, single-user terminal agent with conversational configuration.