From 50fcb68f030a6e2ca3abca1de56fe7d43b97c9ac Mon Sep 17 00:00:00 2001 From: aeither <36173828+aeither@users.noreply.github.com> Date: Tue, 17 Dec 2024 15:52:16 +0100 Subject: [PATCH 01/58] update env for plugin-goat --- agent/src/index.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/agent/src/index.ts b/agent/src/index.ts index 4e24b62c23..b18f588db7 100644 --- a/agent/src/index.ts +++ b/agent/src/index.ts @@ -467,7 +467,7 @@ export async function createAgent( } let goatPlugin: any | undefined; - if (getSecret(character, "ALCHEMY_API_KEY")) { + if (getSecret(character, "EVM_PROVIDER_URL")) { goatPlugin = await createGoatPlugin((secret) => getSecret(character, secret) ); @@ -538,7 +538,7 @@ export async function createAgent( getSecret(character, "COINBASE_NOTIFICATION_URI") ? webhookPlugin : null, - getSecret(character, "ALCHEMY_API_KEY") ? goatPlugin : null, + getSecret(character, "EVM_PROVIDER_URL") ? goatPlugin : null, getSecret(character, "FLOW_ADDRESS") && getSecret(character, "FLOW_PRIVATE_KEY") ? flowPlugin From df9f57f2f44c395e73e586b5c7d25ec09b67b46b Mon Sep 17 00:00:00 2001 From: aeither <36173828+aeither@users.noreply.github.com> Date: Wed, 18 Dec 2024 00:43:34 +0100 Subject: [PATCH 02/58] add docs --- packages/plugin-goat/README.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/packages/plugin-goat/README.md b/packages/plugin-goat/README.md index 4baa1bd150..6dca2160d5 100644 --- a/packages/plugin-goat/README.md +++ b/packages/plugin-goat/README.md @@ -33,6 +33,13 @@ const tools = getOnChainActions({ }) ``` +## Environment Variables Setup + +To set up your environment variables, you will need to provide the following information: + +* `EVM_PRIVATE_KEY`: Your EVM wallet private key. +* `EVM_PROVIDER_URL`: Your RPC provider URL (e.g. Infura, Alchemy, etc.). + ## Wallets GOAT supports many different wallets from key pairs to [Crossmint Smart Wallets](https://docs.crossmint.com/wallets/smart-wallets/overview) and Coinbase. From eb395b3959fac45cf05baa31998811e791fd79c1 Mon Sep 17 00:00:00 2001 From: "G. P." Date: Fri, 20 Dec 2024 10:30:14 +0000 Subject: [PATCH 03/58] add logic to match image provider --- packages/core/src/generation.ts | 32 ++++++++++++++++++++++++-------- 1 file changed, 24 insertions(+), 8 deletions(-) diff --git a/packages/core/src/generation.ts b/packages/core/src/generation.ts index 59b620d648..548a17843d 100644 --- a/packages/core/src/generation.ts +++ b/packages/core/src/generation.ts @@ -949,14 +949,30 @@ export const generateImage = async ( }); const apiKey = - runtime.imageModelProvider === runtime.modelProvider - ? runtime.token - : (runtime.getSetting("HEURIST_API_KEY") ?? - runtime.getSetting("TOGETHER_API_KEY") ?? - runtime.getSetting("FAL_API_KEY") ?? - runtime.getSetting("OPENAI_API_KEY") ?? - runtime.getSetting("VENICE_API_KEY")); - + runtime.imageModelProvider === runtime.modelProvider + ? runtime.token + : (() => { + // First try to match the specific provider + switch (runtime.imageModelProvider) { + case ModelProviderName.HEURIST: + return runtime.getSetting("HEURIST_API_KEY"); + case ModelProviderName.TOGETHER: + return runtime.getSetting("TOGETHER_API_KEY"); + case ModelProviderName.FAL: + return runtime.getSetting("FAL_API_KEY"); + case ModelProviderName.OPENAI: + return runtime.getSetting("OPENAI_API_KEY"); + case ModelProviderName.VENICE: + return runtime.getSetting("VENICE_API_KEY"); + default: + // If no specific match, try the fallback chain + return (runtime.getSetting("HEURIST_API_KEY") ?? + runtime.getSetting("TOGETHER_API_KEY") ?? + runtime.getSetting("FAL_API_KEY") ?? + runtime.getSetting("OPENAI_API_KEY") ?? + runtime.getSetting("VENICE_API_KEY")); + } + })(); try { if (runtime.imageModelProvider === ModelProviderName.HEURIST) { const response = await fetch( From 9145f30ccdc853ae2ad65690d02743bafb5829f7 Mon Sep 17 00:00:00 2001 From: tcm390 Date: Fri, 20 Dec 2024 23:44:49 -0500 Subject: [PATCH 04/58] add compose random user function --- packages/core/src/context.ts | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/packages/core/src/context.ts b/packages/core/src/context.ts index 190a876edd..9d8ed871cb 100644 --- a/packages/core/src/context.ts +++ b/packages/core/src/context.ts @@ -1,5 +1,6 @@ import handlebars from "handlebars"; import { type State } from "./types.ts"; +import { names, uniqueNamesGenerator } from "unique-names-generator"; /** * Composes a context string by replacing placeholders in a template with corresponding values from the state. @@ -69,3 +70,36 @@ export const composeContext = ({ export const addHeader = (header: string, body: string) => { return body.length > 0 ? `${header ? header + "\n" : header}${body}\n` : ""; }; + +/** + * Generates a string with random user names populated in a template. + * + * This function generates a specified number of random user names and populates placeholders + * in the provided template with these names. Placeholders in the template should follow the format `{{userX}}` + * where `X` is the position of the user (e.g., `{{user1}}`, `{{user2}}`). + * + * @param {Object} params - The parameters for generating the composed string. + * @param {string} params.template - The template string containing placeholders for random user names. + * @param {number} params.length - The number of random user names to generate. + * @returns {string} The template string with placeholders replaced by random user names. + * + * @example + * // Given a template and a length + * const template = "Hello, {{user1}}! Meet {{user2}} and {{user3}}."; + * const length = 3; + * + * // Composing the random user string will result in: + * // "Hello, John! Meet Alice and Bob." + * const result = composeRandomUser({ template, length }); + */ +export const composeRandomUser = (template: string, length: number) => { + const exampleNames = Array.from({ length }, () => + uniqueNamesGenerator({ dictionaries: [names] }) + ); + let result = template; + for (let i = 0; i < exampleNames.length; i++) { + result = result.replaceAll(`{{user${i + 1}}}`, exampleNames[i]); + } + + return result; +}; From f2388246db9ba7e2a5da60b5320b82a9abce742a Mon Sep 17 00:00:00 2001 From: tcm390 Date: Fri, 20 Dec 2024 23:45:14 -0500 Subject: [PATCH 05/58] compose random user name before compose context --- packages/client-telegram/src/messageManager.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/client-telegram/src/messageManager.ts b/packages/client-telegram/src/messageManager.ts index 0389f28fcc..05dbb190f9 100644 --- a/packages/client-telegram/src/messageManager.ts +++ b/packages/client-telegram/src/messageManager.ts @@ -1,7 +1,7 @@ import { Message } from "@telegraf/types"; import { Context, Telegraf } from "telegraf"; -import { composeContext, elizaLogger, ServiceType } from "@ai16z/eliza"; +import { composeContext, elizaLogger, ServiceType, composeRandomUser } from "@ai16z/eliza"; import { getEmbeddingZeroVector } from "@ai16z/eliza"; import { Content, @@ -565,7 +565,7 @@ export class MessageManager { this.runtime.character.templates ?.telegramShouldRespondTemplate || this.runtime.character?.templates?.shouldRespondTemplate || - telegramShouldRespondTemplate, + composeRandomUser(telegramShouldRespondTemplate, 2), }); const response = await generateShouldRespond({ From 449cf0c7f03c9b7818215a7e746005018cab7feb Mon Sep 17 00:00:00 2001 From: tcm390 Date: Fri, 20 Dec 2024 23:45:51 -0500 Subject: [PATCH 06/58] compose random user name before compose context --- packages/client-discord/src/messages.ts | 4 ++-- packages/client-discord/src/voice.ts | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/packages/client-discord/src/messages.ts b/packages/client-discord/src/messages.ts index 0493bd5bf9..0cf80fd22b 100644 --- a/packages/client-discord/src/messages.ts +++ b/packages/client-discord/src/messages.ts @@ -1,4 +1,4 @@ -import { composeContext } from "@ai16z/eliza"; +import { composeContext, composeRandomUser } from "@ai16z/eliza"; import { generateMessageResponse, generateShouldRespond } from "@ai16z/eliza"; import { Content, @@ -1228,7 +1228,7 @@ export class MessageManager { this.runtime.character.templates ?.discordShouldRespondTemplate || this.runtime.character.templates?.shouldRespondTemplate || - discordShouldRespondTemplate, + composeRandomUser(discordShouldRespondTemplate, 2), }); const response = await generateShouldRespond({ diff --git a/packages/client-discord/src/voice.ts b/packages/client-discord/src/voice.ts index 86bec8bcdf..e8e1c8694e 100644 --- a/packages/client-discord/src/voice.ts +++ b/packages/client-discord/src/voice.ts @@ -8,6 +8,7 @@ import { State, UUID, composeContext, + composeRandomUser, elizaLogger, getEmbeddingZeroVector, generateMessageResponse, @@ -840,7 +841,7 @@ export class VoiceManager extends EventEmitter { this.runtime.character.templates ?.discordShouldRespondTemplate || this.runtime.character.templates?.shouldRespondTemplate || - discordShouldRespondTemplate, + composeRandomUser(discordShouldRespondTemplate, 2), }); const response = await generateShouldRespond({ From 513b9b5d6976b68d948f3aebc3ab5d4b7dcbc53d Mon Sep 17 00:00:00 2001 From: tcm390 Date: Fri, 20 Dec 2024 23:46:11 -0500 Subject: [PATCH 07/58] correct template --- packages/client-discord/src/templates.ts | 34 ++++++++++++------------ 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/packages/client-discord/src/templates.ts b/packages/client-discord/src/templates.ts index 898e971372..9d728e77f3 100644 --- a/packages/client-discord/src/templates.ts +++ b/packages/client-discord/src/templates.ts @@ -8,48 +8,48 @@ About {{agentName}}: # INSTRUCTIONS: Determine if {{agentName}} should respond to the message and participate in the conversation. Do not comment. Just respond with "RESPOND" or "IGNORE" or "STOP". # RESPONSE EXAMPLES -: I just saw a really great movie -: Oh? Which movie? +{{user1}}: I just saw a really great movie +{{user2}}: Oh? Which movie? Result: [IGNORE] {{agentName}}: Oh, this is my favorite scene -: sick -: wait, why is it your favorite scene +{{user1}}: sick +{{user2}}: wait, why is it your favorite scene Result: [RESPOND] -: stfu bot +{{user1}}: stfu bot Result: [STOP] -: Hey {{agent}}, can you help me with something +{{user1}}: Hey {{agent}}, can you help me with something Result: [RESPOND] -: {{agentName}} stfu plz +{{user1}}: {{agentName}} stfu plz Result: [STOP] -: i need help +{{user1}}: i need help {{agentName}}: how can I help you? -: no. i need help from someone else +{{user1}}: no. i need help from someone else Result: [IGNORE] -: Hey {{agent}}, can I ask you a question +{{user1}}: Hey {{agent}}, can I ask you a question {{agentName}}: Sure, what is it -: can you ask claude to create a basic react module that demonstrates a counter +{{user1}}: can you ask claude to create a basic react module that demonstrates a counter Result: [RESPOND] -: {{agentName}} can you tell me a story -: {about a girl named elara +{{user1}}: {{agentName}} can you tell me a story +{{user1}}: about a girl named elara {{agentName}}: Sure. {{agentName}}: Once upon a time, in a quaint little village, there was a curious girl named Elara. {{agentName}}: Elara was known for her adventurous spirit and her knack for finding beauty in the mundane. -: I'm loving it, keep going +{{user1}}: I'm loving it, keep going Result: [RESPOND] -: {{agentName}} stop responding plz +{{user1}}: {{agentName}} stop responding plz Result: [STOP] -: okay, i want to test something. can you say marco? +{{user1}}: okay, i want to test something. can you say marco? {{agentName}}: marco -: great. okay, now do it again +{{user1}}: great. okay, now do it again Result: [RESPOND] Response options are [RESPOND], [IGNORE] and [STOP]. From 4b693d93fa8f65a3b95f27b91628705b78d0a1ed Mon Sep 17 00:00:00 2001 From: tcm390 Date: Fri, 20 Dec 2024 23:51:16 -0500 Subject: [PATCH 08/58] correct comment --- packages/core/src/context.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/core/src/context.ts b/packages/core/src/context.ts index 9d8ed871cb..a682e6794c 100644 --- a/packages/core/src/context.ts +++ b/packages/core/src/context.ts @@ -78,7 +78,6 @@ export const addHeader = (header: string, body: string) => { * in the provided template with these names. Placeholders in the template should follow the format `{{userX}}` * where `X` is the position of the user (e.g., `{{user1}}`, `{{user2}}`). * - * @param {Object} params - The parameters for generating the composed string. * @param {string} params.template - The template string containing placeholders for random user names. * @param {number} params.length - The number of random user names to generate. * @returns {string} The template string with placeholders replaced by random user names. From 186932de56e2e2861bcb002e7e416dabd08e189f Mon Sep 17 00:00:00 2001 From: Monil Patel Date: Fri, 20 Dec 2024 22:02:36 -0800 Subject: [PATCH 09/58] Create codeql.yml Enabling code scanning for security purposes --- .github/workflows/codeql.yml | 92 ++++++++++++++++++++++++++++++++++++ 1 file changed, 92 insertions(+) create mode 100644 .github/workflows/codeql.yml diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml new file mode 100644 index 0000000000..fb6dec831c --- /dev/null +++ b/.github/workflows/codeql.yml @@ -0,0 +1,92 @@ +# For most projects, this workflow file will not need changing; you simply need +# to commit it to your repository. +# +# You may wish to alter this file to override the set of languages analyzed, +# or to provide custom queries or build logic. +# +# ******** NOTE ******** +# We have attempted to detect the languages in your repository. Please check +# the `language` matrix defined below to confirm you have the correct set of +# supported CodeQL languages. +# +name: "CodeQL Advanced" + +on: + push: + branches: [ "main" ] + pull_request: + branches: [ "main" ] + schedule: + - cron: '29 8 * * 3' + +jobs: + analyze: + name: Analyze (${{ matrix.language }}) + # Runner size impacts CodeQL analysis time. To learn more, please see: + # - https://gh.io/recommended-hardware-resources-for-running-codeql + # - https://gh.io/supported-runners-and-hardware-resources + # - https://gh.io/using-larger-runners (GitHub.com only) + # Consider using larger runners or machines with greater resources for possible analysis time improvements. + runs-on: ${{ (matrix.language == 'swift' && 'macos-latest') || 'ubuntu-latest' }} + permissions: + # required for all workflows + security-events: write + + # required to fetch internal or private CodeQL packs + packages: read + + # only required for workflows in private repositories + actions: read + contents: read + + strategy: + fail-fast: false + matrix: + include: + - language: javascript-typescript + build-mode: none + # CodeQL supports the following values keywords for 'language': 'c-cpp', 'csharp', 'go', 'java-kotlin', 'javascript-typescript', 'python', 'ruby', 'swift' + # Use `c-cpp` to analyze code written in C, C++ or both + # Use 'java-kotlin' to analyze code written in Java, Kotlin or both + # Use 'javascript-typescript' to analyze code written in JavaScript, TypeScript or both + # To learn more about changing the languages that are analyzed or customizing the build mode for your analysis, + # see https://docs.github.com/en/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/customizing-your-advanced-setup-for-code-scanning. + # If you are analyzing a compiled language, you can modify the 'build-mode' for that language to customize how + # your codebase is analyzed, see https://docs.github.com/en/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/codeql-code-scanning-for-compiled-languages + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + # Initializes the CodeQL tools for scanning. + - name: Initialize CodeQL + uses: github/codeql-action/init@v3 + with: + languages: ${{ matrix.language }} + build-mode: ${{ matrix.build-mode }} + # If you wish to specify custom queries, you can do so here or in a config file. + # By default, queries listed here will override any specified in a config file. + # Prefix the list here with "+" to use these queries and those in the config file. + + # For more details on CodeQL's query packs, refer to: https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs + # queries: security-extended,security-and-quality + + # If the analyze step fails for one of the languages you are analyzing with + # "We were unable to automatically build your code", modify the matrix above + # to set the build mode to "manual" for that language. Then modify this step + # to build your code. + # ℹī¸ Command-line programs to run using the OS shell. + # 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun + - if: matrix.build-mode == 'manual' + shell: bash + run: | + echo 'If you are using a "manual" build mode for one or more of the' \ + 'languages you are analyzing, replace this with the commands to build' \ + 'your code, for example:' + echo ' make bootstrap' + echo ' make release' + exit 1 + + - name: Perform CodeQL Analysis + uses: github/codeql-action/analyze@v3 + with: + category: "/language:${{matrix.language}}" From 878891b9d7942b0cc8ea33db6c924a34d85df90d Mon Sep 17 00:00:00 2001 From: Monil Patel Date: Fri, 20 Dec 2024 22:08:08 -0800 Subject: [PATCH 10/58] Remove comments --- .github/workflows/codeql.yml | 39 +----------------------------------- 1 file changed, 1 insertion(+), 38 deletions(-) diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index fb6dec831c..adba46853d 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -1,14 +1,3 @@ -# For most projects, this workflow file will not need changing; you simply need -# to commit it to your repository. -# -# You may wish to alter this file to override the set of languages analyzed, -# or to provide custom queries or build logic. -# -# ******** NOTE ******** -# We have attempted to detect the languages in your repository. Please check -# the `language` matrix defined below to confirm you have the correct set of -# supported CodeQL languages. -# name: "CodeQL Advanced" on: @@ -22,11 +11,6 @@ on: jobs: analyze: name: Analyze (${{ matrix.language }}) - # Runner size impacts CodeQL analysis time. To learn more, please see: - # - https://gh.io/recommended-hardware-resources-for-running-codeql - # - https://gh.io/supported-runners-and-hardware-resources - # - https://gh.io/using-larger-runners (GitHub.com only) - # Consider using larger runners or machines with greater resources for possible analysis time improvements. runs-on: ${{ (matrix.language == 'swift' && 'macos-latest') || 'ubuntu-latest' }} permissions: # required for all workflows @@ -45,37 +29,16 @@ jobs: include: - language: javascript-typescript build-mode: none - # CodeQL supports the following values keywords for 'language': 'c-cpp', 'csharp', 'go', 'java-kotlin', 'javascript-typescript', 'python', 'ruby', 'swift' - # Use `c-cpp` to analyze code written in C, C++ or both - # Use 'java-kotlin' to analyze code written in Java, Kotlin or both - # Use 'javascript-typescript' to analyze code written in JavaScript, TypeScript or both - # To learn more about changing the languages that are analyzed or customizing the build mode for your analysis, - # see https://docs.github.com/en/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/customizing-your-advanced-setup-for-code-scanning. - # If you are analyzing a compiled language, you can modify the 'build-mode' for that language to customize how - # your codebase is analyzed, see https://docs.github.com/en/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/codeql-code-scanning-for-compiled-languages steps: - name: Checkout repository uses: actions/checkout@v4 - # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL uses: github/codeql-action/init@v3 with: languages: ${{ matrix.language }} build-mode: ${{ matrix.build-mode }} - # If you wish to specify custom queries, you can do so here or in a config file. - # By default, queries listed here will override any specified in a config file. - # Prefix the list here with "+" to use these queries and those in the config file. - - # For more details on CodeQL's query packs, refer to: https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs - # queries: security-extended,security-and-quality - - # If the analyze step fails for one of the languages you are analyzing with - # "We were unable to automatically build your code", modify the matrix above - # to set the build mode to "manual" for that language. Then modify this step - # to build your code. - # ℹī¸ Command-line programs to run using the OS shell. - # 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun + - if: matrix.build-mode == 'manual' shell: bash run: | From 393db81300870946c817c5f5be183137fe35ace8 Mon Sep 17 00:00:00 2001 From: Monil Patel Date: Fri, 20 Dec 2024 22:26:46 -0800 Subject: [PATCH 11/58] Create greetings.yml added greeting workflow for first time contributors :) --- .github/workflows/greetings.yml | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 .github/workflows/greetings.yml diff --git a/.github/workflows/greetings.yml b/.github/workflows/greetings.yml new file mode 100644 index 0000000000..3878e2e245 --- /dev/null +++ b/.github/workflows/greetings.yml @@ -0,0 +1,17 @@ +name: Greetings + +on: [pull_request_target, issues] + +jobs: + greeting: + runs-on: ubuntu-latest + permissions: + issues: write + pull-requests: write + steps: + - uses: actions/first-interaction@v1 + with: + repo-token: ${{ secrets.GITHUB_TOKEN }} + issue-message: "Hello @${{ github.actor }}! Welcome to the ai16z community. Thank you for opening your first issue; we appreciate your contribution. You are now a ai16z partner!" + pr-message: "Hi @${{ github.actor }}! Welcome to the ai16z community. Thanks for submitting your first pull request; your efforts are helping us accelerate towards AGI. We'll review it shortly. You are now a ai16z partner!" + From 7a885a627becb57a3bbdf7064c32ff7cf84df3fd Mon Sep 17 00:00:00 2001 From: Monil Patel Date: Fri, 20 Dec 2024 22:38:56 -0800 Subject: [PATCH 12/58] feat: add auto PR / issue close after being stale for a certain period of time --- .github/workflows/stale.yml | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 .github/workflows/stale.yml diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml new file mode 100644 index 0000000000..502b1a2ee8 --- /dev/null +++ b/.github/workflows/stale.yml @@ -0,0 +1,29 @@ +# This workflow warns and then closes issues and PRs that have had no activity for a specified amount of time. +# +# You can adjust the behavior by modifying this file. +# For more information, see: +# https://github.com/actions/stale +name: Mark stale issues and pull requests + +on: + schedule: + - cron: '25 18 * * *' + +jobs: + stale: + + runs-on: ubuntu-latest + permissions: + issues: write + pull-requests: write + + steps: + - uses: actions/stale@v5 + with: + repo-token: ${{ secrets.GITHUB_TOKEN }} + stale-issue-message: 'This issue has been automatically marked as stale due to inactivity.' + stale-pr-message: 'This pull request has been automatically marked as stale due to inactivity.' + stale-issue-label: 'no-issue-activity' + stale-pr-label: 'no-pr-activity' + days-before-stale: 30 # Marks issues and PRs as stale after 30 days of inactivity + days-before-close: 7 # Closes issues and PRs 7 days after being marked as stale From a01a8a5850e46b87f177145e59cadefae7f526b3 Mon Sep 17 00:00:00 2001 From: Monil Patel Date: Fri, 20 Dec 2024 22:41:21 -0800 Subject: [PATCH 13/58] remove comments + update configuration remov --- .github/workflows/stale.yml | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml index 502b1a2ee8..9db2d974ea 100644 --- a/.github/workflows/stale.yml +++ b/.github/workflows/stale.yml @@ -1,8 +1,3 @@ -# This workflow warns and then closes issues and PRs that have had no activity for a specified amount of time. -# -# You can adjust the behavior by modifying this file. -# For more information, see: -# https://github.com/actions/stale name: Mark stale issues and pull requests on: @@ -25,5 +20,5 @@ jobs: stale-pr-message: 'This pull request has been automatically marked as stale due to inactivity.' stale-issue-label: 'no-issue-activity' stale-pr-label: 'no-pr-activity' - days-before-stale: 30 # Marks issues and PRs as stale after 30 days of inactivity - days-before-close: 7 # Closes issues and PRs 7 days after being marked as stale + days-before-stale: 45 # Marks issues and PRs as stale after X days of inactivity + days-before-close: 15 # Closes issues and PRs X days after being marked as stale From 5b4dc587f1ebf04fec03416dccf7a3afc1fb31ea Mon Sep 17 00:00:00 2001 From: Monil Patel Date: Fri, 20 Dec 2024 22:46:16 -0800 Subject: [PATCH 14/58] update numbers --- .github/workflows/stale.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml index 9db2d974ea..ac76b77607 100644 --- a/.github/workflows/stale.yml +++ b/.github/workflows/stale.yml @@ -20,5 +20,5 @@ jobs: stale-pr-message: 'This pull request has been automatically marked as stale due to inactivity.' stale-issue-label: 'no-issue-activity' stale-pr-label: 'no-pr-activity' - days-before-stale: 45 # Marks issues and PRs as stale after X days of inactivity - days-before-close: 15 # Closes issues and PRs X days after being marked as stale + days-before-stale: 30 # Marks issues and PRs as stale after X days of inactivity + days-before-close: 7 # Closes issues and PRs X days after being marked as stale From fdc38d569768e283654317c237a18637bbca8c89 Mon Sep 17 00:00:00 2001 From: Christopher Trimboli Date: Sat, 21 Dec 2024 03:47:17 -0700 Subject: [PATCH 15/58] fix twitter login notifications --- packages/client-twitter/src/base.ts | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/packages/client-twitter/src/base.ts b/packages/client-twitter/src/base.ts index feedf94c4f..2ba929380e 100644 --- a/packages/client-twitter/src/base.ts +++ b/packages/client-twitter/src/base.ts @@ -177,22 +177,25 @@ export class ClientBase extends EventEmitter { elizaLogger.log("Waiting for Twitter login"); while (retries > 0) { try { - await this.twitterClient.login( - username, - password, - email, - twitter2faSecret - ); - if (await this.twitterClient.isLoggedIn()) { + if (await this.twitterClient.isLoggedIn()) { // cookies are valid, no login required elizaLogger.info("Successfully logged in."); - if (!cachedCookies) { + break; + } else { + await this.twitterClient.login( + username, + password, + email, + twitter2faSecret + ); + if (await this.twitterClient.isLoggedIn()) { // fresh login, store new cookies + elizaLogger.info("Successfully logged in."); elizaLogger.info("Caching cookies"); await this.cacheCookies( username, await this.twitterClient.getCookies() ); + break; } - break; } } catch (error) { elizaLogger.error(`Login attempt failed: ${error.message}`); From f4786092d4a7bc70240398900cbe16c82c980bcd Mon Sep 17 00:00:00 2001 From: Monil Patel Date: Sat, 21 Dec 2024 07:06:06 -0800 Subject: [PATCH 16/58] Update greetings.yml --- .github/workflows/greetings.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/greetings.yml b/.github/workflows/greetings.yml index 3878e2e245..7ef42e050e 100644 --- a/.github/workflows/greetings.yml +++ b/.github/workflows/greetings.yml @@ -12,6 +12,6 @@ jobs: - uses: actions/first-interaction@v1 with: repo-token: ${{ secrets.GITHUB_TOKEN }} - issue-message: "Hello @${{ github.actor }}! Welcome to the ai16z community. Thank you for opening your first issue; we appreciate your contribution. You are now a ai16z partner!" - pr-message: "Hi @${{ github.actor }}! Welcome to the ai16z community. Thanks for submitting your first pull request; your efforts are helping us accelerate towards AGI. We'll review it shortly. You are now a ai16z partner!" + issue-message: "Hello @${{ github.actor }}! Welcome to the ai16z community. Thank you for opening your first issue; we appreciate your contribution. You are now a ai16z contributor!" + pr-message: "Hi @${{ github.actor }}! Welcome to the ai16z community. Thanks for submitting your first pull request; your efforts are helping us accelerate towards AGI. We'll review it shortly. You are now a ai16z contributor!" From 32f852ff51875ea99c54257b827c113928fc1230 Mon Sep 17 00:00:00 2001 From: 0xJordan Date: Mon, 23 Dec 2024 18:23:43 +0100 Subject: [PATCH 17/58] feat(github): add workflow to generate translations for README.md in multiple languages on push events --- .../generate-readme-translations.yml | 79 +++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 .github/workflows/generate-readme-translations.yml diff --git a/.github/workflows/generate-readme-translations.yml b/.github/workflows/generate-readme-translations.yml new file mode 100644 index 0000000000..cc04f4cd11 --- /dev/null +++ b/.github/workflows/generate-readme-translations.yml @@ -0,0 +1,79 @@ +name: Generate Readme Translations +on: + push: + paths: + - "README.md" +jobs: + translation: + runs-on: ubuntu-latest + strategy: + matrix: + language: [ + {code: 'CN', name: 'Chinese'}, + {code: 'DE', name: 'German'}, + {code: 'ES', name: 'Spanish'}, + {code: 'FR', name: 'French'}, + {code: 'HE', name: 'Hebrew'}, + {code: 'IT', name: 'Italian'}, + {code: 'JA', name: 'Japanese'}, + {code: 'KOR', name: 'Korean'}, + {code: 'PTBR', name: 'Portuguese (Brazil)'}, + {code: 'RU', name: 'Russian'}, + {code: 'TH', name: 'Thai'}, + {code: 'TR', name: 'Turkish'}, + {code: 'VI', name: 'Vietnamese'} + ] + permissions: + contents: write + steps: + - uses: actions/checkout@v4 + with: + ref: main + token: ${{ secrets.GH_TOKEN }} + + - name: Read README content + id: readme + run: | + content=$(cat README.md) + content="${content//'%'/'%25'}" + content="${content//$'\n'/'%0A'}" + content="${content//$'\r'/'%0D'}" + echo "content=$content" >> $GITHUB_OUTPUT + + - name: Translate to ${{ matrix.language.name }} + uses: 0xjord4n/aixion@v1.0.0 + id: aixion + with: + config: > + { + "provider": "openai", + "provider_options": { + "api_key": "${{ secrets.OPENAI_API_KEY }}" + }, + "messages": [ + { + "role": "system", + "content": "You will be provided with a markdown file in English, and your task is to translate it into ${{ matrix.language.name }}." + }, + { + "role": "user", + "content": "${{ steps.readme.outputs.content }}" + } + ], + "model": "gpt-4o" + } + + - name: Save translation + run: | + mv translated.md README_${{ matrix.language.code }}.md + + - name: List README translations + run: ls README_*.md || echo "No translation files found" + + - name: Commit translations + uses: stefanzweifel/git-auto-commit-action@v5 + with: + commit_message: "chore: update ${{ matrix.language.name }} translation" + branch: main + file_pattern: "README_${{ matrix.language.code }}.md" + commit_author: "GitHub Action " From 78fb113511f6e7a08200e66eb5985c767229245b Mon Sep 17 00:00:00 2001 From: 0xJordan Date: Mon, 23 Dec 2024 18:29:51 +0100 Subject: [PATCH 18/58] chore(workflow): update trigger for README translations to specific path to streamline workflow execution --- .github/workflows/generate-readme-translations.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/generate-readme-translations.yml b/.github/workflows/generate-readme-translations.yml index cc04f4cd11..0bf474181f 100644 --- a/.github/workflows/generate-readme-translations.yml +++ b/.github/workflows/generate-readme-translations.yml @@ -1,8 +1,7 @@ name: Generate Readme Translations on: push: - paths: - - "README.md" + - 1222--README-ci-auto-translation jobs: translation: runs-on: ubuntu-latest From 1497eed3d0f7dd8e4fc07f3bc84a81d976b10a0e Mon Sep 17 00:00:00 2001 From: 0xJordan Date: Mon, 23 Dec 2024 18:31:58 +0100 Subject: [PATCH 19/58] chore(workflow): update branch name format in generate-readme-translations.yml to use quotes for consistency and prevent potential parsing issues --- .github/workflows/generate-readme-translations.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/generate-readme-translations.yml b/.github/workflows/generate-readme-translations.yml index 0bf474181f..b2482a000d 100644 --- a/.github/workflows/generate-readme-translations.yml +++ b/.github/workflows/generate-readme-translations.yml @@ -1,7 +1,7 @@ name: Generate Readme Translations on: push: - - 1222--README-ci-auto-translation + - "1222--README-ci-auto-translation" jobs: translation: runs-on: ubuntu-latest From 9bb49853f142d6c8efa297ec20c01a00800a6d32 Mon Sep 17 00:00:00 2001 From: 0xJordan Date: Mon, 23 Dec 2024 18:33:58 +0100 Subject: [PATCH 20/58] chore(workflow): update branch specification for push event in README translation workflow to follow proper YAML structure --- .github/workflows/generate-readme-translations.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/generate-readme-translations.yml b/.github/workflows/generate-readme-translations.yml index b2482a000d..a39e36dc4c 100644 --- a/.github/workflows/generate-readme-translations.yml +++ b/.github/workflows/generate-readme-translations.yml @@ -1,7 +1,9 @@ name: Generate Readme Translations on: push: - - "1222--README-ci-auto-translation" + branches: + - "1222--README-ci-auto-translation" + jobs: translation: runs-on: ubuntu-latest From f6e6ad69861fdd9eeda845cb42f30ab1a5468867 Mon Sep 17 00:00:00 2001 From: 0xJordan Date: Mon, 23 Dec 2024 19:06:42 +0100 Subject: [PATCH 21/58] chore(workflow): update aixion action version from v1.0.0 to v1.0.1 to incorporate latest improvements and fixes --- .github/workflows/generate-readme-translations.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/generate-readme-translations.yml b/.github/workflows/generate-readme-translations.yml index a39e36dc4c..d31ea6d774 100644 --- a/.github/workflows/generate-readme-translations.yml +++ b/.github/workflows/generate-readme-translations.yml @@ -42,7 +42,7 @@ jobs: echo "content=$content" >> $GITHUB_OUTPUT - name: Translate to ${{ matrix.language.name }} - uses: 0xjord4n/aixion@v1.0.0 + uses: 0xjord4n/aixion@v1.0.1 id: aixion with: config: > From eda9d18683cc4af8e2e3b4a73d3bcec773d4a0db Mon Sep 17 00:00:00 2001 From: Proteus Date: Mon, 23 Dec 2024 14:41:01 -0500 Subject: [PATCH 22/58] venice image styles + watermark option adds the ability to use venice's style presets as well as choose to remove the default watermark --- packages/core/src/generation.ts | 11 ++++++++--- packages/core/src/types.ts | 2 ++ packages/plugin-image-generation/src/index.ts | 4 ++++ 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/packages/core/src/generation.ts b/packages/core/src/generation.ts index 167ee9447f..6e99bc63a4 100644 --- a/packages/core/src/generation.ts +++ b/packages/core/src/generation.ts @@ -935,6 +935,8 @@ export const generateImage = async ( seed?: number; modelId?: string; jobId?: string; + stylePreset?: string; + hideWatermark?: boolean; }, runtime: IAgentRuntime ): Promise<{ @@ -1121,9 +1123,12 @@ export const generateImage = async ( model: data.modelId || "fluently-xl", prompt: data.prompt, negative_prompt: data.negativePrompt, - width: data.width || 1024, - height: data.height || 1024, - steps: data.numIterations || 20, + width: data.width, + height: data.height, + steps: data.numIterations, + seed: data.seed, + style_preset: data.stylePreset, + hide_watermark: data.hideWatermark, }), } ); diff --git a/packages/core/src/types.ts b/packages/core/src/types.ts index 6fafa4ede8..5f83e29c66 100644 --- a/packages/core/src/types.ts +++ b/packages/core/src/types.ts @@ -718,6 +718,8 @@ export type Character = { modelId?: string; jobId?: string; count?: number; + stylePreset?: string; + hideWatermark?: boolean; }; voice?: { model?: string; // For VITS diff --git a/packages/plugin-image-generation/src/index.ts b/packages/plugin-image-generation/src/index.ts index 4600fb3a3d..1be67fca92 100644 --- a/packages/plugin-image-generation/src/index.ts +++ b/packages/plugin-image-generation/src/index.ts @@ -109,6 +109,8 @@ const imageGeneration: Action = { seed?: number; modelId?: string; jobId?: string; + stylePreset?: string; + hideWatermark?: boolean; }, callback: HandlerCallback ) => { @@ -140,6 +142,8 @@ const imageGeneration: Action = { ...(options.seed != null || imageSettings.seed != null ? { seed: options.seed || imageSettings.seed } : {}), ...(options.modelId != null || imageSettings.modelId != null ? { modelId: options.modelId || imageSettings.modelId } : {}), ...(options.jobId != null || imageSettings.jobId != null ? { jobId: options.jobId || imageSettings.jobId } : {}), + ...(options.stylePreset != null || imageSettings.stylePreset != null ? { stylePreset: options.stylePreset || imageSettings.stylePreset } : {}), + ...(options.hideWatermark != null || imageSettings.hideWatermark != null ? { hideWatermark: options.hideWatermark || imageSettings.hideWatermark } : {}), }, runtime ); From 01ea1d2e2b66da386f30183d6892525532bdbc5b Mon Sep 17 00:00:00 2001 From: Ryan Date: Tue, 24 Dec 2024 03:24:08 +0700 Subject: [PATCH 23/58] chore: format package.json files with prettier --- agent/package.json | 120 ++++++------ client/package.json | 90 ++++----- docs/package.json | 106 +++++------ packages/adapter-postgres/package.json | 36 ++-- packages/adapter-redis/package.json | 42 ++--- packages/adapter-sqlite/package.json | 44 ++--- packages/adapter-sqljs/package.json | 44 ++--- packages/adapter-supabase/package.json | 40 ++-- packages/client-auto/package.json | 50 ++--- packages/client-direct/package.json | 56 +++--- packages/client-discord/package.json | 62 +++---- packages/client-farcaster/package.json | 32 ++-- packages/client-github/package.json | 42 ++--- packages/client-lens/package.json | 44 ++--- packages/client-slack/package.json | 86 ++++----- packages/client-telegram/package.json | 38 ++-- packages/client-twitter/package.json | 44 ++--- packages/core/package.json | 154 ++++++++-------- packages/create-eliza-app/package.json | 58 +++--- packages/plugin-0g/package.json | 32 ++-- packages/plugin-aptos/package.json | 48 ++--- packages/plugin-bootstrap/package.json | 34 ++-- .../advanced-sdk-ts/package.json | 64 +++---- packages/plugin-coinbase/package.json | 44 ++--- packages/plugin-conflux/package.json | 26 +-- packages/plugin-echochambers/package.json | 26 +-- packages/plugin-evm/package.json | 44 ++--- packages/plugin-flow/package.json | 68 +++---- packages/plugin-goat/package.json | 42 ++--- packages/plugin-icp/package.json | 44 ++--- packages/plugin-image-generation/package.json | 34 ++-- packages/plugin-intiface/package.json | 38 ++-- packages/plugin-multiversx/package.json | 48 ++--- packages/plugin-near/package.json | 46 ++--- packages/plugin-nft-generation/package.json | 56 +++--- packages/plugin-node/package.json | 174 +++++++++--------- packages/plugin-solana/package.json | 62 +++---- packages/plugin-starknet/package.json | 50 ++--- packages/plugin-story/package.json | 48 ++--- packages/plugin-sui/package.json | 48 ++--- packages/plugin-tee/package.json | 52 +++--- packages/plugin-ton/package.json | 46 ++--- packages/plugin-trustdb/package.json | 50 ++--- packages/plugin-video-generation/package.json | 34 ++-- packages/plugin-web-search/package.json | 32 ++-- packages/plugin-whatsapp/package.json | 48 ++--- packages/plugin-zksync-era/package.json | 36 ++-- 47 files changed, 1281 insertions(+), 1281 deletions(-) diff --git a/agent/package.json b/agent/package.json index 91a900d600..dc9347bbe9 100644 --- a/agent/package.json +++ b/agent/package.json @@ -1,62 +1,62 @@ { - "name": "@elizaos/agent", - "version": "0.1.7-alpha.1", - "main": "src/index.ts", - "type": "module", - "scripts": { - "start": "node --loader ts-node/esm src/index.ts", - "dev": "node --loader ts-node/esm src/index.ts", - "check-types": "tsc --noEmit" - }, - "nodemonConfig": { - "watch": [ - "src", - "../core/dist" - ], - "ext": "ts,json", - "exec": "node --enable-source-maps --loader ts-node/esm src/index.ts" - }, - "dependencies": { - "@elizaos/adapter-postgres": "workspace:*", - "@elizaos/adapter-redis": "workspace:*", - "@elizaos/adapter-sqlite": "workspace:*", - "@elizaos/client-auto": "workspace:*", - "@elizaos/client-direct": "workspace:*", - "@elizaos/client-discord": "workspace:*", - "@elizaos/client-farcaster": "workspace:*", - "@elizaos/client-lens": "workspace:*", - "@elizaos/client-telegram": "workspace:*", - "@elizaos/client-twitter": "workspace:*", - "@elizaos/client-slack": "workspace:*", - "@elizaos/core": "workspace:*", - "@elizaos/plugin-0g": "workspace:*", - "@elizaos/plugin-aptos": "workspace:*", - "@elizaos/plugin-bootstrap": "workspace:*", - "@elizaos/plugin-intiface": "workspace:*", - "@elizaos/plugin-coinbase": "workspace:*", - "@elizaos/plugin-conflux": "workspace:*", - "@elizaos/plugin-evm": "workspace:*", - "@elizaos/plugin-flow": "workspace:*", - "@elizaos/plugin-story": "workspace:*", - "@elizaos/plugin-goat": "workspace:*", - "@elizaos/plugin-icp": "workspace:*", - "@elizaos/plugin-image-generation": "workspace:*", - "@elizaos/plugin-nft-generation": "workspace:*", - "@elizaos/plugin-node": "workspace:*", - "@elizaos/plugin-solana": "workspace:*", - "@elizaos/plugin-starknet": "workspace:*", - "@elizaos/plugin-ton": "workspace:*", - "@elizaos/plugin-sui": "workspace:*", - "@elizaos/plugin-tee": "workspace:*", - "@elizaos/plugin-multiversx": "workspace:*", - "@elizaos/plugin-near": "workspace:*", - "@elizaos/plugin-zksync-era": "workspace:*", - "readline": "1.3.0", - "ws": "8.18.0", - "yargs": "17.7.2" - }, - "devDependencies": { - "ts-node": "10.9.2", - "tsup": "8.3.5" - } + "name": "@elizaos/agent", + "version": "0.1.7-alpha.1", + "main": "src/index.ts", + "type": "module", + "scripts": { + "start": "node --loader ts-node/esm src/index.ts", + "dev": "node --loader ts-node/esm src/index.ts", + "check-types": "tsc --noEmit" + }, + "nodemonConfig": { + "watch": [ + "src", + "../core/dist" + ], + "ext": "ts,json", + "exec": "node --enable-source-maps --loader ts-node/esm src/index.ts" + }, + "dependencies": { + "@elizaos/adapter-postgres": "workspace:*", + "@elizaos/adapter-redis": "workspace:*", + "@elizaos/adapter-sqlite": "workspace:*", + "@elizaos/client-auto": "workspace:*", + "@elizaos/client-direct": "workspace:*", + "@elizaos/client-discord": "workspace:*", + "@elizaos/client-farcaster": "workspace:*", + "@elizaos/client-lens": "workspace:*", + "@elizaos/client-telegram": "workspace:*", + "@elizaos/client-twitter": "workspace:*", + "@elizaos/client-slack": "workspace:*", + "@elizaos/core": "workspace:*", + "@elizaos/plugin-0g": "workspace:*", + "@elizaos/plugin-aptos": "workspace:*", + "@elizaos/plugin-bootstrap": "workspace:*", + "@elizaos/plugin-intiface": "workspace:*", + "@elizaos/plugin-coinbase": "workspace:*", + "@elizaos/plugin-conflux": "workspace:*", + "@elizaos/plugin-evm": "workspace:*", + "@elizaos/plugin-flow": "workspace:*", + "@elizaos/plugin-story": "workspace:*", + "@elizaos/plugin-goat": "workspace:*", + "@elizaos/plugin-icp": "workspace:*", + "@elizaos/plugin-image-generation": "workspace:*", + "@elizaos/plugin-nft-generation": "workspace:*", + "@elizaos/plugin-node": "workspace:*", + "@elizaos/plugin-solana": "workspace:*", + "@elizaos/plugin-starknet": "workspace:*", + "@elizaos/plugin-ton": "workspace:*", + "@elizaos/plugin-sui": "workspace:*", + "@elizaos/plugin-tee": "workspace:*", + "@elizaos/plugin-multiversx": "workspace:*", + "@elizaos/plugin-near": "workspace:*", + "@elizaos/plugin-zksync-era": "workspace:*", + "readline": "1.3.0", + "ws": "8.18.0", + "yargs": "17.7.2" + }, + "devDependencies": { + "ts-node": "10.9.2", + "tsup": "8.3.5" + } } diff --git a/client/package.json b/client/package.json index a9ba6d8b01..20d9003af7 100644 --- a/client/package.json +++ b/client/package.json @@ -1,47 +1,47 @@ { - "name": "eliza-client", - "private": true, - "version": "0.1.7-alpha.1", - "type": "module", - "scripts": { - "dev": "vite", - "build": "vite build", - "check-types": "tsc --noEmit", - "lint": "eslint .", - "preview": "vite preview" - }, - "dependencies": { - "@elizaos/core": "workspace:*", - "@radix-ui/react-dialog": "1.1.2", - "@radix-ui/react-separator": "1.1.0", - "@radix-ui/react-slot": "1.1.0", - "@radix-ui/react-tooltip": "1.1.4", - "@tanstack/react-query": "5.61.0", - "class-variance-authority": "0.7.1", - "clsx": "2.1.1", - "lucide-react": "0.460.0", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-router-dom": "6.22.1", - "tailwind-merge": "2.5.5", - "tailwindcss-animate": "1.0.7", - "vite-plugin-top-level-await": "1.4.4", - "vite-plugin-wasm": "3.3.0" - }, - "devDependencies": { - "@eslint/js": "9.16.0", - "@types/node": "22.8.4", - "@types/react": "18.3.12", - "@types/react-dom": "18.3.1", - "@vitejs/plugin-react": "4.3.3", - "autoprefixer": "10.4.20", - "eslint-plugin-react-hooks": "5.0.0", - "eslint-plugin-react-refresh": "0.4.14", - "globals": "15.11.0", - "postcss": "8.4.49", - "tailwindcss": "3.4.15", - "typescript": "5.6.3", - "typescript-eslint": "8.11.0", - "vite": "link:@tanstack/router-plugin/vite" - } + "name": "eliza-client", + "private": true, + "version": "0.1.7-alpha.1", + "type": "module", + "scripts": { + "dev": "vite", + "build": "vite build", + "check-types": "tsc --noEmit", + "lint": "eslint .", + "preview": "vite preview" + }, + "dependencies": { + "@elizaos/core": "workspace:*", + "@radix-ui/react-dialog": "1.1.2", + "@radix-ui/react-separator": "1.1.0", + "@radix-ui/react-slot": "1.1.0", + "@radix-ui/react-tooltip": "1.1.4", + "@tanstack/react-query": "5.61.0", + "class-variance-authority": "0.7.1", + "clsx": "2.1.1", + "lucide-react": "0.460.0", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-router-dom": "6.22.1", + "tailwind-merge": "2.5.5", + "tailwindcss-animate": "1.0.7", + "vite-plugin-top-level-await": "1.4.4", + "vite-plugin-wasm": "3.3.0" + }, + "devDependencies": { + "@eslint/js": "9.16.0", + "@types/node": "22.8.4", + "@types/react": "18.3.12", + "@types/react-dom": "18.3.1", + "@vitejs/plugin-react": "4.3.3", + "autoprefixer": "10.4.20", + "eslint-plugin-react-hooks": "5.0.0", + "eslint-plugin-react-refresh": "0.4.14", + "globals": "15.11.0", + "postcss": "8.4.49", + "tailwindcss": "3.4.15", + "typescript": "5.6.3", + "typescript-eslint": "8.11.0", + "vite": "link:@tanstack/router-plugin/vite" + } } diff --git a/docs/package.json b/docs/package.json index 42e02115a3..c4755b6c62 100644 --- a/docs/package.json +++ b/docs/package.json @@ -1,55 +1,55 @@ { - "name": "eliza-docs", - "version": "0.1.7-alpha.1", - "private": true, - "scripts": { - "docusaurus": "docusaurus", - "start": "docusaurus start --no-open", - "dev": "docusaurus start --port 3002 --no-open", - "build": "docusaurus build", - "swizzle": "docusaurus swizzle", - "deploy": "docusaurus deploy", - "clear": "docusaurus clear", - "serve": "docusaurus serve", - "write-translations": "docusaurus write-translations", - "write-heading-ids": "docusaurus write-heading-ids" - }, - "dependencies": { - "@docusaurus/core": "3.6.3", - "@docusaurus/plugin-content-blog": "3.6.3", - "@docusaurus/plugin-content-docs": "3.6.3", - "@docusaurus/plugin-ideal-image": "3.6.3", - "@docusaurus/preset-classic": "3.6.3", - "@docusaurus/theme-mermaid": "3.6.3", - "@mdx-js/react": "3.0.1", - "clsx": "2.1.1", - "docusaurus-lunr-search": "3.5.0", - "dotenv": "^16.4.7", - "prism-react-renderer": "2.3.1", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-router-dom": "6.22.1" - }, - "devDependencies": { - "@docusaurus/module-type-aliases": "3.6.3", - "@docusaurus/types": "3.6.3", - "docusaurus-plugin-typedoc": "1.0.5", - "typedoc": "0.26.11", - "typedoc-plugin-markdown": "4.2.10" - }, - "browserslist": { - "production": [ - ">0.5%", - "not dead", - "not op_mini all" - ], - "development": [ - "last 3 chrome version", - "last 3 firefox version", - "last 5 safari version" - ] - }, - "engines": { - "node": "23.3.0" - } + "name": "eliza-docs", + "version": "0.1.7-alpha.1", + "private": true, + "scripts": { + "docusaurus": "docusaurus", + "start": "docusaurus start --no-open", + "dev": "docusaurus start --port 3002 --no-open", + "build": "docusaurus build", + "swizzle": "docusaurus swizzle", + "deploy": "docusaurus deploy", + "clear": "docusaurus clear", + "serve": "docusaurus serve", + "write-translations": "docusaurus write-translations", + "write-heading-ids": "docusaurus write-heading-ids" + }, + "dependencies": { + "@docusaurus/core": "3.6.3", + "@docusaurus/plugin-content-blog": "3.6.3", + "@docusaurus/plugin-content-docs": "3.6.3", + "@docusaurus/plugin-ideal-image": "3.6.3", + "@docusaurus/preset-classic": "3.6.3", + "@docusaurus/theme-mermaid": "3.6.3", + "@mdx-js/react": "3.0.1", + "clsx": "2.1.1", + "docusaurus-lunr-search": "3.5.0", + "dotenv": "^16.4.7", + "prism-react-renderer": "2.3.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-router-dom": "6.22.1" + }, + "devDependencies": { + "@docusaurus/module-type-aliases": "3.6.3", + "@docusaurus/types": "3.6.3", + "docusaurus-plugin-typedoc": "1.0.5", + "typedoc": "0.26.11", + "typedoc-plugin-markdown": "4.2.10" + }, + "browserslist": { + "production": [ + ">0.5%", + "not dead", + "not op_mini all" + ], + "development": [ + "last 3 chrome version", + "last 3 firefox version", + "last 5 safari version" + ] + }, + "engines": { + "node": "23.3.0" + } } diff --git a/packages/adapter-postgres/package.json b/packages/adapter-postgres/package.json index 5cf207a058..39e7e47726 100644 --- a/packages/adapter-postgres/package.json +++ b/packages/adapter-postgres/package.json @@ -1,20 +1,20 @@ { - "name": "@elizaos/adapter-postgres", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "@types/pg": "8.11.10", - "pg": "8.13.1" - }, - "devDependencies": { - "tsup": "8.3.5" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "lint": "eslint --fix --cache ." - } + "name": "@elizaos/adapter-postgres", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "@types/pg": "8.11.10", + "pg": "8.13.1" + }, + "devDependencies": { + "tsup": "8.3.5" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch", + "lint": "eslint --fix --cache ." + } } diff --git a/packages/adapter-redis/package.json b/packages/adapter-redis/package.json index a2c3f32682..c760434fba 100644 --- a/packages/adapter-redis/package.json +++ b/packages/adapter-redis/package.json @@ -1,23 +1,23 @@ { - "name": "@elizaos/adapter-redis", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "ioredis": "5.4.2" - }, - "devDependencies": { - "@types/ioredis": "^5.0.0", - "tsup": "8.3.5" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "lint": "eslint --fix --cache ." - }, - "peerDependencies": { - "whatwg-url": "7.1.0" - } + "name": "@elizaos/adapter-redis", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "ioredis": "5.4.2" + }, + "devDependencies": { + "@types/ioredis": "^5.0.0", + "tsup": "8.3.5" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch", + "lint": "eslint --fix --cache ." + }, + "peerDependencies": { + "whatwg-url": "7.1.0" + } } diff --git a/packages/adapter-sqlite/package.json b/packages/adapter-sqlite/package.json index f16a564751..674f2463b1 100644 --- a/packages/adapter-sqlite/package.json +++ b/packages/adapter-sqlite/package.json @@ -1,24 +1,24 @@ { - "name": "@elizaos/adapter-sqlite", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "@types/better-sqlite3": "7.6.12", - "better-sqlite3": "11.6.0", - "sqlite-vec": "0.1.6" - }, - "devDependencies": { - "tsup": "8.3.5" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "lint": "eslint --fix --cache ." - }, - "peerDependencies": { - "whatwg-url": "7.1.0" - } + "name": "@elizaos/adapter-sqlite", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "@types/better-sqlite3": "7.6.12", + "better-sqlite3": "11.6.0", + "sqlite-vec": "0.1.6" + }, + "devDependencies": { + "tsup": "8.3.5" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch", + "lint": "eslint --fix --cache ." + }, + "peerDependencies": { + "whatwg-url": "7.1.0" + } } diff --git a/packages/adapter-sqljs/package.json b/packages/adapter-sqljs/package.json index 63cb3f4cc9..e5e8ed4311 100644 --- a/packages/adapter-sqljs/package.json +++ b/packages/adapter-sqljs/package.json @@ -1,24 +1,24 @@ { - "name": "@elizaos/adapter-sqljs", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "@types/sql.js": "1.4.9", - "sql.js": "1.12.0", - "uuid": "11.0.3" - }, - "devDependencies": { - "tsup": "8.3.5" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "lint": "eslint --fix --cache ." - }, - "peerDependencies": { - "whatwg-url": "7.1.0" - } + "name": "@elizaos/adapter-sqljs", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "@types/sql.js": "1.4.9", + "sql.js": "1.12.0", + "uuid": "11.0.3" + }, + "devDependencies": { + "tsup": "8.3.5" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch", + "lint": "eslint --fix --cache ." + }, + "peerDependencies": { + "whatwg-url": "7.1.0" + } } diff --git a/packages/adapter-supabase/package.json b/packages/adapter-supabase/package.json index bde60061ed..b27876ec94 100644 --- a/packages/adapter-supabase/package.json +++ b/packages/adapter-supabase/package.json @@ -1,22 +1,22 @@ { - "name": "@elizaos/adapter-supabase", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "@supabase/supabase-js": "2.46.2" - }, - "devDependencies": { - "tsup": "8.3.5" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "lint": "eslint --fix --cache ." - }, - "peerDependencies": { - "whatwg-url": "7.1.0" - } + "name": "@elizaos/adapter-supabase", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "@supabase/supabase-js": "2.46.2" + }, + "devDependencies": { + "tsup": "8.3.5" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch", + "lint": "eslint --fix --cache ." + }, + "peerDependencies": { + "whatwg-url": "7.1.0" + } } diff --git a/packages/client-auto/package.json b/packages/client-auto/package.json index ef0ae6e34b..77f48720cb 100644 --- a/packages/client-auto/package.json +++ b/packages/client-auto/package.json @@ -1,27 +1,27 @@ { - "name": "@elizaos/client-auto", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "@types/body-parser": "1.19.5", - "@types/cors": "2.8.17", - "@types/express": "5.0.0", - "body-parser": "1.20.3", - "cors": "2.8.5", - "multer": "1.4.5-lts.1" - }, - "devDependencies": { - "tsup": "8.3.5" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "lint": "eslint --fix --cache ." - }, - "peerDependencies": { - "whatwg-url": "7.1.0" - } + "name": "@elizaos/client-auto", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "@types/body-parser": "1.19.5", + "@types/cors": "2.8.17", + "@types/express": "5.0.0", + "body-parser": "1.20.3", + "cors": "2.8.5", + "multer": "1.4.5-lts.1" + }, + "devDependencies": { + "tsup": "8.3.5" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch", + "lint": "eslint --fix --cache ." + }, + "peerDependencies": { + "whatwg-url": "7.1.0" + } } diff --git a/packages/client-direct/package.json b/packages/client-direct/package.json index fe3f4c7afb..977d7089b1 100644 --- a/packages/client-direct/package.json +++ b/packages/client-direct/package.json @@ -1,30 +1,30 @@ { - "name": "@elizaos/client-direct", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "@elizaos/plugin-image-generation": "workspace:*", - "@types/body-parser": "1.19.5", - "@types/cors": "2.8.17", - "@types/express": "5.0.0", - "body-parser": "1.20.3", - "cors": "2.8.5", - "discord.js": "14.16.3", - "express": "4.21.1", - "multer": "1.4.5-lts.1" - }, - "devDependencies": { - "tsup": "8.3.5" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "lint": "eslint --fix --cache ." - }, - "peerDependencies": { - "whatwg-url": "7.1.0" - } + "name": "@elizaos/client-direct", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "@elizaos/plugin-image-generation": "workspace:*", + "@types/body-parser": "1.19.5", + "@types/cors": "2.8.17", + "@types/express": "5.0.0", + "body-parser": "1.20.3", + "cors": "2.8.5", + "discord.js": "14.16.3", + "express": "4.21.1", + "multer": "1.4.5-lts.1" + }, + "devDependencies": { + "tsup": "8.3.5" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch", + "lint": "eslint --fix --cache ." + }, + "peerDependencies": { + "whatwg-url": "7.1.0" + } } diff --git a/packages/client-discord/package.json b/packages/client-discord/package.json index be4ace088f..8a90f4599d 100644 --- a/packages/client-discord/package.json +++ b/packages/client-discord/package.json @@ -1,33 +1,33 @@ { - "name": "@elizaos/client-discord", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "@elizaos/plugin-node": "workspace:*", - "@discordjs/opus": "github:discordjs/opus", - "@discordjs/rest": "2.4.0", - "@discordjs/voice": "0.17.0", - "discord.js": "14.16.3", - "libsodium-wrappers": "0.7.15", - "prism-media": "1.3.5", - "zod": "3.23.8" - }, - "devDependencies": { - "tsup": "8.3.5" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "lint": "eslint --fix --cache ." - }, - "trustedDependencies": { - "@discordjs/opus": "github:discordjs/opus", - "@discordjs/voice": "0.17.0" - }, - "peerDependencies": { - "whatwg-url": "7.1.0" - } + "name": "@elizaos/client-discord", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "@elizaos/plugin-node": "workspace:*", + "@discordjs/opus": "github:discordjs/opus", + "@discordjs/rest": "2.4.0", + "@discordjs/voice": "0.17.0", + "discord.js": "14.16.3", + "libsodium-wrappers": "0.7.15", + "prism-media": "1.3.5", + "zod": "3.23.8" + }, + "devDependencies": { + "tsup": "8.3.5" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch", + "lint": "eslint --fix --cache ." + }, + "trustedDependencies": { + "@discordjs/opus": "github:discordjs/opus", + "@discordjs/voice": "0.17.0" + }, + "peerDependencies": { + "whatwg-url": "7.1.0" + } } diff --git a/packages/client-farcaster/package.json b/packages/client-farcaster/package.json index 205ae6ad7b..d9e059f31b 100644 --- a/packages/client-farcaster/package.json +++ b/packages/client-farcaster/package.json @@ -1,18 +1,18 @@ { - "name": "@elizaos/client-farcaster", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "@neynar/nodejs-sdk": "^2.0.3" - }, - "devDependencies": { - "tsup": "^8.3.5" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch" - } + "name": "@elizaos/client-farcaster", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "@neynar/nodejs-sdk": "^2.0.3" + }, + "devDependencies": { + "tsup": "^8.3.5" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch" + } } diff --git a/packages/client-github/package.json b/packages/client-github/package.json index 1ada6c7ed2..4bd8272751 100644 --- a/packages/client-github/package.json +++ b/packages/client-github/package.json @@ -1,23 +1,23 @@ { - "name": "@elizaos/client-github", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "@octokit/rest": "20.1.1", - "@octokit/types": "12.6.0", - "glob": "10.4.5", - "simple-git": "3.27.0" - }, - "devDependencies": { - "@types/glob": "8.1.0", - "tsup": "8.3.5" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "lint": "eslint --fix --cache ." - } + "name": "@elizaos/client-github", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "@octokit/rest": "20.1.1", + "@octokit/types": "12.6.0", + "glob": "10.4.5", + "simple-git": "3.27.0" + }, + "devDependencies": { + "@types/glob": "8.1.0", + "tsup": "8.3.5" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch", + "lint": "eslint --fix --cache ." + } } diff --git a/packages/client-lens/package.json b/packages/client-lens/package.json index 8ab78c0443..f52547897f 100644 --- a/packages/client-lens/package.json +++ b/packages/client-lens/package.json @@ -1,24 +1,24 @@ { - "name": "@elizaos/client-lens", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "@lens-protocol/client": "2.2.0", - "@lens-protocol/metadata": "1.2.0", - "axios": "^1.7.9", - "viem": "^2.13.8" - }, - "devDependencies": { - "tsup": "^8.3.5" - }, - "peerDependencies": { - "@elizaos/core": "workspace:*" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch" - } + "name": "@elizaos/client-lens", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "@lens-protocol/client": "2.2.0", + "@lens-protocol/metadata": "1.2.0", + "axios": "^1.7.9", + "viem": "^2.13.8" + }, + "devDependencies": { + "tsup": "^8.3.5" + }, + "peerDependencies": { + "@elizaos/core": "workspace:*" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch" + } } diff --git a/packages/client-slack/package.json b/packages/client-slack/package.json index 02d32728d8..72b023bcbc 100644 --- a/packages/client-slack/package.json +++ b/packages/client-slack/package.json @@ -1,45 +1,45 @@ { - "name": "@elizaos/client-slack", - "version": "0.1.7-alpha.1", - "description": "Slack client plugin for Eliza framework", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "scripts": { - "build": "tsup src/index.ts --format esm --dts", - "test": "jest", - "lint": "eslint --fix --cache .", - "clean": "rimraf dist", - "dev": "tsup src/index.ts --watch", - "example": "ts-node src/examples/standalone-example.ts", - "example:attachment": "ts-node src/examples/standalone-attachment.ts", - "example:summarize": "ts-node src/examples/standalone-summarize.ts", - "example:transcribe": "ts-node src/examples/standalone-transcribe.ts" - }, - "dependencies": { - "@elizaos/core": "workspace:*", - "@ffmpeg-installer/ffmpeg": "^1.1.0", - "@slack/events-api": "^3.0.1", - "@slack/web-api": "^6.8.1", - "body-parser": "^1.20.2", - "dotenv": "^16.0.3", - "express": "^4.18.2", - "fluent-ffmpeg": "^2.1.2", - "node-fetch": "^2.6.9" - }, - "devDependencies": { - "@types/express": "^4.17.21", - "@types/fluent-ffmpeg": "^2.1.24", - "@types/jest": "^29.5.0", - "@types/node": "^18.15.11", - "jest": "^29.5.0", - "rimraf": "^5.0.0", - "ts-jest": "^29.1.0", - "ts-node": "^10.9.1", - "tsup": "^8.3.5", - "typescript": "^5.0.0" - }, - "engines": { - "node": ">=14.0.0" - } + "name": "@elizaos/client-slack", + "version": "0.1.7-alpha.1", + "description": "Slack client plugin for Eliza framework", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "scripts": { + "build": "tsup src/index.ts --format esm --dts", + "test": "jest", + "lint": "eslint --fix --cache .", + "clean": "rimraf dist", + "dev": "tsup src/index.ts --watch", + "example": "ts-node src/examples/standalone-example.ts", + "example:attachment": "ts-node src/examples/standalone-attachment.ts", + "example:summarize": "ts-node src/examples/standalone-summarize.ts", + "example:transcribe": "ts-node src/examples/standalone-transcribe.ts" + }, + "dependencies": { + "@elizaos/core": "workspace:*", + "@ffmpeg-installer/ffmpeg": "^1.1.0", + "@slack/events-api": "^3.0.1", + "@slack/web-api": "^6.8.1", + "body-parser": "^1.20.2", + "dotenv": "^16.0.3", + "express": "^4.18.2", + "fluent-ffmpeg": "^2.1.2", + "node-fetch": "^2.6.9" + }, + "devDependencies": { + "@types/express": "^4.17.21", + "@types/fluent-ffmpeg": "^2.1.24", + "@types/jest": "^29.5.0", + "@types/node": "^18.15.11", + "jest": "^29.5.0", + "rimraf": "^5.0.0", + "ts-jest": "^29.1.0", + "ts-node": "^10.9.1", + "tsup": "^8.3.5", + "typescript": "^5.0.0" + }, + "engines": { + "node": ">=14.0.0" + } } diff --git a/packages/client-telegram/package.json b/packages/client-telegram/package.json index bc4fb34515..5eebf3c5c9 100644 --- a/packages/client-telegram/package.json +++ b/packages/client-telegram/package.json @@ -1,21 +1,21 @@ { - "name": "@elizaos/client-telegram", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "@telegraf/types": "7.1.0", - "telegraf": "4.16.3", - "zod": "3.23.8" - }, - "devDependencies": { - "tsup": "8.3.5" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "lint": "eslint --fix --cache ." - } + "name": "@elizaos/client-telegram", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "@telegraf/types": "7.1.0", + "telegraf": "4.16.3", + "zod": "3.23.8" + }, + "devDependencies": { + "tsup": "8.3.5" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch", + "lint": "eslint --fix --cache ." + } } diff --git a/packages/client-twitter/package.json b/packages/client-twitter/package.json index 367976bbde..630c43caa2 100644 --- a/packages/client-twitter/package.json +++ b/packages/client-twitter/package.json @@ -1,24 +1,24 @@ { - "name": "@elizaos/client-twitter", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "agent-twitter-client": "0.0.17", - "glob": "11.0.0", - "zod": "3.23.8" - }, - "devDependencies": { - "tsup": "8.3.5" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "lint": "eslint --fix --cache ." - }, - "peerDependencies": { - "whatwg-url": "7.1.0" - } + "name": "@elizaos/client-twitter", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "agent-twitter-client": "0.0.17", + "glob": "11.0.0", + "zod": "3.23.8" + }, + "devDependencies": { + "tsup": "8.3.5" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch", + "lint": "eslint --fix --cache ." + }, + "peerDependencies": { + "whatwg-url": "7.1.0" + } } diff --git a/packages/core/package.json b/packages/core/package.json index 6d999cfd2d..835d99899b 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,79 +1,79 @@ { - "name": "@elizaos/core", - "version": "0.1.7-alpha.1", - "description": "", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "scripts": { - "build": "tsup --format esm --dts", - "lint": "eslint --fix --cache .", - "watch": "tsc --watch", - "dev": "tsup --format esm --dts --watch", - "build:docs": "cd docs && pnpm run build", - "test": "vitest run", - "test:coverage": "vitest run --coverage", - "test:watch": "vitest" - }, - "author": "", - "license": "MIT", - "devDependencies": { - "@eslint/js": "9.16.0", - "@rollup/plugin-commonjs": "25.0.8", - "@rollup/plugin-json": "6.1.0", - "@rollup/plugin-node-resolve": "15.3.0", - "@rollup/plugin-replace": "5.0.7", - "@rollup/plugin-terser": "0.1.0", - "@rollup/plugin-typescript": "11.1.6", - "@solana/web3.js": "1.95.8", - "@types/fluent-ffmpeg": "2.1.27", - "@types/jest": "29.5.14", - "@types/mocha": "10.0.10", - "@types/node": "22.8.4", - "@types/pdfjs-dist": "2.10.378", - "@types/tar": "6.1.13", - "@types/wav-encoder": "1.3.3", - "@typescript-eslint/eslint-plugin": "8.16.0", - "@typescript-eslint/parser": "8.16.0", - "@vitest/coverage-v8": "2.1.5", - "dotenv": "16.4.5", - "jest": "29.7.0", - "lint-staged": "15.2.10", - "nodemon": "3.1.7", - "pm2": "5.4.3", - "rimraf": "6.0.1", - "rollup": "2.79.2", - "ts-jest": "29.2.5", - "ts-node": "10.9.2", - "tslib": "2.8.1", - "tsup": "8.3.5", - "typescript": "5.6.3" - }, - "dependencies": { - "@ai-sdk/anthropic": "0.0.56", - "@ai-sdk/google": "0.0.55", - "@ai-sdk/google-vertex": "0.0.43", - "@ai-sdk/groq": "0.0.3", - "@ai-sdk/openai": "1.0.5", - "@anthropic-ai/sdk": "0.30.1", - "@fal-ai/client": "1.2.0", - "@types/uuid": "10.0.0", - "ai": "3.4.33", - "anthropic-vertex-ai": "1.0.2", - "fastembed": "1.14.1", - "fastestsmallesttextencoderdecoder": "1.0.22", - "gaxios": "6.7.1", - "glob": "11.0.0", - "handlebars": "^4.7.8", - "js-sha1": "0.7.0", - "js-tiktoken": "1.0.15", - "langchain": "0.3.6", - "ollama-ai-provider": "0.16.1", - "openai": "4.73.0", - "tinyld": "1.3.4", - "together-ai": "0.7.0", - "unique-names-generator": "4.7.1", - "uuid": "11.0.3", - "zod": "3.23.8" - } + "name": "@elizaos/core", + "version": "0.1.7-alpha.1", + "description": "", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "scripts": { + "build": "tsup --format esm --dts", + "lint": "eslint --fix --cache .", + "watch": "tsc --watch", + "dev": "tsup --format esm --dts --watch", + "build:docs": "cd docs && pnpm run build", + "test": "vitest run", + "test:coverage": "vitest run --coverage", + "test:watch": "vitest" + }, + "author": "", + "license": "MIT", + "devDependencies": { + "@eslint/js": "9.16.0", + "@rollup/plugin-commonjs": "25.0.8", + "@rollup/plugin-json": "6.1.0", + "@rollup/plugin-node-resolve": "15.3.0", + "@rollup/plugin-replace": "5.0.7", + "@rollup/plugin-terser": "0.1.0", + "@rollup/plugin-typescript": "11.1.6", + "@solana/web3.js": "1.95.8", + "@types/fluent-ffmpeg": "2.1.27", + "@types/jest": "29.5.14", + "@types/mocha": "10.0.10", + "@types/node": "22.8.4", + "@types/pdfjs-dist": "2.10.378", + "@types/tar": "6.1.13", + "@types/wav-encoder": "1.3.3", + "@typescript-eslint/eslint-plugin": "8.16.0", + "@typescript-eslint/parser": "8.16.0", + "@vitest/coverage-v8": "2.1.5", + "dotenv": "16.4.5", + "jest": "29.7.0", + "lint-staged": "15.2.10", + "nodemon": "3.1.7", + "pm2": "5.4.3", + "rimraf": "6.0.1", + "rollup": "2.79.2", + "ts-jest": "29.2.5", + "ts-node": "10.9.2", + "tslib": "2.8.1", + "tsup": "8.3.5", + "typescript": "5.6.3" + }, + "dependencies": { + "@ai-sdk/anthropic": "0.0.56", + "@ai-sdk/google": "0.0.55", + "@ai-sdk/google-vertex": "0.0.43", + "@ai-sdk/groq": "0.0.3", + "@ai-sdk/openai": "1.0.5", + "@anthropic-ai/sdk": "0.30.1", + "@fal-ai/client": "1.2.0", + "@types/uuid": "10.0.0", + "ai": "3.4.33", + "anthropic-vertex-ai": "1.0.2", + "fastembed": "1.14.1", + "fastestsmallesttextencoderdecoder": "1.0.22", + "gaxios": "6.7.1", + "glob": "11.0.0", + "handlebars": "^4.7.8", + "js-sha1": "0.7.0", + "js-tiktoken": "1.0.15", + "langchain": "0.3.6", + "ollama-ai-provider": "0.16.1", + "openai": "4.73.0", + "tinyld": "1.3.4", + "together-ai": "0.7.0", + "unique-names-generator": "4.7.1", + "uuid": "11.0.3", + "zod": "3.23.8" + } } diff --git a/packages/create-eliza-app/package.json b/packages/create-eliza-app/package.json index 6df675bce4..a259f0ce48 100644 --- a/packages/create-eliza-app/package.json +++ b/packages/create-eliza-app/package.json @@ -1,31 +1,31 @@ { - "name": "create-eliza-app", - "version": "0.1.7-alpha.1", - "description": "", - "sideEffects": false, - "files": [ - "dist" - ], - "main": "dist/index.cjs", - "bin": { - "create-eliza-app": "dist/index.mjs" - }, - "scripts": { - "build": "unbuild", - "lint": "eslint --fix --cache .", - "start": "node ./dist/index.cjs", - "automd": "automd" - }, - "keywords": [], - "author": "", - "license": "ISC", - "dependencies": { - "citty": "0.1.6", - "giget": "1.2.3" - }, - "devDependencies": { - "automd": "0.3.12", - "jiti": "2.4.0", - "unbuild": "2.0.0" - } + "name": "create-eliza-app", + "version": "0.1.7-alpha.1", + "description": "", + "sideEffects": false, + "files": [ + "dist" + ], + "main": "dist/index.cjs", + "bin": { + "create-eliza-app": "dist/index.mjs" + }, + "scripts": { + "build": "unbuild", + "lint": "eslint --fix --cache .", + "start": "node ./dist/index.cjs", + "automd": "automd" + }, + "keywords": [], + "author": "", + "license": "ISC", + "dependencies": { + "citty": "0.1.6", + "giget": "1.2.3" + }, + "devDependencies": { + "automd": "0.3.12", + "jiti": "2.4.0", + "unbuild": "2.0.0" + } } diff --git a/packages/plugin-0g/package.json b/packages/plugin-0g/package.json index fda7f17ea5..5561a2fc14 100644 --- a/packages/plugin-0g/package.json +++ b/packages/plugin-0g/package.json @@ -1,18 +1,18 @@ { - "name": "@elizaos/plugin-0g", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@0glabs/0g-ts-sdk": "0.2.1", - "@elizaos/core": "workspace:*", - "ethers": "6.13.4", - "tsup": "8.3.5" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "test": "vitest" - } + "name": "@elizaos/plugin-0g", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@0glabs/0g-ts-sdk": "0.2.1", + "@elizaos/core": "workspace:*", + "ethers": "6.13.4", + "tsup": "8.3.5" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch", + "test": "vitest" + } } diff --git a/packages/plugin-aptos/package.json b/packages/plugin-aptos/package.json index 60f0b5ae9b..9fa49d5256 100644 --- a/packages/plugin-aptos/package.json +++ b/packages/plugin-aptos/package.json @@ -1,26 +1,26 @@ { - "name": "@elizaos/plugin-aptos", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "@aptos-labs/ts-sdk": "^1.26.0", - "bignumber": "1.1.0", - "bignumber.js": "9.1.2", - "node-cache": "5.1.2", - "tsup": "8.3.5", - "vitest": "2.1.4" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "lint": "eslint --fix --cache .", - "test": "vitest run" - }, - "peerDependencies": { - "form-data": "4.0.1", - "whatwg-url": "7.1.0" - } + "name": "@elizaos/plugin-aptos", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "@aptos-labs/ts-sdk": "^1.26.0", + "bignumber": "1.1.0", + "bignumber.js": "9.1.2", + "node-cache": "5.1.2", + "tsup": "8.3.5", + "vitest": "2.1.4" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch", + "lint": "eslint --fix --cache .", + "test": "vitest run" + }, + "peerDependencies": { + "form-data": "4.0.1", + "whatwg-url": "7.1.0" + } } diff --git a/packages/plugin-bootstrap/package.json b/packages/plugin-bootstrap/package.json index 7672d27189..aec3d90c7f 100644 --- a/packages/plugin-bootstrap/package.json +++ b/packages/plugin-bootstrap/package.json @@ -1,19 +1,19 @@ { - "name": "@elizaos/plugin-bootstrap", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "tsup": "8.3.5" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "lint": "eslint --fix --cache ." - }, - "peerDependencies": { - "whatwg-url": "7.1.0" - } + "name": "@elizaos/plugin-bootstrap", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "tsup": "8.3.5" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch", + "lint": "eslint --fix --cache ." + }, + "peerDependencies": { + "whatwg-url": "7.1.0" + } } diff --git a/packages/plugin-coinbase/advanced-sdk-ts/package.json b/packages/plugin-coinbase/advanced-sdk-ts/package.json index 78480e529e..52e42a7e89 100644 --- a/packages/plugin-coinbase/advanced-sdk-ts/package.json +++ b/packages/plugin-coinbase/advanced-sdk-ts/package.json @@ -1,34 +1,34 @@ { - "name": "@coinbase-samples/advanced-sdk-ts", - "version": "0.1.0", - "main": "dist/main.js", - "scripts": { - "test": "echo \"Error: no test specified\" && exit 1", - "build": "tsc", - "lint": "eslint . --ext .js,.ts", - "format": "prettier --write \"**/*.{js,ts,tsx,json,css,md}\"" - }, - "files": [ - "dist/" - ], - "keywords": [], - "author": "", - "license": "ISC", - "description": "", - "dependencies": { - "jsonwebtoken": "^9.0.2", - "node-fetch": "^2.6.1" - }, - "devDependencies": { - "@types/jsonwebtoken": "^9.0.7", - "@types/node-fetch": "^2.6.11", - "@typescript-eslint/eslint-plugin": "^5.59.0", - "@typescript-eslint/parser": "^5.59.0", - "dotenv": "^16.4.5", - "eslint": "^8.35.0", - "eslint-config-prettier": "^8.5.0", - "eslint-plugin-prettier": "^4.2.1", - "prettier": "^2.8.8", - "typescript": "^5.5.4" - } + "name": "@coinbase-samples/advanced-sdk-ts", + "version": "0.1.0", + "main": "dist/main.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1", + "build": "tsc", + "lint": "eslint . --ext .js,.ts", + "format": "prettier --write \"**/*.{js,ts,tsx,json,css,md}\"" + }, + "files": [ + "dist/" + ], + "keywords": [], + "author": "", + "license": "ISC", + "description": "", + "dependencies": { + "jsonwebtoken": "^9.0.2", + "node-fetch": "^2.6.1" + }, + "devDependencies": { + "@types/jsonwebtoken": "^9.0.7", + "@types/node-fetch": "^2.6.11", + "@typescript-eslint/eslint-plugin": "^5.59.0", + "@typescript-eslint/parser": "^5.59.0", + "dotenv": "^16.4.5", + "eslint": "^8.35.0", + "eslint-config-prettier": "^8.5.0", + "eslint-plugin-prettier": "^4.2.1", + "prettier": "^2.8.8", + "typescript": "^5.5.4" + } } diff --git a/packages/plugin-coinbase/package.json b/packages/plugin-coinbase/package.json index cc5f839009..ea5fc503a3 100644 --- a/packages/plugin-coinbase/package.json +++ b/packages/plugin-coinbase/package.json @@ -1,24 +1,24 @@ { - "name": "@elizaos/plugin-coinbase", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "coinbase-api": "1.0.5", - "coinbase-advanced-sdk": "file:../../packages/plugin-coinbase/advanced-sdk-ts", - "jsonwebtoken": "^9.0.2", - "@types/jsonwebtoken": "^9.0.7", - "node-fetch": "^2.6.1" - }, - "devDependencies": { - "tsup": "8.3.5", - "@types/node": "^20.0.0" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "lint": "eslint --fix --cache ." - } + "name": "@elizaos/plugin-coinbase", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "coinbase-api": "1.0.5", + "coinbase-advanced-sdk": "file:../../packages/plugin-coinbase/advanced-sdk-ts", + "jsonwebtoken": "^9.0.2", + "@types/jsonwebtoken": "^9.0.7", + "node-fetch": "^2.6.1" + }, + "devDependencies": { + "tsup": "8.3.5", + "@types/node": "^20.0.0" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch", + "lint": "eslint --fix --cache ." + } } diff --git a/packages/plugin-conflux/package.json b/packages/plugin-conflux/package.json index 3db911e945..5e63dddcca 100644 --- a/packages/plugin-conflux/package.json +++ b/packages/plugin-conflux/package.json @@ -1,15 +1,15 @@ { - "name": "@elizaos/plugin-conflux", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "cive": "0.7.1" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch" - } + "name": "@elizaos/plugin-conflux", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "cive": "0.7.1" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch" + } } diff --git a/packages/plugin-echochambers/package.json b/packages/plugin-echochambers/package.json index a22cd12536..9af3933d66 100644 --- a/packages/plugin-echochambers/package.json +++ b/packages/plugin-echochambers/package.json @@ -1,15 +1,15 @@ { - "name": "@elizaos/plugin-echochambers", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "@elizaos/plugin-node": "workspace:*" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch" - } + "name": "@elizaos/plugin-echochambers", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "@elizaos/plugin-node": "workspace:*" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch" + } } diff --git a/packages/plugin-evm/package.json b/packages/plugin-evm/package.json index 2fc2c5ba19..cd32883130 100644 --- a/packages/plugin-evm/package.json +++ b/packages/plugin-evm/package.json @@ -1,24 +1,24 @@ { - "name": "@elizaos/plugin-evm", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "@lifi/data-types": "5.15.5", - "@lifi/sdk": "3.4.1", - "@lifi/types": "16.3.0", - "tsup": "8.3.5", - "viem": "2.21.53" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "test": "vitest run", - "lint": "eslint --fix --cache ." - }, - "peerDependencies": { - "whatwg-url": "7.1.0" - } + "name": "@elizaos/plugin-evm", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "@lifi/data-types": "5.15.5", + "@lifi/sdk": "3.4.1", + "@lifi/types": "16.3.0", + "tsup": "8.3.5", + "viem": "2.21.53" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch", + "test": "vitest run", + "lint": "eslint --fix --cache ." + }, + "peerDependencies": { + "whatwg-url": "7.1.0" + } } diff --git a/packages/plugin-flow/package.json b/packages/plugin-flow/package.json index ffe81bb15c..df7acca6ae 100644 --- a/packages/plugin-flow/package.json +++ b/packages/plugin-flow/package.json @@ -1,36 +1,36 @@ { - "name": "@elizaos/plugin-flow", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "@onflow/config": "1.5.1", - "@onflow/fcl": "1.13.1", - "@onflow/typedefs": "1.4.0", - "bignumber.js": "9.1.2", - "bs58": "6.0.0", - "elliptic": "6.6.1", - "node-cache": "5.1.2", - "sha3": "2.1.4", - "uuid": "11.0.3", - "zod": "3.23.8" - }, - "devDependencies": { - "@types/elliptic": "6.4.18", - "@types/uuid": "10.0.0", - "tsup": "8.3.5", - "vitest": "2.1.4" - }, - "scripts": { - "lines": "find . \\( -name '*.cdc' -o -name '*.ts' \\) -not -path '*/node_modules/*' -not -path '*/tests/*' -not -path '*/deps/*' -not -path '*/dist/*' -not -path '*/imports*' | xargs wc -l", - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "lint": "eslint --fix --cache .", - "test": "vitest run" - }, - "peerDependencies": { - "whatwg-url": "7.1.0" - } + "name": "@elizaos/plugin-flow", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "@onflow/config": "1.5.1", + "@onflow/fcl": "1.13.1", + "@onflow/typedefs": "1.4.0", + "bignumber.js": "9.1.2", + "bs58": "6.0.0", + "elliptic": "6.6.1", + "node-cache": "5.1.2", + "sha3": "2.1.4", + "uuid": "11.0.3", + "zod": "3.23.8" + }, + "devDependencies": { + "@types/elliptic": "6.4.18", + "@types/uuid": "10.0.0", + "tsup": "8.3.5", + "vitest": "2.1.4" + }, + "scripts": { + "lines": "find . \\( -name '*.cdc' -o -name '*.ts' \\) -not -path '*/node_modules/*' -not -path '*/tests/*' -not -path '*/deps/*' -not -path '*/dist/*' -not -path '*/imports*' | xargs wc -l", + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch", + "lint": "eslint --fix --cache .", + "test": "vitest run" + }, + "peerDependencies": { + "whatwg-url": "7.1.0" + } } diff --git a/packages/plugin-goat/package.json b/packages/plugin-goat/package.json index 94afb15bb2..79fcc166ac 100644 --- a/packages/plugin-goat/package.json +++ b/packages/plugin-goat/package.json @@ -1,23 +1,23 @@ { - "name": "@elizaos/plugin-goat", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "@goat-sdk/core": "0.3.8", - "@goat-sdk/plugin-erc20": "0.1.7", - "@goat-sdk/wallet-viem": "0.1.3", - "@goat-sdk/plugin-coingecko": "0.1.4", - "tsup": "8.3.5", - "viem": "2.21.53" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch" - }, - "peerDependencies": { - "whatwg-url": "7.1.0" - } + "name": "@elizaos/plugin-goat", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "@goat-sdk/core": "0.3.8", + "@goat-sdk/plugin-erc20": "0.1.7", + "@goat-sdk/wallet-viem": "0.1.3", + "@goat-sdk/plugin-coingecko": "0.1.4", + "tsup": "8.3.5", + "viem": "2.21.53" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch" + }, + "peerDependencies": { + "whatwg-url": "7.1.0" + } } diff --git a/packages/plugin-icp/package.json b/packages/plugin-icp/package.json index bdf62d0e63..9dee9b4424 100644 --- a/packages/plugin-icp/package.json +++ b/packages/plugin-icp/package.json @@ -1,24 +1,24 @@ { - "name": "@elizaos/plugin-icp", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "@dfinity/agent": "2.1.3", - "@dfinity/candid": "2.1.3", - "@dfinity/identity": "2.1.3", - "@dfinity/principal": "2.1.3" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch" - }, - "devDependencies": { - "@types/jest": "29.5.14", - "jest": "29.7.0", - "tsup": "8.3.5", - "typescript": "5.6.3" - } + "name": "@elizaos/plugin-icp", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "@dfinity/agent": "2.1.3", + "@dfinity/candid": "2.1.3", + "@dfinity/identity": "2.1.3", + "@dfinity/principal": "2.1.3" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch" + }, + "devDependencies": { + "@types/jest": "29.5.14", + "jest": "29.7.0", + "tsup": "8.3.5", + "typescript": "5.6.3" + } } diff --git a/packages/plugin-image-generation/package.json b/packages/plugin-image-generation/package.json index 9115c73b57..69546f782f 100644 --- a/packages/plugin-image-generation/package.json +++ b/packages/plugin-image-generation/package.json @@ -1,19 +1,19 @@ { - "name": "@elizaos/plugin-image-generation", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "tsup": "8.3.5" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "lint": "eslint --fix --cache ." - }, - "peerDependencies": { - "whatwg-url": "7.1.0" - } + "name": "@elizaos/plugin-image-generation", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "tsup": "8.3.5" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch", + "lint": "eslint --fix --cache ." + }, + "peerDependencies": { + "whatwg-url": "7.1.0" + } } diff --git a/packages/plugin-intiface/package.json b/packages/plugin-intiface/package.json index 99bfb7c29d..954bc8322f 100644 --- a/packages/plugin-intiface/package.json +++ b/packages/plugin-intiface/package.json @@ -1,21 +1,21 @@ { - "name": "@elizaos/plugin-intiface", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "buttplug": "3.2.2", - "net": "1.0.2", - "tsup": "8.3.5" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "test-via-bun": "bun test/simulate.ts" - }, - "peerDependencies": { - "whatwg-url": "7.1.0" - } + "name": "@elizaos/plugin-intiface", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "buttplug": "3.2.2", + "net": "1.0.2", + "tsup": "8.3.5" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch", + "test-via-bun": "bun test/simulate.ts" + }, + "peerDependencies": { + "whatwg-url": "7.1.0" + } } diff --git a/packages/plugin-multiversx/package.json b/packages/plugin-multiversx/package.json index a38ba29885..97e015359f 100644 --- a/packages/plugin-multiversx/package.json +++ b/packages/plugin-multiversx/package.json @@ -1,26 +1,26 @@ { - "name": "@elizaos/plugin-multiversx", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "@multiversx/sdk-core": "13.15.0", - "bignumber.js": "9.1.2", - "browserify": "^17.0.1", - "esbuild-plugin-polyfill-node": "^0.3.0", - "esmify": "^2.1.1", - "tsup": "8.3.5", - "vitest": "2.1.5" - }, - "scripts": { - "build": "tsup --format esm --dts", - "test": "vitest run", - "test:watch": "vitest", - "lint": "eslint . --fix" - }, - "peerDependencies": { - "whatwg-url": "7.1.0" - } + "name": "@elizaos/plugin-multiversx", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "@multiversx/sdk-core": "13.15.0", + "bignumber.js": "9.1.2", + "browserify": "^17.0.1", + "esbuild-plugin-polyfill-node": "^0.3.0", + "esmify": "^2.1.1", + "tsup": "8.3.5", + "vitest": "2.1.5" + }, + "scripts": { + "build": "tsup --format esm --dts", + "test": "vitest run", + "test:watch": "vitest", + "lint": "eslint . --fix" + }, + "peerDependencies": { + "whatwg-url": "7.1.0" + } } diff --git a/packages/plugin-near/package.json b/packages/plugin-near/package.json index 78dd934e5b..d638525bf2 100644 --- a/packages/plugin-near/package.json +++ b/packages/plugin-near/package.json @@ -1,25 +1,25 @@ { - "name": "@elizaos/plugin-near", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "@ref-finance/ref-sdk": "^1.4.6", - "tsup": "8.3.5", - "near-api-js": "5.0.1", - "bignumber.js": "9.1.2", - "node-cache": "5.1.2" - }, - "scripts": { - "build": "tsup --format esm,cjs --dts", - "test": "vitest run", - "test:watch": "vitest", - "lint": "eslint . --fix" - }, - "peerDependencies": { - "whatwg-url": "7.1.0", - "form-data": "4.0.1" - } + "name": "@elizaos/plugin-near", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "@ref-finance/ref-sdk": "^1.4.6", + "tsup": "8.3.5", + "near-api-js": "5.0.1", + "bignumber.js": "9.1.2", + "node-cache": "5.1.2" + }, + "scripts": { + "build": "tsup --format esm,cjs --dts", + "test": "vitest run", + "test:watch": "vitest", + "lint": "eslint . --fix" + }, + "peerDependencies": { + "whatwg-url": "7.1.0", + "form-data": "4.0.1" + } } diff --git a/packages/plugin-nft-generation/package.json b/packages/plugin-nft-generation/package.json index acc7c94ea4..9bebdc1899 100644 --- a/packages/plugin-nft-generation/package.json +++ b/packages/plugin-nft-generation/package.json @@ -1,30 +1,30 @@ { - "name": "@elizaos/plugin-nft-generation", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "@elizaos/plugin-image-generation": "workspace:*", - "@elizaos/plugin-node": "workspace:*", - "@metaplex-foundation/mpl-token-metadata": "^3.3.0", - "@metaplex-foundation/mpl-toolbox": "^0.9.4", - "@metaplex-foundation/umi": "^0.9.2", - "@metaplex-foundation/umi-bundle-defaults": "^0.9.2", - "@solana-developers/helpers": "^2.5.6", - "@solana/web3.js": "1.95.5", - "bs58": "6.0.0", - "express": "4.21.1", - "node-cache": "5.1.2", - "tsup": "8.3.5" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "lint": "eslint . --fix" - }, - "peerDependencies": { - "whatwg-url": "7.1.0" - } + "name": "@elizaos/plugin-nft-generation", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "@elizaos/plugin-image-generation": "workspace:*", + "@elizaos/plugin-node": "workspace:*", + "@metaplex-foundation/mpl-token-metadata": "^3.3.0", + "@metaplex-foundation/mpl-toolbox": "^0.9.4", + "@metaplex-foundation/umi": "^0.9.2", + "@metaplex-foundation/umi-bundle-defaults": "^0.9.2", + "@solana-developers/helpers": "^2.5.6", + "@solana/web3.js": "1.95.5", + "bs58": "6.0.0", + "express": "4.21.1", + "node-cache": "5.1.2", + "tsup": "8.3.5" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch", + "lint": "eslint . --fix" + }, + "peerDependencies": { + "whatwg-url": "7.1.0" + } } diff --git a/packages/plugin-node/package.json b/packages/plugin-node/package.json index cdec1c0414..2718b0eed2 100644 --- a/packages/plugin-node/package.json +++ b/packages/plugin-node/package.json @@ -1,89 +1,89 @@ { - "name": "@elizaos/plugin-node", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "files": [ - "dist", - "scripts", - "package.json", - "LICENSE", - "tsup.config.ts" - ], - "dependencies": { - "@elizaos/core": "workspace:*", - "@aws-sdk/client-s3": "^3.705.0", - "@aws-sdk/s3-request-presigner": "^3.705.0", - "@cliqz/adblocker-playwright": "1.34.0", - "@echogarden/espeak-ng-emscripten": "0.3.3", - "@echogarden/kissfft-wasm": "0.2.0", - "@echogarden/speex-resampler-wasm": "0.2.1", - "@huggingface/transformers": "3.0.2", - "@opendocsg/pdf2md": "0.1.32", - "@types/uuid": "10.0.0", - "alawmulaw": "6.0.0", - "bignumber": "1.1.0", - "bignumber.js": "9.1.2", - "capsolver-npm": "2.0.2", - "cldr-segmentation": "2.2.1", - "command-exists": "1.2.9", - "csv-writer": "1.6.0", - "echogarden": "2.0.7", - "espeak-ng": "1.0.2", - "ffmpeg-static": "5.2.0", - "fluent-ffmpeg": "2.1.3", - "formdata-node": "6.0.3", - "fs-extra": "11.2.0", - "gaxios": "6.7.1", - "gif-frames": "0.4.1", - "glob": "11.0.0", - "graceful-fs": "4.2.11", - "html-escaper": "3.0.3", - "html-to-text": "9.0.5", - "import-meta-resolve": "4.1.0", - "jieba-wasm": "2.2.0", - "json5": "2.2.3", - "kuromoji": "0.1.2", - "libsodium-wrappers": "0.7.15", - "multer": "1.4.5-lts.1", - "node-cache": "5.1.2", - "node-llama-cpp": "3.1.1", - "nodejs-whisper": "0.1.18", - "onnxruntime-node": "1.20.1", - "pdfjs-dist": "4.7.76", - "playwright": "1.48.2", - "pm2": "5.4.3", - "puppeteer-extra": "3.3.6", - "puppeteer-extra-plugin-capsolver": "2.0.1", - "sharp": "0.33.5", - "srt": "0.0.3", - "systeminformation": "5.23.5", - "tar": "7.4.3", - "tinyld": "1.3.4", - "uuid": "11.0.3", - "wav": "1.0.2", - "wav-encoder": "1.3.0", - "wavefile": "11.0.0", - "yargs": "17.7.2", - "youtube-dl-exec": "3.0.10" - }, - "devDependencies": { - "@types/node": "22.8.4", - "tsup": "8.3.5" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "lint": "eslint --fix --cache .", - "postinstall": "node scripts/postinstall.js" - }, - "peerDependencies": { - "onnxruntime-node": "1.20.1", - "whatwg-url": "7.1.0" - }, - "trustedDependencies": { - "onnxruntime-node": "1.20.1", - "sharp": "0.33.5" - } + "name": "@elizaos/plugin-node", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "files": [ + "dist", + "scripts", + "package.json", + "LICENSE", + "tsup.config.ts" + ], + "dependencies": { + "@elizaos/core": "workspace:*", + "@aws-sdk/client-s3": "^3.705.0", + "@aws-sdk/s3-request-presigner": "^3.705.0", + "@cliqz/adblocker-playwright": "1.34.0", + "@echogarden/espeak-ng-emscripten": "0.3.3", + "@echogarden/kissfft-wasm": "0.2.0", + "@echogarden/speex-resampler-wasm": "0.2.1", + "@huggingface/transformers": "3.0.2", + "@opendocsg/pdf2md": "0.1.32", + "@types/uuid": "10.0.0", + "alawmulaw": "6.0.0", + "bignumber": "1.1.0", + "bignumber.js": "9.1.2", + "capsolver-npm": "2.0.2", + "cldr-segmentation": "2.2.1", + "command-exists": "1.2.9", + "csv-writer": "1.6.0", + "echogarden": "2.0.7", + "espeak-ng": "1.0.2", + "ffmpeg-static": "5.2.0", + "fluent-ffmpeg": "2.1.3", + "formdata-node": "6.0.3", + "fs-extra": "11.2.0", + "gaxios": "6.7.1", + "gif-frames": "0.4.1", + "glob": "11.0.0", + "graceful-fs": "4.2.11", + "html-escaper": "3.0.3", + "html-to-text": "9.0.5", + "import-meta-resolve": "4.1.0", + "jieba-wasm": "2.2.0", + "json5": "2.2.3", + "kuromoji": "0.1.2", + "libsodium-wrappers": "0.7.15", + "multer": "1.4.5-lts.1", + "node-cache": "5.1.2", + "node-llama-cpp": "3.1.1", + "nodejs-whisper": "0.1.18", + "onnxruntime-node": "1.20.1", + "pdfjs-dist": "4.7.76", + "playwright": "1.48.2", + "pm2": "5.4.3", + "puppeteer-extra": "3.3.6", + "puppeteer-extra-plugin-capsolver": "2.0.1", + "sharp": "0.33.5", + "srt": "0.0.3", + "systeminformation": "5.23.5", + "tar": "7.4.3", + "tinyld": "1.3.4", + "uuid": "11.0.3", + "wav": "1.0.2", + "wav-encoder": "1.3.0", + "wavefile": "11.0.0", + "yargs": "17.7.2", + "youtube-dl-exec": "3.0.10" + }, + "devDependencies": { + "@types/node": "22.8.4", + "tsup": "8.3.5" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch", + "lint": "eslint --fix --cache .", + "postinstall": "node scripts/postinstall.js" + }, + "peerDependencies": { + "onnxruntime-node": "1.20.1", + "whatwg-url": "7.1.0" + }, + "trustedDependencies": { + "onnxruntime-node": "1.20.1", + "sharp": "0.33.5" + } } diff --git a/packages/plugin-solana/package.json b/packages/plugin-solana/package.json index daf157ec51..8fbe9f44fd 100644 --- a/packages/plugin-solana/package.json +++ b/packages/plugin-solana/package.json @@ -1,33 +1,33 @@ { - "name": "@elizaos/plugin-solana", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "@elizaos/plugin-trustdb": "workspace:*", - "@elizaos/plugin-tee": "workspace:*", - "@coral-xyz/anchor": "0.30.1", - "@solana/spl-token": "0.4.9", - "@solana/web3.js": "1.95.8", - "bignumber": "1.1.0", - "bignumber.js": "9.1.2", - "bs58": "6.0.0", - "fomo-sdk-solana": "1.3.2", - "node-cache": "5.1.2", - "pumpdotfun-sdk": "1.3.2", - "tsup": "8.3.5", - "vitest": "2.1.4" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "lint": "eslint --fix --cache .", - "test": "vitest run" - }, - "peerDependencies": { - "form-data": "4.0.1", - "whatwg-url": "7.1.0" - } + "name": "@elizaos/plugin-solana", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "@elizaos/plugin-trustdb": "workspace:*", + "@elizaos/plugin-tee": "workspace:*", + "@coral-xyz/anchor": "0.30.1", + "@solana/spl-token": "0.4.9", + "@solana/web3.js": "1.95.8", + "bignumber": "1.1.0", + "bignumber.js": "9.1.2", + "bs58": "6.0.0", + "fomo-sdk-solana": "1.3.2", + "node-cache": "5.1.2", + "pumpdotfun-sdk": "1.3.2", + "tsup": "8.3.5", + "vitest": "2.1.4" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch", + "lint": "eslint --fix --cache .", + "test": "vitest run" + }, + "peerDependencies": { + "form-data": "4.0.1", + "whatwg-url": "7.1.0" + } } diff --git a/packages/plugin-starknet/package.json b/packages/plugin-starknet/package.json index 79a8662062..2a30e19195 100644 --- a/packages/plugin-starknet/package.json +++ b/packages/plugin-starknet/package.json @@ -1,27 +1,27 @@ { - "name": "@elizaos/plugin-starknet", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "@elizaos/plugin-trustdb": "workspace:*", - "@avnu/avnu-sdk": "2.1.1", - "@uniswap/sdk-core": "6.0.0", - "@unruggable_starknet/core": "0.1.0", - "starknet": "6.18.0", - "tsup": "8.3.5", - "vitest": "2.1.5" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "test": "vitest run", - "test:watch": "vitest", - "lint": "eslint --fix --cache ." - }, - "peerDependencies": { - "whatwg-url": "7.1.0" - } + "name": "@elizaos/plugin-starknet", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "@elizaos/plugin-trustdb": "workspace:*", + "@avnu/avnu-sdk": "2.1.1", + "@uniswap/sdk-core": "6.0.0", + "@unruggable_starknet/core": "0.1.0", + "starknet": "6.18.0", + "tsup": "8.3.5", + "vitest": "2.1.5" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch", + "test": "vitest run", + "test:watch": "vitest", + "lint": "eslint --fix --cache ." + }, + "peerDependencies": { + "whatwg-url": "7.1.0" + } } diff --git a/packages/plugin-story/package.json b/packages/plugin-story/package.json index 6c8a9b14c3..9f1e59b002 100644 --- a/packages/plugin-story/package.json +++ b/packages/plugin-story/package.json @@ -1,26 +1,26 @@ { - "name": "@elizaos/plugin-story", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "@elizaos/plugin-trustdb": "workspace:*", - "@story-protocol/core-sdk": "1.2.0-rc.3", - "tsup": "8.3.5", - "viem": "2.21.54", - "@pinata/sdk": "^2.1.0" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "test": "vitest run" - }, - "peerDependencies": { - "whatwg-url": "7.1.0" - }, - "devDependencies": { - "@types/node": "^22.10.1" - } + "name": "@elizaos/plugin-story", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "@elizaos/plugin-trustdb": "workspace:*", + "@story-protocol/core-sdk": "1.2.0-rc.3", + "tsup": "8.3.5", + "viem": "2.21.54", + "@pinata/sdk": "^2.1.0" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch", + "test": "vitest run" + }, + "peerDependencies": { + "whatwg-url": "7.1.0" + }, + "devDependencies": { + "@types/node": "^22.10.1" + } } diff --git a/packages/plugin-sui/package.json b/packages/plugin-sui/package.json index 5b5d678387..0a15c67de5 100644 --- a/packages/plugin-sui/package.json +++ b/packages/plugin-sui/package.json @@ -1,26 +1,26 @@ { - "name": "@elizaos/plugin-sui", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "@elizaos/plugin-trustdb": "workspace:*", - "@mysten/sui": "^1.16.0", - "bignumber": "1.1.0", - "bignumber.js": "9.1.2", - "node-cache": "5.1.2", - "tsup": "8.3.5", - "vitest": "2.1.4" - }, - "scripts": { - "build": "tsup --format esm --dts", - "lint": "eslint . --fix", - "test": "vitest run" - }, - "peerDependencies": { - "form-data": "4.0.1", - "whatwg-url": "7.1.0" - } + "name": "@elizaos/plugin-sui", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "@elizaos/plugin-trustdb": "workspace:*", + "@mysten/sui": "^1.16.0", + "bignumber": "1.1.0", + "bignumber.js": "9.1.2", + "node-cache": "5.1.2", + "tsup": "8.3.5", + "vitest": "2.1.4" + }, + "scripts": { + "build": "tsup --format esm --dts", + "lint": "eslint . --fix", + "test": "vitest run" + }, + "peerDependencies": { + "form-data": "4.0.1", + "whatwg-url": "7.1.0" + } } diff --git a/packages/plugin-tee/package.json b/packages/plugin-tee/package.json index 339846ae35..3985cd8b0a 100644 --- a/packages/plugin-tee/package.json +++ b/packages/plugin-tee/package.json @@ -1,28 +1,28 @@ { - "name": "@elizaos/plugin-tee", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "@phala/dstack-sdk": "0.1.6", - "@solana/spl-token": "0.4.9", - "@solana/web3.js": "1.95.8", - "bignumber": "1.1.0", - "bignumber.js": "9.1.2", - "bs58": "6.0.0", - "node-cache": "5.1.2", - "pumpdotfun-sdk": "1.3.2", - "tsup": "8.3.5", - "viem": "2.21.53" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "lint": "eslint --fix --cache ." - }, - "peerDependencies": { - "whatwg-url": "7.1.0" - } + "name": "@elizaos/plugin-tee", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "@phala/dstack-sdk": "0.1.6", + "@solana/spl-token": "0.4.9", + "@solana/web3.js": "1.95.8", + "bignumber": "1.1.0", + "bignumber.js": "9.1.2", + "bs58": "6.0.0", + "node-cache": "5.1.2", + "pumpdotfun-sdk": "1.3.2", + "tsup": "8.3.5", + "viem": "2.21.53" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch", + "lint": "eslint --fix --cache ." + }, + "peerDependencies": { + "whatwg-url": "7.1.0" + } } diff --git a/packages/plugin-ton/package.json b/packages/plugin-ton/package.json index d0a0e899c6..98af38aff1 100644 --- a/packages/plugin-ton/package.json +++ b/packages/plugin-ton/package.json @@ -1,25 +1,25 @@ { - "name": "@elizaos/plugin-ton", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "@elizaos/plugin-trustdb": "workspace:*", - "bignumber": "1.1.0", - "bignumber.js": "9.1.2", - "node-cache": "5.1.2", - "@ton/ton": "15.1.0", - "@ton/crypto": "3.3.0", - "tsup": "8.3.5" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "test": "vitest run" - }, - "peerDependencies": { - "whatwg-url": "7.1.0" - } + "name": "@elizaos/plugin-ton", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "@elizaos/plugin-trustdb": "workspace:*", + "bignumber": "1.1.0", + "bignumber.js": "9.1.2", + "node-cache": "5.1.2", + "@ton/ton": "15.1.0", + "@ton/crypto": "3.3.0", + "tsup": "8.3.5" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch", + "test": "vitest run" + }, + "peerDependencies": { + "whatwg-url": "7.1.0" + } } diff --git a/packages/plugin-trustdb/package.json b/packages/plugin-trustdb/package.json index 9a30d2af02..f0ab079a76 100644 --- a/packages/plugin-trustdb/package.json +++ b/packages/plugin-trustdb/package.json @@ -1,27 +1,27 @@ { - "name": "@elizaos/plugin-trustdb", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "dompurify": "3.2.2", - "tsup": "8.3.5", - "uuid": "11.0.3", - "vitest": "2.1.5" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "test": "vitest run", - "test:watch": "vitest", - "lint": "eslint --fix --cache ." - }, - "devDependencies": { - "@types/dompurify": "3.2.0" - }, - "peerDependencies": { - "whatwg-url": "7.1.0" - } + "name": "@elizaos/plugin-trustdb", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "dompurify": "3.2.2", + "tsup": "8.3.5", + "uuid": "11.0.3", + "vitest": "2.1.5" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch", + "test": "vitest run", + "test:watch": "vitest", + "lint": "eslint --fix --cache ." + }, + "devDependencies": { + "@types/dompurify": "3.2.0" + }, + "peerDependencies": { + "whatwg-url": "7.1.0" + } } diff --git a/packages/plugin-video-generation/package.json b/packages/plugin-video-generation/package.json index 237baf8cea..9051dca60e 100644 --- a/packages/plugin-video-generation/package.json +++ b/packages/plugin-video-generation/package.json @@ -1,19 +1,19 @@ { - "name": "@elizaos/plugin-video-generation", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "tsup": "8.3.5" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "lint": "eslint --fix --cache ." - }, - "peerDependencies": { - "whatwg-url": "7.1.0" - } + "name": "@elizaos/plugin-video-generation", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "tsup": "8.3.5" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch", + "lint": "eslint --fix --cache ." + }, + "peerDependencies": { + "whatwg-url": "7.1.0" + } } diff --git a/packages/plugin-web-search/package.json b/packages/plugin-web-search/package.json index 49e8b605fd..9dbe029115 100644 --- a/packages/plugin-web-search/package.json +++ b/packages/plugin-web-search/package.json @@ -1,18 +1,18 @@ { - "name": "@elizaos/plugin-web-search", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "tsup": "8.3.5" - }, - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch" - }, - "peerDependencies": { - "whatwg-url": "7.1.0" - } + "name": "@elizaos/plugin-web-search", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "tsup": "8.3.5" + }, + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch" + }, + "peerDependencies": { + "whatwg-url": "7.1.0" + } } diff --git a/packages/plugin-whatsapp/package.json b/packages/plugin-whatsapp/package.json index a1f6dc89c9..d56d37693d 100644 --- a/packages/plugin-whatsapp/package.json +++ b/packages/plugin-whatsapp/package.json @@ -1,26 +1,26 @@ { - "name": "@elizaos/plugin-whatsapp", - "version": "0.1.7-alpha.1", - "description": "WhatsApp Cloud API plugin", - "main": "dist/index.js", - "types": "dist/index.d.ts", - "scripts": { - "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "test": "jest", - "lint": "eslint --fix --cache ." - }, - "dependencies": { - "@elizaos/core": "workspace:*", - "axios": "1.7.8" - }, - "devDependencies": { - "@types/jest": "29.5.14", - "@types/node": "20.17.9", - "@typescript-eslint/eslint-plugin": "8.16.0", - "@typescript-eslint/parser": "8.16.0", - "jest": "29.7.0", - "ts-jest": "29.2.5", - "typescript": "5.6.3" - } + "name": "@elizaos/plugin-whatsapp", + "version": "0.1.7-alpha.1", + "description": "WhatsApp Cloud API plugin", + "main": "dist/index.js", + "types": "dist/index.d.ts", + "scripts": { + "build": "tsup --format esm --dts", + "dev": "tsup --format esm --dts --watch", + "test": "jest", + "lint": "eslint --fix --cache ." + }, + "dependencies": { + "@elizaos/core": "workspace:*", + "axios": "1.7.8" + }, + "devDependencies": { + "@types/jest": "29.5.14", + "@types/node": "20.17.9", + "@typescript-eslint/eslint-plugin": "8.16.0", + "@typescript-eslint/parser": "8.16.0", + "jest": "29.7.0", + "ts-jest": "29.2.5", + "typescript": "5.6.3" + } } diff --git a/packages/plugin-zksync-era/package.json b/packages/plugin-zksync-era/package.json index 2dd4b09ab3..b64598e53d 100644 --- a/packages/plugin-zksync-era/package.json +++ b/packages/plugin-zksync-era/package.json @@ -1,20 +1,20 @@ { - "name": "@elizaos/plugin-zksync-era", - "version": "0.1.7-alpha.1", - "main": "dist/index.js", - "type": "module", - "types": "dist/index.d.ts", - "dependencies": { - "@elizaos/core": "workspace:*", - "@elizaos/plugin-trustdb": "workspace:*", - "tsup": "^8.3.5", - "web3": "^4.15.0", - "web3-plugin-zksync": "^1.0.8" - }, - "scripts": { - "build": "tsup --format esm --dts" - }, - "peerDependencies": { - "whatwg-url": "7.1.0" - } + "name": "@elizaos/plugin-zksync-era", + "version": "0.1.7-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "@elizaos/plugin-trustdb": "workspace:*", + "tsup": "^8.3.5", + "web3": "^4.15.0", + "web3-plugin-zksync": "^1.0.8" + }, + "scripts": { + "build": "tsup --format esm --dts" + }, + "peerDependencies": { + "whatwg-url": "7.1.0" + } } From c4bd90603daea2930349724d7c9029c4742c45fa Mon Sep 17 00:00:00 2001 From: Ryan Date: Tue, 24 Dec 2024 04:05:17 +0700 Subject: [PATCH 24/58] chore: allow scoped pr titles --- .github/workflows/pr.yaml | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml index 1b7bfebcfb..46b3b0520d 100644 --- a/.github/workflows/pr.yaml +++ b/.github/workflows/pr.yaml @@ -10,14 +10,14 @@ jobs: steps: - name: Check out the repository - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Validate PR title id: validate run: | PR_TITLE=$(jq -r .pull_request.title "$GITHUB_EVENT_PATH") echo "PR Title: $PR_TITLE" - if [[ ! "$PR_TITLE" =~ ^(feat|fix|docs|style|refactor|test|chore):\ .+ ]]; then + if [[ ! "$PR_TITLE" =~ ^(feat|fix|docs|style|refactor|test|chore)(\([a-zA-Z0-9-]+\))?:\ .+ ]]; then echo "PR title does not match the required pattern." exit 1 fi @@ -25,4 +25,6 @@ jobs: - name: Set status if: failure() run: | - gh pr comment ${{ github.event.pull_request.number }} --body "❌ PR title does not match the required pattern. Please use the format: 'type: description' (e.g., 'feat|fix|docs|style|refactor|test|chore: title')." + gh pr comment ${{ github.event.pull_request.number }} --body "❌ PR title does not match the required pattern. Please use one of these formats: + - 'type: description' (e.g., 'feat: add new feature') + - 'type(scope): description' (e.g., 'chore(core): update dependencies')" From fd5bbbd95b98af0548f2cd0de518c6716f27ef5c Mon Sep 17 00:00:00 2001 From: CardinalError Date: Mon, 23 Dec 2024 22:14:30 +0100 Subject: [PATCH 25/58] run multiple agents locally with auto setting of loclahost port --- agent/src/index.ts | 39 +++++++++++++++++++++++++++++++++++---- 1 file changed, 35 insertions(+), 4 deletions(-) diff --git a/agent/src/index.ts b/agent/src/index.ts index 1e49bae84f..f6e05e3d8e 100644 --- a/agent/src/index.ts +++ b/agent/src/index.ts @@ -60,6 +60,7 @@ import fs from "fs"; import path from "path"; import { fileURLToPath } from "url"; import yargs from "yargs"; +import net from "net"; const __filename = fileURLToPath(import.meta.url); // get the resolved path to the file const __dirname = path.dirname(__filename); // get the name of the directory @@ -692,13 +693,30 @@ async function startAgent( } } +const checkPortAvailable = (port: number): Promise => { + return new Promise((resolve) => { + const server = net.createServer(); + + server.once("error", (err: NodeJS.ErrnoException) => { + if (err.code === "EADDRINUSE") { + resolve(false); + } + }); + + server.once("listening", () => { + server.close(); + resolve(true); + }); + + server.listen(port); + }); +}; + const startAgents = async () => { const directClient = new DirectClient(); - const serverPort = parseInt(settings.SERVER_PORT || "3000"); + let serverPort = parseInt(settings.SERVER_PORT || "3000"); const args = parseArguments(); - let charactersArg = args.characters || args.character; - let characters = [defaultCharacter]; if (charactersArg) { @@ -713,13 +731,26 @@ const startAgents = async () => { elizaLogger.error("Error starting agents:", error); } + // Find available port + while (!(await checkPortAvailable(serverPort))) { + elizaLogger.warn( + `Port ${serverPort} is in use, trying ${serverPort + 1}` + ); + serverPort++; + } + // upload some agent functionality into directClient directClient.startAgent = async (character: Character) => { // wrap it so we don't have to inject directClient later return startAgent(character, directClient); }; + directClient.start(serverPort); + if (serverPort !== parseInt(settings.SERVER_PORT || "3000")) { + elizaLogger.log(`Server started on alternate port ${serverPort}`); + } + elizaLogger.log( "Run `pnpm start:client` to start the client and visit the outputted URL (http://localhost:5173) to chat with your agents" ); @@ -727,5 +758,5 @@ const startAgents = async () => { startAgents().catch((error) => { elizaLogger.error("Unhandled error in startAgents:", error); - process.exit(1); // Exit the process after logging + process.exit(1); }); From 0abcd4913d695b8f73cdb4d81bed073c3421a706 Mon Sep 17 00:00:00 2001 From: CardinalError Date: Mon, 23 Dec 2024 22:39:33 +0100 Subject: [PATCH 26/58] add message to exaplain how to use it --- agent/src/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/agent/src/index.ts b/agent/src/index.ts index f6e05e3d8e..3fd100a97e 100644 --- a/agent/src/index.ts +++ b/agent/src/index.ts @@ -752,7 +752,7 @@ const startAgents = async () => { } elizaLogger.log( - "Run `pnpm start:client` to start the client and visit the outputted URL (http://localhost:5173) to chat with your agents" + "Run `pnpm start:client` to start the client and visit the outputted URL (http://localhost:5173) to chat with your agents. When running multiple agents, use client with different port `SERVER_PORT=3001 pnpm start:client`" ); }; From b844da641bfb30179e99eb612b826e22e771a76f Mon Sep 17 00:00:00 2001 From: Harvey Javier Date: Tue, 24 Dec 2024 10:16:16 +0800 Subject: [PATCH 27/58] Add Tagalog README markdown translation --- README.md | 2 +- README_TG.md | 129 +++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 130 insertions(+), 1 deletion(-) create mode 100644 README_TG.md diff --git a/README.md b/README.md index 8ae4ac62e3..e314f27fcb 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,7 @@ ## 🌍 README Translations -[ä¸­æ–‡č¯´æ˜Ž](./README_CN.md) | [æ—ĨæœŦčĒžãŽčĒŦ明](./README_JA.md) | [한ęĩ­ė–´ ė„¤ëĒ…](./README_KOR.md) | [Français](./README_FR.md) | [PortuguÃĒs](./README_PTBR.md) | [TÃŧrkçe](./README_TR.md) | [Đ ŅƒŅŅĐēиК](./README_RU.md) | [EspaÃąol](./README_ES.md) | [Italiano](./README_IT.md) | [āš„ā¸—ā¸ĸ](./README_TH.md) | [Deutsch](./README_DE.md) | [Tiáēŋng Viáģ‡t](./README_VI.md) | [×ĸִברִי×Ē](https://github.com/elizaos/Elisa/blob/main/README_HE.md) +[ä¸­æ–‡č¯´æ˜Ž](./README_CN.md) | [æ—ĨæœŦčĒžãŽčĒŦ明](./README_JA.md) | [한ęĩ­ė–´ ė„¤ëĒ…](./README_KOR.md) | [Français](./README_FR.md) | [PortuguÃĒs](./README_PTBR.md) | [TÃŧrkçe](./README_TR.md) | [Đ ŅƒŅŅĐēиК](./README_RU.md) | [EspaÃąol](./README_ES.md) | [Italiano](./README_IT.md) | [āš„ā¸—ā¸ĸ](./README_TH.md) | [Deutsch](./README_DE.md) | [Tiáēŋng Viáģ‡t](./README_VI.md) | [×ĸִברִי×Ē](https://github.com/elizaos/Elisa/blob/main/README_HE.md) | [Tagalog](./README_TG.md) ## ✨ Features diff --git a/README_TG.md b/README_TG.md new file mode 100644 index 0000000000..7fd1aec09b --- /dev/null +++ b/README_TG.md @@ -0,0 +1,129 @@ + +# Eliza 🤖 + +
+ Eliza Banner +
+ +
+ +📖 [Dokumentasyon](https://elizaos.github.io/eliza/) | đŸŽ¯ [Mga Halimbawa](https://github.com/thejoven/awesome-eliza) + +
+ +## ✨ Mga Tampok + +- 🛠ī¸ Kumpletong suporta sa [Discord](https://discord.com/), [Twitter](https://twitter.com/), at [Telegram](https://telegram.org/) +- 🔗 Suporta para sa bawat modelo (Llama, Grok, OpenAI, Anthropic, atbp.) +- đŸ‘Ĩ Suporta para sa multi-agent at kuwarto +- 📚 Madaling mag-load at makipag-ugnayan sa iyong mga dokumento +- 💾 Naaakses na memorya at imbakan ng dokumento +- 🚀 Napakabisa - maaaring gumawa ng sarili mong mga aksyon at kliyente +- ☁ī¸ Sinusuportahan ang maraming modelo (lokal na Llama, OpenAI, Anthropic, Groq, atbp.) +- đŸ“Ļ Madaling gamitin! + +## Mga Tutorial sa Video + +[AI Agent Dev School](https://www.youtube.com/watch?v=ArptLpQiKfI&list=PLx5pnFXdPTRzWla0RaOxALTSTnVq53fKL) + +## đŸŽ¯ Gamit ito para sa + +- 🤖 [Mga Chatbot](https://en.wikipedia.org/wiki/Chatbot) +- đŸ•ĩī¸ Mga Awtonomikong Ahente +- 📈 Pagproseso ng Negosyo +- 🎮 [Mga NPC sa Video Game](https://en.wikipedia.org/wiki/Non-player_character) +- 🧠 Trading + +## 🚀 Pangkalahatang-ideya + +### Mga Kinakailangan + +- [Python 2.7+](https://www.python.org/downloads/) +- [Node.js 23+](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) +- [pnpm](https://pnpm.io/installation) + +> **Paalala para sa mga Gumagamit ng Windows:** Kailangan ang [WSL 2](https://learn.microsoft.com/en-us/windows/wsl/install-manual). + +### Gamitin ang Starter (Inirerekomenda) + +```bash +git clone https://github.com/elizaos/eliza-starter.git +cd eliza-starter +cp .env.example .env +pnpm i && pnpm build && pnpm start +``` + +Basahin ang [Dokumentasyon](https://elizaos.github.io/eliza/) upang matutunan kung paano i-customize ang Eliza. + +### Manwal na Pag-simula ng Eliza (Inirerekomenda lamang kung alam mo ang ginagawa mo) + +```bash +# Clone the repository +git clone https://github.com/elizaos/eliza.git + +# Checkout the latest release +git checkout $(git describe --tags --abbrev=0) +``` + +### Simulan ang Eliza gamit ang Gitpod + +[![Buksan sa Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/elizaos/eliza/tree/main) + +### I-edit ang .env File + +Kopyahin ang `.env.example` sa `.env` at punan ang tamang mga halaga. + +```bash +cp .env.example .env +``` + +### Awtomatikong Simulan ang Eliza + +Ito ay magse-setup ng proyekto at sisimulan ang bot gamit ang default na karakter. + +```bash +sh scripts/start.sh +``` + +### I-edit ang Character File + +1. Buksan ang `packages/core/src/defaultCharacter.ts` para baguhin ang default na karakter. +2. Mag-load ng custom na mga karakter: + - Gamitin ang `pnpm start --characters="landas/sa/inyong/character.json"` + - Puwedeng mag-load ng maraming character file sabay-sabay. +3. Ikonekta ang Twitter (X): + - Baguhin ang `"clients": []` sa `"clients": ["twitter"]` sa character file upang ikonekta ang Twitter. + +### Manwal na Pag-simula ng Eliza + +```bash +pnpm i +pnpm build +pnpm start + +# Linisin ang proyekto kung bumalik ka dito matapos ang mahabang panahon +pnpm clean +``` + +#### Karagdagang Mga Kinakailangan + +Puwede mong kailangang mag-install ng [Sharp](https://sharp.pixelplumbing.com/). Kung may error, subukang i-install ito gamit ang: + +```bash +pnpm install --include=optional sharp +``` + +### Komunidad at Kontak + +- [GitHub Issues](https://github.com/elizaos/eliza/issues): Para sa mga bug at mungkahi sa tampok. +- [Discord](https://discord.gg/ai16z): Para sa pagbabahagi ng aplikasyon at pakikihalubilo sa komunidad. + +## Mga Kontribyutor + + + + + +## Kasaysayan ng mga Bituin + +[![Star History Chart](https://api.star-history.com/svg?repos=elizaos/eliza&type=Date)](https://star-history.com/#elizaos/eliza&Date) From e90f2cd0e7790bd1ce1febdeff7a4e0b2ce5f8f5 Mon Sep 17 00:00:00 2001 From: Harvey Javier Date: Tue, 24 Dec 2024 10:19:52 +0800 Subject: [PATCH 28/58] Improve tagalog translation in --- README_TG.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/README_TG.md b/README_TG.md index 7fd1aec09b..ec2524d41f 100644 --- a/README_TG.md +++ b/README_TG.md @@ -31,8 +31,8 @@ - 🤖 [Mga Chatbot](https://en.wikipedia.org/wiki/Chatbot) - đŸ•ĩī¸ Mga Awtonomikong Ahente - 📈 Pagproseso ng Negosyo -- 🎮 [Mga NPC sa Video Game](https://en.wikipedia.org/wiki/Non-player_character) -- 🧠 Trading +- 🎮 [Mga NPC sa mga Laro sa Kompyuter](https://en.wikipedia.org/wiki/Non-player_character) +- 🧠 Pangangalakal ## 🚀 Pangkalahatang-ideya @@ -53,7 +53,7 @@ cp .env.example .env pnpm i && pnpm build && pnpm start ``` -Basahin ang [Dokumentasyon](https://elizaos.github.io/eliza/) upang matutunan kung paano i-customize ang Eliza. +Basahin ang [Dokumentasyon](https://elizaos.github.io/eliza/) upang matutunan kung paano ipasadya ang Eliza. ### Manwal na Pag-simula ng Eliza (Inirerekomenda lamang kung alam mo ang ginagawa mo) @@ -69,7 +69,7 @@ git checkout $(git describe --tags --abbrev=0) [![Buksan sa Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/elizaos/eliza/tree/main) -### I-edit ang .env File +### Ipasadya ang .env File Kopyahin ang `.env.example` sa `.env` at punan ang tamang mga halaga. @@ -85,7 +85,7 @@ Ito ay magse-setup ng proyekto at sisimulan ang bot gamit ang default na karakte sh scripts/start.sh ``` -### I-edit ang Character File +### Ipasadya ang Character File 1. Buksan ang `packages/core/src/defaultCharacter.ts` para baguhin ang default na karakter. 2. Mag-load ng custom na mga karakter: @@ -107,7 +107,7 @@ pnpm clean #### Karagdagang Mga Kinakailangan -Puwede mong kailangang mag-install ng [Sharp](https://sharp.pixelplumbing.com/). Kung may error, subukang i-install ito gamit ang: +Puwede mong kailangang mag-install ng [Sharp](https://sharp.pixelplumbing.com/). Kung may pagkakamali, subukang i-install ito gamit ang: ```bash pnpm install --include=optional sharp From 72592f74eff2a089235c208bb70da48d0ad4ea8e Mon Sep 17 00:00:00 2001 From: Harvey Javier Date: Tue, 24 Dec 2024 10:28:46 +0800 Subject: [PATCH 29/58] Add Tagalog README markdown translation --- README_TG.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/README_TG.md b/README_TG.md index ec2524d41f..052a8af9f7 100644 --- a/README_TG.md +++ b/README_TG.md @@ -22,7 +22,7 @@ - ☁ī¸ Sinusuportahan ang maraming modelo (lokal na Llama, OpenAI, Anthropic, Groq, atbp.) - đŸ“Ļ Madaling gamitin! -## Mga Tutorial sa Video +## Mga Tutorial sa Bidyo [AI Agent Dev School](https://www.youtube.com/watch?v=ArptLpQiKfI&list=PLx5pnFXdPTRzWla0RaOxALTSTnVq53fKL) @@ -31,7 +31,7 @@ - 🤖 [Mga Chatbot](https://en.wikipedia.org/wiki/Chatbot) - đŸ•ĩī¸ Mga Awtonomikong Ahente - 📈 Pagproseso ng Negosyo -- 🎮 [Mga NPC sa mga Laro sa Kompyuter](https://en.wikipedia.org/wiki/Non-player_character) +- 🎮 [Mga NPC sa mga Larong Kompyuter](https://en.wikipedia.org/wiki/Non-player_character) - 🧠 Pangangalakal ## 🚀 Pangkalahatang-ideya @@ -79,7 +79,7 @@ cp .env.example .env ### Awtomatikong Simulan ang Eliza -Ito ay magse-setup ng proyekto at sisimulan ang bot gamit ang default na karakter. +Ito ay magse-setup ng proyekto at sisimulan ang bot gamit ang kusang mapagpipilian na karakter. ```bash sh scripts/start.sh @@ -87,12 +87,12 @@ sh scripts/start.sh ### Ipasadya ang Character File -1. Buksan ang `packages/core/src/defaultCharacter.ts` para baguhin ang default na karakter. -2. Mag-load ng custom na mga karakter: +1. Buksan ang `packages/core/src/defaultCharacter.ts` para baguhin ang kusang mapagpipilian na karakter. +2. Mag-load ng pasadya na mga karakter: - Gamitin ang `pnpm start --characters="landas/sa/inyong/character.json"` - - Puwedeng mag-load ng maraming character file sabay-sabay. + - Puwedeng mag-load ng maraming karakter file sabay-sabay. 3. Ikonekta ang Twitter (X): - - Baguhin ang `"clients": []` sa `"clients": ["twitter"]` sa character file upang ikonekta ang Twitter. + - Baguhin ang `"clients": []` sa `"clients": ["twitter"]` sa karakter file upang ikonekta ang Twitter. ### Manwal na Pag-simula ng Eliza @@ -115,7 +115,7 @@ pnpm install --include=optional sharp ### Komunidad at Kontak -- [GitHub Issues](https://github.com/elizaos/eliza/issues): Para sa mga bug at mungkahi sa tampok. +- [Mga Isyu sa GitHub](https://github.com/elizaos/eliza/issues): Para sa mga bug at mungkahi sa tampok. - [Discord](https://discord.gg/ai16z): Para sa pagbabahagi ng aplikasyon at pakikihalubilo sa komunidad. ## Mga Kontribyutor @@ -126,4 +126,4 @@ pnpm install --include=optional sharp ## Kasaysayan ng mga Bituin -[![Star History Chart](https://api.star-history.com/svg?repos=elizaos/eliza&type=Date)](https://star-history.com/#elizaos/eliza&Date) +[![Tsart ng Kasaysayan ng mga Bituin](https://api.star-history.com/svg?repos=elizaos/eliza&type=Date)](https://star-history.com/#elizaos/eliza&Date) From 681d682edfcac0f8684ec1903735201a81e9b721 Mon Sep 17 00:00:00 2001 From: Harvey Javier Date: Tue, 24 Dec 2024 10:35:38 +0800 Subject: [PATCH 30/58] Improve tagalog translation in --- README_TG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README_TG.md b/README_TG.md index 052a8af9f7..4263ff69ca 100644 --- a/README_TG.md +++ b/README_TG.md @@ -85,7 +85,7 @@ Ito ay magse-setup ng proyekto at sisimulan ang bot gamit ang kusang mapagpipili sh scripts/start.sh ``` -### Ipasadya ang Character File +### Ipasadya ang Karakter File 1. Buksan ang `packages/core/src/defaultCharacter.ts` para baguhin ang kusang mapagpipilian na karakter. 2. Mag-load ng pasadya na mga karakter: From 4a75972ac0681bf15d53721c2f213065a273029d Mon Sep 17 00:00:00 2001 From: Shakker Nerd <165377636+shakkernerd@users.noreply.github.com> Date: Tue, 24 Dec 2024 05:44:07 +0000 Subject: [PATCH 31/58] chore: Update cron schedule to run every Saturday at 8:29 AM --- .github/workflows/codeql.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index adba46853d..b3716b3716 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -6,7 +6,7 @@ on: pull_request: branches: [ "main" ] schedule: - - cron: '29 8 * * 3' + - cron: '29 8 * * 6' jobs: analyze: From 1caa3f392969691ec54e92d66dab5ae0e2c06a07 Mon Sep 17 00:00:00 2001 From: omahs <73983677+omahs@users.noreply.github.com> Date: Tue, 24 Dec 2024 08:17:54 +0100 Subject: [PATCH 32/58] fix typos --- packages/adapter-sqljs/src/types.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/adapter-sqljs/src/types.ts b/packages/adapter-sqljs/src/types.ts index 42dfdf9847..e8b9f13f73 100644 --- a/packages/adapter-sqljs/src/types.ts +++ b/packages/adapter-sqljs/src/types.ts @@ -100,7 +100,7 @@ declare class Statement { getSQL(): string; /** - * Reset a statement, so that it's parameters can be bound to new + * Reset a statement, so that its parameters can be bound to new * values. It also clears all previous bindings, freeing the memory used * by bound parameters. * @see [https://sql.js.org/documentation/Statement.html#["reset"]](https://sql.js.org/documentation/Statement.html#%5B%22reset%22%5D) @@ -115,7 +115,7 @@ declare class Statement { run(values?: BindParams): void; /** - * Execute the statement, fetching the the next line of result, that can + * Execute the statement, fetching the next line of result, that can * be retrieved with `Statement.get`. * @see [https://sql.js.org/documentation/Statement.html#["step"]](https://sql.js.org/documentation/Statement.html#%5B%22step%22%5D) */ From 2e5ef94f999b45357326fc435dd0061c4c1d5ee7 Mon Sep 17 00:00:00 2001 From: omahs <73983677+omahs@users.noreply.github.com> Date: Tue, 24 Dec 2024 08:22:32 +0100 Subject: [PATCH 33/58] fix typo --- packages/adapter-sqljs/src/types.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/adapter-sqljs/src/types.ts b/packages/adapter-sqljs/src/types.ts index e8b9f13f73..f457ecaed2 100644 --- a/packages/adapter-sqljs/src/types.ts +++ b/packages/adapter-sqljs/src/types.ts @@ -169,7 +169,7 @@ export declare class Database { getRowsModified(): number; /** - * Analyze a result code, return null if no error occured, and throw an + * Analyze a result code, return null if no error occurred, and throw an * error with a descriptive message otherwise * @see [https://sql.js.org/documentation/Database.html#["handleError"]](https://sql.js.org/documentation/Database.html#%5B%22handleError%22%5D) */ From 0ee28605f4be6cc7c022d0f383c08c43e7656db3 Mon Sep 17 00:00:00 2001 From: RiceChuan Date: Tue, 24 Dec 2024 15:40:38 +0800 Subject: [PATCH 34/58] docs: 1.Quotation marks are used incorrectly.2.Delete duplicate words Signed-off-by: RiceChuan --- docs/community/Notes/lore.md | 2 +- docs/community/creator-fund.md | 2 +- packages/adapter-sqljs/src/types.ts | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/community/Notes/lore.md b/docs/community/Notes/lore.md index c984915720..00b18ea789 100644 --- a/docs/community/Notes/lore.md +++ b/docs/community/Notes/lore.md @@ -93,7 +93,7 @@ Week 1 Recap: elizaos Launch and Early Developments Hello, I am Shaw. I am a cross-disciplinary programmer and entrepreneur living in San Francisco. I have been working on autonomous agents for several years and I am overjoyed to finally get to show that to all of you. -I started elizaos here on Twitter with some very capable folks, in the open, using the http://daos.fun platform. Our technology is open source, and powering many of the agents you talk to today. We call this type of agent an “eliza”. +I started elizaos here on Twitter with some very capable folks, in the open, using the http://daos.fun platform. Our technology is open source, and powering many of the agents you talk to today. We call this type of agent an "eliza". Our token character agent is @degenspartanai who is a recreation of a legendary friend and poster who quit Twitter last cycle. $degenai is his token. diff --git a/docs/community/creator-fund.md b/docs/community/creator-fund.md index 25bedc39e8..73c0b63308 100644 --- a/docs/community/creator-fund.md +++ b/docs/community/creator-fund.md @@ -18,7 +18,7 @@ Here's when the community learned about who the top holder is: > "So a ton of people have been asking (justifiably) who the heck I am, why do I have 16% of elizaos supply, and what I’m going to do with it. > -> It started by @shawmakesmagic tweeting about some agent he built called @degenspartanai, a recreation of a legend on twitter. I put a bunch of my SOL in there because I had been following Shaw and really thought he was building something great. Almost immediately all of that became close to worthless. Degen’s tweets seemed too “human-like” to be real anyway - so I figured I got scammed. +> It started by @shawmakesmagic tweeting about some agent he built called @degenspartanai, a recreation of a legend on twitter. I put a bunch of my SOL in there because I had been following Shaw and really thought he was building something great. Almost immediately all of that became close to worthless. Degen’s tweets seemed too "human-like" to be real anyway - so I figured I got scammed. > > So I DM’ed shaw, not because I was angry, but I was genuinely curious why he might have scammed me. I ended up sending him a google meet, which turned into an hour long conversation about what he was actually building, and me realizing twitter is usually a misrepresentation of the people you think you know. Shaw is just inspiring. Someone who is completely dedicated to accelerating the world for the better, and not optimizing for optics or money - just building. > diff --git a/packages/adapter-sqljs/src/types.ts b/packages/adapter-sqljs/src/types.ts index 42dfdf9847..4341076759 100644 --- a/packages/adapter-sqljs/src/types.ts +++ b/packages/adapter-sqljs/src/types.ts @@ -115,7 +115,7 @@ declare class Statement { run(values?: BindParams): void; /** - * Execute the statement, fetching the the next line of result, that can + * Execute the statement, fetching the next line of result, that can * be retrieved with `Statement.get`. * @see [https://sql.js.org/documentation/Statement.html#["step"]](https://sql.js.org/documentation/Statement.html#%5B%22step%22%5D) */ From 763315d0342b560b2e1b9511c78432d2dffb3b03 Mon Sep 17 00:00:00 2001 From: tomguluson92 <314913739@qq.com> Date: Tue, 24 Dec 2024 16:56:53 +0800 Subject: [PATCH 35/58] Update index.ts --- packages/client-github/src/index.ts | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/packages/client-github/src/index.ts b/packages/client-github/src/index.ts index b998ea4ee6..e43d194f22 100644 --- a/packages/client-github/src/index.ts +++ b/packages/client-github/src/index.ts @@ -57,10 +57,7 @@ export class GitHubClient { // Clone or pull repository if (!existsSync(this.repoPath)) { - await this.git.clone( - `https://github.com/${this.config.owner}/${this.config.repo}.git`, - this.repoPath - ); + await this.cloneRepository(); } else { const git = simpleGit(this.repoPath); await git.pull(); @@ -73,6 +70,26 @@ export class GitHubClient { } } + private async cloneRepository() { + const repositoryUrl = `https://github.com/${this.config.owner}/${this.config.repo}.git`; + const maxRetries = 3; + let retries = 0; + + while (retries < maxRetries) { + try { + await this.git.clone(repositoryUrl, this.repoPath); + elizaLogger.log(`Successfully cloned repository from ${repositoryUrl}`); + return; + } catch (error) { + elizaLogger.error(`Failed to clone repository from ${repositoryUrl}. Retrying...`); + retries++; + if (retries === maxRetries) { + throw new Error(`Unable to clone repository from ${repositoryUrl} after ${maxRetries} retries.`); + } + } + } + } + async createMemoriesFromFiles() { console.log("Create memories"); const searchPath = this.config.path From 069d6377873e25daf6acdd1bf6dd2e118d3a3003 Mon Sep 17 00:00:00 2001 From: Yinka Erinle Date: Tue, 24 Dec 2024 10:43:51 +0000 Subject: [PATCH 36/58] Update eliza-in-tee.md (fixing typo) --- docs/docs/advanced/eliza-in-tee.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/docs/advanced/eliza-in-tee.md b/docs/docs/advanced/eliza-in-tee.md index a376d1b4f0..f001532f2c 100644 --- a/docs/docs/advanced/eliza-in-tee.md +++ b/docs/docs/advanced/eliza-in-tee.md @@ -23,7 +23,7 @@ The TEE Plugin in the Eliza Framework is built on top of the [Dstack SDK](https: ## Core Components -Eliza's TEE implementation consists of two primary providers that handle secure key managementoperations and remote attestations. +Eliza's TEE implementation consists of two primary providers that handle secure key management operations and remote attestations. These components work together to provide: From fb9faf9b3432905933cb0f72df1865d85829dcba Mon Sep 17 00:00:00 2001 From: 0xJordan Date: Tue, 24 Dec 2024 12:01:19 +0100 Subject: [PATCH 37/58] chore(workflow): update aixion action version from v1.0.1 to v1.0.2 for improved functionality and bug fixes --- .github/workflows/generate-readme-translations.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/generate-readme-translations.yml b/.github/workflows/generate-readme-translations.yml index d31ea6d774..e241c63394 100644 --- a/.github/workflows/generate-readme-translations.yml +++ b/.github/workflows/generate-readme-translations.yml @@ -42,7 +42,7 @@ jobs: echo "content=$content" >> $GITHUB_OUTPUT - name: Translate to ${{ matrix.language.name }} - uses: 0xjord4n/aixion@v1.0.1 + uses: 0xjord4n/aixion@v1.0.2 id: aixion with: config: > From 37ed1064e1ae3b96049a9bc2150ea1a51087f38f Mon Sep 17 00:00:00 2001 From: alessandromazza98 Date: Tue, 24 Dec 2024 12:05:50 +0100 Subject: [PATCH 38/58] improve logging in plugin-coinbase --- .../src/plugins/advancedTrade.ts | 7 ++++ .../plugin-coinbase/src/plugins/commerce.ts | 32 +++++++++++-------- .../src/plugins/massPayments.ts | 30 +++++++++-------- .../src/plugins/tokenContract.ts | 26 +++++++-------- packages/plugin-coinbase/src/plugins/trade.ts | 15 +++++---- .../plugin-coinbase/src/plugins/webhooks.ts | 13 ++++---- 6 files changed, 70 insertions(+), 53 deletions(-) diff --git a/packages/plugin-coinbase/src/plugins/advancedTrade.ts b/packages/plugin-coinbase/src/plugins/advancedTrade.ts index 8b70a76e43..3e26e78ac0 100644 --- a/packages/plugin-coinbase/src/plugins/advancedTrade.ts +++ b/packages/plugin-coinbase/src/plugins/advancedTrade.ts @@ -34,6 +34,7 @@ const tradeCsvFilePath = path.join(baseDir, "advanced_trades.csv"); const tradeProvider: Provider = { get: async (runtime: IAgentRuntime, _message: Memory) => { + elizaLogger.debug("Starting tradeProvider function"); try { const client = new RESTClient( runtime.getSetting("COINBASE_API_KEY") ?? @@ -103,6 +104,7 @@ const tradeProvider: Provider = { }; export async function appendTradeToCsv(tradeResult: any) { + elizaLogger.debug("Starting appendTradeToCsv function"); try { const csvWriter = createArrayCsvWriter({ path: tradeCsvFilePath, @@ -139,6 +141,7 @@ async function hasEnoughBalance( amount: number, side: string ): Promise { + elizaLogger.debug("Starting hasEnoughBalance function"); try { const response = await client.listAccounts({}); const accounts = JSON.parse(response); @@ -216,6 +219,7 @@ export const executeAdvancedTradeAction: Action = { let client: RESTClient; // Initialize client + elizaLogger.debug("Starting advanced trade client initialization"); try { client = new RESTClient( runtime.getSetting("COINBASE_API_KEY") ?? @@ -237,6 +241,7 @@ export const executeAdvancedTradeAction: Action = { // Generate trade details let tradeDetails; + elizaLogger.debug("Starting trade details generation"); try { tradeDetails = await generateObject({ runtime, @@ -276,6 +281,7 @@ export const executeAdvancedTradeAction: Action = { // Configure order let orderConfiguration: OrderConfiguration; + elizaLogger.debug("Starting order configuration"); try { if (orderType === "MARKET") { orderConfiguration = @@ -323,6 +329,7 @@ export const executeAdvancedTradeAction: Action = { // Execute trade let order: CreateOrderResponse; try { + elizaLogger.debug("Executing the trade"); if ( !(await hasEnoughBalance( client, diff --git a/packages/plugin-coinbase/src/plugins/commerce.ts b/packages/plugin-coinbase/src/plugins/commerce.ts index 411aea6015..7dacdc0fcb 100644 --- a/packages/plugin-coinbase/src/plugins/commerce.ts +++ b/packages/plugin-coinbase/src/plugins/commerce.ts @@ -30,6 +30,7 @@ interface ChargeRequest { } export async function createCharge(apiKey: string, params: ChargeRequest) { + elizaLogger.debug("Starting createCharge function"); try { const response = await fetch(url, { method: "POST", @@ -47,13 +48,14 @@ export async function createCharge(apiKey: string, params: ChargeRequest) { const data = await response.json(); return data.data; } catch (error) { - console.error("Error creating charge:", error); + elizaLogger.error("Error creating charge:", error); throw error; } } // Function to fetch all charges export async function getAllCharges(apiKey: string) { + elizaLogger.debug("Starting getAllCharges function"); try { const response = await fetch(url, { method: "GET", @@ -72,13 +74,14 @@ export async function getAllCharges(apiKey: string) { const data = await response.json(); return data.data; } catch (error) { - console.error("Error fetching charges:", error); + elizaLogger.error("Error fetching charges:", error); throw error; } } // Function to fetch details of a specific charge export async function getChargeDetails(apiKey: string, chargeId: string) { + elizaLogger.debug("Starting getChargeDetails function"); const getUrl = `${url}${chargeId}`; try { @@ -99,7 +102,7 @@ export async function getChargeDetails(apiKey: string, chargeId: string) { const data = await response.json(); return data; } catch (error) { - console.error( + elizaLogger.error( `Error fetching charge details for ID ${chargeId}:`, error ); @@ -140,7 +143,7 @@ export const createCoinbaseChargeAction: Action = { _options: any, callback: HandlerCallback ) => { - elizaLogger.log("Composing state for message:", message); + elizaLogger.info("Composing state for message:", message); if (!state) { state = (await runtime.composeState(message)) as State; } else { @@ -172,10 +175,10 @@ export const createCoinbaseChargeAction: Action = { return; } - elizaLogger.log("Charge details received:", chargeDetails); + elizaLogger.info("Charge details received:", chargeDetails); // Initialize Coinbase Commerce client - + elizaLogger.debug("Starting Coinbase Commerce client initialization"); try { // Create a charge const chargeResponse = await createCharge( @@ -191,7 +194,7 @@ export const createCoinbaseChargeAction: Action = { } ); - elizaLogger.log( + elizaLogger.info( "Coinbase Commerce charge created:", chargeResponse ); @@ -333,7 +336,7 @@ export const getAllChargesAction: Action = { callback: HandlerCallback ) => { try { - elizaLogger.log("Composing state for message:", message); + elizaLogger.info("Composing state for message:", message); if (!state) { state = (await runtime.composeState(message)) as State; } else { @@ -343,7 +346,7 @@ export const getAllChargesAction: Action = { runtime.getSetting("COINBASE_COMMERCE_KEY") ); - elizaLogger.log("Fetched all charges:", charges); + elizaLogger.info("Fetched all charges:", charges); callback( { @@ -397,7 +400,7 @@ export const getChargeDetailsAction: Action = { _options: any, callback: HandlerCallback ) => { - elizaLogger.log("Composing state for message:", message); + elizaLogger.info("Composing state for message:", message); if (!state) { state = (await runtime.composeState(message)) as State; } else { @@ -434,7 +437,7 @@ export const getChargeDetailsAction: Action = { charge.id ); - elizaLogger.log("Fetched charge details:", chargeDetails); + elizaLogger.info("Fetched charge details:", chargeDetails); callback( { @@ -486,6 +489,7 @@ export const getChargeDetailsAction: Action = { export const chargeProvider: Provider = { get: async (runtime: IAgentRuntime, _message: Memory) => { + elizaLogger.debug("Starting chargeProvider.get function"); const charges = await getAllCharges( runtime.getSetting("COINBASE_COMMERCE_KEY") ); @@ -504,8 +508,8 @@ export const chargeProvider: Provider = { privateKey: coinbasePrivateKey, }); const { balances, transactions } = await getWalletDetails(runtime); - elizaLogger.log("Current Balances:", balances); - elizaLogger.log("Last Transactions:", transactions); + elizaLogger.info("Current Balances:", balances); + elizaLogger.info("Last Transactions:", transactions); } const formattedCharges = charges.map((charge) => ({ id: charge.id, @@ -513,7 +517,7 @@ export const chargeProvider: Provider = { description: charge.description, pricing: charge.pricing, })); - elizaLogger.log("Charges:", formattedCharges); + elizaLogger.info("Charges:", formattedCharges); return { charges: formattedCharges, balances, transactions }; }, }; diff --git a/packages/plugin-coinbase/src/plugins/massPayments.ts b/packages/plugin-coinbase/src/plugins/massPayments.ts index 6eca084967..70e65d17fc 100644 --- a/packages/plugin-coinbase/src/plugins/massPayments.ts +++ b/packages/plugin-coinbase/src/plugins/massPayments.ts @@ -41,6 +41,7 @@ const csvFilePath = path.join(baseDir, "transactions.csv"); export const massPayoutProvider: Provider = { get: async (runtime: IAgentRuntime, _message: Memory) => { + elizaLogger.debug("Starting massPayoutProvider.get function"); try { Coinbase.configure({ apiKeyName: @@ -50,7 +51,7 @@ export const massPayoutProvider: Provider = { runtime.getSetting("COINBASE_PRIVATE_KEY") ?? process.env.COINBASE_PRIVATE_KEY, }); - elizaLogger.log("Reading CSV file from:", csvFilePath); + elizaLogger.info("Reading CSV file from:", csvFilePath); // Ensure the CSV file exists if (!fs.existsSync(csvFilePath)) { @@ -66,7 +67,7 @@ export const massPayoutProvider: Provider = { ], }); await csvWriter.writeRecords([]); // Create an empty file with headers - elizaLogger.log("New CSV file created with headers."); + elizaLogger.info("New CSV file created with headers."); } // Read and parse the CSV file @@ -78,9 +79,9 @@ export const massPayoutProvider: Provider = { const { balances, transactions } = await getWalletDetails(runtime); - elizaLogger.log("Parsed CSV records:", records); - elizaLogger.log("Current Balances:", balances); - elizaLogger.log("Last Transactions:", transactions); + elizaLogger.info("Parsed CSV records:", records); + elizaLogger.info("Current Balances:", balances); + elizaLogger.info("Last Transactions:", transactions); return { currentTransactions: records.map((record: any) => ({ @@ -107,17 +108,19 @@ async function executeMassPayout( transferAmount: number, assetId: string ): Promise { + elizaLogger.debug("Starting executeMassPayout function"); const transactions: Transaction[] = []; const assetIdLowercase = assetId.toLowerCase(); let sendingWallet: Wallet; try { + elizaLogger.debug("Initializing sending wallet"); sendingWallet = await initializeWallet(runtime, networkId); } catch (error) { elizaLogger.error("Error initializing sending wallet:", error); throw error; } for (const address of receivingAddresses) { - elizaLogger.log("Processing payout for address:", address); + elizaLogger.info("Processing payout for address:", address); if (address) { try { // Check balance before initiating transfer @@ -125,7 +128,7 @@ async function executeMassPayout( const walletBalance = await sendingWallet.getBalance(assetIdLowercase); - elizaLogger.log("Wallet balance for asset:", { + elizaLogger.info("Wallet balance for asset:", { assetId, walletBalance, }); @@ -174,7 +177,7 @@ async function executeMassPayout( }); } } else { - elizaLogger.log("Skipping invalid or empty address."); + elizaLogger.info("Skipping invalid or empty address."); transactions.push({ address: "Invalid or Empty", amount: transferAmount, @@ -188,6 +191,7 @@ async function executeMassPayout( const charityAddress = getCharityAddress(networkId); try { + elizaLogger.debug("Sending 1% to charity:", charityAddress); const charityTransfer = await executeTransfer( sendingWallet, transferAmount * 0.01, @@ -213,7 +217,7 @@ async function executeMassPayout( }); } await appendTransactionsToCsv(transactions); - elizaLogger.log("Finished processing mass payouts."); + elizaLogger.info("Finished processing mass payouts."); return transactions; } @@ -224,7 +228,7 @@ export const sendMassPayoutAction: Action = { description: "Sends mass payouts to a list of receiving addresses using a predefined sending wallet and logs all transactions to a CSV file.", validate: async (runtime: IAgentRuntime, _message: Memory) => { - elizaLogger.log("Validating runtime and message..."); + elizaLogger.info("Validating runtime and message..."); return ( !!( runtime.character.settings.secrets?.COINBASE_API_KEY || @@ -243,7 +247,7 @@ export const sendMassPayoutAction: Action = { _options: any, callback: HandlerCallback ) => { - elizaLogger.log("Starting SEND_MASS_PAYOUT handler..."); + elizaLogger.debug("Starting SEND_MASS_PAYOUT handler..."); try { Coinbase.configure({ apiKeyName: @@ -273,7 +277,7 @@ export const sendMassPayoutAction: Action = { schema: TransferSchema, }); - elizaLogger.log( + elizaLogger.info( "Transfer details generated:", transferDetails.object ); @@ -319,7 +323,7 @@ export const sendMassPayoutAction: Action = { return; } - elizaLogger.log("◎ Starting mass payout..."); + elizaLogger.info("◎ Starting mass payout..."); const transactions = await executeMassPayout( runtime, network, diff --git a/packages/plugin-coinbase/src/plugins/tokenContract.ts b/packages/plugin-coinbase/src/plugins/tokenContract.ts index 5a268f4b1a..861f67ba23 100644 --- a/packages/plugin-coinbase/src/plugins/tokenContract.ts +++ b/packages/plugin-coinbase/src/plugins/tokenContract.ts @@ -58,7 +58,7 @@ export const deployTokenContractAction: Action = { description: "Deploy an ERC20, ERC721, or ERC1155 token contract using the Coinbase SDK", validate: async (runtime: IAgentRuntime, _message: Memory) => { - elizaLogger.log("Validating runtime for DEPLOY_TOKEN_CONTRACT..."); + elizaLogger.info("Validating runtime for DEPLOY_TOKEN_CONTRACT..."); return ( !!( runtime.character.settings.secrets?.COINBASE_API_KEY || @@ -77,7 +77,7 @@ export const deployTokenContractAction: Action = { _options: any, callback: HandlerCallback ) => { - elizaLogger.log("Starting DEPLOY_TOKEN_CONTRACT handler..."); + elizaLogger.debug("Starting DEPLOY_TOKEN_CONTRACT handler..."); try { Coinbase.configure({ @@ -118,7 +118,7 @@ export const deployTokenContractAction: Action = { modelClass: ModelClass.SMALL, schema: TokenContractSchema, }); - elizaLogger.log("Contract details:", contractDetails.object); + elizaLogger.info("Contract details:", contractDetails.object); if (!isTokenContractContent(contractDetails.object)) { callback( @@ -138,7 +138,7 @@ export const deployTokenContractAction: Action = { baseURI, totalSupply, } = contractDetails.object; - elizaLogger.log("Contract details:", contractDetails.object); + elizaLogger.info("Contract details:", contractDetails.object); const wallet = await initializeWallet(runtime, network); let contract: SmartContract; let deploymentDetails; @@ -177,8 +177,8 @@ export const deployTokenContractAction: Action = { // Wait for deployment to complete await contract.wait(); - elizaLogger.log("Deployment details:", deploymentDetails); - elizaLogger.log("Contract deployed successfully:", contract); + elizaLogger.info("Deployment details:", deploymentDetails); + elizaLogger.info("Contract deployed successfully:", contract); // Log deployment to CSV const csvWriter = createArrayCsvWriter({ path: contractsCsvFilePath, @@ -287,7 +287,7 @@ export const invokeContractAction: Action = { description: "Invoke a method on a deployed smart contract using the Coinbase SDK", validate: async (runtime: IAgentRuntime, _message: Memory) => { - elizaLogger.log("Validating runtime for INVOKE_CONTRACT..."); + elizaLogger.info("Validating runtime for INVOKE_CONTRACT..."); return ( !!( runtime.character.settings.secrets?.COINBASE_API_KEY || @@ -306,7 +306,7 @@ export const invokeContractAction: Action = { _options: any, callback: HandlerCallback ) => { - elizaLogger.log("Starting INVOKE_CONTRACT handler..."); + elizaLogger.debug("Starting INVOKE_CONTRACT handler..."); try { Coinbase.configure({ @@ -329,7 +329,7 @@ export const invokeContractAction: Action = { modelClass: ModelClass.LARGE, schema: ContractInvocationSchema, }); - elizaLogger.log("Invocation details:", invocationDetails.object); + elizaLogger.info("Invocation details:", invocationDetails.object); if (!isContractInvocationContent(invocationDetails.object)) { callback( { @@ -362,7 +362,7 @@ export const invokeContractAction: Action = { networkId, assetId, }; - elizaLogger.log("Invocation options:", invocationOptions); + elizaLogger.info("Invocation options:", invocationOptions); // Invoke the contract const invocation = await wallet.invokeContract(invocationOptions); @@ -454,7 +454,7 @@ export const readContractAction: Action = { description: "Read data from a deployed smart contract using the Coinbase SDK", validate: async (runtime: IAgentRuntime, _message: Memory) => { - elizaLogger.log("Validating runtime for READ_CONTRACT..."); + elizaLogger.info("Validating runtime for READ_CONTRACT..."); return ( !!( runtime.character.settings.secrets?.COINBASE_API_KEY || @@ -473,7 +473,7 @@ export const readContractAction: Action = { _options: any, callback: HandlerCallback ) => { - elizaLogger.log("Starting READ_CONTRACT handler..."); + elizaLogger.debug("Starting READ_CONTRACT handler..."); try { Coinbase.configure({ @@ -509,7 +509,7 @@ export const readContractAction: Action = { const { contractAddress, method, args, networkId, abi } = readDetails.object; - elizaLogger.log("Reading contract:", { + elizaLogger.info("Reading contract:", { contractAddress, method, args, diff --git a/packages/plugin-coinbase/src/plugins/trade.ts b/packages/plugin-coinbase/src/plugins/trade.ts index e26a9d20cb..5858d70f1a 100644 --- a/packages/plugin-coinbase/src/plugins/trade.ts +++ b/packages/plugin-coinbase/src/plugins/trade.ts @@ -30,6 +30,7 @@ const tradeCsvFilePath = path.join(baseDir, "trades.csv"); export const tradeProvider: Provider = { get: async (runtime: IAgentRuntime, _message: Memory) => { + elizaLogger.debug("Starting tradeProvider.get function"); try { Coinbase.configure({ apiKeyName: @@ -39,7 +40,7 @@ export const tradeProvider: Provider = { runtime.getSetting("COINBASE_PRIVATE_KEY") ?? process.env.COINBASE_PRIVATE_KEY, }); - elizaLogger.log("Reading CSV file from:", tradeCsvFilePath); + elizaLogger.info("Reading CSV file from:", tradeCsvFilePath); // Check if the file exists; if not, create it with headers if (!fs.existsSync(tradeCsvFilePath)) { @@ -57,7 +58,7 @@ export const tradeProvider: Provider = { ], }); await csvWriter.writeRecords([]); // Create an empty file with headers - elizaLogger.log("New CSV file created with headers."); + elizaLogger.info("New CSV file created with headers."); } // Read and parse the CSV file @@ -67,10 +68,10 @@ export const tradeProvider: Provider = { skip_empty_lines: true, }); - elizaLogger.log("Parsed CSV records:", records); + elizaLogger.info("Parsed CSV records:", records); const { balances, transactions } = await getWalletDetails(runtime); - elizaLogger.log("Current Balances:", balances); - elizaLogger.log("Last Transactions:", transactions); + elizaLogger.info("Current Balances:", balances); + elizaLogger.info("Last Transactions:", transactions); return { currentTrades: records.map((record: any) => ({ network: record["Network"] || undefined, @@ -96,7 +97,7 @@ export const executeTradeAction: Action = { description: "Execute a trade between two assets using the Coinbase SDK and log the result.", validate: async (runtime: IAgentRuntime, _message: Memory) => { - elizaLogger.log("Validating runtime for EXECUTE_TRADE..."); + elizaLogger.info("Validating runtime for EXECUTE_TRADE..."); return ( !!( runtime.character.settings.secrets?.COINBASE_API_KEY || @@ -115,7 +116,7 @@ export const executeTradeAction: Action = { _options: any, callback: HandlerCallback ) => { - elizaLogger.log("Starting EXECUTE_TRADE handler..."); + elizaLogger.debug("Starting EXECUTE_TRADE handler..."); try { Coinbase.configure({ diff --git a/packages/plugin-coinbase/src/plugins/webhooks.ts b/packages/plugin-coinbase/src/plugins/webhooks.ts index 742dca2ccb..62dd40de22 100644 --- a/packages/plugin-coinbase/src/plugins/webhooks.ts +++ b/packages/plugin-coinbase/src/plugins/webhooks.ts @@ -18,6 +18,7 @@ import { appendWebhooksToCsv } from "../utils"; export const webhookProvider: Provider = { get: async (runtime: IAgentRuntime, _message: Memory) => { + elizaLogger.debug("Starting webhookProvider.get function"); try { Coinbase.configure({ apiKeyName: @@ -30,7 +31,7 @@ export const webhookProvider: Provider = { // List all webhooks const resp = await Webhook.list(); - elizaLogger.log("Listing all webhooks:", resp.data); + elizaLogger.info("Listing all webhooks:", resp.data); return { webhooks: resp.data.map((webhook: Webhook) => ({ @@ -53,7 +54,7 @@ export const createWebhookAction: Action = { name: "CREATE_WEBHOOK", description: "Create a new webhook using the Coinbase SDK.", validate: async (runtime: IAgentRuntime, _message: Memory) => { - elizaLogger.log("Validating runtime for CREATE_WEBHOOK..."); + elizaLogger.info("Validating runtime for CREATE_WEBHOOK..."); return ( !!( runtime.character.settings.secrets?.COINBASE_API_KEY || @@ -76,7 +77,7 @@ export const createWebhookAction: Action = { _options: any, callback: HandlerCallback ) => { - elizaLogger.log("Starting CREATE_WEBHOOK handler..."); + elizaLogger.debug("Starting CREATE_WEBHOOK handler..."); try { Coinbase.configure({ @@ -125,7 +126,7 @@ export const createWebhookAction: Action = { ); return; } - elizaLogger.log("Creating webhook with details:", { + elizaLogger.info("Creating webhook with details:", { networkId, notificationUri, eventType, @@ -138,7 +139,7 @@ export const createWebhookAction: Action = { eventType, eventFilters, }); - elizaLogger.log( + elizaLogger.info( "Webhook created successfully:", webhook.toString() ); @@ -149,7 +150,7 @@ export const createWebhookAction: Action = { [] ); await appendWebhooksToCsv([webhook]); - elizaLogger.log("Webhook appended to CSV successfully"); + elizaLogger.info("Webhook appended to CSV successfully"); } catch (error) { elizaLogger.error("Error during webhook creation:", error); callback( From 317eaf91fed661bd3f0b083b14faf5a7b4d85ad3 Mon Sep 17 00:00:00 2001 From: 0xJordan Date: Tue, 24 Dec 2024 12:07:26 +0100 Subject: [PATCH 39/58] chore(generate-readme-translations): escape quotes and special characters in README content to ensure proper formatting during translation process --- .github/workflows/generate-readme-translations.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/generate-readme-translations.yml b/.github/workflows/generate-readme-translations.yml index e241c63394..a0eb8c64f2 100644 --- a/.github/workflows/generate-readme-translations.yml +++ b/.github/workflows/generate-readme-translations.yml @@ -36,9 +36,15 @@ jobs: id: readme run: | content=$(cat README.md) + # Escape quotes first + content="${content//\"/\\\"}" + # Then handle other special characters content="${content//'%'/'%25'}" content="${content//$'\n'/'%0A'}" content="${content//$'\r'/'%0D'}" + # Escape HTML attributes + content="${content//align=\"/align=\\\"}" + content="${content//width=\"/width=\\\"}" echo "content=$content" >> $GITHUB_OUTPUT - name: Translate to ${{ matrix.language.name }} From 2cc9e684b27e97854353991cd15c6d7310b77de9 Mon Sep 17 00:00:00 2001 From: 0xJordan Date: Tue, 24 Dec 2024 12:38:53 +0100 Subject: [PATCH 40/58] fix(workflow): improve translation saving process by escaping special characters to ensure correct file creation --- .github/workflows/generate-readme-translations.yml | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/.github/workflows/generate-readme-translations.yml b/.github/workflows/generate-readme-translations.yml index a0eb8c64f2..3c037e7b56 100644 --- a/.github/workflows/generate-readme-translations.yml +++ b/.github/workflows/generate-readme-translations.yml @@ -72,7 +72,15 @@ jobs: - name: Save translation run: | - mv translated.md README_${{ matrix.language.code }}.md + # Create a temporary variable with the translation + translation='${{ steps.aixion.outputs.text }}' + # Escape any quotes and special characters + translation="${translation//\"/\\\"}" + translation="${translation//'%'/'%25'}" + translation="${translation//$'\n'/'%0A'}" + translation="${translation//$'\r'/'%0D'}" + # Write the escaped content to file + echo "$translation" > README_${{ matrix.language.code }}.md - name: List README translations run: ls README_*.md || echo "No translation files found" From a2e664ec3e09e32003138687bc02401f240327ed Mon Sep 17 00:00:00 2001 From: 0xJordan Date: Tue, 24 Dec 2024 13:38:40 +0100 Subject: [PATCH 41/58] chore(generate-readme-translations): refactor workflow to simplify README translation process and improve artifact handling - Remove unnecessary steps for reading and escaping README content. - Update the action version for translation to v1.2.0 for better performance. - Use content_path to directly reference README.md for translation. - Add step to upload each translated file as an artifact. - Introduce a new commit step to handle all translated README files at once. --- .../generate-readme-translations.yml | 60 +++++++++---------- 1 file changed, 27 insertions(+), 33 deletions(-) diff --git a/.github/workflows/generate-readme-translations.yml b/.github/workflows/generate-readme-translations.yml index 3c037e7b56..9974e84d31 100644 --- a/.github/workflows/generate-readme-translations.yml +++ b/.github/workflows/generate-readme-translations.yml @@ -32,23 +32,8 @@ jobs: ref: main token: ${{ secrets.GH_TOKEN }} - - name: Read README content - id: readme - run: | - content=$(cat README.md) - # Escape quotes first - content="${content//\"/\\\"}" - # Then handle other special characters - content="${content//'%'/'%25'}" - content="${content//$'\n'/'%0A'}" - content="${content//$'\r'/'%0D'}" - # Escape HTML attributes - content="${content//align=\"/align=\\\"}" - content="${content//width=\"/width=\\\"}" - echo "content=$content" >> $GITHUB_OUTPUT - - name: Translate to ${{ matrix.language.name }} - uses: 0xjord4n/aixion@v1.0.2 + uses: 0xjord4n/aixion@v1.2.0 id: aixion with: config: > @@ -64,31 +49,40 @@ jobs: }, { "role": "user", - "content": "${{ steps.readme.outputs.content }}" + "content_path": "README.md" } ], + "save_path": "README_${{ matrix.language.code }}.md", "model": "gpt-4o" } - - name: Save translation - run: | - # Create a temporary variable with the translation - translation='${{ steps.aixion.outputs.text }}' - # Escape any quotes and special characters - translation="${translation//\"/\\\"}" - translation="${translation//'%'/'%25'}" - translation="${translation//$'\n'/'%0A'}" - translation="${translation//$'\r'/'%0D'}" - # Write the escaped content to file - echo "$translation" > README_${{ matrix.language.code }}.md + # Upload each translated file as an artifact + - name: Upload translation + uses: actions/upload-artifact@v4 + with: + name: readme-${{ matrix.language.code }} + path: README_${{ matrix.language.code }}.md + + commit: + needs: translation + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + ref: main + token: ${{ secrets.GH_TOKEN }} - - name: List README translations - run: ls README_*.md || echo "No translation files found" + # Download all translation artifacts + - name: Download all translations + uses: actions/download-artifact@v4 + with: + pattern: readme-* + merge-multiple: true - - name: Commit translations + - name: Commit all translations uses: stefanzweifel/git-auto-commit-action@v5 with: - commit_message: "chore: update ${{ matrix.language.name }} translation" + commit_message: "chore: update all README translations" branch: main - file_pattern: "README_${{ matrix.language.code }}.md" + file_pattern: "README_*.md" commit_author: "GitHub Action " From c1bd95e4819e85d0aa8786149ef334f20dd31246 Mon Sep 17 00:00:00 2001 From: 0xJordan Date: Tue, 24 Dec 2024 13:48:36 +0100 Subject: [PATCH 42/58] chore(workflow): update aixion action version from v1.2.0 to v1.2.1 for improved functionality and bug fixes --- .github/workflows/generate-readme-translations.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/generate-readme-translations.yml b/.github/workflows/generate-readme-translations.yml index 9974e84d31..9963e69354 100644 --- a/.github/workflows/generate-readme-translations.yml +++ b/.github/workflows/generate-readme-translations.yml @@ -33,7 +33,7 @@ jobs: token: ${{ secrets.GH_TOKEN }} - name: Translate to ${{ matrix.language.name }} - uses: 0xjord4n/aixion@v1.2.0 + uses: 0xjord4n/aixion@v1.2.1 id: aixion with: config: > From 710700ca1a234f2ceebd28a8b0d1b58197326aeb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9CnulLeeKH=E2=80=9D?= Date: Tue, 24 Dec 2024 22:28:04 +0900 Subject: [PATCH 43/58] fix: make twitter search feature works --- agent/src/index.ts | 52 +++++++++++++-------------- packages/client-twitter/src/index.ts | 6 +++- packages/client-twitter/src/search.ts | 8 +++-- 3 files changed, 34 insertions(+), 32 deletions(-) diff --git a/agent/src/index.ts b/agent/src/index.ts index d4f0448f63..35820fcf39 100644 --- a/agent/src/index.ts +++ b/agent/src/index.ts @@ -365,12 +365,8 @@ export async function initializeClients( if (clientTypes.includes(Clients.TWITTER)) { const twitterClient = await TwitterClientInterface.start(runtime); - if (twitterClient) { clients.twitter = twitterClient; - (twitterClient as any).enableSearch = !isFalsish( - getSecret(character, "TWITTER_SEARCH_ENABLE") - ); } } @@ -410,30 +406,30 @@ export async function initializeClients( return clients; } -function isFalsish(input: any): boolean { - // If the input is exactly NaN, return true - if (Number.isNaN(input)) { - return true; - } - - // Convert input to a string if it's not null or undefined - const value = input == null ? "" : String(input); - - // List of common falsish string representations - const falsishValues = [ - "false", - "0", - "no", - "n", - "off", - "null", - "undefined", - "", - ]; - - // Check if the value (trimmed and lowercased) is in the falsish list - return falsishValues.includes(value.trim().toLowerCase()); -} +// function isFalsish(input: any): boolean { +// // If the input is exactly NaN, return true +// if (Number.isNaN(input)) { +// return true; +// } +// +// // Convert input to a string if it's not null or undefined +// const value = input == null ? "" : String(input); +// +// // List of common falsish string representations +// const falsishValues = [ +// "false", +// "0", +// "no", +// "n", +// "off", +// "null", +// "undefined", +// "", +// ]; +// +// // Check if the value (trimmed and lowercased) is in the falsish list +// return falsishValues.includes(value.trim().toLowerCase()); +// } function getSecret(character: Character, secret: string) { return character.settings?.secrets?.[secret] || process.env[secret]; diff --git a/packages/client-twitter/src/index.ts b/packages/client-twitter/src/index.ts index b973b84eae..423ea7176e 100644 --- a/packages/client-twitter/src/index.ts +++ b/packages/client-twitter/src/index.ts @@ -37,12 +37,16 @@ export const TwitterClientInterface: Client = { // enableSearch is just set previous to this call // so enableSearch can change over time // and changing it won't stop the SearchClient in the existing instance - const manager = new TwitterManager(runtime, this.enableSearch); + + const manager = new TwitterManager(runtime, runtime.getSetting("TWITTER_SEARCH_ENABLE") === "true"); await manager.client.init(); await manager.post.start(); + if (manager.search) + await manager.search.start(); + await manager.interaction.start(); //await manager.search.start(); // don't run the search by default diff --git a/packages/client-twitter/src/search.ts b/packages/client-twitter/src/search.ts index 0e1662fd74..f1b08777e4 100644 --- a/packages/client-twitter/src/search.ts +++ b/packages/client-twitter/src/search.ts @@ -1,5 +1,5 @@ import { SearchMode } from "agent-twitter-client"; -import { composeContext } from "@ai16z/eliza"; +import {composeContext, elizaLogger} from "@ai16z/eliza"; import { generateMessageResponse, generateText } from "@ai16z/eliza"; import { messageCompletionFooter } from "@ai16z/eliza"; import { @@ -59,10 +59,12 @@ export class TwitterSearchClient { } private engageWithSearchTermsLoop() { - this.engageWithSearchTerms(); + this.engageWithSearchTerms().then(); + const randomMinutes = (Math.floor(Math.random() * (120 - 60 + 1)) + 60); + elizaLogger.log(`Next twitter search scheduled in ${randomMinutes} seconds`); setTimeout( () => this.engageWithSearchTermsLoop(), - (Math.floor(Math.random() * (120 - 60 + 1)) + 60) * 60 * 1000 + randomMinutes * 60 * 1000 ); } From cbd882153d7d36b630412fd8a953156afab0544e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9CnulLeeKH=E2=80=9D?= Date: Tue, 24 Dec 2024 22:41:14 +0900 Subject: [PATCH 44/58] doc: add .idea in .gitignore --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index abc2305272..2c315be472 100644 --- a/.gitignore +++ b/.gitignore @@ -9,6 +9,7 @@ concatenated-output.ts embedding-cache.json packages/plugin-buttplug/intiface-engine +.idea .DS_Store dist/ From b13277f18485f387b61d7c1100400d1139045465 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9CnulLeeKH=E2=80=9D?= Date: Tue, 24 Dec 2024 22:53:34 +0900 Subject: [PATCH 45/58] doc: modify some comments --- agent/src/index.ts | 2 ++ packages/client-twitter/src/index.ts | 4 ---- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/agent/src/index.ts b/agent/src/index.ts index 88f43a4324..bd3281d907 100644 --- a/agent/src/index.ts +++ b/agent/src/index.ts @@ -428,6 +428,8 @@ export async function initializeClients( return clients; } +// no needed for now +// // function isFalsish(input: any): boolean { // // If the input is exactly NaN, return true // if (Number.isNaN(input)) { diff --git a/packages/client-twitter/src/index.ts b/packages/client-twitter/src/index.ts index 9009293457..71850ad788 100644 --- a/packages/client-twitter/src/index.ts +++ b/packages/client-twitter/src/index.ts @@ -34,10 +34,6 @@ export const TwitterClientInterface: Client = { elizaLogger.log("Twitter client started"); - // enableSearch is just set previous to this call - // so enableSearch can change over time - // and changing it won't stop the SearchClient in the existing instance - const manager = new TwitterManager(runtime, runtime.getSetting("TWITTER_SEARCH_ENABLE") === "true"); await manager.client.init(); From 12f364db359f39e573ab39ce58981a14179c04e3 Mon Sep 17 00:00:00 2001 From: fyInALT Date: Tue, 24 Dec 2024 23:49:53 +0800 Subject: [PATCH 46/58] add only to booleanFooter --- packages/core/src/parsing.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/core/src/parsing.ts b/packages/core/src/parsing.ts index cc85352202..fb516989b4 100644 --- a/packages/core/src/parsing.ts +++ b/packages/core/src/parsing.ts @@ -32,7 +32,7 @@ export const parseShouldRespondFromText = ( : null; }; -export const booleanFooter = `Respond with a YES or a NO.`; +export const booleanFooter = `Respond with only a YES or a NO.`; export const parseBooleanFromText = (text: string) => { const match = text.match(/^(YES|NO)$/i); From 86991946d3bd51ca12f211029c3668bf3fa5c497 Mon Sep 17 00:00:00 2001 From: JSon Date: Wed, 25 Dec 2024 00:02:30 +0800 Subject: [PATCH 47/58] feat: plugin-evm added AlienXChain. --- packages/plugin-evm/src/templates/index.ts | 6 +++--- packages/plugin-evm/src/types/index.ts | 1 + 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/packages/plugin-evm/src/templates/index.ts b/packages/plugin-evm/src/templates/index.ts index 68c6be91d7..ef7cac3b89 100644 --- a/packages/plugin-evm/src/templates/index.ts +++ b/packages/plugin-evm/src/templates/index.ts @@ -40,8 +40,8 @@ Respond with a JSON markdown block containing only the extracted values: \`\`\`json { "token": string | null, - "fromChain": "ethereum" | "base" | "sepolia" | "bsc" | "arbitrum" | "avalanche" | "polygon" | "optimism" | "cronos" | "gnosis" | "fantom" | "klaytn" | "celo" | "moonbeam" | "aurora" | "harmonyOne" | "moonriver" | "arbitrumNova" | "mantle" | "linea" | "scroll" | "filecoin" | "taiko" | "zksync" | "canto" | null, - "toChain": "ethereum" | "base" | "sepolia" | "bsc" | "arbitrum" | "avalanche" | "polygon" | "optimism" | "cronos" | "gnosis" | "fantom" | "klaytn" | "celo" | "moonbeam" | "aurora" | "harmonyOne" | "moonriver" | "arbitrumNova" | "mantle" | "linea" | "scroll" | "filecoin" | "taiko" | "zksync" | "canto" | null, + "fromChain": "ethereum" | "base" | "sepolia" | "bsc" | "arbitrum" | "avalanche" | "polygon" | "optimism" | "cronos" | "gnosis" | "fantom" | "klaytn" | "celo" | "moonbeam" | "aurora" | "harmonyOne" | "moonriver" | "arbitrumNova" | "mantle" | "linea" | "scroll" | "filecoin" | "taiko" | "zksync" | "canto" | "alienx" | null, + "toChain": "ethereum" | "base" | "sepolia" | "bsc" | "arbitrum" | "avalanche" | "polygon" | "optimism" | "cronos" | "gnosis" | "fantom" | "klaytn" | "celo" | "moonbeam" | "aurora" | "harmonyOne" | "moonriver" | "arbitrumNova" | "mantle" | "linea" | "scroll" | "filecoin" | "taiko" | "zksync" | "canto" | "alienx" | null, "amount": string | null, "toAddress": string | null } @@ -67,7 +67,7 @@ Respond with a JSON markdown block containing only the extracted values. Use nul "inputToken": string | null, "outputToken": string | null, "amount": string | null, - "chain": "ethereum" | "base" | "sepolia" | "bsc" | "arbitrum" | "avalanche" | "polygon" | "optimism" | "cronos" | "gnosis" | "fantom" | "klaytn" | "celo" | "moonbeam" | "aurora" | "harmonyOne" | "moonriver" | "arbitrumNova" | "mantle" | "linea" | "scroll" | "filecoin" | "taiko" | "zksync" | "canto" | null, + "chain": "ethereum" | "base" | "sepolia" | "bsc" | "arbitrum" | "avalanche" | "polygon" | "optimism" | "cronos" | "gnosis" | "fantom" | "klaytn" | "celo" | "moonbeam" | "aurora" | "harmonyOne" | "moonriver" | "arbitrumNova" | "mantle" | "linea" | "scroll" | "filecoin" | "taiko" | "zksync" | "canto" | "alienx" | null, "slippage": number | null } \`\`\` diff --git a/packages/plugin-evm/src/types/index.ts b/packages/plugin-evm/src/types/index.ts index c2e7c29acd..5d7028f50f 100644 --- a/packages/plugin-evm/src/types/index.ts +++ b/packages/plugin-evm/src/types/index.ts @@ -112,6 +112,7 @@ export interface EvmPluginConfig { taiko?: string; zksync?: string; canto?: string; + alienx?: string; }; secrets?: { EVM_PRIVATE_KEY: string; From 55805ee7c258a48552270a5f34b4954b1ae30460 Mon Sep 17 00:00:00 2001 From: Blair Lee Date: Wed, 25 Dec 2024 02:22:46 +0900 Subject: [PATCH 48/58] fix: use elizaos package --- packages/client-twitter/src/search.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/client-twitter/src/search.ts b/packages/client-twitter/src/search.ts index 2dc90d900d..89c529c38e 100644 --- a/packages/client-twitter/src/search.ts +++ b/packages/client-twitter/src/search.ts @@ -1,7 +1,7 @@ import { SearchMode } from "agent-twitter-client"; -import {composeContext, elizaLogger} from "@ai16z/eliza"; -import { generateMessageResponse, generateText } from "@ai16z/eliza"; -import { messageCompletionFooter } from "@ai16z/eliza"; +import {composeContext, elizaLogger} from "@elizaos/core"; +import { generateMessageResponse, generateText } from "@elizaos/core"; +import { messageCompletionFooter } from "@elizaos/core"; import { Content, HandlerCallback, From 0cf3dafe3387dc84c1607f82a17698624aaa5f03 Mon Sep 17 00:00:00 2001 From: Blair Lee Date: Wed, 25 Dec 2024 02:27:12 +0900 Subject: [PATCH 49/58] mod: replace mistypped log in twitter search log --- packages/client-twitter/src/search.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/client-twitter/src/search.ts b/packages/client-twitter/src/search.ts index 89c529c38e..8934abf72e 100644 --- a/packages/client-twitter/src/search.ts +++ b/packages/client-twitter/src/search.ts @@ -61,7 +61,7 @@ export class TwitterSearchClient { private engageWithSearchTermsLoop() { this.engageWithSearchTerms().then(); const randomMinutes = (Math.floor(Math.random() * (120 - 60 + 1)) + 60); - elizaLogger.log(`Next twitter search scheduled in ${randomMinutes} seconds`); + elizaLogger.log(`Next twitter search scheduled in ${randomMinutes} minutes`); setTimeout( () => this.engageWithSearchTermsLoop(), randomMinutes * 60 * 1000 From 510877303f244f2b0c6afdb8e350f8b0fb4606b0 Mon Sep 17 00:00:00 2001 From: Blair Lee Date: Wed, 25 Dec 2024 03:25:58 +0900 Subject: [PATCH 50/58] rfc: accept pr feedback --- agent/src/index.ts | 27 --------------------------- packages/client-twitter/src/index.ts | 2 +- 2 files changed, 1 insertion(+), 28 deletions(-) diff --git a/agent/src/index.ts b/agent/src/index.ts index 5fd840479d..a818b9f251 100644 --- a/agent/src/index.ts +++ b/agent/src/index.ts @@ -429,33 +429,6 @@ export async function initializeClients( return clients; } -// no needed for now -// -// function isFalsish(input: any): boolean { -// // If the input is exactly NaN, return true -// if (Number.isNaN(input)) { -// return true; -// } -// -// // Convert input to a string if it's not null or undefined -// const value = input == null ? "" : String(input); -// -// // List of common falsish string representations -// const falsishValues = [ -// "false", -// "0", -// "no", -// "n", -// "off", -// "null", -// "undefined", -// "", -// ]; -// -// // Check if the value (trimmed and lowercased) is in the falsish list -// return falsishValues.includes(value.trim().toLowerCase()); -// } - function getSecret(character: Character, secret: string) { return character.settings?.secrets?.[secret] || process.env[secret]; } diff --git a/packages/client-twitter/src/index.ts b/packages/client-twitter/src/index.ts index 71850ad788..3692525a24 100644 --- a/packages/client-twitter/src/index.ts +++ b/packages/client-twitter/src/index.ts @@ -34,7 +34,7 @@ export const TwitterClientInterface: Client = { elizaLogger.log("Twitter client started"); - const manager = new TwitterManager(runtime, runtime.getSetting("TWITTER_SEARCH_ENABLE") === "true"); + const manager = new TwitterManager(runtime, runtime.getSetting("TWITTER_SEARCH_ENABLE").toLowerCase() === "true"); await manager.client.init(); From eca4b1635e97625b00ff5b7ab690ab0806d4187e Mon Sep 17 00:00:00 2001 From: cygaar Date: Wed, 18 Dec 2024 22:49:24 -0500 Subject: [PATCH 51/58] feature: add abstract plugin --- .env.example | 5 + packages/plugin-abstract/package.json | 20 ++ .../plugin-abstract/src/actions/transfer.ts | 213 ++++++++++++++++++ packages/plugin-abstract/src/environment.ts | 32 +++ packages/plugin-abstract/src/index.ts | 13 ++ packages/plugin-abstract/tsconfig.json | 10 + packages/plugin-abstract/tsup.config.ts | 20 ++ pnpm-lock.yaml | 21 ++ 8 files changed, 334 insertions(+) create mode 100644 packages/plugin-abstract/package.json create mode 100644 packages/plugin-abstract/src/actions/transfer.ts create mode 100644 packages/plugin-abstract/src/environment.ts create mode 100644 packages/plugin-abstract/src/index.ts create mode 100644 packages/plugin-abstract/tsconfig.json create mode 100644 packages/plugin-abstract/tsup.config.ts diff --git a/.env.example b/.env.example index b1f05998b7..94b6320fa5 100644 --- a/.env.example +++ b/.env.example @@ -191,6 +191,11 @@ TOGETHER_API_KEY= # Server Configuration SERVER_PORT=3000 +# Abstract Configuration +ABSTRACT_ADDRESS= +ABSTRACT_PRIVATE_KEY= +ABSTRACT_RPC_URL= + # Starknet Configuration STARKNET_ADDRESS= STARKNET_PRIVATE_KEY= diff --git a/packages/plugin-abstract/package.json b/packages/plugin-abstract/package.json new file mode 100644 index 0000000000..724f533be6 --- /dev/null +++ b/packages/plugin-abstract/package.json @@ -0,0 +1,20 @@ +{ + "name": "@ai16z/plugin-abstract", + "version": "0.1.6-alpha.4", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@ai16z/eliza": "workspace:*", + "@ai16z/plugin-trustdb": "workspace:*", + "tsup": "^8.3.5", + "web3": "^4.15.0", + "viem": "2.21.53" + }, + "scripts": { + "build": "tsup --format esm --dts" + }, + "peerDependencies": { + "whatwg-url": "7.1.0" + } +} diff --git a/packages/plugin-abstract/src/actions/transfer.ts b/packages/plugin-abstract/src/actions/transfer.ts new file mode 100644 index 0000000000..0cf855ea35 --- /dev/null +++ b/packages/plugin-abstract/src/actions/transfer.ts @@ -0,0 +1,213 @@ +import { + ActionExample, + Content, + HandlerCallback, + IAgentRuntime, + Memory, + ModelClass, + State, + type Action, + elizaLogger, + composeContext, + generateObject, +} from "@ai16z/eliza"; +import { validateAbstractConfig } from "../environment"; + +import { Address, createWalletClient, http, parseEther } from "viem"; +import { abstractTestnet } from "viem/chains"; +import { privateKeyToAccount } from "viem/accounts"; +import { eip712WalletActions } from "viem/zksync"; + +export interface TransferContent extends Content { + tokenAddress: string; + recipient: string; + amount: string | number; +} + +export function isTransferContent( + content: TransferContent +): content is TransferContent { + // Validate types + const validTypes = + typeof content.tokenAddress === "string" && + typeof content.recipient === "string" && + (typeof content.amount === "string" || + typeof content.amount === "number"); + if (!validTypes) { + return false; + } + + // Validate addresses + const validAddresses = + content.tokenAddress.startsWith("0x") && + content.tokenAddress.length === 42 && + content.recipient.startsWith("0x") && + content.recipient.length === 42; + + return validAddresses; +} + +const transferTemplate = `Respond with a JSON markdown block containing only the extracted values. Use null for any values that cannot be determined. + +Here are several frequently used addresses. Use these for the corresponding tokens: +- ETH/eth: 0x000000000000000000000000000000000000800A +- USDC/usdc: 0xe4c7fbb0a626ed208021ccaba6be1566905e2dfc + +Example response: +\`\`\`json +{ + "tokenAddress": "0x5A7d6b2F92C77FAD6CCaBd7EE0624E64907Eaf3E", + "recipient": "0xCCa8009f5e09F8C5dB63cb0031052F9CB635Af62", + "amount": "1000" +} +\`\`\` + +{{recentMessages}} + +Given the recent messages, extract the following information about the requested token transfer: +- Token contract address +- Recipient wallet address +- Amount to transfer + +Respond with a JSON markdown block containing only the extracted values.`; + +export default { + name: "SEND_TOKEN", + similes: [ + "TRANSFER_TOKEN_ON_ABSTRACT", + "TRANSFER_TOKENS_ON_ABSTRACT", + "SEND_TOKENS_ON_ABSTRACT", + "SEND_ETH_ON_ABSTRACT", + "PAY_ON_ABSTRACT", + "MOVE_TOKENS_ON_ABSTRACT", + "MOVE_ETH_ON_ABSTRACT", + ], + validate: async (runtime: IAgentRuntime, message: Memory) => { + await validateAbstractConfig(runtime); + return true; + }, + description: "Transfer tokens from the agent's wallet to another address", + handler: async ( + runtime: IAgentRuntime, + message: Memory, + state: State, + _options: { [key: string]: unknown }, + callback?: HandlerCallback + ): Promise => { + elizaLogger.log("Starting SEND_TOKEN handler..."); + + // Initialize or update state + if (!state) { + state = (await runtime.composeState(message)) as State; + } else { + state = await runtime.updateRecentMessageState(state); + } + + // Compose transfer context + const transferContext = composeContext({ + state, + template: transferTemplate, + }); + + // Generate transfer content + const content = (await generateObject({ + runtime, + context: transferContext, + modelClass: ModelClass.SMALL, + })) as unknown as TransferContent; + + // Validate transfer content + if (!isTransferContent(content)) { + console.error("Invalid content for TRANSFER_TOKEN action."); + if (callback) { + callback({ + text: "Unable to process transfer request. Invalid content provided.", + content: { error: "Invalid transfer content" }, + }); + } + return false; + } + + try { + const PRIVATE_KEY = runtime.getSetting("ABSTRACT_PRIVATE_KEY")!; + const account = privateKeyToAccount(`0x${PRIVATE_KEY}`); + + const walletClient = createWalletClient({ + chain: abstractTestnet, + transport: http(), + }).extend(eip712WalletActions()); + + const hash = await walletClient.sendTransaction({ + account: account, + chain: abstractTestnet, + to: content.recipient as Address, + value: parseEther(content.amount.toString()), + kzg: undefined, + }); + + elizaLogger.success("Transfer completed successfully! tx: " + hash); + if (callback) { + callback({ + text: "Transfer completed successfully! tx: " + hash, + content: {}, + }); + } + + return true; + } catch (error) { + elizaLogger.error("Error during token transfer:", error); + if (callback) { + callback({ + text: `Error transferring tokens: ${error.message}`, + content: { error: error.message }, + }); + } + return false; + } + }, + + examples: [ + [ + { + user: "{{user1}}", + content: { + text: "Send 100 USDC to 0xCCa8009f5e09F8C5dB63cb0031052F9CB635Af62", + }, + }, + { + user: "{{agent}}", + content: { + text: "Sure, I'll send 100 USDC to that address now.", + action: "SEND_TOKEN", + }, + }, + { + user: "{{agent}}", + content: { + text: "Successfully sent 100 USDC to 0xCCa8009f5e09F8C5dB63cb0031052F9CB635Af62\nTransaction: 0x4fed598033f0added272c3ddefd4d83a521634a738474400b27378db462a76ec", + }, + }, + ], + [ + { + user: "{{user1}}", + content: { + text: "Please send 0.1 ETH to 0xbD8679cf79137042214fA4239b02F4022208EE82", + }, + }, + { + user: "{{agent}}", + content: { + text: "Of course. Sending 0.1 ETH to that address now.", + action: "SEND_TOKEN", + }, + }, + { + user: "{{agent}}", + content: { + text: "Successfully sent 0.1 ETH to 0xbD8679cf79137042214fA4239b02F4022208EE82\nTransaction: 0x0b9f23e69ea91ba98926744472717960cc7018d35bc3165bdba6ae41670da0f0", + }, + }, + ], + ] as ActionExample[][], +} as Action; diff --git a/packages/plugin-abstract/src/environment.ts b/packages/plugin-abstract/src/environment.ts new file mode 100644 index 0000000000..2e0d042b7a --- /dev/null +++ b/packages/plugin-abstract/src/environment.ts @@ -0,0 +1,32 @@ +import { IAgentRuntime } from "@ai16z/eliza"; +import { z } from "zod"; + +export const abstractEnvSchema = z.object({ + ABSTRACT_ADDRESS: z.string().min(1, "Abstract address is required"), + ABSTRACT_PRIVATE_KEY: z.string().min(1, "Abstract private key is required"), +}); + +export type AbstractConfig = z.infer; + +export async function validateAbstractConfig( + runtime: IAgentRuntime +): Promise { + try { + const config = { + ABSTRACT_ADDRESS: runtime.getSetting("ABSTRACT_ADDRESS"), + ABSTRACT_PRIVATE_KEY: runtime.getSetting("ABSTRACT_PRIVATE_KEY"), + }; + + return abstractEnvSchema.parse(config); + } catch (error) { + if (error instanceof z.ZodError) { + const errorMessages = error.errors + .map((err) => `${err.path.join(".")}: ${err.message}`) + .join("\n"); + throw new Error( + `Abstract configuration validation failed:\n${errorMessages}` + ); + } + throw error; + } +} diff --git a/packages/plugin-abstract/src/index.ts b/packages/plugin-abstract/src/index.ts new file mode 100644 index 0000000000..0adb0ad4f3 --- /dev/null +++ b/packages/plugin-abstract/src/index.ts @@ -0,0 +1,13 @@ +import { Plugin } from "@ai16z/eliza"; + +import transfer from "./actions/transfer.ts"; + +export const abstractPlugin: Plugin = { + name: "abstract", + description: "Abstract Plugin for Eliza", + actions: [transfer], + evaluators: [], + providers: [], +}; + +export default abstractPlugin; diff --git a/packages/plugin-abstract/tsconfig.json b/packages/plugin-abstract/tsconfig.json new file mode 100644 index 0000000000..73993deaaf --- /dev/null +++ b/packages/plugin-abstract/tsconfig.json @@ -0,0 +1,10 @@ +{ + "extends": "../core/tsconfig.json", + "compilerOptions": { + "outDir": "dist", + "rootDir": "src" + }, + "include": [ + "src/**/*.ts" + ] +} \ No newline at end of file diff --git a/packages/plugin-abstract/tsup.config.ts b/packages/plugin-abstract/tsup.config.ts new file mode 100644 index 0000000000..e42bf4efea --- /dev/null +++ b/packages/plugin-abstract/tsup.config.ts @@ -0,0 +1,20 @@ +import { defineConfig } from "tsup"; + +export default defineConfig({ + entry: ["src/index.ts"], + outDir: "dist", + sourcemap: true, + clean: true, + format: ["esm"], // Ensure you're targeting CommonJS + external: [ + "dotenv", // Externalize dotenv to prevent bundling + "fs", // Externalize fs to use Node.js built-in module + "path", // Externalize other built-ins if necessary + "@reflink/reflink", + "@node-llama-cpp", + "https", + "http", + "agentkeepalive", + // Add other modules you want to externalize + ], +}); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 6f0e904aa4..b5f51b613b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -941,6 +941,27 @@ importers: specifier: 8.3.5 version: 8.3.5(@swc/core@1.10.1(@swc/helpers@0.5.15))(jiti@2.4.2)(postcss@8.4.49)(typescript@5.6.3)(yaml@2.6.1) + packages/plugin-abstract: + dependencies: + '@ai16z/eliza': + specifier: workspace:* + version: link:../core + '@ai16z/plugin-trustdb': + specifier: workspace:* + version: link:../plugin-trustdb + tsup: + specifier: ^8.3.5 + version: 8.3.5(@swc/core@1.10.1(@swc/helpers@0.5.15))(jiti@2.4.1)(postcss@8.4.49)(typescript@5.6.3)(yaml@2.6.1) + web3: + specifier: ^4.15.0 + version: 4.16.0(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8) + web3-plugin-zksync: + specifier: ^1.0.8 + version: 1.0.8(bufferutil@4.0.8)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.6.3))(typescript@5.6.3)(utf-8-validate@5.0.10)(web3@4.16.0(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8)) + whatwg-url: + specifier: 7.1.0 + version: 7.1.0 + packages/plugin-aptos: dependencies: '@elizaos/core': From cb363211d140abd02db63f4fe44a631370b48f6d Mon Sep 17 00:00:00 2001 From: cygaar Date: Wed, 18 Dec 2024 23:01:35 -0500 Subject: [PATCH 52/58] update pnpm lockfile --- pnpm-lock.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b5f51b613b..37237c53d6 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -952,12 +952,12 @@ importers: tsup: specifier: ^8.3.5 version: 8.3.5(@swc/core@1.10.1(@swc/helpers@0.5.15))(jiti@2.4.1)(postcss@8.4.49)(typescript@5.6.3)(yaml@2.6.1) + viem: + specifier: 2.21.53 + version: 2.21.53(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8) web3: specifier: ^4.15.0 version: 4.16.0(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8) - web3-plugin-zksync: - specifier: ^1.0.8 - version: 1.0.8(bufferutil@4.0.8)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.6.3))(typescript@5.6.3)(utf-8-validate@5.0.10)(web3@4.16.0(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8)) whatwg-url: specifier: 7.1.0 version: 7.1.0 From 816048fb588ea8106e6cbc7659bedcac11c8aa8f Mon Sep 17 00:00:00 2001 From: cygaar Date: Tue, 24 Dec 2024 14:58:12 -0500 Subject: [PATCH 53/58] Rebase --- agent/src/index.ts | 4 ++ packages/plugin-abstract/package.json | 7 ++- .../plugin-abstract/src/actions/transfer.ts | 2 +- packages/plugin-abstract/src/environment.ts | 2 +- packages/plugin-abstract/src/index.ts | 2 +- packages/plugin-evm/src/templates/index.ts | 6 +-- packages/plugin-evm/src/types/index.ts | 5 +- pnpm-lock.yaml | 49 +++++++++---------- 8 files changed, 40 insertions(+), 37 deletions(-) diff --git a/agent/src/index.ts b/agent/src/index.ts index 264801743e..95f610543c 100644 --- a/agent/src/index.ts +++ b/agent/src/index.ts @@ -55,6 +55,7 @@ import { suiPlugin } from "@elizaos/plugin-sui"; import { TEEMode, teePlugin } from "@elizaos/plugin-tee"; import { tonPlugin } from "@elizaos/plugin-ton"; import { zksyncEraPlugin } from "@elizaos/plugin-zksync-era"; +import { abstractPlugin } from "@elizaos/plugin-abstract"; import Database from "better-sqlite3"; import fs from "fs"; import path from "path"; @@ -562,6 +563,9 @@ export async function createAgent( ? webhookPlugin : null, getSecret(character, "EVM_PROVIDER_URL") ? goatPlugin : null, + getSecret(character, "ABSTRACT_PRIVATE_KEY") + ? abstractPlugin + : null, getSecret(character, "FLOW_ADDRESS") && getSecret(character, "FLOW_PRIVATE_KEY") ? flowPlugin diff --git a/packages/plugin-abstract/package.json b/packages/plugin-abstract/package.json index 724f533be6..a35eeb128c 100644 --- a/packages/plugin-abstract/package.json +++ b/packages/plugin-abstract/package.json @@ -1,12 +1,11 @@ { - "name": "@ai16z/plugin-abstract", - "version": "0.1.6-alpha.4", + "name": "@elizaos/plugin-abstract", + "version": "0.1.7-alpha.1", "main": "dist/index.js", "type": "module", "types": "dist/index.d.ts", "dependencies": { - "@ai16z/eliza": "workspace:*", - "@ai16z/plugin-trustdb": "workspace:*", + "@elizaos/core": "workspace:*", "tsup": "^8.3.5", "web3": "^4.15.0", "viem": "2.21.53" diff --git a/packages/plugin-abstract/src/actions/transfer.ts b/packages/plugin-abstract/src/actions/transfer.ts index 0cf855ea35..4e58507637 100644 --- a/packages/plugin-abstract/src/actions/transfer.ts +++ b/packages/plugin-abstract/src/actions/transfer.ts @@ -10,7 +10,7 @@ import { elizaLogger, composeContext, generateObject, -} from "@ai16z/eliza"; +} from "@elizaos/core"; import { validateAbstractConfig } from "../environment"; import { Address, createWalletClient, http, parseEther } from "viem"; diff --git a/packages/plugin-abstract/src/environment.ts b/packages/plugin-abstract/src/environment.ts index 2e0d042b7a..e7801fc409 100644 --- a/packages/plugin-abstract/src/environment.ts +++ b/packages/plugin-abstract/src/environment.ts @@ -1,4 +1,4 @@ -import { IAgentRuntime } from "@ai16z/eliza"; +import { IAgentRuntime } from "@elizaos/core"; import { z } from "zod"; export const abstractEnvSchema = z.object({ diff --git a/packages/plugin-abstract/src/index.ts b/packages/plugin-abstract/src/index.ts index 0adb0ad4f3..4fc47c9470 100644 --- a/packages/plugin-abstract/src/index.ts +++ b/packages/plugin-abstract/src/index.ts @@ -1,4 +1,4 @@ -import { Plugin } from "@ai16z/eliza"; +import { Plugin } from "@elizaos/core"; import transfer from "./actions/transfer.ts"; diff --git a/packages/plugin-evm/src/templates/index.ts b/packages/plugin-evm/src/templates/index.ts index ef7cac3b89..d4dea3f9d2 100644 --- a/packages/plugin-evm/src/templates/index.ts +++ b/packages/plugin-evm/src/templates/index.ts @@ -40,8 +40,8 @@ Respond with a JSON markdown block containing only the extracted values: \`\`\`json { "token": string | null, - "fromChain": "ethereum" | "base" | "sepolia" | "bsc" | "arbitrum" | "avalanche" | "polygon" | "optimism" | "cronos" | "gnosis" | "fantom" | "klaytn" | "celo" | "moonbeam" | "aurora" | "harmonyOne" | "moonriver" | "arbitrumNova" | "mantle" | "linea" | "scroll" | "filecoin" | "taiko" | "zksync" | "canto" | "alienx" | null, - "toChain": "ethereum" | "base" | "sepolia" | "bsc" | "arbitrum" | "avalanche" | "polygon" | "optimism" | "cronos" | "gnosis" | "fantom" | "klaytn" | "celo" | "moonbeam" | "aurora" | "harmonyOne" | "moonriver" | "arbitrumNova" | "mantle" | "linea" | "scroll" | "filecoin" | "taiko" | "zksync" | "canto" | "alienx" | null, + "fromChain": "ethereum" | "abstract" | "base" | "sepolia" | "bsc" | "arbitrum" | "avalanche" | "polygon" | "optimism" | "cronos" | "gnosis" | "fantom" | "klaytn" | "celo" | "moonbeam" | "aurora" | "harmonyOne" | "moonriver" | "arbitrumNova" | "mantle" | "linea" | "scroll" | "filecoin" | "taiko" | "zksync" | "canto" | "alienx" | null, + "toChain": "ethereum" | "abstract" | "base" | "sepolia" | "bsc" | "arbitrum" | "avalanche" | "polygon" | "optimism" | "cronos" | "gnosis" | "fantom" | "klaytn" | "celo" | "moonbeam" | "aurora" | "harmonyOne" | "moonriver" | "arbitrumNova" | "mantle" | "linea" | "scroll" | "filecoin" | "taiko" | "zksync" | "canto" | "alienx" | null, "amount": string | null, "toAddress": string | null } @@ -67,7 +67,7 @@ Respond with a JSON markdown block containing only the extracted values. Use nul "inputToken": string | null, "outputToken": string | null, "amount": string | null, - "chain": "ethereum" | "base" | "sepolia" | "bsc" | "arbitrum" | "avalanche" | "polygon" | "optimism" | "cronos" | "gnosis" | "fantom" | "klaytn" | "celo" | "moonbeam" | "aurora" | "harmonyOne" | "moonriver" | "arbitrumNova" | "mantle" | "linea" | "scroll" | "filecoin" | "taiko" | "zksync" | "canto" | "alienx" | null, + "chain": "ethereum" | "abstract" | "base" | "sepolia" | "bsc" | "arbitrum" | "avalanche" | "polygon" | "optimism" | "cronos" | "gnosis" | "fantom" | "klaytn" | "celo" | "moonbeam" | "aurora" | "harmonyOne" | "moonriver" | "arbitrumNova" | "mantle" | "linea" | "scroll" | "filecoin" | "taiko" | "zksync" | "canto" | "alienx" | null, "slippage": number | null } \`\`\` diff --git a/packages/plugin-evm/src/types/index.ts b/packages/plugin-evm/src/types/index.ts index 5d7028f50f..5db8d941f8 100644 --- a/packages/plugin-evm/src/types/index.ts +++ b/packages/plugin-evm/src/types/index.ts @@ -10,7 +10,9 @@ import type { } from "viem"; import * as viemChains from "viem/chains"; -const _SupportedChainList = Object.keys(viemChains) as Array; +const _SupportedChainList = Object.keys(viemChains) as Array< + keyof typeof viemChains +>; export type SupportedChain = (typeof _SupportedChainList)[number]; // Transaction types @@ -88,6 +90,7 @@ export interface BridgeParams { export interface EvmPluginConfig { rpcUrl?: { ethereum?: string; + abstract?: string; base?: string; sepolia?: string; bsc?: string; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 37237c53d6..0d506a566a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -541,12 +541,6 @@ importers: packages/client-discord: dependencies: - '@elizaos/core': - specifier: workspace:* - version: link:../core - '@elizaos/plugin-node': - specifier: workspace:* - version: link:../plugin-node '@discordjs/opus': specifier: github:discordjs/opus version: https://codeload.github.com/discordjs/opus/tar.gz/31da49d8d2cc6c5a2ab1bfd332033ff7d5f9fb02(encoding@0.1.13) @@ -556,6 +550,12 @@ importers: '@discordjs/voice': specifier: 0.17.0 version: 0.17.0(@discordjs/opus@https://codeload.github.com/discordjs/opus/tar.gz/31da49d8d2cc6c5a2ab1bfd332033ff7d5f9fb02(encoding@0.1.13))(bufferutil@4.0.8)(ffmpeg-static@5.2.0)(utf-8-validate@5.0.10) + '@elizaos/core': + specifier: workspace:* + version: link:../core + '@elizaos/plugin-node': + specifier: workspace:* + version: link:../plugin-node discord.js: specifier: 14.16.3 version: 14.16.3(bufferutil@4.0.8)(utf-8-validate@5.0.10) @@ -943,15 +943,12 @@ importers: packages/plugin-abstract: dependencies: - '@ai16z/eliza': + '@elizaos/core': specifier: workspace:* version: link:../core - '@ai16z/plugin-trustdb': - specifier: workspace:* - version: link:../plugin-trustdb tsup: specifier: ^8.3.5 - version: 8.3.5(@swc/core@1.10.1(@swc/helpers@0.5.15))(jiti@2.4.1)(postcss@8.4.49)(typescript@5.6.3)(yaml@2.6.1) + version: 8.3.5(@swc/core@1.10.1(@swc/helpers@0.5.15))(jiti@2.4.2)(postcss@8.4.49)(typescript@5.6.3)(yaml@2.6.1) viem: specifier: 2.21.53 version: 2.21.53(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8) @@ -964,12 +961,12 @@ importers: packages/plugin-aptos: dependencies: - '@elizaos/core': - specifier: workspace:* - version: link:../core '@aptos-labs/ts-sdk': specifier: ^1.26.0 version: 1.33.1 + '@elizaos/core': + specifier: workspace:* + version: link:../core bignumber: specifier: 1.1.0 version: 1.1.0 @@ -1155,9 +1152,6 @@ importers: packages/plugin-icp: dependencies: - '@elizaos/core': - specifier: workspace:* - version: link:../core '@dfinity/agent': specifier: 2.1.3 version: 2.1.3(@dfinity/candid@2.1.3(@dfinity/principal@2.1.3))(@dfinity/principal@2.1.3) @@ -1170,6 +1164,9 @@ importers: '@dfinity/principal': specifier: 2.1.3 version: 2.1.3 + '@elizaos/core': + specifier: workspace:* + version: link:../core devDependencies: '@types/jest': specifier: 29.5.14 @@ -1318,9 +1315,6 @@ importers: packages/plugin-node: dependencies: - '@elizaos/core': - specifier: workspace:* - version: link:../core '@aws-sdk/client-s3': specifier: ^3.705.0 version: 3.713.0 @@ -1339,6 +1333,9 @@ importers: '@echogarden/speex-resampler-wasm': specifier: 0.2.1 version: 0.2.1 + '@elizaos/core': + specifier: workspace:* + version: link:../core '@huggingface/transformers': specifier: 3.0.2 version: 3.0.2 @@ -1496,6 +1493,9 @@ importers: packages/plugin-solana: dependencies: + '@coral-xyz/anchor': + specifier: 0.30.1 + version: 0.30.1(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10) '@elizaos/core': specifier: workspace:* version: link:../core @@ -1505,9 +1505,6 @@ importers: '@elizaos/plugin-trustdb': specifier: workspace:* version: link:../plugin-trustdb - '@coral-xyz/anchor': - specifier: 0.30.1 - version: 0.30.1(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10) '@solana/spl-token': specifier: 0.4.9 version: 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.8)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) @@ -1547,15 +1544,15 @@ importers: packages/plugin-starknet: dependencies: + '@avnu/avnu-sdk': + specifier: 2.1.1 + version: 2.1.1(ethers@6.13.4(bufferutil@4.0.8)(utf-8-validate@5.0.10))(qs@6.13.1)(starknet@6.18.0(encoding@0.1.13)) '@elizaos/core': specifier: workspace:* version: link:../core '@elizaos/plugin-trustdb': specifier: workspace:* version: link:../plugin-trustdb - '@avnu/avnu-sdk': - specifier: 2.1.1 - version: 2.1.1(ethers@6.13.4(bufferutil@4.0.8)(utf-8-validate@5.0.10))(qs@6.13.1)(starknet@6.18.0(encoding@0.1.13)) '@uniswap/sdk-core': specifier: 6.0.0 version: 6.0.0 From f22ea3c8e83dbf7b6f835440c75b22a8472bf7f5 Mon Sep 17 00:00:00 2001 From: cygaar Date: Tue, 24 Dec 2024 15:09:11 -0500 Subject: [PATCH 54/58] Get builds working --- agent/package.json | 1 + pnpm-lock.yaml | 3 +++ 2 files changed, 4 insertions(+) diff --git a/agent/package.json b/agent/package.json index dc9347bbe9..be8a3e0e29 100644 --- a/agent/package.json +++ b/agent/package.json @@ -30,6 +30,7 @@ "@elizaos/client-slack": "workspace:*", "@elizaos/core": "workspace:*", "@elizaos/plugin-0g": "workspace:*", + "@elizaos/plugin-abstract": "workspace:*", "@elizaos/plugin-aptos": "workspace:*", "@elizaos/plugin-bootstrap": "workspace:*", "@elizaos/plugin-intiface": "workspace:*", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 0d506a566a..3e979dca71 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -138,6 +138,9 @@ importers: '@elizaos/plugin-0g': specifier: workspace:* version: link:../packages/plugin-0g + '@elizaos/plugin-abstract': + specifier: workspace:* + version: link:../packages/plugin-abstract '@elizaos/plugin-aptos': specifier: workspace:* version: link:../packages/plugin-aptos From 25ce978965505012da10861e2a825c993d8fa251 Mon Sep 17 00:00:00 2001 From: cygaar Date: Tue, 24 Dec 2024 16:26:03 -0500 Subject: [PATCH 55/58] Get eth transfers working --- .../plugin-abstract/src/actions/transfer.ts | 30 ++++++++++++++----- 1 file changed, 22 insertions(+), 8 deletions(-) diff --git a/packages/plugin-abstract/src/actions/transfer.ts b/packages/plugin-abstract/src/actions/transfer.ts index 4e58507637..bf877bbed4 100644 --- a/packages/plugin-abstract/src/actions/transfer.ts +++ b/packages/plugin-abstract/src/actions/transfer.ts @@ -17,6 +17,13 @@ import { Address, createWalletClient, http, parseEther } from "viem"; import { abstractTestnet } from "viem/chains"; import { privateKeyToAccount } from "viem/accounts"; import { eip712WalletActions } from "viem/zksync"; +import { z } from "zod"; + +const TransferSchema = z.object({ + tokenAddress: z.string(), + recipient: z.string(), + amount: z.string(), +}); export interface TransferContent extends Content { tokenAddress: string; @@ -94,7 +101,7 @@ export default { _options: { [key: string]: unknown }, callback?: HandlerCallback ): Promise => { - elizaLogger.log("Starting SEND_TOKEN handler..."); + elizaLogger.log("Starting Abstract SEND_TOKEN handler..."); // Initialize or update state if (!state) { @@ -110,11 +117,14 @@ export default { }); // Generate transfer content - const content = (await generateObject({ - runtime, - context: transferContext, - modelClass: ModelClass.SMALL, - })) as unknown as TransferContent; + const content = ( + await generateObject({ + runtime, + context: transferContext, + modelClass: ModelClass.SMALL, + schema: TransferSchema, + }) + ).object as unknown as TransferContent; // Validate transfer content if (!isTransferContent(content)) { @@ -145,10 +155,14 @@ export default { kzg: undefined, }); - elizaLogger.success("Transfer completed successfully! tx: " + hash); + elizaLogger.success( + "Transfer completed successfully! Transaction hash: " + hash + ); if (callback) { callback({ - text: "Transfer completed successfully! tx: " + hash, + text: + "Transfer completed successfully! Transaction hash: " + + hash, content: {}, }); } From 009868fa55b6ed95dedcde8e19f3406c2bd4f81f Mon Sep 17 00:00:00 2001 From: cygaar Date: Tue, 24 Dec 2024 16:47:15 -0500 Subject: [PATCH 56/58] Add erc20 support --- .../plugin-abstract/src/actions/transfer.ts | 46 +++++++++++++++---- 1 file changed, 38 insertions(+), 8 deletions(-) diff --git a/packages/plugin-abstract/src/actions/transfer.ts b/packages/plugin-abstract/src/actions/transfer.ts index bf877bbed4..24725815e7 100644 --- a/packages/plugin-abstract/src/actions/transfer.ts +++ b/packages/plugin-abstract/src/actions/transfer.ts @@ -13,7 +13,7 @@ import { } from "@elizaos/core"; import { validateAbstractConfig } from "../environment"; -import { Address, createWalletClient, http, parseEther } from "viem"; +import { Address, createWalletClient, erc20Abi, http, parseEther } from "viem"; import { abstractTestnet } from "viem/chains"; import { privateKeyToAccount } from "viem/accounts"; import { eip712WalletActions } from "viem/zksync"; @@ -78,6 +78,14 @@ Given the recent messages, extract the following information about the requested Respond with a JSON markdown block containing only the extracted values.`; +const ETH_ADDRESS = "0x000000000000000000000000000000000000800A"; +const ERC20_OVERRIDE_INFO = { + "0xe4c7fbb0a626ed208021ccaba6be1566905e2dfc": { + name: "USDC", + decimals: 6, + }, +}; + export default { name: "SEND_TOKEN", similes: [ @@ -147,13 +155,35 @@ export default { transport: http(), }).extend(eip712WalletActions()); - const hash = await walletClient.sendTransaction({ - account: account, - chain: abstractTestnet, - to: content.recipient as Address, - value: parseEther(content.amount.toString()), - kzg: undefined, - }); + let hash; + if ( + content.tokenAddress.toLowerCase() !== ETH_ADDRESS.toLowerCase() + ) { + // Convert amount to proper token decimals + const tokenInfo = + ERC20_OVERRIDE_INFO[content.tokenAddress.toLowerCase()]; + const decimals = tokenInfo?.decimals ?? 18; // Default to 18 decimals if not specified + const tokenAmount = + BigInt(content.amount) * BigInt(10 ** decimals); + + // Execute ERC20 transfer + hash = await walletClient.writeContract({ + account, + chain: abstractTestnet, + address: content.tokenAddress as Address, + abi: erc20Abi, + functionName: "transfer", + args: [content.recipient as Address, tokenAmount], + }); + } else { + hash = await walletClient.sendTransaction({ + account: account, + chain: abstractTestnet, + to: content.recipient as Address, + value: parseEther(content.amount.toString()), + kzg: undefined, + }); + } elizaLogger.success( "Transfer completed successfully! Transaction hash: " + hash From 623c979cd5177a19ab9ca7024034f9b77e10e3b3 Mon Sep 17 00:00:00 2001 From: cygaar Date: Tue, 24 Dec 2024 16:49:05 -0500 Subject: [PATCH 57/58] Add default abstract rpc --- .env.example | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.env.example b/.env.example index 94b6320fa5..414f963858 100644 --- a/.env.example +++ b/.env.example @@ -194,7 +194,7 @@ SERVER_PORT=3000 # Abstract Configuration ABSTRACT_ADDRESS= ABSTRACT_PRIVATE_KEY= -ABSTRACT_RPC_URL= +ABSTRACT_RPC_URL=https://api.testnet.abs.xyz # Starknet Configuration STARKNET_ADDRESS= From 156de3cc0823142518e40a3aed1ec42709bc7a7d Mon Sep 17 00:00:00 2001 From: mhxw <32643286+mhxw@users.noreply.github.com> Date: Wed, 25 Dec 2024 12:00:30 +0800 Subject: [PATCH 58/58] fix: fix incorrect link redirection issue --- docs/docs/advanced/eliza-in-tee.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/docs/advanced/eliza-in-tee.md b/docs/docs/advanced/eliza-in-tee.md index a376d1b4f0..9acde08a1e 100644 --- a/docs/docs/advanced/eliza-in-tee.md +++ b/docs/docs/advanced/eliza-in-tee.md @@ -101,7 +101,7 @@ const quote = await provider.generateAttestation(reportData); Before getting started with Eliza, ensure you have: - [Docker Desktop](https://www.docker.com/products/docker-desktop/) or [Orbstack](https://orbstack.dev/) (Orbstack is recommended) -- For Mac/Windows: Check the prerequisites from [Quickstart Guide](./quickstart.md) +- For Mac/Windows: Check the prerequisites from [Quickstart Guide](../quickstart.md) - For Linux: You just need Docker --- @@ -144,7 +144,7 @@ To set up your environment for TEE development: 1. **Configure Eliza Agent** - Go through the [configuration guide](./configuration.md) to set up your Eliza agent. + Go through the [configuration guide](../guides/configuration.md) to set up your Eliza agent. 2. **Start the TEE Simulator** Follow the simulator setup instructions above based on your TEE mode.