rird 2.1.231 → 2.3.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 (381) hide show
  1. package/AGENTS.md +86 -0
  2. package/COMPLETED_TEST_SUITE.txt +280 -0
  3. package/Dockerfile +18 -0
  4. package/README.md +397 -6
  5. package/RIRD_ERROR_HANDLING_SUMMARY.md +307 -0
  6. package/TESTING.md +512 -0
  7. package/TEST_IMPLEMENTATION_REPORT.md +463 -0
  8. package/TEST_SUITE.md +307 -0
  9. package/TEST_SUMMARY.txt +380 -0
  10. package/bin/rird-perf.js +37 -0
  11. package/bin/rird.js +43 -8
  12. package/bunfig.toml +4 -0
  13. package/create-wrapper.ps1 +51 -0
  14. package/docs/ARCHITECTURE.md +768 -0
  15. package/docs/CLI_REFERENCE.md +681 -0
  16. package/docs/DOCUMENTATION_MANIFEST.md +392 -0
  17. package/docs/INDEX.md +295 -0
  18. package/docs/PRODUCTION_SETUP.md +633 -0
  19. package/docs/TROUBLESHOOTING.md +914 -0
  20. package/facebook_ads_library.png +0 -0
  21. package/nul +0 -0
  22. package/nul`nif +0 -0
  23. package/package.json +104 -15
  24. package/parsers-config.ts +239 -0
  25. package/rird-1.0.199.tgz +0 -0
  26. package/rird-1.0.205.tgz +0 -0
  27. package/script/build-windows.ts +56 -0
  28. package/script/build.ts +165 -0
  29. package/{postinstall.mjs → script/postinstall.mjs} +47 -68
  30. package/script/publish-registries.ts +187 -0
  31. package/script/publish.ts +85 -0
  32. package/script/schema.ts +47 -0
  33. package/src/acp/README.md +164 -0
  34. package/src/acp/agent.ts +1063 -0
  35. package/src/acp/session.ts +101 -0
  36. package/src/acp/types.ts +22 -0
  37. package/src/agent/agent.ts +367 -0
  38. package/src/agent/generate.txt +75 -0
  39. package/src/agent/prompt/compaction.txt +12 -0
  40. package/src/agent/prompt/explore.txt +18 -0
  41. package/src/agent/prompt/summary.txt +10 -0
  42. package/src/agent/prompt/title.txt +36 -0
  43. package/src/auth/index.ts +70 -0
  44. package/src/bun/index.ts +114 -0
  45. package/src/bus/bus-event.ts +43 -0
  46. package/src/bus/global.ts +10 -0
  47. package/src/bus/index.ts +105 -0
  48. package/src/cli/bootstrap.ts +17 -0
  49. package/src/cli/cmd/acp.ts +104 -0
  50. package/src/cli/cmd/activate.ts +50 -0
  51. package/src/cli/cmd/agent.ts +256 -0
  52. package/src/cli/cmd/auth.ts +412 -0
  53. package/src/cli/cmd/cmd.ts +7 -0
  54. package/src/cli/cmd/debug/config.ts +15 -0
  55. package/src/cli/cmd/debug/file.ts +91 -0
  56. package/src/cli/cmd/debug/index.ts +43 -0
  57. package/src/cli/cmd/debug/lsp.ts +48 -0
  58. package/src/cli/cmd/debug/ripgrep.ts +83 -0
  59. package/src/cli/cmd/debug/scrap.ts +15 -0
  60. package/src/cli/cmd/debug/skill.ts +15 -0
  61. package/src/cli/cmd/debug/snapshot.ts +48 -0
  62. package/src/cli/cmd/export.ts +88 -0
  63. package/src/cli/cmd/generate.ts +38 -0
  64. package/src/cli/cmd/github.ts +1400 -0
  65. package/src/cli/cmd/import.ts +98 -0
  66. package/src/cli/cmd/mcp.ts +654 -0
  67. package/src/cli/cmd/models.ts +68 -0
  68. package/src/cli/cmd/pr.ts +112 -0
  69. package/src/cli/cmd/run.ts +434 -0
  70. package/src/cli/cmd/serve.ts +31 -0
  71. package/src/cli/cmd/session.ts +106 -0
  72. package/src/cli/cmd/stats.ts +298 -0
  73. package/src/cli/cmd/tui/app.tsx +694 -0
  74. package/src/cli/cmd/tui/attach.ts +30 -0
  75. package/src/cli/cmd/tui/component/border.tsx +21 -0
  76. package/src/cli/cmd/tui/component/dialog-agent.tsx +31 -0
  77. package/src/cli/cmd/tui/component/dialog-command.tsx +124 -0
  78. package/src/cli/cmd/tui/component/dialog-mcp.tsx +86 -0
  79. package/src/cli/cmd/tui/component/dialog-model.tsx +236 -0
  80. package/src/cli/cmd/tui/component/dialog-provider.tsx +240 -0
  81. package/src/cli/cmd/tui/component/dialog-session-list.tsx +102 -0
  82. package/src/cli/cmd/tui/component/dialog-session-rename.tsx +31 -0
  83. package/src/cli/cmd/tui/component/dialog-stash.tsx +86 -0
  84. package/src/cli/cmd/tui/component/dialog-status.tsx +162 -0
  85. package/src/cli/cmd/tui/component/dialog-tag.tsx +44 -0
  86. package/src/cli/cmd/tui/component/dialog-theme-list.tsx +50 -0
  87. package/src/cli/cmd/tui/component/did-you-know.tsx +85 -0
  88. package/src/cli/cmd/tui/component/logo.tsx +48 -0
  89. package/src/cli/cmd/tui/component/prompt/autocomplete.tsx +574 -0
  90. package/src/cli/cmd/tui/component/prompt/history.tsx +108 -0
  91. package/src/cli/cmd/tui/component/prompt/index.tsx +1087 -0
  92. package/src/cli/cmd/tui/component/prompt/stash.tsx +101 -0
  93. package/src/cli/cmd/tui/component/tips.ts +27 -0
  94. package/src/cli/cmd/tui/component/todo-item.tsx +32 -0
  95. package/src/cli/cmd/tui/context/args.tsx +14 -0
  96. package/src/cli/cmd/tui/context/directory.ts +13 -0
  97. package/src/cli/cmd/tui/context/exit.tsx +23 -0
  98. package/src/cli/cmd/tui/context/helper.tsx +25 -0
  99. package/src/cli/cmd/tui/context/keybind.tsx +101 -0
  100. package/src/cli/cmd/tui/context/kv.tsx +49 -0
  101. package/src/cli/cmd/tui/context/local.tsx +345 -0
  102. package/src/cli/cmd/tui/context/prompt.tsx +18 -0
  103. package/src/cli/cmd/tui/context/route.tsx +46 -0
  104. package/src/cli/cmd/tui/context/sdk.tsx +74 -0
  105. package/src/cli/cmd/tui/context/sync.tsx +372 -0
  106. package/src/cli/cmd/tui/context/theme/aura.json +69 -0
  107. package/src/cli/cmd/tui/context/theme/ayu.json +80 -0
  108. package/src/cli/cmd/tui/context/theme/catppuccin-frappe.json +233 -0
  109. package/src/cli/cmd/tui/context/theme/catppuccin-macchiato.json +233 -0
  110. package/src/cli/cmd/tui/context/theme/catppuccin.json +112 -0
  111. package/src/cli/cmd/tui/context/theme/cobalt2.json +228 -0
  112. package/src/cli/cmd/tui/context/theme/cursor.json +249 -0
  113. package/src/cli/cmd/tui/context/theme/dracula.json +219 -0
  114. package/src/cli/cmd/tui/context/theme/everforest.json +241 -0
  115. package/src/cli/cmd/tui/context/theme/flexoki.json +237 -0
  116. package/src/cli/cmd/tui/context/theme/github.json +233 -0
  117. package/src/cli/cmd/tui/context/theme/gruvbox.json +95 -0
  118. package/src/cli/cmd/tui/context/theme/kanagawa.json +77 -0
  119. package/src/cli/cmd/tui/context/theme/lucent-orng.json +227 -0
  120. package/src/cli/cmd/tui/context/theme/material.json +235 -0
  121. package/src/cli/cmd/tui/context/theme/matrix.json +77 -0
  122. package/src/cli/cmd/tui/context/theme/mercury.json +252 -0
  123. package/src/cli/cmd/tui/context/theme/monokai.json +221 -0
  124. package/src/cli/cmd/tui/context/theme/nightowl.json +221 -0
  125. package/src/cli/cmd/tui/context/theme/nord.json +223 -0
  126. package/src/cli/cmd/tui/context/theme/one-dark.json +84 -0
  127. package/src/cli/cmd/tui/context/theme/orng.json +245 -0
  128. package/src/cli/cmd/tui/context/theme/palenight.json +222 -0
  129. package/src/cli/cmd/tui/context/theme/rird.json +245 -0
  130. package/src/cli/cmd/tui/context/theme/rosepine.json +234 -0
  131. package/src/cli/cmd/tui/context/theme/solarized.json +223 -0
  132. package/src/cli/cmd/tui/context/theme/synthwave84.json +226 -0
  133. package/src/cli/cmd/tui/context/theme/tokyonight.json +243 -0
  134. package/src/cli/cmd/tui/context/theme/vercel.json +245 -0
  135. package/src/cli/cmd/tui/context/theme/vesper.json +218 -0
  136. package/src/cli/cmd/tui/context/theme/zenburn.json +223 -0
  137. package/src/cli/cmd/tui/context/theme.tsx +1109 -0
  138. package/src/cli/cmd/tui/event.ts +40 -0
  139. package/src/cli/cmd/tui/hooks/use-safe-terminal-dimensions.ts +12 -0
  140. package/src/cli/cmd/tui/routes/home.tsx +138 -0
  141. package/src/cli/cmd/tui/routes/session/dialog-fork-from-timeline.tsx +64 -0
  142. package/src/cli/cmd/tui/routes/session/dialog-message.tsx +109 -0
  143. package/src/cli/cmd/tui/routes/session/dialog-subagent.tsx +26 -0
  144. package/src/cli/cmd/tui/routes/session/dialog-timeline.tsx +47 -0
  145. package/src/cli/cmd/tui/routes/session/footer.tsx +88 -0
  146. package/src/cli/cmd/tui/routes/session/header.tsx +125 -0
  147. package/src/cli/cmd/tui/routes/session/index.tsx +1876 -0
  148. package/src/cli/cmd/tui/routes/session/sidebar.tsx +320 -0
  149. package/src/cli/cmd/tui/spawn.ts +60 -0
  150. package/src/cli/cmd/tui/thread.ts +142 -0
  151. package/src/cli/cmd/tui/ui/dialog-alert.tsx +57 -0
  152. package/src/cli/cmd/tui/ui/dialog-confirm.tsx +83 -0
  153. package/src/cli/cmd/tui/ui/dialog-help.tsx +38 -0
  154. package/src/cli/cmd/tui/ui/dialog-prompt.tsx +77 -0
  155. package/src/cli/cmd/tui/ui/dialog-select.tsx +333 -0
  156. package/src/cli/cmd/tui/ui/dialog.tsx +171 -0
  157. package/src/cli/cmd/tui/ui/spinner.ts +368 -0
  158. package/src/cli/cmd/tui/ui/toast.tsx +100 -0
  159. package/src/cli/cmd/tui/util/clipboard.ts +127 -0
  160. package/src/cli/cmd/tui/util/editor.ts +32 -0
  161. package/src/cli/cmd/tui/util/terminal.ts +146 -0
  162. package/src/cli/cmd/tui/worker.ts +63 -0
  163. package/src/cli/cmd/uninstall.ts +344 -0
  164. package/src/cli/cmd/upgrade.ts +127 -0
  165. package/src/cli/cmd/web.ts +84 -0
  166. package/src/cli/error.ts +69 -0
  167. package/src/cli/ui.ts +101 -0
  168. package/src/cli/upgrade.ts +28 -0
  169. package/src/command/index.ts +80 -0
  170. package/src/command/template/initialize.txt +10 -0
  171. package/src/command/template/review.txt +97 -0
  172. package/src/config/config.ts +994 -0
  173. package/src/config/markdown.ts +41 -0
  174. package/src/env/index.ts +26 -0
  175. package/src/file/ignore.ts +83 -0
  176. package/src/file/index.ts +328 -0
  177. package/src/file/ripgrep.ts +393 -0
  178. package/src/file/time.ts +64 -0
  179. package/src/file/watcher.ts +103 -0
  180. package/src/flag/flag.ts +84 -0
  181. package/src/format/formatter.ts +315 -0
  182. package/src/format/index.ts +137 -0
  183. package/src/global/index.ts +101 -0
  184. package/src/id/id.ts +73 -0
  185. package/src/ide/index.ts +76 -0
  186. package/src/index.ts +297 -0
  187. package/src/index.ts.backup +271 -0
  188. package/src/installation/index.ts +258 -0
  189. package/src/lib/IMPLEMENTATION_NOTES.md +345 -0
  190. package/src/lib/error-handler.ts +225 -0
  191. package/src/lib/error-testing-guide.md +258 -0
  192. package/src/lib/errors.ts +285 -0
  193. package/src/lib/performance.ts +70 -0
  194. package/src/lib/telemetry.ts +282 -0
  195. package/src/lsp/client.ts +229 -0
  196. package/src/lsp/index.ts +485 -0
  197. package/src/lsp/language.ts +116 -0
  198. package/src/lsp/server.ts +1895 -0
  199. package/src/mcp/auth.ts +135 -0
  200. package/src/mcp/index.ts +1117 -0
  201. package/src/mcp/intent-analyzer.ts +376 -0
  202. package/src/mcp/oauth-callback.ts +200 -0
  203. package/src/mcp/oauth-provider.ts +154 -0
  204. package/src/patch/index.ts +632 -0
  205. package/src/permission/index.ts +199 -0
  206. package/src/plugin/index.ts +91 -0
  207. package/src/project/bootstrap.ts +33 -0
  208. package/src/project/instance.ts +78 -0
  209. package/src/project/project.ts +236 -0
  210. package/src/project/state.ts +65 -0
  211. package/src/project/vcs.ts +76 -0
  212. package/src/provider/auth.ts +143 -0
  213. package/src/provider/models-macro.ts +55 -0
  214. package/src/provider/models.ts +161 -0
  215. package/src/provider/provider.ts +1109 -0
  216. package/src/provider/sdk/openai-compatible/src/README.md +5 -0
  217. package/src/provider/sdk/openai-compatible/src/index.ts +2 -0
  218. package/src/provider/sdk/openai-compatible/src/openai-compatible-provider.ts +100 -0
  219. package/src/provider/sdk/openai-compatible/src/responses/convert-to-openai-responses-input.ts +303 -0
  220. package/src/provider/sdk/openai-compatible/src/responses/map-openai-responses-finish-reason.ts +22 -0
  221. package/src/provider/sdk/openai-compatible/src/responses/openai-config.ts +18 -0
  222. package/src/provider/sdk/openai-compatible/src/responses/openai-error.ts +22 -0
  223. package/src/provider/sdk/openai-compatible/src/responses/openai-responses-api-types.ts +207 -0
  224. package/src/provider/sdk/openai-compatible/src/responses/openai-responses-language-model.ts +1713 -0
  225. package/src/provider/sdk/openai-compatible/src/responses/openai-responses-prepare-tools.ts +177 -0
  226. package/src/provider/sdk/openai-compatible/src/responses/openai-responses-settings.ts +1 -0
  227. package/src/provider/sdk/openai-compatible/src/responses/tool/code-interpreter.ts +88 -0
  228. package/src/provider/sdk/openai-compatible/src/responses/tool/file-search.ts +128 -0
  229. package/src/provider/sdk/openai-compatible/src/responses/tool/image-generation.ts +115 -0
  230. package/src/provider/sdk/openai-compatible/src/responses/tool/local-shell.ts +65 -0
  231. package/src/provider/sdk/openai-compatible/src/responses/tool/web-search-preview.ts +104 -0
  232. package/src/provider/sdk/openai-compatible/src/responses/tool/web-search.ts +103 -0
  233. package/src/provider/transform.ts +455 -0
  234. package/src/pty/index.ts +231 -0
  235. package/src/security/guardrails.test.ts +341 -0
  236. package/src/security/guardrails.ts +570 -0
  237. package/src/security/index.ts +19 -0
  238. package/src/server/error.ts +36 -0
  239. package/src/server/project.ts +79 -0
  240. package/src/server/server.ts +2641 -0
  241. package/src/server/tui.ts +71 -0
  242. package/src/session/compaction.ts +228 -0
  243. package/src/session/index.ts +464 -0
  244. package/src/session/llm.ts +201 -0
  245. package/src/session/message-v2.ts +695 -0
  246. package/src/session/message.ts +189 -0
  247. package/src/session/processor.ts +409 -0
  248. package/src/session/prompt/act-switch.txt +5 -0
  249. package/src/session/prompt/anthropic-20250930.txt +166 -0
  250. package/src/session/prompt/anthropic.txt +63 -0
  251. package/src/session/prompt/anthropic_spoof.txt +1 -0
  252. package/src/session/prompt/beast.txt +76 -0
  253. package/src/session/prompt/codex.txt +304 -0
  254. package/src/session/prompt/copilot-gpt-5.txt +137 -0
  255. package/src/session/prompt/gemini.txt +62 -0
  256. package/src/session/prompt/max-steps.txt +16 -0
  257. package/src/session/prompt/plan-reminder-anthropic.txt +35 -0
  258. package/src/session/prompt/plan.txt +24 -0
  259. package/src/session/prompt/polaris.txt +88 -0
  260. package/src/session/prompt/qwen.txt +59 -0
  261. package/src/session/prompt.ts +1552 -0
  262. package/src/session/retry.ts +86 -0
  263. package/src/session/revert.ts +108 -0
  264. package/src/session/sensitive-filter.test.ts +327 -0
  265. package/src/session/sensitive-filter.ts +466 -0
  266. package/src/session/status.ts +76 -0
  267. package/src/session/summary.ts +209 -0
  268. package/src/session/system.ts +122 -0
  269. package/src/session/todo.ts +37 -0
  270. package/src/share/share-next.ts +222 -0
  271. package/src/share/share.ts +87 -0
  272. package/src/shell/shell.ts +67 -0
  273. package/src/skill/index.ts +1 -0
  274. package/src/skill/skill.ts +83 -0
  275. package/src/snapshot/index.ts +197 -0
  276. package/src/storage/storage.ts +226 -0
  277. package/src/tests/agent.test.ts +308 -0
  278. package/src/tests/build-guards.test.ts +267 -0
  279. package/src/tests/config.test.ts +664 -0
  280. package/src/tests/tool-registry.test.ts +589 -0
  281. package/src/tool/bash.ts +314 -0
  282. package/src/tool/bash.txt +158 -0
  283. package/src/tool/batch.ts +175 -0
  284. package/src/tool/batch.txt +24 -0
  285. package/src/tool/codesearch.ts +184 -0
  286. package/src/tool/codesearch.txt +12 -0
  287. package/src/tool/edit.ts +675 -0
  288. package/src/tool/edit.txt +10 -0
  289. package/src/tool/glob.ts +65 -0
  290. package/src/tool/glob.txt +6 -0
  291. package/src/tool/grep.ts +121 -0
  292. package/src/tool/grep.txt +8 -0
  293. package/src/tool/invalid.ts +17 -0
  294. package/src/tool/ls.ts +110 -0
  295. package/src/tool/ls.txt +1 -0
  296. package/src/tool/lsp-diagnostics.ts +26 -0
  297. package/src/tool/lsp-diagnostics.txt +1 -0
  298. package/src/tool/lsp-hover.ts +31 -0
  299. package/src/tool/lsp-hover.txt +1 -0
  300. package/src/tool/lsp.ts +87 -0
  301. package/src/tool/lsp.txt +19 -0
  302. package/src/tool/multiedit.ts +46 -0
  303. package/src/tool/multiedit.txt +41 -0
  304. package/src/tool/patch.ts +233 -0
  305. package/src/tool/patch.txt +1 -0
  306. package/src/tool/read.ts +219 -0
  307. package/src/tool/read.txt +12 -0
  308. package/src/tool/registry.ts +162 -0
  309. package/src/tool/skill.ts +100 -0
  310. package/src/tool/task.ts +136 -0
  311. package/src/tool/task.txt +51 -0
  312. package/src/tool/todo.ts +39 -0
  313. package/src/tool/todoread.txt +14 -0
  314. package/src/tool/todowrite.txt +167 -0
  315. package/src/tool/tool.ts +71 -0
  316. package/src/tool/webfetch.ts +198 -0
  317. package/src/tool/webfetch.txt +13 -0
  318. package/src/tool/websearch.ts +268 -0
  319. package/src/tool/websearch.txt +13 -0
  320. package/src/tool/write.ts +110 -0
  321. package/src/tool/write.txt +8 -0
  322. package/src/util/archive.ts +16 -0
  323. package/src/util/color.ts +19 -0
  324. package/src/util/context.ts +25 -0
  325. package/src/util/defer.ts +12 -0
  326. package/src/util/eventloop.ts +20 -0
  327. package/src/util/filesystem.ts +83 -0
  328. package/src/util/fn.ts +11 -0
  329. package/src/util/iife.ts +3 -0
  330. package/src/util/keybind.ts +102 -0
  331. package/src/util/lazy.ts +11 -0
  332. package/src/util/license.ts +362 -0
  333. package/src/util/locale.ts +81 -0
  334. package/src/util/lock.ts +98 -0
  335. package/src/util/log.ts +180 -0
  336. package/src/util/queue.ts +32 -0
  337. package/src/util/rpc.ts +42 -0
  338. package/src/util/scrap.ts +10 -0
  339. package/src/util/signal.ts +12 -0
  340. package/src/util/timeout.ts +14 -0
  341. package/src/util/token.ts +7 -0
  342. package/src/util/wildcard.ts +54 -0
  343. package/sst-env.d.ts +9 -0
  344. package/test/agent/agent.test.ts +146 -0
  345. package/test/bun.test.ts +53 -0
  346. package/test/cli/cmd/acp.test.ts +144 -0
  347. package/test/cli/cmd/run.test.ts +250 -0
  348. package/test/cli/github-remote.test.ts +80 -0
  349. package/test/config/agent-color.test.ts +66 -0
  350. package/test/config/config.test.ts +536 -0
  351. package/test/config/markdown.test.ts +89 -0
  352. package/test/file/ignore.test.ts +10 -0
  353. package/test/fixture/fixture.ts +37 -0
  354. package/test/fixture/lsp/fake-lsp-server.js +77 -0
  355. package/test/helpers.ts +172 -0
  356. package/test/ide/ide.test.ts +82 -0
  357. package/test/installation/installation.test.ts +143 -0
  358. package/test/keybind.test.ts +421 -0
  359. package/test/lsp/client.test.ts +95 -0
  360. package/test/mcp/headers.test.ts +153 -0
  361. package/test/patch/patch.test.ts +348 -0
  362. package/test/preload.ts +57 -0
  363. package/test/project/project.test.ts +74 -0
  364. package/test/provider/provider.test.ts +74 -0
  365. package/test/provider/transform.test.ts +411 -0
  366. package/test/session/retry.test.ts +111 -0
  367. package/test/session/session.test.ts +71 -0
  368. package/test/skill/skill.test.ts +131 -0
  369. package/test/snapshot/snapshot.test.ts +940 -0
  370. package/test/tool/__snapshots__/tool.test.ts.snap +9 -0
  371. package/test/tool/bash.test.ts +434 -0
  372. package/test/tool/grep.test.ts +108 -0
  373. package/test/tool/patch.test.ts +259 -0
  374. package/test/tool/read.test.ts +42 -0
  375. package/test/util/iife.test.ts +36 -0
  376. package/test/util/lazy.test.ts +50 -0
  377. package/test/util/license.test.ts +235 -0
  378. package/test/util/timeout.test.ts +21 -0
  379. package/test/util/wildcard.test.ts +55 -0
  380. package/tsconfig.json +16 -0
  381. package/update-versions.ps1 +65 -0
@@ -0,0 +1,681 @@
1
+ # RIRD CLI Reference
2
+
3
+ Complete command-line interface reference for RIRD AI Agent.
4
+
5
+ ## Quick Reference
6
+
7
+ ```bash
8
+ rird # Start interactive mode
9
+ rird "task description" # Run task once
10
+ rird help # Show help
11
+ rird --version # Show version
12
+ rird activate <key> # Activate license
13
+ rird status # Check license status
14
+ ```
15
+
16
+ ## Global Flags
17
+
18
+ Flags that work with any command:
19
+
20
+ | Flag | Description | Example |
21
+ |------|-------------|---------|
22
+ | `--help`, `-h` | Show command help | `rird run --help` |
23
+ | `--version`, `-v` | Show RIRD version and system info | `rird -v` |
24
+ | `--debug` | Enable debug logging (verbose) | `DEBUG=1 rird <task>` |
25
+ | `--quiet`, `-q` | Suppress non-essential output | `rird -q <task>` |
26
+ | `--config <path>` | Use custom config file | `rird --config ~/custom.yaml <task>` |
27
+ | `--no-color` | Disable colored output | `rird --no-color <task>` |
28
+ | `--json` | Output as JSON (for scripting) | `rird --json <task>` |
29
+
30
+ ## Core Commands
31
+
32
+ ### rird
33
+
34
+ Start RIRD interactive mode (TUI).
35
+
36
+ ```bash
37
+ rird
38
+ ```
39
+
40
+ **Usage**:
41
+ - Opens interactive terminal UI
42
+ - Enter task descriptions freely
43
+ - View progress in real-time
44
+ - Save conversations to disk
45
+ - Navigate with keyboard shortcuts
46
+
47
+ **Keyboard Shortcuts**:
48
+ - `Ctrl+C` - Exit
49
+ - `Ctrl+L` - Clear screen
50
+ - `Ctrl+S` - Save conversation
51
+ - `Ctrl+R` - Run task
52
+ - `Tab` - Autocomplete
53
+ - `Up/Down` - Navigate history
54
+
55
+ **Example**:
56
+ ```bash
57
+ $ rird
58
+ RIRD AI Agent v2.1.239
59
+
60
+ > Write a Python script that validates email addresses
61
+ Agent is thinking...
62
+ [Creates script.py]
63
+
64
+ > Add unit tests for the email validator
65
+ ```
66
+
67
+ ### rird <task>
68
+
69
+ Run a single task in non-interactive mode.
70
+
71
+ ```bash
72
+ rird "Build a web scraper for news headlines"
73
+ ```
74
+
75
+ **Usage**:
76
+ - Execute task and exit
77
+ - No interactive shell
78
+ - Good for automation/scripts
79
+ - Returns exit code (0=success, 1=failure)
80
+
81
+ **Examples**:
82
+ ```bash
83
+ # Simple task
84
+ rird "What is the capital of France?"
85
+
86
+ # Multi-line task (with newlines)
87
+ rird "Create a function that:
88
+ 1. Reads a CSV file
89
+ 2. Filters for valid emails
90
+ 3. Exports to JSON"
91
+
92
+ # With environment variables
93
+ OPENAI_API_KEY=sk-... rird "Summarize this article"
94
+ ```
95
+
96
+ **Exit Codes**:
97
+ - `0` - Success
98
+ - `1` - Task failed
99
+ - `2` - Invalid arguments
100
+ - `3` - License error
101
+ - `4` - Configuration error
102
+ - `5` - Network error
103
+
104
+ ### rird activate <key>
105
+
106
+ Activate your RIRD license.
107
+
108
+ ```bash
109
+ rird activate rird_abc123xyz
110
+ ```
111
+
112
+ **Steps**:
113
+ 1. Get key from https://rird.ai/dashboard
114
+ 2. Run command with your key
115
+ 3. System validates and caches license
116
+ 4. Confirmation message shows plan details
117
+
118
+ **Example Output**:
119
+ ```
120
+ RIRD AI
121
+
122
+ Activating license...
123
+ License key saved
124
+ Validating license...
125
+
126
+ License activated!
127
+ Welcome, user@example.com
128
+ Plan: Pro
129
+
130
+ Run 'rird' to get started
131
+ ```
132
+
133
+ **Troubleshooting**:
134
+ - Invalid key format? Ensure it starts with `rird_`
135
+ - Network error? Check internet connection
136
+ - Server unreachable? Try later or use offline mode
137
+
138
+ ### rird status
139
+
140
+ Check current license status.
141
+
142
+ ```bash
143
+ rird status
144
+ ```
145
+
146
+ **Outputs**:
147
+
148
+ **When Licensed**:
149
+ ```
150
+ RIRD AI
151
+
152
+ Status: Active
153
+ Account: user@example.com
154
+ Plan: Pro
155
+ Cache expiry: 2026-01-15
156
+ ```
157
+
158
+ **When Not Licensed**:
159
+ ```
160
+ RIRD AI
161
+
162
+ Status: Not activated
163
+
164
+ Run: rird activate YOUR_LICENSE_KEY
165
+ Get your key at: https://rird.ai
166
+ ```
167
+
168
+ **Options**:
169
+ - `--json` - Output as JSON for parsing
170
+
171
+ **Example (JSON)**:
172
+ ```bash
173
+ $ rird status --json
174
+ {
175
+ "status": "active",
176
+ "email": "user@example.com",
177
+ "plan": "pro",
178
+ "cache_expiry": "2026-01-15",
179
+ "valid": true
180
+ }
181
+ ```
182
+
183
+ ### rird help [command]
184
+
185
+ Show help for a command or list all commands.
186
+
187
+ ```bash
188
+ rird help # List all commands
189
+ rird help run # Show help for 'run' command
190
+ rird help models # Show help for 'models' command
191
+ ```
192
+
193
+ **Output Example**:
194
+ ```
195
+ RIRD AI - Help
196
+
197
+ Commands:
198
+ rird Start interactive mode
199
+ rird <task> Run a single task
200
+ rird activate <key> Activate license
201
+ rird status Check license status
202
+ rird models List available models
203
+ rird upgrade Update to latest version
204
+ rird health-check Verify installation health
205
+ rird debug Show debug information
206
+
207
+ Options:
208
+ --help, -h Show this help
209
+ --version, -v Show version
210
+ --debug Enable debug logging
211
+ --config <path> Use custom config file
212
+ ```
213
+
214
+ ## Advanced Commands
215
+
216
+ ### rird models
217
+
218
+ List available AI models.
219
+
220
+ ```bash
221
+ rird models
222
+ ```
223
+
224
+ **Output**:
225
+ ```
226
+ Available Models:
227
+
228
+ Primary Models:
229
+ 0000/ui-tars-1.5-7b:latest Computer Vision & Browser Control
230
+ gpt-4-turbo Reasoning & Analysis
231
+ claude-3-opus General Purpose
232
+
233
+ Fast Models:
234
+ gpt-3.5-turbo Speed Optimized
235
+ claude-3-haiku Lightweight
236
+
237
+ Vision Models:
238
+ gpt-4-vision Image Understanding
239
+ claude-3-vision Document Analysis
240
+ ```
241
+
242
+ **Options**:
243
+ - `--json` - Output as JSON
244
+ - `--filter <pattern>` - Filter models by pattern
245
+
246
+ **Example**:
247
+ ```bash
248
+ # List only vision models
249
+ rird models --filter vision
250
+
251
+ # Get JSON output for scripting
252
+ rird models --json | jq '.models[0]'
253
+ ```
254
+
255
+ ### rird upgrade
256
+
257
+ Update RIRD to the latest version.
258
+
259
+ ```bash
260
+ rird upgrade
261
+ ```
262
+
263
+ **Process**:
264
+ 1. Checks latest version online
265
+ 2. Downloads binary for your platform
266
+ 3. Replaces current binary
267
+ 4. Verifies installation
268
+ 5. Restarts command
269
+
270
+ **Example**:
271
+ ```
272
+ RIRD AI
273
+
274
+ Upgrading to latest version...
275
+
276
+ Downloading rird v2.1.240...
277
+ Verifying checksums...
278
+ Installing update...
279
+ Updated to v2.1.240. Restarting...
280
+ ```
281
+
282
+ **Options**:
283
+ - `--dry-run` - Check for updates without installing
284
+ - `--force` - Force upgrade even if already on latest
285
+ - `--version <version>` - Upgrade to specific version
286
+
287
+ ### rird health-check
288
+
289
+ Verify installation and dependencies.
290
+
291
+ ```bash
292
+ rird health-check
293
+ ```
294
+
295
+ **Checks**:
296
+ - License validity
297
+ - Python environment
298
+ - MCP servers
299
+ - Network connectivity
300
+ - Configuration files
301
+ - Disk space
302
+
303
+ **Example Output**:
304
+ ```
305
+ RIRD Health Check
306
+
307
+ [OK] License valid (expires: 2026-06-15)
308
+ [OK] Python 3.11.4 installed
309
+ [OK] Required packages: httpx, loguru, PIL (3/3)
310
+ [OK] MCP: stealth-browser-mcp running
311
+ [OK] Network: Connected to rird.ai (45ms)
312
+ [OK] Config file readable: ~/.rird/engine/config.yaml
313
+ [OK] Disk space: 2.3GB available
314
+
315
+ All systems operational. Ready to use.
316
+ ```
317
+
318
+ **Exit Code**:
319
+ - `0` - All checks passed
320
+ - `1` - At least one check failed
321
+
322
+ ### rird debug
323
+
324
+ Show detailed debug information.
325
+
326
+ ```bash
327
+ rird debug [section]
328
+ ```
329
+
330
+ **Sections**:
331
+ - `all` - All debug information
332
+ - `config` - Configuration settings
333
+ - `license` - License details
334
+ - `env` - Environment variables
335
+ - `paths` - File paths and directories
336
+ - `system` - System information
337
+
338
+ **Examples**:
339
+ ```bash
340
+ # Show all debug info
341
+ rird debug
342
+
343
+ # Show only system information
344
+ rird debug system
345
+
346
+ # Show configuration
347
+ rird debug config
348
+ ```
349
+
350
+ **Example Output (system)**:
351
+ ```
352
+ System Information:
353
+
354
+ Platform: darwin (macOS)
355
+ Architecture: arm64
356
+ Node Version: v18.17.0
357
+ Python Version: 3.11.4
358
+ Home Directory: /Users/example
359
+ RIRD Home: /Users/example/.rird
360
+
361
+ CPU:
362
+ Count: 8
363
+ Model: Apple M2
364
+
365
+ Memory:
366
+ Total: 16GB
367
+ Available: 8.2GB
368
+
369
+ Disk:
370
+ /: 450GB (82% used)
371
+ /Volumes/Data: 2TB (25% used)
372
+ ```
373
+
374
+ ### rird serve [options]
375
+
376
+ Start RIRD API server for remote execution.
377
+
378
+ ```bash
379
+ rird serve
380
+ ```
381
+
382
+ **Starts HTTP server**:
383
+ - Default port: `8765`
384
+ - Protocol: REST API
385
+ - Authentication: Bearer token
386
+
387
+ **Endpoints**:
388
+ - `POST /api/task` - Submit task
389
+ - `GET /api/task/<id>` - Get task status
390
+ - `GET /api/status` - License/health status
391
+ - `GET /health` - Health check
392
+
393
+ **Options**:
394
+ - `--port <port>` - Custom port (default: 8765)
395
+ - `--host <host>` - Bind address (default: localhost)
396
+ - `--auth-token <token>` - Require auth token
397
+ - `--ssl` - Enable HTTPS (requires cert)
398
+
399
+ **Example**:
400
+ ```bash
401
+ # Start server on port 9000 with auth
402
+ rird serve --port 9000 --auth-token secret123
403
+
404
+ # From another machine
405
+ curl -H "Authorization: Bearer secret123" \
406
+ -X POST http://localhost:9000/api/task \
407
+ -d '{"task": "List 5 Python frameworks"}'
408
+ ```
409
+
410
+ ### rird export
411
+
412
+ Export task history and conversation logs.
413
+
414
+ ```bash
415
+ rird export [format]
416
+ ```
417
+
418
+ **Formats**:
419
+ - `json` - JSON format (default)
420
+ - `csv` - CSV table
421
+ - `markdown` - Markdown document
422
+ - `pdf` - PDF report
423
+
424
+ **Options**:
425
+ - `--output <path>` - Save to file
426
+ - `--since <date>` - Export since date (e.g., "2024-01-01")
427
+ - `--limit <count>` - Export last N tasks
428
+ - `--filter <query>` - Filter by keyword
429
+
430
+ **Examples**:
431
+ ```bash
432
+ # Export all as JSON
433
+ rird export json --output my-tasks.json
434
+
435
+ # Export last 10 tasks as CSV
436
+ rird export csv --limit 10 --output tasks.csv
437
+
438
+ # Export since January as Markdown
439
+ rird export markdown --since 2024-01-01 --output report.md
440
+ ```
441
+
442
+ ### rird import <file>
443
+
444
+ Import tasks from file.
445
+
446
+ ```bash
447
+ rird import my-tasks.json
448
+ ```
449
+
450
+ **Supported Formats**:
451
+ - JSON
452
+ - CSV
453
+ - Markdown
454
+
455
+ **Options**:
456
+ - `--format <format>` - Specify format explicitly
457
+ - `--merge` - Merge with existing tasks (default: replace)
458
+ - `--dry-run` - Preview import without applying
459
+
460
+ **Examples**:
461
+ ```bash
462
+ # Import JSON file
463
+ rird import backup.json
464
+
465
+ # Import CSV and merge
466
+ rird import tasks.csv --merge
467
+
468
+ # Preview import first
469
+ rird import data.json --dry-run
470
+ ```
471
+
472
+ ## Environment Variables
473
+
474
+ ### LLM Configuration
475
+
476
+ | Variable | Description | Default | Example |
477
+ |----------|-------------|---------|---------|
478
+ | `ANTHROPIC_API_KEY` | Anthropic API key | None | `sk-ant-abc123` |
479
+ | `OPENAI_API_KEY` | OpenAI API key | None | `sk-gsk-abc123` |
480
+ | `GOOGLE_GENERATIVE_AI_API_KEY` | Google API key | None | `abc123xyz` |
481
+ | `DEEPSEEK_API_KEY` | Deepseek API key | None | `sk-abc123` |
482
+ | `SILICONFLOW_API_KEY` | SiliconFlow API key | None | `sf-abc123` |
483
+
484
+ ### RIRD Configuration
485
+
486
+ | Variable | Description | Default |
487
+ |----------|-------------|---------|
488
+ | `RIRD_HOME` | Installation directory | `~/.rird` |
489
+ | `RIRD_CONFIG` | Config file path | `~/.rird/engine/config.yaml` |
490
+ | `RIRD_ENGINE_DIR` | Engine directory | `~/.rird/engine` |
491
+ | `RIRD_LICENSE_KEY` | License key (overrides file) | None |
492
+ | `RIRD_API_KEY` | API key for auth | None |
493
+ | `DEBUG` | Enable debug logging | `0` |
494
+ | `RIRD_SKIP_AUTO_UPDATE` | Skip auto-updates | `0` |
495
+
496
+ ### Execution Options
497
+
498
+ | Variable | Description | Default |
499
+ |----------|-------------|---------|
500
+ | `RIRD_HEADLESS` | Browser headless mode | `true` |
501
+ | `RIRD_TIMEOUT` | Task timeout (ms) | `30000` |
502
+ | `RIRD_RETRIES` | Max retry attempts | `3` |
503
+ | `RIRD_PROXY` | HTTP proxy URL | None |
504
+
505
+ ## Environment Variable Examples
506
+
507
+ ```bash
508
+ # Use custom API key
509
+ export OPENAI_API_KEY="sk-..."
510
+ rird "Write Python code"
511
+
512
+ # Custom installation directory
513
+ export RIRD_HOME="/opt/rird"
514
+ rird status
515
+
516
+ # Increase timeout for slow networks
517
+ export RIRD_TIMEOUT=60000
518
+ rird "Complex task"
519
+
520
+ # Use proxy
521
+ export RIRD_PROXY="http://proxy.company.com:8080"
522
+ rird "Task behind corporate proxy"
523
+
524
+ # Disable auto-updates in CI
525
+ export RIRD_SKIP_AUTO_UPDATE=1
526
+ rird batch-process-files
527
+
528
+ # Enable debug for troubleshooting
529
+ export DEBUG=1
530
+ rird "Debug this task"
531
+ ```
532
+
533
+ ## Common Workflows
534
+
535
+ ### Batch Task Processing
536
+
537
+ ```bash
538
+ #!/bin/bash
539
+ # Process multiple tasks
540
+
541
+ while read task; do
542
+ echo "Running: $task"
543
+ rird "$task" --json > result.json
544
+ echo "Completed"
545
+ done < tasks.txt
546
+ ```
547
+
548
+ ### CI/CD Integration
549
+
550
+ ```yaml
551
+ name: RIRD Task
552
+ on: [push]
553
+ jobs:
554
+ rird-task:
555
+ runs-on: ubuntu-latest
556
+ steps:
557
+ - run: curl -fsSL https://rird.ai/install.sh | bash
558
+ - run: rird activate ${{ secrets.RIRD_LICENSE_KEY }}
559
+ - run: rird "Run tests and analyze results" --json
560
+ env:
561
+ OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
562
+ ```
563
+
564
+ ### Automated Script Generation
565
+
566
+ ```bash
567
+ # Generate script for web scraping
568
+ rird "Create a Python script that scrapes news from Hacker News" \
569
+ --output scraper.py
570
+
571
+ # Run the generated script
572
+ python scraper.py
573
+ ```
574
+
575
+ ### Task Queuing
576
+
577
+ ```bash
578
+ # Submit tasks to server
579
+ for i in {1..10}; do
580
+ curl -X POST http://localhost:8765/api/task \
581
+ -H "Authorization: Bearer token" \
582
+ -d "{\"task\": \"Task $i\"}"
583
+ done
584
+ ```
585
+
586
+ ## Error Messages and Solutions
587
+
588
+ ### License Errors
589
+
590
+ | Error | Cause | Solution |
591
+ |-------|-------|----------|
592
+ | `Invalid license key format` | Key format incorrect | Get key from rird.ai/dashboard |
593
+ | `License expired` | Subscription expired | Renew license on rird.ai |
594
+ | `Device fingerprint mismatch` | License on different device | Use same device or get new key |
595
+ | `Could not reach license server` | Network error | Check internet, verify firewall |
596
+
597
+ ### Configuration Errors
598
+
599
+ | Error | Cause | Solution |
600
+ |-------|-------|----------|
601
+ | `Config file not found` | Missing config.yaml | Run `rird --setup` |
602
+ | `Invalid YAML syntax` | Config file corrupted | Check indentation (2 spaces) |
603
+ | `Unknown model` | Model not available | Check `rird models` list |
604
+
605
+ ### Execution Errors
606
+
607
+ | Error | Cause | Solution |
608
+ |-------|-------|----------|
609
+ | `Task timed out` | Task took too long | Increase timeout, simplify task |
610
+ | `Memory error` | Out of memory | Increase heap: `NODE_OPTIONS=--max-old-space-size=4096 rird <task>` |
611
+ | `Network error` | Connection failed | Check internet, try again later |
612
+ | `Python not found` | Python 3.8+ not installed | Install Python: brew/apt-get/python.org |
613
+
614
+ ## Tips and Tricks
615
+
616
+ ### Save Time with Aliases
617
+
618
+ ```bash
619
+ # ~/.bashrc or ~/.zshrc
620
+
621
+ # Quick launch
622
+ alias r='rird'
623
+
624
+ # Run with no output buffering
625
+ alias r_debug='DEBUG=1 rird'
626
+
627
+ # Export results
628
+ alias r_json='rird --json'
629
+ ```
630
+
631
+ ### Piping and Redirection
632
+
633
+ ```bash
634
+ # Save task output to file
635
+ rird "Generate README" > output.txt
636
+
637
+ # Use output as input to another command
638
+ rird "List 5 fruits" | grep -i apple
639
+
640
+ # Pipe task output to jq for JSON processing
641
+ rird --json "Create config" | jq '.config'
642
+ ```
643
+
644
+ ### Working with Config Files
645
+
646
+ ```bash
647
+ # Edit config in your default editor
648
+ $EDITOR ~/.rird/engine/config.yaml
649
+
650
+ # Validate YAML
651
+ yamllint ~/.rird/engine/config.yaml
652
+
653
+ # Pretty print JSON config
654
+ cat ~/.rird/engine/rird.json | jq '.'
655
+ ```
656
+
657
+ ### Performance Monitoring
658
+
659
+ ```bash
660
+ # Show performance stats
661
+ rird --stats
662
+
663
+ # Monitor in real-time
664
+ watch -n 1 'rird --stats'
665
+
666
+ # Save stats over time
667
+ for i in {1..60}; do
668
+ date >> stats.log
669
+ rird --stats >> stats.log
670
+ sleep 1
671
+ done
672
+ ```
673
+
674
+ ## Version History and Support
675
+
676
+ **Current Version**: Check with `rird --version`
677
+
678
+ **Documentation**: https://rird.ai/docs
679
+ **GitHub**: https://github.com/rird-ai/rird
680
+ **Issues**: https://github.com/rird-ai/rird/issues
681
+ **Discussions**: https://github.com/rird-ai/rird/discussions