shortcutxl 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 (423) hide show
  1. package/README.md +59 -0
  2. package/agent-docs/README.md +397 -0
  3. package/agent-docs/docs/compaction.md +390 -0
  4. package/agent-docs/docs/custom-provider.md +580 -0
  5. package/agent-docs/docs/development.md +69 -0
  6. package/agent-docs/docs/extensions.md +1971 -0
  7. package/agent-docs/docs/json.md +79 -0
  8. package/agent-docs/docs/keybindings.md +174 -0
  9. package/agent-docs/docs/models.md +293 -0
  10. package/agent-docs/docs/packages.md +209 -0
  11. package/agent-docs/docs/prompt-templates.md +67 -0
  12. package/agent-docs/docs/providers.md +186 -0
  13. package/agent-docs/docs/rpc.md +1317 -0
  14. package/agent-docs/docs/sdk.md +962 -0
  15. package/agent-docs/docs/session.md +412 -0
  16. package/agent-docs/docs/settings.md +223 -0
  17. package/agent-docs/docs/shell-aliases.md +13 -0
  18. package/agent-docs/docs/skills.md +231 -0
  19. package/agent-docs/docs/terminal-setup.md +70 -0
  20. package/agent-docs/docs/termux.md +127 -0
  21. package/agent-docs/docs/themes.md +295 -0
  22. package/agent-docs/docs/tree.md +219 -0
  23. package/agent-docs/docs/tui.md +887 -0
  24. package/agent-docs/docs/windows.md +17 -0
  25. package/agent-docs/examples/README.md +25 -0
  26. package/agent-docs/examples/extensions/README.md +205 -0
  27. package/agent-docs/examples/extensions/antigravity-image-gen.ts +447 -0
  28. package/agent-docs/examples/extensions/auto-commit-on-exit.ts +49 -0
  29. package/agent-docs/examples/extensions/bash-spawn-hook.ts +30 -0
  30. package/agent-docs/examples/extensions/bookmark.ts +50 -0
  31. package/agent-docs/examples/extensions/built-in-tool-renderer.ts +256 -0
  32. package/agent-docs/examples/extensions/claude-rules.ts +86 -0
  33. package/agent-docs/examples/extensions/commands.ts +75 -0
  34. package/agent-docs/examples/extensions/confirm-destructive.ts +59 -0
  35. package/agent-docs/examples/extensions/custom-compaction.ts +126 -0
  36. package/agent-docs/examples/extensions/custom-footer.ts +63 -0
  37. package/agent-docs/examples/extensions/custom-header.ts +73 -0
  38. package/agent-docs/examples/extensions/custom-provider-anthropic/index.ts +660 -0
  39. package/agent-docs/examples/extensions/custom-provider-anthropic/package-lock.json +24 -0
  40. package/agent-docs/examples/extensions/custom-provider-anthropic/package.json +19 -0
  41. package/agent-docs/examples/extensions/custom-provider-gitlab-duo/index.ts +362 -0
  42. package/agent-docs/examples/extensions/custom-provider-gitlab-duo/package.json +16 -0
  43. package/agent-docs/examples/extensions/custom-provider-gitlab-duo/test.ts +88 -0
  44. package/agent-docs/examples/extensions/custom-provider-qwen-cli/index.ts +349 -0
  45. package/agent-docs/examples/extensions/custom-provider-qwen-cli/package.json +16 -0
  46. package/agent-docs/examples/extensions/dirty-repo-guard.ts +56 -0
  47. package/agent-docs/examples/extensions/doom-overlay/README.md +46 -0
  48. package/agent-docs/examples/extensions/doom-overlay/doom/build.sh +152 -0
  49. package/agent-docs/examples/extensions/doom-overlay/doom/doomgeneric_pi.c +72 -0
  50. package/agent-docs/examples/extensions/doom-overlay/doom-component.ts +133 -0
  51. package/agent-docs/examples/extensions/doom-overlay/doom-engine.ts +186 -0
  52. package/agent-docs/examples/extensions/doom-overlay/doom-keys.ts +108 -0
  53. package/agent-docs/examples/extensions/doom-overlay/index.ts +74 -0
  54. package/agent-docs/examples/extensions/doom-overlay/wad-finder.ts +51 -0
  55. package/agent-docs/examples/extensions/dynamic-resources/SKILL.md +8 -0
  56. package/agent-docs/examples/extensions/dynamic-resources/dynamic.json +79 -0
  57. package/agent-docs/examples/extensions/dynamic-resources/dynamic.md +5 -0
  58. package/agent-docs/examples/extensions/dynamic-resources/index.ts +15 -0
  59. package/agent-docs/examples/extensions/dynamic-tools.ts +77 -0
  60. package/agent-docs/examples/extensions/event-bus.ts +43 -0
  61. package/agent-docs/examples/extensions/file-trigger.ts +41 -0
  62. package/agent-docs/examples/extensions/git-checkpoint.ts +53 -0
  63. package/agent-docs/examples/extensions/handoff.ts +155 -0
  64. package/agent-docs/examples/extensions/hello.ts +25 -0
  65. package/agent-docs/examples/extensions/inline-bash.ts +94 -0
  66. package/agent-docs/examples/extensions/input-transform.ts +43 -0
  67. package/agent-docs/examples/extensions/interactive-shell.ts +209 -0
  68. package/agent-docs/examples/extensions/mac-system-theme.ts +47 -0
  69. package/agent-docs/examples/extensions/message-renderer.ts +59 -0
  70. package/agent-docs/examples/extensions/minimal-mode.ts +430 -0
  71. package/agent-docs/examples/extensions/modal-editor.ts +90 -0
  72. package/agent-docs/examples/extensions/model-status.ts +31 -0
  73. package/agent-docs/examples/extensions/notify.ts +55 -0
  74. package/agent-docs/examples/extensions/overlay-qa-tests.ts +936 -0
  75. package/agent-docs/examples/extensions/overlay-test.ts +159 -0
  76. package/agent-docs/examples/extensions/permission-gate.ts +37 -0
  77. package/agent-docs/examples/extensions/pirate.ts +47 -0
  78. package/agent-docs/examples/extensions/plan-mode/README.md +65 -0
  79. package/agent-docs/examples/extensions/plan-mode/index.ts +363 -0
  80. package/agent-docs/examples/extensions/plan-mode/utils.ts +173 -0
  81. package/agent-docs/examples/extensions/preset.ts +418 -0
  82. package/agent-docs/examples/extensions/protected-paths.ts +30 -0
  83. package/agent-docs/examples/extensions/qna.ts +122 -0
  84. package/agent-docs/examples/extensions/question.ts +278 -0
  85. package/agent-docs/examples/extensions/questionnaire.ts +440 -0
  86. package/agent-docs/examples/extensions/rainbow-editor.ts +90 -0
  87. package/agent-docs/examples/extensions/reload-runtime.ts +37 -0
  88. package/agent-docs/examples/extensions/rpc-demo.ts +124 -0
  89. package/agent-docs/examples/extensions/sandbox/index.ts +324 -0
  90. package/agent-docs/examples/extensions/sandbox/package-lock.json +92 -0
  91. package/agent-docs/examples/extensions/sandbox/package.json +19 -0
  92. package/agent-docs/examples/extensions/send-user-message.ts +97 -0
  93. package/agent-docs/examples/extensions/session-name.ts +27 -0
  94. package/agent-docs/examples/extensions/shutdown-command.ts +69 -0
  95. package/agent-docs/examples/extensions/snake.ts +343 -0
  96. package/agent-docs/examples/extensions/space-invaders.ts +566 -0
  97. package/agent-docs/examples/extensions/ssh.ts +233 -0
  98. package/agent-docs/examples/extensions/status-line.ts +40 -0
  99. package/agent-docs/examples/extensions/subagent/README.md +172 -0
  100. package/agent-docs/examples/extensions/subagent/agents/planner.md +37 -0
  101. package/agent-docs/examples/extensions/subagent/agents/reviewer.md +35 -0
  102. package/agent-docs/examples/extensions/subagent/agents/scout.md +50 -0
  103. package/agent-docs/examples/extensions/subagent/agents/worker.md +24 -0
  104. package/agent-docs/examples/extensions/subagent/agents.ts +130 -0
  105. package/agent-docs/examples/extensions/subagent/index.ts +1068 -0
  106. package/agent-docs/examples/extensions/subagent/prompts/implement-and-review.md +10 -0
  107. package/agent-docs/examples/extensions/subagent/prompts/implement.md +10 -0
  108. package/agent-docs/examples/extensions/subagent/prompts/scout-and-plan.md +9 -0
  109. package/agent-docs/examples/extensions/summarize.ts +206 -0
  110. package/agent-docs/examples/extensions/system-prompt-header.ts +17 -0
  111. package/agent-docs/examples/extensions/timed-confirm.ts +72 -0
  112. package/agent-docs/examples/extensions/titlebar-spinner.ts +58 -0
  113. package/agent-docs/examples/extensions/todo.ts +314 -0
  114. package/agent-docs/examples/extensions/tool-override.ts +146 -0
  115. package/agent-docs/examples/extensions/tools.ts +145 -0
  116. package/agent-docs/examples/extensions/trigger-compact.ts +40 -0
  117. package/agent-docs/examples/extensions/truncated-tool.ts +194 -0
  118. package/agent-docs/examples/extensions/widget-placement.ts +17 -0
  119. package/agent-docs/examples/extensions/with-deps/index.ts +37 -0
  120. package/agent-docs/examples/extensions/with-deps/package-lock.json +31 -0
  121. package/agent-docs/examples/extensions/with-deps/package.json +22 -0
  122. package/agent-docs/examples/rpc-extension-ui.ts +654 -0
  123. package/agent-docs/examples/sdk/01-minimal.ts +22 -0
  124. package/agent-docs/examples/sdk/02-custom-model.ts +48 -0
  125. package/agent-docs/examples/sdk/03-custom-prompt.ts +55 -0
  126. package/agent-docs/examples/sdk/04-skills.ts +53 -0
  127. package/agent-docs/examples/sdk/05-tools.ts +56 -0
  128. package/agent-docs/examples/sdk/06-extensions.ts +88 -0
  129. package/agent-docs/examples/sdk/07-context-files.ts +40 -0
  130. package/agent-docs/examples/sdk/08-prompt-templates.ts +47 -0
  131. package/agent-docs/examples/sdk/09-api-keys-and-oauth.ts +48 -0
  132. package/agent-docs/examples/sdk/10-settings.ts +54 -0
  133. package/agent-docs/examples/sdk/11-sessions.ts +48 -0
  134. package/agent-docs/examples/sdk/12-full-control.ts +82 -0
  135. package/agent-docs/examples/sdk/README.md +144 -0
  136. package/agent-docs/xll-skill.md +61 -0
  137. package/agent-docs/xll-spec.md +110 -0
  138. package/dist/cli/args.js +290 -0
  139. package/dist/cli/config-selector.js +31 -0
  140. package/dist/cli/file-processor.js +79 -0
  141. package/dist/cli/list-models.js +92 -0
  142. package/dist/cli/package-commands.js +210 -0
  143. package/dist/cli/report-settings-errors.js +11 -0
  144. package/dist/cli/session-picker.js +34 -0
  145. package/dist/cli.js +19 -0
  146. package/dist/config.js +288 -0
  147. package/dist/core/abort.js +15 -0
  148. package/dist/core/agent-loop.js +352 -0
  149. package/dist/core/agent-session.js +2019 -0
  150. package/dist/core/agent.js +410 -0
  151. package/dist/core/auth-storage.js +456 -0
  152. package/dist/core/bash-executor.js +222 -0
  153. package/dist/core/compaction/branch-summarization.js +242 -0
  154. package/dist/core/compaction/compaction.js +610 -0
  155. package/dist/core/compaction/index.js +7 -0
  156. package/dist/core/compaction/utils.js +139 -0
  157. package/dist/core/defaults.js +6 -0
  158. package/dist/core/diagnostics.js +2 -0
  159. package/dist/core/event-bus.js +25 -0
  160. package/dist/core/exec.js +71 -0
  161. package/dist/core/export-html/ansi-to-html.js +256 -0
  162. package/dist/core/export-html/index.js +238 -0
  163. package/dist/core/export-html/session-view-model.js +342 -0
  164. package/dist/core/export-html/template.css +1110 -0
  165. package/dist/core/export-html/template.html +76 -0
  166. package/dist/core/export-html/template.js +1990 -0
  167. package/dist/core/export-html/tool-renderer.js +63 -0
  168. package/dist/core/export-html/vendor/highlight.min.js +7725 -0
  169. package/dist/core/export-html/vendor/marked.min.js +1803 -0
  170. package/dist/core/extensions/index.js +9 -0
  171. package/dist/core/extensions/loader.js +422 -0
  172. package/dist/core/extensions/runner.js +651 -0
  173. package/dist/core/extensions/types.js +35 -0
  174. package/dist/core/extensions/wrapper.js +102 -0
  175. package/dist/core/footer-data-provider.js +162 -0
  176. package/dist/core/index.js +9 -0
  177. package/dist/core/keybindings.js +153 -0
  178. package/dist/core/messages.js +133 -0
  179. package/dist/core/model-registry.js +539 -0
  180. package/dist/core/model-resolver.js +370 -0
  181. package/dist/core/package-manager.js +1485 -0
  182. package/dist/core/prompt-templates.js +253 -0
  183. package/dist/core/resolve-config-value.js +59 -0
  184. package/dist/core/resource-loader.js +700 -0
  185. package/dist/core/sdk.js +197 -0
  186. package/dist/core/session-bash.js +99 -0
  187. package/dist/core/session-compaction.js +165 -0
  188. package/dist/core/session-manager.js +1153 -0
  189. package/dist/core/session-models.js +99 -0
  190. package/dist/core/session-retry.js +155 -0
  191. package/dist/core/settings-manager.js +572 -0
  192. package/dist/core/skills.js +382 -0
  193. package/dist/core/slash-commands.js +31 -0
  194. package/dist/core/system-prompt.js +161 -0
  195. package/dist/core/theme.js +770 -0
  196. package/dist/core/timings.js +26 -0
  197. package/dist/core/tools/bash.js +258 -0
  198. package/dist/core/tools/edit-diff.js +245 -0
  199. package/dist/core/tools/edit.js +148 -0
  200. package/dist/core/tools/find.js +208 -0
  201. package/dist/core/tools/grep.js +246 -0
  202. package/dist/core/tools/index.js +67 -0
  203. package/dist/core/tools/ls.js +123 -0
  204. package/dist/core/tools/path-utils.js +81 -0
  205. package/dist/core/tools/read.js +160 -0
  206. package/dist/core/tools/truncate.js +70 -0
  207. package/dist/core/tools/write.js +82 -0
  208. package/dist/custom/agents/action.js +13 -0
  209. package/dist/custom/agents/document-reader.js +70 -0
  210. package/dist/custom/agents/general.js +26 -0
  211. package/dist/custom/agents/index.js +49 -0
  212. package/dist/custom/agents/installation.js +13 -0
  213. package/dist/custom/agents/types.js +7 -0
  214. package/dist/custom/auth/refresh-timer.js +33 -0
  215. package/dist/custom/auth/shortcut-oauth.js +145 -0
  216. package/dist/custom/constants.js +21 -0
  217. package/dist/custom/context/workbook-summary.js +73 -0
  218. package/dist/custom/credits/shortcut-credits.js +29 -0
  219. package/dist/custom/cron/cron-daemon-entry.js +18 -0
  220. package/dist/custom/cron/daemon-ipc.js +131 -0
  221. package/dist/custom/cron/daemon.js +224 -0
  222. package/dist/custom/cron/jobs.js +226 -0
  223. package/dist/custom/cron/run-log.js +51 -0
  224. package/dist/custom/cron/schedule.js +72 -0
  225. package/dist/custom/cron/status-line.js +98 -0
  226. package/dist/custom/cron/store.js +87 -0
  227. package/dist/custom/cron/types.js +8 -0
  228. package/dist/custom/dev/index.js +59 -0
  229. package/dist/custom/dev/trace-export.js +58 -0
  230. package/dist/custom/ensure-excel.js +63 -0
  231. package/dist/custom/excel-config.js +36 -0
  232. package/dist/custom/preflight.js +422 -0
  233. package/dist/custom/prompts/action.js +100 -0
  234. package/dist/custom/prompts/api.js +66 -0
  235. package/dist/custom/prompts/installation.js +124 -0
  236. package/dist/custom/prompts/shared.js +138 -0
  237. package/dist/custom/providers/llm-usage.js +42 -0
  238. package/dist/custom/providers/message-converter.js +74 -0
  239. package/dist/custom/providers/provider-ids.js +9 -0
  240. package/dist/custom/providers/register-openai-codex-provider.js +27 -0
  241. package/dist/custom/providers/register-shortcut-provider.js +52 -0
  242. package/dist/custom/providers/shortcut-invoke.js +117 -0
  243. package/dist/custom/providers/shortcut-stream.js +252 -0
  244. package/dist/custom/providers/sse-protocol.js +38 -0
  245. package/dist/custom/sync-xll.js +130 -0
  246. package/dist/custom/tools/cron.js +413 -0
  247. package/dist/custom/tools/excel-exec.js +167 -0
  248. package/dist/custom/tools/excel-range.js +50 -0
  249. package/dist/custom/tools/llm-analysis.js +265 -0
  250. package/dist/custom/tools/render-helpers.js +38 -0
  251. package/dist/custom/tools/switch-mode.js +94 -0
  252. package/dist/custom/tools/task/agents.js +6 -0
  253. package/dist/custom/tools/task/index.js +8 -0
  254. package/dist/custom/tools/task/render.js +348 -0
  255. package/dist/custom/tools/task/subprocess.js +320 -0
  256. package/dist/custom/tools/task/task.js +205 -0
  257. package/dist/custom/tools/todo-list.js +195 -0
  258. package/dist/custom/tracing/session-upload.js +93 -0
  259. package/dist/index.js +45 -0
  260. package/dist/main.js +613 -0
  261. package/dist/migrations.js +265 -0
  262. package/dist/modes/index.js +8 -0
  263. package/dist/modes/interactive/components/armin.js +337 -0
  264. package/dist/modes/interactive/components/assistant-message.js +94 -0
  265. package/dist/modes/interactive/components/bash-execution.js +171 -0
  266. package/dist/modes/interactive/components/bordered-loader.js +51 -0
  267. package/dist/modes/interactive/components/branch-summary-message.js +45 -0
  268. package/dist/modes/interactive/components/compaction-summary-message.js +46 -0
  269. package/dist/modes/interactive/components/config-selector.js +488 -0
  270. package/dist/modes/interactive/components/countdown-timer.js +33 -0
  271. package/dist/modes/interactive/components/custom-editor.js +93 -0
  272. package/dist/modes/interactive/components/custom-message.js +81 -0
  273. package/dist/modes/interactive/components/daxnuts.js +140 -0
  274. package/dist/modes/interactive/components/diff.js +133 -0
  275. package/dist/modes/interactive/components/dynamic-border.js +21 -0
  276. package/dist/modes/interactive/components/extension-editor.js +105 -0
  277. package/dist/modes/interactive/components/extension-input.js +61 -0
  278. package/dist/modes/interactive/components/extension-selector.js +78 -0
  279. package/dist/modes/interactive/components/footer.js +309 -0
  280. package/dist/modes/interactive/components/index.js +33 -0
  281. package/dist/modes/interactive/components/keybinding-hints.js +61 -0
  282. package/dist/modes/interactive/components/layout.js +64 -0
  283. package/dist/modes/interactive/components/login-dialog.js +148 -0
  284. package/dist/modes/interactive/components/model-selector.js +237 -0
  285. package/dist/modes/interactive/components/oauth-selector.js +111 -0
  286. package/dist/modes/interactive/components/session-selector-search.js +157 -0
  287. package/dist/modes/interactive/components/session-selector.js +860 -0
  288. package/dist/modes/interactive/components/settings-selector.js +123 -0
  289. package/dist/modes/interactive/components/show-images-selector.js +35 -0
  290. package/dist/modes/interactive/components/skill-invocation-message.js +48 -0
  291. package/dist/modes/interactive/components/theme-selector.js +47 -0
  292. package/dist/modes/interactive/components/thinking-selector.js +47 -0
  293. package/dist/modes/interactive/components/tool-execution.js +789 -0
  294. package/dist/modes/interactive/components/tool-group.js +106 -0
  295. package/dist/modes/interactive/components/tree-selector.js +962 -0
  296. package/dist/modes/interactive/components/user-message-selector.js +115 -0
  297. package/dist/modes/interactive/components/user-message.js +48 -0
  298. package/dist/modes/interactive/components/visual-truncate.js +33 -0
  299. package/dist/modes/interactive/file-attachments.js +135 -0
  300. package/dist/modes/interactive/interactive-mode.js +3775 -0
  301. package/dist/modes/interactive/theme/dark.json +85 -0
  302. package/dist/modes/interactive/theme/light.json +85 -0
  303. package/dist/modes/interactive/theme/theme-schema.json +335 -0
  304. package/dist/modes/interactive/theme/theme.js +177 -0
  305. package/dist/modes/print-mode.js +101 -0
  306. package/dist/modes/rpc/rpc-client.js +387 -0
  307. package/dist/modes/rpc/rpc-mode.js +509 -0
  308. package/dist/modes/rpc/rpc-types.js +8 -0
  309. package/dist/subagent-entry.js +145 -0
  310. package/dist/tool-names.js +34 -0
  311. package/dist/tui/autocomplete.js +596 -0
  312. package/dist/tui/components/box.js +104 -0
  313. package/dist/tui/components/cancellable-loader.js +35 -0
  314. package/dist/tui/components/editor.js +1679 -0
  315. package/dist/tui/components/image.js +69 -0
  316. package/dist/tui/components/input.js +433 -0
  317. package/dist/tui/components/loader.js +49 -0
  318. package/dist/tui/components/markdown.js +629 -0
  319. package/dist/tui/components/select-list.js +152 -0
  320. package/dist/tui/components/settings-list.js +185 -0
  321. package/dist/tui/components/spacer.js +23 -0
  322. package/dist/tui/components/text.js +89 -0
  323. package/dist/tui/components/truncated-text.js +51 -0
  324. package/dist/tui/editor-component.js +2 -0
  325. package/dist/tui/fuzzy.js +107 -0
  326. package/dist/tui/get-east-asian-width/index.js +32 -0
  327. package/dist/tui/get-east-asian-width/lookup.js +404 -0
  328. package/dist/tui/index.js +32 -0
  329. package/dist/tui/keybindings.js +114 -0
  330. package/dist/tui/keys.js +959 -0
  331. package/dist/tui/kill-ring.js +44 -0
  332. package/dist/tui/stdin-buffer.js +317 -0
  333. package/dist/tui/terminal-image.js +288 -0
  334. package/dist/tui/terminal.js +249 -0
  335. package/dist/tui/tui/autocomplete.js +596 -0
  336. package/dist/tui/tui/components/box.js +106 -0
  337. package/dist/tui/tui/components/cancellable-loader.js +35 -0
  338. package/dist/tui/tui/components/editor.js +1679 -0
  339. package/dist/tui/tui/components/image.js +69 -0
  340. package/dist/tui/tui/components/input.js +433 -0
  341. package/dist/tui/tui/components/loader.js +49 -0
  342. package/dist/tui/tui/components/markdown.js +629 -0
  343. package/dist/tui/tui/components/select-list.js +152 -0
  344. package/dist/tui/tui/components/settings-list.js +185 -0
  345. package/dist/tui/tui/components/spacer.js +23 -0
  346. package/dist/tui/tui/components/text.js +91 -0
  347. package/dist/tui/tui/components/truncated-text.js +51 -0
  348. package/dist/tui/tui/editor-component.js +2 -0
  349. package/dist/tui/tui/fuzzy.js +107 -0
  350. package/dist/tui/tui/get-east-asian-width/index.js +32 -0
  351. package/dist/tui/tui/get-east-asian-width/lookup.js +404 -0
  352. package/dist/tui/tui/index.js +32 -0
  353. package/dist/tui/tui/keybindings.js +114 -0
  354. package/dist/tui/tui/keys.js +959 -0
  355. package/dist/tui/tui/kill-ring.js +44 -0
  356. package/dist/tui/tui/stdin-buffer.js +317 -0
  357. package/dist/tui/tui/terminal-image.js +288 -0
  358. package/dist/tui/tui/terminal.js +249 -0
  359. package/dist/tui/tui/tui.js +955 -0
  360. package/dist/tui/tui/undo-stack.js +25 -0
  361. package/dist/tui/tui/utils.js +800 -0
  362. package/dist/tui/tui.js +955 -0
  363. package/dist/tui/undo-stack.js +25 -0
  364. package/dist/tui/utils.js +800 -0
  365. package/dist/utils/changelog.js +87 -0
  366. package/dist/utils/clipboard-image.js +164 -0
  367. package/dist/utils/clipboard-native.js +14 -0
  368. package/dist/utils/clipboard.js +67 -0
  369. package/dist/utils/frontmatter.js +26 -0
  370. package/dist/utils/git.js +166 -0
  371. package/dist/utils/image-convert.js +35 -0
  372. package/dist/utils/image-resize.js +183 -0
  373. package/dist/utils/mime.js +26 -0
  374. package/dist/utils/photon.js +121 -0
  375. package/dist/utils/shell.js +217 -0
  376. package/dist/utils/sleep.js +17 -0
  377. package/dist/utils/tools-manager.js +259 -0
  378. package/package.json +78 -0
  379. package/skills/excel-com-api/SKILL.md +74 -0
  380. package/skills/excel-com-api/excel-type-library.py +27767 -0
  381. package/skills/excel-com-api/office-type-library.py +10867 -0
  382. package/skills/integrations/SKILL.md +138 -0
  383. package/skills/integrations/alphasense.md +457 -0
  384. package/skills/integrations/bloomberg.md +803 -0
  385. package/skills/integrations/calcbench.md +315 -0
  386. package/skills/integrations/capiq.md +848 -0
  387. package/skills/integrations/dynamics-365-finance.md +354 -0
  388. package/skills/integrations/earnings_transcripts.md +387 -0
  389. package/skills/integrations/factset.md +758 -0
  390. package/skills/integrations/ice-fixed-income.md +344 -0
  391. package/skills/integrations/moodys-analytics.md +313 -0
  392. package/skills/integrations/morningstar.md +433 -0
  393. package/skills/integrations/nasdaq-data-link.md +249 -0
  394. package/skills/integrations/pitchbook.md +413 -0
  395. package/skills/integrations/preqin.md +422 -0
  396. package/skills/integrations/quickbooks.md +289 -0
  397. package/skills/integrations/quickfs.md +314 -0
  398. package/skills/integrations/refinitiv.md +473 -0
  399. package/skills/integrations/sage-intacct.md +401 -0
  400. package/skills/integrations/visible-alpha.md +320 -0
  401. package/skills/integrations/xero.md +393 -0
  402. package/skills/integrations/ycharts.md +306 -0
  403. package/skills/pdf-creation/SKILL.md +93 -0
  404. package/skills/pdf-extraction/SKILL.md +32 -0
  405. package/skills/powerpoint-creation/SKILL.md +110 -0
  406. package/skills/sec-edgar/SKILL.md +127 -0
  407. package/skills/sec-edgar/sec_to_pdf.py +109 -0
  408. package/xll/ShortcutXL.xll +0 -0
  409. package/xll/modules/debug_render.py +272 -0
  410. package/xll/modules/gameboy.py +241 -0
  411. package/xll/modules/pong.py +188 -0
  412. package/xll/modules/shortcut_xl/__init__.py +18 -0
  413. package/xll/modules/shortcut_xl/_categorize.py +200 -0
  414. package/xll/modules/shortcut_xl/_com.py +108 -0
  415. package/xll/modules/shortcut_xl/_format.py +252 -0
  416. package/xll/modules/shortcut_xl/_log.py +12 -0
  417. package/xll/modules/shortcut_xl/_managed.py +116 -0
  418. package/xll/modules/shortcut_xl/_registry.py +44 -0
  419. package/xll/modules/shortcut_xl/_threading.py +161 -0
  420. package/xll/modules/shortcut_xl/_tracking.py +283 -0
  421. package/xll/modules/stocks.py +100 -0
  422. package/xll/python3.dll +0 -0
  423. package/xll/python312.dll +0 -0
@@ -0,0 +1,473 @@
1
+ **LSEG Refinitiv (Workspace/Eikon/Datastream) Excel Formula Guide**
2
+
3
+ **Intro**
4
+ You have full access to LSEG Refinitiv through the Excel Add-In, but you should only pull Refinitiv data **when the user explicitly tells you to**. LSEG Refinitiv provides market data, fundamentals, estimates, ownership, news, and time series through multiple platforms: Workspace (current), Eikon (legacy), and Datastream (time series). You can retrieve data by writing formulas directly in Excel cells.
5
+
6
+ **IMPORTANT:** Before completing a task involving Refinitiv, you must verify:
7
+ 1. Your Refinitiv formulas do not return errors.
8
+ 2. All values should seem reasonable and make intuitive sense based on your general knowledge of companies and finance.
9
+ 3. Use cell references for instruments and fields when possible as opposed to hardcoded values.
10
+
11
+ You should essentially gut check every value that shows up. If there are any errors or the values seem wrong, you likely wrote the formula syntax incorrectly. Please correct the formula until it outputs the proper value.
12
+
13
+ ---
14
+
15
+ **Platform Overview**
16
+
17
+ LSEG Refinitiv has multiple Excel integration methods:
18
+
19
+ | Platform | Function | Status |
20
+ |----------|----------|--------|
21
+ | Workspace | RDP.Data, RDP.HistoricalPricing, RDP.Search | Current |
22
+ | Eikon | TR, RHistory, RSearch | Legacy (still supported) |
23
+ | Datastream | DSGRID, DS | Time series specialist |
24
+
25
+ ---
26
+
27
+ ## PART 1: WORKSPACE / EIKON FORMULAS
28
+
29
+ **1. RDP.Data (Workspace) / TR (Eikon)**
30
+
31
+ Returns current/static data for instruments.
32
+
33
+ **Workspace Syntax:**
34
+ =RDP.Data("INSTRUMENT","FIELD","PARAMETERS")
35
+
36
+ **Eikon Syntax:**
37
+ =TR("INSTRUMENT","FIELD","PARAMETERS")
38
+
39
+ **Examples:**
40
+ =RDP.Data("AAPL.O","TR.PriceClose")
41
+ → Apple's closing price.
42
+
43
+ =TR("MSFT.O","CF_LAST")
44
+ → Microsoft's last trade price (real-time).
45
+
46
+ =RDP.Data("GOOGL.O","TR.TotalRevenue","Period=FY0")
47
+ → Alphabet's most recent fiscal year revenue.
48
+
49
+ ---
50
+
51
+ **2. Instrument Identifiers (RICs)**
52
+
53
+ RIC (Reuters Instrument Code) is the primary identifier format.
54
+
55
+ **Common RIC Suffixes:**
56
+ | Suffix | Exchange | Example |
57
+ |--------|----------|---------|
58
+ | .O | NASDAQ | AAPL.O |
59
+ | .N | NYSE | IBM.N |
60
+ | .L | London | VOD.L |
61
+ | .T | Tokyo | 7203.T |
62
+ | .HK | Hong Kong | 0005.HK |
63
+ | .DE | Germany | DBKGn.DE |
64
+ | .PA | Paris | BNPP.PA |
65
+ | .SI | Singapore | DBS.SI |
66
+ | .AX | Australia | BHP.AX |
67
+ | .TO | Toronto | RY.TO |
68
+
69
+ **Alternative Identifiers:**
70
+ - ISIN: =RDP.Data("US0378331005","TR.PriceClose")
71
+ - CUSIP: Supported via lookup
72
+ - SEDOL: Supported via lookup
73
+
74
+ ---
75
+
76
+ **3. Field Types**
77
+
78
+ **CF_ Fields (Real-Time Streaming):**
79
+ Real-time market data from streaming feed.
80
+
81
+ | Field | Description |
82
+ |-------|-------------|
83
+ | CF_LAST | Last trade price |
84
+ | CF_BID | Bid price |
85
+ | CF_ASK | Ask price |
86
+ | CF_CLOSE | Previous close |
87
+ | CF_HIGH | Day high |
88
+ | CF_LOW | Day low |
89
+ | CF_VOLUME | Trading volume |
90
+ | CF_TICK | Tick direction |
91
+ | CF_YIELD | Yield |
92
+
93
+ **TR. Fields (Historical/Fundamental/Reference):**
94
+ Historical and fundamental data.
95
+
96
+ ---
97
+
98
+ **4. Common TR. Fields**
99
+
100
+ **Pricing & Market Data:**
101
+ | Field | Description |
102
+ |-------|-------------|
103
+ | TR.PriceClose | Closing price |
104
+ | TR.PriceOpen | Opening price |
105
+ | TR.PriceHigh | Day high price |
106
+ | TR.PriceLow | Day low price |
107
+ | TR.Volume | Trading volume |
108
+ | TR.PricePctChgYTD | YTD price change % |
109
+ | TR.CompanyMarketCap | Market capitalization |
110
+ | TR.EV | Enterprise value |
111
+ | TR.BetaFiveYear | 5-year beta |
112
+ | TR.SharesOutstanding | Shares outstanding |
113
+
114
+ **Income Statement:**
115
+ | Field | Description |
116
+ |-------|-------------|
117
+ | TR.Revenue | Total revenue |
118
+ | TR.TotalRevenue | Total revenue (with parameters) |
119
+ | TR.GrossProfit | Gross profit |
120
+ | TR.OperatingProfit | Operating profit |
121
+ | TR.EBITDA | EBITDA |
122
+ | TR.EBIT | EBIT |
123
+ | TR.NetIncome | Net income |
124
+ | TR.BasicNormalizedEps | Basic EPS (normalized) |
125
+ | TR.DilutedNormalizedEps | Diluted EPS (normalized) |
126
+ | TR.CostofRevenueTotal | Cost of revenue |
127
+ | TR.Depreciation | Depreciation |
128
+
129
+ **Balance Sheet:**
130
+ | Field | Description |
131
+ |-------|-------------|
132
+ | TR.CashAndSTInvestments | Cash & ST investments |
133
+ | TR.TotalAssets | Total assets |
134
+ | TR.TotalCurrentAssets | Current assets |
135
+ | TR.TotalReceivables | Total receivables |
136
+ | TR.Inventory | Inventory |
137
+ | TR.NetPPE | Net PP&E |
138
+ | TR.TotalLiabilities | Total liabilities |
139
+ | TR.TotalCurrentLiabilities | Current liabilities |
140
+ | TR.TotalDebt | Total debt |
141
+ | TR.NetDebtTot | Net debt |
142
+ | TR.TotalEquity | Total equity |
143
+ | TR.TtlCmnSharesOut | Common shares outstanding |
144
+
145
+ **Cash Flow:**
146
+ | Field | Description |
147
+ |-------|-------------|
148
+ | TR.CashFromOperations | Operating cash flow |
149
+ | TR.CapitalExpenditures | Capital expenditures |
150
+ | TR.FreeCashFlow | Free cash flow |
151
+ | TR.CashFromInvesting | Investing cash flow |
152
+ | TR.CashFromFinancing | Financing cash flow |
153
+
154
+ **Ratios & Metrics:**
155
+ | Field | Description |
156
+ |-------|-------------|
157
+ | TR.ROE | Return on equity |
158
+ | TR.ROA | Return on assets |
159
+ | TR.ReturnonAvgTotEqtyPctNetIncomeBeforeExtraItemsTTM | ROE TTM |
160
+ | TR.ROAPercentTrailing12M | ROA trailing 12M |
161
+ | TR.GrossMargin | Gross margin |
162
+ | TR.OperatingProfitMarginPct5YrAvg | Operating margin 5Y avg |
163
+ | TR.NetDebtToEBITDA | Net debt/EBITDA |
164
+ | TR.PriceToSalesPerShare | Price/Sales |
165
+ | TR.PriceToBookValue | Price/Book |
166
+ | TR.PriceEarningsRatio | P/E ratio |
167
+
168
+ **Estimates (Consensus):**
169
+ | Field | Description |
170
+ |-------|-------------|
171
+ | TR.RevenueMeanEstimate | Revenue estimate (mean) |
172
+ | TR.EBITDAMean | EBITDA estimate (mean) |
173
+ | TR.EBITMean | EBIT estimate (mean) |
174
+ | TR.NetIncomeMeanEstimate | Net income estimate (mean) |
175
+ | TR.EPSMeanEstimate | EPS estimate (mean) |
176
+ | TR.PriceTargetMeanEst | Price target (mean) |
177
+ | TR.RecMean | Recommendation (mean) |
178
+ | TR.RecLabel | Recommendation (label) |
179
+ | TR.CAPEXMean | CapEx estimate (mean) |
180
+ | TR.OPRMeanEstimate | Operating profit estimate |
181
+
182
+ **Company Information:**
183
+ | Field | Description |
184
+ |-------|-------------|
185
+ | TR.CompanyName | Company name |
186
+ | TR.CommonName | Common name |
187
+ | TR.RIC | RIC code |
188
+ | TR.BusinessSummary | Business description |
189
+ | TR.HeadquartersRegion | HQ region |
190
+ | TR.TRBCIndustry | Industry classification |
191
+ | TR.TRBCSector | Sector classification |
192
+
193
+ ---
194
+
195
+ **5. Period Parameters**
196
+
197
+ Add period specifications for fundamental data:
198
+
199
+ | Parameter | Description | Example |
200
+ |-----------|-------------|---------|
201
+ | Period=FY0 | Current fiscal year | TR.Revenue(Period=FY0) |
202
+ | Period=FY-1 | Prior fiscal year | TR.Revenue(Period=FY-1) |
203
+ | Period=FQ0 | Current fiscal quarter | TR.Revenue(Period=FQ0) |
204
+ | Period=LTM | Last twelve months | TR.Revenue(Period=LTM) |
205
+ | Methodology=InterimSum | Interim sum method | TR.TotalRevenue(Period=LTM,Methodology=InterimSum) |
206
+
207
+ **Date Range:**
208
+ Period=1FQ2018:1FQ2025
209
+
210
+ **Example:**
211
+ =RDP.Data("AAPL.O","TR.RevenueActValue","Period=1FQ2018:1FQ2025,Curn=USD")
212
+ → Apple quarterly revenue from Q1 2018 to Q1 2025 in USD.
213
+
214
+ ---
215
+
216
+ **6. Currency Conversion**
217
+
218
+ | Parameter | Description |
219
+ |-----------|-------------|
220
+ | Curn=USD | Convert to USD |
221
+ | Curn=EUR | Convert to EUR |
222
+ | Curn=GBP | Convert to GBP |
223
+
224
+ **Example:**
225
+ =RDP.Data("VOD.L","TR.TotalRevenue","Period=FY0,Curn=USD")
226
+ → Vodafone revenue in USD.
227
+
228
+ ---
229
+
230
+ **7. Historical Pricing (RDP.HistoricalPricing / RHistory)**
231
+
232
+ For time series price data.
233
+
234
+ **Workspace Syntax:**
235
+ =RDP.HistoricalPricing("INSTRUMENT","FIELDS","START","END","FREQUENCY")
236
+
237
+ **Eikon Syntax:**
238
+ =RHistory("INSTRUMENT","FIELDS","START","END","FREQUENCY")
239
+
240
+ **Example:**
241
+ =RHistory("AAPL.O","TR.PriceClose","-1Y","0D","D")
242
+ → Apple daily closing prices for past year.
243
+
244
+ ---
245
+
246
+ **8. Display Parameters**
247
+
248
+ | Parameter | Values | Description |
249
+ |-----------|--------|-------------|
250
+ | CH | Fd, In, Date | Column headers (Field, Instrument, Date) |
251
+ | RH | Fd, In, Date | Row headers |
252
+ | Transpose | Y, N | Transpose results |
253
+
254
+ **Example:**
255
+ =TR("AAPL.O;MSFT.O;GOOGL.O","CF_LAST;TR.CompanyMarketCap;TR.Revenue","CH=Fd RH=IN")
256
+ → Multiple instruments and fields with headers.
257
+
258
+ ---
259
+
260
+ ## PART 2: DATASTREAM FORMULAS
261
+
262
+ Datastream specializes in long historical time series data.
263
+
264
+ **1. DSGRID Function**
265
+
266
+ Returns time series data in a grid format.
267
+
268
+ **Syntax:**
269
+ =DSGRID(SERIES, DATATYPE, START, END, FREQUENCY)
270
+
271
+ **Examples:**
272
+ =DSGRID("AAPL","P","-5Y","0","M")
273
+ → Apple monthly prices for past 5 years.
274
+
275
+ =DSGRID("VOD","MV","-10Y","0","Q")
276
+ → Vodafone quarterly market value for past 10 years.
277
+
278
+ ---
279
+
280
+ **2. DS Function**
281
+
282
+ Returns single data points.
283
+
284
+ **Syntax:**
285
+ =DS(SERIES, DATATYPE, DATE, CURRENCY, OPTIONS)
286
+
287
+ **Example:**
288
+ =DS("MSFT","P","0")
289
+ → Microsoft's current price.
290
+
291
+ ---
292
+
293
+ **3. Datastream Series Codes**
294
+
295
+ Datastream uses its own mnemonic system for instruments.
296
+
297
+ **Finding Codes:**
298
+ - Use Datastream Navigator in Excel
299
+ - Search by company name, ISIN, or SEDOL
300
+ - Common stocks often use ticker-like codes (e.g., "AAPL" for Apple)
301
+
302
+ ---
303
+
304
+ **4. Common Datastream Datatypes**
305
+
306
+ **Pricing:**
307
+ | Datatype | Description |
308
+ |----------|-------------|
309
+ | P | Closing price |
310
+ | PH | High price |
311
+ | PL | Low price |
312
+ | PO | Opening price |
313
+ | VA | Value traded |
314
+ | VO | Volume traded |
315
+
316
+ **Market Data:**
317
+ | Datatype | Description |
318
+ |----------|-------------|
319
+ | MV | Market value/capitalization |
320
+ | NOSH | Number of shares (thousands) |
321
+ | UP | Unadjusted price |
322
+ | RI | Return index (total return) |
323
+ | PI | Price index |
324
+
325
+ **Fundamentals:**
326
+ | Datatype | Description |
327
+ |----------|-------------|
328
+ | EPS | Earnings per share |
329
+ | DPS | Dividends per share |
330
+ | DY | Dividend yield |
331
+ | PE | Price/Earnings ratio |
332
+ | PTBV | Price to book value |
333
+ | MTBV | Market to book value |
334
+ | WC01001 | Net sales/revenue (Worldscope) |
335
+ | WC01551 | Operating income (Worldscope) |
336
+ | WC01751 | Net income (Worldscope) |
337
+ | WC02999 | Total assets (Worldscope) |
338
+ | WC03351 | Total debt (Worldscope) |
339
+ | WC03501 | Common equity (Worldscope) |
340
+
341
+ **Rates & FX:**
342
+ | Datatype | Description |
343
+ |----------|-------------|
344
+ | EB | Bid exchange rate |
345
+ | EO | Offer exchange rate |
346
+
347
+ ---
348
+
349
+ **5. Datastream Frequency Codes**
350
+
351
+ | Code | Frequency |
352
+ |------|-----------|
353
+ | D | Daily |
354
+ | W | Weekly |
355
+ | M | Monthly |
356
+ | Q | Quarterly |
357
+ | Y | Yearly |
358
+
359
+ ---
360
+
361
+ **6. Datastream Date Formats**
362
+
363
+ | Format | Description | Example |
364
+ |--------|-------------|---------|
365
+ | -5Y | 5 years ago | -5Y |
366
+ | -6M | 6 months ago | -6M |
367
+ | -30D | 30 days ago | -30D |
368
+ | 0 | Today/current | 0 |
369
+ | DD/MM/YYYY | Absolute date | 01/01/2020 |
370
+
371
+ ---
372
+
373
+ **7. Datastream Expressions**
374
+
375
+ You can create calculated fields:
376
+
377
+ =DSGRID("AAPL","P/EPS","-5Y","0","Y")
378
+ → Apple's P/E ratio over 5 years.
379
+
380
+ =DSGRID("VOD","MV/WC01001","-3Y","0","Y")
381
+ → Vodafone's Market Cap / Revenue ratio.
382
+
383
+ ---
384
+
385
+ **8. Worldscope Codes**
386
+
387
+ Datastream includes Worldscope fundamental data with WC prefix:
388
+
389
+ **Income Statement:**
390
+ | Code | Description |
391
+ |------|-------------|
392
+ | WC01001 | Net sales/revenue |
393
+ | WC01051 | Cost of goods sold |
394
+ | WC01100 | Gross income |
395
+ | WC01250 | SG&A expense |
396
+ | WC01551 | Operating income |
397
+ | WC01651 | EBIT |
398
+ | WC18198 | EBITDA |
399
+ | WC01651 | Pretax income |
400
+ | WC01751 | Net income |
401
+ | WC05201 | EPS (basic) |
402
+ | WC05202 | EPS (diluted) |
403
+
404
+ **Balance Sheet:**
405
+ | Code | Description |
406
+ |------|-------------|
407
+ | WC02001 | Cash & equivalents |
408
+ | WC02051 | Receivables |
409
+ | WC02101 | Inventories |
410
+ | WC02201 | Current assets |
411
+ | WC02501 | Net PP&E |
412
+ | WC02999 | Total assets |
413
+ | WC03051 | Accounts payable |
414
+ | WC03251 | Current liabilities |
415
+ | WC03351 | Total debt |
416
+ | WC03451 | Long-term debt |
417
+ | WC03501 | Common equity |
418
+ | WC03995 | Total liabilities |
419
+ | WC03999 | Total liabilities & equity |
420
+
421
+ **Cash Flow:**
422
+ | Code | Description |
423
+ |------|-------------|
424
+ | WC04201 | Operating cash flow |
425
+ | WC04601 | Capital expenditures |
426
+ | WC04860 | Free cash flow |
427
+
428
+ ---
429
+
430
+ ## PART 3: FORMULA BUILDER
431
+
432
+ **Using Formula Builder (Recommended):**
433
+ 1. Open Excel with Refinitiv Add-In
434
+ 2. Click "Refinitiv" or "LSEG" tab
435
+ 3. Click "Build Formula" or "fx" icon
436
+ 4. Use Navigator to find instruments
437
+ 5. Use Data Item Browser to find fields
438
+ 6. Set parameters and insert formula
439
+
440
+ **Data Item Browser (DIB):**
441
+ - Press F1 or access via Eikon for context help
442
+ - Search fields by keyword
443
+ - Browse by category (Pricing, Fundamentals, Estimates, etc.)
444
+
445
+ ---
446
+
447
+ **Migration Note (Eikon to Workspace):**
448
+
449
+ If migrating from Eikon to Workspace:
450
+ - =TR("AAPL.O","TR.CompanyName") becomes =RDP.Data("AAPL.O","TR.CompanyName")
451
+ - Most field names remain the same
452
+ - CF_ and TR. field prefixes unchanged
453
+
454
+ ---
455
+
456
+ **Final Checklist:**
457
+ - What exact data point is needed? (Price? Revenue? EBITDA? Estimates?)
458
+ - What time frame? (Current? Historical? Specific fiscal period?)
459
+ - Is this for Workspace (RDP.Data) or Eikon (TR) or Datastream (DSGRID)?
460
+ - Is the instrument identifier correct? (RIC format with exchange suffix)
461
+ - Do I need real-time (CF_) or historical/fundamental (TR.) data?
462
+ - Have I specified the period correctly? (FY0, FY-1, LTM, etc.)
463
+ - Do I need currency conversion? (Curn=USD)
464
+ - Have I checked the field using Data Item Browser?
465
+
466
+ ---
467
+
468
+ **Additional Resources:**
469
+ - Refinitiv Workspace: Press F1 for context help
470
+ - Data Item Browser: Search for field codes
471
+ - Datastream Navigator: Find time series codes
472
+ - Developer Community: community.developers.refinitiv.com
473
+ - Formula Builder: Accessed via Excel Add-In tab