wao 0.41.3 → 0.41.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (719) hide show
  1. package/.babelrc-cjs +5 -0
  2. package/.babelrc-esm +5 -0
  3. package/.gitmodules +4 -0
  4. package/.prettierrc +6 -0
  5. package/README.md +90 -0
  6. package/app/.eslintrc.json +3 -0
  7. package/app/.mocharc.cjs +6 -0
  8. package/app/arweave.mjs +87 -0
  9. package/app/components/Footer.js +76 -0
  10. package/app/components/Global.js +1128 -0
  11. package/app/components/Header.js +306 -0
  12. package/app/components/Left.js +28 -0
  13. package/app/components/Logo.js +34 -0
  14. package/app/components/Middle.js +37 -0
  15. package/app/components/Sidebar.js +93 -0
  16. package/app/components/Tags.js +42 -0
  17. package/app/components/editor/Editor.js +322 -0
  18. package/app/components/editor/FilePath.js +42 -0
  19. package/app/components/editor/MonacoEditor.js +44 -0
  20. package/app/components/left/LeftMessages.js +85 -0
  21. package/app/components/left/LeftModules.js +86 -0
  22. package/app/components/left/LeftNetworks.js +438 -0
  23. package/app/components/left/LeftProcesses.js +98 -0
  24. package/app/components/left/LeftProjects.js +397 -0
  25. package/app/components/left/LeftTests.js +189 -0
  26. package/app/components/middle/MiddleBlocks.js +79 -0
  27. package/app/components/middle/MiddleEntity.js +16 -0
  28. package/app/components/middle/MiddleEntityAccount.js +264 -0
  29. package/app/components/middle/MiddleEntityAssignment.js +104 -0
  30. package/app/components/middle/MiddleEntityBlock.js +148 -0
  31. package/app/components/middle/MiddleEntityMessage.js +430 -0
  32. package/app/components/middle/MiddleEntityModule.js +183 -0
  33. package/app/components/middle/MiddleEntityProcess.js +323 -0
  34. package/app/components/middle/MiddleEntityTx.js +211 -0
  35. package/app/components/middle/MiddleMessages.js +87 -0
  36. package/app/components/middle/MiddleModules.js +89 -0
  37. package/app/components/middle/MiddleNetworks.js +516 -0
  38. package/app/components/middle/MiddleProcesses.js +87 -0
  39. package/app/components/middle/MiddleTests.js +134 -0
  40. package/app/components/modals/CreateFileModal.js +115 -0
  41. package/app/components/modals/CreateFolderModal.js +83 -0
  42. package/app/components/modals/CreateProjectModal.js +63 -0
  43. package/app/components/modals/FSModal.js +141 -0
  44. package/app/components/modals/ImportModal.js +105 -0
  45. package/app/components/modals/LaunchNetworkModal.js +95 -0
  46. package/app/components/modals/Modal.js +38 -0
  47. package/app/components/modals/ProxyModal.js +122 -0
  48. package/app/components/modals/RenameFileModal.js +95 -0
  49. package/app/components/styles/EditorScrollbarStyle.js +29 -0
  50. package/app/components/styles/EntityScrollbarStyle.js +29 -0
  51. package/app/components/styles/GlobalStyle.js +102 -0
  52. package/app/components/styles/XtermStyle.js +37 -0
  53. package/app/components/terminal/Terminal.js +132 -0
  54. package/app/components/terminal/Xterm.js +160 -0
  55. package/app/components/ui/avatar.jsx +49 -0
  56. package/app/components/ui/checkbox.jsx +17 -0
  57. package/app/components/ui/close-button.jsx +20 -0
  58. package/app/components/ui/color-mode.jsx +61 -0
  59. package/app/components/ui/dialog.jsx +54 -0
  60. package/app/components/ui/drawer.jsx +44 -0
  61. package/app/components/ui/field.jsx +22 -0
  62. package/app/components/ui/input-group.jsx +39 -0
  63. package/app/components/ui/popover.jsx +49 -0
  64. package/app/components/ui/provider.jsx +12 -0
  65. package/app/components/ui/radio.jsx +17 -0
  66. package/app/components/ui/slider.jsx +107 -0
  67. package/app/components/ui/toaster.jsx +69 -0
  68. package/app/components/ui/tooltip.jsx +35 -0
  69. package/app/index.js +10 -0
  70. package/app/jsconfig.json +7 -0
  71. package/app/lib/GithubCSS.js +1218 -0
  72. package/app/lib/addon-fit.js +72 -0
  73. package/app/lib/data.js +31 -0
  74. package/app/lib/github-markdown.css +1169 -0
  75. package/app/lib/global.js +1 -0
  76. package/app/lib/guide.js +82 -0
  77. package/app/lib/hub.js +109 -0
  78. package/app/lib/scripts.js +47 -0
  79. package/app/lib/store.js +34 -0
  80. package/app/lib/use.js +64 -0
  81. package/app/lib/utils.js +387 -0
  82. package/app/lib/webrtc.js +217 -0
  83. package/app/next.config.js +25 -0
  84. package/app/package.json +62 -0
  85. package/app/pages/404.js +9 -0
  86. package/app/pages/_app.js +10 -0
  87. package/app/pages/_document.js +14 -0
  88. package/app/pages/index.js +121 -0
  89. package/app/playwright.config.mjs +41 -0
  90. package/app/proxy.mjs +21 -0
  91. package/app/public/assets/cover.png +0 -0
  92. package/app/public/blueprints/apm.lua +91 -0
  93. package/app/public/blueprints/arena.lua +345 -0
  94. package/app/public/blueprints/arns.lua +318 -0
  95. package/app/public/blueprints/chat.lua +210 -0
  96. package/app/public/blueprints/chatroom.lua +56 -0
  97. package/app/public/blueprints/patch-legacy-reply.lua +13 -0
  98. package/app/public/blueprints/staking.lua +93 -0
  99. package/app/public/blueprints/token.lua +298 -0
  100. package/app/public/blueprints/voting.lua +45 -0
  101. package/app/public/favicon.ico +0 -0
  102. package/app/public/logo.png +0 -0
  103. package/cli-esm.js +55 -0
  104. package/cli.js +54 -0
  105. package/devnet/app/api.js +129 -0
  106. package/devnet/app/components/layout.js +89 -0
  107. package/devnet/app/components/pagination.js +144 -0
  108. package/devnet/app/components/search.js +159 -0
  109. package/devnet/app/components/table.js +124 -0
  110. package/devnet/app/components/tags.js +89 -0
  111. package/devnet/app/index.html +14 -0
  112. package/devnet/app/main.js +215 -0
  113. package/devnet/app/router.js +59 -0
  114. package/devnet/app/state.js +19 -0
  115. package/devnet/app/style.css +1606 -0
  116. package/devnet/app/utils.js +77 -0
  117. package/devnet/app/views/blocks.js +75 -0
  118. package/devnet/app/views/dashboard.js +127 -0
  119. package/devnet/app/views/entity.js +1473 -0
  120. package/devnet/app/views/messages.js +90 -0
  121. package/devnet/app/views/modules.js +165 -0
  122. package/devnet/app/views/processes.js +90 -0
  123. package/devnet/app/views/schedulers.js +90 -0
  124. package/devnet/app/views/transactions.js +88 -0
  125. package/devnet/migrations/0001_initial.sql +51 -0
  126. package/devnet/package.json +26 -0
  127. package/devnet/playwright.config.js +7 -0
  128. package/devnet/src/cu-worker.js +166 -0
  129. package/devnet/src/index.js +309 -0
  130. package/devnet/vite.config.js +17 -0
  131. package/devnet/vitest.config.js +10 -0
  132. package/devnet/wrangler-cu.toml +32 -0
  133. package/devnet/wrangler.toml +38 -0
  134. package/dhfs-tutorial-app/package.json +15 -0
  135. package/dist/esm/workspace/dashboard/public/favicon.png +0 -0
  136. package/dist/esm/workspace/src/counter.lua +14 -0
  137. package/dist/package.json +82 -0
  138. package/hb.sh +18 -0
  139. package/hbsig/.babelrc-cjs +5 -0
  140. package/hbsig/.babelrc-esm +5 -0
  141. package/hbsig/README.md +1 -0
  142. package/hbsig/dist/cjs/bin_to_str.js +44 -0
  143. package/hbsig/dist/cjs/collect-body-keys.js +470 -0
  144. package/hbsig/dist/cjs/commit.js +330 -0
  145. package/hbsig/dist/cjs/encode-array-item.js +110 -0
  146. package/hbsig/dist/cjs/encode-utils.js +242 -0
  147. package/hbsig/dist/cjs/encode.js +1365 -0
  148. package/hbsig/dist/cjs/erl_json.js +326 -0
  149. package/hbsig/dist/cjs/erl_str.js +1042 -0
  150. package/hbsig/dist/cjs/flat.js +279 -0
  151. package/hbsig/dist/cjs/http-message-signatures/httpbis.js +489 -0
  152. package/hbsig/dist/cjs/http-message-signatures/index.js +25 -0
  153. package/hbsig/dist/cjs/http-message-signatures/structured-header.js +129 -0
  154. package/hbsig/dist/cjs/httpsig.js +861 -0
  155. package/hbsig/dist/cjs/id.js +470 -0
  156. package/hbsig/dist/cjs/index.js +174 -0
  157. package/hbsig/dist/cjs/nocrypto.js +51 -0
  158. package/hbsig/dist/cjs/parser.js +201 -0
  159. package/hbsig/dist/cjs/send-utils.js +1231 -0
  160. package/hbsig/dist/cjs/send.js +211 -0
  161. package/hbsig/dist/cjs/signer-utils.js +494 -0
  162. package/hbsig/dist/cjs/signer.js +436 -0
  163. package/hbsig/dist/cjs/structured.js +515 -0
  164. package/hbsig/dist/cjs/test.js +12 -0
  165. package/hbsig/dist/cjs/utils.js +44 -0
  166. package/hbsig/dist/esm/bin_to_str.js +46 -0
  167. package/hbsig/dist/esm/collect-body-keys.js +436 -0
  168. package/hbsig/dist/esm/commit.js +219 -0
  169. package/hbsig/dist/esm/encode-array-item.js +112 -0
  170. package/hbsig/dist/esm/encode-utils.js +191 -0
  171. package/hbsig/dist/esm/encode.js +1256 -0
  172. package/hbsig/dist/esm/erl_json.js +292 -0
  173. package/hbsig/dist/esm/erl_str.js +1144 -0
  174. package/hbsig/dist/esm/flat.js +250 -0
  175. package/hbsig/dist/esm/http-message-signatures/httpbis.js +438 -0
  176. package/hbsig/dist/esm/http-message-signatures/index.js +4 -0
  177. package/hbsig/dist/esm/http-message-signatures/structured-header.js +105 -0
  178. package/hbsig/dist/esm/httpsig.js +866 -0
  179. package/hbsig/dist/esm/id.js +459 -0
  180. package/hbsig/dist/esm/index.js +13 -0
  181. package/hbsig/dist/esm/nocrypto.js +4 -0
  182. package/hbsig/dist/esm/package.json +3 -0
  183. package/hbsig/dist/esm/parser.js +171 -0
  184. package/hbsig/dist/esm/send-utils.js +1132 -0
  185. package/hbsig/dist/esm/send.js +142 -0
  186. package/hbsig/dist/esm/signer-utils.js +375 -0
  187. package/hbsig/dist/esm/signer.js +312 -0
  188. package/hbsig/dist/esm/structured.js +496 -0
  189. package/hbsig/dist/esm/test.js +2 -0
  190. package/hbsig/dist/esm/utils.js +29 -0
  191. package/hbsig/dist/package.json +39 -0
  192. package/hbsig/make.js +36 -0
  193. package/hbsig/package.json +39 -0
  194. package/hbsig/src/bin_to_str.js +46 -0
  195. package/hbsig/src/collect-body-keys.js +436 -0
  196. package/hbsig/src/commit.js +219 -0
  197. package/hbsig/src/encode-array-item.js +112 -0
  198. package/hbsig/src/encode-utils.js +191 -0
  199. package/hbsig/src/encode.js +1256 -0
  200. package/hbsig/src/erl_json.js +292 -0
  201. package/hbsig/src/erl_str.js +1144 -0
  202. package/hbsig/src/flat.js +250 -0
  203. package/hbsig/src/http-message-signatures/httpbis.js +438 -0
  204. package/hbsig/src/http-message-signatures/index.js +4 -0
  205. package/hbsig/src/http-message-signatures/structured-header.js +105 -0
  206. package/hbsig/src/httpsig.js +866 -0
  207. package/hbsig/src/id.js +459 -0
  208. package/hbsig/src/index.js +13 -0
  209. package/hbsig/src/nocrypto.js +4 -0
  210. package/hbsig/src/parser.js +171 -0
  211. package/hbsig/src/send-utils.js +1132 -0
  212. package/hbsig/src/send.js +142 -0
  213. package/hbsig/src/signer-utils.js +375 -0
  214. package/hbsig/src/signer.js +312 -0
  215. package/hbsig/src/structured.js +496 -0
  216. package/hbsig/src/test.js +2 -0
  217. package/hbsig/src/utils.js +29 -0
  218. package/lp/index.html +25 -0
  219. package/lp/package.json +19 -0
  220. package/lp/public/cover.png +0 -0
  221. package/lp/public/favicon.ico +0 -0
  222. package/lp/public/favicon.png +0 -0
  223. package/lp/public/images/book.jpg +0 -0
  224. package/lp/public/images/dashboard.png +0 -0
  225. package/lp/public/images/devnet.png +0 -0
  226. package/lp/public/images/hero-bg.png +0 -0
  227. package/lp/public/images/hyperadd.png +0 -0
  228. package/lp/public/images/message-flow.png +0 -0
  229. package/lp/public/images/mobile.png +0 -0
  230. package/lp/public/images/og-cover.png +0 -0
  231. package/lp/public/images/scan.png +0 -0
  232. package/lp/public/images/wao-hub.png +0 -0
  233. package/lp/public/images/wao-web.png +0 -0
  234. package/lp/public/logo.png +0 -0
  235. package/lp/src/App.jsx +29 -0
  236. package/lp/src/components/CodeBlock.jsx +37 -0
  237. package/lp/src/components/CodeBlock.module.css +89 -0
  238. package/lp/src/components/Footer.jsx +22 -0
  239. package/lp/src/components/Footer.module.css +60 -0
  240. package/lp/src/components/Nav.jsx +80 -0
  241. package/lp/src/components/Nav.module.css +177 -0
  242. package/lp/src/components/SectionWrapper.jsx +15 -0
  243. package/lp/src/hooks/useReveal.js +25 -0
  244. package/lp/src/hooks/useScrolled.js +14 -0
  245. package/lp/src/main.jsx +10 -0
  246. package/lp/src/sections/Book.jsx +60 -0
  247. package/lp/src/sections/Book.module.css +204 -0
  248. package/lp/src/sections/Browser.jsx +46 -0
  249. package/lp/src/sections/Browser.module.css +67 -0
  250. package/lp/src/sections/Devnet.jsx +55 -0
  251. package/lp/src/sections/Devnet.module.css +136 -0
  252. package/lp/src/sections/GetStarted.jsx +51 -0
  253. package/lp/src/sections/GetStarted.module.css +128 -0
  254. package/lp/src/sections/Hero.jsx +67 -0
  255. package/lp/src/sections/Hero.module.css +202 -0
  256. package/lp/src/sections/HyperADD.jsx +46 -0
  257. package/lp/src/sections/HyperADD.module.css +113 -0
  258. package/lp/src/sections/SDK.jsx +90 -0
  259. package/lp/src/sections/SDK.module.css +122 -0
  260. package/lp/src/sections/Testing.jsx +47 -0
  261. package/lp/src/sections/Testing.module.css +124 -0
  262. package/lp/src/sections/Vision.jsx +93 -0
  263. package/lp/src/sections/Vision.module.css +147 -0
  264. package/lp/src/styles/globals.css +285 -0
  265. package/lp/src/utils/scrollTo.js +4 -0
  266. package/lp/vite.config.js +7 -0
  267. package/make.js +39 -0
  268. package/package.json +17 -12
  269. package/patches/@permaweb+ao-loader+0.0.44.patch +64 -0
  270. package/plan.md +435 -0
  271. package/rebar.lock +1 -0
  272. package/src/accounts-web.js +128 -0
  273. package/src/accounts.js +124 -0
  274. package/src/adaptor-base.js +622 -0
  275. package/src/adaptor-cf.js +11 -0
  276. package/src/adaptor-web.js +11 -0
  277. package/src/adaptor.js +10 -0
  278. package/src/ao-loader.js +30660 -0
  279. package/src/ao.js +1173 -0
  280. package/src/aoconnect-base.js +1098 -0
  281. package/src/aoconnect-cf.js +9 -0
  282. package/src/aoconnect-web.js +8 -0
  283. package/src/aoconnect.js +8 -0
  284. package/src/aos_wamr.js +1 -0
  285. package/src/ar-remote.js +87 -0
  286. package/src/ar.js +276 -0
  287. package/src/armem-base.js +529 -0
  288. package/src/armem-cf.js +67 -0
  289. package/src/armem-web.js +19 -0
  290. package/src/armem.js +26 -0
  291. package/src/bao.js +141 -0
  292. package/src/bar.js +366 -0
  293. package/src/build.js +7 -0
  294. package/src/bundler.js +119 -0
  295. package/src/car.js +10 -0
  296. package/src/cf-env.js +29 -0
  297. package/src/cf.js +11 -0
  298. package/src/cli.js +561 -0
  299. package/src/compress.js +112 -0
  300. package/src/create.js +415 -0
  301. package/src/devs.js +86 -0
  302. package/src/dirname.js +1 -0
  303. package/src/dodb.js +26 -0
  304. package/src/erl_json.js +289 -0
  305. package/src/erl_str.js +1139 -0
  306. package/src/gql.js +229 -0
  307. package/src/hb.js +967 -0
  308. package/src/helpers.js +203 -0
  309. package/src/http.js +619 -0
  310. package/src/hub/bundler.js +123 -0
  311. package/src/hub/cu.js +74 -0
  312. package/src/hub/fs.js +157 -0
  313. package/src/hub/index.js +85 -0
  314. package/src/hub/utils.js +64 -0
  315. package/src/hub/ws-proxy.js +67 -0
  316. package/src/hyper-aos.js +1 -0
  317. package/src/hyperbeam-server.js +21 -0
  318. package/src/hyperbeam.js +585 -0
  319. package/src/index.js +5 -0
  320. package/src/keygen.js +47 -0
  321. package/src/lfdb.js +67 -0
  322. package/src/lua/aos.wasm +0 -0
  323. package/src/lua/aos2_0_1.js +1 -0
  324. package/src/lua/aos2_0_1.wasm +0 -0
  325. package/src/lua/aos2_0_3.js +1 -0
  326. package/src/lua/aos2_0_3.wasm +0 -0
  327. package/src/lua/aos2_0_4_32.js +1 -0
  328. package/src/lua/aos2_0_4_32.wasm +0 -0
  329. package/src/lua/aos2_0_6.wasm +0 -0
  330. package/src/lua/apm.lua +61 -0
  331. package/src/lua/llama.wasm +0 -0
  332. package/src/lua/process.wasm +0 -0
  333. package/src/lua/sqlite.js +1 -0
  334. package/src/lua/sqlite.wasm +0 -0
  335. package/src/lua/weavedb_mock.lua +44 -0
  336. package/src/lua/weavedrive.lua +53 -0
  337. package/src/run.js +25 -0
  338. package/src/server.js +173 -0
  339. package/src/storage-multi.js +183 -0
  340. package/src/tao.js +12 -0
  341. package/src/tar.js +10 -0
  342. package/src/test.js +42 -0
  343. package/src/tgql-d1.js +407 -0
  344. package/src/tgql.js +310 -0
  345. package/src/toerl.js +162 -0
  346. package/src/utils.js +777 -0
  347. package/src/wao.js +29 -0
  348. package/src/waosm/README.md +81 -0
  349. package/src/waosm/waosm.d.ts +40 -0
  350. package/src/waosm/waosm.js +240 -0
  351. package/src/waosm/waosm_bg.wasm +0 -0
  352. package/src/waosm/waosm_bg.wasm.d.ts +8 -0
  353. package/src/waosm-node/README.md +81 -0
  354. package/src/waosm-node/waosm.d.ts +8 -0
  355. package/src/waosm-node/waosm.js +4 -0
  356. package/src/waosm-node/waosm_bg.js +147 -0
  357. package/src/waosm-node/waosm_bg.wasm +0 -0
  358. package/src/waosm-node/waosm_bg.wasm.d.ts +8 -0
  359. package/src/waosm-node/waosm_bg.wasm.js +14 -0
  360. package/src/waosm-node.js +9 -0
  361. package/src/war.js +10 -0
  362. package/src/weavedrive.js +376 -0
  363. package/src/web.js +11 -0
  364. package/src/workspace/.mcp.json +8 -0
  365. package/src/workspace/CLAUDE.md +258 -0
  366. package/src/workspace/README.md +85 -0
  367. package/src/workspace/dashboard/index.html +163 -0
  368. package/src/workspace/dashboard/package.json +18 -0
  369. package/src/workspace/dashboard/public/favicon.ico +0 -0
  370. package/src/workspace/dashboard/public/favicon.png +0 -0
  371. package/src/workspace/dashboard/server.js +224 -0
  372. package/src/workspace/dashboard/src/App.jsx +2350 -0
  373. package/{cjs/workspace/frontend → src/workspace/dashboard}/vite.config.js +6 -0
  374. package/src/workspace/package.json +18 -0
  375. package/src/workspace/src/counter.lua +14 -0
  376. package/tsconfig.json +18 -0
  377. package/types/index.d.ts +329 -0
  378. package/waollama/.eslintrc.json +3 -0
  379. package/waollama/README.md +19 -0
  380. package/waollama/arweave.mjs +87 -0
  381. package/waollama/components/ui/avatar.jsx +49 -0
  382. package/waollama/components/ui/checkbox.jsx +17 -0
  383. package/waollama/components/ui/close-button.jsx +20 -0
  384. package/waollama/components/ui/color-mode.jsx +61 -0
  385. package/waollama/components/ui/dialog.jsx +54 -0
  386. package/waollama/components/ui/drawer.jsx +44 -0
  387. package/waollama/components/ui/field.jsx +22 -0
  388. package/waollama/components/ui/input-group.jsx +39 -0
  389. package/waollama/components/ui/popover.jsx +49 -0
  390. package/waollama/components/ui/provider.jsx +12 -0
  391. package/waollama/components/ui/radio.jsx +17 -0
  392. package/waollama/components/ui/slider.jsx +107 -0
  393. package/waollama/components/ui/tooltip.jsx +35 -0
  394. package/waollama/index.js +10 -0
  395. package/waollama/jsconfig.json +7 -0
  396. package/waollama/lib/ao-loader.js +30654 -0
  397. package/waollama/lib/client.js +1 -0
  398. package/waollama/lib/wasm.js +1 -0
  399. package/waollama/next.config.js +25 -0
  400. package/waollama/package.json +43 -0
  401. package/waollama/pages/404.js +9 -0
  402. package/waollama/pages/_app.js +9 -0
  403. package/waollama/pages/_document.js +14 -0
  404. package/waollama/pages/index.js +212 -0
  405. package/waollama/playwright.config.js +31 -0
  406. package/waollama/proxy.mjs +21 -0
  407. package/waollama/public/favicon.ico +0 -0
  408. package/waollama/public/human.png +0 -0
  409. package/waollama/public/llama.png +0 -0
  410. package/waosm/Cargo.toml +11 -0
  411. package/waosm/README.md +81 -0
  412. package/waosm/compress.js +112 -0
  413. package/waosm/make.js +33 -0
  414. package/waosm/package.json +10 -0
  415. package/waosm/src/lib.rs +180 -0
  416. package/waosm/test.js +16 -0
  417. package/cjs/workspace/.claude/agents/builder.md +0 -99
  418. package/cjs/workspace/.claude/agents/device-builder.md +0 -86
  419. package/cjs/workspace/.claude/agents/tester.md +0 -90
  420. package/cjs/workspace/.claude/mcp/dashboard/server.js +0 -128
  421. package/cjs/workspace/.claude/rules/deploy.md +0 -45
  422. package/cjs/workspace/.claude/rules/frontend.md +0 -69
  423. package/cjs/workspace/.claude/rules/hyperbeam.md +0 -104
  424. package/cjs/workspace/.claude/rules/lua.md +0 -108
  425. package/cjs/workspace/.claude/rules/testing.md +0 -257
  426. package/cjs/workspace/.claude/settings.json +0 -109
  427. package/cjs/workspace/.claude/skills/build/SKILL.md +0 -214
  428. package/cjs/workspace/.claude/skills/build-aos/SKILL.md +0 -129
  429. package/cjs/workspace/.claude/skills/build-device/SKILL.md +0 -192
  430. package/cjs/workspace/.claude/skills/build-frontend/SKILL.md +0 -134
  431. package/cjs/workspace/.claude/skills/build-module/SKILL.md +0 -281
  432. package/cjs/workspace/.claude/skills/create-aos/SKILL.md +0 -63
  433. package/cjs/workspace/.claude/skills/create-device/SKILL.md +0 -87
  434. package/cjs/workspace/.claude/skills/create-module/SKILL.md +0 -162
  435. package/cjs/workspace/.claude/skills/debug/SKILL.md +0 -57
  436. package/cjs/workspace/.claude/skills/deploy/SKILL.md +0 -85
  437. package/cjs/workspace/.claude/skills/dev/SKILL.md +0 -32
  438. package/cjs/workspace/.claude/skills/plan/SKILL.md +0 -176
  439. package/cjs/workspace/.claude/skills/readme/SKILL.md +0 -186
  440. package/cjs/workspace/.claude/skills/report/SKILL.md +0 -49
  441. package/cjs/workspace/.claude/skills/team/SKILL.md +0 -101
  442. package/cjs/workspace/.claude/skills/test/SKILL.md +0 -56
  443. package/cjs/workspace/.claude/skills/test-device/SKILL.md +0 -114
  444. package/cjs/workspace/.claude/skills/test-e2e/SKILL.md +0 -103
  445. package/cjs/workspace/.claude/skills/test-hb/SKILL.md +0 -76
  446. package/cjs/workspace/.claude/skills/validate/SKILL.md +0 -96
  447. package/cjs/workspace/.claude/skills/validate/scripts/check-lua.sh +0 -41
  448. package/cjs/workspace/docs/aos-lua.md +0 -428
  449. package/cjs/workspace/docs/debug.md +0 -230
  450. package/cjs/workspace/docs/hyperbeam-dev.md +0 -606
  451. package/cjs/workspace/docs/hyperbeam-devices.md +0 -618
  452. package/cjs/workspace/docs/wao-sdk.md +0 -807
  453. package/cjs/workspace/frontend/e2e/.gitkeep +0 -0
  454. package/cjs/workspace/frontend/index.html +0 -12
  455. package/cjs/workspace/frontend/package.json +0 -24
  456. package/cjs/workspace/frontend/playwright.config.js +0 -10
  457. package/cjs/workspace/frontend/src/App.jsx +0 -24
  458. package/cjs/workspace/frontend/test/.gitkeep +0 -0
  459. package/cjs/workspace/frontend/vitest.config.js +0 -10
  460. package/cjs/workspace/scripts/deploy.js +0 -140
  461. package/cjs/workspace/scripts/keygen.js +0 -52
  462. package/cjs/workspace/test/aos.test.js +0 -98
  463. package/cjs/workspace/test/hyperbeam.test.js +0 -80
  464. package/esm/compiler/native +0 -0
  465. package/esm/workspace/.claude/agents/builder.md +0 -99
  466. package/esm/workspace/.claude/agents/device-builder.md +0 -86
  467. package/esm/workspace/.claude/agents/tester.md +0 -90
  468. package/esm/workspace/.claude/mcp/dashboard/server.js +0 -128
  469. package/esm/workspace/.claude/rules/deploy.md +0 -45
  470. package/esm/workspace/.claude/rules/frontend.md +0 -69
  471. package/esm/workspace/.claude/rules/hyperbeam.md +0 -104
  472. package/esm/workspace/.claude/rules/lua.md +0 -108
  473. package/esm/workspace/.claude/rules/testing.md +0 -257
  474. package/esm/workspace/.claude/settings.json +0 -109
  475. package/esm/workspace/.claude/skills/build/SKILL.md +0 -214
  476. package/esm/workspace/.claude/skills/build-aos/SKILL.md +0 -129
  477. package/esm/workspace/.claude/skills/build-device/SKILL.md +0 -192
  478. package/esm/workspace/.claude/skills/build-frontend/SKILL.md +0 -134
  479. package/esm/workspace/.claude/skills/build-module/SKILL.md +0 -281
  480. package/esm/workspace/.claude/skills/create-aos/SKILL.md +0 -63
  481. package/esm/workspace/.claude/skills/create-device/SKILL.md +0 -87
  482. package/esm/workspace/.claude/skills/create-module/SKILL.md +0 -162
  483. package/esm/workspace/.claude/skills/debug/SKILL.md +0 -57
  484. package/esm/workspace/.claude/skills/deploy/SKILL.md +0 -85
  485. package/esm/workspace/.claude/skills/dev/SKILL.md +0 -32
  486. package/esm/workspace/.claude/skills/plan/SKILL.md +0 -176
  487. package/esm/workspace/.claude/skills/readme/SKILL.md +0 -186
  488. package/esm/workspace/.claude/skills/report/SKILL.md +0 -49
  489. package/esm/workspace/.claude/skills/team/SKILL.md +0 -101
  490. package/esm/workspace/.claude/skills/test/SKILL.md +0 -56
  491. package/esm/workspace/.claude/skills/test-device/SKILL.md +0 -114
  492. package/esm/workspace/.claude/skills/test-e2e/SKILL.md +0 -103
  493. package/esm/workspace/.claude/skills/test-hb/SKILL.md +0 -76
  494. package/esm/workspace/.claude/skills/validate/SKILL.md +0 -96
  495. package/esm/workspace/.claude/skills/validate/scripts/check-lua.sh +0 -41
  496. package/esm/workspace/docs/aos-lua.md +0 -428
  497. package/esm/workspace/docs/debug.md +0 -230
  498. package/esm/workspace/docs/hyperbeam-dev.md +0 -606
  499. package/esm/workspace/docs/hyperbeam-devices.md +0 -618
  500. package/esm/workspace/docs/wao-sdk.md +0 -807
  501. package/esm/workspace/frontend/e2e/.gitkeep +0 -0
  502. package/esm/workspace/frontend/index.html +0 -12
  503. package/esm/workspace/frontend/package.json +0 -24
  504. package/esm/workspace/frontend/playwright.config.js +0 -10
  505. package/esm/workspace/frontend/src/App.jsx +0 -24
  506. package/esm/workspace/frontend/src/main.jsx +0 -9
  507. package/esm/workspace/frontend/test/.gitkeep +0 -0
  508. package/esm/workspace/frontend/vite.config.js +0 -6
  509. package/esm/workspace/frontend/vitest.config.js +0 -10
  510. package/esm/workspace/scripts/deploy.js +0 -140
  511. package/esm/workspace/scripts/keygen.js +0 -52
  512. package/esm/workspace/test/aos.test.js +0 -98
  513. package/esm/workspace/test/hyperbeam.test.js +0 -80
  514. /package/{cjs/workspace/dashboard/public → devnet/app}/favicon.ico +0 -0
  515. /package/{cjs/workspace → dhfs-tutorial-app}/src/counter.lua +0 -0
  516. /package/{cjs → dist/cjs}/accounts-web.js +0 -0
  517. /package/{cjs → dist/cjs}/accounts.js +0 -0
  518. /package/{cjs → dist/cjs}/adaptor-base.js +0 -0
  519. /package/{cjs → dist/cjs}/adaptor-cf.js +0 -0
  520. /package/{cjs → dist/cjs}/adaptor-web.js +0 -0
  521. /package/{cjs → dist/cjs}/adaptor.js +0 -0
  522. /package/{cjs → dist/cjs}/ao-loader.js +0 -0
  523. /package/{cjs → dist/cjs}/ao.js +0 -0
  524. /package/{cjs → dist/cjs}/aoconnect-base.js +0 -0
  525. /package/{cjs → dist/cjs}/aoconnect-cf.js +0 -0
  526. /package/{cjs → dist/cjs}/aoconnect-web.js +0 -0
  527. /package/{cjs → dist/cjs}/aoconnect.js +0 -0
  528. /package/{cjs → dist/cjs}/aos_wamr.js +0 -0
  529. /package/{cjs → dist/cjs}/ar-remote.js +0 -0
  530. /package/{cjs → dist/cjs}/ar.js +0 -0
  531. /package/{cjs → dist/cjs}/armem-base.js +0 -0
  532. /package/{cjs → dist/cjs}/armem-cf.js +0 -0
  533. /package/{cjs → dist/cjs}/armem-web.js +0 -0
  534. /package/{cjs → dist/cjs}/armem.js +0 -0
  535. /package/{cjs → dist/cjs}/bao.js +0 -0
  536. /package/{cjs → dist/cjs}/bar.js +0 -0
  537. /package/{cjs → dist/cjs}/build.js +0 -0
  538. /package/{cjs → dist/cjs}/bundler.js +0 -0
  539. /package/{cjs → dist/cjs}/car.js +0 -0
  540. /package/{cjs → dist/cjs}/cf-env.js +0 -0
  541. /package/{cjs → dist/cjs}/cf.js +0 -0
  542. /package/{cjs → dist/cjs}/cli.js +0 -0
  543. /package/{cjs → dist/cjs}/compress.js +0 -0
  544. /package/{cjs → dist/cjs}/create.js +0 -0
  545. /package/{cjs → dist/cjs}/devs.js +0 -0
  546. /package/{cjs → dist/cjs}/dirname.js +0 -0
  547. /package/{cjs → dist/cjs}/dodb.js +0 -0
  548. /package/{cjs → dist/cjs}/erl_json.js +0 -0
  549. /package/{cjs → dist/cjs}/erl_str.js +0 -0
  550. /package/{cjs → dist/cjs}/gql.js +0 -0
  551. /package/{cjs → dist/cjs}/hb.js +0 -0
  552. /package/{cjs → dist/cjs}/helpers.js +0 -0
  553. /package/{cjs → dist/cjs}/http.js +0 -0
  554. /package/{cjs → dist/cjs}/hub/bundler.js +0 -0
  555. /package/{cjs → dist/cjs}/hub/cu.js +0 -0
  556. /package/{cjs → dist/cjs}/hub/fs.js +0 -0
  557. /package/{cjs → dist/cjs}/hub/index.js +0 -0
  558. /package/{cjs → dist/cjs}/hub/utils.js +0 -0
  559. /package/{cjs → dist/cjs}/hub/ws-proxy.js +0 -0
  560. /package/{cjs → dist/cjs}/hyper-aos.js +0 -0
  561. /package/{cjs → dist/cjs}/hyperbeam-server.js +0 -0
  562. /package/{cjs → dist/cjs}/hyperbeam.js +0 -0
  563. /package/{cjs → dist/cjs}/index.js +0 -0
  564. /package/{cjs → dist/cjs}/keygen.js +0 -0
  565. /package/{cjs → dist/cjs}/lfdb.js +0 -0
  566. /package/{cjs → dist/cjs}/lua/aos.wasm +0 -0
  567. /package/{cjs → dist/cjs}/lua/aos2_0_1.js +0 -0
  568. /package/{cjs → dist/cjs}/lua/aos2_0_1.wasm +0 -0
  569. /package/{cjs → dist/cjs}/lua/aos2_0_3.js +0 -0
  570. /package/{cjs → dist/cjs}/lua/aos2_0_3.wasm +0 -0
  571. /package/{cjs → dist/cjs}/lua/aos2_0_4_32.js +0 -0
  572. /package/{cjs → dist/cjs}/lua/aos2_0_4_32.wasm +0 -0
  573. /package/{cjs → dist/cjs}/lua/aos2_0_6.wasm +0 -0
  574. /package/{cjs → dist/cjs}/lua/apm.lua +0 -0
  575. /package/{cjs → dist/cjs}/lua/llama.wasm +0 -0
  576. /package/{cjs → dist/cjs}/lua/process.wasm +0 -0
  577. /package/{cjs → dist/cjs}/lua/sqlite.js +0 -0
  578. /package/{cjs → dist/cjs}/lua/sqlite.wasm +0 -0
  579. /package/{cjs → dist/cjs}/lua/weavedb_mock.lua +0 -0
  580. /package/{cjs → dist/cjs}/lua/weavedrive.lua +0 -0
  581. /package/{cjs → dist/cjs}/run.js +0 -0
  582. /package/{cjs → dist/cjs}/server.js +0 -0
  583. /package/{cjs → dist/cjs}/storage-multi.js +0 -0
  584. /package/{cjs → dist/cjs}/tao.js +0 -0
  585. /package/{cjs → dist/cjs}/tar.js +0 -0
  586. /package/{cjs → dist/cjs}/test.js +0 -0
  587. /package/{cjs → dist/cjs}/tgql-d1.js +0 -0
  588. /package/{cjs → dist/cjs}/tgql.js +0 -0
  589. /package/{cjs → dist/cjs}/toerl.js +0 -0
  590. /package/{cjs → dist/cjs}/utils.js +0 -0
  591. /package/{cjs → dist/cjs}/wao.js +0 -0
  592. /package/{cjs → dist/cjs}/waosm/waosm.js +0 -0
  593. /package/{cjs → dist/cjs}/waosm-node/waosm.js +0 -0
  594. /package/{cjs → dist/cjs}/waosm-node/waosm_bg.js +0 -0
  595. /package/{cjs → dist/cjs}/waosm-node/waosm_bg.wasm +0 -0
  596. /package/{cjs → dist/cjs}/waosm-node/waosm_bg.wasm.js +0 -0
  597. /package/{cjs → dist/cjs}/waosm-node.js +0 -0
  598. /package/{cjs → dist/cjs}/war.js +0 -0
  599. /package/{cjs → dist/cjs}/weavedrive.js +0 -0
  600. /package/{cjs → dist/cjs}/web.js +0 -0
  601. /package/{cjs → dist/cjs}/workspace/.mcp.json +0 -0
  602. /package/{cjs → dist/cjs}/workspace/CLAUDE.md +0 -0
  603. /package/{cjs → dist/cjs}/workspace/README.md +0 -0
  604. /package/{cjs → dist/cjs}/workspace/dashboard/index.html +0 -0
  605. /package/{cjs → dist/cjs}/workspace/dashboard/package.json +0 -0
  606. /package/{esm → dist/cjs}/workspace/dashboard/public/favicon.ico +0 -0
  607. /package/{cjs → dist/cjs}/workspace/dashboard/public/favicon.png +0 -0
  608. /package/{cjs → dist/cjs}/workspace/dashboard/server.js +0 -0
  609. /package/{cjs → dist/cjs}/workspace/dashboard/src/App.jsx +0 -0
  610. /package/{cjs → dist/cjs}/workspace/dashboard/src/main.jsx +0 -0
  611. /package/{cjs → dist/cjs}/workspace/dashboard/vite.config.js +0 -0
  612. /package/{cjs → dist/cjs}/workspace/package.json +0 -0
  613. /package/{esm → dist/cjs}/workspace/src/counter.lua +0 -0
  614. /package/{esm → dist/esm}/accounts-web.js +0 -0
  615. /package/{esm → dist/esm}/accounts.js +0 -0
  616. /package/{esm → dist/esm}/adaptor-base.js +0 -0
  617. /package/{esm → dist/esm}/adaptor-cf.js +0 -0
  618. /package/{esm → dist/esm}/adaptor-web.js +0 -0
  619. /package/{esm → dist/esm}/adaptor.js +0 -0
  620. /package/{esm → dist/esm}/ao-loader.js +0 -0
  621. /package/{esm → dist/esm}/ao.js +0 -0
  622. /package/{esm → dist/esm}/aoconnect-base.js +0 -0
  623. /package/{esm → dist/esm}/aoconnect-cf.js +0 -0
  624. /package/{esm → dist/esm}/aoconnect-web.js +0 -0
  625. /package/{esm → dist/esm}/aoconnect.js +0 -0
  626. /package/{esm → dist/esm}/aos_wamr.js +0 -0
  627. /package/{esm → dist/esm}/ar-remote.js +0 -0
  628. /package/{esm → dist/esm}/ar.js +0 -0
  629. /package/{esm → dist/esm}/armem-base.js +0 -0
  630. /package/{esm → dist/esm}/armem-cf.js +0 -0
  631. /package/{esm → dist/esm}/armem-web.js +0 -0
  632. /package/{esm → dist/esm}/armem.js +0 -0
  633. /package/{esm → dist/esm}/bao.js +0 -0
  634. /package/{esm → dist/esm}/bar.js +0 -0
  635. /package/{esm → dist/esm}/build.js +0 -0
  636. /package/{esm → dist/esm}/bundler.js +0 -0
  637. /package/{esm → dist/esm}/car.js +0 -0
  638. /package/{esm → dist/esm}/cf-env.js +0 -0
  639. /package/{esm → dist/esm}/cf.js +0 -0
  640. /package/{esm → dist/esm}/cli.js +0 -0
  641. /package/{esm → dist/esm}/compress.js +0 -0
  642. /package/{esm → dist/esm}/create.js +0 -0
  643. /package/{esm → dist/esm}/devs.js +0 -0
  644. /package/{esm → dist/esm}/dirname.js +0 -0
  645. /package/{esm → dist/esm}/dodb.js +0 -0
  646. /package/{esm → dist/esm}/erl_json.js +0 -0
  647. /package/{esm → dist/esm}/erl_str.js +0 -0
  648. /package/{esm → dist/esm}/gql.js +0 -0
  649. /package/{esm → dist/esm}/hb.js +0 -0
  650. /package/{esm → dist/esm}/helpers.js +0 -0
  651. /package/{esm → dist/esm}/http.js +0 -0
  652. /package/{esm → dist/esm}/hub/bundler.js +0 -0
  653. /package/{esm → dist/esm}/hub/cu.js +0 -0
  654. /package/{esm → dist/esm}/hub/fs.js +0 -0
  655. /package/{esm → dist/esm}/hub/index.js +0 -0
  656. /package/{esm → dist/esm}/hub/utils.js +0 -0
  657. /package/{esm → dist/esm}/hub/ws-proxy.js +0 -0
  658. /package/{esm → dist/esm}/hyper-aos.js +0 -0
  659. /package/{esm → dist/esm}/hyperbeam-server.js +0 -0
  660. /package/{esm → dist/esm}/hyperbeam.js +0 -0
  661. /package/{esm → dist/esm}/index.js +0 -0
  662. /package/{esm → dist/esm}/keygen.js +0 -0
  663. /package/{esm → dist/esm}/lfdb.js +0 -0
  664. /package/{esm → dist/esm}/lua/aos.wasm +0 -0
  665. /package/{esm → dist/esm}/lua/aos2_0_1.js +0 -0
  666. /package/{esm → dist/esm}/lua/aos2_0_1.wasm +0 -0
  667. /package/{esm → dist/esm}/lua/aos2_0_3.js +0 -0
  668. /package/{esm → dist/esm}/lua/aos2_0_3.wasm +0 -0
  669. /package/{esm → dist/esm}/lua/aos2_0_4_32.js +0 -0
  670. /package/{esm → dist/esm}/lua/aos2_0_4_32.wasm +0 -0
  671. /package/{esm → dist/esm}/lua/aos2_0_6.wasm +0 -0
  672. /package/{esm → dist/esm}/lua/apm.lua +0 -0
  673. /package/{esm → dist/esm}/lua/llama.wasm +0 -0
  674. /package/{esm → dist/esm}/lua/process.wasm +0 -0
  675. /package/{esm → dist/esm}/lua/sqlite.js +0 -0
  676. /package/{esm → dist/esm}/lua/sqlite.wasm +0 -0
  677. /package/{esm → dist/esm}/lua/weavedb_mock.lua +0 -0
  678. /package/{esm → dist/esm}/lua/weavedrive.lua +0 -0
  679. /package/{esm → dist/esm}/package.json +0 -0
  680. /package/{esm → dist/esm}/run.js +0 -0
  681. /package/{esm → dist/esm}/server.js +0 -0
  682. /package/{esm → dist/esm}/storage-multi.js +0 -0
  683. /package/{esm → dist/esm}/tao.js +0 -0
  684. /package/{esm → dist/esm}/tar.js +0 -0
  685. /package/{esm → dist/esm}/test.js +0 -0
  686. /package/{esm → dist/esm}/tgql-d1.js +0 -0
  687. /package/{esm → dist/esm}/tgql.js +0 -0
  688. /package/{esm → dist/esm}/toerl.js +0 -0
  689. /package/{esm → dist/esm}/utils.js +0 -0
  690. /package/{esm → dist/esm}/wao.js +0 -0
  691. /package/{esm → dist/esm}/waosm/README.md +0 -0
  692. /package/{esm → dist/esm}/waosm/waosm.d.ts +0 -0
  693. /package/{esm → dist/esm}/waosm/waosm.js +0 -0
  694. /package/{esm → dist/esm}/waosm/waosm_bg.wasm +0 -0
  695. /package/{esm → dist/esm}/waosm/waosm_bg.wasm.d.ts +0 -0
  696. /package/{esm → dist/esm}/waosm-node/README.md +0 -0
  697. /package/{esm → dist/esm}/waosm-node/waosm.d.ts +0 -0
  698. /package/{esm → dist/esm}/waosm-node/waosm.js +0 -0
  699. /package/{esm → dist/esm}/waosm-node/waosm_bg.js +0 -0
  700. /package/{esm → dist/esm}/waosm-node/waosm_bg.wasm +0 -0
  701. /package/{esm → dist/esm}/waosm-node/waosm_bg.wasm.d.ts +0 -0
  702. /package/{esm → dist/esm}/waosm-node/waosm_bg.wasm.js +0 -0
  703. /package/{esm → dist/esm}/waosm-node.js +0 -0
  704. /package/{esm → dist/esm}/war.js +0 -0
  705. /package/{esm → dist/esm}/weavedrive.js +0 -0
  706. /package/{esm → dist/esm}/web.js +0 -0
  707. /package/{esm → dist/esm}/workspace/.mcp.json +0 -0
  708. /package/{esm → dist/esm}/workspace/CLAUDE.md +0 -0
  709. /package/{esm → dist/esm}/workspace/README.md +0 -0
  710. /package/{esm → dist/esm}/workspace/dashboard/index.html +0 -0
  711. /package/{esm → dist/esm}/workspace/dashboard/package.json +0 -0
  712. /package/{esm/workspace/dashboard/public/favicon.png → dist/esm/workspace/dashboard/public/favicon.ico} +0 -0
  713. /package/{esm → dist/esm}/workspace/dashboard/server.js +0 -0
  714. /package/{esm → dist/esm}/workspace/dashboard/src/App.jsx +0 -0
  715. /package/{cjs/workspace/frontend → dist/esm/workspace/dashboard}/src/main.jsx +0 -0
  716. /package/{esm → dist/esm}/workspace/dashboard/vite.config.js +0 -0
  717. /package/{esm → dist/esm}/workspace/package.json +0 -0
  718. /package/{postinstall.cjs → dist/postinstall.cjs} +0 -0
  719. /package/{esm → src}/workspace/dashboard/src/main.jsx +0 -0
@@ -3,4 +3,10 @@ import react from "@vitejs/plugin-react"
3
3
 
4
4
  export default defineConfig({
5
5
  plugins: [react()],
6
+ server: {
7
+ port: 5174,
8
+ proxy: {
9
+ "/api": { target: "http://localhost:3333", changeOrigin: true },
10
+ },
11
+ },
6
12
  })
@@ -0,0 +1,18 @@
1
+ {
2
+ "name": "wao-workspace",
3
+ "version": "0.0.1",
4
+ "type": "module",
5
+ "scripts": {
6
+ "test": "node --test --test-concurrency=1",
7
+ "test-only": "node --test-only --test-concurrency=1",
8
+ "test-all": "node --test --test-concurrency=1 test/**/*.test.js",
9
+ "start": "trap 'kill $(jobs -p)' EXIT; node dashboard/server.js & cd dashboard && npx vite",
10
+ "start:api": "node dashboard/server.js",
11
+ "keygen": "node scripts/keygen.js",
12
+ "deploy": "node scripts/deploy.js"
13
+ },
14
+ "dependencies": {
15
+ "hbsig": "0.3.1",
16
+ "wao": "0.41.3"
17
+ }
18
+ }
@@ -0,0 +1,14 @@
1
+ local count = 0
2
+
3
+ Handlers.add("Inc", "Inc", function (msg)
4
+ count = count + 1
5
+ msg.reply({ Data = "Incremented!" })
6
+ end)
7
+
8
+ Handlers.add("Get", "Get", function (msg)
9
+ msg.reply({ Data = tostring(count) })
10
+ end)
11
+
12
+ Handlers.add("Hello", "Hello", function (msg)
13
+ msg.reply({ Data = "Hello, World!" })
14
+ end)
package/tsconfig.json ADDED
@@ -0,0 +1,18 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "ES2020",
4
+ "module": "ESNext",
5
+ "moduleResolution": "node",
6
+ "esModuleInterop": true,
7
+ "strict": true,
8
+ "skipLibCheck": true,
9
+ "forceConsistentCasingInFileNames": true,
10
+ "outDir": "dist",
11
+ "declaration": true,
12
+ "declarationDir": "types",
13
+ "sourceMap": true,
14
+ "rootDir": "src"
15
+ },
16
+ "include": ["src/**/*"],
17
+ "exclude": ["node_modules", "dist", "test"]
18
+ }
@@ -0,0 +1,329 @@
1
+ // Core Types
2
+ export interface JWK {
3
+ kty: string;
4
+ e: string;
5
+ n: string;
6
+ d?: string;
7
+ p?: string;
8
+ q?: string;
9
+ dp?: string;
10
+ dq?: string;
11
+ qi?: string;
12
+ }
13
+
14
+ export interface Tag {
15
+ name: string;
16
+ value: string;
17
+ }
18
+
19
+ export interface Message {
20
+ process: string;
21
+ tags: Tag[];
22
+ data?: string | Uint8Array;
23
+ signer?: JWK;
24
+ }
25
+
26
+ export interface ProcessOptions {
27
+ boot?: boolean;
28
+ module?: string;
29
+ scheduler?: string;
30
+ memory?: number;
31
+ jwk?: JWK;
32
+ tags?: Record<string, string>;
33
+ data?: string | Uint8Array;
34
+ auth?: string;
35
+ }
36
+
37
+ export interface ResultOptions {
38
+ jwk?: JWK;
39
+ pid?: string;
40
+ mid?: string;
41
+ check?: any[];
42
+ get?: boolean | string;
43
+ timeout?: number;
44
+ mode?: 'aoconnect' | 'local';
45
+ limit?: number;
46
+ }
47
+
48
+ export interface DeployOptions {
49
+ boot?: boolean;
50
+ loads?: any[];
51
+ src?: string;
52
+ src_data?: string;
53
+ fills?: Record<string, any>;
54
+ module?: string;
55
+ scheduler?: string;
56
+ jwk?: JWK;
57
+ tags?: Record<string, string>;
58
+ data?: string | Uint8Array;
59
+ }
60
+
61
+ // AO Class Types
62
+ export interface AOOptions {
63
+ module?: string;
64
+ scheduler?: string;
65
+ memory?: number;
66
+ ar?: {
67
+ host?: string;
68
+ port?: number;
69
+ protocol?: string;
70
+ };
71
+ }
72
+
73
+ export interface PipeOptions {
74
+ jwk: JWK;
75
+ fns: Function[];
76
+ cb?: Function;
77
+ }
78
+
79
+ // WeaveDB Types
80
+ export interface WeaveDBOptions {
81
+ cacheSize?: number;
82
+ chunkSize?: number;
83
+ notifySize?: number;
84
+ }
85
+
86
+ export interface WeaveDBCollection {
87
+ create: (id: string) => Promise<void>;
88
+ createData: (col: string, doc: any, val: any) => Promise<void>;
89
+ open: (filename: string, val: any) => Promise<void>;
90
+ read: (fd: number, raw_dst_ptr: number, raw_length: number, val: any) => Promise<void>;
91
+ close: (fd: number) => void;
92
+ }
93
+
94
+ // WeaveDrive Types
95
+ export interface WeaveDriveOptions {
96
+ cacheSize?: number;
97
+ chunkSize?: number;
98
+ streamChunk?: number;
99
+ }
100
+
101
+ export interface WeaveDriveFile {
102
+ reset: (fd: number) => void;
103
+ create: (id: string) => Promise<number>;
104
+ read: (fd: number, raw_dst_ptr: number, raw_length: number) => Promise<number>;
105
+ close: (fd: number) => void;
106
+ }
107
+
108
+ // Process Class Types
109
+ export interface ProcessOptions {
110
+ pid: string;
111
+ ao: AO;
112
+ }
113
+
114
+ // AR Types
115
+ export interface AROptions {
116
+ host?: string;
117
+ port?: number;
118
+ protocol?: string;
119
+ }
120
+
121
+ export interface ARTransaction {
122
+ id: string;
123
+ anchor?: string;
124
+ signature?: string;
125
+ recipient?: string;
126
+ owner?: {
127
+ address: string;
128
+ key: string;
129
+ };
130
+ fee?: {
131
+ winston: string;
132
+ ar: string;
133
+ };
134
+ quantity?: {
135
+ winston: string;
136
+ ar: string;
137
+ };
138
+ data?: {
139
+ size: string;
140
+ type: string;
141
+ };
142
+ tags?: Tag[];
143
+ block?: {
144
+ id: string;
145
+ timestamp: number;
146
+ height: number;
147
+ previous: string;
148
+ };
149
+ parent?: {
150
+ id: string;
151
+ };
152
+ bundledIn?: {
153
+ id: string;
154
+ };
155
+ }
156
+
157
+ // GQL Types
158
+ export interface GQLOptions {
159
+ url?: string;
160
+ }
161
+
162
+ export interface GQLQueryOptions {
163
+ first?: number;
164
+ after?: string;
165
+ asc?: boolean;
166
+ next?: boolean;
167
+ block?: {
168
+ min?: number;
169
+ max?: number;
170
+ } | [number, number];
171
+ id?: string;
172
+ ids?: string[];
173
+ recipient?: string;
174
+ recipients?: string[];
175
+ owner?: string;
176
+ owners?: string[];
177
+ tags?: Record<string, string>;
178
+ fields?: string[] | Record<string, any>;
179
+ }
180
+
181
+ // HB (HyperBEAM) Types
182
+ export interface HBOptions {
183
+ url: string;
184
+ }
185
+
186
+ export interface HBMessage {
187
+ target: string;
188
+ from?: string;
189
+ to?: string;
190
+ }
191
+
192
+ export interface HBResult {
193
+ Messages: any[];
194
+ Spawns: any[];
195
+ Assignments: any[];
196
+ Output: any;
197
+ }
198
+
199
+ // Main Classes
200
+ export class AO {
201
+ constructor(opt?: AOOptions);
202
+ init(jwk: JWK): Promise<AO>;
203
+ toSigner(wallet: JWK): Function;
204
+ pipe(options: PipeOptions): Promise<any>;
205
+ postModule(options: { data: string | Uint8Array, jwk: JWK, tags?: Record<string, string>, overwrite?: boolean }): Promise<string>;
206
+ postScheduler(options: { jwk: JWK, url: string, tags?: Record<string, string>, overwrite?: boolean }): Promise<string>;
207
+ spwn(options?: ProcessOptions): Promise<string>;
208
+ res(options?: ResultOptions): Promise<any>;
209
+ msg(options: Message): Promise<any>;
210
+ asgn(options: { pid: string, mid: string, jwk: JWK, check?: any[], get?: boolean | string }): Promise<any>;
211
+ dry(options: { pid: string, jwk: JWK, data?: string | Uint8Array, act?: string, tags?: Tag[], check?: any[], get?: boolean | string }): Promise<any>;
212
+ ress(options: { pid: string, limit?: number, asc?: boolean, cursor?: string }): Promise<any>;
213
+ eval(options: { pid: string, jwk: JWK, data: string | Uint8Array }): Promise<any>;
214
+ transform(options: { src: string, data: any, fills: Record<string, any> }): Promise<string>;
215
+ load(options: { src: string, data: any, fills: Record<string, any>, pid: string, jwk: JWK }): Promise<any>;
216
+ wait(options: { pid: string, attempts?: number }): Promise<void>;
217
+ attest(options: { id: string, jwk: JWK, tags: Tag[] }): Promise<any>;
218
+ avail(options: { ids: string[], jwk: JWK, tags: Tag[] }): Promise<any>;
219
+ deploy(options: DeployOptions): Promise<{ p: Process }>;
220
+ var(options: { pid: string, data: any, json?: boolean, pretty?: boolean }): Promise<any>;
221
+ p(pid: string): Process;
222
+ ar: AR;
223
+ }
224
+
225
+ export class WeaveDB {
226
+ constructor(ar: any, dir: string, options?: WeaveDBOptions);
227
+ create(id: string): Promise<void>;
228
+ createData(col: string, doc: any, val: any): Promise<void>;
229
+ open(filename: string, val: any): Promise<void>;
230
+ read(fd: number, raw_dst_ptr: number, raw_length: number, val: any): Promise<void>;
231
+ close(fd: number): void;
232
+ }
233
+
234
+ export class WeaveDrive {
235
+ constructor(ar: any, options?: WeaveDriveOptions);
236
+ reset(fd: number): void;
237
+ create(id: string): Promise<number>;
238
+ read(fd: number, raw_dst_ptr: number, raw_length: number): Promise<number>;
239
+ close(fd: number): void;
240
+ }
241
+
242
+ export class Process {
243
+ constructor(pid: string, ao: AO);
244
+ load(opt?: any): Promise<any>;
245
+ msg(act: string, tags: Tag[], opts?: any): Promise<any>;
246
+ dry(act: string, tags: Tag[], opts?: any): Promise<any>;
247
+ res(opts?: any): Promise<any>;
248
+ o(name: string, opt?: any): Promise<any>;
249
+ m(...opt: any[]): Promise<any>;
250
+ d(...opt: any[]): Promise<any>;
251
+ v(data: any, json?: boolean, pretty?: boolean): Promise<any>;
252
+ r(...opt: any[]): Promise<any>;
253
+ }
254
+
255
+ export class AR {
256
+ constructor(options?: AROptions);
257
+ init(jwk: JWK): Promise<AR>;
258
+ gen(amount?: string): Promise<{ jwk: JWK, addr: string, pub: string, balance: string }>;
259
+ toAddr(jwk: JWK): Promise<string>;
260
+ mine(): Promise<void>;
261
+ balance(addr?: string): Promise<string>;
262
+ toAR(winston: string): string;
263
+ toWinston(ar: string): string;
264
+ transfer(amount: string, to: string, jwk?: JWK): Promise<{ id: string }>;
265
+ checkWallet(options?: { jwk?: JWK }): Promise<{ err: any, jwk: JWK }>;
266
+ post(options: { data: string | Uint8Array, tags?: Record<string, string>, jwk?: JWK }): Promise<{ err: any, id: string }>;
267
+ tx(txid: string): Promise<ARTransaction>;
268
+ data(txid: string, asString?: boolean): Promise<string | Uint8Array>;
269
+ bundle(dataitems: Array<[string | Uint8Array, Record<string, string>]>): Promise<{ err: any, id: string }>;
270
+ gql: GQL;
271
+ }
272
+
273
+ export class GQL {
274
+ constructor(options?: GQLOptions);
275
+ txs(options?: GQLQueryOptions): Promise<{ next?: () => Promise<any>, data: ARTransaction[] }>;
276
+ blocks(options?: GQLQueryOptions): Promise<{ next?: () => Promise<any>, data: any[] }>;
277
+ }
278
+
279
+ export class HB {
280
+ constructor(options: HBOptions);
281
+ init(jwk: JWK): Promise<HB>;
282
+ metrics(): Promise<any>;
283
+ info(): Promise<any>;
284
+ messages(options: HBMessage): Promise<any>;
285
+ process(options?: { tags?: Tag[], data?: string }): Promise<string>;
286
+ schedule(options: { process: string, tags?: Tag[], data?: string, action?: string }): Promise<number>;
287
+ compute(options: { process: string, slot: number }): Promise<HBResult>;
288
+ dryrun(options: { process: string, tags?: Tag[], data?: string, action?: string }): Promise<HBResult>;
289
+ get(options: { device: string, path: string }): Promise<any>;
290
+ post(options: { device: string, path: string, tags?: Tag[] }): Promise<any>;
291
+ request(options: { device: string, path: string, tags?: Tag[], method: string }): Promise<any>;
292
+ }
293
+
294
+ // Utility Types
295
+ export interface Utils {
296
+ allChecked: Function;
297
+ searchTag: Function;
298
+ checkTag: Function;
299
+ wait: Function;
300
+ isLocalhost: Function;
301
+ tag: Function;
302
+ ltags: Function;
303
+ action: Function;
304
+ isData: Function;
305
+ getTagVal: Function;
306
+ srcs: Function;
307
+ buildTags: Function;
308
+ isRegExp: Function;
309
+ mergeChecks: Function;
310
+ isCheckComplete: Function;
311
+ }
312
+
313
+ // Test Types
314
+ export interface TestAccount {
315
+ jwk: JWK;
316
+ addr: string;
317
+ signer: Function;
318
+ }
319
+
320
+ export interface TestConnect {
321
+ spawn: Function;
322
+ message: Function;
323
+ dryrun: Function;
324
+ assign: Function;
325
+ result: Function;
326
+ }
327
+
328
+ export function connect(mem?: any): TestConnect;
329
+ export const acc: TestAccount[];
@@ -0,0 +1,3 @@
1
+ {
2
+ "extends": "next/core-web-vitals"
3
+ }
@@ -0,0 +1,19 @@
1
+ # WaoLlama
2
+
3
+ WaoLlama is a fully decentralized onchain LLM agent embedded in the browser on WAO.
4
+
5
+ ```bash
6
+ cd waollama && yarn
7
+ ```
8
+
9
+ It uses the wasm64 module from [aos-llama](https://github.com/samcamwilliams/aos-llama), so you need to enable `Experimental WebAssembly` from [chrome://flags](chrome://flags) to run it in the browser, if you are on Google Chrome.
10
+
11
+ Also, create `public/llama` directory, and download a gguf file from [Hugging Face](https://huggingface.co/TinyLlama/TinyLlama-1.1B-Chat-v1.0/tree/main), and put into the directory with the name `tynyllama.gguf`, and copy `src/lua/llama.wasm` into the directory. These files are not included due to their huge sizes.
12
+
13
+ Once everything is set, run the following.
14
+
15
+ ```bash
16
+ yarn dev
17
+ ```
18
+
19
+ Now your app is running at [localhost:3000](http://localhost:3000).
@@ -0,0 +1,87 @@
1
+ import {
2
+ rmdirSync,
3
+ unlinkSync,
4
+ writeFileSync,
5
+ readFileSync,
6
+ readdirSync,
7
+ } from "fs"
8
+
9
+ import { resolve, extname } from "path"
10
+ import * as cheerio from "cheerio"
11
+
12
+ const out = resolve(import.meta.dirname, "out")
13
+ const dirs = readdirSync(out, { withFileTypes: true, recursive: true })
14
+
15
+ const prefixWithPath = url => {
16
+ const cleanedUrl = url.replace(/^\.\//, "").replace(/^\//, "")
17
+ const txt = "${path}" + cleanedUrl
18
+ return "`" + txt + "`"
19
+ }
20
+
21
+ const isRelativeUrl = url => !/^https?:\/\//i.test(url)
22
+
23
+ let _dirs = []
24
+
25
+ for (const v of dirs) {
26
+ const ext = extname(v.name)
27
+ const htmlPath = resolve(v.path, v.name)
28
+ if (v.isFile() && ext === ".html") {
29
+ if (v.name !== "index.html") {
30
+ unlinkSync(htmlPath)
31
+ } else {
32
+ const txt = readFileSync(htmlPath, "utf8")
33
+ const $ = cheerio.load(txt)
34
+ let _tags = []
35
+ $("link[href]").each((i, elem) => {
36
+ const href = $(elem).attr("href")
37
+ if (isRelativeUrl(href)) {
38
+ const props = { ...elem.attribs }
39
+ props.href = prefixWithPath(href)
40
+ _tags.push({ elm: "link", props })
41
+ $(elem).remove()
42
+ }
43
+ })
44
+
45
+ $("script[src]").each((i, elem) => {
46
+ const src = $(elem).attr("src")
47
+ if (isRelativeUrl(src)) {
48
+ const props = { ...elem.attribs }
49
+ props.src = prefixWithPath(src)
50
+ _tags.push({ elm: "script", props })
51
+ $(elem).remove()
52
+ }
53
+ })
54
+
55
+ $("script").each((i, elem) => {
56
+ const scriptContent = $(elem).html()
57
+ if (scriptContent && scriptContent.includes("let tags = []")) {
58
+ const tagsString = JSON.stringify(_tags)
59
+ const updatedScriptContent = scriptContent
60
+ .replace(/let\s+tags\s*=\s*\[\s*\]/, `let tags = ${tagsString}`)
61
+ .replace(/"`/g, "`")
62
+ .replace(/`"/g, "`")
63
+ $(elem).html(updatedScriptContent)
64
+ }
65
+ })
66
+ const modifiedHtml = $.root().html()
67
+ writeFileSync(htmlPath, modifiedHtml)
68
+ }
69
+ } else if (v.isFile() && ext === ".js" && /^webpack/.test(v.name)) {
70
+ const txt = readFileSync(htmlPath, "utf8")
71
+ const x = txt.match(/(.)\.p="\/_next\/"/)[1]
72
+ const mod = txt.replace(
73
+ new RegExp(`o=${x}\.p`, "g"),
74
+ `o=_assetPath()+${x}.p`,
75
+ )
76
+ writeFileSync(htmlPath, mod)
77
+ }
78
+ }
79
+
80
+ const dirs2 = readdirSync(out, { withFileTypes: true })
81
+ for (const v of dirs2) {
82
+ const htmlPath = resolve(v.path, v.name)
83
+ console.log(htmlPath)
84
+ if (v.isDirectory() && v.name !== "_next") {
85
+ rmdirSync(htmlPath, { recursive: true, force: true })
86
+ }
87
+ }
@@ -0,0 +1,49 @@
1
+ 'use client'
2
+
3
+ import { Avatar as ChakraAvatar, Group } from '@chakra-ui/react'
4
+ import * as React from 'react'
5
+
6
+ export const Avatar = React.forwardRef(function Avatar(props, ref) {
7
+ const { name, src, srcSet, loading, icon, fallback, children, ...rest } =
8
+ props
9
+ return (
10
+ <ChakraAvatar.Root ref={ref} {...rest}>
11
+ <AvatarFallback name={name} icon={icon}>
12
+ {fallback}
13
+ </AvatarFallback>
14
+ <ChakraAvatar.Image src={src} srcSet={srcSet} loading={loading} />
15
+ {children}
16
+ </ChakraAvatar.Root>
17
+ )
18
+ })
19
+
20
+ const AvatarFallback = React.forwardRef(function AvatarFallback(props, ref) {
21
+ const { name, icon, children, ...rest } = props
22
+ return (
23
+ <ChakraAvatar.Fallback ref={ref} {...rest}>
24
+ {children}
25
+ {name != null && children == null && <>{getInitials(name)}</>}
26
+ {name == null && children == null && (
27
+ <ChakraAvatar.Icon asChild={!!icon}>{icon}</ChakraAvatar.Icon>
28
+ )}
29
+ </ChakraAvatar.Fallback>
30
+ )
31
+ })
32
+
33
+ function getInitials(name) {
34
+ const names = name.trim().split(' ')
35
+ const firstName = names[0] != null ? names[0] : ''
36
+ const lastName = names.length > 1 ? names[names.length - 1] : ''
37
+ return firstName && lastName
38
+ ? `${firstName.charAt(0)}${lastName.charAt(0)}`
39
+ : firstName.charAt(0)
40
+ }
41
+
42
+ export const AvatarGroup = React.forwardRef(function AvatarGroup(props, ref) {
43
+ const { size, variant, borderless, ...rest } = props
44
+ return (
45
+ <ChakraAvatar.PropsProvider value={{ size, variant, borderless }}>
46
+ <Group gap='0' spaceX='-3' ref={ref} {...rest} />
47
+ </ChakraAvatar.PropsProvider>
48
+ )
49
+ })
@@ -0,0 +1,17 @@
1
+ import { Checkbox as ChakraCheckbox } from '@chakra-ui/react'
2
+ import * as React from 'react'
3
+
4
+ export const Checkbox = React.forwardRef(function Checkbox(props, ref) {
5
+ const { icon, children, inputProps, rootRef, ...rest } = props
6
+ return (
7
+ <ChakraCheckbox.Root ref={rootRef} {...rest}>
8
+ <ChakraCheckbox.HiddenInput ref={ref} {...inputProps} />
9
+ <ChakraCheckbox.Control>
10
+ {icon || <ChakraCheckbox.Indicator />}
11
+ </ChakraCheckbox.Control>
12
+ {children != null && (
13
+ <ChakraCheckbox.Label>{children}</ChakraCheckbox.Label>
14
+ )}
15
+ </ChakraCheckbox.Root>
16
+ )
17
+ })
@@ -0,0 +1,20 @@
1
+ function _nullishCoalesce(lhs, rhsFn) {
2
+ if (lhs != null) {
3
+ return lhs
4
+ } else {
5
+ return rhsFn()
6
+ }
7
+ }
8
+ import { IconButton as ChakraIconButton } from '@chakra-ui/react'
9
+ import * as React from 'react'
10
+ import { LuX } from 'react-icons/lu'
11
+
12
+ export const CloseButton = React.forwardRef(function CloseButton(props, ref) {
13
+ return (
14
+ <ChakraIconButton variant='ghost' aria-label='Close' ref={ref} {...props}>
15
+ {_nullishCoalesce(props.children, () => (
16
+ <LuX />
17
+ ))}
18
+ </ChakraIconButton>
19
+ )
20
+ })
@@ -0,0 +1,61 @@
1
+ 'use client'
2
+
3
+ import { ClientOnly, IconButton, Skeleton } from '@chakra-ui/react'
4
+ import { ThemeProvider, useTheme } from 'next-themes'
5
+
6
+ import * as React from 'react'
7
+ import { LuMoon, LuSun } from 'react-icons/lu'
8
+
9
+ export function ColorModeProvider(props) {
10
+ return (
11
+ <ThemeProvider attribute='class' disableTransitionOnChange {...props} />
12
+ )
13
+ }
14
+
15
+ export function useColorMode() {
16
+ const { resolvedTheme, setTheme } = useTheme()
17
+ const toggleColorMode = () => {
18
+ setTheme(resolvedTheme === 'light' ? 'dark' : 'light')
19
+ }
20
+ return {
21
+ colorMode: resolvedTheme,
22
+ setColorMode: setTheme,
23
+ toggleColorMode,
24
+ }
25
+ }
26
+
27
+ export function useColorModeValue(light, dark) {
28
+ const { colorMode } = useColorMode()
29
+ return colorMode === 'dark' ? dark : light
30
+ }
31
+
32
+ export function ColorModeIcon() {
33
+ const { colorMode } = useColorMode()
34
+ return colorMode === 'dark' ? <LuMoon /> : <LuSun />
35
+ }
36
+
37
+ export const ColorModeButton = React.forwardRef(
38
+ function ColorModeButton(props, ref) {
39
+ const { toggleColorMode } = useColorMode()
40
+ return (
41
+ <ClientOnly fallback={<Skeleton boxSize='8' />}>
42
+ <IconButton
43
+ onClick={toggleColorMode}
44
+ variant='ghost'
45
+ aria-label='Toggle color mode'
46
+ size='sm'
47
+ ref={ref}
48
+ {...props}
49
+ css={{
50
+ _icon: {
51
+ width: '5',
52
+ height: '5',
53
+ },
54
+ }}
55
+ >
56
+ <ColorModeIcon />
57
+ </IconButton>
58
+ </ClientOnly>
59
+ )
60
+ },
61
+ )