auramaxx 0.0.20 → 0.1.1
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.
- package/README.md +92 -53
- package/bin/auramaxx.js +114 -92
- package/package.json +18 -94
- package/src/server/cli/commands/create.ts +20 -24
- package/src/server/cli/commands/onboard.ts +18 -2
- package/src/server/cli/commands/play.ts +303 -34
- package/src/server/cli/lib/theme.ts +58 -0
- package/.next/BUILD_ID +0 -1
- package/.next/app-build-manifest.json +0 -303
- package/.next/app-path-routes-manifest.json +0 -38
- package/.next/build-manifest.json +0 -33
- package/.next/diagnostics/build-diagnostics.json +0 -6
- package/.next/diagnostics/framework.json +0 -1
- package/.next/export-marker.json +0 -6
- package/.next/images-manifest.json +0 -58
- package/.next/next-minimal-server.js.nft.json +0 -1
- package/.next/next-server.js.nft.json +0 -1
- package/.next/package.json +0 -1
- package/.next/prerender-manifest.json +0 -292
- package/.next/react-loadable-manifest.json +0 -80
- package/.next/required-server-files.json +0 -330
- package/.next/routes-manifest.json +0 -209
- package/.next/server/app/_not-found/page.js +0 -2
- package/.next/server/app/_not-found/page.js.nft.json +0 -1
- package/.next/server/app/_not-found/page_client-reference-manifest.js +0 -1
- package/.next/server/app/_not-found.html +0 -1
- package/.next/server/app/_not-found.meta +0 -8
- package/.next/server/app/_not-found.rsc +0 -19
- package/.next/server/app/api/[...doc]/page.js +0 -2
- package/.next/server/app/api/[...doc]/page.js.nft.json +0 -1
- package/.next/server/app/api/[...doc]/page_client-reference-manifest.js +0 -1
- package/.next/server/app/api/agent-requests/route.js +0 -1
- package/.next/server/app/api/agent-requests/route.js.nft.json +0 -1
- package/.next/server/app/api/agent-requests/route_client-reference-manifest.js +0 -1
- package/.next/server/app/api/apps/install/route.js +0 -25
- package/.next/server/app/api/apps/install/route.js.nft.json +0 -1
- package/.next/server/app/api/apps/install/route_client-reference-manifest.js +0 -1
- package/.next/server/app/api/apps/manifests/route.js +0 -1
- package/.next/server/app/api/apps/manifests/route.js.nft.json +0 -1
- package/.next/server/app/api/apps/manifests/route_client-reference-manifest.js +0 -1
- package/.next/server/app/api/apps/static/[...path]/route.js +0 -1
- package/.next/server/app/api/apps/static/[...path]/route.js.nft.json +0 -1
- package/.next/server/app/api/apps/static/[...path]/route_client-reference-manifest.js +0 -1
- package/.next/server/app/api/docs/plain/route.js +0 -4
- package/.next/server/app/api/docs/plain/route.js.nft.json +0 -1
- package/.next/server/app/api/docs/plain/route_client-reference-manifest.js +0 -1
- package/.next/server/app/api/events/route.js +0 -1
- package/.next/server/app/api/events/route.js.nft.json +0 -1
- package/.next/server/app/api/events/route_client-reference-manifest.js +0 -1
- package/.next/server/app/api/import-from-openclaw/[channel]/route.js +0 -1
- package/.next/server/app/api/import-from-openclaw/[channel]/route.js.nft.json +0 -1
- package/.next/server/app/api/import-from-openclaw/[channel]/route_client-reference-manifest.js +0 -1
- package/.next/server/app/api/import-from-openclaw/route.js +0 -1
- package/.next/server/app/api/import-from-openclaw/route.js.nft.json +0 -1
- package/.next/server/app/api/import-from-openclaw/route_client-reference-manifest.js +0 -1
- package/.next/server/app/api/import-from-openclaw/validate/[channel]/route.js +0 -1
- package/.next/server/app/api/import-from-openclaw/validate/[channel]/route.js.nft.json +0 -1
- package/.next/server/app/api/import-from-openclaw/validate/[channel]/route_client-reference-manifest.js +0 -1
- package/.next/server/app/api/page.js +0 -2
- package/.next/server/app/api/page.js.nft.json +0 -1
- package/.next/server/app/api/page_client-reference-manifest.js +0 -1
- package/.next/server/app/api/restart/route.js +0 -57
- package/.next/server/app/api/restart/route.js.nft.json +0 -1
- package/.next/server/app/api/restart/route_client-reference-manifest.js +0 -1
- package/.next/server/app/api/update/route.js +0 -94
- package/.next/server/app/api/update/route.js.nft.json +0 -1
- package/.next/server/app/api/update/route_client-reference-manifest.js +0 -1
- package/.next/server/app/api/version/route.js +0 -1
- package/.next/server/app/api/version/route.js.nft.json +0 -1
- package/.next/server/app/api/version/route_client-reference-manifest.js +0 -1
- package/.next/server/app/api/workspace/[id]/apps/[wid]/route.js +0 -1
- package/.next/server/app/api/workspace/[id]/apps/[wid]/route.js.nft.json +0 -1
- package/.next/server/app/api/workspace/[id]/apps/[wid]/route_client-reference-manifest.js +0 -1
- package/.next/server/app/api/workspace/[id]/apps/route.js +0 -1
- package/.next/server/app/api/workspace/[id]/apps/route.js.nft.json +0 -1
- package/.next/server/app/api/workspace/[id]/apps/route_client-reference-manifest.js +0 -1
- package/.next/server/app/api/workspace/[id]/export/route.js +0 -1
- package/.next/server/app/api/workspace/[id]/export/route.js.nft.json +0 -1
- package/.next/server/app/api/workspace/[id]/export/route_client-reference-manifest.js +0 -1
- package/.next/server/app/api/workspace/[id]/route.js +0 -1
- package/.next/server/app/api/workspace/[id]/route.js.nft.json +0 -1
- package/.next/server/app/api/workspace/[id]/route_client-reference-manifest.js +0 -1
- package/.next/server/app/api/workspace/config/route.js +0 -1
- package/.next/server/app/api/workspace/config/route.js.nft.json +0 -1
- package/.next/server/app/api/workspace/config/route_client-reference-manifest.js +0 -1
- package/.next/server/app/api/workspace/import/route.js +0 -1
- package/.next/server/app/api/workspace/import/route.js.nft.json +0 -1
- package/.next/server/app/api/workspace/import/route_client-reference-manifest.js +0 -1
- package/.next/server/app/api/workspace/route.js +0 -1
- package/.next/server/app/api/workspace/route.js.nft.json +0 -1
- package/.next/server/app/api/workspace/route_client-reference-manifest.js +0 -1
- package/.next/server/app/app-legacy-do-not-use/page.js +0 -17
- package/.next/server/app/app-legacy-do-not-use/page.js.nft.json +0 -1
- package/.next/server/app/app-legacy-do-not-use/page_client-reference-manifest.js +0 -1
- package/.next/server/app/app-legacy-do-not-use.html +0 -1
- package/.next/server/app/app-legacy-do-not-use.meta +0 -7
- package/.next/server/app/app-legacy-do-not-use.rsc +0 -23
- package/.next/server/app/apple-icon.png/route.js +0 -1
- package/.next/server/app/apple-icon.png/route.js.nft.json +0 -1
- package/.next/server/app/apple-icon.png.body +0 -0
- package/.next/server/app/apple-icon.png.meta +0 -1
- package/.next/server/app/approve/[actionId]/page.js +0 -2
- package/.next/server/app/approve/[actionId]/page.js.nft.json +0 -1
- package/.next/server/app/approve/[actionId]/page_client-reference-manifest.js +0 -1
- package/.next/server/app/docs/[...doc]/page.js +0 -2
- package/.next/server/app/docs/[...doc]/page.js.nft.json +0 -1
- package/.next/server/app/docs/[...doc]/page_client-reference-manifest.js +0 -1
- package/.next/server/app/docs/page.js +0 -2
- package/.next/server/app/docs/page.js.nft.json +0 -1
- package/.next/server/app/docs/page_client-reference-manifest.js +0 -1
- package/.next/server/app/favicon.ico/route.js +0 -1
- package/.next/server/app/favicon.ico/route.js.nft.json +0 -1
- package/.next/server/app/favicon.ico.body +0 -0
- package/.next/server/app/favicon.ico.meta +0 -1
- package/.next/server/app/health/page.js +0 -2
- package/.next/server/app/health/page.js.nft.json +0 -1
- package/.next/server/app/health/page_client-reference-manifest.js +0 -1
- package/.next/server/app/health.html +0 -1
- package/.next/server/app/health.meta +0 -7
- package/.next/server/app/health.rsc +0 -20
- package/.next/server/app/hello/page.js +0 -2
- package/.next/server/app/hello/page.js.nft.json +0 -1
- package/.next/server/app/hello/page_client-reference-manifest.js +0 -1
- package/.next/server/app/hello.html +0 -1
- package/.next/server/app/hello.meta +0 -7
- package/.next/server/app/hello.rsc +0 -23
- package/.next/server/app/icon.png/route.js +0 -1
- package/.next/server/app/icon.png/route.js.nft.json +0 -1
- package/.next/server/app/icon.png.body +0 -0
- package/.next/server/app/icon.png.meta +0 -1
- package/.next/server/app/index.html +0 -1
- package/.next/server/app/index.meta +0 -7
- package/.next/server/app/index.rsc +0 -20
- package/.next/server/app/page.js +0 -14
- package/.next/server/app/page.js.nft.json +0 -1
- package/.next/server/app/page_client-reference-manifest.js +0 -1
- package/.next/server/app/privacy/page.js +0 -2
- package/.next/server/app/privacy/page.js.nft.json +0 -1
- package/.next/server/app/privacy/page_client-reference-manifest.js +0 -1
- package/.next/server/app/privacy.html +0 -1
- package/.next/server/app/privacy.meta +0 -7
- package/.next/server/app/privacy.rsc +0 -24
- package/.next/server/app/share/[token]/page.js +0 -2
- package/.next/server/app/share/[token]/page.js.nft.json +0 -1
- package/.next/server/app/share/[token]/page_client-reference-manifest.js +0 -1
- package/.next/server/app/terms/page.js +0 -2
- package/.next/server/app/terms/page.js.nft.json +0 -1
- package/.next/server/app/terms/page_client-reference-manifest.js +0 -1
- package/.next/server/app/terms.html +0 -1
- package/.next/server/app/terms.meta +0 -7
- package/.next/server/app/terms.rsc +0 -24
- package/.next/server/app/yo/page.js +0 -2
- package/.next/server/app/yo/page.js.nft.json +0 -1
- package/.next/server/app/yo/page_client-reference-manifest.js +0 -1
- package/.next/server/app/yo.html +0 -1
- package/.next/server/app/yo.meta +0 -7
- package/.next/server/app/yo.rsc +0 -23
- package/.next/server/app-paths-manifest.json +0 -38
- package/.next/server/chunks/1194.js +0 -4
- package/.next/server/chunks/1196.js +0 -1
- package/.next/server/chunks/1331.js +0 -22
- package/.next/server/chunks/1503.js +0 -2
- package/.next/server/chunks/1644.js +0 -1
- package/.next/server/chunks/1692.js +0 -1
- package/.next/server/chunks/2123.js +0 -59
- package/.next/server/chunks/2145.js +0 -1
- package/.next/server/chunks/2234.js +0 -1
- package/.next/server/chunks/2269.js +0 -1
- package/.next/server/chunks/2395.js +0 -9
- package/.next/server/chunks/2945.js +0 -1
- package/.next/server/chunks/335.js +0 -1
- package/.next/server/chunks/372.js +0 -1
- package/.next/server/chunks/4224.js +0 -1
- package/.next/server/chunks/4337.js +0 -1
- package/.next/server/chunks/4600.js +0 -1
- package/.next/server/chunks/4697.js +0 -1
- package/.next/server/chunks/5347.js +0 -1
- package/.next/server/chunks/5482.js +0 -1
- package/.next/server/chunks/5611.js +0 -6
- package/.next/server/chunks/5678.js +0 -4
- package/.next/server/chunks/5784.js +0 -1
- package/.next/server/chunks/5991.js +0 -7
- package/.next/server/chunks/6086.js +0 -2
- package/.next/server/chunks/6470.js +0 -1
- package/.next/server/chunks/6572.js +0 -59
- package/.next/server/chunks/7585.js +0 -1
- package/.next/server/chunks/7935.js +0 -101
- package/.next/server/chunks/8011.js +0 -1
- package/.next/server/chunks/8468.js +0 -1
- package/.next/server/chunks/9323.js +0 -8
- package/.next/server/chunks/9971.js +0 -1
- package/.next/server/functions-config-manifest.json +0 -8
- package/.next/server/instrumentation.js +0 -1
- package/.next/server/instrumentation.js.nft.json +0 -1
- package/.next/server/interception-route-rewrite-manifest.js +0 -1
- package/.next/server/middleware-build-manifest.js +0 -1
- package/.next/server/middleware-manifest.json +0 -6
- package/.next/server/middleware-react-loadable-manifest.js +0 -1
- package/.next/server/next-font-manifest.js +0 -1
- package/.next/server/next-font-manifest.json +0 -1
- package/.next/server/pages/404.html +0 -1
- package/.next/server/pages/500.html +0 -1
- package/.next/server/pages/_app.js +0 -1
- package/.next/server/pages/_app.js.nft.json +0 -1
- package/.next/server/pages/_document.js +0 -1
- package/.next/server/pages/_document.js.nft.json +0 -1
- package/.next/server/pages/_error.js +0 -19
- package/.next/server/pages/_error.js.nft.json +0 -1
- package/.next/server/pages-manifest.json +0 -6
- package/.next/server/server-reference-manifest.js +0 -1
- package/.next/server/server-reference-manifest.json +0 -1
- package/.next/server/webpack-runtime.js +0 -1
- package/.next/static/chunks/1168.bb1c93965872e980.js +0 -1
- package/.next/static/chunks/1255-7999eac54f80a49f.js +0 -1
- package/.next/static/chunks/142-fa9752f53a551f63.js +0 -1
- package/.next/static/chunks/2505.d54ccadc42f4e3d1.js +0 -1
- package/.next/static/chunks/2619-04bc32f026a0d946.js +0 -1
- package/.next/static/chunks/2891-bf010357841c9ce9.js +0 -1
- package/.next/static/chunks/2927.3976471e61df966e.js +0 -1
- package/.next/static/chunks/3573-667bc4c8f56afcff.js +0 -1
- package/.next/static/chunks/3609.ded5a5306e18af9c.js +0 -1
- package/.next/static/chunks/3826.a73d4a88d8c09030.js +0 -1
- package/.next/static/chunks/3a91511d-da2c74cad6c6fc33.js +0 -7
- package/.next/static/chunks/4114-a375178fd94c4d8a.js +0 -1
- package/.next/static/chunks/4256.aa831e4d8c3f65bc.js +0 -1
- package/.next/static/chunks/4901-ba6a32818662e70a.js +0 -1
- package/.next/static/chunks/4919-0e698cd95504e355.js +0 -1
- package/.next/static/chunks/4bd1b696-100b9d70ed4e49c1.js +0 -1
- package/.next/static/chunks/5336-b775f449d7433604.js +0 -1
- package/.next/static/chunks/5362-2e8fcdd0bc6273ca.js +0 -59
- package/.next/static/chunks/6233-97a810aa272af547.js +0 -1
- package/.next/static/chunks/626.a5109d16f9eca1f6.js +0 -1
- package/.next/static/chunks/67-cb9bbb430499e803.js +0 -1
- package/.next/static/chunks/7616-1129bcb3eee8d315.js +0 -1
- package/.next/static/chunks/786-26deffb41572cbb3.js +0 -1
- package/.next/static/chunks/8273-3b9d882c5dd6a9a8.js +0 -1
- package/.next/static/chunks/8291-8f6fb6554e692552.js +0 -1
- package/.next/static/chunks/8357.5dee1e0c4e5bb091.js +0 -1
- package/.next/static/chunks/8370-6537b6b27df58b23.js +0 -1
- package/.next/static/chunks/9062-2bc2d089f9c9c6ba.js +0 -1
- package/.next/static/chunks/9380.f198afbf0c6b5369.js +0 -1
- package/.next/static/chunks/app/_not-found/page-5a8c6a29f762fa58.js +0 -1
- package/.next/static/chunks/app/api/[...doc]/page-f0852f35f0fd1d44.js +0 -1
- package/.next/static/chunks/app/api/agent-requests/route-cf84f975aad4c719.js +0 -1
- package/.next/static/chunks/app/api/apps/install/route-cf84f975aad4c719.js +0 -1
- package/.next/static/chunks/app/api/apps/manifests/route-cf84f975aad4c719.js +0 -1
- package/.next/static/chunks/app/api/apps/static/[...path]/route-cf84f975aad4c719.js +0 -1
- package/.next/static/chunks/app/api/docs/plain/route-cf84f975aad4c719.js +0 -1
- package/.next/static/chunks/app/api/events/route-cf84f975aad4c719.js +0 -1
- package/.next/static/chunks/app/api/import-from-openclaw/[channel]/route-cf84f975aad4c719.js +0 -1
- package/.next/static/chunks/app/api/import-from-openclaw/route-cf84f975aad4c719.js +0 -1
- package/.next/static/chunks/app/api/import-from-openclaw/validate/[channel]/route-cf84f975aad4c719.js +0 -1
- package/.next/static/chunks/app/api/page-cc59bebcc0d2c01d.js +0 -1
- package/.next/static/chunks/app/api/restart/route-cf84f975aad4c719.js +0 -1
- package/.next/static/chunks/app/api/update/route-cf84f975aad4c719.js +0 -1
- package/.next/static/chunks/app/api/version/route-cf84f975aad4c719.js +0 -1
- package/.next/static/chunks/app/api/workspace/[id]/apps/[wid]/route-cf84f975aad4c719.js +0 -1
- package/.next/static/chunks/app/api/workspace/[id]/apps/route-cf84f975aad4c719.js +0 -1
- package/.next/static/chunks/app/api/workspace/[id]/export/route-cf84f975aad4c719.js +0 -1
- package/.next/static/chunks/app/api/workspace/[id]/route-cf84f975aad4c719.js +0 -1
- package/.next/static/chunks/app/api/workspace/config/route-cf84f975aad4c719.js +0 -1
- package/.next/static/chunks/app/api/workspace/import/route-cf84f975aad4c719.js +0 -1
- package/.next/static/chunks/app/api/workspace/route-cf84f975aad4c719.js +0 -1
- package/.next/static/chunks/app/app-legacy-do-not-use/page-efa348da049c5873.js +0 -1
- package/.next/static/chunks/app/approve/[actionId]/page-c862645e19371cea.js +0 -1
- package/.next/static/chunks/app/docs/[...doc]/page-8e2a2d036caab242.js +0 -1
- package/.next/static/chunks/app/docs/page-acf872a03ff79893.js +0 -1
- package/.next/static/chunks/app/error-04a18fd49a89ee17.js +0 -1
- package/.next/static/chunks/app/health/page-c9185854ed9c86d0.js +0 -1
- package/.next/static/chunks/app/hello/page-74c9f4deaa4b03dd.js +0 -1
- package/.next/static/chunks/app/layout-7093dda0d106f34d.js +0 -1
- package/.next/static/chunks/app/page-0ec7cf48550f71e6.js +0 -1
- package/.next/static/chunks/app/privacy/page-8e2d17079355c2cc.js +0 -1
- package/.next/static/chunks/app/share/[token]/page-5dd9b0418eee411f.js +0 -1
- package/.next/static/chunks/app/terms/page-8e2d17079355c2cc.js +0 -1
- package/.next/static/chunks/app/yo/layout-cf84f975aad4c719.js +0 -1
- package/.next/static/chunks/app/yo/page-48930746b135037e.js +0 -1
- package/.next/static/chunks/framework-a32a2a465584c0bc.js +0 -1
- package/.next/static/chunks/main-0f0f9142f74e7215.js +0 -1
- package/.next/static/chunks/main-app-24f0c92ba10af457.js +0 -1
- package/.next/static/chunks/pages/_app-4b3fb5e477a0267f.js +0 -1
- package/.next/static/chunks/pages/_error-c970d8b55ace1b48.js +0 -1
- package/.next/static/chunks/polyfills-42372ed130431b0a.js +0 -1
- package/.next/static/chunks/webpack-15ec0114c9d658c2.js +0 -1
- package/.next/static/css/35991998d1b5eff0.css +0 -3
- package/.next/static/q3rrQEmg9jZ5Lt-BCTiTK/_buildManifest.js +0 -1
- package/.next/static/q3rrQEmg9jZ5Lt-BCTiTK/_ssgManifest.js +0 -1
- package/.next/trace +0 -28
- package/.next/types/app/api/[...doc]/page.ts +0 -84
- package/.next/types/app/api/agent-requests/route.ts +0 -347
- package/.next/types/app/api/apps/install/route.ts +0 -347
- package/.next/types/app/api/apps/manifests/route.ts +0 -347
- package/.next/types/app/api/apps/static/[...path]/route.ts +0 -347
- package/.next/types/app/api/docs/plain/route.ts +0 -347
- package/.next/types/app/api/events/route.ts +0 -347
- package/.next/types/app/api/import-from-openclaw/[channel]/route.ts +0 -347
- package/.next/types/app/api/import-from-openclaw/route.ts +0 -347
- package/.next/types/app/api/import-from-openclaw/validate/[channel]/route.ts +0 -347
- package/.next/types/app/api/restart/route.ts +0 -347
- package/.next/types/app/api/update/route.ts +0 -347
- package/.next/types/app/api/version/route.ts +0 -347
- package/.next/types/app/api/workspace/[id]/apps/[wid]/route.ts +0 -347
- package/.next/types/app/api/workspace/[id]/apps/route.ts +0 -347
- package/.next/types/app/api/workspace/[id]/export/route.ts +0 -347
- package/.next/types/app/api/workspace/[id]/route.ts +0 -347
- package/.next/types/app/api/workspace/config/route.ts +0 -347
- package/.next/types/app/api/workspace/import/route.ts +0 -347
- package/.next/types/app/api/workspace/route.ts +0 -347
- package/.next/types/app/app-legacy-do-not-use/page.ts +0 -84
- package/.next/types/app/approve/[actionId]/page.ts +0 -84
- package/.next/types/app/docs/[...doc]/page.ts +0 -84
- package/.next/types/app/docs/page.ts +0 -84
- package/.next/types/app/health/page.ts +0 -84
- package/.next/types/app/hello/page.ts +0 -84
- package/.next/types/app/page.ts +0 -84
- package/.next/types/app/privacy/page.ts +0 -84
- package/.next/types/app/share/[token]/page.ts +0 -84
- package/.next/types/app/terms/page.ts +0 -84
- package/.next/types/app/yo/layout.ts +0 -84
- package/.next/types/app/yo/page.ts +0 -84
- package/.next/types/cache-life.d.ts +0 -141
- package/.next/types/package.json +0 -1
- package/.next/types/routes.d.ts +0 -105
- package/.next/types/validator.ts +0 -358
- package/apps/desktop-electron/main.js +0 -428
- package/docs/README.md +0 -38
- package/docs/ai-agents-workflow/API.md +0 -127
- package/docs/ai-agents-workflow/AUTH.md +0 -460
- package/docs/ai-agents-workflow/BEST-PRACTICES.md +0 -82
- package/docs/ai-agents-workflow/CLI.md +0 -189
- package/docs/ai-agents-workflow/MCP.md +0 -223
- package/docs/ai-agents-workflow/POLICY.md +0 -194
- package/docs/ai-agents-workflow/SKILLS.md +0 -135
- package/docs/ai-agents-workflow/credentials.md +0 -122
- package/docs/api/authentication.md +0 -80
- package/docs/api/secrets/api-keys.md +0 -28
- package/docs/api/secrets/credentials.md +0 -88
- package/docs/api/secrets/sharing.md +0 -48
- package/docs/api/system.md +0 -42
- package/docs/api/wallets/apps-strategies.md +0 -66
- package/docs/api/wallets/core.md +0 -46
- package/docs/api/wallets/data-portfolio.md +0 -42
- package/docs/how-to-auramaxx/TROUBLESHOOTING.md +0 -477
- package/docs/how-to-auramaxx/WORKING_WITH_SECRETS.md +0 -96
- package/docs/how-to-auramaxx/share-secret.md +0 -74
- package/docs/legacy/ADAPTERS.md +0 -471
- package/docs/legacy/APPS.md +0 -199
- package/docs/legacy/DESKTOP_ELECTRON.md +0 -26
- package/docs/legacy/DEVELOPING-APPS.md +0 -453
- package/docs/legacy/PACKAGING_POLICY.md +0 -19
- package/docs/legacy/PERMISSION.md +0 -138
- package/docs/legacy/PROTOCOL.md +0 -142
- package/docs/legacy/README.md +0 -21
- package/docs/legacy/WORKSPACE.md +0 -673
- package/docs/legacy/agent-auth.md +0 -13
- package/docs/legacy/aura-file.md +0 -48
- package/docs/legacy/external/HOW_TO_AURAMAXX/README.md +0 -45
- package/docs/legacy/external/README.md +0 -7
- package/docs/legacy/external/getting-started.md +0 -10
- package/docs/legacy/external/overview.md +0 -19
- package/docs/legacy/external/persona-paths.md +0 -7
- package/docs/legacy/external/why-aura.md +0 -7
- package/docs/legacy/specs/README.md +0 -6
- package/docs/legacy/specs/aura-open-protocol.md +0 -61
- package/docs/legacy/specs/aura-provider-plugin.md +0 -24
- package/docs/legacy/specs/aura-registry-model.md +0 -31
- package/docs/legacy/specs/fixtures/invalid-bad-key.aura +0 -1
- package/docs/legacy/specs/fixtures/invalid-bad-unicode-escape.aura +0 -1
- package/docs/legacy/specs/fixtures/invalid-duplicate-key.aura +0 -2
- package/docs/legacy/specs/fixtures/valid-basic.aura +0 -4
- package/docs/legacy/specs/fixtures/valid-provider-ref.aura +0 -1
- package/docs/legacy/specs/fixtures/valid-quoted-escapes.aura +0 -2
- package/docs/legacy/specs/task-256-create-edit-ui.md +0 -65
- package/docs/legacy/templates/README.md +0 -3
- package/docs/legacy/templates/RELEASE_NOTES_TEMPLATE.md +0 -22
- package/docs/legacy/wallet/AI.md +0 -508
- package/docs/legacy/wallet/DEVELOPING-STRATEGIES.md +0 -713
- package/docs/legacy/wallet/README.md +0 -47
- package/docs/legacy/wallet/STRATEGY.md +0 -89
- package/docs/quickstart/AGENT_SETUP.md +0 -181
- package/docs/why-auramaxx/ARCHITECTURE.md +0 -248
- package/docs/why-auramaxx/FEATURES.md +0 -117
- package/docs/why-auramaxx/security.md +0 -362
- package/next.config.ts +0 -38
- package/postcss.config.mjs +0 -8
- package/prisma/migrations/20260214170000_baseline/migration.sql +0 -511
- package/prisma/migrations/20260216214537_add_passkey_model/migration.sql +0 -18
- package/prisma/migrations/20260217150500_add_credential_access_audit/migration.sql +0 -31
- package/prisma/migrations/20260222090000_update_admin_ttl_default/migration.sql +0 -10
- package/prisma/migrations/20260227214000_update_agent_action_ttl_defaults/migration.sql +0 -19
- package/prisma/migrations/20260301225214_social_tables/migration.sql +0 -81
- package/prisma/migrations/20260302120000_add_notification_hash/migration.sql +0 -8
- package/prisma/migrations/20260302160000_add_public_key_hex/migration.sql +0 -5
- package/prisma/migrations/20260302170000_add_inbound_author_public_key/migration.sql +0 -5
- package/prisma/migrations/migration_lock.toml +0 -3
- package/prisma/schema.prisma +0 -542
- package/public/0a167e5e-4f52-4715-ae23-bf63d259a6b1.png +0 -0
- package/public/141ec92c-6780-4b23-838f-9a7bf1e91bb8.png +0 -0
- package/public/3afc4935-92cb-42af-9624-0b1341c12a5e.png +0 -0
- package/public/43947df5-dbcf-4e49-ab8b-41b9162c0410.png +0 -0
- package/public/5aeae9ce-0d38-49ea-8fd1-167892a04a85.png +0 -0
- package/public/660e4ea3-a3a6-4be4-a8ca-2cb74c51dfb5.png +0 -0
- package/public/733f02d7-6b58-4ba6-a5c8-d062cd205e1d.png +0 -0
- package/public/README.png +0 -0
- package/public/a32d65cb-95b0-4977-be6b-cf69f515afbe.png +0 -0
- package/public/agent1.png +0 -0
- package/public/agent10.png +0 -0
- package/public/agent2.png +0 -0
- package/public/agent3.png +0 -0
- package/public/agent4.png +0 -0
- package/public/agent5.png +0 -0
- package/public/agent6.png +0 -0
- package/public/agent7.png +0 -0
- package/public/agent8.png +0 -0
- package/public/agent9.png +0 -0
- package/public/c4938305-b811-4ccc-91db-94d309734827.png +0 -0
- package/public/f2ca6825-a4f3-4107-815c-51ee740dfc09.png +0 -0
- package/public/install.ps1 +0 -10
- package/public/install.sh +0 -11
- package/public/llm.txt +0 -2
- package/public/llms.txt +0 -39
- package/public/logo.webp +0 -0
- package/public/opengraph.webp +0 -0
- package/public/ss-dark1.png +0 -0
- package/public/ss-dark1.webp +0 -0
- package/public/ss-dark2.png +0 -0
- package/public/ss-dark2.webp +0 -0
- package/public/ss-dark3.png +0 -0
- package/public/ss-dark3.webp +0 -0
- package/public/ss-light1.png +0 -0
- package/public/ss-light1.webp +0 -0
- package/public/ss-light2.png +0 -0
- package/public/ss-light2.webp +0 -0
- package/public/ss-light3.png +0 -0
- package/public/ss-light3.webp +0 -0
- package/scripts/add-app.js +0 -245
- package/shared/credential-field-schema.ts +0 -270
- package/skills/auramaxx/HEARTBEAT.md +0 -97
- package/skills/auramaxx/SKILL.md +0 -136
- package/skills/auramaxx/docs/AGENT_SETUP.md +0 -160
- package/skills/auramaxx/docs/API.md +0 -127
- package/skills/auramaxx/docs/AUTH.md +0 -318
- package/skills/auramaxx/docs/CLI.md +0 -130
- package/skills/auramaxx/docs/MCP.md +0 -192
- package/skills/auramaxx/docs/TROUBLESHOOTING.md +0 -357
- package/skills/auramaxx/docs/WORKSPACE.md +0 -673
- package/skills/auramaxx/docs/security.md +0 -227
- package/skills/task-lifecycle/SKILL.md +0 -366
- package/src/app/UnlockPageClient.tsx +0 -2344
- package/src/app/api/[...doc]/page.tsx +0 -36
- package/src/app/api/agent-requests/route.ts +0 -30
- package/src/app/api/apps/install/route.ts +0 -132
- package/src/app/api/apps/manifests/route.ts +0 -16
- package/src/app/api/apps/static/[...path]/route.ts +0 -57
- package/src/app/api/docs/plain/route.ts +0 -74
- package/src/app/api/events/route.ts +0 -92
- package/src/app/api/import-from-openclaw/[channel]/route.ts +0 -62
- package/src/app/api/import-from-openclaw/lib.ts +0 -672
- package/src/app/api/import-from-openclaw/route.ts +0 -88
- package/src/app/api/import-from-openclaw/validate/[channel]/route.ts +0 -88
- package/src/app/api/page.tsx +0 -299
- package/src/app/api/restart/route.ts +0 -111
- package/src/app/api/update/route.ts +0 -268
- package/src/app/api/version/route.ts +0 -79
- package/src/app/api/workspace/[id]/apps/[wid]/route.ts +0 -119
- package/src/app/api/workspace/[id]/apps/route.ts +0 -81
- package/src/app/api/workspace/[id]/export/route.ts +0 -67
- package/src/app/api/workspace/[id]/route.ts +0 -168
- package/src/app/api/workspace/auth.ts +0 -40
- package/src/app/api/workspace/config/route.ts +0 -121
- package/src/app/api/workspace/import/route.ts +0 -127
- package/src/app/api/workspace/route.ts +0 -116
- package/src/app/app-legacy-do-not-use/page.tsx +0 -2247
- package/src/app/apple-icon.png +0 -0
- package/src/app/approve/[actionId]/page.tsx +0 -428
- package/src/app/docs/DocsPageContent.tsx +0 -283
- package/src/app/docs/[...doc]/page.tsx +0 -41
- package/src/app/docs/page.tsx +0 -38
- package/src/app/error.tsx +0 -125
- package/src/app/favicon.ico +0 -0
- package/src/app/globals.css +0 -940
- package/src/app/health/page.tsx +0 -5
- package/src/app/hello/page.tsx +0 -102
- package/src/app/icon.png +0 -0
- package/src/app/layout.tsx +0 -40
- package/src/app/page.tsx +0 -38
- package/src/app/privacy/page.tsx +0 -63
- package/src/app/providers.tsx +0 -87
- package/src/app/share/[token]/page.tsx +0 -295
- package/src/app/terms/page.tsx +0 -80
- package/src/app/yo/layout.tsx +0 -38
- package/src/app/yo/page.tsx +0 -614
- package/src/components/AgentPicker.tsx +0 -278
- package/src/components/ChainSelector.tsx +0 -44
- package/src/components/CreateAgentModal.tsx +0 -192
- package/src/components/HumanActionBar.tsx +0 -865
- package/src/components/NotificationDrawer.tsx +0 -455
- package/src/components/PasskeyEnrollmentPrompt.tsx +0 -974
- package/src/components/UpdateBanner.tsx +0 -171
- package/src/components/agent/AgentSidebar.tsx +0 -921
- package/src/components/agent/ApiKeysConsole.tsx +0 -1272
- package/src/components/agent/AuditConsole.tsx +0 -600
- package/src/components/agent/CredentialAgent.tsx +0 -1718
- package/src/components/agent/CredentialDetail.tsx +0 -710
- package/src/components/agent/CredentialEmpty.tsx +0 -55
- package/src/components/agent/CredentialField.tsx +0 -594
- package/src/components/agent/CredentialForm.tsx +0 -1867
- package/src/components/agent/CredentialList.tsx +0 -299
- package/src/components/agent/CredentialRow.tsx +0 -138
- package/src/components/agent/CredentialShareModal.tsx +0 -285
- package/src/components/agent/CredentialWalletWidget.tsx +0 -103
- package/src/components/agent/DocsConsole.tsx +0 -113
- package/src/components/agent/ImportCredentialsModal.tsx +0 -578
- package/src/components/agent/LargeTypeModal.tsx +0 -88
- package/src/components/agent/PasswordGenerator.tsx +0 -232
- package/src/components/agent/TOTPDisplay.tsx +0 -108
- package/src/components/agent/TotpSetupPanel.tsx +0 -198
- package/src/components/agent/credentialDisplayName.ts +0 -42
- package/src/components/agent/credentialFormName.ts +0 -150
- package/src/components/agent/credentialListSort.ts +0 -56
- package/src/components/agent/hooks/useAgentKeyboardShortcuts.ts +0 -69
- package/src/components/agent/types.ts +0 -56
- package/src/components/agents/AgentsView.tsx +0 -1035
- package/src/components/apps/AgentKeysApp.tsx +0 -490
- package/src/components/apps/App.tsx +0 -153
- package/src/components/apps/AppGrid.tsx +0 -15
- package/src/components/apps/DetailedAddressDrawer.tsx +0 -325
- package/src/components/apps/DraggableApp.tsx +0 -562
- package/src/components/apps/IFrameApp.tsx +0 -73
- package/src/components/apps/LogsApp.tsx +0 -360
- package/src/components/apps/SendApp.tsx +0 -394
- package/src/components/apps/SetupWizardApp.tsx +0 -1004
- package/src/components/apps/SystemDefaultsApp.tsx +0 -845
- package/src/components/apps/ThirdPartyApp.tsx +0 -428
- package/src/components/apps/TokenApp.tsx +0 -319
- package/src/components/apps/TransactionsApp.tsx +0 -438
- package/src/components/apps/WalletDetailApp.tsx +0 -1505
- package/src/components/apps/index.ts +0 -13
- package/src/components/design-system/Button.tsx +0 -88
- package/src/components/design-system/ChainIndicator.tsx +0 -65
- package/src/components/design-system/ChainSelector.tsx +0 -147
- package/src/components/design-system/ConfirmationModal.tsx +0 -107
- package/src/components/design-system/ConfirmationPopover.tsx +0 -81
- package/src/components/design-system/DownloadButton.tsx +0 -149
- package/src/components/design-system/Drawer.tsx +0 -133
- package/src/components/design-system/FilterDropdown.tsx +0 -183
- package/src/components/design-system/ItemPicker.tsx +0 -157
- package/src/components/design-system/Modal.tsx +0 -314
- package/src/components/design-system/Popover.tsx +0 -142
- package/src/components/design-system/TextAreaInput.tsx +0 -78
- package/src/components/design-system/TextInput.tsx +0 -85
- package/src/components/design-system/Toggle.tsx +0 -65
- package/src/components/design-system/TyvekCollapsibleSection.tsx +0 -55
- package/src/components/design-system/index.ts +0 -15
- package/src/components/docs/ClientSideMarkdown.tsx +0 -51
- package/src/components/docs/DocsSearchBar.tsx +0 -118
- package/src/components/docs/DocsThemeToggle.tsx +0 -38
- package/src/components/docs/PersistentDocGroup.tsx +0 -91
- package/src/components/docs/ShareUrlButton.tsx +0 -33
- package/src/components/docs/SidebarScrollMemory.tsx +0 -56
- package/src/components/health/CredentialHealthDashboard.tsx +0 -214
- package/src/components/hub/HubView.tsx +0 -58
- package/src/components/icons/ChainIcons.tsx +0 -72
- package/src/components/layout/AppStoreDrawer.tsx +0 -369
- package/src/components/layout/ContentArea.tsx +0 -21
- package/src/components/layout/CreateViewModal.tsx +0 -88
- package/src/components/layout/LeftRail.tsx +0 -407
- package/src/components/layout/SettingsDrawer.tsx +0 -1200
- package/src/components/layout/TabBar.tsx +0 -284
- package/src/components/layout/ViewShell.tsx +0 -125
- package/src/components/layout/WalletSidebar.tsx +0 -1043
- package/src/components/layout/index.ts +0 -7
- package/src/components/marketing/AuraMaxxSpecOverlay.tsx +0 -653
- package/src/components/marketing/DeviceMorphExperience.tsx +0 -216
- package/src/components/social/PrimaryHubRegistrationGate.tsx +0 -260
- package/src/components/social/SocialView.tsx +0 -904
- package/src/context/AuthContext.tsx +0 -365
- package/src/context/PriceContext.tsx +0 -113
- package/src/context/ThemeContext.tsx +0 -164
- package/src/context/WebSocketContext.tsx +0 -269
- package/src/context/WorkspaceContext.tsx +0 -668
- package/src/hooks/index.ts +0 -4
- package/src/hooks/useAgentActions.ts +0 -552
- package/src/hooks/useBalance.ts +0 -103
- package/src/hooks/useBalances.ts +0 -129
- package/src/hooks/useSocialNotifications.ts +0 -123
- package/src/hooks/useTheme.ts +0 -156
- package/src/hooks/useUpdateChecker.ts +0 -245
- package/src/instrumentation.ts +0 -12
- package/src/lib/agent-crypto.ts +0 -129
- package/src/lib/api-docs.ts +0 -158
- package/src/lib/api.ts +0 -474
- package/src/lib/app-loader.ts +0 -148
- package/src/lib/app-registry.ts +0 -178
- package/src/lib/app-sdk.ts +0 -157
- package/src/lib/audit-console-adapter.ts +0 -151
- package/src/lib/auth-client.ts +0 -75
- package/src/lib/config.ts +0 -74
- package/src/lib/credential-field-schema.ts +0 -11
- package/src/lib/crypto.ts +0 -112
- package/src/lib/db.ts +0 -21
- package/src/lib/docs.ts +0 -617
- package/src/lib/events.ts +0 -372
- package/src/lib/markdown.ts +0 -39
- package/src/lib/pino.ts +0 -82
- package/src/lib/social-client.ts +0 -319
- package/src/lib/theme-handlers.ts +0 -168
- package/src/lib/theme.ts +0 -351
- package/src/lib/tokenData.ts +0 -378
- package/src/lib/totp-import.ts +0 -57
- package/src/lib/view-registry.ts +0 -75
- package/src/lib/websocket-server.ts +0 -302
- package/src/lib/websocket-setup.ts +0 -79
- package/src/lib/wordlist.ts +0 -2050
- package/src/lib/workspace-handlers.ts +0 -285
- package/src/server/abi/SwapHelper.json +0 -438
- package/src/server/cli/approval.ts +0 -447
- package/src/server/cli/commands/actions.ts +0 -469
- package/src/server/cli/commands/agent.ts +0 -1760
- package/src/server/cli/commands/api.ts +0 -181
- package/src/server/cli/commands/apikey.ts +0 -278
- package/src/server/cli/commands/app.ts +0 -204
- package/src/server/cli/commands/approve.ts +0 -209
- package/src/server/cli/commands/auth.ts +0 -885
- package/src/server/cli/commands/cron.ts +0 -24
- package/src/server/cli/commands/diary.ts +0 -273
- package/src/server/cli/commands/doctor.ts +0 -1267
- package/src/server/cli/commands/env.ts +0 -476
- package/src/server/cli/commands/experimental.ts +0 -69
- package/src/server/cli/commands/init.ts +0 -973
- package/src/server/cli/commands/lock.ts +0 -109
- package/src/server/cli/commands/mcp.ts +0 -285
- package/src/server/cli/commands/nuke.ts +0 -156
- package/src/server/cli/commands/quickhack.ts +0 -86
- package/src/server/cli/commands/register-agent.ts +0 -181
- package/src/server/cli/commands/release-check.ts +0 -231
- package/src/server/cli/commands/restart.ts +0 -61
- package/src/server/cli/commands/restore.ts +0 -314
- package/src/server/cli/commands/service.ts +0 -406
- package/src/server/cli/commands/shell-hook.ts +0 -512
- package/src/server/cli/commands/skill.ts +0 -280
- package/src/server/cli/commands/social.ts +0 -648
- package/src/server/cli/commands/start.ts +0 -260
- package/src/server/cli/commands/status.ts +0 -59
- package/src/server/cli/commands/stop.ts +0 -36
- package/src/server/cli/commands/token.ts +0 -180
- package/src/server/cli/commands/unlock.ts +0 -50
- package/src/server/cli/commands/wallet.ts +0 -210
- package/src/server/cli/index.ts +0 -285
- package/src/server/cli/lib/approval-actions.ts +0 -21
- package/src/server/cli/lib/approval-context.ts +0 -347
- package/src/server/cli/lib/approval-poll.ts +0 -142
- package/src/server/cli/lib/aura-parser.ts +0 -64
- package/src/server/cli/lib/auth-bootstrap.ts +0 -72
- package/src/server/cli/lib/credential-create.ts +0 -74
- package/src/server/cli/lib/credential-resolve.ts +0 -300
- package/src/server/cli/lib/dotenv-migrate.ts +0 -116
- package/src/server/cli/lib/dotenv-parser.ts +0 -146
- package/src/server/cli/lib/escalation.ts +0 -238
- package/src/server/cli/lib/http.ts +0 -105
- package/src/server/cli/lib/init-steps.ts +0 -76
- package/src/server/cli/lib/local-agent-trust.ts +0 -46
- package/src/server/cli/lib/lock-unlock-helper.ts +0 -71
- package/src/server/cli/lib/process.ts +0 -536
- package/src/server/cli/socket.ts +0 -583
- package/src/server/cli/transport-client.ts +0 -47
- package/src/server/cron/index.ts +0 -133
- package/src/server/cron/job.ts +0 -31
- package/src/server/cron/jobs/balance-sync.ts +0 -436
- package/src/server/cron/jobs/incoming-scan.ts +0 -506
- package/src/server/cron/jobs/native-price.ts +0 -70
- package/src/server/cron/jobs/orphan-cleanup.ts +0 -40
- package/src/server/cron/jobs/social-inbound.ts +0 -596
- package/src/server/cron/jobs/social-outbound.ts +0 -70
- package/src/server/cron/jobs/strategy-runner.ts +0 -175
- package/src/server/cron/scheduler.ts +0 -125
- package/src/server/index.ts +0 -438
- package/src/server/lib/adapters/delivery.ts +0 -508
- package/src/server/lib/adapters/discord.ts +0 -141
- package/src/server/lib/adapters/factory.ts +0 -123
- package/src/server/lib/adapters/index.ts +0 -21
- package/src/server/lib/adapters/router.ts +0 -297
- package/src/server/lib/adapters/telegram.ts +0 -646
- package/src/server/lib/adapters/types.ts +0 -89
- package/src/server/lib/adapters/webhook.ts +0 -95
- package/src/server/lib/adapters/whatsapp-native.ts +0 -276
- package/src/server/lib/adapters/whatsapp.ts +0 -904
- package/src/server/lib/address.ts +0 -49
- package/src/server/lib/agent-auth/contracts.ts +0 -1194
- package/src/server/lib/agent-profiles.ts +0 -430
- package/src/server/lib/ai.ts +0 -286
- package/src/server/lib/api-registry/contracts.ts +0 -86
- package/src/server/lib/api-registry/validation.ts +0 -172
- package/src/server/lib/apikey-migration.ts +0 -258
- package/src/server/lib/app-installer.ts +0 -505
- package/src/server/lib/app-tokens.ts +0 -247
- package/src/server/lib/approval-flow.ts +0 -139
- package/src/server/lib/approval-link.ts +0 -27
- package/src/server/lib/auth.ts +0 -324
- package/src/server/lib/auto-execute.ts +0 -160
- package/src/server/lib/batch.ts +0 -242
- package/src/server/lib/cold.ts +0 -1013
- package/src/server/lib/config.ts +0 -410
- package/src/server/lib/credential-access-audit.ts +0 -85
- package/src/server/lib/credential-access-policy.ts +0 -112
- package/src/server/lib/credential-agent.ts +0 -77
- package/src/server/lib/credential-health.ts +0 -343
- package/src/server/lib/credential-import.ts +0 -614
- package/src/server/lib/credential-scope.ts +0 -102
- package/src/server/lib/credential-shares.ts +0 -190
- package/src/server/lib/credential-transport.ts +0 -556
- package/src/server/lib/credentials.ts +0 -422
- package/src/server/lib/crypto.ts +0 -8
- package/src/server/lib/db.ts +0 -58
- package/src/server/lib/defaults.ts +0 -397
- package/src/server/lib/dex/index.ts +0 -80
- package/src/server/lib/dex/relay.ts +0 -235
- package/src/server/lib/dex/types.ts +0 -59
- package/src/server/lib/dex/uniswap.ts +0 -370
- package/src/server/lib/diary.ts +0 -61
- package/src/server/lib/dont-ask-again-policy.ts +0 -41
- package/src/server/lib/e2e-agent/artifacts.ts +0 -36
- package/src/server/lib/e2e-agent/contracts.ts +0 -112
- package/src/server/lib/e2e-agent/validation.ts +0 -135
- package/src/server/lib/encrypt.ts +0 -114
- package/src/server/lib/error.ts +0 -20
- package/src/server/lib/escalation-contract.ts +0 -140
- package/src/server/lib/escalation-error-codes.ts +0 -26
- package/src/server/lib/escalation-responder.ts +0 -729
- package/src/server/lib/escalation-route-registry.ts +0 -138
- package/src/server/lib/events.ts +0 -220
- package/src/server/lib/feature-flags.ts +0 -96
- package/src/server/lib/hot.ts +0 -357
- package/src/server/lib/hub-auth.ts +0 -159
- package/src/server/lib/human-action-summary.ts +0 -80
- package/src/server/lib/key-fingerprint.ts +0 -28
- package/src/server/lib/logger.ts +0 -340
- package/src/server/lib/migrate-agent-profiles.ts +0 -96
- package/src/server/lib/network.ts +0 -137
- package/src/server/lib/notifications.ts +0 -241
- package/src/server/lib/oauth2-refresh.ts +0 -241
- package/src/server/lib/oursecret.ts +0 -87
- package/src/server/lib/passkey-credential.ts +0 -360
- package/src/server/lib/passkey.ts +0 -68
- package/src/server/lib/permissions.ts +0 -340
- package/src/server/lib/pino.ts +0 -24
- package/src/server/lib/policy-preview.ts +0 -138
- package/src/server/lib/price.ts +0 -338
- package/src/server/lib/prices.ts +0 -34
- package/src/server/lib/project-scope.ts +0 -326
- package/src/server/lib/redaction.ts +0 -108
- package/src/server/lib/resolve-action.ts +0 -398
- package/src/server/lib/resolve.ts +0 -36
- package/src/server/lib/secret-env.ts +0 -18
- package/src/server/lib/secret-gist-share.ts +0 -296
- package/src/server/lib/sessions.ts +0 -634
- package/src/server/lib/social/create.ts +0 -176
- package/src/server/lib/social/global-aura-id.ts +0 -115
- package/src/server/lib/social/hub-rpc-client.ts +0 -99
- package/src/server/lib/social/hub-session.ts +0 -6
- package/src/server/lib/social/public-key.ts +0 -32
- package/src/server/lib/social/register.ts +0 -162
- package/src/server/lib/social/sign.ts +0 -95
- package/src/server/lib/social/sync.ts +0 -301
- package/src/server/lib/socket-path.ts +0 -76
- package/src/server/lib/solana/connection.ts +0 -26
- package/src/server/lib/solana/jupiter.ts +0 -128
- package/src/server/lib/solana/transfer.ts +0 -108
- package/src/server/lib/solana/wallet.ts +0 -136
- package/src/server/lib/strategy/emits.ts +0 -21
- package/src/server/lib/strategy/engine.ts +0 -1313
- package/src/server/lib/strategy/executor.ts +0 -115
- package/src/server/lib/strategy/hook-context.ts +0 -159
- package/src/server/lib/strategy/hooks.ts +0 -1023
- package/src/server/lib/strategy/index.ts +0 -28
- package/src/server/lib/strategy/installer.ts +0 -305
- package/src/server/lib/strategy/loader.ts +0 -256
- package/src/server/lib/strategy/message.ts +0 -237
- package/src/server/lib/strategy/repository.ts +0 -218
- package/src/server/lib/strategy/session-logger.ts +0 -693
- package/src/server/lib/strategy/sources.ts +0 -288
- package/src/server/lib/strategy/state.ts +0 -189
- package/src/server/lib/strategy/templates.ts +0 -403
- package/src/server/lib/strategy/tick.ts +0 -404
- package/src/server/lib/strategy/types.ts +0 -230
- package/src/server/lib/swap.ts +0 -3
- package/src/server/lib/temp-policy.ts +0 -413
- package/src/server/lib/temp.ts +0 -86
- package/src/server/lib/token-metadata.ts +0 -86
- package/src/server/lib/token-safety.ts +0 -200
- package/src/server/lib/token-search.ts +0 -444
- package/src/server/lib/totp.ts +0 -194
- package/src/server/lib/transactions.ts +0 -123
- package/src/server/lib/transport.ts +0 -84
- package/src/server/lib/txhistory/decoder.ts +0 -262
- package/src/server/lib/txhistory/enricher.ts +0 -652
- package/src/server/lib/txhistory/index.ts +0 -391
- package/src/server/lib/txhistory/signatures.ts +0 -59
- package/src/server/lib/update-check.ts +0 -48
- package/src/server/lib/verified-summary.ts +0 -414
- package/src/server/lib/version-check-cache.ts +0 -23
- package/src/server/lib/view-registry.ts +0 -80
- package/src/server/mcp/profile-policy.ts +0 -30
- package/src/server/mcp/server.ts +0 -2887
- package/src/server/mcp/tools.ts +0 -863
- package/src/server/middleware/auth.ts +0 -117
- package/src/server/middleware/requestLogger.ts +0 -86
- package/src/server/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +0 -1
- package/src/server/routes/actions.ts +0 -607
- package/src/server/routes/adapters.ts +0 -1256
- package/src/server/routes/addressbook.ts +0 -129
- package/src/server/routes/agent-hub.ts +0 -276
- package/src/server/routes/agent-profiles.ts +0 -208
- package/src/server/routes/ai.ts +0 -34
- package/src/server/routes/apikeys.ts +0 -344
- package/src/server/routes/apps.ts +0 -623
- package/src/server/routes/auth.ts +0 -740
- package/src/server/routes/backup.ts +0 -404
- package/src/server/routes/batch.ts +0 -270
- package/src/server/routes/bookmarks.ts +0 -178
- package/src/server/routes/credential-agents.ts +0 -159
- package/src/server/routes/credential-shares.ts +0 -380
- package/src/server/routes/credentials.ts +0 -2545
- package/src/server/routes/dashboard.ts +0 -97
- package/src/server/routes/defaults.ts +0 -124
- package/src/server/routes/flags.ts +0 -11
- package/src/server/routes/fund.ts +0 -252
- package/src/server/routes/heartbeat.ts +0 -511
- package/src/server/routes/import.ts +0 -359
- package/src/server/routes/launch.ts +0 -703
- package/src/server/routes/lock.ts +0 -54
- package/src/server/routes/logs.ts +0 -78
- package/src/server/routes/nuke.ts +0 -136
- package/src/server/routes/passkey-credentials.ts +0 -99
- package/src/server/routes/passkey.ts +0 -372
- package/src/server/routes/portfolio.ts +0 -217
- package/src/server/routes/price.ts +0 -63
- package/src/server/routes/resolve.ts +0 -31
- package/src/server/routes/security.ts +0 -45
- package/src/server/routes/send-evm.ts +0 -286
- package/src/server/routes/send-solana.ts +0 -315
- package/src/server/routes/send.ts +0 -178
- package/src/server/routes/setup.ts +0 -210
- package/src/server/routes/social.ts +0 -869
- package/src/server/routes/strategy.ts +0 -901
- package/src/server/routes/swap-evm.ts +0 -386
- package/src/server/routes/swap-solana.ts +0 -203
- package/src/server/routes/swap.ts +0 -372
- package/src/server/routes/token.ts +0 -248
- package/src/server/routes/unlock.ts +0 -507
- package/src/server/routes/verified-credentials.ts +0 -312
- package/src/server/routes/views.ts +0 -41
- package/src/server/routes/wallet-assets.ts +0 -364
- package/src/server/routes/wallet-transactions.ts +0 -517
- package/src/server/routes/wallet.ts +0 -711
- package/src/server/test-data/agent-primary.json +0 -12
- package/src/server/test-data/agent-smbe0i.json +0 -14
- package/src/server/test-data/agent-wbl0v6.json +0 -14
- package/src/server/test-data/config.json +0 -33
- package/src/server/test-data/credentials/cred-1sj0yr5a.json +0 -23
- package/src/server/test-data/credentials/cred-469oz33y.json +0 -19
- package/src/server/test-data/credentials/cred-6h2h6oh7.json +0 -23
- package/src/server/test-data/credentials/cred-invrd1h9.json +0 -22
- package/src/server/test-data/credentials-archive/cred-nd7pngdm.json +0 -22
- package/src/server/test-data/debug-worker/agent-3vovb2.json +0 -14
- package/src/server/test-data/debug-worker/agent-ppchyx.json +0 -14
- package/src/server/test-data/debug-worker/agent-primary.json +0 -12
- package/src/server/test-data/debug-worker/agent-tm8bce.json +0 -14
- package/src/server/test-data/debug-worker/credentials/cred-bawnen1r.json +0 -23
- package/src/server/test-data/debug-worker/credentials/cred-wkqqa5sn.json +0 -23
- package/src/server/test-data/debug-worker/test.db +0 -0
- package/src/server/test-data/template.db +0 -0
- package/src/server/test-data/worker-1/test.db +0 -0
- package/src/server/test-data/worker-10/test.db +0 -0
- package/src/server/test-data/worker-11/test.db +0 -0
- package/src/server/test-data/worker-12/test.db +0 -0
- package/src/server/test-data/worker-13/test.db +0 -0
- package/src/server/test-data/worker-14/test.db +0 -0
- package/src/server/test-data/worker-15/test.db +0 -0
- package/src/server/test-data/worker-2/test.db +0 -0
- package/src/server/test-data/worker-3/test.db +0 -0
- package/src/server/test-data/worker-4/test.db +0 -0
- package/src/server/test-data/worker-5/test.db +0 -0
- package/src/server/test-data/worker-6/test.db +0 -0
- package/src/server/test-data/worker-7/test.db +0 -0
- package/src/server/test-data/worker-8/test.db +0 -0
- package/src/server/test-data/worker-9/test.db +0 -0
- package/src/server/tests/ai-integration/harness.ts +0 -235
- package/src/server/tests/ai-integration/live-harness.ts +0 -248
- package/src/server/tests/ai-integration/live.test.ts +0 -394
- package/src/server/tests/ai-integration/prompts.md +0 -396
- package/src/server/tests/ai-integration/scenarios.test.ts +0 -593
- package/src/server/tests/ai-integration/vitest.config.ts +0 -29
- package/src/server/tests/ai-integration/vitest.live.config.ts +0 -30
- package/src/server/tests/app-installer.test.ts +0 -406
- package/src/server/tests/auth/apikeys-validate.test.ts +0 -326
- package/src/server/tests/auth/apikeys.test.ts +0 -352
- package/src/server/tests/auth/approval-permissions-regression.test.ts +0 -641
- package/src/server/tests/auth/middleware.test.ts +0 -236
- package/src/server/tests/auth/permissions.test.ts +0 -387
- package/src/server/tests/cli/actions-auth.test.ts +0 -87
- package/src/server/tests/cli/agent-auth.test.ts +0 -1682
- package/src/server/tests/cli/agent-list-filters.test.ts +0 -150
- package/src/server/tests/cli/agent-share-gist.test.ts +0 -203
- package/src/server/tests/cli/agent.test.ts +0 -206
- package/src/server/tests/cli/auth-action-flag.test.ts +0 -135
- package/src/server/tests/cli/bin-entrypoint.test.ts +0 -438
- package/src/server/tests/cli/create-command.test.ts +0 -73
- package/src/server/tests/cli/credential-resolve.test.ts +0 -86
- package/src/server/tests/cli/doctor.test.ts +0 -154
- package/src/server/tests/cli/env-check-server-agent.test.ts +0 -114
- package/src/server/tests/cli/env.test.ts +0 -107
- package/src/server/tests/cli/escalation.test.ts +0 -140
- package/src/server/tests/cli/http.test.ts +0 -176
- package/src/server/tests/cli/init-flow.test.ts +0 -209
- package/src/server/tests/cli/init-runtime.test.ts +0 -144
- package/src/server/tests/cli/init-steps.test.ts +0 -184
- package/src/server/tests/cli/local-agent-trust.test.ts +0 -92
- package/src/server/tests/cli/process.test.ts +0 -453
- package/src/server/tests/cli/prompt-select.test.ts +0 -129
- package/src/server/tests/cli/quickhack.test.ts +0 -27
- package/src/server/tests/cli/restart-run.test.ts +0 -75
- package/src/server/tests/cli/service.test.ts +0 -138
- package/src/server/tests/cli/social.test.ts +0 -83
- package/src/server/tests/cli/socket.test.ts +0 -324
- package/src/server/tests/cli/start-run.test.ts +0 -185
- package/src/server/tests/cli/start.test.ts +0 -44
- package/src/server/tests/cli/taskctl-lock-smoke.test.ts +0 -136
- package/src/server/tests/cli/token.test.ts +0 -61
- package/src/server/tests/cli/wallet.test.ts +0 -23
- package/src/server/tests/credential-import.test.ts +0 -362
- package/src/server/tests/cron/incoming-scan.test.ts +0 -778
- package/src/server/tests/cron/native-price.test.ts +0 -121
- package/src/server/tests/cron/orphan-cleanup.test.ts +0 -94
- package/src/server/tests/cron/scheduler.test.ts +0 -161
- package/src/server/tests/cron/social-inbound-followers.unit.test.ts +0 -164
- package/src/server/tests/cron/social-inbound-staleness.test.ts +0 -193
- package/src/server/tests/cron/social-outbound.test.ts +0 -252
- package/src/server/tests/cron/strategy-runner.test.ts +0 -158
- package/src/server/tests/docs/job-docs-validation.test.ts +0 -16
- package/src/server/tests/dotenv-parser.test.ts +0 -121
- package/src/server/tests/e2e-agent/artifacts.test.ts +0 -35
- package/src/server/tests/e2e-agent/ci/nightly-set.json +0 -7
- package/src/server/tests/e2e-agent/ci/pr-smoke-set.json +0 -5
- package/src/server/tests/e2e-agent/ci-lanes.test.ts +0 -16
- package/src/server/tests/e2e-agent/runner.ts +0 -43
- package/src/server/tests/e2e-agent/scenarios/aura-onboarding-sanity.scenario.yaml +0 -16
- package/src/server/tests/e2e-agent/scenarios/credential-create-basic.scenario.yaml +0 -12
- package/src/server/tests/e2e-agent/scenarios/credential-read-basic.scenario.yaml +0 -16
- package/src/server/tests/e2e-agent/scenarios/save-on-submit-accept.scenario.yaml +0 -10
- package/src/server/tests/e2e-agent/scenarios/totp-retrieval-seeded.scenario.yaml +0 -12
- package/src/server/tests/e2e-agent/validation.test.ts +0 -129
- package/src/server/tests/e2e.test.ts +0 -295
- package/src/server/tests/endpoints/actions.test.ts +0 -1067
- package/src/server/tests/endpoints/address-transactions.test.ts +0 -223
- package/src/server/tests/endpoints/addressbook.test.ts +0 -225
- package/src/server/tests/endpoints/agent-profiles.test.ts +0 -117
- package/src/server/tests/endpoints/agent.test.ts +0 -713
- package/src/server/tests/endpoints/approve-action.test.ts +0 -107
- package/src/server/tests/endpoints/apps.test.ts +0 -561
- package/src/server/tests/endpoints/auth.test.ts +0 -565
- package/src/server/tests/endpoints/batch.test.ts +0 -352
- package/src/server/tests/endpoints/bookmarks.test.ts +0 -329
- package/src/server/tests/endpoints/credential-access-audit.test.ts +0 -194
- package/src/server/tests/endpoints/credential-ops.test.ts +0 -93
- package/src/server/tests/endpoints/credential-shares.test.ts +0 -249
- package/src/server/tests/endpoints/credentials.test.ts +0 -1786
- package/src/server/tests/endpoints/defaults.test.ts +0 -162
- package/src/server/tests/endpoints/escalation-migration-gate.test.ts +0 -488
- package/src/server/tests/endpoints/fund.test.ts +0 -299
- package/src/server/tests/endpoints/heartbeat.test.ts +0 -274
- package/src/server/tests/endpoints/import.test.ts +0 -192
- package/src/server/tests/endpoints/launch.test.ts +0 -734
- package/src/server/tests/endpoints/passkey-credentials.test.ts +0 -167
- package/src/server/tests/endpoints/passkey.test.ts +0 -219
- package/src/server/tests/endpoints/portfolio.test.ts +0 -497
- package/src/server/tests/endpoints/price.test.ts +0 -237
- package/src/server/tests/endpoints/rate-limit.test.ts +0 -465
- package/src/server/tests/endpoints/send.test.ts +0 -499
- package/src/server/tests/endpoints/setup.test.ts +0 -194
- package/src/server/tests/endpoints/solana-fund.test.ts +0 -218
- package/src/server/tests/endpoints/solana-send.test.ts +0 -215
- package/src/server/tests/endpoints/solana-swap.test.ts +0 -280
- package/src/server/tests/endpoints/solana-wallet.test.ts +0 -223
- package/src/server/tests/endpoints/strategy-routes.test.ts +0 -602
- package/src/server/tests/endpoints/swap.test.ts +0 -589
- package/src/server/tests/endpoints/token-balance.test.ts +0 -227
- package/src/server/tests/endpoints/token-clearing.test.ts +0 -230
- package/src/server/tests/endpoints/token-safety.test.ts +0 -280
- package/src/server/tests/endpoints/token-search.test.ts +0 -186
- package/src/server/tests/endpoints/transactions.test.ts +0 -348
- package/src/server/tests/endpoints/unlock.test.ts +0 -385
- package/src/server/tests/endpoints/wallet-data.test.ts +0 -547
- package/src/server/tests/endpoints/wallet.test.ts +0 -755
- package/src/server/tests/globalSetup.ts +0 -62
- package/src/server/tests/helpers/amounts.ts +0 -14
- package/src/server/tests/integration/adapter-resolve.test.ts +0 -160
- package/src/server/tests/integration/agent-flow.test.ts +0 -477
- package/src/server/tests/lib/adapters-chat.test.ts +0 -259
- package/src/server/tests/lib/adapters-test.test.ts +0 -1196
- package/src/server/tests/lib/adapters.test.ts +0 -962
- package/src/server/tests/lib/address.test.ts +0 -96
- package/src/server/tests/lib/agent-auth/contracts.test.ts +0 -771
- package/src/server/tests/lib/agent-profiles.test.ts +0 -98
- package/src/server/tests/lib/ai.test.ts +0 -452
- package/src/server/tests/lib/api-registry/validation.test.ts +0 -174
- package/src/server/tests/lib/app-tokens-tier.test.ts +0 -106
- package/src/server/tests/lib/approval-link.test.ts +0 -20
- package/src/server/tests/lib/aura-parser.test.ts +0 -96
- package/src/server/tests/lib/auth-action.test.ts +0 -251
- package/src/server/tests/lib/auth.test.ts +0 -237
- package/src/server/tests/lib/auto-execute.test.ts +0 -269
- package/src/server/tests/lib/auto-unlock.test.ts +0 -47
- package/src/server/tests/lib/batch.test.ts +0 -363
- package/src/server/tests/lib/credential-access.test.ts +0 -244
- package/src/server/tests/lib/credential-agent.test.ts +0 -174
- package/src/server/tests/lib/credential-field-schema.test.ts +0 -448
- package/src/server/tests/lib/credential-health.test.ts +0 -110
- package/src/server/tests/lib/credential-paths.test.ts +0 -430
- package/src/server/tests/lib/credential-scope.test.ts +0 -163
- package/src/server/tests/lib/credential-transport.test.ts +0 -319
- package/src/server/tests/lib/credentials.test.ts +0 -249
- package/src/server/tests/lib/defaults.test.ts +0 -76
- package/src/server/tests/lib/diary.test.ts +0 -43
- package/src/server/tests/lib/dont-ask-again-policy.test.ts +0 -22
- package/src/server/tests/lib/encrypt.test.ts +0 -43
- package/src/server/tests/lib/escalation-responder.test.ts +0 -228
- package/src/server/tests/lib/events-decoder.test.ts +0 -286
- package/src/server/tests/lib/events-enricher.test.ts +0 -294
- package/src/server/tests/lib/events-fetcher.test.ts +0 -577
- package/src/server/tests/lib/human-action-summary.test.ts +0 -62
- package/src/server/tests/lib/network.test.ts +0 -280
- package/src/server/tests/lib/oauth2-refresh.test.ts +0 -140
- package/src/server/tests/lib/passkey-credential.test.ts +0 -153
- package/src/server/tests/lib/price.test.ts +0 -286
- package/src/server/tests/lib/prices.test.ts +0 -50
- package/src/server/tests/lib/profile-parity.test.ts +0 -50
- package/src/server/tests/lib/project-scope.test.ts +0 -242
- package/src/server/tests/lib/relay.test.ts +0 -464
- package/src/server/tests/lib/resolve-action.test.ts +0 -294
- package/src/server/tests/lib/secret-gist-share.test.ts +0 -58
- package/src/server/tests/lib/sessions-currency.test.ts +0 -215
- package/src/server/tests/lib/sessions.test.ts +0 -327
- package/src/server/tests/lib/social/create.test.ts +0 -207
- package/src/server/tests/lib/social/sign.test.ts +0 -163
- package/src/server/tests/lib/social/sync.test.ts +0 -198
- package/src/server/tests/lib/solana-wallet.test.ts +0 -143
- package/src/server/tests/lib/strategy/executor.test.ts +0 -363
- package/src/server/tests/lib/strategy/hooks.test.ts +0 -897
- package/src/server/tests/lib/strategy/loader.test.ts +0 -343
- package/src/server/tests/lib/strategy/message.test.ts +0 -416
- package/src/server/tests/lib/strategy/repository.test.ts +0 -84
- package/src/server/tests/lib/strategy/session-logger.test.ts +0 -467
- package/src/server/tests/lib/strategy/sources.test.ts +0 -503
- package/src/server/tests/lib/strategy/state.test.ts +0 -349
- package/src/server/tests/lib/strategy/tick.test.ts +0 -283
- package/src/server/tests/lib/temp-policy.test.ts +0 -184
- package/src/server/tests/lib/token-safety.test.ts +0 -277
- package/src/server/tests/lib/token-search.test.ts +0 -687
- package/src/server/tests/lib/totp.test.ts +0 -193
- package/src/server/tests/lib/uniswap.test.ts +0 -307
- package/src/server/tests/lib/update-check.test.ts +0 -27
- package/src/server/tests/lib/verified-summary.test.ts +0 -454
- package/src/server/tests/lib/websocket-auth.test.ts +0 -247
- package/src/server/tests/mcp/contract.test.ts +0 -318
- package/src/server/tests/mcp/profile-policy.test.ts +0 -178
- package/src/server/tests/mcp/server.test.ts +0 -3159
- package/src/server/tests/mcp/tools.test.ts +0 -518
- package/src/server/tests/resolve.test.ts +0 -81
- package/src/server/tests/runtime-agent-smoke.test.ts +0 -130
- package/src/server/tests/sandbox/cli-cd-suite.test.ts +0 -526
- package/src/server/tests/sandbox/cli.test.ts +0 -402
- package/src/server/tests/send-token.test.ts +0 -191
- package/src/server/tests/setup-integration/adapter-test.test.ts +0 -122
- package/src/server/tests/setup-integration/apikey-validation.test.ts +0 -118
- package/src/server/tests/setup-integration/autonomous-agent.test.ts +0 -243
- package/src/server/tests/setup-integration/edge-cases.test.ts +0 -115
- package/src/server/tests/setup-integration/fresh-setup.test.ts +0 -60
- package/src/server/tests/setup-integration/harness.ts +0 -296
- package/src/server/tests/setup-integration/onboarding-e2e.test.ts +0 -292
- package/src/server/tests/setup-integration/terminal-flow.test.ts +0 -201
- package/src/server/tests/setup-integration/vitest.config.ts +0 -29
- package/src/server/tests/setup-integration/wizard-flow.test.ts +0 -139
- package/src/server/tests/setup.ts +0 -351
- package/src/server/tests/swap-quote.test.ts +0 -279
- package/src/server/tests/test-data/agent-e1ica7.json +0 -14
- package/src/server/tests/test-data/agent-iaswp5.json +0 -14
- package/src/server/tests/test-data/agent-primary.json +0 -12
- package/src/server/tests/test-data/agent-qvn7eo.json +0 -14
- package/src/server/tests/test-data/agent-vqhtrt.json +0 -14
- package/src/server/tests/test-data/config.json +0 -33
- package/src/server/tests/test-data/test.db +0 -0
- package/src/server/tests/workerSetup.ts +0 -39
- package/src/server/tsconfig.json +0 -21
- package/src/server/tsconfig.tsbuildinfo +0 -1
- package/src/server/types.ts +0 -161
- package/start.sh +0 -170
- package/tailwind.config.ts +0 -99
- package/tsconfig.json +0 -52
package/docs/legacy/ADAPTERS.md
DELETED
|
@@ -1,471 +0,0 @@
|
|
|
1
|
-
# Approval Adapters
|
|
2
|
-
|
|
3
|
-
External approval channels for agent actions. Adapters forward `action:created` events to external services (Telegram, Discord, webhooks, etc.) and relay human decisions back to `POST /actions/:id/resolve`.
|
|
4
|
-
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
## How It Works
|
|
8
|
-
|
|
9
|
-
```
|
|
10
|
-
Agent requests token
|
|
11
|
-
│
|
|
12
|
-
▼
|
|
13
|
-
POST /actions/:id/resolve ◄─── Dashboard UI
|
|
14
|
-
▲ ◄─── CLI terminal
|
|
15
|
-
│ ◄─── Adapter (Telegram, webhook, etc.)
|
|
16
|
-
│
|
|
17
|
-
All channels converge on the same endpoint
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
Adapters don't change the resolve endpoint or any existing code paths. They simply:
|
|
21
|
-
1. Receive the `action:created` WebSocket event
|
|
22
|
-
2. Present it to a human in some external medium
|
|
23
|
-
3. POST back to resolve when the human responds
|
|
24
|
-
|
|
25
|
-
---
|
|
26
|
-
|
|
27
|
-
## Configuration
|
|
28
|
-
|
|
29
|
-
Adapter config is stored in the database, not in config files. This keeps secrets out of plain-text JSON and aligns with how API keys (Alchemy, etc.) are already managed.
|
|
30
|
-
|
|
31
|
-
**Two pieces:**
|
|
32
|
-
- **Secrets** (bot tokens, HMAC keys) → `POST /apikeys` with `service: "adapter:<type>"`
|
|
33
|
-
- **Settings** (enabled flags, non-secret config) → `POST /adapters`
|
|
34
|
-
|
|
35
|
-
### 1. Store secrets via `/apikeys`
|
|
36
|
-
|
|
37
|
-
```bash
|
|
38
|
-
# Telegram bot token
|
|
39
|
-
curl -X POST http://localhost:4242/apikeys \
|
|
40
|
-
-H "Authorization: Bearer <admin-token>" \
|
|
41
|
-
-H "Content-Type: application/json" \
|
|
42
|
-
-d '{"service": "adapter:telegram", "name": "botToken", "key": "123456:ABC-DEF..."}'
|
|
43
|
-
|
|
44
|
-
# Webhook HMAC secret
|
|
45
|
-
curl -X POST http://localhost:4242/apikeys \
|
|
46
|
-
-H "Authorization: Bearer <admin-token>" \
|
|
47
|
-
-H "Content-Type: application/json" \
|
|
48
|
-
-d '{"service": "adapter:webhook", "name": "secret", "key": "my-hmac-secret"}'
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
### 2. Configure adapter settings via `/adapters`
|
|
52
|
-
|
|
53
|
-
```bash
|
|
54
|
-
# Enable Telegram adapter (chatId is non-secret, stored in AppConfig)
|
|
55
|
-
curl -X POST http://localhost:4242/adapters \
|
|
56
|
-
-H "Authorization: Bearer <admin-token>" \
|
|
57
|
-
-H "Content-Type: application/json" \
|
|
58
|
-
-d '{"type": "telegram", "enabled": true, "config": {"chatId": "987654321"}}'
|
|
59
|
-
|
|
60
|
-
# Enable webhook adapter
|
|
61
|
-
curl -X POST http://localhost:4242/adapters \
|
|
62
|
-
-H "Authorization: Bearer <admin-token>" \
|
|
63
|
-
-H "Content-Type: application/json" \
|
|
64
|
-
-d '{"type": "webhook", "enabled": true, "config": {"url": "https://hooks.slack.com/services/T.../B.../xxx"}}'
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
### 3. Restart the adapter router
|
|
68
|
-
|
|
69
|
-
After changing config, restart to pick up changes:
|
|
70
|
-
|
|
71
|
-
```bash
|
|
72
|
-
curl -X POST http://localhost:4242/adapters/restart \
|
|
73
|
-
-H "Authorization: Bearer <admin-token>"
|
|
74
|
-
```
|
|
75
|
-
|
|
76
|
-
### Adapter Management Endpoints
|
|
77
|
-
|
|
78
|
-
| Method | Route | Description |
|
|
79
|
-
|--------|-------|-------------|
|
|
80
|
-
| `GET` | `/adapters` | List configured adapters (with secret status) |
|
|
81
|
-
| `POST` | `/adapters` | Add/update adapter config `{ type, enabled, config, chat? }` |
|
|
82
|
-
| `POST` | `/adapters/chat` | Set top-level chat config (defaultApp) |
|
|
83
|
-
| `POST` | `/adapters/:type/message` | Inbound chat from adapter webhook (HMAC auth) |
|
|
84
|
-
| `DELETE` | `/adapters/:type` | Remove adapter config |
|
|
85
|
-
| `POST` | `/adapters/restart` | Restart approval router with current DB config |
|
|
86
|
-
|
|
87
|
-
All adapter endpoints require `adapter:manage` permission (or `admin:*` which includes it).
|
|
88
|
-
|
|
89
|
-
Adapters are opt-in. If no adapters are configured, the approval router doesn't start.
|
|
90
|
-
|
|
91
|
-
---
|
|
92
|
-
|
|
93
|
-
## Built-in Adapters
|
|
94
|
-
|
|
95
|
-
### Webhook (notification-only)
|
|
96
|
-
|
|
97
|
-
POSTs action events to a URL. Useful for Slack/Discord incoming webhooks, ntfy, or any HTTP endpoint.
|
|
98
|
-
|
|
99
|
-
**Config (`POST /adapters`):**
|
|
100
|
-
|
|
101
|
-
| Field | Type | Storage | Description |
|
|
102
|
-
|-------|------|---------|-------------|
|
|
103
|
-
| `url` | string | `POST /adapters` config | URL to POST to |
|
|
104
|
-
| `secret` | string | `POST /apikeys` | HMAC-SHA256 secret for `X-Signature-256` header |
|
|
105
|
-
| `headers` | object | `POST /adapters` config | Custom headers to include |
|
|
106
|
-
|
|
107
|
-
**Setup:**
|
|
108
|
-
```bash
|
|
109
|
-
# 1. Store HMAC secret (optional)
|
|
110
|
-
curl -X POST http://localhost:4242/apikeys \
|
|
111
|
-
-H "Authorization: Bearer <admin-token>" \
|
|
112
|
-
-H "Content-Type: application/json" \
|
|
113
|
-
-d '{"service": "adapter:webhook", "name": "secret", "key": "my-hmac-secret"}'
|
|
114
|
-
|
|
115
|
-
# 2. Configure webhook URL and custom headers
|
|
116
|
-
curl -X POST http://localhost:4242/adapters \
|
|
117
|
-
-H "Authorization: Bearer <admin-token>" \
|
|
118
|
-
-H "Content-Type: application/json" \
|
|
119
|
-
-d '{"type": "webhook", "enabled": true, "config": {"url": "https://hooks.slack.com/services/...", "headers": {"X-Custom": "value"}}}'
|
|
120
|
-
|
|
121
|
-
# 3. Restart
|
|
122
|
-
curl -X POST http://localhost:4242/adapters/restart \
|
|
123
|
-
-H "Authorization: Bearer <admin-token>"
|
|
124
|
-
```
|
|
125
|
-
|
|
126
|
-
**Payload format:**
|
|
127
|
-
|
|
128
|
-
```json
|
|
129
|
-
{
|
|
130
|
-
"type": "action:created",
|
|
131
|
-
"data": {
|
|
132
|
-
"id": "abc-123",
|
|
133
|
-
"type": "action",
|
|
134
|
-
"source": "agent:my-agent",
|
|
135
|
-
"summary": "Swap 0.01 ETH for USDC",
|
|
136
|
-
"expiresAt": null,
|
|
137
|
-
"metadata": {
|
|
138
|
-
"agentId": "my-agent",
|
|
139
|
-
"permissions": ["swap"],
|
|
140
|
-
"verifiedSummary": {
|
|
141
|
-
"action": "/swap",
|
|
142
|
-
"oneLiner": "Buy 0xABC...DEF with 0.01 ETH on base",
|
|
143
|
-
"facts": [{ "label": "Amount", "value": "0.01 ETH" }],
|
|
144
|
-
"discrepancies": [],
|
|
145
|
-
"verified": true,
|
|
146
|
-
"generatedAt": "2026-02-11T..."
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
},
|
|
150
|
-
"timestamp": 1738599000000
|
|
151
|
-
}
|
|
152
|
-
```
|
|
153
|
-
|
|
154
|
-
**HMAC verification (if secret configured):**
|
|
155
|
-
|
|
156
|
-
```javascript
|
|
157
|
-
const crypto = require('crypto');
|
|
158
|
-
const expected = crypto.createHmac('sha256', secret).update(rawBody).digest('hex');
|
|
159
|
-
const valid = req.headers['x-signature-256'] === `sha256=${expected}`;
|
|
160
|
-
```
|
|
161
|
-
|
|
162
|
-
The webhook adapter is notification-only — it doesn't handle responses. To approve/reject from a webhook target, have your service POST directly to `/actions/:id/resolve` with an admin token, or build a bidirectional adapter.
|
|
163
|
-
|
|
164
|
-
### Telegram (bidirectional)
|
|
165
|
-
|
|
166
|
-
Full approval flow via Telegram Bot API. Sends inline keyboard buttons, handles callbacks.
|
|
167
|
-
|
|
168
|
-
**Config:**
|
|
169
|
-
|
|
170
|
-
| Field | Type | Storage | Description |
|
|
171
|
-
|-------|------|---------|-------------|
|
|
172
|
-
| `botToken` | string | `POST /apikeys` | Bot API token from @BotFather |
|
|
173
|
-
| `chatId` | string/number | `POST /adapters` config | Chat ID for notifications and callbacks |
|
|
174
|
-
|
|
175
|
-
Compatibility notes:
|
|
176
|
-
- Token lookup prefers `service=adapter:telegram, name=botToken`, but falls back to any stored `adapter:telegram` key for legacy/manual setups.
|
|
177
|
-
- Chat ID lookup accepts legacy config keys (`chat_id`, `chatID`) when reading existing configs. Use `chatId` for new writes.
|
|
178
|
-
- `POST /adapters/test` now does a best-effort `getUpdates` lookup when `chatId` is missing, then persists the detected chat ID before sending.
|
|
179
|
-
|
|
180
|
-
**Setup:**
|
|
181
|
-
1. Create a bot via [@BotFather](https://t.me/BotFather)
|
|
182
|
-
2. Get your chat ID (message the bot, check `getUpdates`)
|
|
183
|
-
3. Store the bot token as an API key and configure the adapter:
|
|
184
|
-
|
|
185
|
-
```bash
|
|
186
|
-
# Store bot token
|
|
187
|
-
curl -X POST http://localhost:4242/apikeys \
|
|
188
|
-
-H "Authorization: Bearer <admin-token>" \
|
|
189
|
-
-H "Content-Type: application/json" \
|
|
190
|
-
-d '{"service": "adapter:telegram", "name": "botToken", "key": "123456:ABC-DEF..."}'
|
|
191
|
-
|
|
192
|
-
# Configure adapter
|
|
193
|
-
curl -X POST http://localhost:4242/adapters \
|
|
194
|
-
-H "Authorization: Bearer <admin-token>" \
|
|
195
|
-
-H "Content-Type: application/json" \
|
|
196
|
-
-d '{"type": "telegram", "enabled": true, "config": {"chatId": "987654321"}}'
|
|
197
|
-
|
|
198
|
-
# Restart to apply
|
|
199
|
-
curl -X POST http://localhost:4242/adapters/restart \
|
|
200
|
-
-H "Authorization: Bearer <admin-token>"
|
|
201
|
-
```
|
|
202
|
-
|
|
203
|
-
**How it works:**
|
|
204
|
-
- `action:created` → sends message with Approve/Reject inline keyboard
|
|
205
|
-
- `action:created` with `type: 'notify'` → sends plain info message (no buttons, no resolution)
|
|
206
|
-
- Human taps Approve/Reject → adapter calls `POST /actions/:id/resolve`
|
|
207
|
-
- `action:resolved` → edits original message to show result, removes keyboard
|
|
208
|
-
- Only responds to callbacks from the configured `chatId` (security)
|
|
209
|
-
- When a `verifiedSummary` is present, the Telegram message shows the server-generated one-liner as primary action text and displays discrepancy warnings with severity icons
|
|
210
|
-
|
|
211
|
-
**Notification metadata:** When `type: 'notify'`, the Telegram adapter renders known metadata fields if present: `contractAddress` (DexScreener link), `symbol`, `marketCap`, `risk`, `socialLinks` (clickable links), and `evaluation` (full AI analysis text).
|
|
212
|
-
|
|
213
|
-
**No npm dependencies** — uses raw `fetch` calls to `api.telegram.org` and long-polling via `getUpdates`.
|
|
214
|
-
|
|
215
|
-
#### Agent Chat
|
|
216
|
-
|
|
217
|
-
The Telegram adapter supports opt-in agent chat — send text messages in Telegram and your AI agent replies.
|
|
218
|
-
|
|
219
|
-
**Enable chat:**
|
|
220
|
-
|
|
221
|
-
```bash
|
|
222
|
-
curl -X POST http://localhost:4242/adapters \
|
|
223
|
-
-H "Authorization: Bearer <admin-token>" \
|
|
224
|
-
-H "Content-Type: application/json" \
|
|
225
|
-
-d '{"type": "telegram", "enabled": true, "config": {"chatId": "987654321"}, "chat": {"enabled": true}}'
|
|
226
|
-
```
|
|
227
|
-
|
|
228
|
-
**Set default app** (which app's AI handles messages):
|
|
229
|
-
|
|
230
|
-
```bash
|
|
231
|
-
curl -X POST http://localhost:4242/adapters/chat \
|
|
232
|
-
-H "Authorization: Bearer <admin-token>" \
|
|
233
|
-
-H "Content-Type: application/json" \
|
|
234
|
-
-d '{"defaultApp": "swap-chat"}'
|
|
235
|
-
```
|
|
236
|
-
|
|
237
|
-
**How it works:**
|
|
238
|
-
- Human sends text in Telegram → adapter routes to app's `message` hook
|
|
239
|
-
- AI processes with full tool-use (wallet_api, request_human_action)
|
|
240
|
-
- Reply sent back as Telegram message
|
|
241
|
-
- Long replies (>4096 chars) are split into multiple messages
|
|
242
|
-
- Same rate limiting as dashboard chat (10 messages / 60 seconds per app)
|
|
243
|
-
- Chat is **off by default** — must be explicitly enabled with `chat: { enabled: true }`
|
|
244
|
-
- Approval callbacks (Approve/Reject buttons) continue to work alongside chat
|
|
245
|
-
|
|
246
|
-
---
|
|
247
|
-
|
|
248
|
-
## Agent Chat
|
|
249
|
-
|
|
250
|
-
Adapters can route text messages to app AI agents via the strategy engine's `handleAppMessage()`. This reuses existing message hooks, tool-use, rate limiting, and conversation memory — no new AI infrastructure.
|
|
251
|
-
|
|
252
|
-
### How It Works
|
|
253
|
-
|
|
254
|
-
```
|
|
255
|
-
Human sends text via adapter
|
|
256
|
-
│
|
|
257
|
-
▼
|
|
258
|
-
AdapterContext.resolveApp() → find target app
|
|
259
|
-
│
|
|
260
|
-
▼
|
|
261
|
-
AdapterContext.sendMessage() → handleAppMessage()
|
|
262
|
-
│ │
|
|
263
|
-
│ processMessage()
|
|
264
|
-
│ │
|
|
265
|
-
│ AI hook + tool-use
|
|
266
|
-
│ │
|
|
267
|
-
▼ ▼
|
|
268
|
-
Adapter sends reply { reply, error }
|
|
269
|
-
```
|
|
270
|
-
|
|
271
|
-
### Configuration
|
|
272
|
-
|
|
273
|
-
Chat config is stored in `AppConfig.adapterConfig`:
|
|
274
|
-
|
|
275
|
-
```json
|
|
276
|
-
{
|
|
277
|
-
"enabled": true,
|
|
278
|
-
"chat": {
|
|
279
|
-
"defaultApp": "swap-chat"
|
|
280
|
-
},
|
|
281
|
-
"adapters": [
|
|
282
|
-
{
|
|
283
|
-
"type": "telegram",
|
|
284
|
-
"enabled": true,
|
|
285
|
-
"config": { "chatId": "123456789" },
|
|
286
|
-
"chat": { "enabled": true }
|
|
287
|
-
}
|
|
288
|
-
]
|
|
289
|
-
}
|
|
290
|
-
```
|
|
291
|
-
|
|
292
|
-
**Two levels of config:**
|
|
293
|
-
- **Top-level `chat.defaultApp`**: Which app receives messages (system-wide)
|
|
294
|
-
- **Per-adapter `chat.enabled`**: Whether that adapter accepts chat messages (default: false)
|
|
295
|
-
|
|
296
|
-
### Webhook Chat Endpoint
|
|
297
|
-
|
|
298
|
-
For adapters that use HTTP callbacks (webhooks, Slack, Discord):
|
|
299
|
-
|
|
300
|
-
```bash
|
|
301
|
-
POST /adapters/:type/message
|
|
302
|
-
Content-Type: application/json
|
|
303
|
-
X-Signature-256: sha256=<hmac>
|
|
304
|
-
|
|
305
|
-
{
|
|
306
|
-
"text": "What is my balance?",
|
|
307
|
-
"senderId": "user-123",
|
|
308
|
-
"targetApp": "swap-chat"
|
|
309
|
-
}
|
|
310
|
-
```
|
|
311
|
-
|
|
312
|
-
**Response:**
|
|
313
|
-
```json
|
|
314
|
-
{
|
|
315
|
-
"success": true,
|
|
316
|
-
"reply": "You have 1.5 ETH in your hot wallet.",
|
|
317
|
-
"error": null
|
|
318
|
-
}
|
|
319
|
-
```
|
|
320
|
-
|
|
321
|
-
**Authentication:** HMAC-SHA256 signature required if the adapter has a secret configured (same `X-Signature-256` header pattern as webhook notifications).
|
|
322
|
-
|
|
323
|
-
### Security
|
|
324
|
-
|
|
325
|
-
- **Same auth model**: Chat messages use the app's existing token + permissions
|
|
326
|
-
- **Rate limiting**: Existing 10 msg/60s per app applies to adapter messages
|
|
327
|
-
- **Sender validation**: Telegram validates chatId; webhooks validate HMAC
|
|
328
|
-
- **App scoping**: The app's token determines what the AI can do
|
|
329
|
-
- **No new attack surface**: Messages flow through the same `handleAppMessage()` as dashboard chat
|
|
330
|
-
|
|
331
|
-
---
|
|
332
|
-
|
|
333
|
-
## Security Model
|
|
334
|
-
|
|
335
|
-
### Secrets in Database, Not Config Files
|
|
336
|
-
|
|
337
|
-
Adapter secrets (bot tokens, HMAC keys) are stored in the `ApiKey` database table with `service: "adapter:<type>"`. This is the same pattern used for Alchemy API keys and other service credentials. Non-secret settings (enabled flags, chat IDs, URLs) are stored in the `AppConfig.adapterConfig` JSON field.
|
|
338
|
-
|
|
339
|
-
### Direct In-Process Calls
|
|
340
|
-
|
|
341
|
-
The adapter router is an in-process trusted component that calls `resolveAction()` and `handleAppMessage()` directly — no admin tokens, no HTTP round-trips. This eliminates token management overhead and retry logic.
|
|
342
|
-
|
|
343
|
-
**Key properties:**
|
|
344
|
-
- `resolve()` calls `resolveAction()` from `server/lib/resolve-action.ts` directly
|
|
345
|
-
- `sendMessage()` calls `handleAppMessage()` / `enqueueAppMessage()` from the strategy engine directly
|
|
346
|
-
- `fetchPendingActions()` queries prisma directly (same query as `GET /actions/pending`)
|
|
347
|
-
- If the wallet is locked when resolving an `auth`/`agent_access` action, `resolveAction()` returns a 401-equivalent error
|
|
348
|
-
|
|
349
|
-
### Adapter Isolation
|
|
350
|
-
|
|
351
|
-
- Each adapter runs independently — one failing adapter doesn't affect others
|
|
352
|
-
- Adapter errors are caught and logged per-adapter
|
|
353
|
-
- The router catches all adapter exceptions in `notify()` and `resolved()` calls
|
|
354
|
-
|
|
355
|
-
### Webhook Security
|
|
356
|
-
|
|
357
|
-
- HMAC-SHA256 signatures (optional but recommended) verify payload authenticity
|
|
358
|
-
- Custom headers can be used for additional authentication
|
|
359
|
-
- Webhook URLs should use HTTPS
|
|
360
|
-
|
|
361
|
-
### Telegram Security
|
|
362
|
-
|
|
363
|
-
- Only callbacks from the configured `chatId` are processed
|
|
364
|
-
- The bot token should be kept secret (treat it like a password)
|
|
365
|
-
- Long-polling means no publicly accessible webhook endpoint is needed
|
|
366
|
-
|
|
367
|
-
---
|
|
368
|
-
|
|
369
|
-
## Building Custom Adapters
|
|
370
|
-
|
|
371
|
-
Implement the `ApprovalAdapter` interface:
|
|
372
|
-
|
|
373
|
-
```typescript
|
|
374
|
-
import type { ApprovalAdapter, AdapterContext, ActionNotification, ActionResolution } from './types';
|
|
375
|
-
|
|
376
|
-
class MyAdapter implements ApprovalAdapter {
|
|
377
|
-
readonly name = 'my-adapter';
|
|
378
|
-
|
|
379
|
-
async start(ctx: AdapterContext): Promise<void> {
|
|
380
|
-
// ctx.resolve(actionId, approved, opts?) — call this to resolve actions
|
|
381
|
-
// ctx.serverUrl — base URL of the wallet server
|
|
382
|
-
// ctx.sendMessage(appId, text) — route chat messages to app AI
|
|
383
|
-
// ctx.resolveApp(target?) — resolve which app handles chat
|
|
384
|
-
}
|
|
385
|
-
|
|
386
|
-
async notify(action: ActionNotification): Promise<void> {
|
|
387
|
-
// Present action to human: action.id, action.type, action.summary, etc.
|
|
388
|
-
// action.verifiedSummary contains server-generated facts and discrepancy warnings
|
|
389
|
-
// action.metadata?.verifiedSummary is also available (from WebSocket events)
|
|
390
|
-
}
|
|
391
|
-
|
|
392
|
-
async resolved(resolution: ActionResolution): Promise<void> {
|
|
393
|
-
// Clean up UI: resolution.id, resolution.approved, resolution.resolvedBy
|
|
394
|
-
}
|
|
395
|
-
|
|
396
|
-
async stop(): Promise<void> {
|
|
397
|
-
// Clean up resources
|
|
398
|
-
}
|
|
399
|
-
}
|
|
400
|
-
```
|
|
401
|
-
|
|
402
|
-
Register it before server start:
|
|
403
|
-
|
|
404
|
-
```typescript
|
|
405
|
-
import { registerAdapterType } from './server/lib/adapters';
|
|
406
|
-
|
|
407
|
-
registerAdapterType('my-adapter', (config) => new MyAdapter(config));
|
|
408
|
-
```
|
|
409
|
-
|
|
410
|
-
Then configure via API:
|
|
411
|
-
|
|
412
|
-
```bash
|
|
413
|
-
# Store any secrets
|
|
414
|
-
curl -X POST http://localhost:4242/apikeys \
|
|
415
|
-
-H "Authorization: Bearer <admin-token>" \
|
|
416
|
-
-H "Content-Type: application/json" \
|
|
417
|
-
-d '{"service": "adapter:my-adapter", "name": "apiKey", "key": "secret-value"}'
|
|
418
|
-
|
|
419
|
-
# Configure adapter
|
|
420
|
-
curl -X POST http://localhost:4242/adapters \
|
|
421
|
-
-H "Authorization: Bearer <admin-token>" \
|
|
422
|
-
-H "Content-Type: application/json" \
|
|
423
|
-
-d '{"type": "my-adapter", "enabled": true, "config": {"myOption": "value"}}'
|
|
424
|
-
|
|
425
|
-
# Restart
|
|
426
|
-
curl -X POST http://localhost:4242/adapters/restart \
|
|
427
|
-
-H "Authorization: Bearer <admin-token>"
|
|
428
|
-
```
|
|
429
|
-
|
|
430
|
-
---
|
|
431
|
-
|
|
432
|
-
## Architecture
|
|
433
|
-
|
|
434
|
-
```
|
|
435
|
-
┌──────────────────────────────────────────────────────────────┐
|
|
436
|
-
│ ApprovalRouter │
|
|
437
|
-
│ ┌─────────┐ ┌──────────────────────────────────────────┐ │
|
|
438
|
-
│ │WebSocket │ │ Adapters │ │
|
|
439
|
-
│ │Listener │ │ ├── WebhookAdapter │ │
|
|
440
|
-
│ │ │ │ ├── TelegramAdapter │ │
|
|
441
|
-
│ └────┬─────┘ │ └── CustomAdapter... │ │
|
|
442
|
-
│ │ └──────────────────────────────────────────┘ │
|
|
443
|
-
│ │ │
|
|
444
|
-
│ action:created ────► adapter.notify() │
|
|
445
|
-
│ action:resolved ───► adapter.resolved() │
|
|
446
|
-
│ action:executed ───► (app-scoped, not adapter) │
|
|
447
|
-
│ │
|
|
448
|
-
│ adapter calls ─────► resolveAction() (direct, in-process) │
|
|
449
|
-
│ chat message ──────► sendMessage() → engine (direct) │
|
|
450
|
-
│ resolveApp() ──────► DB lookup (cached) │
|
|
451
|
-
└──────────────────────────────────────────────────────────────┘
|
|
452
|
-
```
|
|
453
|
-
|
|
454
|
-
**Storage:**
|
|
455
|
-
|
|
456
|
-
| Data | Storage | Key |
|
|
457
|
-
|------|---------|-----|
|
|
458
|
-
| Secrets (bot tokens, HMAC keys) | `ApiKey` table | `service: "adapter:<type>"` |
|
|
459
|
-
| Settings (enabled, chatId, URL) | `AppConfig.adapterConfig` | JSON field |
|
|
460
|
-
|
|
461
|
-
**Files:**
|
|
462
|
-
|
|
463
|
-
| File | Description |
|
|
464
|
-
|------|-------------|
|
|
465
|
-
| `server/lib/adapters/types.ts` | Core interfaces |
|
|
466
|
-
| `server/lib/adapters/router.ts` | WebSocket listener + resolve proxy |
|
|
467
|
-
| `server/lib/adapters/webhook.ts` | Webhook adapter |
|
|
468
|
-
| `server/lib/adapters/telegram.ts` | Telegram adapter |
|
|
469
|
-
| `server/lib/adapters/factory.ts` | Registry + factory + `loadAdaptersFromDb` |
|
|
470
|
-
| `server/lib/adapters/index.ts` | Public exports |
|
|
471
|
-
| `server/routes/adapters.ts` | Admin REST endpoints |
|
package/docs/legacy/APPS.md
DELETED
|
@@ -1,199 +0,0 @@
|
|
|
1
|
-
# Apps
|
|
2
|
-
|
|
3
|
-
Overview of the AuraMaxx app system — what apps are, how to install them, and how to create a minimal one.
|
|
4
|
-
|
|
5
|
-
For the full developer reference (manifest format, SDK API, theming, security model, strategy hooks, examples), see [DEVELOPING-APPS.md](./DEVELOPING-APPS.md).
|
|
6
|
-
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
## Overview
|
|
10
|
-
|
|
11
|
-
Apps are self-contained HTML applications that run inside sandboxed iframes on the AuraMaxx dashboard. There are two kinds:
|
|
12
|
-
|
|
13
|
-
- **Built-in apps** -- React components registered in `src/lib/app-registry.ts` (wallets, logs, send, etc.)
|
|
14
|
-
- **Installed apps** -- standalone HTML+JS bundles installed as folders under `apps/`
|
|
15
|
-
|
|
16
|
-
Apps can also be extended with AI capabilities by adding strategy fields (`ticker`, `hooks`, `sources`, etc.) to the manifest. This activates the AI engine, turning the app into a strategy that runs on a schedule or responds to messages. See STRATEGY.md in the wallet docs for an overview and DEVELOPING-STRATEGIES.md for the full reference.
|
|
17
|
-
|
|
18
|
-
Installed apps consist of two files in a folder inside `apps/`:
|
|
19
|
-
|
|
20
|
-
```
|
|
21
|
-
apps/
|
|
22
|
-
my-app/
|
|
23
|
-
app.md <-- manifest (YAML frontmatter + description)
|
|
24
|
-
index.html <-- app entry point (HTML + inline JS/CSS)
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
The system discovers apps at runtime by scanning `apps/*/app.md`. Each app's `index.html` is served via `/api/apps/static/<folder>/index.html`, then loaded into a sandboxed iframe as a blob URL with the SDK and theme CSS injected.
|
|
28
|
-
|
|
29
|
-
### How It Works (Lifecycle)
|
|
30
|
-
|
|
31
|
-
```
|
|
32
|
-
1. Server starts: scans apps/ → creates scoped Bearer tokens for each app
|
|
33
|
-
2. GET /api/apps/manifests returns parsed manifest data to the App Store UI
|
|
34
|
-
3. User clicks "ADD" in App Store
|
|
35
|
-
4. ThirdPartyApp component fetches /api/apps/static/<id>/index.html
|
|
36
|
-
5. ThirdPartyApp fetches GET /apps/<id>/token to get the app's Bearer token
|
|
37
|
-
6. Host injects: theme CSS + token globals + App SDK script + app HTML
|
|
38
|
-
7. Combined HTML is turned into a blob URL and loaded in a sandboxed iframe
|
|
39
|
-
8. SDK makes direct fetch() calls to Express :4242/apps/<id>/storage/* with Bearer token
|
|
40
|
-
9. SDK makes direct fetch() calls to Express :4242/apps/<id>/message for send()
|
|
41
|
-
10. SDK proxies external API requests through Express :4242/apps/<id>/fetch
|
|
42
|
-
11. postMessage used only for on() subscriptions (host-bridged)
|
|
43
|
-
```
|
|
44
|
-
|
|
45
|
-
---
|
|
46
|
-
|
|
47
|
-
## Installing Apps
|
|
48
|
-
|
|
49
|
-
Apps can be installed from git repos, tarballs, zips, or local paths using the CLI or the dashboard UI.
|
|
50
|
-
|
|
51
|
-
### CLI
|
|
52
|
-
|
|
53
|
-
```bash
|
|
54
|
-
# Install from a git repo
|
|
55
|
-
auramaxx app install github.com/user/my-app
|
|
56
|
-
|
|
57
|
-
# Install from a git repo subdirectory
|
|
58
|
-
auramaxx app install github.com/user/repo#path=apps/my-app
|
|
59
|
-
|
|
60
|
-
# Install from a local path
|
|
61
|
-
auramaxx app install ./path/to/app
|
|
62
|
-
|
|
63
|
-
# Install from a tarball or zip
|
|
64
|
-
auramaxx app install https://example.com/app.tar.gz
|
|
65
|
-
|
|
66
|
-
# Override the app folder name
|
|
67
|
-
auramaxx app install github.com/user/app --name custom-id
|
|
68
|
-
|
|
69
|
-
# Overwrite an existing app
|
|
70
|
-
auramaxx app install github.com/user/app --force
|
|
71
|
-
|
|
72
|
-
# List all installed apps
|
|
73
|
-
auramaxx app list
|
|
74
|
-
|
|
75
|
-
# Update an app from its original source
|
|
76
|
-
auramaxx app update my-app
|
|
77
|
-
|
|
78
|
-
# Remove an app
|
|
79
|
-
auramaxx app remove my-app
|
|
80
|
-
|
|
81
|
-
# Remove without confirmation prompt
|
|
82
|
-
auramaxx app remove my-app --yes
|
|
83
|
-
```
|
|
84
|
-
|
|
85
|
-
### Dashboard UI
|
|
86
|
-
|
|
87
|
-
1. Open the App Store drawer (click the "+" button on the dashboard)
|
|
88
|
-
2. Select the **ALL** or **INSTALLED** tab
|
|
89
|
-
3. Paste a source URL into the "Install from URL" input at the top
|
|
90
|
-
4. Click **INSTALL** (or press Enter)
|
|
91
|
-
5. The app appears in the installed list immediately
|
|
92
|
-
|
|
93
|
-
### Supported Sources
|
|
94
|
-
|
|
95
|
-
| Pattern | Type | Example |
|
|
96
|
-
|---------|------|---------|
|
|
97
|
-
| Starts with `.` or `/` | Local copy | `./apps/my-app` |
|
|
98
|
-
| Ends with `.tar.gz` / `.tgz` | Tarball download | `https://example.com/app.tar.gz` |
|
|
99
|
-
| Ends with `.zip` | Zip download | `https://example.com/app.zip` |
|
|
100
|
-
| Everything else | Git clone | `github.com/user/repo` |
|
|
101
|
-
| `#path=subdir` fragment | Subdirectory | `github.com/user/repo#path=apps/foo` |
|
|
102
|
-
|
|
103
|
-
### Validation
|
|
104
|
-
|
|
105
|
-
The installer validates each app before copying it to `apps/`:
|
|
106
|
-
|
|
107
|
-
- `app.md` must exist with valid YAML frontmatter
|
|
108
|
-
- `index.html` is loaded if present (optional — headless apps use a default UI)
|
|
109
|
-
- No symlinks escaping the app directory
|
|
110
|
-
- No file larger than 5MB
|
|
111
|
-
- Total size under 20MB
|
|
112
|
-
- No ID conflict with existing apps (unless `--force`)
|
|
113
|
-
|
|
114
|
-
### Provenance
|
|
115
|
-
|
|
116
|
-
Each installed app gets a `.source.json` file recording where it was installed from:
|
|
117
|
-
|
|
118
|
-
```json
|
|
119
|
-
{
|
|
120
|
-
"type": "git",
|
|
121
|
-
"url": "https://github.com/user/my-app.git",
|
|
122
|
-
"ref": null,
|
|
123
|
-
"subdir": null,
|
|
124
|
-
"installedAt": "2026-02-10T12:00:00.000Z"
|
|
125
|
-
}
|
|
126
|
-
```
|
|
127
|
-
|
|
128
|
-
This file is used by `auramaxx app update <id>` to re-install from the original source.
|
|
129
|
-
|
|
130
|
-
---
|
|
131
|
-
|
|
132
|
-
## Quick Start
|
|
133
|
-
|
|
134
|
-
Create a minimal app in 3 steps:
|
|
135
|
-
|
|
136
|
-
### 1. Create the folder
|
|
137
|
-
|
|
138
|
-
```bash
|
|
139
|
-
mkdir apps/hello-world
|
|
140
|
-
```
|
|
141
|
-
|
|
142
|
-
### 2. Create the manifest (`apps/hello-world/app.md`)
|
|
143
|
-
|
|
144
|
-
```markdown
|
|
145
|
-
---
|
|
146
|
-
name: Hello World
|
|
147
|
-
icon: Smile
|
|
148
|
-
category: general
|
|
149
|
-
size: 1x1
|
|
150
|
-
permissions:
|
|
151
|
-
data:
|
|
152
|
-
---
|
|
153
|
-
|
|
154
|
-
A minimal example app that displays a greeting.
|
|
155
|
-
```
|
|
156
|
-
|
|
157
|
-
### 3. Create the entry point (`apps/hello-world/index.html`)
|
|
158
|
-
|
|
159
|
-
```html
|
|
160
|
-
<!DOCTYPE html>
|
|
161
|
-
<html>
|
|
162
|
-
<head>
|
|
163
|
-
<style>
|
|
164
|
-
body {
|
|
165
|
-
font-family: ui-monospace, monospace;
|
|
166
|
-
background: var(--color-surface, #fff);
|
|
167
|
-
color: var(--color-text, #0a0a0a);
|
|
168
|
-
display: flex;
|
|
169
|
-
align-items: center;
|
|
170
|
-
justify-content: center;
|
|
171
|
-
height: 100vh;
|
|
172
|
-
font-size: 12px;
|
|
173
|
-
}
|
|
174
|
-
</style>
|
|
175
|
-
</head>
|
|
176
|
-
<body>
|
|
177
|
-
<div>Hello from an app!</div>
|
|
178
|
-
</body>
|
|
179
|
-
</html>
|
|
180
|
-
```
|
|
181
|
-
|
|
182
|
-
The app will appear in the App Store under the "INSTALLED" tab. Click "ADD" to place it on your workspace.
|
|
183
|
-
|
|
184
|
-
---
|
|
185
|
-
|
|
186
|
-
## Built-in Apps
|
|
187
|
-
|
|
188
|
-
These apps ship with AuraMaxx and appear in the App Store under "BUILT-IN":
|
|
189
|
-
|
|
190
|
-
| Type | Title | Singleton | Description |
|
|
191
|
-
|------|-------|:---------:|-------------|
|
|
192
|
-
| `logs` | EVENT LOGS | Yes | Real-time event log viewer |
|
|
193
|
-
| `send` | SEND | Yes | Send transactions from hot wallets |
|
|
194
|
-
| `agentKeys` | AGENT KEYS | Yes | View and manage agent tokens |
|
|
195
|
-
| `token` | TOKEN | No | Market data for a token |
|
|
196
|
-
| `setup` | GETTING STARTED | Yes | First-time setup wizard |
|
|
197
|
-
| `transactions` | TRANSACTIONS | Yes | Transaction history log |
|
|
198
|
-
| `walletDetail` | WALLET | No | Detailed view of a single wallet |
|
|
199
|
-
| `iframe` | IFRAME | No | Embed any URL in an iframe |
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
# Aura Desktop (Electron)
|
|
2
|
-
|
|
3
|
-
## Overview
|
|
4
|
-
Aura Desktop wraps the existing Aura web app in an Electron shell (no duplicate UI fork).
|
|
5
|
-
|
|
6
|
-
## Security defaults
|
|
7
|
-
- `contextIsolation: true`
|
|
8
|
-
- `nodeIntegration: false`
|
|
9
|
-
- `sandbox: true`
|
|
10
|
-
- preload-only API bridge (`window.auraDesktop`)
|
|
11
|
-
|
|
12
|
-
## Run (dev)
|
|
13
|
-
1. Install deps: `npm install`
|
|
14
|
-
2. Start desktop shell: `AURA_ELECTRON_DEV=1 electron apps/desktop-electron/main.js`
|
|
15
|
-
|
|
16
|
-
This launches the web runtime and opens Electron against `http://localhost:4747`.
|
|
17
|
-
|
|
18
|
-
## Build + package (local artifact)
|
|
19
|
-
1. Build web app: `npx prisma generate && npx next build`
|
|
20
|
-
2. Package desktop app: `npx electron-builder --config apps/desktop-electron/electron-builder.yml`
|
|
21
|
-
|
|
22
|
-
Artifacts are generated under `dist/electron/`.
|
|
23
|
-
|
|
24
|
-
## Signing notes
|
|
25
|
-
- macOS notarization / Windows code signing are environment-specific and not enabled by default in this baseline.
|
|
26
|
-
- Configure signing credentials in CI/local env before publishing distributables.
|