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,633 @@
1
+ # RIRD CLI Production Setup Guide
2
+
3
+ Production-grade installation and configuration for RIRD AI Agent.
4
+
5
+ ## System Requirements
6
+
7
+ ### Minimum Requirements
8
+
9
+ - **CPU**: Dual-core processor (x86-64 or ARM64)
10
+ - **RAM**: 2GB for basic operations, 4GB+ recommended
11
+ - **Disk Space**: 500MB for RIRD installation + 1GB for cache/logs
12
+ - **Network**: Stable internet connection for LLM and MCP communication
13
+
14
+ ### Supported Platforms
15
+
16
+ | Platform | Architecture | Status |
17
+ |----------|--------------|--------|
18
+ | Linux | x64, x64-baseline, ARM64, ARM64-musl, x64-musl | Supported |
19
+ | macOS | ARM64 (Apple Silicon), x64 (Intel) | Supported |
20
+ | Windows | x64, x64-baseline | Supported |
21
+ | WSL | All | Supported |
22
+
23
+ ### Required Software
24
+
25
+ - **Node.js** (optional): v18+ for npm installation method only
26
+ - **npm** (optional): v9+ for npm installation, or use curl installer
27
+ - **Python**: 3.8+ (installed automatically during setup)
28
+ - **Bash** (on Windows): Git Bash, WSL, or MSYS2
29
+
30
+ ## Installation Methods
31
+
32
+ ### Method 1: Universal Installer (Recommended)
33
+
34
+ Works on macOS, Linux, and WSL without requiring npm or Node.js.
35
+
36
+ ```bash
37
+ curl -fsSL https://rird.ai/install.sh | bash
38
+ ```
39
+
40
+ **Features**:
41
+ - Automatic platform detection
42
+ - Single binary installation
43
+ - No Node.js dependency
44
+ - Installs Python dependencies automatically
45
+ - Sets up MCP servers and configuration
46
+
47
+ **Output Location**: `~/.rird/bin/rird`
48
+
49
+ ### Method 2: npm Global Installation
50
+
51
+ For users with Node.js and npm already installed.
52
+
53
+ ```bash
54
+ npm install -g rird-ai
55
+ ```
56
+
57
+ **Benefits**:
58
+ - Updates via `npm install -g rird-ai@latest`
59
+ - Works with npm workspaces
60
+ - Easy version pinning
61
+
62
+ **Requires**: Node.js 18+, npm 9+
63
+
64
+ ### Method 3: Manual Installation
65
+
66
+ For advanced users or CI/CD pipelines.
67
+
68
+ ```bash
69
+ # 1. Download platform-specific binary
70
+ cd ~/.rird/bin
71
+ curl -L https://rird.ai/releases/rird-<platform>-<arch> -o rird
72
+ chmod +x rird
73
+
74
+ # 2. Run setup
75
+ ~/.rird/bin/rird --setup
76
+
77
+ # 3. Activate license
78
+ ~/.rird/bin/rird activate YOUR_LICENSE_KEY
79
+ ```
80
+
81
+ **Platforms**: Replace `<platform>-<arch>` with one of:
82
+ - `linux-x64`, `linux-arm64`, `linux-x64-baseline`
83
+ - `darwin-arm64`, `darwin-x64`
84
+ - `windows-x64`
85
+
86
+ ## Configuration
87
+
88
+ ### Initial Setup
89
+
90
+ After installation, RIRD creates the following directory structure:
91
+
92
+ ```
93
+ ~/.rird/
94
+ ├── bin/
95
+ │ └── rird # Executable binary
96
+ ├── engine/
97
+ │ ├── config.yaml # LLM and MCP configuration
98
+ │ ├── rird.json # Provider settings
99
+ │ └── stealth-browser-mcp/ # Browser automation MCP
100
+ ├── license.key # Your license key
101
+ └── license_cache.json # Cached license validation
102
+ ```
103
+
104
+ ### Configuration File: ~/.rird/engine/config.yaml
105
+
106
+ Main configuration file for LLM providers and execution modes.
107
+
108
+ ```yaml
109
+ # LLM Configuration
110
+ llm:
111
+ mode: remote # 'remote' or 'local'
112
+ remote_url: https://rird.ai/api/llm
113
+ main_model: 0000/ui-tars-1.5-7b:latest
114
+ fast_model: 0000/ui-tars-1.5-7b:latest
115
+ vision_model: 0000/ui-tars-1.5-7b:latest
116
+ temperature: 0.7
117
+ max_tokens: 4096
118
+
119
+ # Browser Automation
120
+ browser:
121
+ headless: true # Show browser window
122
+ timeout: 30000 # Milliseconds
123
+ stealth_mode: true # Anti-detection
124
+ proxy: null # Optional proxy URL
125
+
126
+ # MCP Configuration
127
+ mcp:
128
+ servers:
129
+ - name: stealth-browser-mcp
130
+ command: python
131
+ args: ~/.rird/engine/stealth-browser-mcp/main.py
132
+ enabled: true
133
+
134
+ # Execution
135
+ execution:
136
+ max_retries: 3
137
+ retry_delay: 1000
138
+ circuit_breaker:
139
+ enabled: true
140
+ failure_threshold: 5
141
+ reset_timeout: 60000
142
+
143
+ # Logging
144
+ logging:
145
+ level: info # debug, info, warn, error
146
+ format: json # json or text
147
+ file: ~/.rird/logs/rird.log
148
+ ```
149
+
150
+ ### Configuration File: ~/.rird/engine/rird.json
151
+
152
+ Provider API keys and model overrides.
153
+
154
+ ```json
155
+ {
156
+ "provider": {
157
+ "openai": {
158
+ "enabled": true,
159
+ "options": {
160
+ "apiKey": "sk-..."
161
+ }
162
+ },
163
+ "anthropic": {
164
+ "enabled": true,
165
+ "options": {
166
+ "apiKey": "sk-ant-..."
167
+ }
168
+ },
169
+ "google": {
170
+ "enabled": false,
171
+ "options": {
172
+ "apiKey": ""
173
+ }
174
+ }
175
+ },
176
+ "models": {
177
+ "main": "gpt-4",
178
+ "fast": "gpt-3.5-turbo"
179
+ }
180
+ }
181
+ ```
182
+
183
+ ### Environment Variables
184
+
185
+ Override configuration with environment variables (highest priority):
186
+
187
+ | Variable | Purpose | Example |
188
+ |----------|---------|---------|
189
+ | `RIRD_HOME` | Custom installation directory | `/opt/rird` |
190
+ | `RIRD_CONFIG` | Custom config file path | `/etc/rird/config.yaml` |
191
+ | `RIRD_ENGINE_DIR` | Custom engine directory | `/var/rird` |
192
+ | `RIRD_LICENSE_KEY` | License key (overrides file) | `rird_...` |
193
+ | `RIRD_API_KEY` | API key for license validation | `sk-...` |
194
+ | `DEBUG` | Enable debug logging | `1` |
195
+ | `RIRD_SKIP_AUTO_UPDATE` | Disable auto-updates | `1` |
196
+ | `ANTHROPIC_API_KEY` | Anthropic API key | `sk-ant-...` |
197
+ | `OPENAI_API_KEY` | OpenAI API key | `sk-...` |
198
+ | `GOOGLE_GENERATIVE_AI_API_KEY` | Google API key | `...` |
199
+
200
+ ## License Activation
201
+
202
+ ### Activate License
203
+
204
+ After installation, activate your license:
205
+
206
+ ```bash
207
+ rird activate YOUR_LICENSE_KEY
208
+ ```
209
+
210
+ **Steps**:
211
+ 1. Visit https://rird.ai/dashboard
212
+ 2. Copy your license key
213
+ 3. Run `rird activate <key>`
214
+ 4. System validates key and stores locally
215
+ 5. Run `rird` to start using
216
+
217
+ ### License Status
218
+
219
+ Check current license status anytime:
220
+
221
+ ```bash
222
+ rird status
223
+ ```
224
+
225
+ **Output Example**:
226
+ ```
227
+ Status: Active
228
+ Account: user@example.com
229
+ Plan: Pro
230
+ Cache expiry: 2026-01-15
231
+ ```
232
+
233
+ ### Device Fingerprinting
234
+
235
+ License validation uses secure device fingerprinting:
236
+
237
+ ```
238
+ SHA256(hostname + platform + arch + memory + cpu_count)
239
+ ```
240
+
241
+ Device fingerprint is:
242
+ - Computed locally only
243
+ - Used for validation only
244
+ - Never transmitted in plaintext
245
+ - Cached for 24 hours locally
246
+
247
+ ## Troubleshooting
248
+
249
+ ### Installation Issues
250
+
251
+ #### Binary Not Found
252
+
253
+ ```
254
+ Error: Binary for your platform not found
255
+ ```
256
+
257
+ **Solutions**:
258
+ 1. Check platform: `uname -m` (macOS/Linux) or `systeminfo` (Windows)
259
+ 2. Verify internet connection
260
+ 3. Manual install: Download from https://rird.ai/releases/
261
+ 4. Use npm fallback: `npm install -g rird-ai`
262
+
263
+ #### Permission Denied
264
+
265
+ ```
266
+ Error: Permission denied: ~/.rird/bin/rird
267
+ ```
268
+
269
+ **Solution**:
270
+ ```bash
271
+ chmod +x ~/.rird/bin/rird
272
+ ```
273
+
274
+ #### Python Dependency Missing
275
+
276
+ ```
277
+ Error: Python 3.8+ required but not found
278
+ ```
279
+
280
+ **Solutions**:
281
+ - macOS: `brew install python3`
282
+ - Ubuntu/Debian: `sudo apt-get install python3`
283
+ - Windows: Download from https://www.python.org/downloads/
284
+
285
+ ### License Issues
286
+
287
+ #### License Key Invalid
288
+
289
+ ```
290
+ Error: Invalid license key format
291
+ ```
292
+
293
+ **Solutions**:
294
+ 1. Get key from https://rird.ai/dashboard
295
+ 2. Verify key format: `rird_` prefix required
296
+ 3. Check for trailing spaces: `echo -n "key" > ~/.rird/license.key`
297
+
298
+ #### Could Not Reach License Server
299
+
300
+ ```
301
+ Error: Could not reach license server
302
+ ```
303
+
304
+ **Solutions**:
305
+ 1. Check internet connection: `ping rird.ai`
306
+ 2. Check firewall: Port 443 (HTTPS) required
307
+ 3. Verify DNS: `nslookup rird.ai`
308
+ 4. Use VPN if geographically restricted
309
+
310
+ #### License Cache Corrupted
311
+
312
+ ```bash
313
+ # Clear cache and re-validate
314
+ rm ~/.rird/license_cache.json
315
+ rird status
316
+ ```
317
+
318
+ ### Configuration Issues
319
+
320
+ #### Config File Not Found
321
+
322
+ ```
323
+ Error: Configuration file not found at ~/.rird/engine/config.yaml
324
+ ```
325
+
326
+ **Solution**:
327
+ ```bash
328
+ rird --setup # Regenerate configuration
329
+ ```
330
+
331
+ #### Invalid YAML Syntax
332
+
333
+ ```
334
+ Error: Failed to parse configuration
335
+ ```
336
+
337
+ **Solutions**:
338
+ 1. Validate YAML: `yamllint ~/.rird/engine/config.yaml`
339
+ 2. Use online validator: https://www.yamllint.com/
340
+ 3. Check indentation (YAML requires 2 spaces)
341
+ 4. Regenerate: `rird --setup`
342
+
343
+ ### Runtime Issues
344
+
345
+ #### Out of Memory
346
+
347
+ ```
348
+ Error: JavaScript heap out of memory
349
+ ```
350
+
351
+ **Solutions**:
352
+ 1. Increase Node.js heap:
353
+ ```bash
354
+ NODE_OPTIONS=--max-old-space-size=4096 rird <task>
355
+ ```
356
+ 2. Close other applications
357
+ 3. Upgrade system RAM
358
+
359
+ #### Timeout Errors
360
+
361
+ ```
362
+ Error: Task timed out after 30 seconds
363
+ ```
364
+
365
+ **Solutions**:
366
+ 1. Increase timeout in config:
367
+ ```yaml
368
+ browser:
369
+ timeout: 60000 # 60 seconds
370
+ ```
371
+ 2. Check network speed: `speedtest-cli`
372
+ 3. Reduce task complexity
373
+ 4. Enable retry mechanism:
374
+ ```yaml
375
+ execution:
376
+ max_retries: 5
377
+ ```
378
+
379
+ ## Performance Tuning
380
+
381
+ ### Optimize for Speed
382
+
383
+ For interactive tasks requiring fast response:
384
+
385
+ ```yaml
386
+ browser:
387
+ headless: true
388
+ timeout: 15000 # Faster timeout
389
+
390
+ execution:
391
+ max_retries: 1 # Fewer retries
392
+ retry_delay: 500
393
+
394
+ llm:
395
+ temperature: 0.3 # More deterministic
396
+ max_tokens: 2048 # Shorter responses
397
+ ```
398
+
399
+ ### Optimize for Accuracy
400
+
401
+ For complex analysis tasks:
402
+
403
+ ```yaml
404
+ browser:
405
+ headless: false # Visual feedback
406
+ timeout: 60000 # More time
407
+
408
+ execution:
409
+ max_retries: 5 # More retries
410
+ retry_delay: 2000
411
+
412
+ llm:
413
+ temperature: 0.7 # More creative
414
+ max_tokens: 8192 # Longer reasoning
415
+ ```
416
+
417
+ ### Optimize for Reliability
418
+
419
+ For production deployments:
420
+
421
+ ```yaml
422
+ browser:
423
+ stealth_mode: true
424
+ proxy: "http://proxy.company.com:8080"
425
+
426
+ execution:
427
+ circuit_breaker:
428
+ enabled: true
429
+ failure_threshold: 5
430
+ reset_timeout: 300000 # 5 minutes
431
+
432
+ logging:
433
+ level: debug
434
+ file: /var/log/rird/rird.log
435
+ ```
436
+
437
+ ### Resource Monitoring
438
+
439
+ Monitor resource usage:
440
+
441
+ ```bash
442
+ # CPU and memory
443
+ rird --stats
444
+
445
+ # Detailed metrics
446
+ rird --debug
447
+ ```
448
+
449
+ ## Scaling Considerations
450
+
451
+ ### Single Machine
452
+
453
+ Suitable for: Personal use, small teams, 1-5 concurrent tasks
454
+
455
+ Configuration:
456
+ ```yaml
457
+ execution:
458
+ max_concurrent: 5
459
+ memory_limit: 2GB
460
+ ```
461
+
462
+ ### Multiple Machines (Distributed)
463
+
464
+ For scaling to multiple users/tasks:
465
+
466
+ 1. **Shared Configuration Server**:
467
+ ```bash
468
+ rird serve --config-server
469
+ ```
470
+
471
+ 2. **Cloud Task Queue**:
472
+ ```bash
473
+ rird --cloud # Execute on cloud servers
474
+ ```
475
+
476
+ 3. **Load Balancing**:
477
+ - Use API server mode: `rird --server`
478
+ - Route requests via load balancer
479
+ - Monitor health: `curl localhost:8765/health`
480
+
481
+ ### Cloud Deployment
482
+
483
+ #### Docker Deployment
484
+
485
+ ```dockerfile
486
+ FROM node:18-alpine
487
+ RUN curl -fsSL https://rird.ai/install.sh | bash
488
+ ENV RIRD_LICENSE_KEY=your_key_here
489
+ ENV RIRD_HOME=/app/rird
490
+ ENTRYPOINT ["rird"]
491
+ ```
492
+
493
+ Build and run:
494
+ ```bash
495
+ docker build -t rird-app .
496
+ docker run -e RIRD_LICENSE_KEY=your_key -it rird-app <task>
497
+ ```
498
+
499
+ #### Kubernetes Deployment
500
+
501
+ ```yaml
502
+ apiVersion: apps/v1
503
+ kind: Deployment
504
+ metadata:
505
+ name: rird-agent
506
+ spec:
507
+ replicas: 3
508
+ selector:
509
+ matchLabels:
510
+ app: rird
511
+ template:
512
+ metadata:
513
+ labels:
514
+ app: rird
515
+ spec:
516
+ containers:
517
+ - name: rird
518
+ image: rird-app:latest
519
+ env:
520
+ - name: RIRD_LICENSE_KEY
521
+ valueFrom:
522
+ secretKeyRef:
523
+ name: rird-secrets
524
+ key: license-key
525
+ resources:
526
+ requests:
527
+ memory: "1Gi"
528
+ cpu: "500m"
529
+ limits:
530
+ memory: "4Gi"
531
+ cpu: "2000m"
532
+ ```
533
+
534
+ ## Maintenance
535
+
536
+ ### Regular Updates
537
+
538
+ Auto-update is enabled by default. Manual update:
539
+
540
+ ```bash
541
+ rird upgrade
542
+ ```
543
+
544
+ Or with npm:
545
+ ```bash
546
+ npm install -g rird-ai@latest
547
+ ```
548
+
549
+ ### Backup Configuration
550
+
551
+ Backup important files:
552
+
553
+ ```bash
554
+ # Backup license and configuration
555
+ tar -czf ~/rird-backup.tar.gz ~/.rird/
556
+
557
+ # Restore from backup
558
+ tar -xzf ~/rird-backup.tar.gz -C ~/
559
+ ```
560
+
561
+ ### Clean Logs and Cache
562
+
563
+ ```bash
564
+ # Remove old logs (older than 30 days)
565
+ find ~/.rird/logs -mtime +30 -delete
566
+
567
+ # Clear cache
568
+ rm -rf ~/.rird/cache/*
569
+
570
+ # Full cleanup (preserves license)
571
+ rird --clean
572
+ ```
573
+
574
+ ### Verify Installation Health
575
+
576
+ ```bash
577
+ # Run health check
578
+ rird health-check
579
+
580
+ # Expected output:
581
+ # [OK] License valid
582
+ # [OK] Python environment ready
583
+ # [OK] MCP servers running
584
+ # [OK] Network connectivity
585
+ ```
586
+
587
+ ## Support
588
+
589
+ ### Getting Help
590
+
591
+ 1. **Documentation**: https://rird.ai/docs
592
+ 2. **Status Page**: https://status.rird.ai
593
+ 3. **GitHub Issues**: https://github.com/rird-ai/rird
594
+ 4. **Community Forum**: https://community.rird.ai
595
+ 5. **Email Support**: support@rird.ai
596
+
597
+ ### Reporting Issues
598
+
599
+ When reporting issues, include:
600
+
601
+ ```bash
602
+ # System information
603
+ rird --version
604
+ rird status
605
+ uname -a # (macOS/Linux)
606
+
607
+ # Configuration validation
608
+ cat ~/.rird/engine/config.yaml
609
+
610
+ # Recent logs
611
+ tail -100 ~/.rird/logs/rird.log
612
+
613
+ # Error output with debug enabled
614
+ DEBUG=1 rird <command>
615
+ ```
616
+
617
+ ### Debug Mode
618
+
619
+ Enable verbose debugging:
620
+
621
+ ```bash
622
+ DEBUG=1 rird <task>
623
+ ```
624
+
625
+ Logs are saved to: `~/.rird/logs/rird.log`
626
+
627
+ ## Next Steps
628
+
629
+ 1. Activate your license: `rird activate YOUR_KEY`
630
+ 2. Run first task: `rird "what is 2+2?"`
631
+ 3. Configure LLM: Edit `~/.rird/engine/config.yaml`
632
+ 4. Explore commands: `rird help`
633
+ 5. Check documentation: https://rird.ai/docs/cli-reference