@f5-sales-demo/xcsh 19.51.2 → 19.51.5

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 (515) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/examples/custom-tools/hello/index.ts +1 -1
  3. package/examples/custom-tools/todo/index.ts +1 -1
  4. package/examples/extensions/api-demo.ts +1 -1
  5. package/examples/extensions/chalk-logger.ts +1 -1
  6. package/examples/extensions/hello.ts +1 -1
  7. package/examples/extensions/pirate.ts +1 -1
  8. package/examples/extensions/plan-mode.ts +2 -2
  9. package/examples/extensions/todo.ts +3 -3
  10. package/examples/extensions/tools.ts +3 -3
  11. package/examples/extensions/with-deps/index.ts +1 -1
  12. package/examples/hooks/auto-commit-on-exit.ts +1 -1
  13. package/examples/hooks/confirm-destructive.ts +1 -1
  14. package/examples/hooks/custom-compaction.ts +3 -3
  15. package/examples/hooks/dirty-repo-guard.ts +1 -1
  16. package/examples/hooks/file-trigger.ts +1 -1
  17. package/examples/hooks/git-checkpoint.ts +1 -1
  18. package/examples/hooks/handoff.ts +3 -3
  19. package/examples/hooks/permission-gate.ts +1 -1
  20. package/examples/hooks/protected-paths.ts +1 -1
  21. package/examples/hooks/qna.ts +3 -3
  22. package/examples/hooks/status-line.ts +1 -1
  23. package/examples/sdk/01-minimal.ts +1 -1
  24. package/examples/sdk/02-custom-model.ts +3 -3
  25. package/examples/sdk/03-custom-prompt.ts +1 -1
  26. package/examples/sdk/04-skills.ts +1 -1
  27. package/examples/sdk/06-extensions.ts +2 -2
  28. package/examples/sdk/06-hooks.ts +1 -1
  29. package/examples/sdk/07-context-files.ts +1 -1
  30. package/examples/sdk/08-prompt-templates.ts +1 -6
  31. package/examples/sdk/08-slash-commands.ts +1 -6
  32. package/examples/sdk/09-api-keys-and-oauth.ts +1 -1
  33. package/examples/sdk/11-sessions.ts +1 -1
  34. package/package.json +8 -8
  35. package/scripts/extension-uat-harness.ts +2 -2
  36. package/scripts/format-prompts.ts +1 -1
  37. package/scripts/generate-api-spec-index.ts +1 -1
  38. package/scripts/generate-branding-index.ts +1 -1
  39. package/scripts/generate-build-info.ts +1 -1
  40. package/scripts/generate-terraform-index.ts +1 -1
  41. package/scripts/mermaid-gallery.ts +2 -2
  42. package/src/async/job-manager.ts +1 -1
  43. package/src/autoresearch/dashboard.ts +1 -1
  44. package/src/autoresearch/helpers.ts +1 -1
  45. package/src/autoresearch/index.ts +2 -2
  46. package/src/autoresearch/tools/init-experiment.ts +2 -2
  47. package/src/autoresearch/tools/log-experiment.ts +3 -3
  48. package/src/autoresearch/tools/run-experiment.ts +2 -2
  49. package/src/autoresearch/types.ts +1 -1
  50. package/src/browser/provider.ts +18 -3
  51. package/src/capability/index.ts +1 -1
  52. package/src/cli/agents-cli.ts +1 -1
  53. package/src/cli/args.ts +2 -2
  54. package/src/cli/chrome-cli.ts +112 -5
  55. package/src/cli/config-cli.ts +1 -1
  56. package/src/cli/file-processor.ts +2 -2
  57. package/src/cli/grep-cli.ts +2 -2
  58. package/src/cli/initial-message.ts +1 -1
  59. package/src/cli/jupyter-cli.ts +1 -1
  60. package/src/cli/list-models.ts +2 -2
  61. package/src/cli/plugin-cli.ts +3 -3
  62. package/src/cli/read-cli.ts +1 -1
  63. package/src/cli/session-picker.ts +1 -1
  64. package/src/cli/setup-cli.ts +2 -2
  65. package/src/cli/shell-cli.ts +2 -2
  66. package/src/cli/ssh-cli.ts +1 -1
  67. package/src/cli/stats-cli.ts +3 -3
  68. package/src/cli/update-cli.ts +3 -3
  69. package/src/cli/web-search-cli.ts +2 -2
  70. package/src/cli.ts +4 -4
  71. package/src/commands/agents.ts +1 -1
  72. package/src/commands/chrome-host.ts +28 -2
  73. package/src/commands/chrome.ts +1 -1
  74. package/src/commands/commit.ts +1 -1
  75. package/src/commands/config.ts +1 -1
  76. package/src/commands/grep.ts +2 -2
  77. package/src/commands/grievances.ts +1 -1
  78. package/src/commands/jupyter.ts +1 -1
  79. package/src/commands/launch.ts +3 -3
  80. package/src/commands/plugin.ts +1 -1
  81. package/src/commands/read.ts +1 -1
  82. package/src/commands/setup.ts +1 -1
  83. package/src/commands/shell.ts +1 -1
  84. package/src/commands/ssh.ts +1 -1
  85. package/src/commands/stats.ts +1 -1
  86. package/src/commands/update.ts +1 -1
  87. package/src/commands/web-search.ts +1 -1
  88. package/src/commit/agentic/agent.ts +4 -4
  89. package/src/commit/agentic/index.ts +1 -1
  90. package/src/commit/agentic/tools/analyze-file.ts +1 -1
  91. package/src/commit/analysis/conventional.ts +4 -4
  92. package/src/commit/analysis/summary.ts +4 -4
  93. package/src/commit/changelog/generate.ts +4 -4
  94. package/src/commit/changelog/index.ts +3 -3
  95. package/src/commit/map-reduce/index.ts +3 -3
  96. package/src/commit/map-reduce/map-phase.ts +4 -4
  97. package/src/commit/map-reduce/reduce-phase.ts +4 -4
  98. package/src/commit/model-selection.ts +2 -2
  99. package/src/commit/pipeline.ts +3 -3
  100. package/src/commit/utils.ts +1 -1
  101. package/src/config/auto-config.ts +1 -1
  102. package/src/config/file-lock.ts +1 -1
  103. package/src/config/keybindings.ts +3 -3
  104. package/src/config/model-equivalence.ts +1 -1
  105. package/src/config/model-registry.ts +2 -2
  106. package/src/config/model-resolver.ts +2 -2
  107. package/src/config/prompt-templates.ts +2 -2
  108. package/src/config/resolve-config-value.ts +1 -1
  109. package/src/config/settings-schema.ts +1 -1
  110. package/src/config/settings.ts +1 -1
  111. package/src/config.ts +1 -1
  112. package/src/cursor.ts +2 -2
  113. package/src/dap/client.ts +1 -1
  114. package/src/dap/config.ts +1 -1
  115. package/src/dap/session.ts +1 -1
  116. package/src/dap/types.ts +1 -1
  117. package/src/debug/index.ts +3 -3
  118. package/src/debug/log-formatting.ts +1 -1
  119. package/src/debug/log-viewer.ts +2 -2
  120. package/src/debug/report-bundle.ts +2 -2
  121. package/src/debug/system-info.ts +1 -1
  122. package/src/discovery/builtin.ts +1 -1
  123. package/src/discovery/claude-plugins.ts +1 -1
  124. package/src/discovery/claude.ts +1 -1
  125. package/src/discovery/codex.ts +1 -1
  126. package/src/discovery/cursor.ts +1 -1
  127. package/src/discovery/gemini.ts +1 -1
  128. package/src/discovery/github.ts +1 -1
  129. package/src/discovery/helpers.ts +3 -3
  130. package/src/discovery/language.ts +1 -1
  131. package/src/discovery/mcp-json.ts +1 -1
  132. package/src/discovery/opencode.ts +1 -1
  133. package/src/discovery/ssh.ts +1 -1
  134. package/src/discovery/vscode.ts +1 -1
  135. package/src/discovery/windsurf.ts +1 -1
  136. package/src/edit/diff.ts +1 -1
  137. package/src/edit/index.ts +2 -2
  138. package/src/edit/modes/chunk.ts +4 -4
  139. package/src/edit/modes/hashline.ts +2 -2
  140. package/src/edit/modes/patch.ts +3 -3
  141. package/src/edit/modes/replace.ts +2 -2
  142. package/src/edit/normalize.ts +1 -1
  143. package/src/edit/renderer.ts +3 -3
  144. package/src/exa/mcp-client.ts +1 -1
  145. package/src/exa/render.ts +3 -3
  146. package/src/exa/search.ts +1 -1
  147. package/src/exec/bash-executor.ts +1 -1
  148. package/src/exec/exec.ts +1 -1
  149. package/src/export/custom-share.ts +1 -1
  150. package/src/export/html/index.ts +2 -2
  151. package/src/export/ttsr.ts +1 -1
  152. package/src/extensibility/custom-commands/bundled/ci-green/index.ts +1 -1
  153. package/src/extensibility/custom-commands/bundled/review/index.ts +1 -1
  154. package/src/extensibility/custom-commands/loader.ts +2 -2
  155. package/src/extensibility/custom-tools/loader.ts +4 -4
  156. package/src/extensibility/custom-tools/types.ts +4 -4
  157. package/src/extensibility/custom-tools/wrapper.ts +1 -1
  158. package/src/extensibility/extensions/loader.ts +7 -7
  159. package/src/extensibility/extensions/runner.ts +4 -4
  160. package/src/extensibility/extensions/types.ts +5 -5
  161. package/src/extensibility/extensions/wrapper.ts +2 -2
  162. package/src/extensibility/hooks/loader.ts +2 -2
  163. package/src/extensibility/hooks/runner.ts +3 -3
  164. package/src/extensibility/hooks/tool-wrapper.ts +1 -1
  165. package/src/extensibility/hooks/types.ts +4 -4
  166. package/src/extensibility/plugins/doctor.ts +1 -1
  167. package/src/extensibility/plugins/installer.ts +1 -1
  168. package/src/extensibility/plugins/loader.ts +1 -1
  169. package/src/extensibility/plugins/manager.ts +1 -1
  170. package/src/extensibility/plugins/marketplace/cache.ts +1 -1
  171. package/src/extensibility/plugins/marketplace/fetcher.ts +1 -1
  172. package/src/extensibility/plugins/marketplace/manager.ts +1 -1
  173. package/src/extensibility/plugins/marketplace/prerequisites.ts +1 -1
  174. package/src/extensibility/plugins/marketplace/registry.ts +1 -1
  175. package/src/extensibility/plugins/marketplace/source-resolver.ts +1 -1
  176. package/src/extensibility/skills.ts +1 -1
  177. package/src/extensibility/slash-commands.ts +2 -2
  178. package/src/index.ts +3 -3
  179. package/src/internal-urls/agent-protocol.ts +1 -1
  180. package/src/internal-urls/artifact-protocol.ts +1 -1
  181. package/src/internal-urls/branding-index.generated.ts +7 -7
  182. package/src/internal-urls/build-info-runtime.ts +5 -5
  183. package/src/internal-urls/build-info.generated.ts +11 -11
  184. package/src/internal-urls/computer-profile.ts +1 -1
  185. package/src/internal-urls/console-catalog.generated.ts +1036 -524
  186. package/src/internal-urls/console-field-metadata.generated.ts +4651 -4834
  187. package/src/internal-urls/docs-index.generated.ts +229 -232
  188. package/src/internal-urls/local-protocol.ts +1 -1
  189. package/src/internal-urls/memory-protocol.ts +1 -1
  190. package/src/internal-urls/profile-collectors.ts +1 -1
  191. package/src/internal-urls/terraform-index.generated.ts +3 -3
  192. package/src/internal-urls/user-profile.ts +1 -1
  193. package/src/internal-urls/xcsh-protocol.ts +2 -2
  194. package/src/ipy/executor.ts +1 -1
  195. package/src/ipy/gateway-coordinator.ts +1 -1
  196. package/src/ipy/kernel.ts +1 -1
  197. package/src/ipy/modules.ts +1 -1
  198. package/src/ipy/runtime.ts +1 -1
  199. package/src/lsp/client.ts +1 -1
  200. package/src/lsp/config.ts +1 -1
  201. package/src/lsp/index.ts +2 -2
  202. package/src/lsp/lspmux.ts +1 -1
  203. package/src/lsp/render.ts +3 -3
  204. package/src/lsp/types.ts +2 -2
  205. package/src/lsp/utils.ts +2 -2
  206. package/src/main.ts +4 -4
  207. package/src/mcp/client.ts +1 -1
  208. package/src/mcp/config-writer.ts +1 -1
  209. package/src/mcp/config.ts +1 -1
  210. package/src/mcp/discoverable-tool-metadata.ts +1 -1
  211. package/src/mcp/json-rpc.ts +1 -1
  212. package/src/mcp/loader.ts +1 -1
  213. package/src/mcp/manager.ts +1 -1
  214. package/src/mcp/oauth-flow.ts +3 -3
  215. package/src/mcp/render.ts +1 -1
  216. package/src/mcp/smithery-auth.ts +2 -2
  217. package/src/mcp/smithery-registry.ts +1 -1
  218. package/src/mcp/tool-bridge.ts +3 -3
  219. package/src/mcp/tool-cache.ts +1 -1
  220. package/src/mcp/transports/http.ts +1 -1
  221. package/src/mcp/transports/stdio.ts +1 -1
  222. package/src/mcp/types.ts +1 -1
  223. package/src/memories/index.ts +3 -3
  224. package/src/modes/acp/acp-agent.ts +2 -2
  225. package/src/modes/components/agent-dashboard.ts +3 -3
  226. package/src/modes/components/assistant-message.ts +3 -3
  227. package/src/modes/components/bash-execution.ts +2 -2
  228. package/src/modes/components/bordered-loader.ts +1 -1
  229. package/src/modes/components/branch-summary-message.ts +1 -1
  230. package/src/modes/components/btw-panel.ts +1 -1
  231. package/src/modes/components/compaction-summary-message.ts +1 -1
  232. package/src/modes/components/context-add-wizard.ts +112 -13
  233. package/src/modes/components/countdown-timer.ts +1 -1
  234. package/src/modes/components/custom-editor.ts +1 -1
  235. package/src/modes/components/custom-message.ts +3 -3
  236. package/src/modes/components/diff.ts +1 -1
  237. package/src/modes/components/dynamic-border.ts +1 -1
  238. package/src/modes/components/extensions/extension-dashboard.ts +1 -1
  239. package/src/modes/components/extensions/extension-list.ts +1 -1
  240. package/src/modes/components/extensions/inspector-panel.ts +1 -1
  241. package/src/modes/components/extensions/state-manager.ts +1 -1
  242. package/src/modes/components/footer.ts +3 -3
  243. package/src/modes/components/gutter-block.ts +1 -1
  244. package/src/modes/components/history-search.ts +1 -1
  245. package/src/modes/components/hook-editor.ts +1 -1
  246. package/src/modes/components/hook-input.ts +1 -1
  247. package/src/modes/components/hook-message.ts +3 -3
  248. package/src/modes/components/hook-selector.ts +1 -1
  249. package/src/modes/components/keybinding-hints.ts +1 -1
  250. package/src/modes/components/login-dialog.ts +2 -2
  251. package/src/modes/components/mcp-add-wizard.ts +2 -2
  252. package/src/modes/components/model-selector.ts +3 -3
  253. package/src/modes/components/oauth-selector.ts +2 -2
  254. package/src/modes/components/plugin-selector.ts +1 -1
  255. package/src/modes/components/plugin-settings.ts +1 -1
  256. package/src/modes/components/plugins/plugin-dashboard.ts +3 -3
  257. package/src/modes/components/plugins/plugin-inspector-pane.ts +2 -2
  258. package/src/modes/components/plugins/plugin-list-pane.ts +3 -3
  259. package/src/modes/components/plugins/state-manager.ts +1 -1
  260. package/src/modes/components/python-execution.ts +2 -2
  261. package/src/modes/components/queue-mode-selector.ts +1 -1
  262. package/src/modes/components/read-tool-group.ts +2 -2
  263. package/src/modes/components/session-observer-overlay.ts +3 -3
  264. package/src/modes/components/session-selector.ts +1 -1
  265. package/src/modes/components/settings-defs.ts +2 -2
  266. package/src/modes/components/settings-selector.ts +3 -3
  267. package/src/modes/components/show-images-selector.ts +1 -1
  268. package/src/modes/components/skill-message.ts +3 -3
  269. package/src/modes/components/status-line/segments.ts +3 -3
  270. package/src/modes/components/status-line-segment-editor.ts +1 -1
  271. package/src/modes/components/status-line.ts +3 -3
  272. package/src/modes/components/theme-selector.ts +1 -1
  273. package/src/modes/components/thinking-selector.ts +2 -2
  274. package/src/modes/components/todo-reminder.ts +1 -1
  275. package/src/modes/components/tool-execution.ts +4 -4
  276. package/src/modes/components/tree-selector.ts +2 -2
  277. package/src/modes/components/ttsr-notification.ts +1 -1
  278. package/src/modes/components/user-message-selector.ts +1 -1
  279. package/src/modes/components/user-message.ts +1 -1
  280. package/src/modes/components/visual-truncate.ts +1 -1
  281. package/src/modes/components/welcome-checks.ts +3 -3
  282. package/src/modes/components/welcome.ts +2 -2
  283. package/src/modes/controllers/btw-controller.ts +3 -3
  284. package/src/modes/controllers/chord-routing.ts +1 -1
  285. package/src/modes/controllers/command-controller.ts +3 -3
  286. package/src/modes/controllers/event-controller.ts +3 -3
  287. package/src/modes/controllers/extension-ui-controller.ts +3 -3
  288. package/src/modes/controllers/input-controller.ts +4 -4
  289. package/src/modes/controllers/mcp-command-controller.ts +2 -2
  290. package/src/modes/controllers/selector-controller.ts +5 -5
  291. package/src/modes/controllers/ssh-command-controller.ts +2 -2
  292. package/src/modes/index.ts +2 -2
  293. package/src/modes/interactive-mode.ts +5 -5
  294. package/src/modes/print-mode.ts +1 -1
  295. package/src/modes/prompt-action-autocomplete.ts +1 -1
  296. package/src/modes/rpc/host-tools.ts +2 -2
  297. package/src/modes/rpc/rpc-client.ts +3 -3
  298. package/src/modes/rpc/rpc-mode.ts +1 -1
  299. package/src/modes/rpc/rpc-types.ts +2 -2
  300. package/src/modes/shared.ts +1 -1
  301. package/src/modes/theme/mermaid-cache.ts +1 -1
  302. package/src/modes/theme/mermaid-palette.ts +1 -1
  303. package/src/modes/theme/theme.ts +6 -6
  304. package/src/modes/types.ts +3 -3
  305. package/src/modes/utils/hotkeys-markdown.ts +1 -1
  306. package/src/modes/utils/keybinding-matchers.ts +1 -1
  307. package/src/modes/utils/read-group-outcome-aggregator.ts +1 -1
  308. package/src/modes/utils/sanitize-error-message.ts +1 -1
  309. package/src/modes/utils/tools-markdown.ts +1 -1
  310. package/src/modes/utils/ui-helpers.ts +3 -3
  311. package/src/plan-mode/approved-plan.ts +1 -1
  312. package/src/prompts/system/system-prompt.md +1 -1
  313. package/src/prompts/tools/browser.md +1 -0
  314. package/src/resource-management/index.ts +3 -3
  315. package/src/sdk.ts +7 -7
  316. package/src/secrets/index.ts +1 -1
  317. package/src/secrets/obfuscator.ts +1 -1
  318. package/src/services/xcsh-api-client.ts +1 -1
  319. package/src/services/xcsh-context-command.ts +1 -1
  320. package/src/services/xcsh-context.ts +2 -2
  321. package/src/services/xcsh-env.ts +2 -2
  322. package/src/services/xcsh-knowledge.ts +2 -2
  323. package/src/services/xcsh-table.ts +1 -1
  324. package/src/session/agent-session.ts +5 -5
  325. package/src/session/agent-storage.ts +3 -3
  326. package/src/session/auth-storage.ts +3 -3
  327. package/src/session/blob-store.ts +1 -1
  328. package/src/session/compaction/branch-summarization.ts +4 -4
  329. package/src/session/compaction/compaction.ts +7 -7
  330. package/src/session/compaction/pruning.ts +2 -2
  331. package/src/session/compaction/utils.ts +3 -3
  332. package/src/session/history-storage.ts +1 -1
  333. package/src/session/messages.ts +4 -4
  334. package/src/session/session-dump-format.ts +3 -3
  335. package/src/session/session-manager.ts +4 -4
  336. package/src/session/session-storage.ts +1 -1
  337. package/src/session/streaming-output.ts +1 -1
  338. package/src/session/tool-choice-queue.ts +1 -1
  339. package/src/slash-commands/builtin-registry.ts +3 -3
  340. package/src/slash-commands/export-command.ts +2 -2
  341. package/src/slash-commands/resource-commands.ts +2 -2
  342. package/src/ssh/config-writer.ts +1 -1
  343. package/src/ssh/connection-manager.ts +1 -1
  344. package/src/ssh/ssh-executor.ts +1 -1
  345. package/src/ssh/sshfs-mount.ts +1 -1
  346. package/src/stt/downloader.ts +1 -1
  347. package/src/stt/recorder.ts +1 -1
  348. package/src/stt/stt-controller.ts +1 -1
  349. package/src/stt/transcriber.ts +1 -1
  350. package/src/system-prompt.ts +2 -2
  351. package/src/task/agents.ts +2 -2
  352. package/src/task/commands.ts +1 -1
  353. package/src/task/discovery.ts +1 -1
  354. package/src/task/executor.ts +2 -2
  355. package/src/task/index.ts +3 -3
  356. package/src/task/isolation-backend.ts +2 -2
  357. package/src/task/render.ts +3 -3
  358. package/src/task/subprocess-tool-registry.ts +1 -1
  359. package/src/task/template.ts +1 -1
  360. package/src/task/types.ts +3 -3
  361. package/src/task/worktree.ts +2 -2
  362. package/src/task/xcsh-command.ts +1 -1
  363. package/src/thinking.ts +2 -2
  364. package/src/tools/action-renderer.ts +2 -2
  365. package/src/tools/ask.ts +3 -3
  366. package/src/tools/ast-edit.ts +5 -5
  367. package/src/tools/ast-grep.ts +5 -5
  368. package/src/tools/auto-generated-guard.ts +1 -1
  369. package/src/tools/bash-interactive.ts +3 -3
  370. package/src/tools/bash.ts +4 -4
  371. package/src/tools/browser-renderer.ts +2 -2
  372. package/src/tools/browser.ts +3 -3
  373. package/src/tools/calculator.ts +3 -3
  374. package/src/tools/cancel-job.ts +2 -2
  375. package/src/tools/catalog-workflow-runner.ts +2 -2
  376. package/src/tools/checkpoint.ts +2 -2
  377. package/src/tools/context.ts +2 -2
  378. package/src/tools/debug.ts +4 -4
  379. package/src/tools/display-image-renderer.ts +2 -2
  380. package/src/tools/display-image.ts +4 -4
  381. package/src/tools/exit-plan-mode.ts +2 -2
  382. package/src/tools/fetch.ts +5 -5
  383. package/src/tools/find.ts +5 -5
  384. package/src/tools/fs-cache-invalidation.ts +1 -1
  385. package/src/tools/gemini-image.ts +2 -2
  386. package/src/tools/grep.ts +5 -5
  387. package/src/tools/index.ts +3 -3
  388. package/src/tools/inspect-image-renderer.ts +2 -2
  389. package/src/tools/inspect-image.ts +3 -3
  390. package/src/tools/json-tree.ts +1 -1
  391. package/src/tools/mermaid-renderer.ts +3 -3
  392. package/src/tools/notebook.ts +5 -5
  393. package/src/tools/output-meta.ts +2 -2
  394. package/src/tools/poll-tool.ts +2 -2
  395. package/src/tools/python.ts +5 -5
  396. package/src/tools/read.ts +6 -6
  397. package/src/tools/render-mermaid.ts +2 -2
  398. package/src/tools/render-utils.ts +6 -6
  399. package/src/tools/renderers.ts +1 -1
  400. package/src/tools/report-tool-issue.ts +2 -2
  401. package/src/tools/resolve.ts +3 -3
  402. package/src/tools/review.ts +5 -5
  403. package/src/tools/search-tool-bm25.ts +3 -3
  404. package/src/tools/ssh.ts +4 -4
  405. package/src/tools/submit-result.ts +2 -2
  406. package/src/tools/todo-write.ts +5 -5
  407. package/src/tools/tool-result.ts +2 -2
  408. package/src/tools/vim.ts +4 -4
  409. package/src/tools/write.ts +3 -3
  410. package/src/tools/xcsh-api-renderer.ts +2 -2
  411. package/src/tools/xcsh-api.ts +2 -2
  412. package/src/tui/output-block.ts +1 -1
  413. package/src/tui/tree-list.ts +1 -1
  414. package/src/tui/utils.ts +2 -2
  415. package/src/utils/changelog.ts +1 -1
  416. package/src/utils/clipboard.ts +2 -2
  417. package/src/utils/commit-message-generator.ts +4 -4
  418. package/src/utils/edit-mode.ts +1 -1
  419. package/src/utils/event-bus.ts +1 -1
  420. package/src/utils/external-editor.ts +1 -1
  421. package/src/utils/file-mentions.ts +4 -4
  422. package/src/utils/git.ts +1 -1
  423. package/src/utils/gitstatus.ts +1 -1
  424. package/src/utils/image-convert.ts +1 -1
  425. package/src/utils/image-loading.ts +2 -2
  426. package/src/utils/image-passthrough.ts +1 -1
  427. package/src/utils/image-resize.ts +2 -2
  428. package/src/utils/markit.ts +1 -1
  429. package/src/utils/shell-snapshot.ts +1 -1
  430. package/src/utils/title-generator.ts +4 -4
  431. package/src/utils/tool-choice.ts +1 -1
  432. package/src/utils/tools-manager.ts +1 -1
  433. package/src/vim/render.ts +1 -1
  434. package/src/web/kagi.ts +1 -1
  435. package/src/web/parallel.ts +1 -1
  436. package/src/web/scrapers/artifacthub.ts +1 -1
  437. package/src/web/scrapers/aur.ts +1 -1
  438. package/src/web/scrapers/biorxiv.ts +1 -1
  439. package/src/web/scrapers/bluesky.ts +1 -1
  440. package/src/web/scrapers/chocolatey.ts +1 -1
  441. package/src/web/scrapers/choosealicense.ts +1 -1
  442. package/src/web/scrapers/cisa-kev.ts +1 -1
  443. package/src/web/scrapers/clojars.ts +1 -1
  444. package/src/web/scrapers/coingecko.ts +1 -1
  445. package/src/web/scrapers/crates-io.ts +1 -1
  446. package/src/web/scrapers/crossref.ts +1 -1
  447. package/src/web/scrapers/discogs.ts +2 -2
  448. package/src/web/scrapers/discourse.ts +1 -1
  449. package/src/web/scrapers/dockerhub.ts +1 -1
  450. package/src/web/scrapers/docs-rs.ts +1 -1
  451. package/src/web/scrapers/fdroid.ts +1 -1
  452. package/src/web/scrapers/firefox-addons.ts +1 -1
  453. package/src/web/scrapers/flathub.ts +1 -1
  454. package/src/web/scrapers/github.ts +1 -1
  455. package/src/web/scrapers/gitlab.ts +1 -1
  456. package/src/web/scrapers/go-pkg.ts +1 -1
  457. package/src/web/scrapers/hackage.ts +1 -1
  458. package/src/web/scrapers/hackernews.ts +1 -1
  459. package/src/web/scrapers/hex.ts +1 -1
  460. package/src/web/scrapers/huggingface.ts +1 -1
  461. package/src/web/scrapers/jetbrains-marketplace.ts +1 -1
  462. package/src/web/scrapers/lemmy.ts +1 -1
  463. package/src/web/scrapers/lobsters.ts +1 -1
  464. package/src/web/scrapers/mastodon.ts +1 -1
  465. package/src/web/scrapers/maven.ts +1 -1
  466. package/src/web/scrapers/mdn.ts +1 -1
  467. package/src/web/scrapers/metacpan.ts +1 -1
  468. package/src/web/scrapers/musicbrainz.ts +1 -1
  469. package/src/web/scrapers/npm.ts +1 -1
  470. package/src/web/scrapers/nuget.ts +1 -1
  471. package/src/web/scrapers/nvd.ts +1 -1
  472. package/src/web/scrapers/ollama.ts +1 -1
  473. package/src/web/scrapers/open-vsx.ts +1 -1
  474. package/src/web/scrapers/opencorporates.ts +1 -1
  475. package/src/web/scrapers/openlibrary.ts +1 -1
  476. package/src/web/scrapers/orcid.ts +1 -1
  477. package/src/web/scrapers/osv.ts +1 -1
  478. package/src/web/scrapers/packagist.ts +1 -1
  479. package/src/web/scrapers/pub-dev.ts +1 -1
  480. package/src/web/scrapers/pubmed.ts +1 -1
  481. package/src/web/scrapers/pypi.ts +1 -1
  482. package/src/web/scrapers/rawg.ts +1 -1
  483. package/src/web/scrapers/reddit.ts +1 -1
  484. package/src/web/scrapers/repology.ts +1 -1
  485. package/src/web/scrapers/rfc.ts +1 -1
  486. package/src/web/scrapers/rubygems.ts +1 -1
  487. package/src/web/scrapers/searchcode.ts +1 -1
  488. package/src/web/scrapers/sec-edgar.ts +1 -1
  489. package/src/web/scrapers/semantic-scholar.ts +1 -1
  490. package/src/web/scrapers/snapcraft.ts +1 -1
  491. package/src/web/scrapers/sourcegraph.ts +1 -1
  492. package/src/web/scrapers/spdx.ts +1 -1
  493. package/src/web/scrapers/stackoverflow.ts +1 -1
  494. package/src/web/scrapers/terraform.ts +1 -1
  495. package/src/web/scrapers/types.ts +2 -2
  496. package/src/web/scrapers/utils.ts +1 -1
  497. package/src/web/scrapers/vimeo.ts +1 -1
  498. package/src/web/scrapers/vscode-marketplace.ts +1 -1
  499. package/src/web/scrapers/w3c.ts +1 -1
  500. package/src/web/scrapers/wikidata.ts +1 -1
  501. package/src/web/scrapers/youtube.ts +1 -1
  502. package/src/web/search/index.ts +3 -3
  503. package/src/web/search/providers/anthropic.ts +2 -2
  504. package/src/web/search/providers/brave.ts +1 -1
  505. package/src/web/search/providers/codex.ts +1 -1
  506. package/src/web/search/providers/exa.ts +1 -1
  507. package/src/web/search/providers/gemini.ts +2 -2
  508. package/src/web/search/providers/jina.ts +1 -1
  509. package/src/web/search/providers/kimi.ts +2 -2
  510. package/src/web/search/providers/perplexity.ts +2 -2
  511. package/src/web/search/providers/synthetic.ts +1 -1
  512. package/src/web/search/providers/tavily.ts +1 -1
  513. package/src/web/search/providers/utils.ts +1 -1
  514. package/src/web/search/providers/zai.ts +1 -1
  515. package/src/web/search/render.ts +2 -2
package/CHANGELOG.md CHANGED
@@ -2,6 +2,23 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [19.51.5] - 2026-06-26
6
+
7
+ ### Fixed
8
+ - Sign + notarize the embedded native addon (`pi_natives.*.node`) in `build-sign-macos` **before** it is embedded into the compiled binary. xcsh extracts the embedded `.node` to `~/.xcsh/natives/<ver>/` at runtime; previously that extracted copy was ad-hoc-signed, so managed/MDM Macs blocked the `dlopen` ("could not verify it is free of malware"). The addon is now Developer-ID-signed with hardened runtime and notarized, so Gatekeeper's online check passes it without manual approval.
9
+
10
+ ## [19.51.4] - 2026-06-26
11
+
12
+ ### Added
13
+ - Deterministic NL→XC console automation: the system prompt mandates the purpose-built `catalog_workflow_runner` console skill (extension-driven) and forbids the generic Puppeteer browser tool for F5 XC console pages; visible Chrome is framed as the flagship showcase, headless as the exception.
14
+ - Native-messaging host auto-install on console-automation init (idempotent), with a baked-in Web Store URL and fail-fast guidance when the extension is not connected.
15
+ - Gated, security-clean relay tracing in `chrome-host` for diagnosing the bridge-connect step.
16
+
17
+ ### Fixed
18
+ - Native host now uses the compiled `xcsh` binary (not `bun + cli.ts`), which survives Chrome's stripped-env launch.
19
+ - Re-embedded console catalog/field-metadata with the `urn:xcsh:console:workflow:v1` schema and the tcp-load-balancer / network-interface defect fixes plus label corrections.
20
+ - Pre-existing biome lint/format issues that were blocking CI.
21
+
5
22
  ## [18.91.0] - 2026-06-01
6
23
 
7
24
  ### Changed
@@ -1,4 +1,4 @@
1
- import type { CustomToolFactory } from "@f5xc-salesdemos/xcsh";
1
+ import type { CustomToolFactory } from "@f5-sales-demo/xcsh";
2
2
 
3
3
  const factory: CustomToolFactory = pi => ({
4
4
  name: "hello",
@@ -7,7 +7,7 @@
7
7
  *
8
8
  * The onSession callback reconstructs state by scanning past tool results.
9
9
  */
10
- import type { CustomTool, CustomToolContext, CustomToolFactory, CustomToolSessionEvent } from "@f5xc-salesdemos/xcsh";
10
+ import type { CustomTool, CustomToolContext, CustomToolFactory, CustomToolSessionEvent } from "@f5-sales-demo/xcsh";
11
11
 
12
12
  interface Todo {
13
13
  id: number;
@@ -5,7 +5,7 @@
5
5
  * These features are now exposed directly on the ExtensionAPI, matching
6
6
  * the CustomToolAPI interface.
7
7
  */
8
- import type { ExtensionAPI } from "@f5xc-salesdemos/xcsh";
8
+ import type { ExtensionAPI } from "@f5-sales-demo/xcsh";
9
9
 
10
10
  export default function (pi: ExtensionAPI) {
11
11
  // 1. Access TypeBox directly from pi.typebox (no separate import needed)
@@ -2,7 +2,7 @@
2
2
  * Example extension that uses a 3rd party dependency (chalk).
3
3
  * Tests that jiti can resolve npm modules correctly.
4
4
  */
5
- import type { ExtensionAPI } from "@f5xc-salesdemos/xcsh";
5
+ import type { ExtensionAPI } from "@f5-sales-demo/xcsh";
6
6
  import chalk from "chalk";
7
7
 
8
8
  export default function (pi: ExtensionAPI) {
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * Demonstrates using ExtensionAPI's logger, typebox, and pi module access.
5
5
  */
6
- import type { ExtensionAPI } from "@f5xc-salesdemos/xcsh";
6
+ import type { ExtensionAPI } from "@f5-sales-demo/xcsh";
7
7
 
8
8
  export default function (pi: ExtensionAPI) {
9
9
  // Access TypeBox via pi.typebox (no need to import separately)
@@ -9,7 +9,7 @@
9
9
  * 2. Use /pirate to toggle pirate mode
10
10
  * 3. When enabled, the agent will respond like a pirate
11
11
  */
12
- import type { ExtensionAPI } from "@f5xc-salesdemos/xcsh";
12
+ import type { ExtensionAPI } from "@f5-sales-demo/xcsh";
13
13
 
14
14
  export default function pirateExtension(pi: ExtensionAPI) {
15
15
  let pirateMode = false;
@@ -19,8 +19,8 @@
19
19
  * 3. Or start in plan mode with --plan flag
20
20
  */
21
21
 
22
- import { Key } from "@f5xc-salesdemos/pi-tui";
23
- import type { ExtensionAPI, ExtensionContext } from "@f5xc-salesdemos/xcsh";
22
+ import { Key } from "@f5-sales-demo/pi-tui";
23
+ import type { ExtensionAPI, ExtensionContext } from "@f5-sales-demo/xcsh";
24
24
 
25
25
  // Read-only tools for plan mode
26
26
  const PLAN_MODE_TOOLS = ["read", "bash", "grep", "find", "ls"];
@@ -10,9 +10,9 @@
10
10
  * correct for that point in history.
11
11
  */
12
12
 
13
- import { StringEnum } from "@f5xc-salesdemos/pi-ai";
14
- import { matchesKey, Text, truncateToWidth } from "@f5xc-salesdemos/pi-tui";
15
- import type { ExtensionAPI, ExtensionContext, Theme } from "@f5xc-salesdemos/xcsh";
13
+ import { StringEnum } from "@f5-sales-demo/pi-ai";
14
+ import { matchesKey, Text, truncateToWidth } from "@f5-sales-demo/pi-tui";
15
+ import type { ExtensionAPI, ExtensionContext, Theme } from "@f5-sales-demo/xcsh";
16
16
  import { Type } from "@sinclair/typebox";
17
17
 
18
18
  interface Todo {
@@ -9,9 +9,9 @@
9
9
  * 2. Use /tools to open the tool selector
10
10
  */
11
11
 
12
- import { Container, type SettingItem, SettingsList } from "@f5xc-salesdemos/pi-tui";
13
- import type { ExtensionAPI, ExtensionContext } from "@f5xc-salesdemos/xcsh";
14
- import { getSettingsListTheme } from "@f5xc-salesdemos/xcsh";
12
+ import { Container, type SettingItem, SettingsList } from "@f5-sales-demo/pi-tui";
13
+ import type { ExtensionAPI, ExtensionContext } from "@f5-sales-demo/xcsh";
14
+ import { getSettingsListTheme } from "@f5-sales-demo/xcsh";
15
15
 
16
16
  // State persisted to session
17
17
  interface ToolsState {
@@ -5,7 +5,7 @@
5
5
  * Requires: npm install in this directory
6
6
  */
7
7
 
8
- import type { ExtensionAPI } from "@f5xc-salesdemos/xcsh";
8
+ import type { ExtensionAPI } from "@f5-sales-demo/xcsh";
9
9
  import { Type } from "@sinclair/typebox";
10
10
  import ms from "ms";
11
11
 
@@ -4,7 +4,7 @@
4
4
  * Automatically commits changes when the agent exits.
5
5
  * Uses the last assistant message to generate a commit message.
6
6
  */
7
- import type { HookAPI } from "@f5xc-salesdemos/xcsh";
7
+ import type { HookAPI } from "@f5-sales-demo/xcsh";
8
8
 
9
9
  export default function (pi: HookAPI) {
10
10
  pi.on("session_shutdown", async (_event, ctx) => {
@@ -4,7 +4,7 @@
4
4
  * Prompts for confirmation before destructive session actions (clear, switch, branch).
5
5
  * Demonstrates how to cancel session events using the before_* events.
6
6
  */
7
- import type { HookAPI, SessionBeforeSwitchEvent, SessionMessageEntry } from "@f5xc-salesdemos/xcsh";
7
+ import type { HookAPI, SessionBeforeSwitchEvent, SessionMessageEntry } from "@f5-sales-demo/xcsh";
8
8
 
9
9
  export default function (pi: HookAPI) {
10
10
  pi.on("session_before_switch", async (event: SessionBeforeSwitchEvent, ctx) => {
@@ -12,9 +12,9 @@
12
12
  * Usage:
13
13
  * xcsh --hook examples/hooks/custom-compaction.ts
14
14
  */
15
- import { complete, getModel } from "@f5xc-salesdemos/pi-ai";
16
- import type { HookAPI } from "@f5xc-salesdemos/xcsh";
17
- import { convertToLlm, serializeConversation } from "@f5xc-salesdemos/xcsh";
15
+ import { complete, getModel } from "@f5-sales-demo/pi-ai";
16
+ import type { HookAPI } from "@f5-sales-demo/xcsh";
17
+ import { convertToLlm, serializeConversation } from "@f5-sales-demo/xcsh";
18
18
 
19
19
  export default function (pi: HookAPI) {
20
20
  pi.on("session_before_compact", async (event, ctx) => {
@@ -4,7 +4,7 @@
4
4
  * Prevents session changes when there are uncommitted git changes.
5
5
  * Useful to ensure work is committed before switching context.
6
6
  */
7
- import type { HookAPI, HookContext } from "@f5xc-salesdemos/xcsh";
7
+ import type { HookAPI, HookContext } from "@f5-sales-demo/xcsh";
8
8
 
9
9
  async function checkDirtyRepo(pi: HookAPI, ctx: HookContext, action: string): Promise<{ cancel: boolean } | undefined> {
10
10
  // Check for uncommitted changes
@@ -8,7 +8,7 @@
8
8
  * echo "Run the tests" > /tmp/agent-trigger.txt
9
9
  */
10
10
  import * as fs from "node:fs";
11
- import type { HookAPI } from "@f5xc-salesdemos/xcsh";
11
+ import type { HookAPI } from "@f5-sales-demo/xcsh";
12
12
 
13
13
  export default function (pi: HookAPI) {
14
14
  pi.on("session_start", async (_event, ctx) => {
@@ -4,7 +4,7 @@
4
4
  * Creates git stash checkpoints at each turn so /branch can restore code state.
5
5
  * When branching, offers to restore code to that point in history.
6
6
  */
7
- import type { HookAPI } from "@f5xc-salesdemos/xcsh";
7
+ import type { HookAPI } from "@f5-sales-demo/xcsh";
8
8
 
9
9
  export default function (pi: HookAPI) {
10
10
  const checkpoints = new Map<string, string>();
@@ -11,9 +11,9 @@
11
11
  *
12
12
  * The generated prompt appears as a draft in the editor for review/editing.
13
13
  */
14
- import { complete, type Message } from "@f5xc-salesdemos/pi-ai";
15
- import type { HookAPI, SessionEntry } from "@f5xc-salesdemos/xcsh";
16
- import { BorderedLoader, convertToLlm, serializeConversation } from "@f5xc-salesdemos/xcsh";
14
+ import { complete, type Message } from "@f5-sales-demo/pi-ai";
15
+ import type { HookAPI, SessionEntry } from "@f5-sales-demo/xcsh";
16
+ import { BorderedLoader, convertToLlm, serializeConversation } from "@f5-sales-demo/xcsh";
17
17
 
18
18
  const SYSTEM_PROMPT = `You are a context transfer assistant. Given a conversation history and the user's goal for a new thread, generate a focused prompt that:
19
19
 
@@ -4,7 +4,7 @@
4
4
  * Prompts for confirmation before running potentially dangerous bash commands.
5
5
  * Patterns checked: rm -rf, sudo, chmod/chown 777
6
6
  */
7
- import type { HookAPI } from "@f5xc-salesdemos/xcsh";
7
+ import type { HookAPI } from "@f5-sales-demo/xcsh";
8
8
 
9
9
  export default function (pi: HookAPI) {
10
10
  const dangerousPatterns = [/\brm\s+(-rf?|--recursive)/i, /\bsudo\b/i, /\b(chmod|chown)\b.*777/i];
@@ -4,7 +4,7 @@
4
4
  * Blocks write and edit operations to protected paths.
5
5
  * Useful for preventing accidental modifications to sensitive files.
6
6
  */
7
- import type { HookAPI } from "@f5xc-salesdemos/xcsh";
7
+ import type { HookAPI } from "@f5-sales-demo/xcsh";
8
8
 
9
9
  export default function (pi: HookAPI) {
10
10
  const protectedPaths = [".env", ".git/", "node_modules/"];
@@ -6,9 +6,9 @@
6
6
  * 2. Shows a spinner while extracting (hides editor)
7
7
  * 3. Loads the result into the editor for user to fill in answers
8
8
  */
9
- import { complete, type UserMessage } from "@f5xc-salesdemos/pi-ai";
10
- import type { HookAPI } from "@f5xc-salesdemos/xcsh";
11
- import { BorderedLoader } from "@f5xc-salesdemos/xcsh";
9
+ import { complete, type UserMessage } from "@f5-sales-demo/pi-ai";
10
+ import type { HookAPI } from "@f5-sales-demo/xcsh";
11
+ import { BorderedLoader } from "@f5-sales-demo/xcsh";
12
12
 
13
13
  const SYSTEM_PROMPT = `You are a question extractor. Given text from a conversation, extract any questions that need answering and format them for the user to fill in.
14
14
 
@@ -4,7 +4,7 @@
4
4
  * Demonstrates ctx.ui.setStatus() for displaying persistent status text in the footer.
5
5
  * Shows turn progress with themed colors.
6
6
  */
7
- import type { HookAPI } from "@f5xc-salesdemos/xcsh";
7
+ import type { HookAPI } from "@f5-sales-demo/xcsh";
8
8
 
9
9
  export default function (pi: HookAPI) {
10
10
  let turnCount = 0;
@@ -4,7 +4,7 @@
4
4
  * Uses all defaults: discovers skills, hooks, tools, context files
5
5
  * from cwd and ~/.xcsh/agent. Model chosen from settings or first available.
6
6
  */
7
- import { createAgentSession } from "@f5xc-salesdemos/xcsh";
7
+ import { createAgentSession } from "@f5-sales-demo/xcsh";
8
8
 
9
9
  const { session } = await createAgentSession();
10
10
 
@@ -3,9 +3,9 @@
3
3
  *
4
4
  * Shows how to select a specific model and thinking level.
5
5
  */
6
- import { ThinkingLevel } from "@f5xc-salesdemos/pi-agent-core";
7
- import { getModel } from "@f5xc-salesdemos/pi-ai";
8
- import { createAgentSession, discoverAuthStorage, discoverModels } from "@f5xc-salesdemos/xcsh";
6
+ import { ThinkingLevel } from "@f5-sales-demo/pi-agent-core";
7
+ import { getModel } from "@f5-sales-demo/pi-ai";
8
+ import { createAgentSession, discoverAuthStorage, discoverModels } from "@f5-sales-demo/xcsh";
9
9
 
10
10
  // Set up auth storage and model registry
11
11
  const authStorage = await discoverAuthStorage();
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * Shows how to replace or modify the default system prompt.
5
5
  */
6
- import { createAgentSession, SessionManager } from "@f5xc-salesdemos/xcsh";
6
+ import { createAgentSession, SessionManager } from "@f5-sales-demo/xcsh";
7
7
 
8
8
  // Option 1: Replace prompt entirely
9
9
  const { session: session1 } = await createAgentSession({
@@ -4,7 +4,7 @@
4
4
  * Skills provide specialized instructions loaded into the system prompt.
5
5
  * Discover, filter, merge, or replace them.
6
6
  */
7
- import { createAgentSession, discoverSkills, SessionManager, type Skill } from "@f5xc-salesdemos/xcsh";
7
+ import { createAgentSession, discoverSkills, SessionManager, type Skill } from "@f5-sales-demo/xcsh";
8
8
 
9
9
  // Discover all skills from cwd/.xcsh/skills, ~/.xcsh/agent/skills, etc.
10
10
  const { skills: allSkills } = await discoverSkills();
@@ -13,7 +13,7 @@
13
13
  * An extension is a TypeScript file that exports a default function:
14
14
  * export default function (pi: ExtensionAPI) { ... }
15
15
  */
16
- import { createAgentSession, SessionManager } from "@f5xc-salesdemos/xcsh";
16
+ import { createAgentSession, SessionManager } from "@f5-sales-demo/xcsh";
17
17
 
18
18
  // Extensions are loaded from disk, not passed inline to createAgentSession.
19
19
  // Use the discovery mechanism:
@@ -38,7 +38,7 @@ console.log();
38
38
 
39
39
  // Example extension file (./my-logging-extension.ts):
40
40
  /*
41
- import type { ExtensionAPI } from "@f5xc-salesdemos/xcsh";
41
+ import type { ExtensionAPI } from "@f5-sales-demo/xcsh";
42
42
 
43
43
  export default function (pi: ExtensionAPI) {
44
44
  pi.on("agent_start", async () => {
@@ -4,7 +4,7 @@
4
4
  * Hooks intercept agent events for logging, blocking, or modification.
5
5
  * Note: "hooks" is now called "extensions" in the API.
6
6
  */
7
- import { createAgentSession, type ExtensionFactory, SessionManager } from "@f5xc-salesdemos/xcsh";
7
+ import { createAgentSession, type ExtensionFactory, SessionManager } from "@f5-sales-demo/xcsh";
8
8
 
9
9
  // Logging hook (now called extension)
10
10
  const loggingHook: ExtensionFactory = api => {
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * Context files provide project-specific instructions loaded into the system prompt.
5
5
  */
6
- import { createAgentSession, discoverContextFiles, SessionManager } from "@f5xc-salesdemos/xcsh";
6
+ import { createAgentSession, discoverContextFiles, SessionManager } from "@f5-sales-demo/xcsh";
7
7
 
8
8
  // Discover AGENTS.md files walking up from cwd
9
9
  const discovered = discoverContextFiles();
@@ -3,12 +3,7 @@
3
3
  *
4
4
  * File-based templates that inject content when invoked with /templatename.
5
5
  */
6
- import {
7
- createAgentSession,
8
- discoverPromptTemplates,
9
- type PromptTemplate,
10
- SessionManager,
11
- } from "@f5xc-salesdemos/xcsh";
6
+ import { createAgentSession, discoverPromptTemplates, type PromptTemplate, SessionManager } from "@f5-sales-demo/xcsh";
12
7
 
13
8
  // Discover templates from cwd/.pi/prompts/ and ~/.pi/agent/prompts/
14
9
  const discovered = await discoverPromptTemplates();
@@ -4,12 +4,7 @@
4
4
  * File-based commands that inject content when invoked with /commandname.
5
5
  * Note: File-based slash commands are now called "prompt templates".
6
6
  */
7
- import {
8
- createAgentSession,
9
- discoverPromptTemplates,
10
- type PromptTemplate,
11
- SessionManager,
12
- } from "@f5xc-salesdemos/xcsh";
7
+ import { createAgentSession, discoverPromptTemplates, type PromptTemplate, SessionManager } from "@f5-sales-demo/xcsh";
13
8
 
14
9
  // Discover prompt templates from cwd/.pi/prompts/ and ~/.pi/agent/prompts/
15
10
  const discovered = await discoverPromptTemplates();
@@ -10,7 +10,7 @@ import {
10
10
  discoverModels,
11
11
  ModelRegistry,
12
12
  SessionManager,
13
- } from "@f5xc-salesdemos/xcsh";
13
+ } from "@f5-sales-demo/xcsh";
14
14
 
15
15
  // Default: discoverAuthStorage() uses ~/.xcsh/agent/agent.db
16
16
  // discoverModels() loads built-in + custom models from ~/.xcsh/agent/models.json
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * Control session persistence: in-memory, new file, continue, or open specific.
5
5
  */
6
- import { createAgentSession, SessionManager } from "@f5xc-salesdemos/xcsh";
6
+ import { createAgentSession, SessionManager } from "@f5-sales-demo/xcsh";
7
7
 
8
8
  // In-memory (no persistence)
9
9
  const { session: inMemory } = await createAgentSession({
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "type": "module",
3
3
  "name": "@f5-sales-demo/xcsh",
4
- "version": "19.51.2",
4
+ "version": "19.51.5",
5
5
  "description": "Coding agent CLI with read, bash, edit, write tools and session management",
6
6
  "homepage": "https://github.com/f5-sales-demo/xcsh",
7
7
  "author": "Can Boluk",
@@ -54,13 +54,13 @@
54
54
  "dependencies": {
55
55
  "@agentclientprotocol/sdk": "0.16.1",
56
56
  "@mozilla/readability": "^0.6",
57
- "@f5-sales-demo/xcsh-stats": "workspace:*",
58
- "@f5-sales-demo/pi-agent-core": "workspace:*",
59
- "@f5-sales-demo/pi-ai": "workspace:*",
60
- "@f5-sales-demo/pi-natives": "workspace:*",
61
- "@f5-sales-demo/pi-resource-management": "workspace:*",
62
- "@f5-sales-demo/pi-tui": "workspace:*",
63
- "@f5-sales-demo/pi-utils": "workspace:*",
57
+ "@f5-sales-demo/xcsh-stats": "19.51.4",
58
+ "@f5-sales-demo/pi-agent-core": "19.51.4",
59
+ "@f5-sales-demo/pi-ai": "19.51.4",
60
+ "@f5-sales-demo/pi-natives": "19.51.4",
61
+ "@f5-sales-demo/pi-resource-management": "19.51.4",
62
+ "@f5-sales-demo/pi-tui": "19.51.4",
63
+ "@f5-sales-demo/pi-utils": "19.51.4",
64
64
  "@sinclair/typebox": "^0.34",
65
65
  "@xterm/headless": "^6.0",
66
66
  "ajv": "^8.20",
@@ -205,7 +205,7 @@ async function run() {
205
205
  if (!ref) {
206
206
  fail("form_input", "Name field not found");
207
207
  } else {
208
- await tool("form_input", { ref, value: "uat-test-" + Date.now() });
208
+ await tool("form_input", { ref, value: `uat-test-${Date.now()}` });
209
209
  pass("form_input", `filled ref ${ref} with commitInputValue`);
210
210
  }
211
211
  } catch (e) {
@@ -314,7 +314,7 @@ async function run() {
314
314
  );
315
315
 
316
316
  // --- SUMMARY ---
317
- console.log("\n" + "=".repeat(60));
317
+ console.log(`\n${"=".repeat(60)}`);
318
318
  console.log("UAT SUMMARY");
319
319
  console.log("=".repeat(60));
320
320
  const passed = results.filter(r => r.status === "PASS").length;
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env bun
2
- import { prompt } from "@f5xc-salesdemos/pi-utils";
2
+ import { prompt } from "@f5-sales-demo/pi-utils";
3
3
  /**
4
4
  * Format prompt files (mixed XML + Markdown + Handlebars).
5
5
  *
@@ -92,7 +92,7 @@ interface RawIndex {
92
92
  "x-f5xc-acronyms"?: Record<string, unknown>;
93
93
  }
94
94
 
95
- const REPO = "f5xc-salesdemos/api-specs-enriched";
95
+ const REPO = "f5-sales-demo/api-specs-enriched";
96
96
  const outputPath = path.resolve(import.meta.dir, "../src/internal-urls/api-spec-index.generated.ts");
97
97
  const catalogOutputPath = path.resolve(import.meta.dir, "../src/internal-urls/api-catalog-index.generated.ts");
98
98
 
@@ -15,7 +15,7 @@ const LOCAL_BRANDING_PATH = path.resolve(
15
15
  "branding.yaml",
16
16
  );
17
17
 
18
- const GITHUB_RAW_URL = "https://raw.githubusercontent.com/f5xc-salesdemos/api-specs-enriched/main/config/branding.yaml";
18
+ const GITHUB_RAW_URL = "https://raw.githubusercontent.com/f5-sales-demo/api-specs-enriched/main/config/branding.yaml";
19
19
 
20
20
  interface BrandingCanonical {
21
21
  long_form: string;
@@ -15,7 +15,7 @@ const repoRoot = path.resolve(import.meta.dir, "../../..");
15
15
  const outputPath = path.resolve(import.meta.dir, "../src/internal-urls/build-info.generated.ts");
16
16
  const utilsPackageJsonPath = path.resolve(repoRoot, "packages/utils/package.json");
17
17
 
18
- const REPO_SLUG = "f5xc-salesdemos/xcsh";
18
+ const REPO_SLUG = "f5-sales-demo/xcsh";
19
19
  const REPO_URL = `https://github.com/${REPO_SLUG}`;
20
20
 
21
21
  async function git(args: string[]): Promise<string> {
@@ -15,7 +15,7 @@ const LOCAL_JSON_PATH = path.resolve(
15
15
  );
16
16
 
17
17
  const GITHUB_RAW_URL =
18
- "https://raw.githubusercontent.com/f5xc-salesdemos/terraform-provider-xcsh/main/docs/terraform-llms-index.json";
18
+ "https://raw.githubusercontent.com/f5-sales-demo/terraform-provider-xcsh/main/docs/terraform-llms-index.json";
19
19
 
20
20
  async function loadTerraformIndex(): Promise<unknown> {
21
21
  const localFile = Bun.file(LOCAL_JSON_PATH);
@@ -17,7 +17,7 @@
17
17
  *
18
18
  * Tip: pipe through `less -R` to page while keeping color.
19
19
  */
20
- import type { MermaidColorMode } from "@f5xc-salesdemos/pi-utils";
20
+ import type { MermaidColorMode } from "@f5-sales-demo/pi-utils";
21
21
  import { renderMermaidThemed } from "../src/modes/theme/mermaid-cache";
22
22
  import { getThemeByName } from "../src/modes/theme/theme";
23
23
  import { XC_MERMAID_SAMPLES, type XcMermaidSample } from "../test/fixtures/xc-mermaid-samples";
@@ -126,7 +126,7 @@ async function main(): Promise<void> {
126
126
  theme.fg("muted", ` Rendered ${samples.length} sample(s). Inspect the colors above and note anything to tune `) +
127
127
  theme.fg("dim", "(borders, labels, edges, arrows, per-node tints, contrast)."),
128
128
  );
129
- console.log(rule("━") + "\n");
129
+ console.log(`${rule("━")}\n`);
130
130
  }
131
131
 
132
132
  await main();
@@ -1,4 +1,4 @@
1
- import { logger } from "@f5xc-salesdemos/pi-utils";
1
+ import { logger } from "@f5-sales-demo/pi-utils";
2
2
 
3
3
  const DELIVERY_RETRY_BASE_MS = 500;
4
4
  const DELIVERY_RETRY_MAX_MS = 30_000;
@@ -1,4 +1,4 @@
1
- import { matchesKey, replaceTabs, Text, truncateToWidth, visibleWidth } from "@f5xc-salesdemos/pi-tui";
1
+ import { matchesKey, replaceTabs, Text, truncateToWidth, visibleWidth } from "@f5-sales-demo/pi-tui";
2
2
  import type { Theme } from "../modes/theme/theme";
3
3
  import { formatElapsed, formatNum } from "./helpers";
4
4
  import {
@@ -1,6 +1,6 @@
1
1
  import * as fs from "node:fs";
2
2
  import * as path from "node:path";
3
- import { isEnoent } from "@f5xc-salesdemos/pi-utils";
3
+ import { isEnoent } from "@f5-sales-demo/pi-utils";
4
4
  import { parseCommandArgs } from "../utils/command-args";
5
5
  import type { ASIData, ASIValue, MetricDirection, NumericMetricMap, PendingRunSummary } from "./types";
6
6
 
@@ -1,7 +1,7 @@
1
1
  import * as fs from "node:fs";
2
2
  import * as path from "node:path";
3
- import type { AutocompleteItem } from "@f5xc-salesdemos/pi-tui";
4
- import { prompt } from "@f5xc-salesdemos/pi-utils";
3
+ import type { AutocompleteItem } from "@f5-sales-demo/pi-tui";
4
+ import { prompt } from "@f5-sales-demo/pi-utils";
5
5
  import type { ExtensionContext, ExtensionFactory } from "../extensibility/extensions";
6
6
  import commandResumeTemplate from "./command-resume.md" with { type: "text" };
7
7
  import { pathMatchesContractPath } from "./contract";
@@ -1,7 +1,7 @@
1
1
  import * as fs from "node:fs";
2
2
  import * as path from "node:path";
3
- import { StringEnum } from "@f5xc-salesdemos/pi-ai";
4
- import { type Component, Text } from "@f5xc-salesdemos/pi-tui";
3
+ import { StringEnum } from "@f5-sales-demo/pi-ai";
4
+ import { type Component, Text } from "@f5-sales-demo/pi-tui";
5
5
  import { Type } from "@sinclair/typebox";
6
6
  import type { ToolDefinition } from "../../extensibility/extensions";
7
7
  import type { Theme } from "../../modes/theme/theme";
@@ -1,8 +1,8 @@
1
1
  import * as fs from "node:fs";
2
2
  import * as path from "node:path";
3
- import { StringEnum } from "@f5xc-salesdemos/pi-ai";
4
- import { type Component, Text } from "@f5xc-salesdemos/pi-tui";
5
- import { logger } from "@f5xc-salesdemos/pi-utils";
3
+ import { StringEnum } from "@f5-sales-demo/pi-ai";
4
+ import { type Component, Text } from "@f5-sales-demo/pi-tui";
5
+ import { logger } from "@f5-sales-demo/pi-utils";
6
6
  import { Type } from "@sinclair/typebox";
7
7
  import type { ToolDefinition } from "../../extensibility/extensions";
8
8
  import type { Theme } from "../../modes/theme/theme";
@@ -1,8 +1,8 @@
1
1
  import * as childProcess from "node:child_process";
2
2
  import * as fs from "node:fs";
3
3
  import * as path from "node:path";
4
- import { type Component, Text } from "@f5xc-salesdemos/pi-tui";
5
- import { formatBytes } from "@f5xc-salesdemos/pi-utils";
4
+ import { type Component, Text } from "@f5-sales-demo/pi-tui";
5
+ import { formatBytes } from "@f5-sales-demo/pi-utils";
6
6
  import { Type } from "@sinclair/typebox";
7
7
  import type { ToolDefinition } from "../../extensibility/extensions";
8
8
  import type { Theme } from "../../modes/theme/theme";
@@ -1,4 +1,4 @@
1
- import type { AgentToolResult } from "@f5xc-salesdemos/pi-agent-core";
1
+ import type { AgentToolResult } from "@f5-sales-demo/pi-agent-core";
2
2
  import type { ExtensionAPI, ExtensionContext } from "../extensibility/extensions";
3
3
  import type { TruncationResult } from "../session/streaming-output";
4
4