├── .nvmrc ├── .npmrc ├── characters └── edriziai-info │ └── .gitignore ├── client ├── mobile │ ├── rn-shakey-app │ │ ├── .watchmanconfig │ │ ├── jest.config.js │ │ ├── app.json │ │ ├── .bundle │ │ │ └── config │ │ ├── tsconfig.json │ │ ├── .eslintrc.js │ │ ├── android │ │ │ ├── app │ │ │ │ ├── src │ │ │ │ │ ├── main │ │ │ │ │ │ ├── res │ │ │ │ │ │ │ ├── values │ │ │ │ │ │ │ │ ├── strings.xml │ │ │ │ │ │ │ │ └── styles.xml │ │ │ │ │ │ │ ├── mipmap-hdpi │ │ │ │ │ │ │ │ ├── ic_launcher.png │ │ │ │ │ │ │ │ └── ic_launcher_round.png │ │ │ │ │ │ │ ├── mipmap-mdpi │ │ │ │ │ │ │ │ ├── ic_launcher.png │ │ │ │ │ │ │ │ └── ic_launcher_round.png │ │ │ │ │ │ │ ├── mipmap-xhdpi │ │ │ │ │ │ │ │ ├── ic_launcher.png │ │ │ │ │ │ │ │ └── ic_launcher_round.png │ │ │ │ │ │ │ ├── mipmap-xxhdpi │ │ │ │ │ │ │ │ ├── ic_launcher.png │ │ │ │ │ │ │ │ └── ic_launcher_round.png │ │ │ │ │ │ │ └── mipmap-xxxhdpi │ │ │ │ │ │ │ │ ├── ic_launcher.png │ │ │ │ │ │ │ │ └── ic_launcher_round.png │ │ │ │ │ │ ├── assets │ │ │ │ │ │ │ └── fonts │ │ │ │ │ │ │ │ ├── Entypo.ttf │ │ │ │ │ │ │ │ ├── Zocial.ttf │ │ │ │ │ │ │ │ ├── AntDesign.ttf │ │ │ │ │ │ │ │ ├── EvilIcons.ttf │ │ │ │ │ │ │ │ ├── Feather.ttf │ │ │ │ │ │ │ │ ├── Fontisto.ttf │ │ │ │ │ │ │ │ ├── Ionicons.ttf │ │ │ │ │ │ │ │ ├── Octicons.ttf │ │ │ │ │ │ │ │ ├── FontAwesome.ttf │ │ │ │ │ │ │ │ ├── Foundation.ttf │ │ │ │ │ │ │ │ ├── MaterialIcons.ttf │ │ │ │ │ │ │ │ ├── SimpleLineIcons.ttf │ │ │ │ │ │ │ │ ├── FontAwesome5_Brands.ttf │ │ │ │ │ │ │ │ ├── FontAwesome5_Solid.ttf │ │ │ │ │ │ │ │ ├── FontAwesome5_Regular.ttf │ │ │ │ │ │ │ │ └── MaterialCommunityIcons.ttf │ │ │ │ │ │ └── java │ │ │ │ │ │ │ └── com │ │ │ │ │ │ │ └── shakey_rn │ │ │ │ │ │ │ └── MainActivity.kt │ │ │ │ │ └── debug │ │ │ │ │ │ └── AndroidManifest.xml │ │ │ │ ├── debug.keystore │ │ │ │ └── proguard-rules.pro │ │ │ ├── gradle │ │ │ │ └── wrapper │ │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ │ └── gradle-wrapper.properties │ │ │ ├── settings.gradle │ │ │ └── build.gradle │ │ ├── ios │ │ │ ├── Shakey_RN │ │ │ │ ├── Images.xcassets │ │ │ │ │ └── Contents.json │ │ │ │ └── AppDelegate.swift │ │ │ ├── Shakey_RN.xcworkspace │ │ │ │ └── contents.xcworkspacedata │ │ │ └── .xcode.env │ │ ├── babel.config.js │ │ ├── .prettierrc.js │ │ ├── src │ │ │ ├── hooks │ │ │ │ └── useChat.js │ │ │ ├── screens │ │ │ │ └── Chat │ │ │ │ │ └── ChatScreen.jsx │ │ │ ├── components │ │ │ │ └── PageContainer.jsx │ │ │ └── navigation │ │ │ │ └── MainNavigator.js │ │ ├── index.js │ │ ├── __tests__ │ │ │ └── App.test.tsx │ │ ├── metro.config.js │ │ └── Gemfile │ ├── rn-shakey-example-app │ │ ├── .watchmanconfig │ │ ├── src │ │ │ ├── screens │ │ │ │ ├── Home │ │ │ │ │ └── index.js │ │ │ │ └── Chat │ │ │ │ │ └── index.js │ │ │ ├── components │ │ │ │ ├── Carousel │ │ │ │ │ └── index.js │ │ │ │ ├── Header │ │ │ │ │ └── index.js │ │ │ │ ├── CustomButton │ │ │ │ │ └── index.js │ │ │ │ ├── PageContainer.jsx │ │ │ │ └── PageTitle.jsx │ │ │ ├── constants │ │ │ │ ├── colors.js │ │ │ │ ├── imageConfig.js │ │ │ │ └── categories.js │ │ │ └── utils │ │ │ │ └── apis │ │ │ │ └── apis.js │ │ ├── jest.config.js │ │ ├── .bundle │ │ │ └── config │ │ ├── app.json │ │ ├── .eslintrc.js │ │ ├── tsconfig.json │ │ ├── android │ │ │ ├── app │ │ │ │ ├── src │ │ │ │ │ ├── main │ │ │ │ │ │ ├── res │ │ │ │ │ │ │ ├── values │ │ │ │ │ │ │ │ ├── strings.xml │ │ │ │ │ │ │ │ └── styles.xml │ │ │ │ │ │ │ ├── mipmap-hdpi │ │ │ │ │ │ │ │ ├── ic_launcher.png │ │ │ │ │ │ │ │ └── ic_launcher_round.png │ │ │ │ │ │ │ ├── mipmap-mdpi │ │ │ │ │ │ │ │ ├── ic_launcher.png │ │ │ │ │ │ │ │ └── ic_launcher_round.png │ │ │ │ │ │ │ ├── mipmap-xhdpi │ │ │ │ │ │ │ │ ├── ic_launcher.png │ │ │ │ │ │ │ │ └── ic_launcher_round.png │ │ │ │ │ │ │ ├── mipmap-xxhdpi │ │ │ │ │ │ │ │ ├── ic_launcher.png │ │ │ │ │ │ │ │ └── ic_launcher_round.png │ │ │ │ │ │ │ └── mipmap-xxxhdpi │ │ │ │ │ │ │ │ ├── ic_launcher.png │ │ │ │ │ │ │ │ └── ic_launcher_round.png │ │ │ │ │ │ └── assets │ │ │ │ │ │ │ └── fonts │ │ │ │ │ │ │ ├── Entypo.ttf │ │ │ │ │ │ │ ├── Zocial.ttf │ │ │ │ │ │ │ ├── Feather.ttf │ │ │ │ │ │ │ ├── Fontisto.ttf │ │ │ │ │ │ │ ├── Ionicons.ttf │ │ │ │ │ │ │ ├── Octicons.ttf │ │ │ │ │ │ │ ├── AntDesign.ttf │ │ │ │ │ │ │ ├── EvilIcons.ttf │ │ │ │ │ │ │ ├── FontAwesome.ttf │ │ │ │ │ │ │ ├── Foundation.ttf │ │ │ │ │ │ │ ├── MaterialIcons.ttf │ │ │ │ │ │ │ ├── SimpleLineIcons.ttf │ │ │ │ │ │ │ ├── FontAwesome5_Solid.ttf │ │ │ │ │ │ │ ├── FontAwesome5_Brands.ttf │ │ │ │ │ │ │ ├── FontAwesome5_Regular.ttf │ │ │ │ │ │ │ └── MaterialCommunityIcons.ttf │ │ │ │ │ └── debug │ │ │ │ │ │ └── AndroidManifest.xml │ │ │ │ ├── debug.keystore │ │ │ │ └── proguard-rules.pro │ │ │ ├── gradle │ │ │ │ └── wrapper │ │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ │ └── gradle-wrapper.properties │ │ │ ├── settings.gradle │ │ │ └── build.gradle │ │ ├── ios │ │ │ ├── RN_ShakeyOs │ │ │ │ ├── Images.xcassets │ │ │ │ │ └── Contents.json │ │ │ │ ├── AppDelegate.h │ │ │ │ ├── main.m │ │ │ │ └── AppDelegate.mm │ │ │ ├── RN_ShakeyOs.xcworkspace │ │ │ │ └── contents.xcworkspacedata │ │ │ ├── .xcode.env │ │ │ └── RN_ShakeyOsTests │ │ │ │ └── Info.plist │ │ ├── assets │ │ │ └── Images │ │ │ │ ├── DevOps.png │ │ │ │ ├── Ui_Ux.png │ │ │ │ ├── VR-AR.png │ │ │ │ ├── App_dev.jpg │ │ │ │ ├── 3D-Modeling.png │ │ │ │ ├── Game-Development.png │ │ │ │ ├── Irenic_Logo_Dark.png │ │ │ │ ├── Digital-Marketing.png │ │ │ │ ├── Irenic_Logo_Light.png │ │ │ │ ├── Mobile-Application.png │ │ │ │ ├── Artificial-Intelligence.png │ │ │ │ ├── Blockchain-Development.png │ │ │ │ └── Full-Stack-Web-Development.png │ │ ├── babel.config.js │ │ ├── .prettierrc.js │ │ ├── index.js │ │ ├── metro.config.js │ │ ├── Gemfile │ │ └── __tests__ │ │ │ └── App.test.tsx │ └── expo-shakey-example-app │ │ ├── app │ │ ├── components │ │ │ ├── Header │ │ │ │ └── index.js │ │ │ ├── Carousel │ │ │ │ └── index.js │ │ │ ├── CustomButton │ │ │ │ └── index.js │ │ │ ├── PageContainer.jsx │ │ │ └── PageTitle.jsx │ │ ├── screens │ │ │ ├── Home │ │ │ │ └── index.js │ │ │ └── Chat │ │ │ │ └── index.js │ │ ├── constants │ │ │ ├── colors.js │ │ │ ├── imageConfig.js │ │ │ └── categories.js │ │ └── utils │ │ │ └── apis │ │ │ └── apis.js │ │ ├── assets │ │ ├── Images │ │ │ ├── DevOps.png │ │ │ ├── Splash.png │ │ │ ├── Ui_Ux.png │ │ │ ├── VR-AR.png │ │ │ ├── App_dev.jpg │ │ │ ├── 3D-Modeling.png │ │ │ ├── Game-Development.png │ │ │ ├── Irenic_Logo_Dark.png │ │ │ ├── Digital-Marketing.png │ │ │ ├── Irenic_Logo_Light.png │ │ │ ├── Mobile-Application.png │ │ │ ├── Artificial-Intelligence.png │ │ │ ├── Blockchain-Development.png │ │ │ └── Full-Stack-Web-Development.png │ │ └── fonts │ │ │ └── SpaceMono-Regular.ttf │ │ ├── tsconfig.json │ │ └── .gitignore └── web │ ├── src │ ├── lib │ │ ├── info.json │ │ └── utils.ts │ ├── vite-env.d.ts │ ├── types │ │ └── index.ts │ ├── main.tsx │ ├── routes │ │ ├── chat.tsx │ │ └── overview.tsx │ ├── components │ │ ├── ui │ │ │ ├── collapsible.tsx │ │ │ ├── skeleton.tsx │ │ │ ├── textarea.tsx │ │ │ ├── label.tsx │ │ │ ├── chat │ │ │ │ └── chat-input.tsx │ │ │ ├── input.tsx │ │ │ └── separator.tsx │ │ ├── input-copy.tsx │ │ ├── page-title.tsx │ │ └── array-input.tsx │ └── hooks │ │ └── use-mobile.tsx │ ├── public │ ├── elizaos.webp │ └── elizaos-icon.png │ ├── postcss.config.js │ ├── tsconfig.json │ ├── index.html │ ├── components.json │ ├── vite.config.ts │ ├── tsconfig.node.json │ ├── version.sh │ ├── eslint.config.js │ └── tsconfig.app.json ├── packages ├── plugin-whatsapp │ ├── src │ │ ├── utils │ │ │ └── index.ts │ │ └── handlers │ │ │ ├── index.ts │ │ │ └── message.handler.ts │ ├── tsconfig.json │ ├── tsup.config.ts │ └── package.json ├── plugin-di │ ├── src │ │ ├── actions │ │ │ └── index.ts │ │ ├── decorators │ │ │ └── index.ts │ │ ├── evaluators │ │ │ └── index.ts │ │ ├── factories │ │ │ └── index.ts │ │ ├── symbols.ts │ │ ├── index.ts │ │ └── di.ts │ ├── .npmignore │ ├── tsconfig.build.json │ ├── tsconfig.json │ ├── tsup.config.ts │ └── biome.json ├── core │ ├── .gitignore │ ├── .npmignore │ ├── types │ │ └── index.d.ts │ ├── src │ │ ├── utils.ts │ │ ├── config.ts │ │ ├── test_resources │ │ │ ├── testSetup.ts │ │ │ ├── types.ts │ │ │ └── constants.ts │ │ ├── providers.ts │ │ └── index.ts │ ├── nodemon.json │ ├── tsconfig.build.json │ ├── .env.test │ ├── elizaConfig.example.yaml │ ├── vitest.config.ts │ ├── tsup.config.ts │ ├── README-TESTS.md │ ├── tsconfig.json │ └── __tests__ │ │ └── env.test.ts ├── client-auto │ ├── .npmignore │ ├── tsconfig.json │ ├── tsup.config.ts │ ├── src │ │ └── index.ts │ └── package.json ├── plugin-node │ ├── .npmignore │ ├── tsconfig.json │ ├── src │ │ ├── types.ts │ │ ├── echogarden.d.ts │ │ ├── services │ │ │ └── index.ts │ │ ├── templates.ts │ │ └── index.ts │ └── tsup.config.ts ├── plugin-sgx │ ├── .npmignore │ ├── src │ │ ├── types │ │ │ └── attestation.ts │ │ ├── index.ts │ │ └── plugins │ │ │ └── sgxPlugin.ts │ ├── tsconfig.json │ ├── package.json │ └── tsup.config.ts ├── plugin-tee │ ├── .npmignore │ ├── tsconfig.json │ ├── src │ │ ├── types │ │ │ └── tee.ts │ │ └── index.ts │ ├── tsup.config.ts │ └── package.json ├── _examples │ ├── plugin │ │ ├── .npmignore │ │ ├── src │ │ │ ├── index.ts │ │ │ ├── providers │ │ │ │ └── sampleProvider.ts │ │ │ └── plugins │ │ │ │ └── samplePlugin.ts │ │ ├── tsconfig.json │ │ ├── package.json │ │ └── tsup.config.ts │ └── plugin-with-di │ │ ├── .npmignore │ │ ├── src │ │ ├── index.ts │ │ └── samplePlugin.ts │ │ ├── tsconfig.json │ │ ├── package.json │ │ └── tsup.config.ts ├── adapter-mongodb │ ├── .npmignore │ ├── eslint.config.mjs │ ├── src │ │ └── __tests__ │ │ │ ├── docker-compose.test.yml │ │ │ └── run_tests.sh │ ├── tsconfig.json │ └── tsup.config.ts ├── adapter-pglite │ ├── .npmignore │ ├── tsconfig.json │ ├── tsup.config.ts │ └── package.json ├── adapter-redis │ ├── .npmignore │ ├── vitest.config.ts │ ├── tsconfig.json │ ├── tsup.config.ts │ └── package.json ├── adapter-sqlite │ ├── .npmignore │ ├── vitest.config.ts │ ├── tsconfig.json │ ├── tsup.config.ts │ ├── src │ │ └── sqlite_vec.ts │ └── package.json ├── adapter-sqljs │ ├── .npmignore │ ├── tsconfig.json │ ├── tsup.config.ts │ └── package.json ├── adapter-supabase │ ├── .npmignore │ ├── vitest.config.ts │ ├── tsconfig.json │ ├── seed.sql │ ├── tsup.config.ts │ └── package.json ├── client-direct │ ├── .npmignore │ ├── tsconfig.json │ └── tsup.config.ts ├── client-discord │ ├── .npmignore │ ├── tsconfig.json │ ├── vitest.config.ts │ └── tsup.config.ts ├── client-github │ ├── .npmignore │ ├── tsconfig.json │ ├── tsup.config.ts │ └── package.json ├── client-telegram │ ├── .npmignore │ ├── tsconfig.json │ ├── vitest.config.ts │ ├── src │ │ ├── config │ │ │ └── default.json5 │ │ └── index.ts │ ├── tsup.config.ts │ └── package.json ├── client-twitter │ ├── .npmignore │ ├── src │ │ └── types.ts │ ├── tsconfig.json │ ├── vitest.config.ts │ ├── tsup.config.ts │ └── package.json ├── plugin-tee-log │ ├── .npmignore │ ├── src │ │ ├── index.ts │ │ ├── plugins │ │ │ └── teeLogPlugin.ts │ │ └── adapters │ │ │ └── sqliteTables.ts │ ├── tsconfig.json │ ├── package.json │ └── tsup.config.ts ├── plugin-twitter │ ├── .npmignore │ ├── eslint.config.mjs │ ├── tsconfig.json │ ├── tsup.config.ts │ ├── src │ │ ├── types.ts │ │ ├── index.ts │ │ └── templates.ts │ ├── vitest.config.ts │ └── package.json ├── client-telegram-account │ ├── .npmignore │ ├── eslint.config.mjs │ ├── tsconfig.json │ ├── vitest.config.ts │ ├── tsup.config.ts │ └── src │ │ └── index.ts ├── plugin-image-generation │ ├── .npmignore │ ├── tsconfig.json │ ├── tsup.config.ts │ └── package.json ├── plugin-tee-verifiable-log │ ├── .npmignore │ ├── tsconfig.json │ ├── tsup.config.ts │ └── package.json ├── adapter-qdrant │ ├── .npmignore │ ├── eslint.config.mjs │ ├── tsconfig.json │ ├── tsup.config.ts │ └── package.json ├── client-lens │ ├── eslint.config.mjs │ ├── src │ │ └── types.ts │ ├── tsconfig.json │ ├── vitest.config.ts │ └── tsup.config.ts ├── client-slack │ ├── src │ │ ├── examples │ │ │ ├── sc_01.png │ │ │ └── sc_02.png │ │ └── services │ │ │ └── slack.service.ts │ ├── vitest.config.ts │ ├── tsconfig.json │ └── jest.config.js ├── adapter-postgres │ ├── .npmignore │ ├── tsconfig.json │ ├── seed.sql │ ├── src │ │ └── __tests__ │ │ │ └── docker-compose.test.yml │ ├── tsup.config.ts │ └── package.json └── client-instagram │ ├── eslint.config.mjs │ ├── tsconfig.json │ ├── tsup.config.ts │ └── src │ ├── lib │ └── state.ts │ └── types.ts ├── scripts ├── jsdoc-automation │ ├── .example.env │ ├── pnpm-workspace.yaml │ ├── src │ │ └── AIService │ │ │ ├── index.ts │ │ │ └── types │ │ │ └── index.ts │ ├── tsup.config.ts │ ├── .gitignore │ ├── tsconfig.json │ └── package.json ├── update-biome-rules.mjs ├── integrationTests.sh ├── clean.sh ├── bug_hunt │ ├── package.json │ └── types │ │ └── index.ts ├── derive-keys.js ├── lint.sh └── update-package-access.js ├── commitlint.config.js ├── pnpm-workspace.yaml ├── agent ├── .gitignore ├── jest.config.js └── tsconfig.json ├── codecov.yml ├── .prettierignore ├── docker-compose-docs.yaml ├── lerna.json ├── .gitpod.yml ├── .editorconfig ├── .vscode ├── tasks.json └── launch.json ├── prettier.config.cjs ├── tsconfig.json ├── .devcontainer └── Dockerfile ├── jest.config.json ├── .gitignore └── LICENSE /.nvmrc: -------------------------------------------------------------------------------- 1 | v23.3.0 -------------------------------------------------------------------------------- /.npmrc: -------------------------------------------------------------------------------- 1 | node-linker=hoisted 2 | frozen-lockfile=true -------------------------------------------------------------------------------- /characters/edriziai-info/.gitignore: -------------------------------------------------------------------------------- 1 | secrets.json 2 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/.watchmanconfig: -------------------------------------------------------------------------------- 1 | {} 2 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/.watchmanconfig: -------------------------------------------------------------------------------- 1 | {} 2 | -------------------------------------------------------------------------------- /client/web/src/lib/info.json: -------------------------------------------------------------------------------- 1 | {"version": "0.1.8+build.1"} 2 | -------------------------------------------------------------------------------- /client/web/src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /packages/plugin-whatsapp/src/utils/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./validators"; 2 | -------------------------------------------------------------------------------- /scripts/jsdoc-automation/.example.env: -------------------------------------------------------------------------------- 1 | GITHUB_ACCESS_TOKEN= 2 | OPENAI_API_KEY= -------------------------------------------------------------------------------- /packages/plugin-di/src/actions/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./baseInjectableAction"; 2 | -------------------------------------------------------------------------------- /scripts/jsdoc-automation/pnpm-workspace.yaml: -------------------------------------------------------------------------------- 1 | packages: 2 | - "packages/*" 3 | -------------------------------------------------------------------------------- /packages/plugin-di/src/decorators/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./content.decorators"; 2 | -------------------------------------------------------------------------------- /commitlint.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { extends: ["@commitlint/config-conventional"] }; 2 | -------------------------------------------------------------------------------- /packages/plugin-di/src/evaluators/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./baseInjectableEvaluator"; 2 | -------------------------------------------------------------------------------- /packages/core/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | dist 3 | elizaConfig.yaml 4 | custom_actions/ 5 | cache/ -------------------------------------------------------------------------------- /packages/core/.npmignore: -------------------------------------------------------------------------------- 1 | * 2 | 3 | !dist/** 4 | !package.json 5 | !readme.md 6 | !tsup.config.ts -------------------------------------------------------------------------------- /pnpm-workspace.yaml: -------------------------------------------------------------------------------- 1 | packages: 2 | - "packages/*" 3 | - "agent" 4 | - "client/web" 5 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/jest.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | preset: 'react-native', 3 | }; 4 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/src/screens/Home/index.js: -------------------------------------------------------------------------------- 1 | export {default} from './HomeScreen'; 2 | -------------------------------------------------------------------------------- /packages/client-auto/.npmignore: -------------------------------------------------------------------------------- 1 | * 2 | 3 | !dist/** 4 | !package.json 5 | !readme.md 6 | !tsup.config.ts -------------------------------------------------------------------------------- /packages/plugin-di/.npmignore: -------------------------------------------------------------------------------- 1 | * 2 | 3 | !dist/** 4 | !package.json 5 | !readme.md 6 | !tsup.config.ts -------------------------------------------------------------------------------- /packages/plugin-node/.npmignore: -------------------------------------------------------------------------------- 1 | * 2 | 3 | !dist/** 4 | !package.json 5 | !readme.md 6 | !tsup.config.ts -------------------------------------------------------------------------------- /packages/plugin-sgx/.npmignore: -------------------------------------------------------------------------------- 1 | * 2 | 3 | !dist/** 4 | !package.json 5 | !readme.md 6 | !tsup.config.ts -------------------------------------------------------------------------------- /packages/plugin-tee/.npmignore: -------------------------------------------------------------------------------- 1 | * 2 | 3 | !dist/** 4 | !package.json 5 | !readme.md 6 | !tsup.config.ts -------------------------------------------------------------------------------- /client/mobile/expo-shakey-example-app/app/components/Header/index.js: -------------------------------------------------------------------------------- 1 | export {default} from './Header'; 2 | -------------------------------------------------------------------------------- /client/mobile/expo-shakey-example-app/app/screens/Home/index.js: -------------------------------------------------------------------------------- 1 | export {default} from './HomeScreen'; 2 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/app.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Shakey_RN", 3 | "displayName": "Shakey_RN" 4 | } 5 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/src/components/Carousel/index.js: -------------------------------------------------------------------------------- 1 | export {default} from './CarouselItems' -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/src/components/Header/index.js: -------------------------------------------------------------------------------- 1 | export {default} from './Header'; 2 | -------------------------------------------------------------------------------- /packages/_examples/plugin/.npmignore: -------------------------------------------------------------------------------- 1 | * 2 | 3 | !dist/** 4 | !package.json 5 | !readme.md 6 | !tsup.config.ts -------------------------------------------------------------------------------- /packages/adapter-mongodb/.npmignore: -------------------------------------------------------------------------------- 1 | * 2 | 3 | !dist/** 4 | !package.json 5 | !readme.md 6 | !tsup.config.ts -------------------------------------------------------------------------------- /packages/adapter-pglite/.npmignore: -------------------------------------------------------------------------------- 1 | * 2 | 3 | !dist/** 4 | !package.json 5 | !readme.md 6 | !tsup.config.ts -------------------------------------------------------------------------------- /packages/adapter-redis/.npmignore: -------------------------------------------------------------------------------- 1 | * 2 | 3 | !dist/** 4 | !package.json 5 | !readme.md 6 | !tsup.config.ts -------------------------------------------------------------------------------- /packages/adapter-sqlite/.npmignore: -------------------------------------------------------------------------------- 1 | * 2 | 3 | !dist/** 4 | !package.json 5 | !readme.md 6 | !tsup.config.ts -------------------------------------------------------------------------------- /packages/adapter-sqljs/.npmignore: -------------------------------------------------------------------------------- 1 | * 2 | 3 | !dist/** 4 | !package.json 5 | !readme.md 6 | !tsup.config.ts -------------------------------------------------------------------------------- /packages/adapter-supabase/.npmignore: -------------------------------------------------------------------------------- 1 | * 2 | 3 | !dist/** 4 | !package.json 5 | !readme.md 6 | !tsup.config.ts -------------------------------------------------------------------------------- /packages/client-direct/.npmignore: -------------------------------------------------------------------------------- 1 | * 2 | 3 | !dist/** 4 | !package.json 5 | !readme.md 6 | !tsup.config.ts -------------------------------------------------------------------------------- /packages/client-discord/.npmignore: -------------------------------------------------------------------------------- 1 | * 2 | 3 | !dist/** 4 | !package.json 5 | !readme.md 6 | !tsup.config.ts -------------------------------------------------------------------------------- /packages/client-github/.npmignore: -------------------------------------------------------------------------------- 1 | * 2 | 3 | !dist/** 4 | !package.json 5 | !readme.md 6 | !tsup.config.ts -------------------------------------------------------------------------------- /packages/client-telegram/.npmignore: -------------------------------------------------------------------------------- 1 | * 2 | 3 | !dist/** 4 | !package.json 5 | !readme.md 6 | !tsup.config.ts -------------------------------------------------------------------------------- /packages/client-twitter/.npmignore: -------------------------------------------------------------------------------- 1 | * 2 | 3 | !dist/** 4 | !package.json 5 | !readme.md 6 | !tsup.config.ts -------------------------------------------------------------------------------- /packages/plugin-di/src/factories/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./plugin"; 2 | export * from "./charactor"; 3 | -------------------------------------------------------------------------------- /packages/plugin-tee-log/.npmignore: -------------------------------------------------------------------------------- 1 | * 2 | 3 | !dist/** 4 | !package.json 5 | !readme.md 6 | !tsup.config.ts -------------------------------------------------------------------------------- /packages/plugin-twitter/.npmignore: -------------------------------------------------------------------------------- 1 | * 2 | 3 | !dist/** 4 | !package.json 5 | !readme.md 6 | !tsup.config.ts -------------------------------------------------------------------------------- /scripts/jsdoc-automation/src/AIService/index.ts: -------------------------------------------------------------------------------- 1 | export * from './AIService.js'; 2 | export * from './types'; -------------------------------------------------------------------------------- /agent/.gitignore: -------------------------------------------------------------------------------- 1 | *.ts 2 | !index.ts 3 | !character.ts 4 | .env 5 | *.env 6 | .env* 7 | /data 8 | /generatedImages -------------------------------------------------------------------------------- /client/mobile/expo-shakey-example-app/app/components/Carousel/index.js: -------------------------------------------------------------------------------- 1 | export {default} from './CarouselItems' -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/.bundle/config: -------------------------------------------------------------------------------- 1 | BUNDLE_PATH: "vendor/bundle" 2 | BUNDLE_FORCE_RUBY_PLATFORM: 1 3 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/jest.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | preset: 'react-native', 3 | }; 4 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/src/components/CustomButton/index.js: -------------------------------------------------------------------------------- 1 | export {default} from './CustomBtn'; 2 | -------------------------------------------------------------------------------- /client/mobile/expo-shakey-example-app/app/components/CustomButton/index.js: -------------------------------------------------------------------------------- 1 | export {default} from './CustomBtn'; 2 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@react-native/typescript-config/tsconfig.json" 3 | } 4 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/.bundle/config: -------------------------------------------------------------------------------- 1 | BUNDLE_PATH: "vendor/bundle" 2 | BUNDLE_FORCE_RUBY_PLATFORM: 1 3 | -------------------------------------------------------------------------------- /packages/_examples/plugin-with-di/.npmignore: -------------------------------------------------------------------------------- 1 | * 2 | 3 | !dist/** 4 | !package.json 5 | !readme.md 6 | !tsup.config.ts -------------------------------------------------------------------------------- /packages/client-telegram-account/.npmignore: -------------------------------------------------------------------------------- 1 | * 2 | 3 | !dist/** 4 | !package.json 5 | !readme.md 6 | !tsup.config.ts -------------------------------------------------------------------------------- /packages/plugin-image-generation/.npmignore: -------------------------------------------------------------------------------- 1 | * 2 | 3 | !dist/** 4 | !package.json 5 | !readme.md 6 | !tsup.config.ts -------------------------------------------------------------------------------- /packages/plugin-tee-verifiable-log/.npmignore: -------------------------------------------------------------------------------- 1 | * 2 | 3 | !dist/** 4 | !package.json 5 | !readme.md 6 | !tsup.config.ts -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | root: true, 3 | extends: '@react-native', 4 | }; 5 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/app.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "RN_ShakeyOs", 3 | "displayName": "RN_ShakeyOs" 4 | } 5 | -------------------------------------------------------------------------------- /client/web/public/elizaos.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/web/public/elizaos.webp -------------------------------------------------------------------------------- /codecov.yml: -------------------------------------------------------------------------------- 1 | coverage: 2 | status: 3 | project: 4 | default: 5 | target: 70% 6 | -------------------------------------------------------------------------------- /packages/client-twitter/src/types.ts: -------------------------------------------------------------------------------- 1 | export type MediaData = { 2 | data: Buffer; 3 | mediaType: string; 4 | }; 5 | -------------------------------------------------------------------------------- /packages/core/types/index.d.ts: -------------------------------------------------------------------------------- 1 | declare global { 2 | interface Buffer extends Uint8Array {} 3 | } 4 | export {}; 5 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | root: true, 3 | extends: '@react-native', 4 | }; 5 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@react-native/typescript-config/tsconfig.json" 3 | } 4 | -------------------------------------------------------------------------------- /packages/plugin-whatsapp/src/handlers/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./message.handler"; 2 | export * from "./webhook.handler"; 3 | -------------------------------------------------------------------------------- /client/web/public/elizaos-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/web/public/elizaos-icon.png -------------------------------------------------------------------------------- /packages/plugin-sgx/src/types/attestation.ts: -------------------------------------------------------------------------------- 1 | export interface SgxAttestation { 2 | quote: string; 3 | timestamp: number; 4 | } -------------------------------------------------------------------------------- /client/web/src/types/index.ts: -------------------------------------------------------------------------------- 1 | export interface IAttachment { 2 | url: string; 3 | contentType: string; 4 | title: string; 5 | } -------------------------------------------------------------------------------- /client/web/postcss.config.js: -------------------------------------------------------------------------------- 1 | export default { 2 | plugins: { 3 | tailwindcss: {}, 4 | autoprefixer: {}, 5 | }, 6 | }; 7 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/src/screens/Chat/index.js: -------------------------------------------------------------------------------- 1 | export {default} from './ChatListScreen'; 2 | export {ChatScreen} from './ChatScreen'; 3 | -------------------------------------------------------------------------------- /packages/adapter-mongodb/eslint.config.mjs: -------------------------------------------------------------------------------- 1 | import eslintGlobalConfig from "../../eslint.config.mjs"; 2 | 3 | export default [...eslintGlobalConfig]; 4 | -------------------------------------------------------------------------------- /packages/adapter-qdrant/.npmignore: -------------------------------------------------------------------------------- 1 | * 2 | 3 | !dist/** 4 | !package.json 5 | !readme.md 6 | !tsup.config.ts 7 | !schema.sql 8 | !seed.sql 9 | !config.toml -------------------------------------------------------------------------------- /packages/adapter-qdrant/eslint.config.mjs: -------------------------------------------------------------------------------- 1 | import eslintGlobalConfig from "../../eslint.config.mjs"; 2 | 3 | export default [...eslintGlobalConfig]; 4 | -------------------------------------------------------------------------------- /packages/client-lens/eslint.config.mjs: -------------------------------------------------------------------------------- 1 | import eslintGlobalConfig from "../../eslint.config.mjs"; 2 | 3 | export default [...eslintGlobalConfig]; 4 | -------------------------------------------------------------------------------- /packages/client-slack/src/examples/sc_01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/packages/client-slack/src/examples/sc_01.png -------------------------------------------------------------------------------- /packages/client-slack/src/examples/sc_02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/packages/client-slack/src/examples/sc_02.png -------------------------------------------------------------------------------- /packages/plugin-twitter/eslint.config.mjs: -------------------------------------------------------------------------------- 1 | import eslintGlobalConfig from "../../eslint.config.mjs"; 2 | 3 | export default [...eslintGlobalConfig]; 4 | -------------------------------------------------------------------------------- /client/mobile/expo-shakey-example-app/app/screens/Chat/index.js: -------------------------------------------------------------------------------- 1 | export {default} from './ChatListScreen'; 2 | export {ChatScreen} from './ChatScreen'; 3 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Shakey_RN 3 | 4 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/ios/Shakey_RN/Images.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /packages/adapter-postgres/.npmignore: -------------------------------------------------------------------------------- 1 | * 2 | 3 | !dist/** 4 | !package.json 5 | !readme.md 6 | !tsup.config.ts 7 | !schema.sql 8 | !seed.sql 9 | !config.toml -------------------------------------------------------------------------------- /packages/client-instagram/eslint.config.mjs: -------------------------------------------------------------------------------- 1 | import eslintGlobalConfig from "../../eslint.config.mjs"; 2 | 3 | export default [...eslintGlobalConfig]; 4 | -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | **/*/target 2 | **/*/dist 3 | 4 | # ignore lock files 5 | **/*-lock.yaml 6 | package-lock.json 7 | dev-dist 8 | 9 | **/CHANGELOG.md 10 | -------------------------------------------------------------------------------- /packages/client-telegram-account/eslint.config.mjs: -------------------------------------------------------------------------------- 1 | import eslintGlobalConfig from "../../eslint.config.mjs"; 2 | 3 | export default [...eslintGlobalConfig]; 4 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | RN_ShakeyOs 3 | 4 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/ios/RN_ShakeyOs/Images.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /packages/core/src/utils.ts: -------------------------------------------------------------------------------- 1 | export { elizaLogger } from "./logger.ts"; 2 | export { embed } from "./embedding.ts"; 3 | export { AgentRuntime } from "./runtime.ts"; 4 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/debug.keystore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-app/android/app/debug.keystore -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/babel.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | presets: ['module:@react-native/babel-preset'], 3 | plugins: ['react-native-reanimated/plugin'], 4 | }; -------------------------------------------------------------------------------- /packages/_examples/plugin-with-di/src/index.ts: -------------------------------------------------------------------------------- 1 | import { samplePlugin } from "./samplePlugin"; 2 | 3 | export * from "./samplePlugin"; 4 | 5 | export default samplePlugin; 6 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/assets/Images/DevOps.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/assets/Images/DevOps.png -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/assets/Images/Ui_Ux.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/assets/Images/Ui_Ux.png -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/assets/Images/VR-AR.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/assets/Images/VR-AR.png -------------------------------------------------------------------------------- /packages/core/nodemon.json: -------------------------------------------------------------------------------- 1 | { 2 | "watch": ["src"], 3 | "ext": "ts", 4 | "ignore": ["src/**/*.spec.ts"], 5 | "exec": "node --loader ts-node/esm src/index.ts" 6 | } 7 | -------------------------------------------------------------------------------- /packages/plugin-di/src/symbols.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * Factory Symbols used in the library 3 | */ 4 | export const FACTORIES = { 5 | PluginFactory: Symbol.for("PluginFactory"), 6 | }; 7 | -------------------------------------------------------------------------------- /client/mobile/expo-shakey-example-app/assets/Images/DevOps.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/expo-shakey-example-app/assets/Images/DevOps.png -------------------------------------------------------------------------------- /client/mobile/expo-shakey-example-app/assets/Images/Splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/expo-shakey-example-app/assets/Images/Splash.png -------------------------------------------------------------------------------- /client/mobile/expo-shakey-example-app/assets/Images/Ui_Ux.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/expo-shakey-example-app/assets/Images/Ui_Ux.png -------------------------------------------------------------------------------- /client/mobile/expo-shakey-example-app/assets/Images/VR-AR.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/expo-shakey-example-app/assets/Images/VR-AR.png -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/debug.keystore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/android/app/debug.keystore -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/assets/Images/App_dev.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/assets/Images/App_dev.jpg -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/babel.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | presets: ['module:@react-native/babel-preset'], 3 | plugins: ['react-native-reanimated/plugin'], 4 | }; 5 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/ios/RN_ShakeyOs/AppDelegate.h: -------------------------------------------------------------------------------- 1 | #import 2 | #import 3 | 4 | @interface AppDelegate : RCTAppDelegate 5 | 6 | @end 7 | -------------------------------------------------------------------------------- /client/web/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "files": [], 3 | "references": [ 4 | { "path": "./tsconfig.app.json" }, 5 | { "path": "./tsconfig.node.json" } 6 | ] 7 | } 8 | -------------------------------------------------------------------------------- /packages/_examples/plugin/src/index.ts: -------------------------------------------------------------------------------- 1 | import { samplePlugin } from "./plugins/samplePlugin"; 2 | 3 | export * from "./plugins/samplePlugin"; 4 | 5 | export default samplePlugin; 6 | -------------------------------------------------------------------------------- /client/mobile/expo-shakey-example-app/assets/Images/App_dev.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/expo-shakey-example-app/assets/Images/App_dev.jpg -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/assets/Images/3D-Modeling.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/assets/Images/3D-Modeling.png -------------------------------------------------------------------------------- /client/mobile/expo-shakey-example-app/assets/Images/3D-Modeling.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/expo-shakey-example-app/assets/Images/3D-Modeling.png -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-app/android/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/assets/Images/Game-Development.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/assets/Images/Game-Development.png -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/assets/Images/Irenic_Logo_Dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/assets/Images/Irenic_Logo_Dark.png -------------------------------------------------------------------------------- /client/mobile/expo-shakey-example-app/assets/Images/Game-Development.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/expo-shakey-example-app/assets/Images/Game-Development.png -------------------------------------------------------------------------------- /client/mobile/expo-shakey-example-app/assets/Images/Irenic_Logo_Dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/expo-shakey-example-app/assets/Images/Irenic_Logo_Dark.png -------------------------------------------------------------------------------- /client/mobile/expo-shakey-example-app/assets/fonts/SpaceMono-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/expo-shakey-example-app/assets/fonts/SpaceMono-Regular.ttf -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/Entypo.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/Entypo.ttf -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/Zocial.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/Zocial.ttf -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/assets/Images/Digital-Marketing.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/assets/Images/Digital-Marketing.png -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/assets/Images/Irenic_Logo_Light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/assets/Images/Irenic_Logo_Light.png -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/assets/Images/Mobile-Application.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/assets/Images/Mobile-Application.png -------------------------------------------------------------------------------- /client/mobile/expo-shakey-example-app/assets/Images/Digital-Marketing.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/expo-shakey-example-app/assets/Images/Digital-Marketing.png -------------------------------------------------------------------------------- /client/mobile/expo-shakey-example-app/assets/Images/Irenic_Logo_Light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/expo-shakey-example-app/assets/Images/Irenic_Logo_Light.png -------------------------------------------------------------------------------- /client/mobile/expo-shakey-example-app/assets/Images/Mobile-Application.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/expo-shakey-example-app/assets/Images/Mobile-Application.png -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/.prettierrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | arrowParens: 'avoid', 3 | bracketSameLine: true, 4 | bracketSpacing: false, 5 | singleQuote: true, 6 | trailingComma: 'all', 7 | }; 8 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/AntDesign.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/AntDesign.ttf -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/EvilIcons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/EvilIcons.ttf -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/Feather.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/Feather.ttf -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/Fontisto.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/Fontisto.ttf -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/Ionicons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/Ionicons.ttf -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/Octicons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/Octicons.ttf -------------------------------------------------------------------------------- /packages/adapter-supabase/vitest.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'vitest/config' 2 | 3 | export default defineConfig({ 4 | test: { 5 | globals: true, 6 | environment: 'node', 7 | }, 8 | }) 9 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/FontAwesome.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/FontAwesome.ttf -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/Foundation.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/Foundation.ttf -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/android/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/assets/Images/Artificial-Intelligence.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/assets/Images/Artificial-Intelligence.png -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/assets/Images/Blockchain-Development.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/assets/Images/Blockchain-Development.png -------------------------------------------------------------------------------- /packages/core/tsconfig.build.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "./tsconfig.json", 3 | "compilerOptions": { 4 | "sourceMap": true, 5 | "inlineSources": true, 6 | "sourceRoot": "/" 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /client/mobile/expo-shakey-example-app/assets/Images/Artificial-Intelligence.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/expo-shakey-example-app/assets/Images/Artificial-Intelligence.png -------------------------------------------------------------------------------- /client/mobile/expo-shakey-example-app/assets/Images/Blockchain-Development.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/expo-shakey-example-app/assets/Images/Blockchain-Development.png -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/MaterialIcons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/MaterialIcons.ttf -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-app/android/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-app/android/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/.prettierrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | arrowParens: 'avoid', 3 | bracketSameLine: true, 4 | bracketSpacing: false, 5 | singleQuote: true, 6 | trailingComma: 'all', 7 | }; 8 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/Entypo.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/Entypo.ttf -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/Zocial.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/Zocial.ttf -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/assets/Images/Full-Stack-Web-Development.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/assets/Images/Full-Stack-Web-Development.png -------------------------------------------------------------------------------- /docker-compose-docs.yaml: -------------------------------------------------------------------------------- 1 | services: 2 | docs: 3 | build: 4 | dockerfile: Dockerfile.docs 5 | context: . 6 | target: serve 7 | ports: 8 | - 3000:3000 9 | -------------------------------------------------------------------------------- /packages/adapter-redis/vitest.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'vitest/config'; 2 | 3 | export default defineConfig({ 4 | test: { 5 | globals: true, 6 | environment: 'node', 7 | }, 8 | }); 9 | -------------------------------------------------------------------------------- /packages/plugin-di/tsconfig.build.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "./tsconfig.json", 3 | "compilerOptions": { 4 | "sourceMap": true, 5 | "inlineSources": true, 6 | "sourceRoot": "/" 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /packages/plugin-tee/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../core/tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "dist", 5 | "rootDir": "src" 6 | }, 7 | "include": ["src/**/*.ts"] 8 | } 9 | -------------------------------------------------------------------------------- /client/mobile/expo-shakey-example-app/assets/Images/Full-Stack-Web-Development.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/expo-shakey-example-app/assets/Images/Full-Stack-Web-Development.png -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/SimpleLineIcons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/SimpleLineIcons.ttf -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-app/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-app/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/Feather.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/Feather.ttf -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/Fontisto.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/Fontisto.ttf -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/Ionicons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/Ionicons.ttf -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/Octicons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/Octicons.ttf -------------------------------------------------------------------------------- /packages/adapter-redis/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../core/tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "dist", 5 | "rootDir": "src" 6 | }, 7 | "include": ["src/**/*.ts"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/adapter-sqlite/vitest.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'vitest/config'; 2 | 3 | export default defineConfig({ 4 | test: { 5 | globals: true, 6 | environment: 'node', 7 | }, 8 | }); 9 | -------------------------------------------------------------------------------- /packages/client-auto/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../core/tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "dist", 5 | "rootDir": "src" 6 | }, 7 | "include": ["src/**/*.ts"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/client-direct/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../core/tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "dist", 5 | "rootDir": "src" 6 | }, 7 | "include": ["src/**/*.ts"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/client-discord/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../core/tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "dist", 5 | "rootDir": "src" 6 | }, 7 | "include": ["src/**/*.ts"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/client-github/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../core/tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "dist", 5 | "rootDir": "src" 6 | }, 7 | "include": ["src/**/*.ts"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/client-telegram/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../core/tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "dist", 5 | "rootDir": "src" 6 | }, 7 | "include": ["src/**/*.ts"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/client-twitter/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../core/tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "dist", 5 | "rootDir": "src" 6 | }, 7 | "include": ["src/**/*.ts"] 8 | } 9 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/FontAwesome5_Brands.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/FontAwesome5_Brands.ttf -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/FontAwesome5_Solid.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/FontAwesome5_Solid.ttf -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-app/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/AntDesign.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/AntDesign.ttf -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/EvilIcons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/EvilIcons.ttf -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/FontAwesome.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/FontAwesome.ttf -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/Foundation.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/Foundation.ttf -------------------------------------------------------------------------------- /packages/adapter-supabase/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../core/tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "dist", 5 | "rootDir": "src" 6 | }, 7 | "include": ["src/**/*.ts"] 8 | } 9 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/FontAwesome5_Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/FontAwesome5_Regular.ttf -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-app/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-app/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-app/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/MaterialIcons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/MaterialIcons.ttf -------------------------------------------------------------------------------- /lerna.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "0.1.8+build.1", 3 | "packages": [ 4 | "packages/*", 5 | "agent", 6 | "client/web", 7 | "!packages/_examples" 8 | ], 9 | "npmClient": "pnpm" 10 | } 11 | -------------------------------------------------------------------------------- /packages/client-telegram-account/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../core/tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "dist", 5 | "rootDir": "src" 6 | }, 7 | "include": ["src/**/*.ts"] 8 | } 9 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/MaterialCommunityIcons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-app/android/app/src/main/assets/fonts/MaterialCommunityIcons.ttf -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-app/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-app/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/src/hooks/useChat.js: -------------------------------------------------------------------------------- 1 | import {useEffect, useState} from 'react'; 2 | import {fetchChatMessages, sendMessage} from '../api/chatApi'; 3 | 4 | const useChat = (agentId) => { 5 | }; 6 | 7 | export default useChat; 8 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/SimpleLineIcons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/SimpleLineIcons.ttf -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/android/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/android/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/FontAwesome5_Solid.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/FontAwesome5_Solid.ttf -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /.gitpod.yml: -------------------------------------------------------------------------------- 1 | tasks: 2 | - name: "init shakey env" 3 | init: | 4 | nvm install v23.3.0 5 | git fetch --tags 6 | git checkout $(git describe --tags --abbrev=0) 7 | command: pnpm install && pnpm run build 8 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/FontAwesome5_Brands.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/FontAwesome5_Brands.ttf -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/FontAwesome5_Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/FontAwesome5_Regular.ttf -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/MaterialCommunityIcons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/android/app/src/main/assets/fonts/MaterialCommunityIcons.ttf -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ShakeyOS/shakey-reactNative/HEAD/client/mobile/rn-shakey-example-app/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /packages/client-instagram/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../core/tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "dist", 5 | "rootDir": "src" 6 | }, 7 | "include": [ 8 | "src/**/*.ts" 9 | ] 10 | } -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | indent_style = space 5 | indent_size = 4 6 | end_of_line = lf 7 | charset = utf-8 8 | trim_trailing_whitespace = true 9 | insert_final_newline = true 10 | 11 | [*.md] 12 | trim_trailing_whitespace = false 13 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * @format 3 | */ 4 | 5 | import {AppRegistry} from 'react-native'; 6 | import App from './App'; 7 | import {name as appName} from './app.json'; 8 | 9 | AppRegistry.registerComponent(appName, () => App); 10 | -------------------------------------------------------------------------------- /packages/adapter-sqlite/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../core/tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "dist", 5 | "rootDir": "src", 6 | "strict": true 7 | }, 8 | "include": ["src/**/*.ts"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/adapter-sqljs/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../core/tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "dist", 5 | "rootDir": "src", 6 | "strict": true 7 | }, 8 | "include": ["src/**/*.ts"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/plugin-tee-verifiable-log/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../core/tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "dist", 5 | "rootDir": "src" 6 | }, 7 | "include": [ 8 | "src/**/*.ts" 9 | ] 10 | } -------------------------------------------------------------------------------- /packages/plugin-twitter/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../core/tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "dist", 5 | "rootDir": "src", 6 | "types": ["node"] 7 | }, 8 | "include": ["src/**/*.ts"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/_examples/plugin/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../core/tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "dist", 5 | "rootDir": "src", 6 | "types": ["node"] 7 | }, 8 | "include": ["src/**/*.ts"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/plugin-image-generation/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../core/tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "dist", 5 | "rootDir": "src", 6 | "types": ["node"] 7 | }, 8 | "include": ["src/**/*.ts"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/adapter-pglite/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../core/tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "dist", 5 | "rootDir": "src", 6 | "strict": true 7 | }, 8 | "include": [ 9 | "src/**/*.ts" 10 | ] 11 | } -------------------------------------------------------------------------------- /packages/plugin-node/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../core/tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "dist", 5 | "rootDir": "src", 6 | "types": ["node"] 7 | }, 8 | "include": ["src/**/*.ts", "src/**/*.d.ts"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/core/.env.test: -------------------------------------------------------------------------------- 1 | TEST_DATABASE_CLIENT=sqlite 2 | NODE_ENV=test 3 | MAIN_WALLET_ADDRESS=TEST_MAIN_WALLET_ADDRESS_VALUE 4 | OPENAI_API_KEY=TEST_OPENAI_API_KEY_VALUE 5 | SOLANA_RPC_URL=https://api.mainnet-beta.solana.com 6 | WALLET_PUBLIC_KEY=2weMjPLLybRMMva1fM3U31goWWrCpF59CHWNhnCJ9Vyh -------------------------------------------------------------------------------- /packages/plugin-sgx/src/index.ts: -------------------------------------------------------------------------------- 1 | import { sgxPlugin } from './plugins/sgxPlugin'; 2 | 3 | 4 | 5 | export * from './plugins/sgxPlugin'; 6 | export * from './providers/sgxAttestationProvider'; 7 | export * from './types/attestation'; 8 | 9 | 10 | export default sgxPlugin; 11 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/ios/RN_ShakeyOs/main.m: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | #import "AppDelegate.h" 4 | 5 | int main(int argc, char *argv[]) 6 | { 7 | @autoreleasepool { 8 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /packages/adapter-postgres/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../core/tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "dist", 5 | "rootDir": "src", 6 | "strict": true 7 | }, 8 | "include": ["src/**/*.ts"], 9 | "exclude": ["node_modules", "dist"] 10 | } 11 | -------------------------------------------------------------------------------- /packages/adapter-qdrant/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../core/tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "dist", 5 | "rootDir": "src", 6 | "strict": true 7 | }, 8 | "include": ["src/**/*.ts"], 9 | "exclude": ["node_modules", "dist"] 10 | } 11 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * @format 3 | */ 4 | 5 | import {AppRegistry} from 'react-native'; 6 | import App from './App'; 7 | import {name as appName} from './app.json'; 8 | import 'react-native-gesture-handler'; 9 | 10 | AppRegistry.registerComponent(appName, () => App); 11 | -------------------------------------------------------------------------------- /client/web/src/main.tsx: -------------------------------------------------------------------------------- 1 | import { StrictMode } from "react"; 2 | import { createRoot } from "react-dom/client"; 3 | import "./index.css"; 4 | import App from "./App.tsx"; 5 | 6 | createRoot(document.getElementById("root")!).render( 7 | 8 | 9 | 10 | ); 11 | -------------------------------------------------------------------------------- /packages/plugin-sgx/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../core/tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "dist", 5 | "rootDir": "src", 6 | "types": [ 7 | "node" 8 | ] 9 | }, 10 | "include": [ 11 | "src/**/*.ts", 12 | ] 13 | } -------------------------------------------------------------------------------- /packages/plugin-tee-log/src/index.ts: -------------------------------------------------------------------------------- 1 | import { teeLogPlugin } from './plugins/teeLogPlugin'; 2 | import { TeeLogService } from './services/teeLogService'; 3 | 4 | export * from './plugins/teeLogPlugin'; 5 | export * from './types'; 6 | export { TeeLogService }; 7 | 8 | export default teeLogPlugin; 9 | 10 | -------------------------------------------------------------------------------- /packages/core/elizaConfig.example.yaml: -------------------------------------------------------------------------------- 1 | # Load custom actions from the actions directory 2 | 3 | # Clone this into a elizaConfig.yaml file that is ignored by git 4 | 5 | # Paths are relative to the core/src directory 6 | 7 | actions: 8 | - name: epicAction 9 | path: ./custom_actions/epicAction.ts 10 | -------------------------------------------------------------------------------- /packages/plugin-tee-log/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../core/tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "dist", 5 | "rootDir": "src", 6 | "types": [ 7 | "node" 8 | ] 9 | }, 10 | "include": [ 11 | "src/**/*.ts", 12 | ] 13 | } -------------------------------------------------------------------------------- /packages/plugin-tee-verifiable-log/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | outDir: "dist", 6 | sourcemap: true, 7 | clean: true, 8 | format: ["esm"], // Ensure you're targeting CommonJS 9 | external: [], 10 | }); 11 | -------------------------------------------------------------------------------- /packages/plugin-di/src/index.ts: -------------------------------------------------------------------------------- 1 | // Export all files for Eliza on Flow 2 | export * as symbols from "./symbols"; 3 | export * from "./decorators"; 4 | export * from "./types"; 5 | export * from "./factories"; 6 | export * from "./templates"; 7 | export * from "./di"; 8 | export * from "./actions"; 9 | export * from "./evaluators"; 10 | -------------------------------------------------------------------------------- /packages/plugin-twitter/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | outDir: "dist", 6 | sourcemap: true, 7 | clean: true, 8 | format: ["esm"], 9 | external: ["dotenv", "fs", "path", "https", "http", "agentkeepalive"], 10 | }); 11 | -------------------------------------------------------------------------------- /packages/client-lens/src/types.ts: -------------------------------------------------------------------------------- 1 | export type Profile = { 2 | id: string; 3 | profileId: string; 4 | name?: string | null; 5 | handle?: string; 6 | pfp?: string; 7 | bio?: string | null; 8 | url?: string; 9 | }; 10 | 11 | export type BroadcastResult = { 12 | id?: string; 13 | txId?: string; 14 | }; 15 | -------------------------------------------------------------------------------- /packages/client-lens/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../core/tsconfig.json", 3 | "compilerOptions": { 4 | "jsx": "react", 5 | "outDir": "dist", 6 | "rootDir": "./src", 7 | "strict": true 8 | }, 9 | "include": [ 10 | "src/**/*.ts", 11 | "__tests__/test-utils.ts" 12 | ] 13 | } -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-all.zip 4 | networkTimeout=10000 5 | validateDistributionUrl=true 6 | zipStoreBase=GRADLE_USER_HOME 7 | zipStorePath=wrapper/dists 8 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/ios/Shakey_RN.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-all.zip 4 | networkTimeout=10000 5 | validateDistributionUrl=true 6 | zipStoreBase=GRADLE_USER_HOME 7 | zipStorePath=wrapper/dists 8 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/ios/RN_ShakeyOs.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/__tests__/App.test.tsx: -------------------------------------------------------------------------------- 1 | /** 2 | * @format 3 | */ 4 | 5 | import React from 'react'; 6 | import ReactTestRenderer from 'react-test-renderer'; 7 | import App from '../App'; 8 | 9 | test('renders correctly', async () => { 10 | await ReactTestRenderer.act(() => { 11 | ReactTestRenderer.create(); 12 | }); 13 | }); 14 | -------------------------------------------------------------------------------- /packages/_examples/plugin-with-di/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../core/tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "dist", 5 | "rootDir": "src", 6 | "types": ["node"], 7 | "experimentalDecorators": true, 8 | "emitDecoratorMetadata": true 9 | }, 10 | "include": ["src/**/*.ts"] 11 | } 12 | -------------------------------------------------------------------------------- /packages/client-slack/vitest.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'vitest/config' 2 | 3 | export default defineConfig({ 4 | test: { 5 | globals: true, 6 | environment: 'node', 7 | include: ['__tests__/**/*.test.ts'], 8 | coverage: { 9 | provider: 'v8', 10 | reporter: ['text', 'json', 'html'], 11 | }, 12 | }, 13 | }) 14 | -------------------------------------------------------------------------------- /packages/plugin-whatsapp/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../core/tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "./dist", 5 | "rootDir": "src", 6 | "baseUrl": ".", 7 | "types": ["node", "jest"] 8 | }, 9 | "include": ["src/**/*.ts"], 10 | "exclude": ["node_modules", "dist", "**/*.test.ts"] 11 | } 12 | -------------------------------------------------------------------------------- /scripts/jsdoc-automation/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | format: ["cjs", "esm"], 6 | dts: true, 7 | splitting: false, 8 | sourcemap: true, 9 | clean: true, 10 | target: "node16", 11 | outDir: "dist", 12 | treeshake: true, 13 | }); 14 | -------------------------------------------------------------------------------- /packages/client-slack/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../core/tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "dist", 5 | "rootDir": "src", 6 | "moduleResolution": "Bundler", 7 | "allowImportingTsExtensions": true, 8 | "allowArbitraryExtensions": true 9 | }, 10 | "include": ["src/**/*.ts"] 11 | } 12 | -------------------------------------------------------------------------------- /packages/client-telegram/vitest.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "vitest/config"; 2 | 3 | export default defineConfig({ 4 | test: { 5 | globals: true, 6 | environment: "node", 7 | include: ["__tests__/**/*.test.ts"], 8 | coverage: { 9 | reporter: ["text", "json", "html"], 10 | }, 11 | }, 12 | }); 13 | -------------------------------------------------------------------------------- /packages/client-twitter/vitest.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'vitest/config'; 2 | 3 | export default defineConfig({ 4 | test: { 5 | globals: true, 6 | environment: 'node', 7 | include: ['__tests__/**/*.test.ts'], 8 | coverage: { 9 | reporter: ['text', 'json', 'html'], 10 | }, 11 | }, 12 | }); 13 | -------------------------------------------------------------------------------- /packages/core/src/config.ts: -------------------------------------------------------------------------------- 1 | import dotenv from "dotenv"; 2 | import path from "path"; 3 | import { fileURLToPath } from "url"; 4 | 5 | const __filename = fileURLToPath(import.meta.url); 6 | const __dirname = path.dirname(__filename); 7 | 8 | // Load environment variables from root .env file 9 | dotenv.config({ path: path.resolve(__dirname, "../../../.env") }); 10 | -------------------------------------------------------------------------------- /packages/client-telegram-account/vitest.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'vitest/config'; 2 | 3 | export default defineConfig({ 4 | test: { 5 | globals: true, 6 | environment: 'node', 7 | include: ['__tests__/**/*.test.ts'], 8 | coverage: { 9 | reporter: ['text', 'json', 'html'], 10 | }, 11 | }, 12 | }); 13 | -------------------------------------------------------------------------------- /scripts/jsdoc-automation/.gitignore: -------------------------------------------------------------------------------- 1 | # Dependencies 2 | node_modules 3 | .pnpm-store 4 | 5 | # Build outputs 6 | dist 7 | build 8 | 9 | # Environment variables 10 | .env 11 | .env.local 12 | .env.*.local 13 | 14 | # Logs 15 | *.log 16 | npm-debug.log* 17 | pnpm-debug.log* 18 | 19 | # Editor directories 20 | .idea 21 | .vscode 22 | *.suo 23 | *.ntvs* 24 | *.njsproj 25 | *.sln -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/metro.config.js: -------------------------------------------------------------------------------- 1 | const {getDefaultConfig, mergeConfig} = require('@react-native/metro-config'); 2 | 3 | /** 4 | * Metro configuration 5 | * https://reactnative.dev/docs/metro 6 | * 7 | * @type {import('metro-config').MetroConfig} 8 | */ 9 | const config = {}; 10 | 11 | module.exports = mergeConfig(getDefaultConfig(__dirname), config); 12 | -------------------------------------------------------------------------------- /client/web/src/routes/chat.tsx: -------------------------------------------------------------------------------- 1 | import { useParams } from "react-router"; 2 | import Chat from "@/components/chat"; 3 | import { UUID } from "@elizaos/core"; 4 | 5 | export default function AgentRoute() { 6 | const { agentId } = useParams<{ agentId: UUID }>(); 7 | 8 | if (!agentId) return No data.; 9 | 10 | return ; 11 | } 12 | -------------------------------------------------------------------------------- /client/mobile/expo-shakey-example-app/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "expo/tsconfig.base", 3 | "compilerOptions": { 4 | "strict": true, 5 | "paths": { 6 | "@/*": [ 7 | "./*" 8 | ] 9 | } 10 | }, 11 | "include": [ 12 | "**/*.ts", 13 | "**/*.tsx", 14 | ".expo/types/**/*.ts", 15 | "expo-env.d.ts" 16 | , "app/index.tsx" ] 17 | } 18 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/metro.config.js: -------------------------------------------------------------------------------- 1 | const {getDefaultConfig, mergeConfig} = require('@react-native/metro-config'); 2 | 3 | /** 4 | * Metro configuration 5 | * https://reactnative.dev/docs/metro 6 | * 7 | * @type {import('@react-native/metro-config').MetroConfig} 8 | */ 9 | const config = {}; 10 | 11 | module.exports = mergeConfig(getDefaultConfig(__dirname), config); 12 | -------------------------------------------------------------------------------- /packages/plugin-twitter/src/types.ts: -------------------------------------------------------------------------------- 1 | import { z } from "zod"; 2 | 3 | export interface TweetContent { 4 | text: string; 5 | } 6 | 7 | export const TweetSchema = z.object({ 8 | text: z.string().describe("The text of the tweet"), 9 | }); 10 | 11 | export const isTweetContent = (obj: unknown): obj is TweetContent => { 12 | return TweetSchema.safeParse(obj).success; 13 | }; 14 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /scripts/update-biome-rules.mjs: -------------------------------------------------------------------------------- 1 | import fs from 'fs'; 2 | 3 | const biomePath = './biome.json'; 4 | const content = fs.readFileSync(biomePath, 'utf8'); 5 | 6 | // Replace all "off" with "warn" but only within rule definitions 7 | const updated = content.replace(/: "off"/g, ': "warn"'); 8 | 9 | fs.writeFileSync(biomePath, updated); 10 | console.log('Updated biome.json rules from "off" to "warn"'); -------------------------------------------------------------------------------- /client/web/src/components/ui/collapsible.tsx: -------------------------------------------------------------------------------- 1 | import * as CollapsiblePrimitive from "@radix-ui/react-collapsible"; 2 | 3 | const Collapsible = CollapsiblePrimitive.Root; 4 | 5 | const CollapsibleTrigger = CollapsiblePrimitive.CollapsibleTrigger; 6 | 7 | const CollapsibleContent = CollapsiblePrimitive.CollapsibleContent; 8 | 9 | export { Collapsible, CollapsibleTrigger, CollapsibleContent }; 10 | -------------------------------------------------------------------------------- /packages/client-discord/vitest.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'vitest/config'; 2 | import { resolve } from 'path'; 3 | 4 | export default defineConfig({ 5 | test: { 6 | globals: true, 7 | environment: 'node', 8 | }, 9 | resolve: { 10 | alias: { 11 | '@elizaos/core': resolve(__dirname, '../core/src'), 12 | }, 13 | }, 14 | }); 15 | -------------------------------------------------------------------------------- /packages/plugin-di/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../core/tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "dist", 5 | "rootDir": "src", 6 | "types": [ 7 | "node" 8 | ], 9 | "experimentalDecorators": true, 10 | "emitDecoratorMetadata": true, 11 | }, 12 | "include": [ 13 | "src/**/*.ts" 14 | ] 15 | } 16 | -------------------------------------------------------------------------------- /packages/plugin-twitter/vitest.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'vitest/config'; 2 | import { resolve } from 'path'; 3 | 4 | export default defineConfig({ 5 | test: { 6 | globals: true, 7 | environment: 'node', 8 | }, 9 | resolve: { 10 | alias: { 11 | '@elizaos/core': resolve(__dirname, '../core/src'), 12 | }, 13 | }, 14 | }); 15 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/settings.gradle: -------------------------------------------------------------------------------- 1 | pluginManagement { includeBuild("../node_modules/@react-native/gradle-plugin") } 2 | plugins { id("com.facebook.react.settings") } 3 | extensions.configure(com.facebook.react.ReactSettingsExtension){ ex -> ex.autolinkLibrariesFromCommand() } 4 | rootProject.name = 'Shakey_RN' 5 | include ':app' 6 | includeBuild('../node_modules/@react-native/gradle-plugin') 7 | -------------------------------------------------------------------------------- /client/web/src/components/ui/skeleton.tsx: -------------------------------------------------------------------------------- 1 | import { cn } from "@/lib/utils"; 2 | 3 | function Skeleton({ 4 | className, 5 | ...props 6 | }: React.HTMLAttributes) { 7 | return ( 8 | 12 | ); 13 | } 14 | 15 | export { Skeleton }; 16 | -------------------------------------------------------------------------------- /packages/plugin-twitter/src/index.ts: -------------------------------------------------------------------------------- 1 | import type { Plugin } from "@elizaos/core"; 2 | import { postAction } from "./actions/post"; 3 | 4 | export const twitterPlugin: Plugin = { 5 | name: "twitter", 6 | description: "Twitter integration plugin for posting tweets", 7 | actions: [postAction], 8 | evaluators: [], 9 | providers: [], 10 | }; 11 | 12 | export default twitterPlugin; 13 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/src/screens/Chat/ChatScreen.jsx: -------------------------------------------------------------------------------- 1 | import {StyleSheet, Text, View} from 'react-native'; 2 | import PageContainer from '../../components/PageContainer'; 3 | import Chat from '../../components/Chat/Chat'; 4 | 5 | const ChatScreen = () => { 6 | return ( 7 | //Displaying the agent chat room 8 | 9 | ); 10 | }; 11 | 12 | export default ChatScreen; 13 | 14 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/debug/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 9 | 10 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/settings.gradle: -------------------------------------------------------------------------------- 1 | pluginManagement { includeBuild("../node_modules/@react-native/gradle-plugin") } 2 | plugins { id("com.facebook.react.settings") } 3 | extensions.configure(com.facebook.react.ReactSettingsExtension){ ex -> ex.autolinkLibrariesFromCommand() } 4 | rootProject.name = 'RN_ShakeyOs' 5 | include ':app' 6 | includeBuild('../node_modules/@react-native/gradle-plugin') 7 | -------------------------------------------------------------------------------- /client/web/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ElizaOS - Client 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /packages/plugin-node/src/types.ts: -------------------------------------------------------------------------------- 1 | import { z } from "zod"; 2 | 3 | export const FileLocationResultSchema = z.object({ 4 | fileLocation: z.string().min(1), 5 | }); 6 | 7 | export type FileLocationResult = z.infer; 8 | 9 | export function isFileLocationResult(obj: unknown): obj is FileLocationResult { 10 | return FileLocationResultSchema.safeParse(obj).success; 11 | } 12 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/Gemfile: -------------------------------------------------------------------------------- 1 | source 'https://rubygems.org' 2 | 3 | # You may use http://rbenv.org/ or https://rvm.io/ to install and use this version 4 | ruby ">= 2.6.10" 5 | 6 | # Exclude problematic versions of cocoapods and activesupport that causes build failures. 7 | gem 'cocoapods', '>= 1.13', '!= 1.15.0', '!= 1.15.1' 8 | gem 'activesupport', '>= 6.1.7.5', '!= 7.1.0' 9 | gem 'xcodeproj', '< 1.26.0' 10 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/src/debug/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 9 | 10 | -------------------------------------------------------------------------------- /packages/client-instagram/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | outDir: "dist", 6 | sourcemap: true, 7 | clean: true, 8 | format: ["esm"], 9 | external: [ 10 | "sharp", 11 | "fs", 12 | "path", 13 | "instagram-private-api", 14 | // Add other externals as needed 15 | ], 16 | }); -------------------------------------------------------------------------------- /packages/client-telegram/src/config/default.json5: -------------------------------------------------------------------------------- 1 | { 2 | bot: { 3 | testEnv: false, 4 | }, 5 | server: { 6 | https: false, 7 | port: 3000, 8 | static: false, 9 | }, 10 | gameServer: { 11 | validateInitData: true, 12 | inactivityTimeout: 300, 13 | disconnectTimeout: 180, 14 | fakeRoom: { 15 | create: false, 16 | }, 17 | }, 18 | } 19 | -------------------------------------------------------------------------------- /client/mobile/expo-shakey-example-app/app/constants/colors.js: -------------------------------------------------------------------------------- 1 | export default { 2 | primary: '#4DBB6D', 3 | primaryLight: '#d5f7df', 4 | textColor: '#282828', 5 | white: '#FFFFFF', 6 | black: '#212020', 7 | shadow: '#F8F8F8F8', 8 | 9 | lightGrey: '#f4f4f4', 10 | extraLightGrey: '#212324', 11 | lightWhite: '#f4f8f7', 12 | grey: '#888888', 13 | red: '#e74c3c', 14 | dark: '#2C2C2E', 15 | }; 16 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/src/constants/colors.js: -------------------------------------------------------------------------------- 1 | export default { 2 | primary: '#4DBB6D', 3 | primaryLight: '#d5f7df', 4 | textColor: '#282828', 5 | white: '#FFFFFF', 6 | black: '#212020', 7 | shadow: '#F8F8F8F8', 8 | 9 | lightGrey: '#f4f4f4', 10 | extraLightGrey: '#212324', 11 | lightWhite: '#f4f8f7', 12 | grey: '#888888', 13 | red: '#e74c3c', 14 | dark: '#2C2C2E', 15 | }; 16 | -------------------------------------------------------------------------------- /.vscode/tasks.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=733558 3 | // for the documentation about the tasks.json format 4 | "version": "2.0.0", 5 | "tasks": [ 6 | { 7 | "type": "typescript", 8 | "tsconfig": "packages/core/tsconfig.json", 9 | "problemMatcher": ["$tsc"], 10 | "label": "tsbuild", 11 | "group": "build" 12 | } 13 | ] 14 | } 15 | -------------------------------------------------------------------------------- /packages/plugin-tee-log/src/plugins/teeLogPlugin.ts: -------------------------------------------------------------------------------- 1 | import type { Plugin } from "@elizaos/core"; 2 | import { TeeLogService } from "../services/teeLogService"; 3 | 4 | export const teeLogPlugin: Plugin = { 5 | name: "TEE-log", 6 | description: "Support verifiable logging for eliza running in TEE", 7 | actions: [], 8 | providers: [], 9 | evaluators: [], 10 | services: [new TeeLogService()], 11 | clients: [], 12 | }; 13 | -------------------------------------------------------------------------------- /prettier.config.cjs: -------------------------------------------------------------------------------- 1 | /** @type {import('prettier').Config} */ 2 | module.exports = { 3 | endOfLine: "lf", 4 | semi: true, 5 | singleQuote: false, 6 | tabWidth: 4, 7 | trailingComma: "es5", 8 | bracketSpacing: true, 9 | printWidth: 80, 10 | useTabs: false, // Add this to enforce spaces 11 | indent: 4, // Add this to match tabWidth 12 | trimTrailingWhitespace: true, // Add this for trailing spaces 13 | }; 14 | -------------------------------------------------------------------------------- /scripts/jsdoc-automation/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "strict": true, 4 | "esModuleInterop": true, 5 | "skipLibCheck": true, 6 | "target": "ES2020", 7 | "module": "ESNext", 8 | "moduleResolution": "node", 9 | "resolveJsonModule": true, 10 | "isolatedModules": true 11 | }, 12 | "include": ["src/**/*.ts"], 13 | "exclude": ["node_modules", "dist"] 14 | } 15 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/Gemfile: -------------------------------------------------------------------------------- 1 | source 'https://rubygems.org' 2 | 3 | # You may use http://rbenv.org/ or https://rvm.io/ to install and use this version 4 | ruby ">= 2.6.10" 5 | 6 | # Exclude problematic versions of cocoapods and activesupport that causes build failures. 7 | gem 'cocoapods', '>= 1.13', '!= 1.15.0', '!= 1.15.1' 8 | gem 'activesupport', '>= 6.1.7.5', '!= 7.1.0' 9 | gem 'xcodeproj', '< 1.26.0' 10 | gem 'concurrent-ruby', '< 1.3.4' 11 | -------------------------------------------------------------------------------- /packages/plugin-sgx/src/plugins/sgxPlugin.ts: -------------------------------------------------------------------------------- 1 | import type { Plugin } from "@elizaos/core"; 2 | import { sgxAttestationProvider } from "../providers/sgxAttestationProvider"; 3 | 4 | export const sgxPlugin: Plugin = { 5 | name: "sgx", 6 | description: "Intel SGX plugin for Eliza, providing SGX attestation", 7 | actions: [], 8 | providers: [sgxAttestationProvider], 9 | evaluators: [], 10 | services: [], 11 | clients: [], 12 | }; 13 | -------------------------------------------------------------------------------- /packages/core/vitest.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "vitest/config"; 2 | import path from "path"; 3 | 4 | export default defineConfig({ 5 | test: { 6 | setupFiles: ["./src/test_resources/testSetup.ts"], 7 | environment: "node", 8 | globals: true, 9 | testTimeout: 120000, 10 | }, 11 | resolve: { 12 | alias: { 13 | "@": path.resolve(__dirname, "./src"), 14 | }, 15 | }, 16 | }); 17 | -------------------------------------------------------------------------------- /agent/jest.config.js: -------------------------------------------------------------------------------- 1 | /** @type {import('ts-jest').JestConfigWithTsJest} */ 2 | export default { 3 | preset: "ts-jest", 4 | testEnvironment: "node", 5 | extensionsToTreatAsEsm: [".ts"], 6 | moduleNameMapper: { 7 | "^(\\.{1,2}/.*)\\.js$": "$1", 8 | }, 9 | transform: { 10 | "^.+\\.tsx?$": [ 11 | "ts-jest", 12 | { 13 | useESM: true, 14 | }, 15 | ], 16 | }, 17 | }; 18 | -------------------------------------------------------------------------------- /client/web/src/components/input-copy.tsx: -------------------------------------------------------------------------------- 1 | import { Input } from "./ui/input"; 2 | import { Label } from "./ui/label"; 3 | 4 | export default function InputCopy({ 5 | title, 6 | value, 7 | }: { 8 | title: string; 9 | value: string | number | undefined; 10 | }) { 11 | return ( 12 | 13 | {title} 14 | 15 | 16 | ); 17 | } 18 | -------------------------------------------------------------------------------- /packages/core/src/test_resources/testSetup.ts: -------------------------------------------------------------------------------- 1 | import dotenv from "dotenv"; 2 | import path from "path"; 3 | 4 | // Load test environment variables 5 | const envPath = path.resolve(__dirname, "../../.env.test"); 6 | console.log("Current directory:", __dirname); 7 | console.log("Trying to load env from:", envPath); 8 | const result = dotenv.config({ path: envPath }); 9 | if (result.error) { 10 | console.error("Error loading .env.test:", result.error); 11 | } 12 | -------------------------------------------------------------------------------- /packages/plugin-sgx/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@elizaos/plugin-sgx", 3 | "version": "0.1.9", 4 | "main": "dist/index.js", 5 | "type": "module", 6 | "types": "dist/index.d.ts", 7 | "dependencies": { 8 | "@elizaos/core": "workspace:*" 9 | }, 10 | "devDependencies": { 11 | "@types/node": "^20.0.0", 12 | "tsup": "8.3.5" 13 | }, 14 | "scripts": { 15 | "build": "tsup --format esm --dts", 16 | "dev": "tsup --format esm --dts --watch" 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /agent/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../packages/core/tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "dist", 5 | "rootDir": ".", 6 | "module": "ESNext", 7 | "moduleResolution": "Bundler", 8 | "types": ["node", "jest"] 9 | }, 10 | "ts-node": { 11 | "experimentalSpecifierResolution": "node", 12 | "transpileOnly": true, 13 | "esm": true 14 | }, 15 | "include": ["src"] 16 | } 17 | -------------------------------------------------------------------------------- /client/mobile/expo-shakey-example-app/app/utils/apis/apis.js: -------------------------------------------------------------------------------- 1 | import axios from "axios"; 2 | import { Alert } from "react-native"; 3 | 4 | export const sendMessage = async (agentId, text) => { 5 | try { 6 | const response = await axios.post(`/${agentId}/message`, {text: text}); 7 | return response.data; 8 | } catch (error) { 9 | console.log('Something went wrong while sending Message!!', error?.messgae); 10 | Alert.alert('Error!!', error?.messgae); 11 | } 12 | }; 13 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/src/utils/apis/apis.js: -------------------------------------------------------------------------------- 1 | import axios from "axios"; 2 | import { Alert } from "react-native"; 3 | 4 | export const sendMessage = async (agentId, text) => { 5 | try { 6 | const response = await axios.post(`/${agentId}/message`, {text: text}); 7 | return response.data; 8 | } catch (error) { 9 | console.log('Something went wrong while sending Message!!', error?.messgae); 10 | Alert.alert('Error!!', error?.messgae); 11 | } 12 | }; 13 | -------------------------------------------------------------------------------- /client/web/src/components/page-title.tsx: -------------------------------------------------------------------------------- 1 | export default function PageTitle({ 2 | title, 3 | subtitle, 4 | }: { 5 | title: string; 6 | subtitle?: string; 7 | }) { 8 | return ( 9 | 10 | {title} 11 | {subtitle ? ( 12 | {subtitle} 13 | ) : null} 14 | 15 | ); 16 | } 17 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/__tests__/App.test.tsx: -------------------------------------------------------------------------------- 1 | /** 2 | * @format 3 | */ 4 | 5 | import 'react-native'; 6 | import React from 'react'; 7 | import App from '../App'; 8 | 9 | // Note: import explicitly to use the types shipped with jest. 10 | import {it} from '@jest/globals'; 11 | 12 | // Note: test renderer must be required after react-native. 13 | import renderer from 'react-test-renderer'; 14 | 15 | it('renders correctly', () => { 16 | renderer.create(); 17 | }); 18 | -------------------------------------------------------------------------------- /packages/core/src/test_resources/types.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * Interface representing a User. 3 | * @typedef {Object} User 4 | * @property {string} id - The user's ID. 5 | * @property {string} [email] - The user's email (optional). 6 | * @property {string} [phone] - The user's phone number (optional). 7 | * @property {string} [role] - The user's role (optional). 8 | */ 9 | export interface User { 10 | id: string; 11 | email?: string; 12 | phone?: string; 13 | role?: string; 14 | } 15 | -------------------------------------------------------------------------------- /scripts/integrationTests.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # Check Node.js version 4 | REQUIRED_NODE_VERSION=23 5 | CURRENT_NODE_VERSION=$(node -v | cut -d'.' -f1 | sed 's/v//') 6 | 7 | if (( CURRENT_NODE_VERSION < REQUIRED_NODE_VERSION )); then 8 | echo "Error: Node.js version must be $REQUIRED_NODE_VERSION or higher. Current version is $CURRENT_NODE_VERSION." 9 | exit 1 10 | fi 11 | 12 | # Navigate to the script's directory 13 | cd "$(dirname "$0")"/.. 14 | 15 | cd tests 16 | node test1.mjs 17 | -------------------------------------------------------------------------------- /client/web/src/lib/utils.ts: -------------------------------------------------------------------------------- 1 | import { clsx, type ClassValue } from "clsx"; 2 | import { twMerge } from "tailwind-merge"; 3 | import dayjs from "dayjs"; 4 | import localizedFormat from "dayjs/plugin/localizedFormat"; 5 | 6 | export function cn(...inputs: ClassValue[]) { 7 | return twMerge(clsx(inputs)); 8 | } 9 | 10 | dayjs.extend(localizedFormat); 11 | 12 | export const moment = dayjs; 13 | 14 | export const formatAgentName = (name: string) => { 15 | return name.substring(0, 2); 16 | }; 17 | -------------------------------------------------------------------------------- /packages/adapter-postgres/seed.sql: -------------------------------------------------------------------------------- 1 | 2 | INSERT INTO public.accounts (id, name, email, "avatarUrl", details) 3 | VALUES ('00000000-0000-0000-0000-000000000000', 'Default Agent', 'default@agent.com', '', '{}'::jsonb); 4 | 5 | INSERT INTO public.rooms (id) 6 | VALUES ('00000000-0000-0000-0000-000000000000'); 7 | 8 | INSERT INTO public.participants (id, "userId", "roomId") 9 | VALUES ('00000000-0000-0000-0000-000000000001', '00000000-0000-0000-0000-000000000000', '00000000-0000-0000-0000-000000000000'); 10 | -------------------------------------------------------------------------------- /packages/adapter-supabase/seed.sql: -------------------------------------------------------------------------------- 1 | INSERT INTO public.accounts (id, name, email, "avatarUrl", details) VALUES ('00000000-0000-0000-0000-000000000000', 'Default Agent', 'default@agent.com', '', '{}'); 2 | INSERT INTO public.rooms (id, "createdAt") VALUES ('00000000-0000-0000-0000-000000000000', NOW()); 3 | INSERT INTO public.participants (id, "createdAt", "userId", "roomId", "userState", last_message_read) VALUES ('00000000-0000-0000-0000-000000000000', NOW(), 'Default Agent', '00000000-0000-0000-0000-000000000000', NULL, NULL); 4 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/proguard-rules.pro: -------------------------------------------------------------------------------- 1 | # Add project specific ProGuard rules here. 2 | # By default, the flags in this file are appended to flags specified 3 | # in /usr/local/Cellar/android-sdk/24.3.3/tools/proguard/proguard-android.txt 4 | # You can edit the include path and order by changing the proguardFiles 5 | # directive in build.gradle. 6 | # 7 | # For more details, see 8 | # http://developer.android.com/guide/developing/tools/proguard.html 9 | 10 | # Add any project specific keep options here: 11 | -------------------------------------------------------------------------------- /scripts/clean.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # Navigate to the script's directory 4 | cd "$(dirname "$0")"/.. 5 | echo "Cleanup started." 6 | # Find and remove node_modules directories, dist directories. 7 | find . -type d -name "node_modules" -exec rm -rf {} + \ 8 | -o -type d -name "dist" -exec rm -rf {} + \ 9 | -o -type d -name ".turbo" -exec rm -rf {} + 10 | 11 | # Remove core cache 12 | rm -rf ./packages/core/cache 13 | 14 | # Remove pnpm lockfile 15 | rm ./pnpm-lock.yaml 16 | 17 | echo "Cleanup completed." 18 | exit 0 19 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/app/proguard-rules.pro: -------------------------------------------------------------------------------- 1 | # Add project specific ProGuard rules here. 2 | # By default, the flags in this file are appended to flags specified 3 | # in /usr/local/Cellar/android-sdk/24.3.3/tools/proguard/proguard-android.txt 4 | # You can edit the include path and order by changing the proguardFiles 5 | # directive in build.gradle. 6 | # 7 | # For more details, see 8 | # http://developer.android.com/guide/developing/tools/proguard.html 9 | 10 | # Add any project specific keep options here: 11 | -------------------------------------------------------------------------------- /packages/_examples/plugin/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@elizaos/plugin-sample", 3 | "version": "0.1.5-alpha.5", 4 | "main": "dist/index.js", 5 | "type": "module", 6 | "types": "dist/index.d.ts", 7 | "dependencies": { 8 | "@elizaos/core": "workspace:*" 9 | }, 10 | "devDependencies": { 11 | "tsup": "8.3.5", 12 | "@types/node": "^20.0.0" 13 | }, 14 | "scripts": { 15 | "build": "tsup --format esm --dts", 16 | "dev": "tsup --format esm --dts --watch" 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /packages/_examples/plugin/src/providers/sampleProvider.ts: -------------------------------------------------------------------------------- 1 | import { 2 | type Provider, 3 | type IAgentRuntime, 4 | type Memory, 5 | type State, 6 | elizaLogger, 7 | } from "@elizaos/core"; 8 | 9 | export const sampleProvider: Provider = { 10 | // biome-ignore lint: 'runtime' is intentionally unused 11 | get: async (runtime: IAgentRuntime, message: Memory, state: State) => { 12 | // Data retrieval logic for the provider 13 | elizaLogger.log("Retrieving data in sampleProvider..."); 14 | }, 15 | }; 16 | -------------------------------------------------------------------------------- /packages/plugin-node/src/echogarden.d.ts: -------------------------------------------------------------------------------- 1 | declare module "echogarden" { 2 | interface SynthesizeOptions { 3 | engine: string; 4 | voice: string; 5 | } 6 | 7 | interface RawAudio { 8 | audioChannels: { buffer: ArrayBuffer }[]; 9 | sampleRate: number; 10 | } 11 | 12 | interface SynthesizeResult { 13 | audio: Buffer | RawAudio; 14 | } 15 | 16 | export function synthesize( 17 | text: string, 18 | options: SynthesizeOptions 19 | ): Promise; 20 | } 21 | -------------------------------------------------------------------------------- /packages/client-lens/vitest.config.ts: -------------------------------------------------------------------------------- 1 | /// 2 | import { defineConfig } from 'vitest/config'; 3 | 4 | export default defineConfig({ 5 | test: { 6 | globals: true, 7 | environment: 'node', 8 | coverage: { 9 | provider: 'v8', 10 | reporter: ['text', 'json', 'html'], 11 | include: ['src/**/*.ts'], 12 | exclude: ['**/*.d.ts', '**/*.test.ts', '**/types.ts'] 13 | }, 14 | setupFiles: [], 15 | testTimeout: 10000 16 | } 17 | }); 18 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/ios/.xcode.env: -------------------------------------------------------------------------------- 1 | # This `.xcode.env` file is versioned and is used to source the environment 2 | # used when running script phases inside Xcode. 3 | # To customize your local environment, you can create an `.xcode.env.local` 4 | # file that is not versioned. 5 | 6 | # NODE_BINARY variable contains the PATH to the node executable. 7 | # 8 | # Customize the NODE_BINARY variable here. 9 | # For example, to use nvm with brew, add the following line 10 | # . "$(brew --prefix nvm)/nvm.sh" --no-use 11 | export NODE_BINARY=$(command -v node) 12 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/ios/.xcode.env: -------------------------------------------------------------------------------- 1 | # This `.xcode.env` file is versioned and is used to source the environment 2 | # used when running script phases inside Xcode. 3 | # To customize your local environment, you can create an `.xcode.env.local` 4 | # file that is not versioned. 5 | 6 | # NODE_BINARY variable contains the PATH to the node executable. 7 | # 8 | # Customize the NODE_BINARY variable here. 9 | # For example, to use nvm with brew, add the following line 10 | # . "$(brew --prefix nvm)/nvm.sh" --no-use 11 | export NODE_BINARY=$(command -v node) 12 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "ES2020", 4 | "module": "commonjs", 5 | "moduleResolution": "node", 6 | "esModuleInterop": true, 7 | "skipLibCheck": true, 8 | "forceConsistentCasingInFileNames": true, 9 | "allowImportingTsExtensions": true, 10 | "noEmit": true 11 | }, 12 | "files": [], 13 | "references": [ 14 | { 15 | "path": "packages/core" 16 | }, 17 | { 18 | "path": "packages/client-slack" 19 | } 20 | ] 21 | } 22 | -------------------------------------------------------------------------------- /scripts/bug_hunt/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "elizaos-bug-hunter", 3 | "version": "1.0.0", 4 | "private": true, 5 | "type": "module", 6 | "scripts": { 7 | "lint": "biome lint .", 8 | "lint:fix": "biome check --apply .", 9 | "format": "biome format .", 10 | "format:fix": "biome format --write .", 11 | "check": "biome check" 12 | }, 13 | "devDependencies": { 14 | "@biomejs/biome": "1.9.4", 15 | "@types/node": "^20.11.5" 16 | }, 17 | "engines": { 18 | "node": ">=18.0.0" 19 | } 20 | } -------------------------------------------------------------------------------- /packages/plugin-di/src/di.ts: -------------------------------------------------------------------------------- 1 | import type { Plugin } from "@elizaos/core"; 2 | import { Container, type interfaces } from "inversify"; 3 | import { FACTORIES } from "./symbols"; 4 | import { createPlugin } from "./factories"; 5 | import type { PluginOptions } from "./types"; 6 | 7 | const globalContainer = new Container(); 8 | 9 | // ----- Bind to factory functions ----- 10 | 11 | globalContainer 12 | .bind>>(FACTORIES.PluginFactory) 13 | .toFactory, [PluginOptions]>(createPlugin); 14 | 15 | export { globalContainer }; 16 | -------------------------------------------------------------------------------- /packages/adapter-postgres/src/__tests__/docker-compose.test.yml: -------------------------------------------------------------------------------- 1 | # yaml-language-server: $schema=https://raw.githubusercontent.com/compose-spec/compose-spec/master/schema/compose-spec.json 2 | version: '3.8' 3 | services: 4 | postgres-test: 5 | image: pgvector/pgvector:pg16 6 | environment: 7 | POSTGRES_USER: postgres 8 | POSTGRES_PASSWORD: postgres 9 | POSTGRES_DB: eliza_test 10 | ports: 11 | - "5433:5432" 12 | healthcheck: 13 | test: ["CMD-SHELL", "pg_isready -U postgres"] 14 | interval: 5s 15 | timeout: 5s 16 | retries: 5 -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- 1 | { 2 | // Use IntelliSense to learn about possible attributes. 3 | // Hover to view descriptions of existing attributes. 4 | // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 5 | "version": "0.2.0", 6 | "configurations": [ 7 | { 8 | "type": "node", 9 | "request": "launch", 10 | "name": "Launch via pnpm", 11 | "runtimeExecutable": "pnpm", 12 | "runtimeArgs": ["run", "dev"], 13 | "skipFiles": ["/**"] 14 | } 15 | ] 16 | } 17 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/src/components/PageContainer.jsx: -------------------------------------------------------------------------------- 1 | import {StyleSheet, Text, View} from 'react-native'; 2 | import {SafeAreaView} from 'react-native-safe-area-context'; 3 | 4 | const PageContainer = ({children, style}) => { 5 | return ( 6 | 7 | {children} 8 | 9 | ); 10 | }; 11 | 12 | export default PageContainer; 13 | 14 | const styles = StyleSheet.create({ 15 | container: { 16 | flex: 1, 17 | paddingHorizontal: 15, 18 | paddingVertical: 10, 19 | }, 20 | }); 21 | -------------------------------------------------------------------------------- /scripts/jsdoc-automation/src/AIService/types/index.ts: -------------------------------------------------------------------------------- 1 | import type { ASTQueueItem } from "../../types"; 2 | 3 | export interface FileDocsGroup { 4 | filePath: string; 5 | classes: ASTQueueItem[]; 6 | methods: ASTQueueItem[]; 7 | interfaces: ASTQueueItem[]; 8 | types: ASTQueueItem[]; 9 | functions: ASTQueueItem[]; 10 | } 11 | 12 | export interface OrganizedDocs { 13 | classes: ASTQueueItem[]; 14 | methods: ASTQueueItem[]; 15 | interfaces: ASTQueueItem[]; 16 | types: ASTQueueItem[]; 17 | functions: ASTQueueItem[]; 18 | variables: ASTQueueItem[]; 19 | } 20 | -------------------------------------------------------------------------------- /packages/_examples/plugin-with-di/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@elizaos/plugin-sample-with-di", 3 | "version": "0.1.9-alpha.1", 4 | "main": "dist/index.js", 5 | "type": "module", 6 | "types": "dist/index.d.ts", 7 | "dependencies": { 8 | "@elizaos/core": "workspace:*", 9 | "@elizaos/plugin-di": "workspace:*" 10 | }, 11 | "devDependencies": { 12 | "tsup": "8.3.5", 13 | "@types/node": "^20.0.0" 14 | }, 15 | "scripts": { 16 | "build": "tsup --format esm --dts", 17 | "dev": "tsup --format esm --dts --watch" 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /client/web/components.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://ui.shadcn.com/schema.json", 3 | "style": "new-york", 4 | "rsc": false, 5 | "tsx": true, 6 | "tailwind": { 7 | "config": "tailwind.config.ts", 8 | "css": "src/index.css", 9 | "baseColor": "zinc", 10 | "cssVariables": true, 11 | "prefix": "" 12 | }, 13 | "aliases": { 14 | "components": "@/components", 15 | "utils": "@/lib/utils", 16 | "ui": "@/components/ui", 17 | "lib": "@/lib", 18 | "hooks": "@/hooks" 19 | }, 20 | "iconLibrary": "lucide" 21 | } 22 | -------------------------------------------------------------------------------- /client/mobile/expo-shakey-example-app/.gitignore: -------------------------------------------------------------------------------- 1 | # Learn more https://docs.github.com/en/get-started/getting-started-with-git/ignoring-files 2 | 3 | # dependencies 4 | node_modules/ 5 | 6 | # Expo 7 | .expo/ 8 | dist/ 9 | web-build/ 10 | expo-env.d.ts 11 | 12 | # Native 13 | *.orig.* 14 | *.jks 15 | *.p8 16 | *.p12 17 | *.key 18 | *.mobileprovision 19 | 20 | # Metro 21 | .metro-health-check* 22 | 23 | # debug 24 | npm-debug.* 25 | yarn-debug.* 26 | yarn-error.* 27 | 28 | # macOS 29 | .DS_Store 30 | *.pem 31 | 32 | # local env files 33 | .env*.local 34 | 35 | # typescript 36 | *.tsbuildinfo 37 | 38 | app-example 39 | -------------------------------------------------------------------------------- /packages/adapter-mongodb/src/__tests__/docker-compose.test.yml: -------------------------------------------------------------------------------- 1 | # yaml-language-server: $schema=https://raw.githubusercontent.com/compose-spec/compose-spec/master/schema/compose-spec.json 2 | version: '3.8' 3 | services: 4 | mongodb-test: 5 | image: mongo:latest 6 | environment: 7 | MONGO_INITDB_ROOT_USERNAME: mongodb 8 | MONGO_INITDB_ROOT_PASSWORD: mongodb 9 | MONGO_INITDB_DATABASE: eliza_test 10 | ports: 11 | - "27018:27017" 12 | healthcheck: 13 | test: ["CMD", "mongosh", "--eval", "db.adminCommand('ping')"] 14 | interval: 5s 15 | timeout: 5s 16 | retries: 5 -------------------------------------------------------------------------------- /packages/plugin-tee-log/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@elizaos/plugin-tee-log", 3 | "version": "0.1.9", 4 | "main": "dist/index.js", 5 | "type": "module", 6 | "types": "dist/index.d.ts", 7 | "dependencies": { 8 | "@elizaos/core": "workspace:*", 9 | "@elizaos/plugin-tee": "workspace:*", 10 | "@elizaos/plugin-sgx": "workspace:*", 11 | "better-sqlite3": "11.6.0", 12 | "elliptic": "6.6.1" 13 | }, 14 | "devDependencies": { 15 | "@types/node": "^20.0.0", 16 | "tsup": "8.3.5" 17 | }, 18 | "scripts": { 19 | "build": "tsup --format esm --dts", 20 | "dev": "tsup --format esm --dts --watch" 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /.devcontainer/Dockerfile: -------------------------------------------------------------------------------- 1 | ARG NODE_VER=23.5.0 2 | ARG BASE_IMAGE=node:${NODE_VER} 3 | FROM $BASE_IMAGE 4 | 5 | ENV DEBIAN_FRONTEND=noninteractive 6 | 7 | # Install pnpm globally and install necessary build tools 8 | RUN apt-get update \ 9 | && apt-get install -y \ 10 | git \ 11 | python3 \ 12 | make \ 13 | g++ \ 14 | nano \ 15 | vim \ 16 | && apt-get clean \ 17 | && rm -rf /var/lib/apt/lists/* 18 | 19 | ARG PNPM_VER=9.15.2 20 | RUN npm install -g pnpm@${PNPM_VER} 21 | 22 | # Set Python 3 as the default python 23 | RUN ln -s /usr/bin/python3 /usr/bin/python 24 | ENV DEBIAN_FRONTEND=dialog 25 | -------------------------------------------------------------------------------- /packages/client-instagram/src/lib/state.ts: -------------------------------------------------------------------------------- 1 | import { IgApiClient } from 'instagram-private-api'; 2 | import type { InstagramState } from '../types'; 3 | 4 | // Create a singleton for the Instagram API client 5 | let igClient: IgApiClient | null = null; 6 | 7 | export const getIgClient = () => { 8 | if (!igClient) { 9 | igClient = new IgApiClient(); 10 | } 11 | return igClient; 12 | }; 13 | 14 | // Create initial state 15 | export const createInitialState = (): InstagramState => ({ 16 | accessToken: null, 17 | longLivedToken: null, 18 | profile: null, 19 | isInitialized: false, 20 | lastCheckedMediaId: null, 21 | }); -------------------------------------------------------------------------------- /packages/plugin-whatsapp/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | outDir: "dist", 6 | sourcemap: true, 7 | clean: true, 8 | format: ["esm"], // Ensure you're targeting CommonJS 9 | external: [ 10 | "dotenv", // Externalize dotenv to prevent bundling 11 | "fs", // Externalize fs to use Node.js built-in module 12 | "path", // Externalize other built-ins if necessary 13 | "@reflink/reflink", 14 | "@node-llama-cpp", 15 | "https", 16 | "http", 17 | "agentkeepalive", 18 | ], 19 | }); 20 | -------------------------------------------------------------------------------- /jest.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "testEnvironment": "node", 3 | "extensionsToTreatAsEsm": [".ts"], 4 | "transform": { 5 | "^.+\\.tsx?$": [ 6 | "ts-jest", 7 | { 8 | "useESM": true, 9 | "tsconfig": { 10 | "module": "esnext", 11 | "target": "esnext", 12 | "moduleResolution": "bundler" 13 | } 14 | } 15 | ] 16 | }, 17 | "moduleNameMapper": { 18 | "^@elizaos/core$": "/packages/core/src/index.ts", 19 | "^@elizaos/(.*)$": "/packages/$1/src/index.ts" 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /packages/plugin-node/src/services/index.ts: -------------------------------------------------------------------------------- 1 | import { AwsS3Service } from "./awsS3.ts"; 2 | import { BrowserService } from "./browser.ts"; 3 | import { ImageDescriptionService } from "./image.ts"; 4 | import { LlamaService } from "./llama.ts"; 5 | import { PdfService } from "./pdf.ts"; 6 | import { SpeechService } from "./speech.ts"; 7 | import { TranscriptionService } from "./transcription.ts"; 8 | import { VideoService } from "./video.ts"; 9 | 10 | export { 11 | AwsS3Service, 12 | BrowserService, 13 | ImageDescriptionService, 14 | LlamaService, 15 | PdfService, 16 | SpeechService, 17 | TranscriptionService, 18 | VideoService, 19 | }; 20 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/android/build.gradle: -------------------------------------------------------------------------------- 1 | buildscript { 2 | ext { 3 | buildToolsVersion = "35.0.0" 4 | minSdkVersion = 24 5 | compileSdkVersion = 35 6 | targetSdkVersion = 34 7 | ndkVersion = "26.1.10909125" 8 | kotlinVersion = "1.9.24" 9 | } 10 | repositories { 11 | google() 12 | mavenCentral() 13 | } 14 | dependencies { 15 | classpath("com.android.tools.build:gradle") 16 | classpath("com.facebook.react:react-native-gradle-plugin") 17 | classpath("org.jetbrains.kotlin:kotlin-gradle-plugin") 18 | } 19 | } 20 | 21 | apply plugin: "com.facebook.react.rootproject" 22 | -------------------------------------------------------------------------------- /packages/plugin-node/src/templates.ts: -------------------------------------------------------------------------------- 1 | export const getFileLocationTemplate = ` 2 | {{recentMessages}} 3 | 4 | extract the file location from the users message or the attachment in the message history that they are referring to. 5 | your job is to infer the correct attachment based on the recent messages, the users most recent message, and the attachments in the message 6 | image attachments are the result of the users uploads, or images you have created. 7 | only respond with the file location, no other text. 8 | typically the file location is in the form of a URL or a file path. 9 | 10 | \`\`\`json 11 | { 12 | "fileLocation": "file location text goes here" 13 | } 14 | \`\`\` 15 | `; 16 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/src/components/PageContainer.jsx: -------------------------------------------------------------------------------- 1 | import { StyleSheet } from 'react-native'; 2 | import colors from '../constants/colors'; 3 | import { SafeAreaView } from 'react-native-safe-area-context'; 4 | 5 | const PageContainer = ({ children, style }) => { 6 | return ( 7 | 8 | {children} 9 | 10 | ); 11 | }; 12 | 13 | export default PageContainer; 14 | 15 | const styles = StyleSheet.create({ 16 | container: { 17 | flex: 1, 18 | paddingVertical: 10, 19 | paddingHorizontal: 15, 20 | backgroundColor: colors.white, 21 | }, 22 | }); 23 | -------------------------------------------------------------------------------- /client/mobile/expo-shakey-example-app/app/components/PageContainer.jsx: -------------------------------------------------------------------------------- 1 | import { StyleSheet } from 'react-native'; 2 | import colors from '../constants/colors'; 3 | import { SafeAreaView } from 'react-native-safe-area-context'; 4 | 5 | const PageContainer = ({ children, style }) => { 6 | return ( 7 | 8 | {children} 9 | 10 | ); 11 | }; 12 | 13 | export default PageContainer; 14 | 15 | const styles = StyleSheet.create({ 16 | container: { 17 | flex: 1, 18 | paddingVertical: 10, 19 | paddingHorizontal: 15, 20 | backgroundColor: colors.white, 21 | }, 22 | }); 23 | -------------------------------------------------------------------------------- /packages/adapter-mongodb/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../core/tsconfig.json", 3 | "compilerOptions": { 4 | "module": "ESNext", 5 | "outDir": "dist", 6 | "rootDir": "src", 7 | "strict": true, 8 | "esModuleInterop": true, 9 | "skipLibCheck": true, 10 | "forceConsistentCasingInFileNames": true, 11 | "moduleResolution": "bundler", 12 | "resolveJsonModule": true, 13 | "isolatedModules": true, 14 | "lib": ["ES2021", "DOM"], 15 | "target": "ES2021" 16 | }, 17 | "include": [ 18 | "src/**/*.ts" 19 | ], 20 | "exclude": [ 21 | "node_modules", 22 | "dist" 23 | ] 24 | } 25 | -------------------------------------------------------------------------------- /packages/adapter-sqljs/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | outDir: "dist", 6 | sourcemap: true, 7 | clean: true, 8 | format: ["esm"], // Ensure you're targeting CommonJS 9 | external: [ 10 | "dotenv", // Externalize dotenv to prevent bundling 11 | "fs", // Externalize fs to use Node.js built-in module 12 | "path", // Externalize other built-ins if necessary 13 | "@reflink/reflink", 14 | "@node-llama-cpp", 15 | "https", 16 | "http", 17 | "agentkeepalive", 18 | // Add other modules you want to externalize 19 | ], 20 | }); 21 | -------------------------------------------------------------------------------- /packages/client-twitter/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | outDir: "dist", 6 | sourcemap: true, 7 | clean: true, 8 | format: ["esm"], // Ensure you're targeting CommonJS 9 | external: [ 10 | "dotenv", // Externalize dotenv to prevent bundling 11 | "fs", // Externalize fs to use Node.js built-in module 12 | "path", // Externalize other built-ins if necessary 13 | "@reflink/reflink", 14 | "@node-llama-cpp", 15 | "https", 16 | "http", 17 | "agentkeepalive", 18 | // Add other modules you want to externalize 19 | ], 20 | }); 21 | -------------------------------------------------------------------------------- /packages/client-slack/jest.config.js: -------------------------------------------------------------------------------- 1 | /** @type {import('ts-jest').JestConfigWithTsJest} */ 2 | export default { 3 | preset: "ts-jest", 4 | testEnvironment: "node", 5 | roots: ["/src"], 6 | testMatch: ["**/__tests__/**/*.ts", "**/?(*.)+(spec|test).ts"], 7 | setupFilesAfterEnv: ["/src/tests/setup.ts"], 8 | collectCoverageFrom: [ 9 | "src/**/*.ts", 10 | "!src/tests/**", 11 | "!src/examples/**", 12 | "!src/**/*.d.ts", 13 | ], 14 | coverageThreshold: { 15 | global: { 16 | branches: 80, 17 | functions: 80, 18 | lines: 80, 19 | statements: 80, 20 | }, 21 | }, 22 | }; 23 | -------------------------------------------------------------------------------- /packages/client-telegram/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | outDir: "dist", 6 | sourcemap: true, 7 | clean: true, 8 | format: ["esm"], // Ensure you're targeting CommonJS 9 | external: [ 10 | "dotenv", // Externalize dotenv to prevent bundling 11 | "fs", // Externalize fs to use Node.js built-in module 12 | "path", // Externalize other built-ins if necessary 13 | "@reflink/reflink", 14 | "@node-llama-cpp", 15 | "https", 16 | "http", 17 | "agentkeepalive", 18 | // Add other modules you want to externalize 19 | ], 20 | }); 21 | -------------------------------------------------------------------------------- /packages/client-telegram-account/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | outDir: "dist", 6 | sourcemap: true, 7 | clean: true, 8 | format: ["esm"], // Ensure you're targeting CommonJS 9 | external: [ 10 | "dotenv", // Externalize dotenv to prevent bundling 11 | "fs", // Externalize fs to use Node.js built-in module 12 | "path", // Externalize other built-ins if necessary 13 | "@reflink/reflink", 14 | "@node-llama-cpp", 15 | "https", 16 | "http", 17 | "agentkeepalive", 18 | // Add other modules you want to externalize 19 | ], 20 | }); 21 | -------------------------------------------------------------------------------- /packages/adapter-redis/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | outDir: "dist", 6 | sourcemap: true, 7 | clean: true, 8 | format: ["esm"], // Ensure you're targeting CommonJS 9 | external: [ 10 | "dotenv", // Externalize dotenv to prevent bundling 11 | "fs", // Externalize fs to use Node.js built-in module 12 | "path", // Externalize other built-ins if necessary 13 | "@reflink/reflink", 14 | "@node-llama-cpp", 15 | "https", 16 | "http", 17 | "agentkeepalive", 18 | "uuid", 19 | // Add other modules you want to externalize 20 | ], 21 | }); 22 | -------------------------------------------------------------------------------- /packages/plugin-node/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | outDir: "dist", 6 | sourcemap: true, 7 | clean: true, 8 | format: ["esm"], // Ensure you're targeting CommonJS 9 | external: [ 10 | "dotenv", // Externalize dotenv to prevent bundling 11 | "fs", // Externalize fs to use Node.js built-in module 12 | "path", // Externalize other built-ins if necessary 13 | "@reflink/reflink", 14 | "@node-llama-cpp", 15 | "https", 16 | "http", 17 | "agentkeepalive", 18 | "zod", 19 | // Add other modules you want to externalize 20 | ], 21 | }); 22 | -------------------------------------------------------------------------------- /packages/adapter-mongodb/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | outDir: "dist", 6 | sourcemap: true, 7 | clean: true, 8 | format: ["esm"], 9 | dts: true, 10 | target: "node16", 11 | external: [ 12 | "mongodb", 13 | "uuid", 14 | "@ai16z/eliza", 15 | "dotenv", 16 | "fs", 17 | "path", 18 | "@reflink/reflink", 19 | "@node-llama-cpp", 20 | "https", 21 | "http", 22 | "agentkeepalive", 23 | "@anush008/tokenizers" 24 | ], 25 | esbuildOptions(options) { 26 | options.conditions = ["module"] 27 | }, 28 | }); 29 | -------------------------------------------------------------------------------- /packages/adapter-postgres/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | outDir: "dist", 6 | sourcemap: true, 7 | clean: true, 8 | format: ["esm"], // Ensure you're targeting CommonJS 9 | external: [ 10 | "dotenv", // Externalize dotenv to prevent bundling 11 | "fs", // Externalize fs to use Node.js built-in module 12 | "path", // Externalize other built-ins if necessary 13 | "@reflink/reflink", 14 | "@node-llama-cpp", 15 | "https", 16 | "http", 17 | "agentkeepalive", 18 | "uuid", 19 | // Add other modules you want to externalize 20 | ], 21 | }); 22 | -------------------------------------------------------------------------------- /packages/adapter-qdrant/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | outDir: "dist", 6 | sourcemap: true, 7 | clean: true, 8 | format: ["esm"], // Ensure you're targeting CommonJS 9 | external: [ 10 | "dotenv", // Externalize dotenv to prevent bundling 11 | "fs", // Externalize fs to use Node.js built-in module 12 | "path", // Externalize other built-ins if necessary 13 | "@reflink/reflink", 14 | "@node-llama-cpp", 15 | "https", 16 | "http", 17 | "agentkeepalive", 18 | "uuid", 19 | // Add other modules you want to externalize 20 | ], 21 | }); 22 | -------------------------------------------------------------------------------- /packages/adapter-supabase/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | outDir: "dist", 6 | sourcemap: true, 7 | clean: true, 8 | format: ["esm"], // Ensure you're targeting CommonJS 9 | external: [ 10 | "dotenv", // Externalize dotenv to prevent bundling 11 | "fs", // Externalize fs to use Node.js built-in module 12 | "path", // Externalize other built-ins if necessary 13 | "@reflink/reflink", 14 | "@node-llama-cpp", 15 | "https", 16 | "http", 17 | "agentkeepalive", 18 | "uuid", 19 | // Add other modules you want to externalize 20 | ], 21 | }); 22 | -------------------------------------------------------------------------------- /packages/plugin-sgx/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | outDir: "dist", 6 | sourcemap: true, 7 | clean: true, 8 | format: ["esm"], // Ensure you're targeting CommonJS 9 | external: [ 10 | "dotenv", // Externalize dotenv to prevent bundling 11 | "fs", // Externalize fs to use Node.js built-in module 12 | "path", // Externalize other built-ins if necessary 13 | "@reflink/reflink", 14 | "@node-llama-cpp", 15 | "https", 16 | "http", 17 | "agentkeepalive", 18 | "safe-buffer", 19 | // Add other modules you want to externalize 20 | ], 21 | }); 22 | -------------------------------------------------------------------------------- /client/web/src/components/array-input.tsx: -------------------------------------------------------------------------------- 1 | import { Input } from "./ui/input"; 2 | import { Label } from "./ui/label"; 3 | 4 | export default function ArrayInput({ 5 | title, 6 | data, 7 | }: { 8 | title: string; 9 | data: string[]; 10 | }) { 11 | return ( 12 | 13 | {title} 14 | 15 | 16 | {data?.map((b: string, idx: number) => ( 17 | 18 | ))} 19 | 20 | 21 | 22 | ); 23 | } 24 | -------------------------------------------------------------------------------- /packages/_examples/plugin/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | outDir: "dist", 6 | sourcemap: true, 7 | clean: true, 8 | format: ["esm"], // Ensure you're targeting CommonJS 9 | external: [ 10 | "dotenv", // Externalize dotenv to prevent bundling 11 | "fs", // Externalize fs to use Node.js built-in module 12 | "path", // Externalize other built-ins if necessary 13 | "@reflink/reflink", 14 | "@node-llama-cpp", 15 | "https", 16 | "http", 17 | "agentkeepalive", 18 | "safe-buffer", 19 | // Add other modules you want to externalize 20 | ], 21 | }); 22 | -------------------------------------------------------------------------------- /packages/client-direct/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | outDir: "dist", 6 | sourcemap: true, 7 | clean: true, 8 | format: ["esm"], // Ensure you're targeting CommonJS 9 | external: [ 10 | "dotenv", // Externalize dotenv to prevent bundling 11 | "fs", // Externalize fs to use Node.js built-in module 12 | "path", // Externalize other built-ins if necessary 13 | "@reflink/reflink", 14 | "@node-llama-cpp", 15 | "https", 16 | "http", 17 | "agentkeepalive", 18 | "safe-buffer", 19 | // Add other modules you want to externalize 20 | ], 21 | }); 22 | -------------------------------------------------------------------------------- /packages/client-discord/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | outDir: "dist", 6 | sourcemap: true, 7 | clean: true, 8 | format: ["esm"], // Ensure you're targeting CommonJS 9 | external: [ 10 | "dotenv", // Externalize dotenv to prevent bundling 11 | "fs", // Externalize fs to use Node.js built-in module 12 | "path", // Externalize other built-ins if necessary 13 | "@reflink/reflink", 14 | "@node-llama-cpp", 15 | "https", 16 | "http", 17 | "agentkeepalive", 18 | "fluent-ffmpeg", 19 | // Add other modules you want to externalize 20 | ], 21 | }); 22 | -------------------------------------------------------------------------------- /packages/client-github/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | outDir: "dist", 6 | sourcemap: true, 7 | clean: true, 8 | format: ["esm"], // Ensure you're targeting CommonJS 9 | external: [ 10 | "dotenv", // Externalize dotenv to prevent bundling 11 | "fs", // Externalize fs to use Node.js built-in module 12 | "path", // Externalize other built-ins if necessary 13 | "@reflink/reflink", 14 | "@node-llama-cpp", 15 | "https", 16 | "http", 17 | "agentkeepalive", 18 | "safe-buffer", 19 | // Add other modules you want to externalize 20 | ], 21 | }); 22 | -------------------------------------------------------------------------------- /packages/plugin-image-generation/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | outDir: "dist", 6 | sourcemap: true, 7 | clean: true, 8 | format: ["esm"], // Ensure you're targeting CommonJS 9 | external: [ 10 | "dotenv", // Externalize dotenv to prevent bundling 11 | "fs", // Externalize fs to use Node.js built-in module 12 | "path", // Externalize other built-ins if necessary 13 | "@reflink/reflink", 14 | "@node-llama-cpp", 15 | "https", 16 | "http", 17 | "agentkeepalive", 18 | "zod", 19 | // Add other modules you want to externalize 20 | ], 21 | }); 22 | -------------------------------------------------------------------------------- /packages/plugin-tee-log/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | outDir: "dist", 6 | sourcemap: true, 7 | clean: true, 8 | format: ["esm"], // Ensure you're targeting CommonJS 9 | external: [ 10 | "dotenv", // Externalize dotenv to prevent bundling 11 | "fs", // Externalize fs to use Node.js built-in module 12 | "path", // Externalize other built-ins if necessary 13 | "@reflink/reflink", 14 | "@node-llama-cpp", 15 | "https", 16 | "http", 17 | "agentkeepalive", 18 | "safe-buffer", 19 | // Add other modules you want to externalize 20 | ], 21 | }); 22 | -------------------------------------------------------------------------------- /packages/plugin-twitter/src/templates.ts: -------------------------------------------------------------------------------- 1 | export const tweetTemplate = ` 2 | # Context 3 | {{recentMessages}} 4 | 5 | # Topics 6 | {{topics}} 7 | 8 | # Post Directions 9 | {{postDirections}} 10 | 11 | # Recent interactions between {{agentName}} and other users: 12 | {{recentPostInteractions}} 13 | 14 | # Task 15 | Generate a tweet that: 16 | 1. Relates to the recent conversation or requested topic 17 | 2. Matches the character's style and voice 18 | 3. Is concise and engaging 19 | 4. Must be UNDER 180 characters (this is a strict requirement) 20 | 5. Speaks from the perspective of {{agentName}} 21 | 22 | Generate only the tweet text, no other commentary. 23 | 24 | Return the tweet in JSON format like: {"text": "your tweet here"}`; 25 | -------------------------------------------------------------------------------- /packages/_examples/plugin-with-di/src/samplePlugin.ts: -------------------------------------------------------------------------------- 1 | import type { PluginOptions } from '@elizaos/plugin-di'; 2 | import { CreateResourceAction } from "./actions/sampleAction"; 3 | import { SampleProvider } from "./providers/sampleProvider"; 4 | import { SampleEvaluator } from "./evaluators/sampleEvaluator"; 5 | import { SampleService } from './services/sampleService'; 6 | 7 | export const samplePlugin: PluginOptions = { 8 | name: "sample", 9 | description: "Enables creation and management of generic resources", 10 | actions: [CreateResourceAction], 11 | providers: [SampleProvider], 12 | evaluators: [SampleEvaluator], 13 | services: [SampleService], 14 | clients: [], 15 | }; 16 | 17 | export default samplePlugin; 18 | -------------------------------------------------------------------------------- /packages/_examples/plugin-with-di/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | outDir: "dist", 6 | sourcemap: true, 7 | clean: true, 8 | format: ["esm"], // Ensure you're targeting CommonJS 9 | external: [ 10 | "dotenv", // Externalize dotenv to prevent bundling 11 | "fs", // Externalize fs to use Node.js built-in module 12 | "path", // Externalize other built-ins if necessary 13 | "@reflink/reflink", 14 | "@node-llama-cpp", 15 | "https", 16 | "http", 17 | "agentkeepalive", 18 | "safe-buffer", 19 | // Add other modules you want to externalize 20 | ], 21 | }); 22 | -------------------------------------------------------------------------------- /packages/plugin-di/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | outDir: "dist", 6 | sourcemap: true, 7 | clean: true, 8 | format: ["esm"], // Using ES Modules format 9 | external: [ 10 | "dotenv", // Externalize dotenv to prevent bundling 11 | "fs", // Externalize fs to use Node.js built-in module 12 | "path", // Externalize other built-ins if necessary 13 | "https", 14 | "http", 15 | "agentkeepalive", 16 | "safe-buffer", 17 | // Add other modules you want to externalize 18 | "inversify", 19 | "reflect-metadata", 20 | "zod", 21 | "uuid", 22 | ], 23 | }); 24 | -------------------------------------------------------------------------------- /client/web/vite.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "vite"; 2 | import react from "@vitejs/plugin-react-swc"; 3 | import viteCompression from "vite-plugin-compression"; 4 | 5 | // https://vite.dev/config/ 6 | export default defineConfig({ 7 | plugins: [ 8 | react(), 9 | viteCompression({ 10 | algorithm: "brotliCompress", 11 | ext: ".br", 12 | threshold: 1024, 13 | }), 14 | ], 15 | clearScreen: false, 16 | build: { 17 | outDir: "dist", 18 | minify: true, 19 | cssMinify: true, 20 | sourcemap: false, 21 | cssCodeSplit: true, 22 | }, 23 | resolve: { 24 | alias: { 25 | "@": "/src", 26 | }, 27 | }, 28 | }); 29 | -------------------------------------------------------------------------------- /packages/_examples/plugin/src/plugins/samplePlugin.ts: -------------------------------------------------------------------------------- 1 | import type { Plugin } from "@elizaos/core"; 2 | import { createResourceAction } from "../actions/sampleAction"; 3 | import { sampleProvider } from "../providers/sampleProvider"; 4 | import { sampleEvaluator } from "../evaluators/sampleEvalutor"; 5 | import SampleService from "../services/sampleService"; 6 | 7 | export const samplePlugin: Plugin = { 8 | name: "sample", 9 | description: "Enables creation and management of generic resources", 10 | actions: [createResourceAction], 11 | providers: [sampleProvider], 12 | evaluators: [sampleEvaluator], 13 | // separate examples will be added for services and clients 14 | services: [new SampleService()], 15 | clients: [], 16 | }; 17 | -------------------------------------------------------------------------------- /packages/adapter-pglite/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | outDir: "dist", 6 | sourcemap: true, 7 | clean: true, 8 | format: ["esm"], // Ensure you're targeting CommonJS 9 | external: [ 10 | "dotenv", // Externalize dotenv to prevent bundling 11 | "fs", // Externalize fs to use Node.js built-in module 12 | "path", // Externalize other built-ins if necessary 13 | "@reflink/reflink", 14 | "@node-llama-cpp", 15 | "https", 16 | "http", 17 | "agentkeepalive", 18 | "@anush008/tokenizers", 19 | "uuid", 20 | // Add other modules you want to externalize 21 | ], 22 | }); 23 | -------------------------------------------------------------------------------- /packages/adapter-sqlite/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | outDir: "dist", 6 | sourcemap: true, 7 | clean: true, 8 | format: ["esm"], // Ensure you're targeting CommonJS 9 | external: [ 10 | "dotenv", // Externalize dotenv to prevent bundling 11 | "fs", // Externalize fs to use Node.js built-in module 12 | "path", // Externalize other built-ins if necessary 13 | "@reflink/reflink", 14 | "@node-llama-cpp", 15 | "https", 16 | "http", 17 | "agentkeepalive", 18 | "@anush008/tokenizers", 19 | "uuid", 20 | // Add other modules you want to externalize 21 | ], 22 | }); 23 | -------------------------------------------------------------------------------- /packages/plugin-tee/src/types/tee.ts: -------------------------------------------------------------------------------- 1 | export enum TEEMode { 2 | OFF = "OFF", 3 | LOCAL = "LOCAL", // For local development with simulator 4 | DOCKER = "DOCKER", // For docker development with simulator 5 | PRODUCTION = "PRODUCTION", // For production without simulator 6 | } 7 | 8 | export interface RemoteAttestationQuote { 9 | quote: string; 10 | timestamp: number; 11 | } 12 | 13 | export interface DeriveKeyAttestationData { 14 | agentId: string; 15 | publicKey: string; 16 | subject?: string; 17 | } 18 | 19 | export interface RemoteAttestationMessage { 20 | agentId: string; 21 | timestamp: number; 22 | message: { 23 | userId: string; 24 | roomId: string; 25 | content: string; 26 | } 27 | } -------------------------------------------------------------------------------- /scripts/derive-keys.js: -------------------------------------------------------------------------------- 1 | const { ethers } = require("ethers"); 2 | require("dotenv").config(); 3 | 4 | // Get and validate the private key 5 | const privateKey = process.env.EVM_PRIVATE_KEY; 6 | if (!privateKey) { 7 | throw new Error("EVM_PRIVATE_KEY is not set in environment variables"); 8 | } 9 | 10 | // Ensure the private key has the correct format 11 | const formattedPrivateKey = privateKey.startsWith("0x") 12 | ? privateKey 13 | : `0x${privateKey}`; 14 | 15 | // Create a wallet instance 16 | const wallet = new ethers.Wallet(formattedPrivateKey); 17 | 18 | console.log("\nWallet Information:"); 19 | console.log("------------------"); 20 | console.log("Public Key:", wallet.signingKey.publicKey); 21 | console.log("Wallet Address:", wallet.address); 22 | -------------------------------------------------------------------------------- /scripts/lint.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # Check Node.js version 4 | REQUIRED_NODE_VERSION=22 5 | CURRENT_NODE_VERSION=$(node -v | cut -d'.' -f1 | sed 's/v//') 6 | 7 | if (( CURRENT_NODE_VERSION < REQUIRED_NODE_VERSION )); then 8 | echo "Error: Node.js version must be $REQUIRED_NODE_VERSION or higher. Current version is $CURRENT_NODE_VERSION." 9 | exit 1 10 | fi 11 | 12 | # Navigate to the script's directory 13 | cd "$(dirname "$0")"/.. 14 | 15 | # Run Biome lint for the entire project 16 | echo -e "\033[1mRunning Biome lint\033[0m" 17 | if pnpm lint; then 18 | echo -e "\033[1;32mLint completed successfully\033[0m" 19 | else 20 | echo -e "\033[1;31mLint failed\033[0m" 21 | exit 1 22 | fi 23 | 24 | echo -e "\033[1mLint process completed.😎\033[0m" 25 | -------------------------------------------------------------------------------- /packages/client-lens/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | outDir: "dist", 6 | sourcemap: true, 7 | clean: true, 8 | format: ["esm"], // Ensure you're targeting CommonJS 9 | external: [ 10 | "dotenv", // Externalize dotenv to prevent bundling 11 | "fs", // Externalize fs to use Node.js built-in module 12 | "path", // Externalize other built-ins if necessary 13 | "@reflink/reflink", 14 | "@node-llama-cpp", 15 | "https", 16 | "http", 17 | "util", 18 | "form-data", 19 | "axios", 20 | "agentkeepalive", 21 | // Add other modules you want to externalize 22 | ], 23 | }); 24 | -------------------------------------------------------------------------------- /client/web/src/hooks/use-mobile.tsx: -------------------------------------------------------------------------------- 1 | import * as React from "react"; 2 | 3 | const MOBILE_BREAKPOINT = 768; 4 | 5 | export function useIsMobile() { 6 | const [isMobile, setIsMobile] = React.useState( 7 | undefined 8 | ); 9 | 10 | React.useEffect(() => { 11 | const mql = window.matchMedia( 12 | `(max-width: ${MOBILE_BREAKPOINT - 1}px)` 13 | ); 14 | const onChange = () => { 15 | setIsMobile(window.innerWidth < MOBILE_BREAKPOINT); 16 | }; 17 | mql.addEventListener("change", onChange); 18 | setIsMobile(window.innerWidth < MOBILE_BREAKPOINT); 19 | return () => mql.removeEventListener("change", onChange); 20 | }, []); 21 | 22 | return !!isMobile; 23 | } 24 | -------------------------------------------------------------------------------- /client/web/src/routes/overview.tsx: -------------------------------------------------------------------------------- 1 | import { useQuery } from "@tanstack/react-query"; 2 | import { apiClient } from "@/lib/api"; 3 | import Overview from "@/components/overview"; 4 | import { useParams } from "react-router"; 5 | import { type UUID } from "@elizaos/core"; 6 | 7 | export default function AgentRoute() { 8 | const { agentId } = useParams<{ agentId: UUID }>(); 9 | 10 | if (!agentId) return No data.; 11 | 12 | const query = useQuery({ 13 | queryKey: ["agent", agentId], 14 | queryFn: () => apiClient.getAgent(agentId), 15 | refetchInterval: 5_000, 16 | }); 17 | 18 | const character = query?.data?.character; 19 | 20 | if (!character) return null; 21 | 22 | return ; 23 | } 24 | -------------------------------------------------------------------------------- /packages/core/src/test_resources/constants.ts: -------------------------------------------------------------------------------- 1 | import type { UUID } from "@elizaos/core"; 2 | 3 | export const SERVER_URL = "http://localhost:7998"; 4 | export const SUPABASE_URL = "https://pronvzrzfwsptkojvudd.supabase.co"; 5 | export const SUPABASE_ANON_KEY = 6 | "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InByb252enJ6ZndzcHRrb2p2dWRkIiwicm9sZSI6ImFub24iLCJpYXQiOjE3MDY4NTYwNDcsImV4cCI6MjAyMjQzMjA0N30.I6_-XrqssUb2SWYg5DjsUqSodNS3_RPoET3-aPdqywM"; 7 | export const TEST_EMAIL = "testuser123@gmail.com"; 8 | export const TEST_PASSWORD = "testuser123@gmail.com"; 9 | export const TEST_EMAIL_2 = "testuser234@gmail.com"; 10 | export const TEST_PASSWORD_2 = "testuser234@gmail.com"; 11 | 12 | export const zeroUuid = "00000000-0000-0000-0000-000000000000" as UUID; 13 | -------------------------------------------------------------------------------- /packages/plugin-whatsapp/src/handlers/message.handler.ts: -------------------------------------------------------------------------------- 1 | import type { WhatsAppClient } from "../client"; 2 | import type { WhatsAppMessage } from "../types"; 3 | 4 | export class MessageHandler { 5 | constructor(private client: WhatsAppClient) {} 6 | 7 | async send(message: WhatsAppMessage): Promise { 8 | try { 9 | const response = await this.client.sendMessage(message); 10 | return response.data; 11 | } catch (error: unknown) { 12 | if (error instanceof Error) { 13 | throw new Error( 14 | `Failed to send WhatsApp message: ${error.message}` 15 | ); 16 | } 17 | throw new Error("Failed to send WhatsApp message"); 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /client/web/tsconfig.node.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo", 4 | "target": "ES2022", 5 | "lib": ["ES2023"], 6 | "module": "ESNext", 7 | "skipLibCheck": true, 8 | 9 | /* Bundler mode */ 10 | "moduleResolution": "bundler", 11 | "allowImportingTsExtensions": true, 12 | "isolatedModules": true, 13 | "moduleDetection": "force", 14 | "noEmit": true, 15 | 16 | /* Linting */ 17 | "strict": true, 18 | "noUnusedLocals": true, 19 | "noUnusedParameters": true, 20 | "noFallthroughCasesInSwitch": true, 21 | "noUncheckedSideEffectImports": true 22 | }, 23 | "include": ["vite.config.ts"] 24 | } 25 | -------------------------------------------------------------------------------- /packages/adapter-sqlite/src/sqlite_vec.ts: -------------------------------------------------------------------------------- 1 | import * as sqliteVec from "sqlite-vec"; 2 | import type { Database } from "better-sqlite3"; 3 | import { elizaLogger } from "@elizaos/core"; 4 | 5 | // Loads the sqlite-vec extensions into the provided SQLite database 6 | export function loadVecExtensions(db: Database): void { 7 | try { 8 | // Load sqlite-vec extensions 9 | sqliteVec.load(db); 10 | elizaLogger.log("sqlite-vec extensions loaded successfully."); 11 | } catch (error) { 12 | elizaLogger.error("Failed to load sqlite-vec extensions:", error); 13 | throw error; 14 | } 15 | } 16 | 17 | /** 18 | * @param db - An instance of better - sqlite3 Database 19 | */ 20 | export function load(db: Database): void { 21 | loadVecExtensions(db); 22 | } 23 | -------------------------------------------------------------------------------- /packages/plugin-image-generation/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@elizaos/plugin-image-generation", 3 | "version": "0.1.9", 4 | "type": "module", 5 | "main": "dist/index.js", 6 | "module": "dist/index.js", 7 | "types": "dist/index.d.ts", 8 | "exports": { 9 | "./package.json": "./package.json", 10 | ".": { 11 | "import": { 12 | "@elizaos/source": "./src/index.ts", 13 | "types": "./dist/index.d.ts", 14 | "default": "./dist/index.js" 15 | } 16 | } 17 | }, 18 | "files": [ 19 | "dist" 20 | ], 21 | "dependencies": { 22 | "@elizaos/core": "workspace:*", 23 | "tsup": "8.3.5" 24 | }, 25 | "scripts": { 26 | "build": "tsup --format esm --dts", 27 | "dev": "tsup --format esm --dts --watch" 28 | }, 29 | "peerDependencies": { 30 | "whatwg-url": "7.1.0" 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /packages/plugin-tee-log/src/adapters/sqliteTables.ts: -------------------------------------------------------------------------------- 1 | export const sqliteTables = ` 2 | BEGIN TRANSACTION; 3 | 4 | -- Table: tee_logs 5 | CREATE TABLE IF NOT EXISTS "tee_logs" ( 6 | "id" TEXT PRIMARY KEY, 7 | "agentId" TEXT NOT NULL, 8 | "roomId" TEXT NOT NULL, 9 | "userId" TEXT NOT NULL, 10 | "type" TEXT NOT NULL, 11 | "content" TEXT NOT NULL, 12 | "timestamp" TIMESTAMP DEFAULT CURRENT_TIMESTAMP, 13 | "signature" TEXT NOT NULL 14 | ); 15 | 16 | -- Table: tee_agents 17 | CREATE TABLE IF NOT EXISTS "tee_agents" ( 18 | "id" TEXT PRIMARY KEY, 19 | "agentId" TEXT NOT NULL, 20 | "agentName" TEXT NOT NULL, 21 | "createdAt" TIMESTAMP DEFAULT CURRENT_TIMESTAMP, 22 | "publicKey" TEXT NOT NULL, 23 | "attestation" TEXT NOT NULL 24 | ); 25 | 26 | COMMIT;`; 27 | -------------------------------------------------------------------------------- /client/web/version.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # Define the path to the lerna.json file 4 | LERNA_FILE="../../lerna.json" 5 | 6 | # Check if lerna.json exists 7 | if [ ! -f "$LERNA_FILE" ]; then 8 | echo "Error: $LERNA_FILE does not exist." 9 | exit 1 10 | fi 11 | 12 | # Extract the version property from lerna.json using grep and awk 13 | VERSION=$(grep -o '"version": *"[^"]*"' "$LERNA_FILE" | awk -F: '{ gsub(/[ ",]/, "", $2); print $2 }') 14 | 15 | # Check if version was successfully extracted 16 | if [ -z "$VERSION" ]; then 17 | echo "Error: Unable to extract version from $LERNA_FILE." 18 | exit 1 19 | fi 20 | 21 | # Create or overwrite info.json with the version property 22 | echo "{\"version\": \"$VERSION\"}" > src/lib/info.json 23 | 24 | # Confirm success 25 | echo "info.json created with version: $VERSION" -------------------------------------------------------------------------------- /packages/core/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | outDir: "dist", 6 | sourcemap: true, 7 | clean: true, 8 | format: ["esm"], // Ensure you're targeting CommonJS 9 | platform: "node", 10 | target: "node18", 11 | bundle: true, 12 | splitting: true, // Add this for better code splitting 13 | dts: true, // Generate declaration files 14 | external: [ 15 | "dotenv", // Externalize dotenv to prevent bundling 16 | "fs", // Externalize fs to use Node.js built-in module 17 | "path", // Externalize other built-ins if necessary 18 | "http", 19 | "https", 20 | // Add other modules you want to externalize 21 | "onnxruntime-node", 22 | "sharp", 23 | ], 24 | }); 25 | -------------------------------------------------------------------------------- /packages/adapter-postgres/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@elizaos/adapter-postgres", 3 | "version": "0.1.9", 4 | "type": "module", 5 | "main": "dist/index.js", 6 | "module": "dist/index.js", 7 | "types": "dist/index.d.ts", 8 | "exports": { 9 | "./package.json": "./package.json", 10 | ".": { 11 | "import": { 12 | "@elizaos/source": "./src/index.ts", 13 | "types": "./dist/index.d.ts", 14 | "default": "./dist/index.js" 15 | } 16 | } 17 | }, 18 | "files": [ 19 | "dist", 20 | "schema.sql", 21 | "seed.sql" 22 | ], 23 | "dependencies": { 24 | "@elizaos/core": "workspace:*", 25 | "@types/pg": "8.11.10", 26 | "pg": "8.13.1" 27 | }, 28 | "devDependencies": { 29 | "tsup": "8.3.5" 30 | }, 31 | "scripts": { 32 | "build": "tsup --format esm --dts", 33 | "dev": "tsup --format esm --dts --watch" 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /client/web/src/components/ui/textarea.tsx: -------------------------------------------------------------------------------- 1 | import * as React from "react"; 2 | 3 | import { cn } from "@/lib/utils"; 4 | 5 | const Textarea = React.forwardRef< 6 | HTMLTextAreaElement, 7 | React.ComponentProps<"textarea"> 8 | >(({ className, ...props }, ref) => { 9 | return ( 10 | 18 | ); 19 | }); 20 | Textarea.displayName = "Textarea"; 21 | 22 | export { Textarea }; 23 | -------------------------------------------------------------------------------- /packages/client-slack/src/services/slack.service.ts: -------------------------------------------------------------------------------- 1 | import { Service, type IAgentRuntime, ServiceType } from "@elizaos/core"; 2 | import { WebClient } from "@slack/web-api"; 3 | import type { ISlackService } from "../types/slack-types"; 4 | 5 | export class SlackService extends Service implements ISlackService { 6 | public client: WebClient; 7 | 8 | static get serviceType(): ServiceType { 9 | return ServiceType.SLACK; 10 | } 11 | 12 | get serviceType(): ServiceType { 13 | return ServiceType.SLACK; 14 | } 15 | 16 | async initialize(runtime: IAgentRuntime): Promise { 17 | const token = runtime.getSetting("SLACK_BOT_TOKEN"); 18 | if (!token) { 19 | throw new Error("SLACK_BOT_TOKEN is required"); 20 | } 21 | this.client = new WebClient(token); 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /packages/adapter-pglite/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@elizaos/adapter-pglite", 3 | "version": "0.1.9", 4 | "type": "module", 5 | "main": "dist/index.js", 6 | "module": "dist/index.js", 7 | "types": "dist/index.d.ts", 8 | "exports": { 9 | "./package.json": "./package.json", 10 | ".": { 11 | "import": { 12 | "@elizaos/source": "./src/index.ts", 13 | "types": "./dist/index.d.ts", 14 | "default": "./dist/index.js" 15 | } 16 | } 17 | }, 18 | "files": [ 19 | "dist" 20 | ], 21 | "dependencies": { 22 | "@electric-sql/pglite": "^0.2.15", 23 | "@elizaos/core": "workspace:*" 24 | }, 25 | "devDependencies": { 26 | "tsup": "8.3.5" 27 | }, 28 | "scripts": { 29 | "build": "tsup --format esm --dts", 30 | "dev": "tsup --format esm --dts --watch" 31 | }, 32 | "peerDependencies": { 33 | "whatwg-url": "7.1.0" 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /client/web/src/components/ui/label.tsx: -------------------------------------------------------------------------------- 1 | import * as React from "react"; 2 | import * as LabelPrimitive from "@radix-ui/react-label"; 3 | import { cva, type VariantProps } from "class-variance-authority"; 4 | 5 | import { cn } from "@/lib/utils"; 6 | 7 | const labelVariants = cva( 8 | "text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70" 9 | ); 10 | 11 | const Label = React.forwardRef< 12 | React.ElementRef, 13 | React.ComponentPropsWithoutRef & 14 | VariantProps 15 | >(({ className, ...props }, ref) => ( 16 | 21 | )); 22 | Label.displayName = LabelPrimitive.Root.displayName; 23 | 24 | export { Label }; 25 | -------------------------------------------------------------------------------- /packages/client-auto/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | outDir: "dist", 6 | sourcemap: true, 7 | clean: true, 8 | format: ["esm"], // Ensure you're targeting CommonJS 9 | external: [ 10 | "dotenv", // Externalize dotenv to prevent bundling 11 | "fs", // Externalize fs to use Node.js built-in module 12 | "path", // Externalize other built-ins if necessary 13 | "@reflink/reflink", 14 | "@node-llama-cpp", 15 | "https", 16 | "http", 17 | "agentkeepalive", 18 | "bs58", 19 | "borsh", 20 | "@solana/buffer-layout", 21 | "stream", 22 | "buffer", 23 | "rpc-websockets", 24 | "@solana/web3.js", 25 | // Add other modules you want to externalize 26 | ], 27 | }); 28 | -------------------------------------------------------------------------------- /scripts/bug_hunt/types/index.ts: -------------------------------------------------------------------------------- 1 | export interface PluginAnalysis { 2 | typeCheck: { 3 | success: boolean; 4 | errors: Array<{ 5 | file: string; 6 | line: number; 7 | column: number; 8 | message: string; 9 | code: string; 10 | }>; 11 | }; 12 | biome: { 13 | results: { 14 | lint: { 15 | diagnostics: Array<{ 16 | file: string; 17 | message: string; 18 | severity: string; 19 | rule: string; 20 | }>; 21 | }; 22 | }; 23 | }; 24 | dependencies: { 25 | dependencies: { 26 | circular: string[]; 27 | unused: string[]; 28 | missing: string[]; 29 | }; 30 | }; 31 | duplicates: { 32 | report: { 33 | duplicates: Array<{ 34 | files: string[]; 35 | lines: number; 36 | tokens: number; 37 | }>; 38 | }; 39 | }; 40 | } -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/ios/RN_ShakeyOsTests/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | BNDL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | 24 | 25 | -------------------------------------------------------------------------------- /packages/core/src/providers.ts: -------------------------------------------------------------------------------- 1 | import type { IAgentRuntime, State, Memory } from "./types.ts"; 2 | 3 | /** 4 | * Formats provider outputs into a string which can be injected into the context. 5 | * @param runtime The AgentRuntime object. 6 | * @param message The incoming message object. 7 | * @param state The current state object. 8 | * @returns A string that concatenates the outputs of each provider. 9 | */ 10 | export async function getProviders( 11 | runtime: IAgentRuntime, 12 | message: Memory, 13 | state?: State 14 | ) { 15 | const providerResults = ( 16 | await Promise.all( 17 | runtime.providers.map(async (provider) => { 18 | return await provider.get(runtime, message, state); 19 | }) 20 | ) 21 | ).filter((result) => result != null && result !== ""); 22 | 23 | return providerResults.join("\n"); 24 | } 25 | -------------------------------------------------------------------------------- /packages/adapter-sqljs/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@elizaos/adapter-sqljs", 3 | "version": "0.1.9", 4 | "type": "module", 5 | "main": "dist/index.js", 6 | "module": "dist/index.js", 7 | "types": "dist/index.d.ts", 8 | "exports": { 9 | "./package.json": "./package.json", 10 | ".": { 11 | "import": { 12 | "@elizaos/source": "./src/index.ts", 13 | "types": "./dist/index.d.ts", 14 | "default": "./dist/index.js" 15 | } 16 | } 17 | }, 18 | "files": [ 19 | "dist" 20 | ], 21 | "dependencies": { 22 | "@elizaos/core": "workspace:*", 23 | "@types/sql.js": "1.4.9", 24 | "sql.js": "1.12.0", 25 | "uuid": "11.0.3" 26 | }, 27 | "devDependencies": { 28 | "tsup": "8.3.5" 29 | }, 30 | "scripts": { 31 | "build": "tsup --format esm --dts", 32 | "dev": "tsup --format esm --dts --watch" 33 | }, 34 | "peerDependencies": { 35 | "whatwg-url": "7.1.0" 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /packages/adapter-mongodb/src/__tests__/run_tests.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # Function to cleanup resources 4 | cleanup() { 5 | echo "Cleaning up resources..." 6 | docker-compose -f docker-compose.test.yml down 7 | exit 0 8 | } 9 | 10 | # Trap SIGINT and SIGTERM signals and cleanup 11 | trap cleanup SIGINT SIGTERM 12 | 13 | # Start MongoDB container 14 | echo "Starting MongoDB container..." 15 | docker-compose -f docker-compose.test.yml up -d 16 | 17 | # Wait for MongoDB to be ready 18 | echo "Waiting for MongoDB to be ready..." 19 | until docker-compose -f docker-compose.test.yml exec -T mongodb-test mongosh --eval "db.adminCommand('ping')" > /dev/null 2>&1; do 20 | echo "MongoDB is not ready yet..." 21 | sleep 1 22 | done 23 | 24 | echo "MongoDB is ready!" 25 | 26 | # Run tests 27 | echo "Running tests..." 28 | jest --runInBand --forceExit 29 | 30 | # Cleanup after tests 31 | cleanup -------------------------------------------------------------------------------- /packages/plugin-tee-verifiable-log/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@elizaos/plugin-tee-verifiable-log", 3 | "version": "0.1.9", 4 | "main": "dist/index.js", 5 | "type": "module", 6 | "types": "dist/index.d.ts", 7 | "dependencies": { 8 | "@elizaos/core": "workspace:*", 9 | "@elizaos/plugin-tee": "workspace:*", 10 | "dompurify": "3.2.2", 11 | "elliptic": "^6.6.1", 12 | "ethereum-cryptography": "^3.0.0", 13 | "tsup": "8.3.5", 14 | "uuid": "11.0.3", 15 | "vitest": "2.1.5" 16 | }, 17 | "scripts": { 18 | "build": "tsup --format esm --dts", 19 | "test": "vitest run", 20 | "test:watch": "vitest" 21 | }, 22 | "devDependencies": { 23 | "@types/dompurify": "3.2.0", 24 | "ts-node": "^10.9.2" 25 | }, 26 | "peerDependencies": { 27 | "whatwg-url": "7.1.0" 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /packages/plugin-twitter/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@elizaos/plugin-twitter", 3 | "version": "0.1.9", 4 | "type": "module", 5 | "main": "dist/index.js", 6 | "module": "dist/index.js", 7 | "types": "dist/index.d.ts", 8 | "exports": { 9 | "./package.json": "./package.json", 10 | ".": { 11 | "import": { 12 | "@elizaos/source": "./src/index.ts", 13 | "types": "./dist/index.d.ts", 14 | "default": "./dist/index.js" 15 | } 16 | } 17 | }, 18 | "files": [ 19 | "dist" 20 | ], 21 | "dependencies": { 22 | "@elizaos/core": "workspace:*", 23 | "agent-twitter-client": "0.0.18", 24 | "tsup": "8.3.5" 25 | }, 26 | "devDependencies": { 27 | "vitest": "^1.0.0" 28 | }, 29 | "scripts": { 30 | "build": "tsup --format esm --dts", 31 | "dev": "tsup --format esm --dts --watch", 32 | "test": "vitest run", 33 | "test:watch": "vitest", 34 | "lint": "eslint --fix --cache ." 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /packages/client-telegram/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@elizaos/client-telegram", 3 | "version": "0.1.9", 4 | "type": "module", 5 | "main": "dist/index.js", 6 | "module": "dist/index.js", 7 | "types": "dist/index.d.ts", 8 | "exports": { 9 | "./package.json": "./package.json", 10 | ".": { 11 | "import": { 12 | "@elizaos/source": "./src/index.ts", 13 | "types": "./dist/index.d.ts", 14 | "default": "./dist/index.js" 15 | } 16 | } 17 | }, 18 | "files": [ 19 | "dist" 20 | ], 21 | "dependencies": { 22 | "@elizaos/core": "workspace:*", 23 | "@telegraf/types": "7.1.0", 24 | "telegraf": "4.16.3", 25 | "zod": "3.23.8" 26 | }, 27 | "devDependencies": { 28 | "tsup": "8.3.5", 29 | "vitest": "1.2.1" 30 | }, 31 | "scripts": { 32 | "build": "tsup --format esm --dts", 33 | "dev": "tsup --format esm --dts --watch", 34 | "test": "vitest run", 35 | "test:watch": "vitest" 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /packages/core/README-TESTS.md: -------------------------------------------------------------------------------- 1 | # Core Package Tests 2 | 3 | This package contains a test suite for evaluating functionalities using **Vitest**. 4 | 5 | ## Prerequisites 6 | 7 | 1. **pnpm**: Ensure you have `pnpm` installed. If not, you can install it globally using: 8 | 9 | ```bash 10 | npm install -g pnpm 11 | ``` 12 | 13 | 2. **Environment Variables - NOT REQUIRED** : Set up a `.env` file in the project root (eliza) with the necessary environment variables. Copy .env.example file and add required variables. 14 | 15 | ## Setup 16 | 17 | 1. Navigate to the `packages/core` directory: 18 | 19 | ```bash 20 | cd packages/core 21 | ``` 22 | 23 | 2. Install dependencies: 24 | ```bash 25 | pnpm install 26 | ``` 27 | 28 | ## Running Tests 29 | 30 | Run all tests using: 31 | 32 | ```bash 33 | pnpm test 34 | ``` 35 | 36 | The test results will be displayed in the terminal. 37 | 38 | --- 39 | -------------------------------------------------------------------------------- /packages/client-instagram/src/types.ts: -------------------------------------------------------------------------------- 1 | 2 | export interface InstagramState { 3 | accessToken: string | null; 4 | longLivedToken: string | null; 5 | profile: InstagramProfile | null; 6 | isInitialized: boolean; 7 | lastCheckedMediaId: string | null; 8 | } 9 | 10 | export interface InstagramProfile { 11 | id: string; 12 | username: string; 13 | name: string; 14 | biography: string; 15 | mediaCount: number; 16 | followerCount: number; 17 | followingCount: number; 18 | } 19 | 20 | export interface MediaItem { 21 | id: string; 22 | mediaType: 'IMAGE' | 'VIDEO' | 'CAROUSEL_ALBUM'; 23 | mediaUrl: string; 24 | thumbnailUrl?: string; 25 | permalink: string; 26 | caption?: string; 27 | timestamp: string; 28 | children?: MediaItem[]; 29 | } 30 | 31 | export interface Comment { 32 | id: string; 33 | text: string; 34 | timestamp: string; 35 | username: string; 36 | replies?: Comment[]; 37 | } -------------------------------------------------------------------------------- /packages/plugin-tee/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig({ 4 | entry: ["src/index.ts"], 5 | outDir: "dist", 6 | sourcemap: true, 7 | clean: true, 8 | format: ["esm"], // Ensure you're targeting CommonJS 9 | external: [ 10 | "dotenv", // Externalize dotenv to prevent bundling 11 | "fs", // Externalize fs to use Node.js built-in module 12 | "path", // Externalize other built-ins if necessary 13 | "@reflink/reflink", 14 | "@node-llama-cpp", 15 | "https", 16 | "http", 17 | "agentkeepalive", 18 | // Add other modules you want to externalize 19 | "@phala/dstack-sdk", 20 | "safe-buffer", 21 | "base-x", 22 | "bs58", 23 | "borsh", 24 | "@solana/buffer-layout", 25 | "stream", 26 | "buffer", 27 | "undici", 28 | ], 29 | }); 30 | -------------------------------------------------------------------------------- /packages/adapter-qdrant/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@elizaos/adapter-qdrant", 3 | "version": "0.1.9", 4 | "type": "module", 5 | "main": "dist/index.js", 6 | "module": "dist/index.js", 7 | "types": "dist/index.d.ts", 8 | "exports": { 9 | "./package.json": "./package.json", 10 | ".": { 11 | "import": { 12 | "@elizaos/source": "./src/index.ts", 13 | "types": "./dist/index.d.ts", 14 | "default": "./dist/index.js" 15 | } 16 | } 17 | }, 18 | "dependencies": { 19 | "@elizaos/core": "workspace:*", 20 | "@qdrant/js-client-rest": "^1.12.0" 21 | }, 22 | "devDependencies": { 23 | "tsup": "8.3.5" 24 | }, 25 | "scripts": { 26 | "build": "tsup --format esm --dts", 27 | "dev": "tsup --format esm --dts --watch", 28 | "lint": "eslint --fix --cache ." 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /client/mobile/expo-shakey-example-app/app/constants/imageConfig.js: -------------------------------------------------------------------------------- 1 | //Image Import 2 | const AppDev = require('../../assets/Images/App_dev.jpg'); 3 | const UiUx = require('../../assets/Images/Ui_Ux.png'); 4 | const GameDev = require('../../assets/Images/Game-Development.png'); 5 | const Modeling = require('../../assets/Images/3D-Modeling.png'); 6 | const Ai = require('../../assets/Images/Artificial-Intelligence.png'); 7 | const App = require('../../assets/Images/Mobile-Application.png'); 8 | const ArVr = require('../../assets/Images/VR-AR.png'); 9 | const FullStack = require('../../assets/Images/Full-Stack-Web-Development.png'); 10 | const Blockchain = require('../../assets/Images/Blockchain-Development.png'); 11 | const Logo = require('../../assets/Images/Irenic_Logo_Light.png'); 12 | 13 | export { 14 | AppDev, 15 | UiUx, 16 | GameDev, 17 | Modeling, 18 | Ai, 19 | App, 20 | ArVr, 21 | FullStack, 22 | Blockchain, 23 | Logo 24 | }; 25 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/src/constants/imageConfig.js: -------------------------------------------------------------------------------- 1 | //Image Import 2 | const AppDev = require('../../assets/Images/App_dev.jpg'); 3 | const UiUx = require('../../assets/Images/Ui_Ux.png'); 4 | const GameDev = require('../../assets/Images/Game-Development.png'); 5 | const Modeling = require('../../assets/Images/3D-Modeling.png'); 6 | const Ai = require('../../assets/Images/Artificial-Intelligence.png'); 7 | const App = require('../../assets/Images/Mobile-Application.png'); 8 | const ArVr = require('../../assets/Images/VR-AR.png'); 9 | const FullStack = require('../../assets/Images/Full-Stack-Web-Development.png'); 10 | const Blockchain = require('../../assets/Images/Blockchain-Development.png'); 11 | const Logo = require('../../assets/Images/Irenic_Logo_Light.png'); 12 | 13 | export { 14 | AppDev, 15 | UiUx, 16 | GameDev, 17 | Modeling, 18 | Ai, 19 | App, 20 | ArVr, 21 | FullStack, 22 | Blockchain, 23 | Logo 24 | }; 25 | -------------------------------------------------------------------------------- /packages/client-telegram-account/src/index.ts: -------------------------------------------------------------------------------- 1 | import { elizaLogger } from "@elizaos/core"; 2 | import { Client, IAgentRuntime } from "@elizaos/core"; 3 | import {TelegramAccountConfig, validateTelegramAccountConfig} from "./environment.ts"; 4 | import { TelegramAccountClient } from "./telegramAccountClient.ts" 5 | 6 | export const TelegramAccountClientInterface: Client = { 7 | start: async (runtime: IAgentRuntime) => { 8 | const telegramAccountConfig: TelegramAccountConfig = await validateTelegramAccountConfig(runtime); 9 | const telegramAccountClient = new TelegramAccountClient(runtime, telegramAccountConfig); 10 | await telegramAccountClient.start(); 11 | 12 | return telegramAccountClient; 13 | }, 14 | stop: async (_runtime: IAgentRuntime) => { 15 | elizaLogger.warn("Telegram client does not support stopping yet"); 16 | }, 17 | }; 18 | 19 | export default TelegramAccountClientInterface; 20 | -------------------------------------------------------------------------------- /packages/plugin-di/biome.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://biomejs.dev/schemas/1.5.3/schema.json", 3 | "organizeImports": { 4 | "enabled": false 5 | }, 6 | "linter": { 7 | "enabled": true, 8 | "rules": { 9 | "recommended": true, 10 | "correctness": { 11 | "noUnusedVariables": "error" 12 | }, 13 | "suspicious": { 14 | "noExplicitAny": "error" 15 | }, 16 | "style": { 17 | "useConst": "error", 18 | "useImportType": "off" 19 | } 20 | } 21 | }, 22 | "formatter": { 23 | "enabled": true, 24 | "indentStyle": "space", 25 | "indentWidth": 4, 26 | "lineWidth": 100 27 | }, 28 | "javascript": { 29 | "formatter": { 30 | "quoteStyle": "single", 31 | "trailingCommas": "es5" 32 | } 33 | }, 34 | "files": { 35 | "ignore": [ 36 | "dist/**/*", 37 | "extra/**/*", 38 | "node_modules/**/*" 39 | ] 40 | } 41 | } -------------------------------------------------------------------------------- /packages/adapter-redis/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@elizaos/adapter-redis", 3 | "version": "0.1.9", 4 | "type": "module", 5 | "main": "dist/index.js", 6 | "module": "dist/index.js", 7 | "types": "dist/index.d.ts", 8 | "exports": { 9 | "./package.json": "./package.json", 10 | ".": { 11 | "import": { 12 | "@elizaos/source": "./src/index.ts", 13 | "types": "./dist/index.d.ts", 14 | "default": "./dist/index.js" 15 | } 16 | } 17 | }, 18 | "files": [ 19 | "dist" 20 | ], 21 | "dependencies": { 22 | "@elizaos/core": "workspace:*", 23 | "ioredis": "5.4.2" 24 | }, 25 | "devDependencies": { 26 | "@types/ioredis": "^5.0.0", 27 | "tsup": "8.3.5", 28 | "vitest": "^3.0.2" 29 | }, 30 | "scripts": { 31 | "build": "tsup --format esm --dts", 32 | "dev": "tsup --format esm --dts --watch", 33 | "test": "vitest run", 34 | "test:watch": "vitest" 35 | }, 36 | "peerDependencies": { 37 | "whatwg-url": "7.1.0" 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /client/web/eslint.config.js: -------------------------------------------------------------------------------- 1 | import js from "@eslint/js"; 2 | import globals from "globals"; 3 | import reactHooks from "eslint-plugin-react-hooks"; 4 | import reactRefresh from "eslint-plugin-react-refresh"; 5 | import tseslint from "typescript-eslint"; 6 | 7 | export default tseslint.config( 8 | { ignores: ["dist"] }, 9 | { 10 | extends: [js.configs.recommended, ...tseslint.configs.recommended], 11 | files: ["**/*.{ts,tsx}"], 12 | languageOptions: { 13 | ecmaVersion: 2020, 14 | globals: globals.browser, 15 | }, 16 | plugins: { 17 | "react-hooks": reactHooks, 18 | "react-refresh": reactRefresh, 19 | }, 20 | rules: { 21 | ...reactHooks.configs.recommended.rules, 22 | "react-refresh/only-export-components": [ 23 | "warn", 24 | { allowConstantExport: true }, 25 | ], 26 | }, 27 | } 28 | ); 29 | -------------------------------------------------------------------------------- /client/web/src/components/ui/chat/chat-input.tsx: -------------------------------------------------------------------------------- 1 | import * as React from "react"; 2 | import { Textarea } from "@/components/ui/textarea"; 3 | import { cn } from "@/lib/utils"; 4 | 5 | interface ChatInputProps 6 | extends React.TextareaHTMLAttributes {} 7 | 8 | const ChatInput = React.forwardRef( 9 | ({ className, ...props }, ref) => ( 10 | 20 | ) 21 | ); 22 | ChatInput.displayName = "ChatInput"; 23 | 24 | export { ChatInput }; 25 | -------------------------------------------------------------------------------- /client/web/src/components/ui/input.tsx: -------------------------------------------------------------------------------- 1 | import * as React from "react"; 2 | 3 | import { cn } from "@/lib/utils"; 4 | 5 | const Input = React.forwardRef>( 6 | ({ className, type, ...props }, ref) => { 7 | return ( 8 | 17 | ); 18 | } 19 | ); 20 | Input.displayName = "Input"; 21 | 22 | export { Input }; 23 | -------------------------------------------------------------------------------- /client/web/tsconfig.app.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo", 4 | "target": "ES2020", 5 | "useDefineForClassFields": true, 6 | "lib": ["ES2020", "DOM", "DOM.Iterable"], 7 | "module": "ESNext", 8 | "skipLibCheck": true, 9 | "baseUrl": "./", 10 | "paths": { 11 | "@/*": ["./src/*"] 12 | }, 13 | /* Bundler mode */ 14 | "moduleResolution": "bundler", 15 | "allowImportingTsExtensions": true, 16 | "isolatedModules": true, 17 | "moduleDetection": "force", 18 | "noEmit": true, 19 | "jsx": "react-jsx", 20 | 21 | /* Linting */ 22 | "strict": true, 23 | "noUnusedLocals": true, 24 | "noUnusedParameters": true, 25 | "noFallthroughCasesInSwitch": true, 26 | "noUncheckedSideEffectImports": true 27 | }, 28 | "include": ["src"] 29 | } 30 | -------------------------------------------------------------------------------- /packages/core/src/index.ts: -------------------------------------------------------------------------------- 1 | import "./config.ts"; // Add this line first 2 | 3 | export * from "./actions.ts"; 4 | export * from "./context.ts"; 5 | export * from "./database.ts"; 6 | export * from "./defaultCharacter.ts"; 7 | export * from "./embedding.ts"; 8 | export * from "./evaluators.ts"; 9 | export * from "./generation.ts"; 10 | export * from "./goals.ts"; 11 | export * from "./memory.ts"; 12 | export * from "./messages.ts"; 13 | export * from "./models.ts"; 14 | export * from "./posts.ts"; 15 | export * from "./providers.ts"; 16 | export * from "./relationships.ts"; 17 | export * from "./runtime.ts"; 18 | export * from "./settings.ts"; 19 | export * from "./types.ts"; 20 | export * from "./logger.ts"; 21 | export * from "./parsing.ts"; 22 | export * from "./uuid.ts"; 23 | export * from "./environment.ts"; 24 | export * from "./cache.ts"; 25 | export { default as knowledge } from "./knowledge.ts"; 26 | export * from "./ragknowledge.ts"; 27 | export * from "./utils.ts"; 28 | -------------------------------------------------------------------------------- /packages/client-auto/src/index.ts: -------------------------------------------------------------------------------- 1 | import { type Client, type IAgentRuntime, elizaLogger } from "@elizaos/core"; 2 | 3 | export class AutoClient { 4 | interval: NodeJS.Timeout; 5 | runtime: IAgentRuntime; 6 | 7 | constructor(runtime: IAgentRuntime) { 8 | this.runtime = runtime; 9 | 10 | // start a loop that runs every x seconds 11 | this.interval = setInterval( 12 | async () => { 13 | elizaLogger.log("running auto client..."); 14 | }, 15 | 60 * 60 * 1000 16 | ); // 1 hour in milliseconds 17 | } 18 | } 19 | 20 | export const AutoClientInterface: Client = { 21 | start: async (runtime: IAgentRuntime) => { 22 | const client = new AutoClient(runtime); 23 | return client; 24 | }, 25 | stop: async (_runtime: IAgentRuntime) => { 26 | console.warn("Direct client does not support stopping yet"); 27 | }, 28 | }; 29 | 30 | export default AutoClientInterface; 31 | -------------------------------------------------------------------------------- /packages/client-github/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@elizaos/client-github", 3 | "version": "0.1.9", 4 | "type": "module", 5 | "main": "dist/index.js", 6 | "module": "dist/index.js", 7 | "types": "dist/index.d.ts", 8 | "exports": { 9 | "./package.json": "./package.json", 10 | ".": { 11 | "import": { 12 | "@elizaos/source": "./src/index.ts", 13 | "types": "./dist/index.d.ts", 14 | "default": "./dist/index.js" 15 | } 16 | } 17 | }, 18 | "files": [ 19 | "dist" 20 | ], 21 | "dependencies": { 22 | "@elizaos/core": "workspace:*", 23 | "@octokit/rest": "20.1.1", 24 | "@octokit/types": "12.6.0", 25 | "glob": "10.4.5", 26 | "simple-git": "3.27.0" 27 | }, 28 | "devDependencies": { 29 | "@types/glob": "8.1.0", 30 | "tsup": "8.3.5", 31 | "vitest": "^1.2.1" 32 | }, 33 | "scripts": { 34 | "build": "tsup --format esm --dts", 35 | "dev": "tsup --format esm --dts --watch", 36 | "test": "vitest run", 37 | "test:watch": "vitest" 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /packages/core/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "ESNext", 4 | "module": "ESNext", 5 | "lib": ["ESNext", "dom"], 6 | "moduleResolution": "Bundler", 7 | "outDir": "./dist", 8 | "rootDir": "./src", 9 | "strict": false, 10 | "esModuleInterop": true, 11 | "skipLibCheck": true, 12 | "forceConsistentCasingInFileNames": false, 13 | "allowImportingTsExtensions": true, 14 | "declaration": true, 15 | "emitDeclarationOnly": true, 16 | "resolveJsonModule": true, 17 | "noImplicitAny": false, 18 | "allowJs": true, 19 | "checkJs": false, 20 | "noEmitOnError": false, 21 | "moduleDetection": "force", 22 | "allowArbitraryExtensions": true, 23 | "customConditions": ["@elizaos/source"] 24 | }, 25 | "include": ["src/**/*"], 26 | "exclude": ["node_modules", "dist", "src/**/*.d.ts", "types/**/*.test.ts"] 27 | } 28 | -------------------------------------------------------------------------------- /packages/client-telegram/src/index.ts: -------------------------------------------------------------------------------- 1 | import { elizaLogger } from "@elizaos/core"; 2 | import type { Client, IAgentRuntime } from "@elizaos/core"; 3 | import { TelegramClient } from "./telegramClient.ts"; 4 | import { validateTelegramConfig } from "./environment.ts"; 5 | 6 | export const TelegramClientInterface: Client = { 7 | start: async (runtime: IAgentRuntime) => { 8 | await validateTelegramConfig(runtime); 9 | 10 | const tg = new TelegramClient( 11 | runtime, 12 | runtime.getSetting("TELEGRAM_BOT_TOKEN") 13 | ); 14 | 15 | await tg.start(); 16 | 17 | elizaLogger.success( 18 | `✅ Telegram client successfully started for character ${runtime.character.name}` 19 | ); 20 | return tg; 21 | }, 22 | stop: async (_runtime: IAgentRuntime) => { 23 | elizaLogger.warn("Telegram client does not support stopping yet"); 24 | }, 25 | }; 26 | 27 | export default TelegramClientInterface; 28 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/ios/RN_ShakeyOs/AppDelegate.mm: -------------------------------------------------------------------------------- 1 | #import "AppDelegate.h" 2 | 3 | #import 4 | 5 | @implementation AppDelegate 6 | 7 | - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 8 | { 9 | self.moduleName = @"RN_ShakeyOs"; 10 | // You can add your custom initial props in the dictionary below. 11 | // They will be passed down to the ViewController used by React Native. 12 | self.initialProps = @{}; 13 | 14 | return [super application:application didFinishLaunchingWithOptions:launchOptions]; 15 | } 16 | 17 | - (NSURL *)sourceURLForBridge:(RCTBridge *)bridge 18 | { 19 | return [self bundleURL]; 20 | } 21 | 22 | - (NSURL *)bundleURL 23 | { 24 | #if DEBUG 25 | return [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index"]; 26 | #else 27 | return [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"]; 28 | #endif 29 | } 30 | 31 | @end 32 | -------------------------------------------------------------------------------- /packages/client-auto/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@elizaos/client-auto", 3 | "version": "0.1.9", 4 | "type": "module", 5 | "main": "dist/index.js", 6 | "module": "dist/index.js", 7 | "types": "dist/index.d.ts", 8 | "exports": { 9 | "./package.json": "./package.json", 10 | ".": { 11 | "import": { 12 | "@elizaos/source": "./src/index.ts", 13 | "types": "./dist/index.d.ts", 14 | "default": "./dist/index.js" 15 | } 16 | } 17 | }, 18 | "files": [ 19 | "dist" 20 | ], 21 | "dependencies": { 22 | "@elizaos/core": "workspace:*", 23 | "@types/body-parser": "1.19.5", 24 | "@types/cors": "2.8.17", 25 | "@types/express": "5.0.0", 26 | "body-parser": "1.20.3", 27 | "cors": "2.8.5", 28 | "multer": "1.4.5-lts.1" 29 | }, 30 | "devDependencies": { 31 | "tsup": "8.3.5" 32 | }, 33 | "scripts": { 34 | "build": "tsup --format esm --dts", 35 | "dev": "tsup --format esm --dts --watch" 36 | }, 37 | "peerDependencies": { 38 | "whatwg-url": "7.1.0" 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /client/mobile/expo-shakey-example-app/app/constants/categories.js: -------------------------------------------------------------------------------- 1 | const categoriesData = [ 2 | { 3 | label: 'Full Stack Development', 4 | value: 'Full Stack Development', 5 | }, 6 | { 7 | label: 'Mobile App Development', 8 | value: 'Mobile App Development', 9 | }, 10 | {label: 'UI UX Designing', value: 'UI UX Designing'}, 11 | {label: 'Web Development', value: 'Web Development'}, 12 | { 13 | label: 'Blockchain Development', 14 | value: 'Blockchain Development', 15 | }, 16 | {label: 'Game Development', value: 'Game Development'}, 17 | { 18 | label: 'Artificial Intelligence', 19 | value: 'Artificial Intelligence', 20 | }, 21 | {label: 'Digital Marketing', value: 'Digital Marketing'}, 22 | {label: 'DevOps', value: 'DevOps'}, 23 | {label: 'AR VR Development', value: 'AR VR Development'}, 24 | {label: 'Graphic Desingning', value: 'Graphic Desingning'}, 25 | {label: '3D Modeling', value: '3D Modeling'}, 26 | ]; 27 | export default categoriesData; 28 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/src/constants/categories.js: -------------------------------------------------------------------------------- 1 | const categoriesData = [ 2 | { 3 | label: 'Full Stack Development', 4 | value: 'Full Stack Development', 5 | }, 6 | { 7 | label: 'Mobile App Development', 8 | value: 'Mobile App Development', 9 | }, 10 | {label: 'UI UX Designing', value: 'UI UX Designing'}, 11 | {label: 'Web Development', value: 'Web Development'}, 12 | { 13 | label: 'Blockchain Development', 14 | value: 'Blockchain Development', 15 | }, 16 | {label: 'Game Development', value: 'Game Development'}, 17 | { 18 | label: 'Artificial Intelligence', 19 | value: 'Artificial Intelligence', 20 | }, 21 | {label: 'Digital Marketing', value: 'Digital Marketing'}, 22 | {label: 'DevOps', value: 'DevOps'}, 23 | {label: 'AR VR Development', value: 'AR VR Development'}, 24 | {label: 'Graphic Desingning', value: 'Graphic Desingning'}, 25 | {label: '3D Modeling', value: '3D Modeling'}, 26 | ]; 27 | export default categoriesData; 28 | -------------------------------------------------------------------------------- /packages/adapter-supabase/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@elizaos/adapter-supabase", 3 | "version": "0.1.9", 4 | "type": "module", 5 | "main": "dist/index.js", 6 | "module": "dist/index.js", 7 | "types": "dist/index.d.ts", 8 | "exports": { 9 | "./package.json": "./package.json", 10 | ".": { 11 | "import": { 12 | "@elizaos/source": "./src/index.ts", 13 | "types": "./dist/index.d.ts", 14 | "default": "./dist/index.js" 15 | } 16 | } 17 | }, 18 | "files": [ 19 | "dist" 20 | ], 21 | "dependencies": { 22 | "@elizaos/core": "workspace:*", 23 | "@supabase/supabase-js": "2.46.2" 24 | }, 25 | "devDependencies": { 26 | "@vitest/coverage-v8": "^3.0.2", 27 | "tsup": "8.3.5", 28 | "vitest": "^3.0.2" 29 | }, 30 | "scripts": { 31 | "build": "tsup --format esm --dts", 32 | "dev": "tsup --format esm --dts --watch", 33 | "test": "vitest run", 34 | "test:coverage": "vitest run --coverage" 35 | }, 36 | "peerDependencies": { 37 | "whatwg-url": "7.1.0" 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | /out 3 | 4 | .env 5 | .env.production 6 | .env.local 7 | .env_main 8 | concatenated-output.ts 9 | embedding-cache.json 10 | packages/plugin-buttplug/intiface-engine 11 | 12 | .idea 13 | .DS_Store 14 | 15 | dist/ 16 | # Allow models directory but ignore model files 17 | models/*.gguf 18 | pgLite/ 19 | 20 | cookies.json 21 | 22 | db.sqlite 23 | searches/ 24 | tweets/ 25 | 26 | *.gguf 27 | *.onnx 28 | *.wav 29 | *.mp3 30 | 31 | logs/ 32 | 33 | test-report.json 34 | content_cache/ 35 | test_data/ 36 | tokencache/ 37 | tweetcache/ 38 | twitter_cookies.json 39 | timeline_cache.json 40 | 41 | *.sqlite 42 | 43 | 44 | packages/core/src/providers/cache 45 | packages/core/src/providers/cache/* 46 | cache/* 47 | packages/plugin-coinbase/src/plugins/transactions.csv 48 | 49 | tsup.config.bundled_*.mjs 50 | 51 | .turbo 52 | .cursorrules 53 | .pnpm-store 54 | 55 | coverage 56 | .eslintcache 57 | 58 | agent/content 59 | 60 | eliza.manifest 61 | eliza.manifest.sgx 62 | eliza.sig 63 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/app/src/main/java/com/shakey_rn/MainActivity.kt: -------------------------------------------------------------------------------- 1 | package com.shakey_rn 2 | 3 | import com.facebook.react.ReactActivity 4 | import com.facebook.react.ReactActivityDelegate 5 | import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint.fabricEnabled 6 | import com.facebook.react.defaults.DefaultReactActivityDelegate 7 | 8 | class MainActivity : ReactActivity() { 9 | 10 | /** 11 | * Returns the name of the main component registered from JavaScript. This is used to schedule 12 | * rendering of the component. 13 | */ 14 | override fun getMainComponentName(): String = "Shakey_RN" 15 | 16 | /** 17 | * Returns the instance of the [ReactActivityDelegate]. We use [DefaultReactActivityDelegate] 18 | * which allows you to enable New Architecture with a single boolean flags [fabricEnabled] 19 | */ 20 | override fun createReactActivityDelegate(): ReactActivityDelegate = 21 | DefaultReactActivityDelegate(this, mainComponentName, fabricEnabled) 22 | } 23 | -------------------------------------------------------------------------------- /scripts/update-package-access.js: -------------------------------------------------------------------------------- 1 | const fs = require('fs'); 2 | const path = require('path'); 3 | const glob = require('glob'); 4 | const { execSync } = require('child_process'); 5 | 6 | const packages = glob.sync('packages/*/package.json'); 7 | 8 | packages.forEach((packageJsonPath) => { 9 | const packageJson = require(path.resolve(packageJsonPath)); 10 | 11 | if (packageJson.name.startsWith('@elizaos/') && !packageJson.private && !packageJson.publishConfig) { 12 | packageJson.publishConfig = { access: 'public' }; 13 | 14 | fs.writeFileSync(packageJsonPath, JSON.stringify(packageJson, null, 2)); 15 | console.log(`Updated: ${packageJson.name}`); 16 | 17 | // Format the file using npx Prettier 18 | try { 19 | execSync(`npx prettier --write ${packageJsonPath}`, { stdio: 'inherit' }); 20 | console.log(`Formatted: ${packageJsonPath}`); 21 | } catch (error) { 22 | console.error(`Error formatting file: ${packageJsonPath}`, error.message); 23 | } 24 | } 25 | }); 26 | -------------------------------------------------------------------------------- /packages/core/__tests__/env.test.ts: -------------------------------------------------------------------------------- 1 | import { describe, it, expect } from "vitest"; 2 | import fs from "fs"; 3 | import path from "path"; 4 | 5 | describe("Environment Setup", () => { 6 | it("should verify .env.test file exists", () => { 7 | const possiblePaths = [ 8 | path.join(process.cwd(), ".env.test"), 9 | path.join(process.cwd(), "packages/core/.env.test"), 10 | path.join(__dirname, "../../.env.test"), 11 | path.join(__dirname, "../.env.test"), 12 | path.join(__dirname, ".env.test"), 13 | ]; 14 | 15 | console.log("Current working directory:", process.cwd()); 16 | console.log("__dirname:", __dirname); 17 | 18 | const existingPaths = possiblePaths.filter((p) => { 19 | const exists = fs.existsSync(p); 20 | console.log(`Path ${p} exists: ${exists}`); 21 | return exists; 22 | }); 23 | 24 | expect(existingPaths.length).toBeGreaterThan(0); 25 | }); 26 | }); 27 | -------------------------------------------------------------------------------- /packages/plugin-tee/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@elizaos/plugin-tee", 3 | "version": "0.1.9", 4 | "type": "module", 5 | "main": "dist/index.js", 6 | "module": "dist/index.js", 7 | "types": "dist/index.d.ts", 8 | "exports": { 9 | "./package.json": "./package.json", 10 | ".": { 11 | "import": { 12 | "@elizaos/source": "./src/index.ts", 13 | "types": "./dist/index.d.ts", 14 | "default": "./dist/index.js" 15 | } 16 | } 17 | }, 18 | "files": [ 19 | "dist" 20 | ], 21 | "dependencies": { 22 | "@elizaos/core": "workspace:*", 23 | "@phala/dstack-sdk": "0.1.7", 24 | "@solana/spl-token": "0.4.9", 25 | "@solana/web3.js": "1.95.8", 26 | "bignumber.js": "9.1.2", 27 | "bs58": "6.0.0", 28 | "node-cache": "5.1.2", 29 | "pumpdotfun-sdk": "1.3.2", 30 | "tsup": "8.3.5" 31 | }, 32 | "scripts": { 33 | "build": "tsup --format esm --dts", 34 | "dev": "tsup --format esm --dts --watch", 35 | "test": "vitest run" 36 | }, 37 | "peerDependencies": { 38 | "whatwg-url": "7.1.0" 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /client/web/src/components/ui/separator.tsx: -------------------------------------------------------------------------------- 1 | import * as React from "react"; 2 | import * as SeparatorPrimitive from "@radix-ui/react-separator"; 3 | 4 | import { cn } from "@/lib/utils"; 5 | 6 | const Separator = React.forwardRef< 7 | React.ElementRef, 8 | React.ComponentPropsWithoutRef 9 | >( 10 | ( 11 | { className, orientation = "horizontal", decorative = true, ...props }, 12 | ref 13 | ) => ( 14 | 27 | ) 28 | ); 29 | Separator.displayName = SeparatorPrimitive.Root.displayName; 30 | 31 | export { Separator }; 32 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-example-app/src/components/PageTitle.jsx: -------------------------------------------------------------------------------- 1 | import {StyleSheet, Text, View} from 'react-native'; 2 | import colors from '../constants/colors'; 3 | 4 | const PageTitle = ({title, subTitle, style, textColor, textStyle}) => { 5 | return ( 6 | 7 | 8 | {title} 9 | 10 | {subTitle && ( 11 | 12 | {subTitle} 13 | 14 | )} 15 | 16 | ); 17 | }; 18 | 19 | export default PageTitle; 20 | 21 | const styles = StyleSheet.create({ 22 | container: { 23 | alignItems: 'center', 24 | justifyContent: 'center', 25 | marginVertical: 10, 26 | marginBottom: 20, 27 | }, 28 | title: { 29 | fontSize: 24, 30 | fontWeight: 'bold', 31 | color: colors.textColor, 32 | marginVertical: 5, 33 | }, 34 | subTitle: { 35 | color: colors.textColor, 36 | }, 37 | }); 38 | -------------------------------------------------------------------------------- /packages/adapter-sqlite/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@elizaos/adapter-sqlite", 3 | "version": "0.1.9", 4 | "type": "module", 5 | "main": "dist/index.js", 6 | "module": "dist/index.js", 7 | "types": "dist/index.d.ts", 8 | "exports": { 9 | "./package.json": "./package.json", 10 | ".": { 11 | "import": { 12 | "@elizaos/source": "./src/index.ts", 13 | "types": "./dist/index.d.ts", 14 | "default": "./dist/index.js" 15 | } 16 | } 17 | }, 18 | "files": [ 19 | "dist" 20 | ], 21 | "dependencies": { 22 | "@elizaos/core": "workspace:*", 23 | "@types/better-sqlite3": "7.6.12", 24 | "better-sqlite3": "11.6.0", 25 | "sqlite-vec": "0.1.6" 26 | }, 27 | "devDependencies": { 28 | "tsup": "8.3.5", 29 | "vitest": "^3.0.2", 30 | "@vitest/coverage-v8": "^3.0.2" 31 | }, 32 | "scripts": { 33 | "build": "tsup --format esm --dts", 34 | "dev": "tsup --format esm --dts --watch", 35 | "test": "vitest run", 36 | "test:coverage": "vitest run --coverage" 37 | }, 38 | "peerDependencies": { 39 | "whatwg-url": "7.1.0" 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /packages/plugin-whatsapp/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@elizaos/plugin-whatsapp", 3 | "version": "0.1.9", 4 | "description": "WhatsApp Cloud API plugin", 5 | "type": "module", 6 | "main": "dist/index.js", 7 | "module": "dist/index.js", 8 | "types": "dist/index.d.ts", 9 | "exports": { 10 | "./package.json": "./package.json", 11 | ".": { 12 | "import": { 13 | "@elizaos/source": "./src/index.ts", 14 | "types": "./dist/index.d.ts", 15 | "default": "./dist/index.js" 16 | } 17 | } 18 | }, 19 | "files": [ 20 | "dist" 21 | ], 22 | "scripts": { 23 | "build": "tsup --format esm --dts", 24 | "dev": "tsup --format esm --dts --watch", 25 | "test": "vitest run", 26 | "coverage": "vitest run --coverage" 27 | }, 28 | "dependencies": { 29 | "@elizaos/core": "workspace:*", 30 | "axios": "1.7.8" 31 | }, 32 | "devDependencies": { 33 | "@types/node": "20.17.9", 34 | "@typescript-eslint/eslint-plugin": "8.16.0", 35 | "@typescript-eslint/parser": "8.16.0", 36 | "typescript": "5.6.3", 37 | "vitest": "^1.2.1" 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /packages/client-twitter/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@elizaos/client-twitter", 3 | "version": "0.1.9", 4 | "type": "module", 5 | "main": "dist/index.js", 6 | "module": "dist/index.js", 7 | "types": "dist/index.d.ts", 8 | "exports": { 9 | "./package.json": "./package.json", 10 | ".": { 11 | "import": { 12 | "@elizaos/source": "./src/index.ts", 13 | "types": "./dist/index.d.ts", 14 | "default": "./dist/index.js" 15 | } 16 | } 17 | }, 18 | "files": [ 19 | "dist" 20 | ], 21 | "dependencies": { 22 | "@elizaos/core": "workspace:*", 23 | "agent-twitter-client": "0.0.18", 24 | "discord.js": "14.16.3", 25 | "glob": "11.0.0", 26 | "zod": "3.23.8" 27 | }, 28 | "devDependencies": { 29 | "@vitest/coverage-v8": "1.1.3", 30 | "tsup": "8.3.5", 31 | "vitest": "1.1.3" 32 | }, 33 | "scripts": { 34 | "build": "tsup --format esm --dts", 35 | "dev": "tsup --format esm --dts --watch", 36 | "test": "vitest run", 37 | "test:coverage": "vitest run --coverage" 38 | }, 39 | "peerDependencies": { 40 | "whatwg-url": "7.1.0" 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /scripts/jsdoc-automation/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "module", 3 | "name": "plugin-audix", 4 | "version": "1.0.0", 5 | "description": "", 6 | "main": "dist/index.js", 7 | "module": "dist/index.mjs", 8 | "types": "dist/index.d.ts", 9 | "scripts": { 10 | "build": "tsup", 11 | "dev": "tsup --watch", 12 | "start": "node dist/index.js", 13 | "clean": "rm -rf node_modules dist" 14 | }, 15 | "keywords": [], 16 | "author": "", 17 | "license": "MIT", 18 | "dependencies": { 19 | "@langchain/openai": "^0.3.16", 20 | "@octokit/rest": "^21.0.2", 21 | "@types/node": "^20.11.0", 22 | "@typescript-eslint/parser": "6.18.1", 23 | "@typescript-eslint/types": "6.18.1", 24 | "@typescript-eslint/typescript-estree": "6.18.1", 25 | "dotenv": "^16.4.7", 26 | "langchain": "^0.3.7", 27 | "yaml": "^2.3.4" 28 | }, 29 | "devDependencies": { 30 | "ts-node": "^10.9.2", 31 | "tsup": "^8.3.5", 32 | "typescript": "5.3.3" 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /client/mobile/expo-shakey-example-app/app/components/PageTitle.jsx: -------------------------------------------------------------------------------- 1 | import { StyleSheet, Text, View } from "react-native"; 2 | import colors from "../constants/colors"; 3 | 4 | const PageTitle = ({ title, subTitle, style, textColor, textStyle }) => { 5 | return ( 6 | 7 | 10 | {title} 11 | 12 | {subTitle && ( 13 | 14 | {subTitle} 15 | 16 | )} 17 | 18 | ); 19 | }; 20 | 21 | export default PageTitle; 22 | 23 | const styles = StyleSheet.create({ 24 | container: { 25 | alignItems: "center", 26 | justifyContent: "center", 27 | marginVertical: 10, 28 | marginBottom: 20, 29 | }, 30 | title: { 31 | fontSize: 24, 32 | fontWeight: "bold", 33 | color: colors.textColor, 34 | marginVertical: 5, 35 | }, 36 | subTitle: { 37 | color: colors.textColor, 38 | }, 39 | }); 40 | -------------------------------------------------------------------------------- /packages/plugin-tee/src/index.ts: -------------------------------------------------------------------------------- 1 | import type { Plugin } from "@elizaos/core"; 2 | import { remoteAttestationProvider } from "./providers/remoteAttestationProvider"; 3 | import { deriveKeyProvider } from "./providers/deriveKeyProvider"; 4 | import { remoteAttestationAction } from "./actions/remoteAttestation"; 5 | 6 | export { DeriveKeyProvider } from "./providers/deriveKeyProvider"; 7 | export { RemoteAttestationProvider } from "./providers/remoteAttestationProvider"; 8 | export { RemoteAttestationQuote, TEEMode } from "./types/tee"; 9 | 10 | export const teePlugin: Plugin = { 11 | name: "tee", 12 | description: 13 | "TEE plugin with actions to generate remote attestations and derive keys", 14 | actions: [ 15 | /* custom actions */ 16 | remoteAttestationAction, 17 | ], 18 | evaluators: [ 19 | /* custom evaluators */ 20 | ], 21 | providers: [ 22 | /* custom providers */ 23 | remoteAttestationProvider, 24 | deriveKeyProvider, 25 | ], 26 | services: [ 27 | /* custom services */ 28 | ], 29 | }; 30 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/android/build.gradle: -------------------------------------------------------------------------------- 1 | def REACT_NATIVE_VERSION = new File(['node', '--print',"JSON.parse(require('fs').readFileSync(require.resolve('react-native/package.json'), 'utf-8')).version"].execute(null, rootDir).text.trim()) 2 | 3 | buildscript { 4 | ext { 5 | buildToolsVersion = "35.0.0" 6 | minSdkVersion = 24 7 | compileSdkVersion = 35 8 | targetSdkVersion = 34 9 | ndkVersion = "27.1.12297006" 10 | kotlinVersion = "2.0.21" 11 | } 12 | repositories { 13 | google() 14 | mavenCentral() 15 | } 16 | dependencies { 17 | classpath("com.android.tools.build:gradle") 18 | classpath("com.facebook.react:react-native-gradle-plugin") 19 | classpath("org.jetbrains.kotlin:kotlin-gradle-plugin") 20 | } 21 | } 22 | 23 | allprojects { 24 | configurations.all { 25 | resolutionStrategy { 26 | force "com.facebook.react:react-native:" + REACT_NATIVE_VERSION 27 | } 28 | } 29 | // ... 30 | } 31 | 32 | apply plugin: "com.facebook.react.rootproject" 33 | -------------------------------------------------------------------------------- /packages/plugin-node/src/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./services/index.ts"; 2 | 3 | import type { Plugin } from "@elizaos/core"; 4 | 5 | import { describeImage } from "./actions/describe-image.ts"; 6 | import { 7 | AwsS3Service, 8 | BrowserService, 9 | ImageDescriptionService, 10 | LlamaService, 11 | PdfService, 12 | SpeechService, 13 | TranscriptionService, 14 | VideoService, 15 | } from "./services/index.ts"; 16 | 17 | export type NodePlugin = ReturnType; 18 | 19 | export function createNodePlugin() { 20 | return { 21 | name: "default", 22 | description: "Default plugin, with basic actions and evaluators", 23 | services: [ 24 | new BrowserService(), 25 | new ImageDescriptionService(), 26 | new LlamaService(), 27 | new PdfService(), 28 | new SpeechService(), 29 | new TranscriptionService(), 30 | new VideoService(), 31 | new AwsS3Service(), 32 | ], 33 | actions: [describeImage], 34 | } as const satisfies Plugin; 35 | } 36 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/ios/Shakey_RN/AppDelegate.swift: -------------------------------------------------------------------------------- 1 | import UIKit 2 | import React 3 | import React_RCTAppDelegate 4 | import ReactAppDependencyProvider 5 | 6 | @main 7 | class AppDelegate: RCTAppDelegate { 8 | override func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil) -> Bool { 9 | self.moduleName = "Shakey_RN" 10 | self.dependencyProvider = RCTAppDependencyProvider() 11 | 12 | // You can add your custom initial props in the dictionary below. 13 | // They will be passed down to the ViewController used by React Native. 14 | self.initialProps = [:] 15 | 16 | return super.application(application, didFinishLaunchingWithOptions: launchOptions) 17 | } 18 | 19 | override func sourceURL(for bridge: RCTBridge) -> URL? { 20 | self.bundleURL() 21 | } 22 | 23 | override func bundleURL() -> URL? { 24 | #if DEBUG 25 | RCTBundleURLProvider.sharedSettings().jsBundleURL(forBundleRoot: "index") 26 | #else 27 | Bundle.main.url(forResource: "main", withExtension: "jsbundle") 28 | #endif 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /client/mobile/rn-shakey-app/src/navigation/MainNavigator.js: -------------------------------------------------------------------------------- 1 | import {createNativeStackNavigator} from '@react-navigation/native-stack'; 2 | import HomeScreen from '../screens/Home/HomeScreen'; 3 | import ChatScreen from '../screens/Chat/ChatScreen'; 4 | import {SafeAreaView} from 'react-native-safe-area-context'; 5 | 6 | const Stack = createNativeStackNavigator(); 7 | 8 | // StackNavigator component to define the app's navigation structure 9 | const StackNavigator = () => { 10 | return ( 11 | 15 | 16 | 17 | 18 | ); 19 | }; 20 | 21 | // MainNavigator component serves as the primary navigator for the app 22 | // It simply renders the StackNavigator component 23 | const MainNavigator = () => { 24 | return ( 25 | 26 | 27 | 28 | ); 29 | }; 30 | 31 | export default MainNavigator; 32 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2025 ShakeyOS 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | --------------------------------------------------------------------------------
{subtitle}