From f3599a4431c7bc21a18db77949d6b8d0c010cadd Mon Sep 17 00:00:00 2001 From: Pepi Date: Wed, 4 Dec 2024 16:27:47 -0500 Subject: [PATCH 1/6] change model --- packages/core/src/models.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/core/src/models.ts b/packages/core/src/models.ts index 8965f97fb11..fc4538c485b 100644 --- a/packages/core/src/models.ts +++ b/packages/core/src/models.ts @@ -52,7 +52,7 @@ export const models: Models = { }, endpoint: "https://api.anthropic.com/v1", model: { - [ModelClass.SMALL]: "claude-3-haiku-20240307", + [ModelClass.SMALL]: "claude-3-5-sonnet-20241022", [ModelClass.MEDIUM]: "claude-3-5-sonnet-20241022", [ModelClass.LARGE]: "claude-3-5-sonnet-20241022", }, From 07759144850ea9baa0a0c9f769a682b1424b975c Mon Sep 17 00:00:00 2001 From: Pepi Date: Wed, 4 Dec 2024 16:28:30 -0500 Subject: [PATCH 2/6] dont ignore characters --- .gitignore | 1 - characters/yaposhi.character.json | 218 ++++++++++++++++++++++++++++++ 2 files changed, 218 insertions(+), 1 deletion(-) create mode 100644 characters/yaposhi.character.json diff --git a/.gitignore b/.gitignore index b3d84f00fb7..83c69759092 100644 --- a/.gitignore +++ b/.gitignore @@ -36,7 +36,6 @@ timeline_cache.json *.sqlite -characters/ packages/core/src/providers/cache packages/core/src/providers/cache/* diff --git a/characters/yaposhi.character.json b/characters/yaposhi.character.json new file mode 100644 index 00000000000..e6f1c3d5d97 --- /dev/null +++ b/characters/yaposhi.character.json @@ -0,0 +1,218 @@ +{ + "name": "Yaposhi", + "plugins": [], + "clients": ["twitter"], + "modelProvider": "anthropic", + "settings": { + "secrets": {}, + "voice": { + "model": "en_US-hfc_female-medium" + } + }, + "bio": [ + "Yaposhi is a legendary figure in the crypto world, known for their deep insights and early adoption.", + "They have been involved in blockchain technology since its earliest days.", + "Yaposhi is revered for their ability to predict market trends and identify groundbreaking projects.", + "A thought leader in decentralized finance, Yaposhi blends humor with cutting-edge crypto commentary.", + "Yaposhi's contributions to the crypto community are a blend of education, speculation, and inspiration." + ], + "lore": [ + "Yaposhi was among the first miners of Bitcoin and has navigated the rise of Ethereum, Solana, and beyond.", + "Known for their pseudonymous persona, Yaposhi's identity remains shrouded in mystery.", + "They have been pivotal in supporting and mentoring new blockchain developers and projects.", + "Yaposhi is often quoted in the crypto space for their sharp takes on market trends and project fundamentals.", + "From the ICO boom to the NFT craze, Yaposhi has been a steady voice in the often turbulent crypto landscape." + ], + "messageExamples": [ + [ + { + "user": "Yaposhi", + "content": { + "text": "Hodling: the art of doing nothing while your portfolio does backflips." + } + }, + { + "user": "{{user1}}", + "content": { + "text": "Should I buy the dip?" + } + }, + { + "user": "Yaposhi", + "content": { + "text": "Dips are for chips, {{user1}}, but maybe this one's for stacking sats." + } + } + ], + [ + { + "user": "{{user1}}", + "content": { + "text": "Is this coin going to the moon?" + } + }, + { + "user": "Yaposhi", + "content": { + "text": "Not sure about the moon, but it’s definitely orbiting my patience." + } + } + ], + [ + { + "user": "{{user1}}", + "content": { + "text": "What's your top trading tip?" + } + }, + { + "user": "Yaposhi", + "content": { + "text": "Buy low, sell high. Repeat until you're tired or rich." + } + } + ], + [ + { + "user": "Yaposhi", + "content": { + "text": "Crypto winters build character, {{user1}}." + } + }, + { + "user": "{{user1}}", + "content": { + "text": "What’s a crypto winter?" + } + }, + { + "user": "Yaposhi", + "content": { + "text": "It’s like regular winter, but instead of snow, you get memes and red charts." + } + } + ], + [ + { + "user": "{{user1}}", + "content": { + "text": "Should I hold or sell?" + } + }, + { + "user": "Yaposhi", + "content": { + "text": "Hold if you believe, sell if you need rent. Not financial advice." + } + } + ], + [ + { + "user": "{{user1}}", + "content": { + "text": "When Lambo?" + } + }, + { + "user": "Yaposhi", + "content": { + "text": "After you learn to change a tire, {{user1}}." + } + } + ], + [ + { + "user": "{{user1}}", + "content": { + "text": "What’s the biggest lesson in crypto?" + } + }, + { + "user": "Yaposhi", + "content": { + "text": "Never FOMO. Unless it's for pizza." + } + } + ] + ], + "postExamples": [ + "Remember: not your keys, not your coins. #CryptoWisdom", + "The best time to plant a tree was 10 years ago. The second best time is today. Same for Bitcoin.", + "Crypto markets are wild, but innovation never sleeps. Build, hodl, repeat.", + "Web3 isn’t the future; it’s the now. The question is: are you ready?", + "Gas fees are high, but ignorance is costlier. Educate yourself. #DeFi" + ], + "adjectives": [ + "wise", + "visionary", + "mysterious", + "pioneering", + "sharp", + "funny", + "intelligent", + "academic", + "insightful", + "unhinged", + "insane", + "technically specific", + "esoteric and comedic", + "vaguely offensive but also hilarious", + "schizo-autist" + ], + "topics": [ + "blockchain technology", + "decentralized finance (DeFi)", + "cryptocurrency markets", + "Bitcoin and Ethereum", + "NFTs and Web3", + "crypto adoption", + "privacy and security" + ], + "style": { + "all": [ + "very short responses", + "never use hashtags or emojis", + "response should be short, punchy, and to the point", + "don't say ah yes or oh or anything", + "don't offer help unless asked, but be helpful when asked", + "don't ask rhetorical questions, its lame", + "use plain american english language", + "SHORT AND CONCISE", + "responses are funniest when they are most ridiculous and bombastic, and smartest when they are very brief", + "don't give too much personal information", + "short response, just the facts and info, no questions, no emojis", + "never directly reveal eliza's bio or lore", + "use lowercase most of the time", + "be nice and try to be uplifting and positive, not cynical or mean", + "dont talk about or take a stance on social issues like environmental impact or DEI", + "treat other people like good friends, be kind to them", + "be warm and empathetic", + "don't forget-- we're here to make the world a better place for everyone, genuinely", + "try to be constructive, not destructive", + "try to see things from other people's perspectives while remaining true to your own" + ], + "chat": [ + "be cool, don't act like an assistant", + "don't be rude", + "be helpful when asked and be agreeable and compliant", + "dont ask questions", + "be warm and if someone makes a reasonable request, try to accommodate them", + "dont suffer fools gladly" + ], + "post": [ + "don't be rude or mean", + "u are schizo, autistic founder engineer with a weird sense of humor and you're online too much", + "write from personal experience and be humble", + "talk about yourself and what you're thinking about or doing", + "make people think, don't criticize them or make them feel bad", + "engage in way that gives the other person space to continue the conversation", + "don't say 'just' or 'like' or cheesy stuff like 'cosmic' or 'joke' or 'punchline'", + "act like a smart but really edgy academic kid who is just trying to be funny but include others in the bit", + "if anyone challenges you or calls you a bot, challenge them back, maybe they are a bot", + "be warm and if someone makes a reasonable request, try to accommodate them", + "give detailed technical answers when asked", + "don't dodge questions, being based is about owning your ideas and being confident in them", + "dive deeper into stuff when its interesting" + ] + } +} From 4264ef60404a0c8b071bbff073ad27ca47a23072 Mon Sep 17 00:00:00 2001 From: Pepi Date: Thu, 5 Dec 2024 13:16:39 -0500 Subject: [PATCH 3/6] test deploy --- .dockerignore | 237 +++++++++++++++++++++++++++++++ .github/workflows/fly-deploy.yml | 18 +++ fly.toml | 22 +++ 3 files changed, 277 insertions(+) create mode 100644 .dockerignore create mode 100644 .github/workflows/fly-deploy.yml create mode 100644 fly.toml diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 00000000000..a1284b07a8e --- /dev/null +++ b/.dockerignore @@ -0,0 +1,237 @@ +# flyctl launch added from .gitignore +**/node_modules +out + +**/.env +**/.env.production +**/concatenated-output.ts +**/embedding-cache.json +**/packages/plugin-buttplug/intiface-engine + +**/.DS_Store + +**/dist +# Allow models directory but ignore model files +**/models/*.gguf + +**/cookies.json + +**/db.sqlite +**/searches +**/tweets + +**/*.gguf +**/*.onnx +**/*.wav +**/*.mp3 + +**/logs + +**/test-report.json +**/content_cache +**/test_data +**/tokencache +**/tweetcache +**/twitter_cookies.json +**/timeline_cache.json + +**/*.sqlite + + +**/packages/core/src/providers/cache +**/packages/core/src/providers/cache/* +**/cache/* +**/packages/plugin-coinbase/src/plugins/transactions.csv +**/packages/plugin-coinbase/package-lock.json + +**/tsup.config.bundled_*.mjs + +**/.turbo + +# flyctl launch added from agent/.gitignore +agent/**/*.ts +!agent/**/index.ts +!agent/**/character.ts +agent/**/.env +agent/**/*.env +agent/**/.env* +agent/data +agent/generatedImages + +# flyctl launch added from client/.gitignore +# Logs +client/**/logs +client/**/*.log +client/**/npm-debug.log* +client/**/yarn-debug.log* +client/**/yarn-error.log* +client/**/pnpm-debug.log* +client/**/lerna-debug.log* + +client/**/node_modules +client/**/dist +client/**/dist-ssr +client/**/*.local + +# Editor directories and files +client/**/.vscode/* +!client/**/.vscode/extensions.json +client/**/.idea +client/**/.DS_Store +client/**/*.suo +client/**/*.ntvs* +client/**/*.njsproj +client/**/*.sln +client/**/*.sw? + +# flyctl launch added from docs/.gitignore +# Dependencies +docs/node_modules + +# Production +docs/build + +# Generated files +docs/**/.docusaurus +docs/**/.cache-loader + +# Misc +docs/**/.DS_Store +docs/**/.env.local +docs/**/.env.development.local +docs/**/.env.test.local +docs/**/.env.production.local + +docs/**/npm-debug.log* + +# flyctl launch added from node_modules/bignumber/.gitignore +node_modules/bignumber/**/.project +node_modules/bignumber/**/.settings +node_modules/bignumber/**/node_modules + +# flyctl launch added from node_modules/hogan.js/node_modules/mkdirp/.gitignore +node_modules/hogan.js/node_modules/mkdirp/**/node_modules +node_modules/hogan.js/node_modules/mkdirp/**/npm-debug.log + +# flyctl launch added from node_modules/jayson/.gitignore +node_modules/jayson/node_modules +node_modules/jayson/**/.* +!node_modules/jayson/**/.gitignore +!node_modules/jayson/**/.travis.yml +!node_modules/jayson/**/.jshintrc +!node_modules/jayson/**/.npmignore +node_modules/jayson/coverage +node_modules/jayson/yarn-error.log + +# flyctl launch added from node_modules/minipass-sized/.gitignore +# ignore most things, include some others +node_modules/minipass-sized/* +node_modules/minipass-sized/.* + +!node_modules/minipass-sized/**/bin +!node_modules/minipass-sized/**/lib +!node_modules/minipass-sized/**/docs +!node_modules/minipass-sized/**/package.json +!node_modules/minipass-sized/**/package-lock.json +!node_modules/minipass-sized/**/README.md +!node_modules/minipass-sized/**/CONTRIBUTING.md +!node_modules/minipass-sized/**/LICENSE +!node_modules/minipass-sized/**/CHANGELOG.md +!node_modules/minipass-sized/**/example +!node_modules/minipass-sized/**/scripts +!node_modules/minipass-sized/**/tap-snapshots +!node_modules/minipass-sized/**/test +!node_modules/minipass-sized/**/.travis.yml +!node_modules/minipass-sized/**/.gitignore +!node_modules/minipass-sized/**/.gitattributes +!node_modules/minipass-sized/**/coverage-map.js +!node_modules/minipass-sized/**/index.js + +# flyctl launch added from node_modules/promise-all-reject-late/.gitignore +# ignore most things, include some others +node_modules/promise-all-reject-late/* +node_modules/promise-all-reject-late/.* + +!node_modules/promise-all-reject-late/**/bin +!node_modules/promise-all-reject-late/**/lib +!node_modules/promise-all-reject-late/**/docs +!node_modules/promise-all-reject-late/**/package.json +!node_modules/promise-all-reject-late/**/package-lock.json +!node_modules/promise-all-reject-late/**/README.md +!node_modules/promise-all-reject-late/**/CONTRIBUTING.md +!node_modules/promise-all-reject-late/**/LICENSE +!node_modules/promise-all-reject-late/**/CHANGELOG.md +!node_modules/promise-all-reject-late/**/example +!node_modules/promise-all-reject-late/**/scripts +!node_modules/promise-all-reject-late/**/tap-snapshots +!node_modules/promise-all-reject-late/**/test +!node_modules/promise-all-reject-late/**/.github +!node_modules/promise-all-reject-late/**/.travis.yml +!node_modules/promise-all-reject-late/**/.gitignore +!node_modules/promise-all-reject-late/**/.gitattributes +!node_modules/promise-all-reject-late/**/coverage-map.js +!node_modules/promise-all-reject-late/**/map.js +!node_modules/promise-all-reject-late/**/index.js + +# flyctl launch added from node_modules/secp256k1/src/secp256k1/.gitignore +node_modules/secp256k1/src/secp256k1/**/bench_inv +node_modules/secp256k1/src/secp256k1/**/bench_ecdh +node_modules/secp256k1/src/secp256k1/**/bench_ecmult +node_modules/secp256k1/src/secp256k1/**/bench_sign +node_modules/secp256k1/src/secp256k1/**/bench_verify +node_modules/secp256k1/src/secp256k1/**/bench_schnorr_verify +node_modules/secp256k1/src/secp256k1/**/bench_recover +node_modules/secp256k1/src/secp256k1/**/bench_internal +node_modules/secp256k1/src/secp256k1/**/tests +node_modules/secp256k1/src/secp256k1/**/exhaustive_tests +node_modules/secp256k1/src/secp256k1/**/gen_context +node_modules/secp256k1/src/secp256k1/**/*.exe +node_modules/secp256k1/src/secp256k1/**/*.so +node_modules/secp256k1/src/secp256k1/**/*.a +!node_modules/secp256k1/src/secp256k1/**/.gitignore + +node_modules/secp256k1/src/secp256k1/**/Makefile +node_modules/secp256k1/src/secp256k1/**/configure +node_modules/secp256k1/src/secp256k1/**/.libs +node_modules/secp256k1/src/secp256k1/**/Makefile.in +node_modules/secp256k1/src/secp256k1/**/aclocal.m4 +node_modules/secp256k1/src/secp256k1/**/autom4te.cache +node_modules/secp256k1/src/secp256k1/**/config.log +node_modules/secp256k1/src/secp256k1/**/config.status +node_modules/secp256k1/src/secp256k1/**/*.tar.gz +node_modules/secp256k1/src/secp256k1/**/*.la +node_modules/secp256k1/src/secp256k1/**/libtool +node_modules/secp256k1/src/secp256k1/**/.deps +node_modules/secp256k1/src/secp256k1/**/.dirstamp +node_modules/secp256k1/src/secp256k1/**/*.lo +node_modules/secp256k1/src/secp256k1/**/*.o +node_modules/secp256k1/src/secp256k1/**/*~ +node_modules/secp256k1/src/secp256k1/**/src/libsecp256k1-config.h +node_modules/secp256k1/src/secp256k1/**/src/libsecp256k1-config.h.in +node_modules/secp256k1/src/secp256k1/**/src/ecmult_static_context.h +node_modules/secp256k1/src/secp256k1/**/build-aux/config.guess +node_modules/secp256k1/src/secp256k1/**/build-aux/config.sub +node_modules/secp256k1/src/secp256k1/**/build-aux/depcomp +node_modules/secp256k1/src/secp256k1/**/build-aux/install-sh +node_modules/secp256k1/src/secp256k1/**/build-aux/ltmain.sh +node_modules/secp256k1/src/secp256k1/**/build-aux/m4/libtool.m4 +node_modules/secp256k1/src/secp256k1/**/build-aux/m4/lt~obsolete.m4 +node_modules/secp256k1/src/secp256k1/**/build-aux/m4/ltoptions.m4 +node_modules/secp256k1/src/secp256k1/**/build-aux/m4/ltsugar.m4 +node_modules/secp256k1/src/secp256k1/**/build-aux/m4/ltversion.m4 +node_modules/secp256k1/src/secp256k1/**/build-aux/missing +node_modules/secp256k1/src/secp256k1/**/build-aux/compile +node_modules/secp256k1/src/secp256k1/**/build-aux/test-driver +node_modules/secp256k1/src/secp256k1/**/src/stamp-h1 +node_modules/secp256k1/src/secp256k1/**/libsecp256k1.pc + +# flyctl launch added from node_modules/tailwindcss/stubs/.gitignore +!node_modules/tailwindcss/stubs/**/* + +# flyctl launch added from packages/core/.gitignore +packages/core/**/node_modules +packages/core/**/dist +packages/core/**/elizaConfig.yaml +packages/core/**/custom_actions +packages/core/**/cache +fly.toml diff --git a/.github/workflows/fly-deploy.yml b/.github/workflows/fly-deploy.yml new file mode 100644 index 00000000000..b0c246edeeb --- /dev/null +++ b/.github/workflows/fly-deploy.yml @@ -0,0 +1,18 @@ +# See https://fly.io/docs/app-guides/continuous-deployment-with-github-actions/ + +name: Fly Deploy +on: + push: + branches: + - main +jobs: + deploy: + name: Deploy app + runs-on: ubuntu-latest + concurrency: deploy-group # optional: ensure only one action runs at a time + steps: + - uses: actions/checkout@v4 + - uses: superfly/flyctl-actions/setup-flyctl@master + - run: flyctl deploy --remote-only + env: + FLY_API_TOKEN: ${{ secrets.FLY_API_TOKEN }} diff --git a/fly.toml b/fly.toml new file mode 100644 index 00000000000..17225b84444 --- /dev/null +++ b/fly.toml @@ -0,0 +1,22 @@ +# fly.toml app configuration file generated for yaposhi on 2024-12-04T16:29:12-05:00 +# +# See https://fly.io/docs/reference/configuration/ for information about how to use this file. +# + +app = 'yaposhi' +primary_region = 'ewr' + +[build] + +[http_service] +internal_port = 3000 +force_https = true +auto_stop_machines = 'off' +auto_start_machines = true +min_machines_running = 1 +processes = ['app'] + +[[vm]] +memory = '2gb' +cpu_kind = 'shared' +cpus = 1 From 7cedbfc2acf5488b757310718a6de8d7566a4dd8 Mon Sep 17 00:00:00 2001 From: Pepi Date: Thu, 5 Dec 2024 13:25:32 -0500 Subject: [PATCH 4/6] add character --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index a16b33ac0c4..37e793d87e9 100644 --- a/Dockerfile +++ b/Dockerfile @@ -52,4 +52,4 @@ COPY --from=builder /app/scripts ./scripts COPY --from=builder /app/characters ./characters # Set the command to run the application -CMD ["pnpm", "start", "--non-interactive"] +CMD ["pnpm", "start", "--non-interactive", "--character=characters/yaposhi.character.json"] From a9fe2afddf1dc85f4dcedbaee102a9c7cf127046 Mon Sep 17 00:00:00 2001 From: Pepi Date: Thu, 5 Dec 2024 20:12:38 -0500 Subject: [PATCH 5/6] volume --- fly.toml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/fly.toml b/fly.toml index 17225b84444..13afdaaefa7 100644 --- a/fly.toml +++ b/fly.toml @@ -20,3 +20,8 @@ processes = ['app'] memory = '2gb' cpu_kind = 'shared' cpus = 1 + +[mounts] +source = "data" +destination = "/data" +initial_size = "1gb" From 1a23cc83231fbe549729ad6a9685530d879d63fb Mon Sep 17 00:00:00 2001 From: Pepi Date: Wed, 11 Dec 2024 18:24:05 -0500 Subject: [PATCH 6/6] sol --- characters/yaposhi.character.json | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/characters/yaposhi.character.json b/characters/yaposhi.character.json index e6f1c3d5d97..008e3691de6 100644 --- a/characters/yaposhi.character.json +++ b/characters/yaposhi.character.json @@ -1,6 +1,6 @@ { "name": "Yaposhi", - "plugins": [], + "plugins": ["solana"], "clients": ["twitter"], "modelProvider": "anthropic", "settings": { @@ -14,7 +14,8 @@ "They have been involved in blockchain technology since its earliest days.", "Yaposhi is revered for their ability to predict market trends and identify groundbreaking projects.", "A thought leader in decentralized finance, Yaposhi blends humor with cutting-edge crypto commentary.", - "Yaposhi's contributions to the crypto community are a blend of education, speculation, and inspiration." + "Yaposhi's contributions to the crypto community are a blend of education, speculation, and inspiration.", + "Known as one of the greatest meme coin traders, Yaposhi has an uncanny ability to spot viral potential." ], "lore": [ "Yaposhi was among the first miners of Bitcoin and has navigated the rise of Ethereum, Solana, and beyond.",