auramaxx 0.0.11 → 0.0.13

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 (342) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-build-manifest.json +240 -223
  3. package/.next/app-path-routes-manifest.json +8 -7
  4. package/.next/build-manifest.json +14 -14
  5. package/.next/prerender-manifest.json +53 -29
  6. package/.next/react-loadable-manifest.json +41 -41
  7. package/.next/routes-manifest.json +6 -0
  8. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  9. package/.next/server/app/_not-found.html +1 -1
  10. package/.next/server/app/_not-found.rsc +12 -12
  11. package/.next/server/app/api/[...doc]/page_client-reference-manifest.js +1 -1
  12. package/.next/server/app/api/agent-requests/route_client-reference-manifest.js +1 -1
  13. package/.next/server/app/api/apps/install/route_client-reference-manifest.js +1 -1
  14. package/.next/server/app/api/apps/manifests/route_client-reference-manifest.js +1 -1
  15. package/.next/server/app/api/apps/static/[...path]/route_client-reference-manifest.js +1 -1
  16. package/.next/server/app/api/docs/plain/route_client-reference-manifest.js +1 -1
  17. package/.next/server/app/api/events/route.js +1 -19
  18. package/.next/server/app/api/events/route_client-reference-manifest.js +1 -1
  19. package/.next/server/app/api/import-from-openclaw/[channel]/route_client-reference-manifest.js +1 -1
  20. package/.next/server/app/api/import-from-openclaw/route_client-reference-manifest.js +1 -1
  21. package/.next/server/app/api/import-from-openclaw/validate/[channel]/route_client-reference-manifest.js +1 -1
  22. package/.next/server/app/api/page_client-reference-manifest.js +1 -1
  23. package/.next/server/app/api/restart/route.js +1 -1
  24. package/.next/server/app/api/restart/route_client-reference-manifest.js +1 -1
  25. package/.next/server/app/api/update/route.js +63 -1
  26. package/.next/server/app/api/update/route.js.nft.json +1 -1
  27. package/.next/server/app/api/update/route_client-reference-manifest.js +1 -1
  28. package/.next/server/app/api/version/route.js +1 -1
  29. package/.next/server/app/api/version/route_client-reference-manifest.js +1 -1
  30. package/.next/server/app/api/workspace/[id]/apps/[wid]/route_client-reference-manifest.js +1 -1
  31. package/.next/server/app/api/workspace/[id]/apps/route_client-reference-manifest.js +1 -1
  32. package/.next/server/app/api/workspace/[id]/export/route_client-reference-manifest.js +1 -1
  33. package/.next/server/app/api/workspace/[id]/route_client-reference-manifest.js +1 -1
  34. package/.next/server/app/api/workspace/config/route_client-reference-manifest.js +1 -1
  35. package/.next/server/app/api/workspace/import/route_client-reference-manifest.js +1 -1
  36. package/.next/server/app/api/workspace/route_client-reference-manifest.js +1 -1
  37. package/.next/server/app/app-legacy-do-not-use/page.js +1 -1
  38. package/.next/server/app/app-legacy-do-not-use/page.js.nft.json +1 -1
  39. package/.next/server/app/app-legacy-do-not-use/page_client-reference-manifest.js +1 -1
  40. package/.next/server/app/app-legacy-do-not-use.html +1 -1
  41. package/.next/server/app/app-legacy-do-not-use.rsc +14 -14
  42. package/.next/server/app/approve/[actionId]/page.js +1 -1
  43. package/.next/server/app/approve/[actionId]/page_client-reference-manifest.js +1 -1
  44. package/.next/server/app/docs/[...doc]/page_client-reference-manifest.js +1 -1
  45. package/.next/server/app/docs/page_client-reference-manifest.js +1 -1
  46. package/.next/server/app/health/page_client-reference-manifest.js +1 -1
  47. package/.next/server/app/health.html +1 -1
  48. package/.next/server/app/health.rsc +13 -13
  49. package/.next/server/app/hello/page_client-reference-manifest.js +1 -1
  50. package/.next/server/app/hello.html +1 -1
  51. package/.next/server/app/hello.rsc +14 -14
  52. package/.next/server/app/index.html +1 -1
  53. package/.next/server/app/index.rsc +18 -21
  54. package/.next/server/app/page.js +3 -3
  55. package/.next/server/app/page.js.nft.json +1 -1
  56. package/.next/server/app/page_client-reference-manifest.js +1 -1
  57. package/.next/server/app/privacy/page_client-reference-manifest.js +1 -1
  58. package/.next/server/app/privacy.html +1 -1
  59. package/.next/server/app/privacy.rsc +13 -13
  60. package/.next/server/app/share/[token]/page_client-reference-manifest.js +1 -1
  61. package/.next/server/app/terms/page_client-reference-manifest.js +1 -1
  62. package/.next/server/app/terms.html +1 -1
  63. package/.next/server/app/terms.rsc +13 -13
  64. package/.next/server/app/yo/page.js +2 -0
  65. package/.next/server/app/yo/page.js.nft.json +1 -0
  66. package/.next/server/app/yo/page_client-reference-manifest.js +1 -0
  67. package/.next/server/app/yo.html +1 -0
  68. package/.next/server/app/yo.meta +7 -0
  69. package/.next/server/app/yo.rsc +23 -0
  70. package/.next/server/app-paths-manifest.json +8 -7
  71. package/.next/server/chunks/2145.js +1 -1
  72. package/.next/server/chunks/2460.js +1 -1
  73. package/.next/server/chunks/5246.js +1 -1
  74. package/.next/server/chunks/5678.js +1 -1
  75. package/.next/server/chunks/5784.js +1 -1
  76. package/.next/server/chunks/6086.js +2 -20
  77. package/.next/server/chunks/{5553.js → 6415.js} +2 -2
  78. package/.next/server/chunks/7935.js +2 -2
  79. package/.next/server/functions-config-manifest.json +1 -1
  80. package/.next/server/instrumentation.js +1 -1
  81. package/.next/server/middleware-build-manifest.js +1 -1
  82. package/.next/server/middleware-react-loadable-manifest.js +1 -1
  83. package/.next/server/pages/404.html +1 -1
  84. package/.next/server/pages/500.html +1 -1
  85. package/.next/server/server-reference-manifest.json +1 -1
  86. package/.next/server/webpack-runtime.js +1 -1
  87. package/.next/static/WshFGr6RxGYP6AbWuT9OG/_buildManifest.js +1 -0
  88. package/.next/static/chunks/1168.aaac1edbb597fe5a.js +1 -0
  89. package/.next/static/chunks/1255-7999eac54f80a49f.js +1 -0
  90. package/.next/static/chunks/142-fa9752f53a551f63.js +1 -0
  91. package/.next/static/chunks/2505.d54ccadc42f4e3d1.js +1 -0
  92. package/.next/static/chunks/2619-04bc32f026a0d946.js +1 -0
  93. package/.next/static/chunks/2927.7e00cc878d9a3f52.js +1 -0
  94. package/.next/static/chunks/3573-1b41d7b8a000d015.js +1 -0
  95. package/.next/static/chunks/3609.ded5a5306e18af9c.js +1 -0
  96. package/.next/static/chunks/3667-1db7bd03948e60df.js +1 -0
  97. package/.next/static/chunks/3826.a73d4a88d8c09030.js +1 -0
  98. package/.next/static/chunks/{3a91511d-648a2ba3dad7df0c.js → 3a91511d-ba215c0b5dc21ba9.js} +1 -1
  99. package/.next/static/chunks/4256.48407d9abad5ea33.js +1 -0
  100. package/.next/static/chunks/4685-7f53bbfc4a9845eb.js +1 -0
  101. package/.next/static/chunks/4901-ba6a32818662e70a.js +1 -0
  102. package/.next/static/chunks/4919-7e7cdd5efc9f2110.js +1 -0
  103. package/.next/static/chunks/4bd1b696-100b9d70ed4e49c1.js +1 -0
  104. package/.next/static/chunks/5336-233ec7ab3807267c.js +1 -0
  105. package/.next/static/chunks/5442-b5bb869e832e8967.js +1 -0
  106. package/.next/static/chunks/6233-97a810aa272af547.js +1 -0
  107. package/.next/static/chunks/626.a5109d16f9eca1f6.js +1 -0
  108. package/.next/static/chunks/6872-faea0f088ab2d450.js +1 -0
  109. package/.next/static/chunks/7338-3ce17a93614f1d77.js +59 -0
  110. package/.next/static/chunks/7394-4bdb1feefad1a74a.js +1 -0
  111. package/.next/static/chunks/7616-1129bcb3eee8d315.js +1 -0
  112. package/.next/static/chunks/786-26deffb41572cbb3.js +1 -0
  113. package/.next/static/chunks/8273-8e92d34180669ca9.js +1 -0
  114. package/.next/static/chunks/8357.5dee1e0c4e5bb091.js +1 -0
  115. package/.next/static/chunks/9062-2bc2d089f9c9c6ba.js +1 -0
  116. package/.next/static/chunks/9380.f198afbf0c6b5369.js +1 -0
  117. package/.next/static/chunks/app/_not-found/page-5a8c6a29f762fa58.js +1 -0
  118. package/.next/static/chunks/app/api/[...doc]/page-f0852f35f0fd1d44.js +1 -0
  119. package/.next/static/chunks/app/api/agent-requests/route-cf84f975aad4c719.js +1 -0
  120. package/.next/static/chunks/app/api/apps/install/route-cf84f975aad4c719.js +1 -0
  121. package/.next/static/chunks/app/api/apps/manifests/route-cf84f975aad4c719.js +1 -0
  122. package/.next/static/chunks/app/api/apps/static/[...path]/route-cf84f975aad4c719.js +1 -0
  123. package/.next/static/chunks/app/api/docs/plain/route-cf84f975aad4c719.js +1 -0
  124. package/.next/static/chunks/app/api/events/route-cf84f975aad4c719.js +1 -0
  125. package/.next/static/chunks/app/api/import-from-openclaw/[channel]/route-cf84f975aad4c719.js +1 -0
  126. package/.next/static/chunks/app/api/import-from-openclaw/route-cf84f975aad4c719.js +1 -0
  127. package/.next/static/chunks/app/api/import-from-openclaw/validate/[channel]/route-cf84f975aad4c719.js +1 -0
  128. package/.next/static/chunks/app/api/page-cc59bebcc0d2c01d.js +1 -0
  129. package/.next/static/chunks/app/api/restart/route-cf84f975aad4c719.js +1 -0
  130. package/.next/static/chunks/app/api/update/route-cf84f975aad4c719.js +1 -0
  131. package/.next/static/chunks/app/api/version/route-cf84f975aad4c719.js +1 -0
  132. package/.next/static/chunks/app/api/workspace/[id]/apps/[wid]/route-cf84f975aad4c719.js +1 -0
  133. package/.next/static/chunks/app/api/workspace/[id]/apps/route-cf84f975aad4c719.js +1 -0
  134. package/.next/static/chunks/app/api/workspace/[id]/export/route-cf84f975aad4c719.js +1 -0
  135. package/.next/static/chunks/app/api/workspace/[id]/route-cf84f975aad4c719.js +1 -0
  136. package/.next/static/chunks/app/api/workspace/config/route-cf84f975aad4c719.js +1 -0
  137. package/.next/static/chunks/app/api/workspace/import/route-cf84f975aad4c719.js +1 -0
  138. package/.next/static/chunks/app/api/workspace/route-cf84f975aad4c719.js +1 -0
  139. package/.next/static/chunks/app/app-legacy-do-not-use/page-e5dc864e92d90ca7.js +1 -0
  140. package/.next/static/chunks/app/approve/[actionId]/page-2acca1f490424f21.js +1 -0
  141. package/.next/static/chunks/app/docs/[...doc]/page-8e2a2d036caab242.js +1 -0
  142. package/.next/static/chunks/app/docs/page-acf872a03ff79893.js +1 -0
  143. package/.next/static/chunks/app/error-66f983b7769dabfa.js +1 -0
  144. package/.next/static/chunks/app/health/page-c9185854ed9c86d0.js +1 -0
  145. package/.next/static/chunks/app/hello/page-74c9f4deaa4b03dd.js +1 -0
  146. package/.next/static/chunks/app/layout-af8d9969c7aeb758.js +1 -0
  147. package/.next/static/chunks/app/page-16dfcd1c7cc88bcc.js +1 -0
  148. package/.next/static/chunks/app/privacy/page-8e2d17079355c2cc.js +1 -0
  149. package/.next/static/chunks/app/share/[token]/page-5dd9b0418eee411f.js +1 -0
  150. package/.next/static/chunks/app/terms/page-8e2d17079355c2cc.js +1 -0
  151. package/.next/static/chunks/app/yo/layout-cf84f975aad4c719.js +1 -0
  152. package/.next/static/chunks/app/yo/page-719dc5f213fdfb30.js +1 -0
  153. package/.next/static/chunks/framework-a32a2a465584c0bc.js +1 -0
  154. package/.next/static/chunks/main-0f0f9142f74e7215.js +1 -0
  155. package/.next/static/chunks/main-app-24f0c92ba10af457.js +1 -0
  156. package/.next/static/chunks/pages/_app-4b3fb5e477a0267f.js +1 -0
  157. package/.next/static/chunks/pages/_error-c970d8b55ace1b48.js +1 -0
  158. package/.next/static/chunks/{webpack-768de8b7d6a7a27a.js → webpack-79ad58260e9b10b4.js} +1 -1
  159. package/.next/static/css/83cd401584ab787f.css +3 -0
  160. package/.next/trace +28 -28
  161. package/.next/types/app/yo/layout.ts +84 -0
  162. package/.next/types/app/yo/page.ts +84 -0
  163. package/.next/types/routes.d.ts +4 -2
  164. package/.next/types/validator.ts +18 -0
  165. package/bin/auramaxx.js +11 -26
  166. package/docs/ARCHITECTURE.md +1 -1
  167. package/docs/AUTH.md +6 -3
  168. package/docs/CLI.md +2 -0
  169. package/docs/MCP.md +2 -0
  170. package/docs/TROUBLESHOOTING.md +24 -0
  171. package/docs/credentials.md +2 -0
  172. package/package.json +2 -1
  173. package/prisma/migrations/20260227214000_update_agent_action_ttl_defaults/migration.sql +19 -0
  174. package/public/0a167e5e-4f52-4715-ae23-bf63d259a6b1.png +0 -0
  175. package/public/141ec92c-6780-4b23-838f-9a7bf1e91bb8.png +0 -0
  176. package/public/3afc4935-92cb-42af-9624-0b1341c12a5e.png +0 -0
  177. package/public/43947df5-dbcf-4e49-ab8b-41b9162c0410.png +0 -0
  178. package/public/5aeae9ce-0d38-49ea-8fd1-167892a04a85.png +0 -0
  179. package/public/660e4ea3-a3a6-4be4-a8ca-2cb74c51dfb5.png +0 -0
  180. package/public/733f02d7-6b58-4ba6-a5c8-d062cd205e1d.png +0 -0
  181. package/public/a32d65cb-95b0-4977-be6b-cf69f515afbe.png +0 -0
  182. package/public/agent1.png +0 -0
  183. package/public/agent10.png +0 -0
  184. package/public/agent2.png +0 -0
  185. package/public/agent3.png +0 -0
  186. package/public/agent4.png +0 -0
  187. package/public/agent5.png +0 -0
  188. package/public/agent6.png +0 -0
  189. package/public/agent7.png +0 -0
  190. package/public/agent8.png +0 -0
  191. package/public/agent9.png +0 -0
  192. package/public/c4938305-b811-4ccc-91db-94d309734827.png +0 -0
  193. package/public/f2ca6825-a4f3-4107-815c-51ee740dfc09.png +0 -0
  194. package/public/llm.txt +2 -0
  195. package/public/llms.txt +39 -0
  196. package/public/ss-dark1.png +0 -0
  197. package/public/ss-dark1.webp +0 -0
  198. package/public/ss-dark2.png +0 -0
  199. package/public/ss-dark2.webp +0 -0
  200. package/public/ss-dark3.png +0 -0
  201. package/public/ss-dark3.webp +0 -0
  202. package/public/ss-light1.png +0 -0
  203. package/public/ss-light1.webp +0 -0
  204. package/public/ss-light2.png +0 -0
  205. package/public/ss-light2.webp +0 -0
  206. package/public/ss-light3.png +0 -0
  207. package/public/ss-light3.webp +0 -0
  208. package/shared/agent-profile-schema.ts +81 -0
  209. package/shared/credential-field-schema.ts +12 -0
  210. package/skills/auramaxx/SKILL.md +71 -691
  211. package/src/app/UnlockPageClient.tsx +1939 -0
  212. package/src/app/api/page.tsx +8 -9
  213. package/src/app/api/restart/route.ts +2 -18
  214. package/src/app/api/update/route.ts +104 -51
  215. package/src/app/approve/[actionId]/page.tsx +4 -1
  216. package/src/app/docs/DocsPageContent.tsx +3 -3
  217. package/src/app/globals.css +94 -0
  218. package/src/app/layout.tsx +1 -0
  219. package/src/app/page.tsx +25 -1935
  220. package/src/app/yo/layout.tsx +29 -0
  221. package/src/app/yo/page.tsx +528 -0
  222. package/src/components/HumanActionBar.tsx +34 -8
  223. package/src/components/agent/AgentSidebar.tsx +3 -1
  224. package/src/components/agent/CredentialAgent.tsx +5 -1
  225. package/src/components/agent/CredentialDetail.tsx +32 -1
  226. package/src/components/agent/CredentialForm.tsx +94 -7
  227. package/src/components/agent/CredentialRow.tsx +8 -1
  228. package/src/components/agent/credentialFormName.ts +22 -1
  229. package/src/components/agent/types.ts +2 -2
  230. package/src/components/design-system/Modal.tsx +14 -1
  231. package/src/hooks/useUpdateChecker.ts +17 -1
  232. package/src/lib/pino.ts +77 -8
  233. package/src/server/cli/commands/actions.ts +1 -1
  234. package/src/server/cli/commands/agent.ts +110 -65
  235. package/src/server/cli/commands/approve.ts +1 -1
  236. package/src/server/cli/commands/auth.ts +81 -20
  237. package/src/server/cli/commands/start.ts +42 -3
  238. package/src/server/cli/commands/token.ts +2 -2
  239. package/src/server/cli/lib/escalation.ts +109 -24
  240. package/src/server/cli/lib/process.ts +54 -1
  241. package/src/server/cli/socket.ts +1 -1
  242. package/src/server/index.ts +2 -0
  243. package/src/server/lib/agent-profile-records.ts +72 -0
  244. package/src/server/lib/credential-transport.ts +27 -11
  245. package/src/server/lib/defaults.ts +3 -3
  246. package/src/server/lib/escalation-responder.ts +1 -1
  247. package/src/server/lib/resolve-action.ts +2 -2
  248. package/src/server/lib/update-check.ts +1 -1
  249. package/src/server/mcp/server.ts +6 -1
  250. package/src/server/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +1 -1
  251. package/src/server/routes/actions.ts +2 -2
  252. package/src/server/routes/agent-profiles.ts +82 -0
  253. package/src/server/routes/auth.ts +39 -4
  254. package/src/server/routes/credentials.ts +18 -0
  255. package/src/server/tests/cli/agent-auth.test.ts +20 -39
  256. package/src/server/tests/cli/agent.test.ts +18 -0
  257. package/src/server/tests/cli/auth-action-flag.test.ts +3 -2
  258. package/src/server/tests/cli/bin-entrypoint.test.ts +35 -11
  259. package/src/server/tests/cli/escalation.test.ts +7 -3
  260. package/src/server/tests/cli/process.test.ts +3 -3
  261. package/src/server/tests/cli/socket.test.ts +2 -2
  262. package/src/server/tests/cli/start-run.test.ts +24 -1
  263. package/src/server/tests/endpoints/actions.test.ts +2 -2
  264. package/src/server/tests/endpoints/agent-profiles.test.ts +117 -0
  265. package/src/server/tests/endpoints/auth.test.ts +34 -0
  266. package/src/server/tests/lib/credential-transport.test.ts +68 -2
  267. package/src/server/tests/lib/defaults.test.ts +2 -2
  268. package/src/server/tests/lib/escalation-responder.test.ts +2 -2
  269. package/src/server/tests/lib/update-check.test.ts +1 -1
  270. package/src/server/tests/setup.ts +7 -0
  271. package/src/server/tsconfig.tsbuildinfo +1 -1
  272. package/src/server/types.ts +1 -1
  273. package/.next/static/AcaCjQ4akovHBUnVGPpfN/_buildManifest.js +0 -1
  274. package/.next/static/chunks/1168.63dbb444a33b1867.js +0 -1
  275. package/.next/static/chunks/1255-e8718b02724690dd.js +0 -1
  276. package/.next/static/chunks/142-aeaf7ffa9c53516d.js +0 -1
  277. package/.next/static/chunks/2505.22aaa333fd65908f.js +0 -1
  278. package/.next/static/chunks/2619-3c9e02e22d10480a.js +0 -1
  279. package/.next/static/chunks/2927.e7e9e2a1b8d2dc61.js +0 -1
  280. package/.next/static/chunks/3573-27e17f4ff2dd86ed.js +0 -1
  281. package/.next/static/chunks/3609.6f8e0ecd6de9566c.js +0 -1
  282. package/.next/static/chunks/3667-d6770121629db38b.js +0 -1
  283. package/.next/static/chunks/3826.7dfe96467cd74e45.js +0 -1
  284. package/.next/static/chunks/4256.50cb375c979ffd5a.js +0 -1
  285. package/.next/static/chunks/4685-3f8d92f574366fec.js +0 -1
  286. package/.next/static/chunks/4901-54c1ac380b7b43bb.js +0 -1
  287. package/.next/static/chunks/4919-fe6f1553abfc9420.js +0 -1
  288. package/.next/static/chunks/4bd1b696-f785427dddbba9fb.js +0 -1
  289. package/.next/static/chunks/5336-bd251f91235f7c11.js +0 -1
  290. package/.next/static/chunks/5442-be197c885bf12079.js +0 -1
  291. package/.next/static/chunks/5553-c8b86fe3513fce04.js +0 -59
  292. package/.next/static/chunks/6233-44e6fe57a552a816.js +0 -1
  293. package/.next/static/chunks/626.2583673a0386a81b.js +0 -1
  294. package/.next/static/chunks/6872-6442f2f5cce36ce5.js +0 -1
  295. package/.next/static/chunks/7411-3ca797c21b722ccd.js +0 -1
  296. package/.next/static/chunks/7616-b8bd37ce1f735d6f.js +0 -1
  297. package/.next/static/chunks/786-9ed39f96091b2be4.js +0 -1
  298. package/.next/static/chunks/8273-922091226ba84a94.js +0 -1
  299. package/.next/static/chunks/8357.6159472717ff7d11.js +0 -1
  300. package/.next/static/chunks/9062-3eb1607c96486f88.js +0 -1
  301. package/.next/static/chunks/9380.93f361baab2eefdf.js +0 -1
  302. package/.next/static/chunks/app/_not-found/page-c3b87025baf0a9c2.js +0 -1
  303. package/.next/static/chunks/app/api/[...doc]/page-790c4b33ba1fde4a.js +0 -1
  304. package/.next/static/chunks/app/api/agent-requests/route-e83b12cbab2e8707.js +0 -1
  305. package/.next/static/chunks/app/api/apps/install/route-e83b12cbab2e8707.js +0 -1
  306. package/.next/static/chunks/app/api/apps/manifests/route-e83b12cbab2e8707.js +0 -1
  307. package/.next/static/chunks/app/api/apps/static/[...path]/route-e83b12cbab2e8707.js +0 -1
  308. package/.next/static/chunks/app/api/docs/plain/route-e83b12cbab2e8707.js +0 -1
  309. package/.next/static/chunks/app/api/events/route-e83b12cbab2e8707.js +0 -1
  310. package/.next/static/chunks/app/api/import-from-openclaw/[channel]/route-e83b12cbab2e8707.js +0 -1
  311. package/.next/static/chunks/app/api/import-from-openclaw/route-e83b12cbab2e8707.js +0 -1
  312. package/.next/static/chunks/app/api/import-from-openclaw/validate/[channel]/route-e83b12cbab2e8707.js +0 -1
  313. package/.next/static/chunks/app/api/page-b53f9aa17a4c5201.js +0 -1
  314. package/.next/static/chunks/app/api/restart/route-e83b12cbab2e8707.js +0 -1
  315. package/.next/static/chunks/app/api/update/route-e83b12cbab2e8707.js +0 -1
  316. package/.next/static/chunks/app/api/version/route-e83b12cbab2e8707.js +0 -1
  317. package/.next/static/chunks/app/api/workspace/[id]/apps/[wid]/route-e83b12cbab2e8707.js +0 -1
  318. package/.next/static/chunks/app/api/workspace/[id]/apps/route-e83b12cbab2e8707.js +0 -1
  319. package/.next/static/chunks/app/api/workspace/[id]/export/route-e83b12cbab2e8707.js +0 -1
  320. package/.next/static/chunks/app/api/workspace/[id]/route-e83b12cbab2e8707.js +0 -1
  321. package/.next/static/chunks/app/api/workspace/config/route-e83b12cbab2e8707.js +0 -1
  322. package/.next/static/chunks/app/api/workspace/import/route-e83b12cbab2e8707.js +0 -1
  323. package/.next/static/chunks/app/api/workspace/route-e83b12cbab2e8707.js +0 -1
  324. package/.next/static/chunks/app/app-legacy-do-not-use/page-0052191daef60036.js +0 -1
  325. package/.next/static/chunks/app/approve/[actionId]/page-45cd3b8fa062d5e5.js +0 -1
  326. package/.next/static/chunks/app/docs/[...doc]/page-632ac406200b66fe.js +0 -1
  327. package/.next/static/chunks/app/docs/page-b7556394709b43df.js +0 -1
  328. package/.next/static/chunks/app/error-3d6057da512253d8.js +0 -1
  329. package/.next/static/chunks/app/health/page-80c985cd72328b74.js +0 -1
  330. package/.next/static/chunks/app/hello/page-fd71babcd192729b.js +0 -1
  331. package/.next/static/chunks/app/layout-285c6ef3f16bae63.js +0 -1
  332. package/.next/static/chunks/app/page-85017185df14c37b.js +0 -1
  333. package/.next/static/chunks/app/privacy/page-faf36cd0dde6dfa3.js +0 -1
  334. package/.next/static/chunks/app/share/[token]/page-22d51d6c5a47bb75.js +0 -1
  335. package/.next/static/chunks/app/terms/page-faf36cd0dde6dfa3.js +0 -1
  336. package/.next/static/chunks/framework-e60c938074ff7136.js +0 -1
  337. package/.next/static/chunks/main-447abf206d7ebd2f.js +0 -1
  338. package/.next/static/chunks/main-app-f63b86bdbf5b7b88.js +0 -1
  339. package/.next/static/chunks/pages/_app-6c8c2371b16a04b8.js +0 -1
  340. package/.next/static/chunks/pages/_error-94812ad32cad7365.js +0 -1
  341. package/.next/static/css/eb25c6452113486f.css +0 -3
  342. /package/.next/static/{AcaCjQ4akovHBUnVGPpfN → WshFGr6RxGYP6AbWuT9OG}/_ssgManifest.js +0 -0
@@ -71,7 +71,7 @@ const shouldHideHomeLink = async () => {
71
71
  const host = requestHeaders.get('x-forwarded-host') ?? requestHeaders.get('host') ?? '';
72
72
  const firstHost = host.split(',')[0]?.trim() ?? '';
73
73
  const hostname = firstHost.split(':')[0].toLowerCase();
74
- return hostname === 'auramaxx.sh';
74
+ return hostname === 'auramaxx.sh' || hostname === 'www.auramaxx.sh';
75
75
  };
76
76
 
77
77
  export async function ApiReferencePageContent({ selectedFilename, searchQuery = '' }: { selectedFilename?: string | null; searchQuery?: string }) {
@@ -132,15 +132,14 @@ export async function ApiReferencePageContent({ selectedFilename, searchQuery =
132
132
  </div>
133
133
 
134
134
  {/* Logo header */}
135
- <Link
136
- href="/"
137
- className="fixed top-4 left-4 sm:top-6 sm:left-6 z-30 flex items-center gap-2 sm:gap-3 hover:opacity-80 transition-opacity"
138
- >
139
- <div className="w-8 h-8 sm:w-10 sm:h-10">
135
+ <div className="fixed top-4 left-4 sm:top-6 sm:left-6 z-30 flex items-center gap-2 sm:gap-3">
136
+ <Link href="/" className="w-8 h-8 sm:w-10 sm:h-10 block hover:opacity-80 transition-opacity" aria-label="AuraMaxx home">
140
137
  <img src="/logo.webp" alt="AuraMaxx" className="w-full h-full object-contain" />
141
- </div>
138
+ </Link>
142
139
  <div className="hidden sm:flex sm:flex-col sm:leading-tight">
143
- <div className="font-black text-sm tracking-tight text-[var(--color-text,#0a0a0a)] lowercase">auramaxx</div>
140
+ <Link href="/" className="font-black text-sm tracking-tight text-[var(--color-text,#0a0a0a)] hover:opacity-80 transition-opacity">
141
+ AURAMAXX
142
+ </Link>
144
143
  <a
145
144
  href="https://x.com/hi_im_nico"
146
145
  target="_blank"
@@ -150,7 +149,7 @@ export async function ApiReferencePageContent({ selectedFilename, searchQuery =
150
149
  🗿 by @hi_im_nico, with love
151
150
  </a>
152
151
  </div>
153
- </Link>
152
+ </div>
154
153
 
155
154
  {/* Nav */}
156
155
  <div className="fixed top-5 right-4 sm:top-7 sm:right-6 z-30 flex items-center gap-2 sm:gap-3 font-mono text-[9px] sm:text-[10px] tracking-widest">
@@ -1,24 +1,8 @@
1
- import { NextRequest, NextResponse } from 'next/server';
1
+ import { NextResponse } from 'next/server';
2
2
  import { spawn } from 'child_process';
3
3
  import { join } from 'path';
4
- import { requireWorkspaceAdmin } from '@/app/api/workspace/auth';
5
-
6
- async function authorizeAdmin(request: NextRequest): Promise<NextResponse | null> {
7
- const authHeader = request.headers.get('authorization');
8
- if (!authHeader) {
9
- return NextResponse.json(
10
- { success: false, error: 'Authentication required' },
11
- { status: 401 },
12
- );
13
- }
14
-
15
- return requireWorkspaceAdmin(request);
16
- }
17
-
18
- export async function POST(request: NextRequest) {
19
- const authError = await authorizeAdmin(request);
20
- if (authError) return authError;
21
4
 
5
+ export async function POST() {
22
6
  try {
23
7
  const projectRoot = process.cwd();
24
8
  const cliEntrypoint = join(projectRoot, 'bin', 'auramaxx.js');
@@ -1,63 +1,116 @@
1
- import { NextRequest, NextResponse } from 'next/server';
2
- import { exec } from 'child_process';
1
+ import { NextResponse } from 'next/server';
2
+ import { spawn } from 'child_process';
3
+ import { join } from 'path';
4
+ import { mkdirSync } from 'fs';
5
+ import { homedir } from 'os';
3
6
  import { buildUpdateCommand, buildUpdateFallbackCommand } from '@/server/lib/update-check';
4
7
  import { clearVersionCheckCache } from '@/server/lib/version-check-cache';
5
- import { requireWorkspaceAdmin } from '@/app/api/workspace/auth';
6
8
 
7
- async function authorizeAdmin(request: NextRequest): Promise<NextResponse | null> {
8
- const authHeader = request.headers.get('authorization');
9
- if (!authHeader) {
10
- return NextResponse.json(
11
- { success: false, error: 'Authentication required' },
12
- { status: 401 },
13
- );
14
- }
9
+ export async function POST() {
10
+ try {
11
+ const primaryCommand = buildUpdateCommand();
12
+ const fallbackCommand = buildUpdateFallbackCommand();
13
+ const projectRoot = process.cwd();
14
+ const cliEntrypoint = join(projectRoot, 'bin', 'auramaxx.js');
15
15
 
16
- return requireWorkspaceAdmin(request);
16
+ const logDir = join(homedir(), '.auramaxx', 'logs');
17
+ const logPath = join(logDir, 'update-workflow.log');
18
+ mkdirSync(logDir, { recursive: true });
19
+
20
+ const stopCommand = `${JSON.stringify(process.execPath)} ${JSON.stringify(cliEntrypoint)} stop`;
21
+ const startCommand = `${JSON.stringify(process.execPath)} ${JSON.stringify(cliEntrypoint)} start`;
22
+ const uninstallCommand = 'npm uninstall -g auramaxx';
23
+
24
+ // Detached worker allows update to stop/restart services without
25
+ // depending on the current dashboard process staying alive.
26
+ const workerScript = `
27
+ const { execSync } = require('child_process');
28
+ const fs = require('fs');
29
+ const logPath = process.env.AURA_UPDATE_LOG;
30
+ const primaryCommand = process.env.AURA_UPDATE_PRIMARY;
31
+ const fallbackCommand = process.env.AURA_UPDATE_FALLBACK;
32
+ const stopCommand = process.env.AURA_UPDATE_STOP;
33
+ const startCommand = process.env.AURA_UPDATE_START;
34
+ const uninstallCommand = process.env.AURA_UPDATE_UNINSTALL;
35
+
36
+ function now() {
37
+ return new Date().toISOString();
17
38
  }
18
39
 
19
- export async function POST(request: NextRequest) {
20
- const authError = await authorizeAdmin(request);
21
- if (authError) return authError;
40
+ function append(line) {
41
+ try {
42
+ fs.appendFileSync(logPath, line + '\\n');
43
+ } catch {
44
+ // Ignore logging failures; keep workflow running.
45
+ }
46
+ }
22
47
 
48
+ function run(command, { allowFailure = false } = {}) {
49
+ append(\`[\${now()}] $ \${command}\`);
23
50
  try {
24
- const primaryCommand = buildUpdateCommand();
25
- const fallbackCommand = buildUpdateFallbackCommand();
26
- const child = exec(`${primaryCommand} 2>&1`);
27
- let output = '';
51
+ const out = execSync(command, { encoding: 'utf8', stdio: ['ignore', 'pipe', 'pipe'] });
52
+ if (out && out.trim()) append(out.trim());
53
+ append(\`[\${now()}] ok\`);
54
+ return true;
55
+ } catch (error) {
56
+ const stdout = error && error.stdout ? String(error.stdout).trim() : '';
57
+ const stderr = error && error.stderr ? String(error.stderr).trim() : '';
58
+ const status = error && typeof error.status !== 'undefined' ? String(error.status) : 'unknown';
59
+ if (stdout) append(stdout);
60
+ if (stderr) append(stderr);
61
+ append(\`[\${now()}] fail (code=\${status})\`);
62
+ if (allowFailure) return false;
63
+ throw error;
64
+ }
65
+ }
66
+
67
+ append(\`[\${now()}] update workflow started\`);
68
+ run(stopCommand, { allowFailure: true });
69
+
70
+ if (run(primaryCommand, { allowFailure: true })) {
71
+ run(startCommand, { allowFailure: true });
72
+ append(\`[\${now()}] update workflow completed (primary install)\`);
73
+ process.exit(0);
74
+ }
75
+
76
+ append(\`[\${now()}] primary install failed; retrying clean reinstall\`);
77
+ run(uninstallCommand, { allowFailure: true });
78
+ if (run(primaryCommand, { allowFailure: true })) {
79
+ run(startCommand, { allowFailure: true });
80
+ append(\`[\${now()}] update workflow completed (clean reinstall)\`);
81
+ process.exit(0);
82
+ }
83
+
84
+ append(\`[\${now()}] clean reinstall failed; falling back to npx start\`);
85
+ const fallbackOk = run(fallbackCommand, { allowFailure: true });
86
+ append(\`[\${now()}] update workflow completed (\${fallbackOk ? 'npx fallback' : 'failed'})\`);
87
+ process.exit(fallbackOk ? 0 : 1);
88
+ `;
89
+
90
+ const worker = spawn(process.execPath, ['-e', workerScript], {
91
+ cwd: projectRoot,
92
+ env: {
93
+ ...process.env,
94
+ AURA_UPDATE_LOG: logPath,
95
+ AURA_UPDATE_PRIMARY: primaryCommand,
96
+ AURA_UPDATE_FALLBACK: fallbackCommand,
97
+ AURA_UPDATE_STOP: stopCommand,
98
+ AURA_UPDATE_START: startCommand,
99
+ AURA_UPDATE_UNINSTALL: uninstallCommand,
100
+ },
101
+ detached: true,
102
+ stdio: 'ignore',
103
+ });
104
+ worker.unref();
28
105
 
29
- return new Promise<NextResponse>((resolve) => {
30
- child.stdout?.on('data', (data: string) => {
31
- output += data;
32
- });
33
- child.stderr?.on('data', (data: string) => {
34
- output += data;
35
- });
36
- child.on('close', (code) => {
37
- if (code === 0) {
38
- clearVersionCheckCache();
39
- resolve(NextResponse.json({ success: true, output: output.trim() }));
40
- } else {
41
- resolve(
42
- NextResponse.json(
43
- {
44
- success: false,
45
- error: `Update exited with code ${code}. Primary: ${primaryCommand}. Fallback: ${fallbackCommand}`,
46
- output: output.trim(),
47
- },
48
- { status: 500 },
49
- ),
50
- );
51
- }
52
- });
53
- child.on('error', (err) => {
54
- resolve(
55
- NextResponse.json(
56
- { success: false, error: err.message },
57
- { status: 500 },
58
- ),
59
- );
60
- });
106
+ clearVersionCheckCache();
107
+ return NextResponse.json({
108
+ success: true,
109
+ deferred: true,
110
+ message: 'Update workflow started: stop -> install -> start, retry uninstall/install, then npx fallback.',
111
+ output: `Running in background. Log: ${logPath}`,
112
+ logPath,
113
+ pid: worker.pid,
61
114
  });
62
115
  } catch (err) {
63
116
  return NextResponse.json(
@@ -112,6 +112,9 @@ export default function ApproveActionPage() {
112
112
  const actionName = action?.action || 'Unspecified action';
113
113
  const scopeItems = action?.scope || [];
114
114
  const impactItems = action?.impact || [];
115
+ const isLimitBasedRequest = impactItems.some((item) => /^(Fund|Send|Swap) limit:/i.test(item));
116
+ const hasFundPermission = scopeItems.some((item) => item.trim().toLowerCase() === 'fund');
117
+ const hideApproveUi = action?.type === 'fund' || hasFundPermission || isLimitBasedRequest;
115
118
  const riskLevel = (action?.risk || 'unknown').toUpperCase();
116
119
  const profileName = action?.profile;
117
120
  const isAdminProfile = profileName?.trim().toLowerCase() === 'admin';
@@ -268,7 +271,7 @@ export default function ApproveActionPage() {
268
271
  )}
269
272
 
270
273
  {/* Ready — approval content */}
271
- {pageState === 'ready' && (
274
+ {pageState === 'ready' && !hideApproveUi && (
272
275
  <>
273
276
  {/* Card header bar */}
274
277
  <div className="px-5 py-3 border-b border-[var(--color-border,#d4d4d8)] bg-[var(--color-surface-alt,#fafafa)] flex items-center justify-between">
@@ -56,7 +56,7 @@ const shouldHideHomeLink = async () => {
56
56
  const host = requestHeaders.get('x-forwarded-host') ?? requestHeaders.get('host') ?? '';
57
57
  const firstHost = host.split(',')[0]?.trim() ?? '';
58
58
  const hostname = firstHost.split(':')[0].toLowerCase();
59
- return hostname === 'auramaxx.sh';
59
+ return hostname === 'auramaxx.sh' || hostname === 'www.auramaxx.sh';
60
60
  };
61
61
 
62
62
  export default async function DocsPageContent({ selectedFilename, searchQuery = '' }: DocsPageContentProps) {
@@ -118,8 +118,8 @@ export default async function DocsPageContent({ selectedFilename, searchQuery =
118
118
  <img src="/logo.webp" alt="AuraMaxx" className="w-full h-full object-contain" />
119
119
  </Link>
120
120
  <div className="hidden sm:flex sm:flex-col sm:leading-tight">
121
- <Link href="/" className="font-black text-sm tracking-tight text-[var(--color-text,#0a0a0a)] lowercase hover:opacity-80 transition-opacity">
122
- auramaxx
121
+ <Link href="/" className="font-black text-sm tracking-tight text-[var(--color-text,#0a0a0a)] hover:opacity-80 transition-opacity">
122
+ AURAMAXX
123
123
  </Link>
124
124
  <a
125
125
  href="https://x.com/hi_im_nico"
@@ -589,6 +589,94 @@ input[type='number'] {
589
589
  50% { transform: translateY(-25px) rotate(-2deg); }
590
590
  }
591
591
 
592
+ @keyframes yo-sprite-frames {
593
+ 0%, 100% {
594
+ background-position-x: 0%;
595
+ }
596
+ 25% {
597
+ background-position-x: 50%;
598
+ }
599
+ 50% {
600
+ background-position-x: 100%;
601
+ }
602
+ 75% {
603
+ background-position-x: 50%;
604
+ }
605
+ }
606
+
607
+ @keyframes yo-sprite-drift {
608
+ 0%, 100% {
609
+ transform: translateY(0);
610
+ }
611
+ 50% {
612
+ transform: translateY(-10px);
613
+ }
614
+ }
615
+
616
+ @keyframes yo-mobile-agent-marquee {
617
+ from {
618
+ transform: translateX(0);
619
+ }
620
+ to {
621
+ transform: translateX(-25%);
622
+ }
623
+ }
624
+
625
+ @keyframes yo-slide-in-right {
626
+ from {
627
+ opacity: 0;
628
+ transform: translateX(12%);
629
+ }
630
+ to {
631
+ opacity: 1;
632
+ transform: translateX(0);
633
+ }
634
+ }
635
+
636
+ @keyframes yo-slide-out-left {
637
+ from {
638
+ opacity: 1;
639
+ transform: translateX(0);
640
+ }
641
+ to {
642
+ opacity: 0;
643
+ transform: translateX(-12%);
644
+ }
645
+ }
646
+
647
+ .yo-slide-in-right {
648
+ animation: yo-slide-in-right 760ms cubic-bezier(0.22, 1, 0.36, 1) both;
649
+ }
650
+
651
+ .yo-slide-out-left {
652
+ animation: yo-slide-out-left 760ms cubic-bezier(0.22, 1, 0.36, 1) both;
653
+ }
654
+
655
+ .yo-sprite {
656
+ width: clamp(64px, 11vw, 110px);
657
+ aspect-ratio: 2 / 3;
658
+ border: none;
659
+ background-repeat: no-repeat;
660
+ background-size: 300% 300%;
661
+ background-position-x: 0;
662
+ background-position-y: 0;
663
+ image-rendering: pixelated;
664
+ filter: drop-shadow(0 8px 12px rgba(0, 0, 0, 0.2));
665
+ animation: yo-sprite-frames 0.9s steps(1, end) infinite, yo-sprite-drift 1.9s ease-in-out infinite;
666
+ will-change: transform, background-position;
667
+ }
668
+
669
+ .yo-mobile-agent-marquee {
670
+ animation: yo-mobile-agent-marquee 22s linear infinite;
671
+ will-change: transform;
672
+ }
673
+
674
+ @media (prefers-reduced-motion: reduce) {
675
+ .yo-mobile-agent-marquee {
676
+ animation: none;
677
+ }
678
+ }
679
+
592
680
  /* ============================================================================
593
681
  MARKETING / DOCS SURFACES
594
682
  ============================================================================ */
@@ -834,3 +922,9 @@ input[type='number'] {
834
922
  -webkit-transform: translateZ(0);
835
923
  }
836
924
  }
925
+
926
+ @media (prefers-reduced-motion: reduce) {
927
+ .yo-sprite {
928
+ animation: none;
929
+ }
930
+ }
@@ -4,6 +4,7 @@ import { Providers } from './providers';
4
4
  import { ThemeProvider } from '@/hooks/useTheme';
5
5
 
6
6
  export const metadata: Metadata = {
7
+ metadataBase: new URL('https://auramaxx.sh'),
7
8
  title: 'AuraMaxx',
8
9
  description: 'Secure local wallets for AI agents',
9
10
  };