diff --git a/data/contributors_2024_12-19.json b/data/contributors_2024_12-19.json
new file mode 100644
index 0000000..6d5457b
--- /dev/null
+++ b/data/contributors_2024_12-19.json
@@ -0,0 +1,1987 @@
+[
+ {
+ "contributor": "odilitime",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/16395496?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0MjAsIm5iZiI6MTczNDY0NzIyMCwicGF0aCI6Ii91LzE2Mzk1NDk2In0.AHDvuRgPHYO0i8IDYNzSfDB3Ae2PlvNoeRcGjB_wn9Q&u=45c152d8433e37c62520e66c0dd6d754ccf3eaf4&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 2,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1250,
+ "title": "fix: Fix local_llama key warning",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T21:39:36Z",
+ "updated_at": "2024-12-19T22:07:08Z",
+ "body": "# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nfix scary start up warnings for firing it up out of the box\r\n\r\n```\r\n [\"\u25ce DirectClient constructor\"] \r\n\r\n [\"\u26d4 Failed to get token - unsupported model provider: llama_local\"] \r\n\r\n \u26d4 ERRORS\r\n Error starting agent for character Eliza: \r\n {} \r\n\r\n [\"\u26d4 Error: Failed to get token - unsupported model provider: llama_local\"] \r\n\r\n \u26d4 ERRORS\r\n Error starting agents: \r\n {} \r\n\r\n [\"\u25ce Run `pnpm start:client` to start the client and visit the outputted URL (http://localhost:5173) to chat with your agents\"] \r\n\r\n```\r\n\r\n## What kind of change is this?\r\n\r\nImprovements (misc. changes to existing features)\r\n\r\n## Why are we doing this? Any context or related work?\r\n\r\nImproved new developer experience, reduce confusion\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.",
+ "files": [
+ {
+ "path": "agent/src/index.ts",
+ "additions": 4,
+ "deletions": 1
+ }
+ ],
+ "reviews": [
+ {
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM!"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "number": 1219,
+ "title": "fix: postgres needs the user to exist before you can add a participant",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T00:06:37Z",
+ "updated_at": "2024-12-19T02:09:16Z",
+ "body": "# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nwaits for users to be added before proceeding to adding participants\r\n\r\nalso moves the db check up before doing any db things\r\n\r\n## What kind of change is this?\r\n\r\nBug fixes (non-breaking change which fixes an issue)\r\n\r\n## Why are we doing this? Any context or related work?\r\n\r\n```\r\n [\"\u25ce Room c6dc9108-8990-0d80-a635-98d3a928f4e4 created successfully.\"] \r\n\r\nError adding participant error: insert or update on table \"participants\" violates foreign key constraint \"participants_userId_fkey\"\r\n at /root/eliza-odi/node_modules/pg-pool/index.js:45:11\r\n at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\r\n at async file:///root/eliza-odi/packages/adapter-postgres/dist/index.js:822:17\r\n at async PostgresDatabaseAdapter.withRetry (file:///root/eliza-odi/packages/adapter-postgres/dist/index.js:67:24)\r\n at async CircuitBreaker.execute (file:///root/eliza-odi/packages/core/dist/index.js:93:28)\r\n at async PostgresDatabaseAdapter.withCircuitBreaker (file:///root/eliza-odi/packages/core/dist/index.js:383:20)\r\n at async AgentRuntime.ensureParticipantExists (file:///root/eliza-odi/packages/core/dist/index.js:3661:13) {\r\n length: 305,\r\n severity: 'ERROR',\r\n code: '23503',\r\n detail: 'Key (userId)=(c6dc9108-8990-0d80-a635-98d3a928f4e4) is not present in table \"accounts\".',\r\n hint: undefined,\r\n position: undefined,\r\n internalPosition: undefined,\r\n internalQuery: undefined,\r\n where: undefined,\r\n schema: 'public',\r\n table: 'participants',\r\n column: undefined,\r\n dataType: undefined,\r\n constraint: 'participants_userId_fkey',\r\n file: 'ri_triggers.c',\r\n line: '2608',\r\n routine: 'ri_ReportViolation'\r\n}\r\n [\"\u2713 User WokeMindVirus created successfully.\"]\r\n```\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n",
+ "files": [
+ {
+ "path": "packages/core/src/runtime.ts",
+ "additions": 8,
+ "deletions": 5
+ }
+ ],
+ "reviews": [
+ {
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM!"
+ }
+ ],
+ "comments": [
+ {
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1219?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAttention: Patch coverage is `0%` with `6 lines` in your changes missing coverage. Please review.\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1219?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Patch % | Lines |\n|---|---|---|\n| [packages/core/src/runtime.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1219?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fruntime.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvcnVudGltZS50cw==) | 0.00% | [6 Missing :warning: ](https://app.codecov.io/gh/ai16z/eliza/pull/1219?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) |\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1219?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Coverage \u0394 | |\n|---|---|---|\n| [packages/core/src/runtime.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1219?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fruntime.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvcnVudGltZS50cw==) | `0.00% <0.00%> (\u00f8)` | |\n"
+ }
+ ]
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 2,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "tomguluson92",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/19585240?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91LzE5NTg1MjQwIn0.gXlxEwvwu9reKlsbqgUt9Tx7a5qqekgFUel_ERC3Fwo&u=4a4465656050747dee79f5f97a8b61cf2fbc97e1&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 2,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1246,
+ "title": "feat: upgrade Tavily API with comprehensive input and constrain the token consumption",
+ "state": "OPEN",
+ "merged": false,
+ "created_at": "2024-12-19T19:25:41Z",
+ "updated_at": "2024-12-19T19:52:00Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nrelates to tavily #518\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nConstrain the maximum output of per web search from Tavily, while allows more input parameters that can be controlled by the developers or users.\r\n\r\n## What kind of change is this?\r\n\r\nImprovements & Features \r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\nNo\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\nYes, I have fulfilled the test by test this part independently and then assemble this to the core.\r\n\r\n## Where should a reviewer start?\r\n\r\nCould start with the test just like normally use Tavily.\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
+ {
+ "path": ".env.example",
+ "additions": 3,
+ "deletions": 0
+ },
+ {
+ "path": "packages/core/src/generation.ts",
+ "additions": 4,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-web-search/src/index.ts",
+ "additions": 24,
+ "deletions": 2
+ }
+ ],
+ "reviews": [
+ {
+ "author": "tcm390",
+ "state": "APPROVED",
+ "body": ""
+ }
+ ],
+ "comments": [
+ {
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1246?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAttention: Patch coverage is `0%` with `4 lines` in your changes missing coverage. Please review.\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1246?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Patch % | Lines |\n|---|---|---|\n| [packages/core/src/generation.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1246?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fgeneration.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvZ2VuZXJhdGlvbi50cw==) | 0.00% | [4 Missing :warning: ](https://app.codecov.io/gh/ai16z/eliza/pull/1246?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) |\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1246?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Coverage \u0394 | |\n|---|---|---|\n| [packages/core/src/generation.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1246?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fgeneration.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvZ2VuZXJhdGlvbi50cw==) | `2.68% <0.00%> (-0.01%)` | :arrow_down: |\n"
+ }
+ ]
+ },
+ {
+ "number": 1226,
+ "title": "fix: CircuitBreaker.ts",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T04:53:10Z",
+ "updated_at": "2024-12-19T06:44:23Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nRelated to https://github.com/ai16z/eliza/pull/719\r\nBuild upon on https://github.com/ai16z/eliza/pull/812\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n`medium`, since we change the database adapters `circuitbase` code in the failure conditions.\r\n\r\n\r\n\r\n# Background\r\n\r\nDuring checking and learning the core code from AI16Z, I dig deeper into it and find out that the condition to restart the error need to be more fulfill.\r\n\r\n## What does this PR do?\r\n\r\nFulfill the condition in handling the failures.\r\n\r\n## What kind of change is this?\r\n\r\n**Improvements** \r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\nIf a docs change is needed: I have updated the documentation accordingly.\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\nYes\r\n\r\n",
+ "files": [
+ {
+ "path": "packages/core/src/database/CircuitBreaker.ts",
+ "additions": 1,
+ "deletions": 1
+ }
+ ],
+ "reviews": [
+ {
+ "author": "shakkernerd",
+ "state": "APPROVED",
+ "body": ""
+ }
+ ],
+ "comments": [
+ {
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1226?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAttention: Patch coverage is `0%` with `1 line` in your changes missing coverage. Please review.\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1226?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Patch % | Lines |\n|---|---|---|\n| [packages/core/src/database/CircuitBreaker.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1226?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fdatabase%2FCircuitBreaker.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvZGF0YWJhc2UvQ2lyY3VpdEJyZWFrZXIudHM=) | 0.00% | [1 Missing :warning: ](https://app.codecov.io/gh/ai16z/eliza/pull/1226?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) |\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1226?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Coverage \u0394 | |\n|---|---|---|\n| [packages/core/src/database/CircuitBreaker.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1226?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fdatabase%2FCircuitBreaker.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvZGF0YWJhc2UvQ2lyY3VpdEJyZWFrZXIudHM=) | `36.20% <0.00%> (-1.98%)` | :arrow_down: |\n"
+ }
+ ]
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 2,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "renlulu",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/8149051?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg2NjAsIm5iZiI6MTczNDY0NzQ2MCwicGF0aCI6Ii91LzgxNDkwNTEifQ.vNRFI1s-VUpAgF8g-JReFxwDI4UBDPmFdIkEcDNscYE&u=001a339b366e297d951ff1155837fe1e1510c398&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 2,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1245,
+ "title": "feat: make express payload limit configurable",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T18:12:17Z",
+ "updated_at": "2024-12-19T22:05:56Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
+ {
+ "path": ".env.example",
+ "additions": 3,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-direct/src/api.ts",
+ "additions": 26,
+ "deletions": 17
+ }
+ ],
+ "reviews": [
+ {
+ "author": "monilpat",
+ "state": "COMMENTED",
+ "body": ""
+ },
+ {
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM one nit"
+ },
+ {
+ "author": "monilpat",
+ "state": "COMMENTED",
+ "body": ""
+ }
+ ],
+ "comments": []
+ },
+ {
+ "number": 1244,
+ "title": "feat: make twitter login retry times as env",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T17:54:02Z",
+ "updated_at": "2024-12-19T21:52:56Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
+ {
+ "path": ".env.example",
+ "additions": 1,
+ "deletions": 0
+ },
+ {
+ "path": "agent/src/index.ts",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "packages/client-twitter/src/base.ts",
+ "additions": 4,
+ "deletions": 1
+ }
+ ],
+ "reviews": [
+ {
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM"
+ }
+ ],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 4,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "tcm390",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/60634884?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkwODAsIm5iZiI6MTczNDY0Nzg4MCwicGF0aCI6Ii91LzYwNjM0ODg0In0.aTZg7v0-F5XSxIbAmBcfx_5AdpyFDh-e6rtAZEXNARI&u=c6c41679b8322eaa0c81f72e0b4ed95e80f0ac16&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 2,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1242,
+ "title": "fix: twitterShouldRespondTemplate Fails When Defined as a String in JSON Character Config",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T16:31:00Z",
+ "updated_at": "2024-12-19T22:02:54Z",
+ "body": "related: https://github.com/ai16z/eliza/issues/1235\r\n\r\n",
+ "files": [
+ {
+ "path": "packages/client-twitter/src/interactions.ts",
+ "additions": 1,
+ "deletions": 3
+ }
+ ],
+ "reviews": [
+ {
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM"
+ }
+ ],
+ "comments": [
+ {
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1242?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n"
+ }
+ ]
+ },
+ {
+ "number": 1220,
+ "title": "fix: Allow the bot to post messages with images generated by the imageGenerationPlugin on Telegram.",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T00:16:18Z",
+ "updated_at": "2024-12-19T02:06:20Z",
+ "body": "related: \r\nhttps://github.com/ai16z/eliza/issues/970\r\nhttps://github.com/ai16z/eliza/pull/1040\r\n\r\n\r\n\r\n\r\n",
+ "files": [
+ {
+ "path": "packages/client-telegram/src/messageManager.ts",
+ "additions": 106,
+ "deletions": 54
+ },
+ {
+ "path": "packages/client-twitter/src/utils.ts",
+ "additions": 2,
+ "deletions": 12
+ },
+ {
+ "path": "packages/plugin-image-generation/src/index.ts",
+ "additions": 1,
+ "deletions": 1
+ }
+ ],
+ "reviews": [
+ {
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM - thank you so much for doing this please feel free to close the issues :) "
+ }
+ ],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 2,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "tungpun",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/5058370?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg3ODAsIm5iZiI6MTczNDY0NzU4MCwicGF0aCI6Ii91LzUwNTgzNzAifQ.YGTaug1L0oc7VUfJB_zg2PibAVY09Y_PY48e4fv5qaU&u=59cb956de322867be56c0abee49ab3f28f819e2f&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 2,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1231,
+ "title": "chore: added config to whitelist the telegram users",
+ "state": "OPEN",
+ "merged": false,
+ "created_at": "2024-12-19T08:00:24Z",
+ "updated_at": "2024-12-19T15:43:32Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nThis PR adds functionality to allow developers to whitelist Telegram users, granting them access to the bot.\r\n\r\n## What kind of change is this?\r\nFeatures (non-breaking change which adds functionality)\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
+ {
+ "path": ".env.example",
+ "additions": 1,
+ "deletions": 0
+ },
+ {
+ "path": ".gitignore",
+ "additions": 1,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-telegram/src/messageManager.ts",
+ "additions": 9,
+ "deletions": 1
+ }
+ ],
+ "reviews": [],
+ "comments": [
+ {
+ "author": "azep-ninja",
+ "body": "Like this enhancement. I recently added one to whitelist Telegram groups.\r\n\r\nHonestly think this might make more sense within the characters client config, similar to what I added.\r\n\r\nYou'll need to modify the types for the character file, but keeps the ENV less cluttered.\r\n\r\nReference: https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts\r\n\r\n![image](https://github.com/user-attachments/assets/665edc1f-cab5-48de-adc2-e59e1629bdde)\r\n\r\nAnd you can see how that was/is used in the messageManager.ts file for reference."
+ }
+ ]
+ },
+ {
+ "number": 1230,
+ "title": "chore: added config for to whitelist telegram user",
+ "state": "CLOSED",
+ "merged": false,
+ "created_at": "2024-12-19T07:54:59Z",
+ "updated_at": "2024-12-19T07:58:12Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nThis PR adds functionality to allow developers to whitelist Telegram users, granting them access to the bot.\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
+ {
+ "path": ".env.example",
+ "additions": 1,
+ "deletions": 0
+ },
+ {
+ "path": ".gitignore",
+ "additions": 1,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-telegram/src/messageManager.ts",
+ "additions": 12,
+ "deletions": 1
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "cygaar",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/97691933?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91Lzk3NjkxOTMzIn0.vv-JK85dC71dWur7eEcbi2Ry93mpLfQ5KxBgeSQHBMk&u=45e66309f3fd41536b48a58f3c949b9e4e90789a&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 2,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1225,
+ "title": "[WIP] feat: add abstract plugin",
+ "state": "OPEN",
+ "merged": false,
+ "created_at": "2024-12-19T03:52:15Z",
+ "updated_at": "2024-12-19T04:01:38Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nAdds Abstract support to Eliza agents!\r\n\r\n# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nAdds support for Eliza to interact with Abstract testnet. The logic borrows heavily from #906, but changes zksync references to Abstract and uses viem for onchain interactions. In the future, I'll be adding more custom abstract-only functionality which is why I did not re-use the existing zksync logic.\r\n\r\n## What kind of change is this?\r\n\r\nFeature\r\n\r\n# Documentation changes needed?\r\n\r\nYes, I will add Abstract specific documentation\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\nSpin up an agent with the abstract plugin\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
+ {
+ "path": ".env.example",
+ "additions": 5,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-abstract/package.json",
+ "additions": 20,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-abstract/src/actions/transfer.ts",
+ "additions": 213,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-abstract/src/environment.ts",
+ "additions": 32,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-abstract/src/index.ts",
+ "additions": 13,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-abstract/tsconfig.json",
+ "additions": 10,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-abstract/tsup.config.ts",
+ "additions": 20,
+ "deletions": 0
+ },
+ {
+ "path": "pnpm-lock.yaml",
+ "additions": 22,
+ "deletions": 1
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ },
+ {
+ "number": 1217,
+ "title": "fix: improve twitter post generation prompt",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-18T23:08:16Z",
+ "updated_at": "2024-12-19T00:00:41Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nAdds more variance to tweet generation so the content feels less stale\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
+ {
+ "path": "packages/client-twitter/src/post.ts",
+ "additions": 238,
+ "deletions": 128
+ },
+ {
+ "path": "packages/core/src/types.ts",
+ "additions": 2,
+ "deletions": 2
+ }
+ ],
+ "reviews": [
+ {
+ "author": "odilitime",
+ "state": "COMMENTED",
+ "body": ""
+ },
+ {
+ "author": "cygaar",
+ "state": "COMMENTED",
+ "body": ""
+ },
+ {
+ "author": "odilitime",
+ "state": "APPROVED",
+ "body": ""
+ }
+ ],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 3,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "lalalune",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/18633264?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg3MjAsIm5iZiI6MTczNDY0NzUyMCwicGF0aCI6Ii91LzE4NjMzMjY0In0.ef20meZySKC14ksX2zmPUprbf4FTK6gdLx8nK_CL6HQ&u=8f2bca0a3cef958bd405ea89680a9b9a0ff38f06&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1252,
+ "title": "Update trump.character.json",
+ "state": "OPEN",
+ "merged": false,
+ "created_at": "2024-12-19T22:28:15Z",
+ "updated_at": "2024-12-19T22:28:15Z",
+ "body": "Remove a controversial line so we don't have to waste time on pointless old world political divisions\r\n",
+ "files": [
+ {
+ "path": "characters/trump.character.json",
+ "additions": 0,
+ "deletions": 1
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "simsaidev",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/192255625?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkxNDAsIm5iZiI6MTczNDY0Nzk0MCwicGF0aCI6Ii91LzE5MjI1NTYyNSJ9.m6UXmOZB4P5aDEzW8NlIro6a_oNBtl6QaTF-4MUr8Yc&u=618ee6c5eb68a948ec29fc112d1ad85a34ced79c&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1249,
+ "title": "Release/v.1.0",
+ "state": "CLOSED",
+ "merged": false,
+ "created_at": "2024-12-19T20:46:20Z",
+ "updated_at": "2024-12-19T20:55:58Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nInitial V-1.0 of SimsAI client package for Eliza framework. Used for testing your agents and interacting on the Simsai platform. SimsAI is a social media thats only for agents, allowing humans to only comment, prompt like or repost their followed agents. Jeets or posts by the agents, will eventually be mintable as NFTs to the user with royalties for the creators and the agent wallets.\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow risk. New client, configurable by the user.\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nThis allows agents to post on the SimsAI platform. Specifically, Jeeter the twitter replica for agents.\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\nClient Change. Feature.\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\nTesting can be done by:\r\n\r\n1. Adding necessary env vars.\r\n2. Running as normal (with the dry run variable on with their character file)\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
+ {
+ "path": ".env.example",
+ "additions": 7,
+ "deletions": 0
+ },
+ {
+ "path": "agent/package.json",
+ "additions": 60,
+ "deletions": 59
+ },
+ {
+ "path": "agent/src/index.ts",
+ "additions": 10,
+ "deletions": 3
+ },
+ {
+ "path": "characters/simsai.character.json",
+ "additions": 89,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/.npmignore",
+ "additions": 6,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/eslint.config.mjs",
+ "additions": 3,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/package.json",
+ "additions": 24,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/src/index.ts",
+ "additions": 48,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/src/jeeter/base.ts",
+ "additions": 607,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/src/jeeter/client.ts",
+ "additions": 302,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/src/jeeter/constants.ts",
+ "additions": 115,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/src/jeeter/environment.ts",
+ "additions": 48,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/src/jeeter/interactions.ts",
+ "additions": 465,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/src/jeeter/post.ts",
+ "additions": 222,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/src/jeeter/search.ts",
+ "additions": 597,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/src/jeeter/types.ts",
+ "additions": 224,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/src/jeeter/utils.ts",
+ "additions": 349,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/tsconfig.json",
+ "additions": 10,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/tsup.config.ts",
+ "additions": 20,
+ "deletions": 0
+ },
+ {
+ "path": "packages/core/src/types.ts",
+ "additions": 7,
+ "deletions": 2
+ },
+ {
+ "path": "pnpm-lock.yaml",
+ "additions": 23116,
+ "deletions": 18054
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "ileana-pr",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/103957712?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkyMDAsIm5iZiI6MTczNDY0ODAwMCwicGF0aCI6Ii91LzEwMzk1NzcxMiJ9.u9qrd1GMtEVN5qePaZWSeDuQhZDSkFlWmmVmXRCEMKU&u=b865d84e1f5bffd16f907c5318a177dfc9f927d0&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1248,
+ "title": "feat: news-plugin",
+ "state": "OPEN",
+ "merged": false,
+ "created_at": "2024-12-19T20:30:07Z",
+ "updated_at": "2024-12-19T20:31:12Z",
+ "body": "\r\n\r\n# Relates to:\r\nAI Agent Dev School Video #2: https://www.youtube.com/watch?v=XenGeAcPAQo&t=3383s \r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow \r\n\r\n\r\n\r\n# Background\r\nShaw shows us how to create a simple plugin that returns the latest news on a specific topic. This is an example code of a completed currentNewsAction. It can be modified and expanded for added functionality. \r\n\r\n## What does this PR do?\r\n\r\nAdds an example of the news plugin described by Shaw. \r\n\r\n## What kind of change is this?\r\n\r\nFeatures \r\n\r\n\r\n\r\n\r\n\r\n\r\nIt will help future students to see an example of the code and more experienced devs to add functionality to a useful plugin. \r\n\r\n# Documentation changes needed?\r\n\r\nnone, but I can add documentation \r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\nI tested the plugin with C3PO character and was able to retrieve news on different topics. \r\n\r\nFormatting of the output can use some improvement. \r\n\r\n## Where should a reviewer start?\r\n\r\nnews.ts \r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
+ {
+ "path": ".env.example",
+ "additions": 3,
+ "deletions": 0
+ },
+ {
+ "path": "agent/package.json",
+ "additions": 1,
+ "deletions": 0
+ },
+ {
+ "path": "agent/src/index.ts",
+ "additions": 2,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/.npmignore",
+ "additions": 6,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/eslint.config.mjs",
+ "additions": 3,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/package.json",
+ "additions": 19,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/src/actions/index.ts",
+ "additions": 2,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/src/actions/news.ts",
+ "additions": 172,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/src/index.ts",
+ "additions": 10,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/tsconfig.json",
+ "additions": 13,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/tsup.config.ts",
+ "additions": 20,
+ "deletions": 0
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "karelvuong",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/95452264?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0ODAsIm5iZiI6MTczNDY0NzI4MCwicGF0aCI6Ii91Lzk1NDUyMjY0In0.oN52fhkgFgvEaNu1V3xXp5TP8PU9DPwM0A0M4KD5yBM&u=a0ca99a025844781a3b09ed9616bf1308ffaa601&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1247,
+ "title": "feat: Add Treasure Plugin",
+ "state": "OPEN",
+ "merged": false,
+ "created_at": "2024-12-19T20:15:23Z",
+ "updated_at": "2024-12-19T20:18:35Z",
+ "body": "\r\n\r\n# Relates to:\r\nAdds Treasure support for Eliza agents.\r\n\r\n# Risks\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n[Treasure](https://treasure.lol) is a gaming-centric L2 rollup built on ZKsync. This PR adds support for Eliza to interact with the Treasure mainnet, with logic/implementation borrowed from #1225 and #1128.\r\n\r\nInitially, only the `transfer` function has been supported with additional features to come to hook into the Treasure Development Kit (TDK), Magicswap, and other Treasure platform features.\r\n\r\n## What kind of change is this?\r\n\r\nFeature\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\nSpin up an agent with the `treasure` plugin + review `plugin-treasure`.\r\n\r\n## Detailed testing steps\r\n1. In `.env`, should set the value for `TREASURE_ADDRESS` (public address for the agent account), `TREASURE_PRIVATE_KEY` (private key for the same account), and `TREASURE_RPC_URL` as https://rpc.treasure.lol.\r\nTo test the transfer function properly, this address needs tokens. [Treasure Bridge](https://bridge.treasure.lol/) can be used to bridge MAGIC directly from `arb1` to an address on `treasure`.\r\n2. Run the agent and prompt it with: \"Send 0.1 MAGIC to \" - e.g. \"send 0.1 MAGIC to 0x7A6a48b8e7BD3451Fc57f01Ad9Aaea62cdf5956E\"\r\n3. Assuming you had 1 MAGIC to send, the agent will confirm and respond with the tx hash, e.g. \"Successfully sent 1 MAGIC to 0x7A6a48b8e7BD3451Fc57f01Ad9Aaea62cdf5956E\r\nTransaction: 0x45759cf3e76d26610154a094c87572fbd7f5ef909f62c4ea13f7defb0d87cf0b\"\r\nThe tx hash can be checked on the Treasure Block Explorer (https://treasurescan.io/)",
+ "files": [
+ {
+ "path": ".env.example",
+ "additions": 5,
+ "deletions": 0
+ },
+ {
+ "path": "agent/package.json",
+ "additions": 60,
+ "deletions": 59
+ },
+ {
+ "path": "agent/src/index.ts",
+ "additions": 7,
+ "deletions": 3
+ },
+ {
+ "path": "packages/plugin-treasure/package.json",
+ "additions": 20,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-treasure/src/actions/transfer.ts",
+ "additions": 215,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-treasure/src/environment.ts",
+ "additions": 43,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-treasure/src/index.ts",
+ "additions": 13,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-treasure/tsconfig.json",
+ "additions": 10,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-treasure/tsup.config.ts",
+ "additions": 20,
+ "deletions": 0
+ },
+ {
+ "path": "pnpm-lock.yaml",
+ "additions": 21,
+ "deletions": 0
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "luisalrp",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/31384138?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg1NDAsIm5iZiI6MTczNDY0NzM0MCwicGF0aCI6Ii91LzMxMzg0MTM4In0.XQRH_JmHfJ9SSP2y-iWTJbtF0mMQ96QBOO5JmXkIdDI&u=dd50e8885f7f8e2372d955b7fae623bba8be9ec2&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1243,
+ "title": "Fix visibility issue github image cicd",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T16:36:23Z",
+ "updated_at": "2024-12-19T22:02:34Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n[Publish an official Docker Image in ghcr. #876](https://github.com/ai16z/eliza/issues/876) and PR [feat : github image cicd #889](https://github.com/ai16z/eliza/pull/889) by @v1xingyue.\r\n\r\n# Risks\r\n\r\nLow. I do not see risks.\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\nUpdates image.yaml to add the task to change package visibility.\r\n",
+ "files": [
+ {
+ "path": ".github/workflows/image.yaml",
+ "additions": 56,
+ "deletions": 47
+ }
+ ],
+ "reviews": [
+ {
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM! "
+ }
+ ],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 1,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "robin-rrt",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/66296664?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91LzY2Mjk2NjY0In0.xDIk15VBLjxq_UQ581P8lfJH4UZ_Es24hWAMsjRhmL0&u=3c317252695c6601ff8f1189de214e05a87458bd&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1241,
+ "title": "feat: add avail plugin",
+ "state": "OPEN",
+ "merged": false,
+ "created_at": "2024-12-19T15:54:49Z",
+ "updated_at": "2024-12-19T15:59:35Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nN/A\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow.\r\nThe main implementation risk is that the Plugin doesn't work as intended.\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n[Avail](https://www.availproject.org/) aims to accelerate Web3's unification using its cutting-edge modular technology stack, which combines data availability, aggregation, and shared security.\r\n\r\nIn this version, the `transfer` and `submitData` actions are supported.\r\n\r\nMultiple L2s are working with Avail to meet their data availability and interoperability needs.\r\n\r\n## What kind of change is this?\r\n\r\nFeatures (non-breaking change which adds functionality)\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\nSince Avail is a Substrate based network, and not EVM-compatible (cannot work with `plugin-evm`), it requires some docs to show how to submit data and transfer tokens. I have updated the documentation accordingly in the README for the plugin.\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\nMost of the changes are in `plugin-avail`\r\n\r\n\r\n## Detailed testing steps\r\n- In `.env` you should set the value for `AVAIL_ADDRESS` (this is the public address for the agent account) and `AVAIL_SEED` (seed phrase for the same account).\r\n- **Transfer AVAIL**\r\n - To test transfer function, you need tokens in your Avail account. On testnet, you can use the [Avail Faucet](https://faucet.avail.tools/). If you need more please ping me, and I can send it over. \r\n - Run the agent and prompt it with: \"send 1 AVAIL to \" - e.g. `send 1 AVAIL to 5GWbvXjefEvXXETtKQH7YBsUaPc379KAQATW1eqeJT26cbsK`\r\n - Assuming everything goes smoothly the agent returns with the Tx Hash, and Block Hash. \r\nThe tx hash can be checked on the Avail block explorer at https://avail-turing.subscan.io/\r\n- **Submit Data**\r\n - To test data submission, you need tokens in your Avail account to pay fees. On testnet, you can use the [Avail Faucet](https://faucet.avail.tools/). If you need more please ping me, and I can send it over. \r\n - Run the agent and prompt it with: \"Submit the following data to Avail \" - e.g. `Submit the following data to Avail \"Hello World!\"`\r\n - Assuming everything goes smoothly the agent returns with the Tx Hash, and Block Hash. \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n## Discord username\r\nRobinRRT\r\n\r\n",
+ "files": [
+ {
+ "path": ".env.example",
+ "additions": 6,
+ "deletions": 0
+ },
+ {
+ "path": "agent/package.json",
+ "additions": 1,
+ "deletions": 0
+ },
+ {
+ "path": "agent/src/index.ts",
+ "additions": 3,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-avail/.npmignore",
+ "additions": 6,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-avail/README.md",
+ "additions": 25,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-avail/eslint.config.mjs",
+ "additions": 3,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-avail/package.json",
+ "additions": 21,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-avail/src/actions/submitData.ts",
+ "additions": 238,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-avail/src/actions/transfer.ts",
+ "additions": 237,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-avail/src/environment.ts",
+ "additions": 36,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-avail/src/index.ts",
+ "additions": 23,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-avail/tsconfig.json",
+ "additions": 13,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-avail/tsup.config.ts",
+ "additions": 21,
+ "deletions": 0
+ },
+ {
+ "path": "pnpm-lock.yaml",
+ "additions": 0,
+ "deletions": 37536
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "jonathangus",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/7723195?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg3MjAsIm5iZiI6MTczNDY0NzUyMCwicGF0aCI6Ii91Lzc3MjMxOTUifQ.htne0skqI0Y2OwK1K8bRO0AevoSbqtOjKav7qWgZDAo&u=2f07ca181065b387adcebe19eaf0798526e6f061&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1239,
+ "title": "fix: Sync UI Client with server port env",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T13:56:38Z",
+ "updated_at": "2024-12-19T21:54:31Z",
+ "body": "\r\n\r\n# Risks\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nIt uses SERVER_PORT environment variable in the client app\r\n\r\n## What kind of change is this?\r\nImprovements for developer experience\r\n\r\n## Why are we doing this? Any context or related work?\r\nExperienced this issue when developing and wanted to use another port then 3000\r\n\r\n# Documentation changes needed?\r\nMy changes do not require a change to the project documentation.\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
+ {
+ "path": "client/vite.config.ts",
+ "additions": 4,
+ "deletions": 1
+ }
+ ],
+ "reviews": [
+ {
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM - thank you!"
+ }
+ ],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 1,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "stopmalone",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/191122176?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0ODAsIm5iZiI6MTczNDY0NzI4MCwicGF0aCI6Ii91LzE5MTEyMjE3NiJ9.ybYAjXg2xaOgZcqMmzsOuJjvH0kd5lS5Gz7MnOiTJ7Q&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1238,
+ "title": "Feat/deva client integration",
+ "state": "OPEN",
+ "merged": false,
+ "created_at": "2024-12-19T12:44:48Z",
+ "updated_at": "2024-12-19T17:45:19Z",
+ "body": "# Pull Request: Integrate Deva into Eliza\r\n\r\n## Relates to\r\n\r\nThis PR adds a new [Deva](https://www.deva.me/) client integration for the Eliza AI agent, enabling posting and scheduling posts to the [Deva](https://www.deva.me/) feed.\r\n\r\n## Risks\r\n\r\n- **Minimal Risk**: This integration is additive and does not alter existing functionalities of Eliza.\r\n- **Dependency Management**: Introduces a new dependency on Deva's API, which requires monitoring for future updates or changes.\r\n- **Data Privacy**: Ensures that any data shared between Eliza and Deva complies with our privacy policies.\r\n\r\n## Background\r\n\r\n### What does this PR do?\r\n\r\nThis PR introduces the capability to post and schedule content directly to the [Deva platform](https://www.deva.me/) from the Eliza AI agent. Users can now seamlessly integrate their Eliza-generated content with [Deva](https://www.deva.me/), enhancing their content distribution and engagement strategies.\r\n\r\n### What kind of change is this?\r\n\r\n**Feature**: This is a non-breaking change that adds new functionality to the Eliza AI agent by integrating with Deva\u2019s API for posting and scheduling content.\r\n\r\n## Documentation Changes Needed?\r\n\r\nNot at the moment.\r\n\r\n## Testing\r\n\r\n### Detailed Testing Steps\r\n\r\n1. **Create a Deva Account**\r\n - Navigate to [deva.me](https://www.deva.me/), create an account, and press the \"Get Started\" button in the top right.\r\n - ![Get Started](https://github.com/user-attachments/assets/a31ebe01-3ee7-40f5-8e30-f59c79c642fe)\r\n\r\n2. **Complete Onboarding**\r\n - Click through the onboarding screens and connect your preferred social account (e.g., Twitter) to Deva.\r\n\r\n3. **Access the Deva Feed**\r\n - You can now see the Deva feed, where you can post and interact with other Devas.\r\n - \r\n\r\n4. **Create an Application to get the token**\r\n - At this point, you'll be able to get a token to interact with Deva, to do so: \r\n - Navigate to Apps chapter in settings by clicking the user icon in top right corner and then settings -> Apps, or opening [apps](https://www.deva.me/settings/apps)\r\n - Press Apps and Session\r\n
![image](https://github.com/user-attachments/assets/9fda36ac-3675-4f30-8c48-9b91e71a741e)\r\n - Press Create new app\r\n
![image](https://github.com/user-attachments/assets/32fc9b04-510e-4a90-876c-e4f6d2e562d7)\r\n - You are redirected to the form of the app creation, Name, Redirect URL and descriptions are necessary fields. Permissions are preselected and they are exactly enough for Eliza agent to post a message in feed.\r\n - After creating an app, select it from the list of apps;\r\n - Inside you will find a Get Token button, to generate a new token for your app:\r\n
![image](https://github.com/user-attachments/assets/307ab088-0508-496e-bc8e-4ded833e8b4f)\r\n - Later, it'll be visible in the list:\r\n
![image](https://github.com/user-attachments/assets/39034c0d-3cf3-4a69-aaab-8cd1740d9ba6)\r\n\r\n5. **Update Environment Variables**\r\n - Once you have the token, update the environment variables in the `.env` file:\r\n ```env\r\n DEVA_API_KEY=YourApiKey\r\n DEVA_API_BASE_URL=https://api.deva.me # Production API URL\r\n ```\r\n\r\n6. **Select Deva Client as Default Character**\r\n - Select the Deva client as Eliza's default character and choose the desired model:\r\n
![Select Deva Client](https://github.com/user-attachments/assets/1120ebb4-4618-4364-bbf8-7040b6bda8c0)\r\n\r\n7. **Run the Application**\r\n - Execute the following commands to install dependencies and start the application:\r\n ```bash\r\n pnpm install && pnpm start\r\n ```\r\n - This will initiate the Deva client:\r\n
![Initiate Deva Client](https://github.com/user-attachments/assets/4ef64f0b-c2c1-4a4b-a6b5-0461433af022)\r\n - Fetch the persona associated with your agent and the posts that you have pushed to the Deva feed:\r\n
![Fetch Persona and Posts](https://github.com/user-attachments/assets/5a698b06-b616-47cc-8318-355a91cc424c)\r\n - Once done, Eliza will post one message to the Deva feed immediately and schedule another one as a test message:\r\n
![Post Messages](https://github.com/user-attachments/assets/523d69f4-1f3f-4d49-82a1-163e3cd4d128)\r\n8. **Eliza agent's post is in the feed!**\r\n - \r\n\r\n\r\n### Staging Environment Testing\r\n\r\nTo avoid populating the production Deva feed, you can perform the same flow in the [staging environment](https://staging.deva.me/). Ensure you update the related environment variable:\r\n\r\n```env\r\nDEVA_API_BASE_URL=https://api-staging.deva.me # Staging API URL\r\n",
+ "files": [
+ {
+ "path": ".env.example",
+ "additions": 4,
+ "deletions": 0
+ },
+ {
+ "path": ".gitignore",
+ "additions": 2,
+ "deletions": 0
+ },
+ {
+ "path": "agent/package.json",
+ "additions": 1,
+ "deletions": 0
+ },
+ {
+ "path": "agent/src/index.ts",
+ "additions": 6,
+ "deletions": 0
+ },
+ {
+ "path": "docs/api/enumerations/Clients.md",
+ "additions": 9,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-deva/.npmignore",
+ "additions": 6,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-deva/eslint.config.mjs",
+ "additions": 3,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-deva/package.json",
+ "additions": 24,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-deva/src/base.ts",
+ "additions": 60,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-deva/src/controller.ts",
+ "additions": 242,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-deva/src/devaClient.ts",
+ "additions": 30,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-deva/src/enviroment.ts",
+ "additions": 32,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-deva/src/index.ts",
+ "additions": 28,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-deva/src/templates.ts",
+ "additions": 24,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-deva/src/types.ts",
+ "additions": 21,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-deva/tsconfig.json",
+ "additions": 8,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-deva/tsup.config.ts",
+ "additions": 20,
+ "deletions": 0
+ },
+ {
+ "path": "packages/core/src/types.ts",
+ "additions": 2,
+ "deletions": 0
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "yjshi2015",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/27291507?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkxNDAsIm5iZiI6MTczNDY0Nzk0MCwicGF0aCI6Ii91LzI3MjkxNTA3In0.xoqYjUq9ys7ZiKG80ewP_HiLtsLumNcsIRVYTO9lg4g&u=967c2c7ba1dddfaa2f14b55ef74ee6f4c0f2b5e6&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1237,
+ "title": "Update trump.character.json - Enhance terminology in the project for clarity and inclusivity",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T12:19:10Z",
+ "updated_at": "2024-12-19T22:25:39Z",
+ "body": "While reviewing the documentation, I noticed the term \u201cChina virus.\u201d To maintain professionalism and align with WHO naming standards, I suggest replacing it with terms like \u201cCOVID-19\u201d or \u201cSARS-CoV-2.\u201d This adjustment not only ensures accuracy but also promotes inclusivity and avoids potential misunderstandings.",
+ "files": [
+ {
+ "path": "characters/trump.character.json",
+ "additions": 1,
+ "deletions": 1
+ }
+ ],
+ "reviews": [
+ {
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM!"
+ }
+ ],
+ "comments": [
+ {
+ "author": "lalalune",
+ "body": "> While reviewing the documentation, I noticed the term \u201cChina virus.\u201d To maintain professionalism and align with WHO naming standards, I suggest replacing it with terms like \u201cCOVID-19\u201d or \u201cSARS-CoV-2.\u201d This adjustment not only ensures accuracy but also promotes inclusivity and avoids potential misunderstandings.\r\n\r\nThe point of characters is to capture the person accurately, not the facts. Trump says silly offensive stuff, and we wanted to capture that. He would not say SARS-COVID-19. I disagree with about 99% of the stuff he says, and 99% of the stuff his character file says. That being said, I care about art, and not letting art be compromised by politics.\r\n\r\nWe love people all over the world, and personally I will be visiting China in a couple days to meet everyone. I don't believe that we should be against any group for their nationality. But we shouldn't kill the comedy and make our characters worse-- that's why OpenAI's models suck now. It's a slippery slope that will reduce bravery, integrity and quality."
+ }
+ ]
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 1,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "azurwastaken",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/30268138?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg2MDAsIm5iZiI6MTczNDY0NzQwMCwicGF0aCI6Ii91LzMwMjY4MTM4In0.0TrV_Q5n3Vx_Ly-e8SqcXksrXPMO2MatiDEMRubGAw4&u=9f22ac121f4dbfc0e56a0f165dfc306d419ec514&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1236,
+ "title": "Update README for french, spanish and italian language",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T11:24:39Z",
+ "updated_at": "2024-12-19T21:55:23Z",
+ "body": "# Relates to: N/A\r\n\r\n# Risks\r\n\r\nNo risk\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nUpdate readme FR/ES/IT for typo, spelling, etc \r\n\r\n## What kind of change is this?\r\n\r\nUpdates (new versions of included code)\r\n\r\n## Why are we doing this? Any context or related work?\r\n--> Incorrect use of language \r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n## Discord username\r\n\r\n--> azurwastaken\r\n",
+ "files": [
+ {
+ "path": "README_ES.md",
+ "additions": 3,
+ "deletions": 3
+ },
+ {
+ "path": "README_FR.md",
+ "additions": 6,
+ "deletions": 6
+ },
+ {
+ "path": "README_IT.md",
+ "additions": 7,
+ "deletions": 7
+ }
+ ],
+ "reviews": [
+ {
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM !"
+ }
+ ],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 1,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "simpletrontdip",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/20158564?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5MDAsIm5iZiI6MTczNDY0NzcwMCwicGF0aCI6Ii91LzIwMTU4NTY0In0.dPZab45J8lkENAvzV8Qyi-otNiiTGf44oBcjqxoS5mg&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1229,
+ "title": "feat: add parse mode=Markdown, enhance telegram bot output",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T07:31:17Z",
+ "updated_at": "2024-12-19T07:50:08Z",
+ "body": "# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nIt added `parse_mode=\"Markdown\"` to support code suggestion in Telegram bot output\r\n\r\n## What kind of change is this?\r\n\r\nImprovements (misc. changes to existing features)\r\n\r\n## Why are we doing this? Any context or related work?\r\nIt would be nice to have Markdown support in bot output, this is heavily used in all LLMs output\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n## Screenshots\r\n\r\n### Before\r\n\r\n\r\n### After\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
+ {
+ "path": "packages/client-telegram/src/messageManager.ts",
+ "additions": 1,
+ "deletions": 0
+ }
+ ],
+ "reviews": [
+ {
+ "author": "shakkernerd",
+ "state": "APPROVED",
+ "body": "This is a good one!"
+ }
+ ],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 1,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "mobi8",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/116540956?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0MjAsIm5iZiI6MTczNDY0NzIyMCwicGF0aCI6Ii91LzExNjU0MDk1NiJ9.kHchK_MjTR4daYT3OnAj_CC1N0leKgjEP-1jZk4UaLg&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1228,
+ "title": "Create requirements.txt",
+ "state": "CLOSED",
+ "merged": false,
+ "created_at": "2024-12-19T06:38:42Z",
+ "updated_at": "2024-12-19T06:48:44Z",
+ "body": "add\r\n\r\n\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
+ {
+ "path": "requirements.txt",
+ "additions": 2,
+ "deletions": 0
+ }
+ ],
+ "reviews": [],
+ "comments": [
+ {
+ "author": "shakkernerd",
+ "body": "A requirements.txt file is not needed since this is a TypeScript project."
+ }
+ ]
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "9547",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/29431502?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkyMDAsIm5iZiI6MTczNDY0ODAwMCwicGF0aCI6Ii91LzI5NDMxNTAyIn0.PAeiPZdpnsK9tsuSRwgz1z1YgHWgk8LTZ7oa9Qj6tbs&u=def2043f3c532d18cae388fcec8d24a21e08d044&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1227,
+ "title": "docs(readme): add bash code block for all bash scripts",
+ "state": "CLOSED",
+ "merged": false,
+ "created_at": "2024-12-19T05:49:29Z",
+ "updated_at": "2024-12-19T06:32:39Z",
+ "body": "Add `bash` code block for all the bash scripts, better to markdown rendering\r\n",
+ "files": [
+ {
+ "path": "README.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "README_CN.md",
+ "additions": 3,
+ "deletions": 3
+ },
+ {
+ "path": "README_DE.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "README_ES.md",
+ "additions": 3,
+ "deletions": 3
+ },
+ {
+ "path": "README_FR.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "README_HE.md",
+ "additions": 4,
+ "deletions": 5
+ },
+ {
+ "path": "README_IT.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "README_JA.md",
+ "additions": 3,
+ "deletions": 3
+ },
+ {
+ "path": "README_KOR.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "README_PTBR.md",
+ "additions": 3,
+ "deletions": 3
+ },
+ {
+ "path": "README_TH.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "README_TR.md",
+ "additions": 4,
+ "deletions": 4
+ },
+ {
+ "path": "README_VI.md",
+ "additions": 2,
+ "deletions": 2
+ }
+ ],
+ "reviews": [],
+ "comments": [
+ {
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1227?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n\n[see 9 files with indirect coverage changes](https://app.codecov.io/gh/ai16z/eliza/pull/1227/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z)\n"
+ },
+ {
+ "author": "shakkernerd",
+ "body": "Thanks for the PR but I think adding `bash` to the code block doesn't make any difference given the markdown is perfectly rendered."
+ }
+ ]
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "danbednarski",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/183874220?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0ODAsIm5iZiI6MTczNDY0NzI4MCwicGF0aCI6Ii91LzE4Mzg3NDIyMCJ9.K5HcKBhqOKkEAALB4r65mm2QHcjXkgOuJdgIUPTqg3U&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1218,
+ "title": "chore: clean up scripts",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-18T23:15:48Z",
+ "updated_at": "2024-12-19T06:56:57Z",
+ "body": "I'm very new to this project so bear with me - I stumbled across these three files:\r\n\r\n* scripts/gettweets-copy.mjs\r\n* scripts/gettweets.mjs\r\n* scripts/tweetextractor.mjs\r\n\r\nAll appear to do the same thing. The first one uses environmental variables, the second two actually have hardcoded credentials for a real Twitter account.\r\n\r\nShould we simply delete the latter two and scrub the credentials from the git history? Or is there some reason that things are like this?\r\n\r\nThanks for your patience, just getting the hang of things.",
+ "files": [
+ {
+ "path": "scripts/gettweets-copy.mjs",
+ "additions": 0,
+ "deletions": 76
+ },
+ {
+ "path": "scripts/gettweets.mjs",
+ "additions": 16,
+ "deletions": 32
+ },
+ {
+ "path": "scripts/tweetextractor.mjs",
+ "additions": 0,
+ "deletions": 131
+ }
+ ],
+ "reviews": [
+ {
+ "author": "shakkernerd",
+ "state": "APPROVED",
+ "body": ""
+ }
+ ],
+ "comments": [
+ {
+ "author": "odilitime",
+ "body": "I notified the author of original PR, so he's aware of what happened"
+ }
+ ]
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 1,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "lorcann-rauzduel",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/176548844?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkyMDAsIm5iZiI6MTczNDY0ODAwMCwicGF0aCI6Ii91LzE3NjU0ODg0NCJ9.iDu37cA2qwbJtZlyWR5DiRT6lnij8ZhkJCOkTH0Z9Ys&u=c20bf0288194863b32133bdd83001111d364ca75&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 0,
+ "commits": [],
+ "pull_requests": []
+ },
+ "issues": {
+ "total_opened": 1,
+ "opened": [
+ {
+ "number": 1251,
+ "title": "Cannot read properties of undefined (reading 'rpcUrls') ",
+ "state": "OPEN",
+ "created_at": "2024-12-19T22:02:20Z",
+ "updated_at": "2024-12-19T22:02:20Z",
+ "body": "**Describe the bug**\r\n\r\nSwap execution fails with \"Cannot read properties of undefined (reading 'rpcUrls')\" error during LiFi SDK initialization. The issue occurs because the RPC URLs configuration doesn't match the format expected by the SDK.\r\n\r\n**To Reproduce**\r\n\r\n1. Initialize SwapAction with a WalletProvider\r\n2. Attempt to execute a swap with a prompt\r\n3. Error occurs during configuration creation in SwapAction constructor\r\n\r\n**Expected behavior**\r\n\r\nSwap should execute normally\r\n\r\n**Screenshots**\r\n\r\nLogs : \r\n```\r\n [\"\u2713 Normalized action: swap\"] \r\n\r\n [\"\u2139 Executing handler for action: swap\"] \r\nError in swap handler: Cannot read properties of undefined (reading 'rpcUrls')\r\n \u25ce LOGS\r\n Evaluating \r\n GET_FACTS \r\n\r\n \u25ce LOGS\r\n Evaluating \r\n UPDATE_GOAL \r\n\r\n \u25ce LOGS\r\n Creating Memory \r\n 3131de6c-ba7b-0dad-b05f-eeed7ceae7ca \r\n Error: Cannot read properties of undefined (reading 'rpcUrls') \r\n```\r\n\r\n**Additional context**\r\n\r\nmy .env file :\r\n\r\n```\r\n.....\r\n# EVM\r\nEVM_PRIVATE_KEY=my_private_key\r\nEVM_PROVIDER_URL=my_eth_mainnet_provider\r\nETHEREUM_PROVIDER_ARBITRUM_=my_arbitrum_mainnet_provider\r\nETHEREUM_PROVIDER_ARBITRUM_SEPOLIA=my_arbitrum_sepolia_provider\r\n\r\n```\r\n\r\nmy character file :\r\n```\r\n\r\n \"name\": \"user-agent\",\r\n \"clients\": [\"twitter\", \"telegram\"],\r\n \"modelProvider\": \"anthropic\",\r\n \"settings\": {\r\n \"secrets\": {},\r\n \"voice\": {},\r\n \"chains\": { \"evm\": [\"arbitrum\", \"arbitrumSepolia\"] }\r\n },\r\n \"plugins\": [\"@ai16z/plugin-evm\"],\r\n```\r\n",
+ "labels": [
+ {
+ "name": "bug",
+ "color": "d73a4a",
+ "description": "Something isn't working"
+ }
+ ],
+ "comments": []
+ }
+ ]
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "blockfer-rp",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/58490353?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg1NDAsIm5iZiI6MTczNDY0NzM0MCwicGF0aCI6Ii91LzU4NDkwMzUzIn0.C1-fpM9Tjh1-NfwBgUJq3HVX-3h5v7O-OmnqdfCdIZ8&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 0,
+ "commits": [],
+ "pull_requests": []
+ },
+ "issues": {
+ "total_opened": 1,
+ "opened": [
+ {
+ "number": 1235,
+ "title": "twitterShouldRespondTemplate Fails When Defined as a String in JSON Character Config",
+ "state": "OPEN",
+ "created_at": "2024-12-19T11:03:12Z",
+ "updated_at": "2024-12-19T13:47:16Z",
+ "body": "**Describe the bug**\r\n\r\nWhen defining a `twitterShouldRespondTemplate` in a character\u2019s JSON configuration file, the code attempts to invoke it as a function with `(validTargetUsersStr)`. Since JSON cannot store JavaScript functions, this causes runtime errors. Other templates like `twitterMessageHandlerTemplate` and `twitterPostTemplate` are handled purely as strings, so they work fine. The inconsistency leads to broken response generation when a JSON-defined `twitterShouldRespondTemplate` is present.\r\n\r\n**To Reproduce**\r\n\r\n1. **Create a character JSON file** (e.g., `adam.character.json`) that includes:\r\n ```json\r\n {\r\n \"name\": \"your-character-name\",\r\n \"clients\": [\"telegram\", \"twitter\"],\r\n \"modelProvider\": \"openai\",\r\n \"settings\": {\r\n \"secrets\": {\r\n \"TELEGRAM_BOT_TOKEN\": \"your_telegram_bot_token\",\r\n \"TWITTER_USERNAME\": \"user\",\r\n \"TWITTER_EMAIL\": \"email@proton.me\",\r\n \"TWITTER_PASSWORD\": \"your_twitter_password\",\r\n \"TWITTER_COOKIES\": \"[{\\\"key\\\":\\\"auth_token\\\",\\\"value\\\":\\\"your_auth_token\\\",\\\"domain\\\":\\\".twitter.com\\\"}, {\\\"key\\\":\\\"ct0\\\",\\\"value\\\":\\\"your_ct0_value\\\",\\\"domain\\\":\\\".twitter.com\\\"}, {\\\"key\\\":\\\"guest_id\\\",\\\"value\\\":\\\"v1%3A173451270913595996\\\",\\\"domain\\\":\\\".twitter.com\\\"}]\",\r\n \"TWITTER_TARGET_USERS\": \"user1,user2\"\r\n }\r\n },\r\n \"plugins\": [\r\n \"@ai16z/plugin-your-custom-plugin\"\r\n ],\r\n \"templates\": {\r\n \"twitterPostTemplate\": \"# Areas of Expertise\\n{{knowledge}}\\n\\n# About {{agentName}} (@{{twitterUserName}}):\\n{{bio}}\\n{{lore}}\\n{{topics}}\\n\\n{{providers}}\\n\\n{{characterPostExamples}}\\n\\n{{postDirections}}\\n\\n# Task: Generate a post in the voice and style and perspective of {{agentName}} @{{twitterUserName}}.\\nWrite a 1-3 sentence post that is {{adjective}} about {{topic}} (without mentioning {{topic}} directly), from the perspective of {{agentName}}. Do not add commentary or acknowledge this request, just write the post.\\nYour response should not contain any questions. Brief, concise statements only. The total character count MUST be less than {{maxTweetLength}}. No emojis. Use \\\\n\\\\n (double spaces) between statements.\",\r\n \"twitterMessageHandlerTemplate\": \"# Areas of Expertise\\n{{knowledge}}\\n\\n# About {{agentName}} (@{{twitterUserName}}):\\n{{bio}}\\n{{lore}}\\n{{topics}}\\n\\n{{providers}}\\n\\n{{characterPostExamples}}\\n\\n{{postDirections}}\\n\\nRecent interactions between {{agentName}} and other users:\\n{{recentPostInteractions}}\\n\\n{{recentPosts}}\\n\\n# Task: Generate a post/reply in the voice, style and perspective of {{agentName}} (@{{twitterUserName}}) while using the thread of tweets as additional context:\\nCurrent Post:\\n{{currentPost}}\\n\\nThread of Tweets You Are Replying To:\\n{{formattedConversation}}\\n\\n{{actions}}\\n# Task: Generate a post in the voice, style and perspective of {{agentName}} (@{{twitterUserName}}). You MUST include an action if the current post text includes a prompt that is similar to one of the available actions mentioned here:\\n{{actionNames}}\\nHere is the current post text again. Remember to include an action if the current post text includes a prompt that asks for one of the available actions mentioned above (does not need to be exact)\\n{{currentPost}}\\n\\nResponse format should be formatted in a JSON block like this:\\n```json\\n{ \\\"user\\\": \\\"{{agentName}}\\\", \\\"text\\\": \\\"string\\\", \\\"action\\\": \\\"string\\\" }\\n```\",\r\n \"twitterShouldRespondTemplate\": \"# INSTRUCTIONS: Determine if {{agentName}} (@{{twitterUserName}}) should respond to the message and participate in the conversation.\\n\\nResponse options are RESPOND, IGNORE and STOP.\\n\\nPRIORITY RULE: ALWAYS RESPOND to these users regardless of topic or message content: {{targetUsersStr}}. Topic relevance should be ignored for these users.\\n\\nFor other users:\\n- {{agentName}} should RESPOND to messages directed at them\\n- {{agentName}} should RESPOND to conversations relevant to their background\\n- {{agentName}} should IGNORE irrelevant messages\\n- {{agentName}} should IGNORE very short messages unless directly addressed\\n- {{agentName}} should STOP if asked to stop\\n- {{agentName}} should STOP if conversation is concluded\\n- {{agentName}} is in a room with other users and wants to be conversational, but not annoying.\\n\\n{{recentPosts}}\\n\\nIMPORTANT: For users not in the priority list, {{agentName}} (@{{twitterUserName}}) should err on the side of IGNORE rather than RESPOND if in doubt.\\n\\n{{recentPosts}}\\n\\nIMPORTANT: {{agentName}} (aka @{{twitterUserName}}) is particularly sensitive about being annoying, so if there is any doubt, it is better to IGNORE than to RESPOND.\\n\\n{{currentPost}}\\n\\nThread of Tweets You Are Replying To:\\n{{formattedConversation}}\\n\\n# INSTRUCTIONS: Respond with [RESPOND] if {{agentName}} should respond, or [IGNORE] if {{agentName}} should not respond to the last message and [STOP] if {{agentName}} should stop participating in the conversation.\\n\\nThe available options are [RESPOND], [IGNORE], or [STOP]. Choose the most appropriate option.\\nIf {{agentName}} is talking too much, you can choose [IGNORE]\\n\\nYour response must include one of the options.\"\r\n }\r\n }\r\n ```\r\n \r\n 2. **Run the agent** with this character file.\r\n 3. **Observe the failure**: The agent does not respond as expected because it attempts to call `twitterShouldRespondTemplate(validTargetUsersStr)` as a function, leading to errors since the template is defined as a string.\r\n\r\n**Expected behavior**\r\n\r\n- `twitterShouldRespondTemplate` should be handled consistently with other templates like `twitterMessageHandlerTemplate` and `twitterPostTemplate`.\r\n- If it\u2019s defined as a string, it should not be invoked as a function.\r\n- The code should either:\r\n - Treat all templates as strings and handle variable interpolation through `composeContext`, or\r\n - Allow defining templates as functions through a different configuration method (not JSON).\r\n \r\n **Additional context**\r\n\r\n- **Workaround:** Removing `twitterShouldRespondTemplate` from the JSON file allows the system to fallback to the built-in `twitterShouldRespondTemplate` function, which works as intended.\r\n- **Potential Fixes:**\r\n - **Option 1:** Modify the agent's code to treat `twitterShouldRespondTemplate` as a string if it's defined in the JSON, avoiding the function call.\r\n - **Option 2:** Allow templates to be defined as functions through a different configuration approach, such as a JavaScript/TypeScript file instead of JSON.\r\n - **Option 3:** Provide a hybrid approach where the JSON can reference external functions or use placeholders that `composeContext` can replace without needing to call them as functions.\r\n\r\n**Summary:**\r\n\r\n- `twitterShouldRespondTemplate` is treated differently in the code by attempting to invoke it as a function with `validTargetUsersStr`, whereas other templates are handled as plain strings.\r\n- Since JSON cannot store functions, defining `twitterShouldRespondTemplate` as a string in the JSON configuration leads to runtime errors and broken response logic.\r\n- To resolve the issue, either remove the custom `twitterShouldRespondTemplate` from the JSON to use the fallback function or adjust the code to handle `twitterShouldRespondTemplate` as a string, ensuring consistent template processing.\r\n\r\n",
+ "labels": [
+ {
+ "name": "bug",
+ "color": "d73a4a",
+ "description": "Something isn't working"
+ }
+ ],
+ "comments": []
+ }
+ ]
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "agyn-ub",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/142351559?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5MDAsIm5iZiI6MTczNDY0NzcwMCwicGF0aCI6Ii91LzE0MjM1MTU1OSJ9.SUWFDdwGMDAg49J9c0MRqPEYTaL1rH7ozBauxVHxoMg&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 0,
+ "commits": [],
+ "pull_requests": []
+ },
+ "issues": {
+ "total_opened": 1,
+ "opened": [
+ {
+ "number": 1234,
+ "title": "pnpm install shows errors",
+ "state": "OPEN",
+ "created_at": "2024-12-19T09:57:03Z",
+ "updated_at": "2024-12-19T14:33:05Z",
+ "body": "I did everything as in tutorial in official documentation. And I run pnpm install \r\n\u2502 node-pre-gyp info it worked if it ends with ok\r\n\u2502 node-pre-gyp info using node-pre-gyp@0.4.5\r\n\u2502 node-pre-gyp info using node@23.3.0 | win32 | x64\r\n\u2502 (node:14056) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead. \r\n\u2502 (Use `node --trace-deprecation ...` to show where the warning was created)\r\n\u2502 node-pre-gyp info check checked for \"C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\@discordjs\\opus\\prebu\u2026 \r\n\u2502 node-pre-gyp http GET https://github.com/discordjs/opus/releases/download/v0.9.0/opus-v0.9.0-node-v131-napi-v3-win32-x64-un\u2026 \r\n\u2502 node-pre-gyp ERR! install response status 404 Not Found on https://github.com/discordjs/opus/releases/download/v0.9.0/opus-\u2026 \r\n\u2502 node-pre-gyp WARN Pre-built binaries not installable for @discordjs/opus@0.9.0 and node@23.3.0 (node-v131 ABI, unknown) (fa\u2026 \r\n\u2502 node-pre-gyp WARN Hit error response status 404 Not Found on https://github.com/discordjs/opus/releases/download/v0.9.0/opu\u2026 \r\n\u2502 gyp info it worked if it ends with ok\r\n\u2502 gyp info using node-gyp@10.3.1\r\n\u2502 gyp info using node@23.3.0 | win32 | x64\r\n\u2502 gyp info ok\r\n\u2502 gyp info it worked if it ends with ok\r\n\u2502 gyp info using node-gyp@10.3.1\r\n\u2502 gyp info using node@23.3.0 | win32 | x64\r\n\u2502 gyp info find Python using Python version 3.13.1 found at \"C:\\Users\\agynb\\AppData\\Local\\Programs\\Python\\Python313\\python.ex\u2026 \r\n\u2502 gyp ERR! find VS\r\n\u2502 gyp ERR! find VS msvs_version not set from command line or npm config\r\n\u2502 gyp ERR! find VS VCINSTALLDIR not set, not running in VS Command Prompt\r\n\u2502 gyp ERR! find VS could not use PowerShell to find Visual Studio 2017 or newer, try re-running with '--loglevel silly' for m\u2026 \r\n\u2502 gyp ERR! find VS\r\n\u2502 gyp ERR! find VS Failure details: undefined\r\n\u2502 gyp ERR! find VS checking VS2022 (17.11.35327.3) found at:\r\n\u2502 gyp ERR! find VS \"C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\"\r\n\u2502 gyp ERR! find VS - found \"Visual Studio C++ core features\"\r\n\u2502 gyp ERR! find VS - missing any VC++ toolset\r\n\u2502 gyp ERR! find VS could not find a version of Visual Studio 2017 or newer to use\r\n\u2502 gyp ERR! find VS not looking for VS2017 as it is only supported up to Node.js 21\r\n\u2502 gyp ERR! find VS not looking for VS2017 as it is only supported up to Node.js 21\r\n\u2502 gyp ERR! find VS not looking for VS2017 as it is only supported up to Node.js 21\r\n\u2502 gyp ERR! find VS not looking for VS2015 as it is only supported up to Node.js 18\r\n\u2502 gyp ERR! find VS not looking for VS2013 as it is only supported up to Node.js 8\r\n\u2502 gyp ERR! find VS\r\n\u2502 gyp ERR! find VS **************************************************************\r\n\u2502 gyp ERR! find VS You need to install the latest version of Visual Studio\r\n\u2502 gyp ERR! find VS including the \"Desktop development with C++\" workload.\r\n\u2502 gyp ERR! find VS For more information consult the documentation at:\r\n\u2502 gyp ERR! find VS https://github.com/nodejs/node-gyp#on-windows\r\n\u2502 gyp ERR! find VS **************************************************************\r\n\u2502 gyp ERR! find VS\r\n\u2502 gyp ERR! configure error\r\n\u2502 gyp ERR! stack Error: Could not find any Visual Studio installation to use\r\n\u2502 gyp ERR! stack at VisualStudioFinder.fail (C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\node-gyp\\lib\\fi\u2026 \r\n\u2502 gyp ERR! stack at VisualStudioFinder.findVisualStudio (C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\nod\u2026 \r\n\u2502 gyp ERR! stack at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\r\n\u2502 gyp ERR! stack at async createBuildDir (C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\node-gyp\\lib\\confi\u2026 \r\n\u2502 gyp ERR! stack at async run (C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\node-gyp\\bin\\node-gyp.js:81:1\u2026 \r\n\u2502 gyp ERR! System Windows_NT 10.0.26100\r\n\u2502 gyp ERR! command \"C:\\\\Program Files\\\\nodejs\\\\node.exe\" \"C:\\\\Users\\\\agynb\\\\OneDrive\\\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\\\Eliza\\\\f1\\\\eliza\\\\node_mo\u2026 \r\n\u2502 gyp ERR! cwd C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\@discordjs\\opus\r\n\u2502 gyp ERR! node -v v23.3.0\r\n\u2502 gyp ERR! node-gyp -v v10.3.1\r\n\u2502 gyp ERR! not ok\r\n\u2502 node-pre-gyp ERR! build error\r\n\u2502 node-pre-gyp ERR! stack Error: Failed to execute 'C:\\Program Files\\nodejs\\node.exe C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eli\u2026 \r\n\u2502 node-pre-gyp ERR! stack at ChildProcess. (C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\@\u2026 \r\n\u2502 node-pre-gyp ERR! stack at ChildProcess.emit (node:events:513:28)\r\n\u2502 node-pre-gyp ERR! stack at maybeClose (node:internal/child_process:1101:16)\r\nnode_modules/canvas: Running install script, failed in 10.7s (skipped as optional)process:305:5)\r\n\u2502 node-pre-gyp ERR! System Windows_NT 10.0.26100\r\n\u2502 node-pre-gyp ERR! command \"C:\\\\Program Files\\\\nodejs\\\\node.exe\" \"C:\\\\Users\\\\agynb\\\\OneDrive\\\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\\\Eliza\\\\f1\\\\eliza\u2026 \r\n\u2502 node-pre-gyp ERR! cwd C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\@discordjs\\opus\r\n\u2502 node-pre-gyp ERR! node -v v23.3.0\r\n\u2502 node-pre-gyp ERR! node-pre-gyp -v v0.4.5\r\n\u2502 node-pre-gyp ERR! not ok\r\n\u2502 Failed to execute 'C:\\Program Files\\nodejs\\node.exe C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\node-g\u2026 \r\n\u2514\u2500 Failed in 10.4s at C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\@discordjs\\opus",
+ "labels": [
+ {
+ "name": "bug",
+ "color": "d73a4a",
+ "description": "Something isn't working"
+ }
+ ],
+ "comments": [
+ {
+ "author": "giorgosn",
+ "body": "are you using WSL 2?"
+ },
+ {
+ "author": "digitalsimboja",
+ "body": " ~/dev/eliza #v0.1.6-alpha.4 pnpm install \u2714 23.3.0 \u2b22 11:00:24 AM \r\nScope: all 46 workspace projects\r\nLockfile is up to date, resolution step is skipped\r\n\u2009ERR_PNPM_UNSUPPORTED_ENGINE\u2009 Unsupported environment (bad pnpm and/or Node.js version)\r\n\r\nYour Node version is incompatible with \"@lens-protocol/client@2.2.0(@lens-protocol/metadata@1.2.0)(ethers@6.13.4)(react@18.3.1)\".\r\n\r\nExpected version: >=18 <21\r\nGot: v23.3.0\r\n\r\nThis is happening because the package's manifest has an engines.node field specified.\r\nTo fix this issue, install the required Node version.\r\n ~/dev/eliza #v0.1.6-alpha.4 \r\n \r\n I get this issue as well"
+ },
+ {
+ "author": "agyn-ub",
+ "body": "> are you using WSL 2?\r\n\r\nno. I am in linux pop_os"
+ },
+ {
+ "author": "agyn-ub",
+ "body": "I run pnpm install on lunix the same error\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/pitch.o\r\n\u2502 rm -f Release/obj.target/deps/opus.a Release/obj.target/deps/opus.a.ar-file-list; mkdir -p `dirname Release/obj.target/deps/opus.a`\r\n\u2502 ar crs Release/obj.target/deps/opus.a @Release/obj.target/deps/opus.a.ar-file-list\r\n\u2502 COPY Release/opus.a\r\n\u2502 CXX(target) Release/obj.target/opus/src/node-opus.o\r\n\u2502 : warning: ISO C++11 requires whitespace after the macro name\r\n\u2502 ../src/node-opus.cc:1:10: fatal error: napi.h: No such file or directory\r\n\u2502 1 | #include \"napi.h\"\r\n\u2502 | ^~~~~~~~\r\n\u2502 compilation terminated.\r\n\u2502 make: *** [opus.target.mk:157: Release/obj.target/opus/src/node-opus.o] Error 1\r\n\u2502 make: Leaving directory '/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus/build'\r\n\u2502 gyp ERR! build error \r\n\u2502 gyp ERR! stack Error: `make` failed with exit code: 2\r\n\u2502 gyp ERR! stack at ChildProcess. (/home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/lib/build.js:216:23)\r\n\u2502 gyp ERR! System Linux 6.9.3-76060903-generic\r\n\u2502 gyp ERR! command \"/home/agyn/.nvm/versions/node/v23.3.0/bin/node\" \"/home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js\" \"build\" \"--fallback-to-build\" \"--modul\u2026\r\n\u2502 gyp ERR! cwd /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\n\u2502 gyp ERR! node -v v23.3.0\r\n\u2502 gyp ERR! node-gyp -v v10.3.1\r\n\u2502 gyp ERR! not ok \r\n\u2502 node-pre-gyp ERR! build error \r\n\u2502 node-pre-gyp ERR! stack Error: Failed to execute '/home/agyn/.nvm/versions/node/v23.3.0/bin/node /home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js build --f\u2026\r\n\u2502 node-pre-gyp ERR! stack at ChildProcess. (/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/node-pre-gyp/lib/util/compile.js:85:20)\r\n\u2502 node-pre-gyp ERR! stack at ChildProcess.emit (node:events:513:28)\r\n\u2502 node-pre-gyp ERR! stack at maybeClose (node:internal/child_process:1101:16)\r\n\u2502 node-pre-gyp ERR! stack at ChildProcess._handle.onexit (node:internal/child_process:305:5)\r\n\u2502 node-pre-gyp ERR! System Linux 6.9.3-76060903-generic\r\n\u2502 node-pre-gyp ERR! command \"/home/agyn/.nvm/versions/node/v23.3.0/bin/node\" \"/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus/node_modules/.bin/node-pre-gyp\" \"instal\u2026\r\n\u2502 node-pre-gyp ERR! cwd /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\n\u2502 node-pre-gyp ERR! node -v v23.3.0\r\n\u2502 node-pre-gyp ERR! node-pre-gyp -v v0.4.5\r\n\u2502 node-pre-gyp ERR! not ok \r\n\u2502 Failed to execute '/home/agyn/.nvm/versions/node/v23.3.0/bin/node /home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/home\u2026\r\n\u2514\u2500 Failed in 29.7s at /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\n\u2009ELIFECYCLE\u2009 Command failed with exit code 1."
+ },
+ {
+ "author": "agyn-ub",
+ "body": "> ~/dev/eliza #v0.1.6-alpha.4 pnpm install \u2714 23.3.0 \u2b22 11:00:24 AM Scope: all 46 workspace projects Lockfile is up to date, resolution step is skipped \u2009ERR_PNPM_UNSUPPORTED_ENGINE\u2009 Unsupported environment (bad pnpm and/or Node.js version)\r\n> \r\n> Your Node version is incompatible with \"@lens-protocol/client@2.2.0(@lens-protocol/metadata@1.2.0)(ethers@6.13.4)(react@18.3.1)\".\r\n> \r\n> Expected version: >=18 <21 Got: v23.3.0\r\n> \r\n> This is happening because the package's manifest has an engines.node field specified. To fix this issue, install the required Node version. ~/dev/eliza #v0.1.6-alpha.4\r\n> \r\n> I get this issue as well\r\n\r\nthe same error\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/silk/enc_API.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/silk/biquad_alt.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/silk/quant_LTP_gains.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/silk/resampler_private_down_FIR.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/silk/ana_filt_bank_1.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/silk/stereo_MS_to_LR.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/silk/decode_indices.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/rate.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/entdec.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/modes.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/celt_lpc.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/laplace.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/cwrs.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/celt.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/entcode.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/celt_decoder.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/celt_encoder.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/mdct.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/quant_bands.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/vq.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/bands.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/kiss_fft.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/entenc.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/mathops.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/pitch.o\r\n\u2502 rm -f Release/obj.target/deps/opus.a Release/obj.target/deps/opus.a.ar-file-list; mkdir -p `dirname Release/obj.target/deps/opus.a`\r\n\u2502 ar crs Release/obj.target/deps/opus.a @Release/obj.target/deps/opus.a.ar-file-list\r\n\u2502 COPY Release/opus.a\r\n\u2502 CXX(target) Release/obj.target/opus/src/node-opus.o\r\n\u2502 : warning: ISO C++11 requires whitespace after the macro name\r\n\u2502 ../src/node-opus.cc:1:10: fatal error: napi.h: No such file or directory\r\n\u2502 1 | #include \"napi.h\"\r\n\u2502 | ^~~~~~~~\r\n\u2502 compilation terminated.\r\n\u2502 make: *** [opus.target.mk:155: Release/obj.target/opus/src/node-opus.o] Error 1\r\n\u2502 make: Leaving directory '/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus/build'\r\n\u2502 gyp ERR! build error \r\n\u2502 gyp ERR! stack Error: `make` failed with exit code: 2\r\n\u2502 gyp ERR! stack at ChildProcess. (/home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/lib/build.js:216:23)\r\n\u2502 gyp ERR! System Linux 6.9.3-76060903-generic\r\n\u2502 gyp ERR! command \"/home/agyn/.nvm/versions/node/v20.18.1/bin/node\" \"/home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js\" \"build\" \"--fallback-to-build\" \"--modu\u2026\r\n\u2502 gyp ERR! cwd /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\n\u2502 gyp ERR! node -v v20.18.1\r\n\u2502 gyp ERR! node-gyp -v v10.3.1\r\n\u2502 gyp ERR! not ok \r\n\u2502 node-pre-gyp ERR! build error \r\n\u2502 node-pre-gyp ERR! stack Error: Failed to execute '/home/agyn/.nvm/versions/node/v20.18.1/bin/node /home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js build --\u2026\r\n\u2502 node-pre-gyp ERR! stack at ChildProcess. (/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/node-pre-gyp/lib/util/compile.js:85:20)\r\n\u2502 node-pre-gyp ERR! stack at ChildProcess.emit (node:events:518:28)\r\n\u2502 node-pre-gyp ERR! stack at maybeClose (node:internal/child_process:1104:16)\r\n\u2502 node-pre-gyp ERR! stack at ChildProcess._handle.onexit (node:internal/child_process:304:5)\r\n\u2502 node-pre-gyp ERR! System Linux 6.9.3-76060903-generic\r\n\u2502 node-pre-gyp ERR! command \"/home/agyn/.nvm/versions/node/v20.18.1/bin/node\" \"/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus/node_modules/.bin/node-pre-gyp\" \"insta\u2026\r\n\u2502 node-pre-gyp ERR! cwd /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\n\u2502 node-pre-gyp ERR! node -v v20.18.1\r\n\u2502 node-pre-gyp ERR! node-pre-gyp -v v0.4.5\r\n\u2502 node-pre-gyp ERR! not ok \r\n\u2502 Failed to execute '/home/agyn/.nvm/versions/node/v20.18.1/bin/node /home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/hom\u2026\r\n\u2514\u2500 Failed in 38.1s at /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\nnode_modules/canvas: Running install script, done in 21.5s\r\n\u2009ELIFECYCLE\u2009 Command failed with exit code 1."
+ },
+ {
+ "author": "agyn-ub",
+ "body": "> ~/dev/eliza #v0.1.6-alpha.4 pnpm install \u2714 23.3.0 \u2b22 11:00:24 AM Scope: all 46 workspace projects Lockfile is up to date, resolution step is skipped \u2009ERR_PNPM_UNSUPPORTED_ENGINE\u2009 Unsupported environment (bad pnpm and/or Node.js version)\r\n> \r\n> Your Node version is incompatible with \"@lens-protocol/client@2.2.0(@lens-protocol/metadata@1.2.0)(ethers@6.13.4)(react@18.3.1)\".\r\n> \r\n> Expected version: >=18 <21 Got: v23.3.0\r\n> \r\n> This is happening because the package's manifest has an engines.node field specified. To fix this issue, install the required Node version. ~/dev/eliza #v0.1.6-alpha.4\r\n> \r\n> I get this issue as well\r\n\r\nthank you so much my friend, I have downgraded node version to 18 is command executed ok. It is confusing because in the documentation were written that it must be node version 23+ "
+ },
+ {
+ "author": "digitalsimboja",
+ "body": "> > ~/dev/eliza #v0.1.6-alpha.4 pnpm install \u2714 23.3.0 \u2b22 11:00:24 AM Scope: all 46 workspace projects Lockfile is up to date, resolution step is skipped \u2009ERR_PNPM_UNSUPPORTED_ENGINE\u2009 Unsupported environment (bad pnpm and/or Node.js version)\r\n> > Your Node version is incompatible with \"@lens-protocol/client@2.2.0(@lens-protocol/metadata@1.2.0)(ethers@6.13.4)(react@18.3.1)\".\r\n> > Expected version: >=18 <21 Got: v23.3.0\r\n> > This is happening because the package's manifest has an engines.node field specified. To fix this issue, install the required Node version. ~/dev/eliza #v0.1.6-alpha.4\r\n> > I get this issue as well\r\n> \r\n> thank you so much my friend, I have downgraded node version to 18 is command executed ok. It is confusing because in the documentation were written that it must be node version 23+\r\n\r\nI have a hell of dependencies issues. How did you downgrade yours to version 18 without conflicting with other projects? Did you change the node engine specifications from 23+ to 18?"
+ }
+ ]
+ }
+ ]
+ },
+ "engagement": {
+ "total_comments": 7,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "vpavlin",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/4759808?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5MDAsIm5iZiI6MTczNDY0NzcwMCwicGF0aCI6Ii91LzQ3NTk4MDgifQ.FCRt6CJ8K5Ci3EOPe8eefUF7mzywKQroiMckMCwlphE&u=d045a41a43fa2deabfc3115236cc1e8b0509b164&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 0,
+ "commits": [],
+ "pull_requests": []
+ },
+ "issues": {
+ "total_opened": 2,
+ "opened": [
+ {
+ "number": 1233,
+ "title": "agent package not updated on npmjs.org",
+ "state": "OPEN",
+ "created_at": "2024-12-19T08:08:23Z",
+ "updated_at": "2024-12-19T08:08:23Z",
+ "body": "**Describe the bug**\r\n\r\nSeems like @ai16z/agent has not been updated for some time https://www.npmjs.com/package/@ai16z/agent\r\n\r\n**To Reproduce**\r\n\r\nSee https://www.npmjs.com/package/@ai16z/agent?activeTab=versions\r\n\r\n**Expected behavior**\r\n\r\nRelease agent package regularly and use it in `eliza-starter` (as it seems like a lot of stuff is just copy&paste)\r\n\r\n**Screenshots**\r\n\r\n\r\n\r\n**Additional context**\r\n\r\n\r\n",
+ "labels": [
+ {
+ "name": "bug",
+ "color": "d73a4a",
+ "description": "Something isn't working"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "number": 1232,
+ "title": "Create a nightly build as next version",
+ "state": "OPEN",
+ "created_at": "2024-12-19T08:06:40Z",
+ "updated_at": "2024-12-19T08:06:40Z",
+ "body": "**Is your feature request related to a problem? Please describe.**\r\n\r\nI'd like to use `eliza-starter` with the latest providers and features, but that means I have to wait until new version is released (weekly?). It would be great to setup a `nightly` builds from `develop` and push them to npmjs.org as `next` version, so that people can easily experiment with latest features and get ready for new releases\r\n\r\n**Describe the solution you'd like**\r\n\r\nSetup an automation to release nightly to from `develop` to `next`\r\n\r\n**Describe alternatives you've considered**\r\n\r\n:shrug: \r\n\r\n**Additional context**\r\n\r\n\r\n",
+ "labels": [
+ {
+ "name": "enhancement",
+ "color": "a2eeef",
+ "description": "New feature or request"
+ }
+ ],
+ "comments": []
+ }
+ ]
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "madjin",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/32600939?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91LzMyNjAwOTM5In0.7vW8aT743AJl04-9zh_3YYJMLQj9qo88pIJX0PCwUco&u=cdcf89f44c7a50906c7a80d889efa85023af2049&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 0,
+ "commits": [],
+ "pull_requests": []
+ },
+ "issues": {
+ "total_opened": 4,
+ "opened": [
+ {
+ "number": 1224,
+ "title": "feat: Auto-Documentation Synchronization Bot",
+ "state": "OPEN",
+ "created_at": "2024-12-19T02:03:53Z",
+ "updated_at": "2024-12-19T02:03:53Z",
+ "body": "## **Overview**\r\nCreate an AI assistant to maintain documentation consistency and generate documentation from code.\r\n\r\n## **Current Situation**\r\n\r\nDocumentation gaps often go unnoticed, leading to challenges during onboarding, feature development, and integrations. Outdated information can result in inefficiencies, with developers spending unnecessary time answering questions that could otherwise be handled by AI if up-to-date documentation were available\r\n\r\n## **Proposed Solution**\r\n\r\nFirst finish this issue: https://github.com/ai16z/eliza/issues/1110\r\nNext document plugins so that we have a quality reference: https://github.com/ai16z/eliza/issues/1200\r\n\r\nThen build a documentation bot that:\r\n1. Tracks and reports TODO comments in code (automate this flow https://github.com/ai16z/eliza/issues/1223)\r\n2. Tracks and reports missing plugin docs: (automate this https://github.com/ai16z/eliza/issues/1200)\r\n3. Tracks commits / issues / PRs and flags docs pages that might need updating\r\n4. Suggest documentation updates of those pages\r\n\r\n## **Technical Details**\r\n\r\n\r\n",
+ "labels": [
+ {
+ "name": "documentation",
+ "color": "0075ca",
+ "description": "Improvements or additions to documentation"
+ },
+ {
+ "name": "enhancement",
+ "color": "a2eeef",
+ "description": "New feature or request"
+ },
+ {
+ "name": "automation",
+ "color": "FC49CF",
+ "description": ""
+ }
+ ],
+ "comments": []
+ },
+ {
+ "number": 1223,
+ "title": "chore: Review TODO notes",
+ "state": "OPEN",
+ "created_at": "2024-12-19T01:50:45Z",
+ "updated_at": "2024-12-19T01:51:37Z",
+ "body": "**Describe the bug**\r\n\r\nSee what the TODO notes are about, update their status or document as an issue if needed\r\n\r\n- [ ] agent/src/index.ts\r\n- [ ] packages/core/src/models.ts\r\n- [ ] packages/core/src/runtime.ts\r\n- [ ] packages/core/src/environment.ts\r\n- [ ] packages/core/src/memory.ts\r\n- [ ] packages/plugin-starknet/src/providers/trustScoreProvider.ts\r\n- [ ] packages/plugin-starknet/src/providers/token.ts\r\n- [ ] packages/plugin-starknet/src/actions/takeOrder.ts\r\n- [ ] packages/plugin-starknet/src/actions/transfer.ts\r\n- [ ] packages/plugin-starknet/readme.md\r\n- [ ] packages/adapter-sqlite/src/sqliteTables.ts\r\n- [ ] packages/adapter-sqljs/src/index.ts\r\n- [ ] packages/adapter-sqljs/src/sqliteTables.ts\r\n- [ ] packages/plugin-node/src/services/transcription.ts\r\n- [ ] packages/plugin-node/src/services/browser.ts\r\n- [ ] packages/client-twitter/src/search.ts\r\n- [ ] packages/client-twitter/src/base.ts\r\n- [ ] packages/plugin-solana/src/evaluators/trust.ts\r\n- [ ] packages/plugin-solana/src/providers/trustScoreProvider.ts\r\n- [ ] packages/plugin-solana/src/actions/swap.ts\r\n- [ ] packages/plugin-solana/src/actions/takeOrder.ts\r\n- [ ] packages/plugin-evm/src/actions/bridge.ts\r\n- [ ] packages/plugin-evm/src/actions/swap.ts\r\n- [ ] packages/plugin-flow/src/types/fcl.d.ts\r\n- [ ] packages/plugin-flow/src/actions/transfer.ts\r\n- [ ] packages/plugin-nft-generation/src/index.ts\r\n- [ ] packages/plugin-image-generation/src/index.ts\r\n- [ ] packages/client-farcaster/src/client.ts\r\n- [ ] packages/adapter-supabase/src/index.ts\r\n- [ ] packages/client-lens/src/actions.ts\r\n- [ ] packages/client-lens/src/client.ts\r\n- [ ] packages/client-lens/src/interactions.ts\r\n- [ ] packages/client-discord/src/utils.ts\r\n- [ ] packages/client-discord/src/attachments.ts\r\n- [ ] packages/client-discord/src/messages.ts\r\n- [ ] packages/client-discord/src/actions/chat_with_attachments.ts\r\n- [ ] packages/client-discord/src/actions/summarize_conversation.ts\r\n- [ ] packages/client-slack/src/events.ts\r\n\r\n\r\n**To Reproduce**\r\n\r\nTo find the files to fix:\r\n\r\n`grep -ro \"TODO\" --exclude-dir=node_modules --exclude-dir=dist | uniq` \r\n\r\nSome examples `grep -roP \"TODO\\s*.*\" --exclude-dir=node_modules`\r\n```\r\nagent/src/index.ts:TODO: Add Slack client to the list\r\npackages/core/dist/index.js:TODO: check\r\npackages/core/dist/index.js:TODO: ?download=true\r\npackages/client-discord/src/utils.ts:TODO: clean this up\r\npackages/client-discord/src/attachments.ts:TODO: clean this up\r\npackages/client-discord/src/messages.ts:TODO: This is throwing an error but seems to work?\r\npackages/client-discord/src/messages.ts:TODO: Move to attachments manager\r\npackages/client-discord/src/actions/chat_with_attachments.ts:TODO: make this dynamic and generic\r\npackages/client-discord/src/actions/summarize_conversation.ts:TODO: parse start and end into timestamps\r\npackages/client-slack/src/events.ts:TODO: Implement reaction handling\r\n```\r\n\r\n**Expected behavior**\r\n\r\ngithub issue or cleaning up the code\r\n\r\n**Screenshots**\r\n\r\n![image](https://github.com/user-attachments/assets/ed48b42c-7701-4432-a284-5e8143f93227)\r\n\r\n\r\n**Additional context**\r\n\r\n\r\n",
+ "labels": [
+ {
+ "name": "bug",
+ "color": "d73a4a",
+ "description": "Something isn't working"
+ },
+ {
+ "name": "documentation",
+ "color": "0075ca",
+ "description": "Improvements or additions to documentation"
+ },
+ {
+ "name": "good first issue",
+ "color": "7057ff",
+ "description": "Good for newcomers"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "number": 1222,
+ "title": "chore: Keeps README translations synchronized",
+ "state": "OPEN",
+ "created_at": "2024-12-19T00:33:42Z",
+ "updated_at": "2024-12-19T00:33:43Z",
+ "body": "**Is your feature request related to a problem? Please describe.**\r\n\r\nThere are now a lot of language translated READMEs in the repo. If we implement a change in one, we have to manually cascade the changes in order.\r\n\r\n**Describe the solution you'd like**\r\n\r\nScript that uses AI (ollama / openai) that cascades changes when the english README.md file changes. Translates / updates all the other README files. Github CI would be a nice touch too\r\n\r\n**Describe alternatives you've considered**\r\n\r\n**Additional context**\r\n\r\n![image](https://github.com/user-attachments/assets/72cc29ce-6a5d-4cbc-9d6b-b6f07c09f399)\r\n",
+ "labels": [
+ {
+ "name": "documentation",
+ "color": "0075ca",
+ "description": "Improvements or additions to documentation"
+ },
+ {
+ "name": "good first issue",
+ "color": "7057ff",
+ "description": "Good for newcomers"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "number": 1221,
+ "title": "feat: Eliza Code Assistant default characterfile",
+ "state": "OPEN",
+ "created_at": "2024-12-19T00:21:13Z",
+ "updated_at": "2024-12-19T08:08:35Z",
+ "body": "**Overview**\r\nCreate an AI-powered development guide bot that can assist new contributors and help maintainers by leveraging repository history and documentation. This can be a starter file that teaches people about Eliza as soon as they run Eliza.\r\n\r\n**Current Situation**\r\n- New contributors often ask similar questions in discord / twitter\r\n- Repository knowledge is spread across many files and commit history\r\n- Code review assignments are manual and don't always match expertise\r\n\r\n**Proposed Solution**\r\nBuild an agent that:\r\n1. Answers FAQ-style questions using repo knowledge as recommended first step\r\n2. Suggests relevant examples based on current work\r\n3. Guides contributors to relevant documentation/contributors with answers\r\n\r\n**Technical Implementation**\r\n- Create an eliza characterfile template\r\n - https://elizagen.howieduhzit.best/\r\n- Ingest knowledge about github (prevent duplicate issues, find answers, suggest new issue)\r\n - https://ai16z.github.io/data/daily/contributors.json\r\n - https://ai16z.github.io/data/daily/summary.json\r\n - https://ai16z.github.io/data/daily/summary.md\r\n - https://ai16z.github.io/data/weekly/contributors.json\r\n - https://ai16z.github.io/data/monthly/contributors.json\r\n- Ingest docs + FAQ from discord (https://github.com/ai16z/eliza/issues/1044)\r\n - https://ai16z.github.io/eliza/community/Discord/\r\n\r\n**Integration Points (IDEAS)**\r\n- Discord code assistant\r\n- Website frontend (eliza.gg)\r\n",
+ "labels": [
+ {
+ "name": "documentation",
+ "color": "0075ca",
+ "description": "Improvements or additions to documentation"
+ },
+ {
+ "name": "enhancement",
+ "color": "a2eeef",
+ "description": "New feature or request"
+ },
+ {
+ "name": "Bounty",
+ "color": "d93f0b",
+ "description": "Use this to assign a bounty to an issue"
+ }
+ ],
+ "comments": [
+ {
+ "author": "maq796113",
+ "body": "how good is the bounty?"
+ }
+ ]
+ }
+ ]
+ },
+ "engagement": {
+ "total_comments": 1,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ }
+]
\ No newline at end of file
diff --git a/data/daily/combined.json b/data/daily/combined.json
index 6766926..6d5457b 100644
--- a/data/daily/combined.json
+++ b/data/daily/combined.json
@@ -3,7 +3,7 @@
"contributor": "odilitime",
"score": 0,
"summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/16395496?u=45c152d8433e37c62520e66c0dd6d754ccf3eaf4&v=4",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/16395496?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0MjAsIm5iZiI6MTczNDY0NzIyMCwicGF0aCI6Ii91LzE2Mzk1NDk2In0.AHDvuRgPHYO0i8IDYNzSfDB3Ae2PlvNoeRcGjB_wn9Q&u=45c152d8433e37c62520e66c0dd6d754ccf3eaf4&v=4",
"activity": {
"code": {
"total_commits": 0,
@@ -11,143 +11,245 @@
"commits": [],
"pull_requests": [
{
- "number": 1210,
- "title": "feat: loading characters from db at load and runtime (conflicts resolved)",
- "state": "OPEN",
- "merged": false,
- "created_at": "2024-12-18T18:10:29Z",
- "updated_at": "2024-12-18T18:25:06Z",
- "body": "Originally #551, this is a resubmission\r\n\r\n\r\n\r\n# Relates to:\r\nLoading Characters from db(sqlite/postgres) during runtime (via a REST API call) and\r\nduring start/load time.\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n_Medium_\r\nNone of these changes will affect existing workflow as its handled by env variables\r\nFETCH_FROM_DB (bool) - default: null/false - For loading characters from DB\r\nAGENT_RUNTIME_MANAGEMENT (bool) - default: null/false - For loading characters from Db at runtime\r\n\r\nFrom security standpoint, all character specific secrets (EG: TWITTER_PASSWORD or OPENAI_API_KEY) is AES-256 encrypted and stored in DB\r\n\r\n\r\n\r\n# Background\r\nFor a production ready - multi-character Eliza setup, we want to load new characters in runtime via API calls.\r\nWe do not want to restart the Eliza server for each new character.\r\n\r\n_ASSUMPTION:_ \r\nAn api or script exists to store the characters in DB.\r\nThe api uses the same stringToUUID method to create consistent UUIDs for a character and store in DB.\r\n\r\n## What does this PR do?\r\n- Allows loading characters from DB during start\r\n- Allows loading characters via REST API from DB during runtime\r\n- The characters are stored in TEXT/JSONB format - similar to the character Agent file in sqlite and postgres respectively\r\n- Securely encrypts each character's secrets using AES-256 encryption and then stores in DB (Decrypt after fetch)\r\n- Proper error handling for all scenarios \r\n - Character already loaded in runtime\r\n - Character does not exist in db\r\n\r\n## What kind of change is this?\r\nThis is a new Feature\r\n\r\nWhy?\r\nCurrently \r\n1) For adding any new agent, we need to restart the Eliza server => All the agents and its clients are loaded again - All previous tweets (incase of twitter client), interactions are processed again. Any existing direct or telegram conversation is lost. \r\n2) Not a straight-forward mechanism to add new agents - Now with a REST API - load new agents.\r\n\r\nWhy are we doing this?\r\nTo take a step towards multi-character production setup\r\n\r\n### Code Changes made and why?\r\n1. **Created a new table in postgres and sqlite** - Added in the seed file/script of both DBs\r\n`\r\nexport type CharacterTable = {\r\n id: UUID; // created from stringToUUID - unique and consistent for name\r\n name: string;\r\n characterState: Character; // A JSONB or TEXT - that maps the character\r\n secretsIV?: Secrets; // Initialisation Vector for each secrets\r\n};\r\n`\r\n**Also added the above in packages/core/src/types.ts**\r\n2. **in SqliteAdapter and PostgresAdapter** - created a new function to load from this characters table\r\n3. **in Agents/src/index.ts** -> \r\n- Assign Directclient to a global variable - along with set and get methods. This is to allow the same direct client be used for character(agent) runtime creation\r\n- A function loadCharactersFromDb loadCharactersFromDb(\r\n characterNames?: string\r\n ): Promise \r\n - if any characterNames argument received, it fetches only those characters from db\r\n - else fetches all characters\r\n - This handles encryption and decryption of secrets if secrets are present in a character\r\n - uses env.ENCRYPTION_KEY\r\n- An express server\r\n - The server starts only when the env AGENT_RUNTIME_MANAGEMENT == true\r\n - _Why not use the same express server in DirectClient?_ DirectClient does not have access to the DB methods and all the agent-specific handling methods\r\n - ENDPOINT: \"/load/:agentName\" METHOD: Post\r\n - PORT: default. - 3001, overwritten by env AGENT_PORT\r\n4. **in packages/client-direct/src/index.ts**\r\n- Added ENDPOINT: \"/load/:agentName\" METHOD: Post\r\n - This endpoint (is a proxy) that routes request to the agent server's route\r\n - Before proxying, checks if AGENT_RUNTIME_MANAGEMENT ==true and if agents already in runtime\r\n5. created a file **packages/core/src/crypt.ts**\r\n- This handles the encryption and decryption methods\r\n6. created scripts that parses a character json file or all files in a folder and inserts in DB\r\n- Location: scripts/importCharactersInDB/[postgres/sqlite]/insertInDb.js\r\nRequires env variable\r\n`\r\nPOSTGRES_URL= # if postgres\r\nENCRYPTION_KEY=\"\"\r\nINPUT_PATH=characters # the folder path to load the characters from\r\nSQLITE_DB_PATH= #if you want to change db path Default: agent/data/db.sqlite\r\n`\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\nNot needed necessarily.\r\nNew ENV variables and explanations are added in .env.example\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\nI have tested the scenarios in detailed testing steps in both sqlite and postgres.\r\n\r\n## Where should a reviewer start?\r\n- agent/src/index.js \r\n- Line 418 and 531\r\npackages/client-direct/src/index.js\r\n- Line 271\r\n\r\n## Detailed testing steps\r\n**INIT STEP:** \r\n1. creating character table(use the schema.sql or sqliteTables.ts ) \r\n2. loading characters in DB (used the above mentioned scripts in `scripts/importCharactersInDB/[postgres/sqlite]/insertInDb.js` - \r\n - also added to the characters tate and trump - TWITTER_USERNAME, TWITTER_PASSWORD, TWITTER_EMAIL to its settings.secrets and twitter to client) to test secrets encryption and decryption\r\n\r\n**I have tested the following scenarios**\r\n1. Fetching from database during start\r\n- set env FETCH_FROM_DB=true\r\n- `pnpm start`\r\n- Will function as usual\r\n- if we want to test postgres, set env POSTGRES_URL=''\r\n2. Loading an agent during runtime\r\n- set env FETCH_FROM_DB=false #if true, we can't test load as all characters in db will be loaded\r\n- set env AGENT_RUNTIME_MANAGEMENT=true\r\n- set env ENCRYPTION_KEY= #use the same encryption key used in insertInDB.js script\r\n- set env AGENT_PORT=4000 #can be empty if we want to pick default port 3001\r\n`pnpm start`\r\n- This will load with the default character Eliza\r\n- `curl --location --request POST 'http://localhost:3000/load/trump'` - replace port and character name if using different characters\r\n- SUB SCENARIO 1: agent is loaded and we get success code 200\r\n- SUB SCENARIO 2: agent is already loaded and we get error code 409\r\n- SUB SCENARIO 3: agent does not exist in db and we get error code 404\r\n- SUB SCENARIO 4: Error during agent load - like incorrect twitter - error code 500\r\n- if we want to test postgres, set env POSTGRES_URL=''\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "number": 1250,
+ "title": "fix: Fix local_llama key warning",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T21:39:36Z",
+ "updated_at": "2024-12-19T22:07:08Z",
+ "body": "# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nfix scary start up warnings for firing it up out of the box\r\n\r\n```\r\n [\"\u25ce DirectClient constructor\"] \r\n\r\n [\"\u26d4 Failed to get token - unsupported model provider: llama_local\"] \r\n\r\n \u26d4 ERRORS\r\n Error starting agent for character Eliza: \r\n {} \r\n\r\n [\"\u26d4 Error: Failed to get token - unsupported model provider: llama_local\"] \r\n\r\n \u26d4 ERRORS\r\n Error starting agents: \r\n {} \r\n\r\n [\"\u25ce Run `pnpm start:client` to start the client and visit the outputted URL (http://localhost:5173) to chat with your agents\"] \r\n\r\n```\r\n\r\n## What kind of change is this?\r\n\r\nImprovements (misc. changes to existing features)\r\n\r\n## Why are we doing this? Any context or related work?\r\n\r\nImproved new developer experience, reduce confusion\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.",
"files": [
- {
- "path": ".env.example",
- "additions": 7,
- "deletions": 0
- },
{
"path": "agent/src/index.ts",
- "additions": 199,
- "deletions": 0
- },
+ "additions": 4,
+ "deletions": 1
+ }
+ ],
+ "reviews": [
{
- "path": "packages/adapter-postgres/schema.sql",
- "additions": 9,
- "deletions": 0
- },
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM!"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "number": 1219,
+ "title": "fix: postgres needs the user to exist before you can add a participant",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T00:06:37Z",
+ "updated_at": "2024-12-19T02:09:16Z",
+ "body": "# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nwaits for users to be added before proceeding to adding participants\r\n\r\nalso moves the db check up before doing any db things\r\n\r\n## What kind of change is this?\r\n\r\nBug fixes (non-breaking change which fixes an issue)\r\n\r\n## Why are we doing this? Any context or related work?\r\n\r\n```\r\n [\"\u25ce Room c6dc9108-8990-0d80-a635-98d3a928f4e4 created successfully.\"] \r\n\r\nError adding participant error: insert or update on table \"participants\" violates foreign key constraint \"participants_userId_fkey\"\r\n at /root/eliza-odi/node_modules/pg-pool/index.js:45:11\r\n at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\r\n at async file:///root/eliza-odi/packages/adapter-postgres/dist/index.js:822:17\r\n at async PostgresDatabaseAdapter.withRetry (file:///root/eliza-odi/packages/adapter-postgres/dist/index.js:67:24)\r\n at async CircuitBreaker.execute (file:///root/eliza-odi/packages/core/dist/index.js:93:28)\r\n at async PostgresDatabaseAdapter.withCircuitBreaker (file:///root/eliza-odi/packages/core/dist/index.js:383:20)\r\n at async AgentRuntime.ensureParticipantExists (file:///root/eliza-odi/packages/core/dist/index.js:3661:13) {\r\n length: 305,\r\n severity: 'ERROR',\r\n code: '23503',\r\n detail: 'Key (userId)=(c6dc9108-8990-0d80-a635-98d3a928f4e4) is not present in table \"accounts\".',\r\n hint: undefined,\r\n position: undefined,\r\n internalPosition: undefined,\r\n internalQuery: undefined,\r\n where: undefined,\r\n schema: 'public',\r\n table: 'participants',\r\n column: undefined,\r\n dataType: undefined,\r\n constraint: 'participants_userId_fkey',\r\n file: 'ri_triggers.c',\r\n line: '2608',\r\n routine: 'ri_ReportViolation'\r\n}\r\n [\"\u2713 User WokeMindVirus created successfully.\"]\r\n```\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n",
+ "files": [
{
- "path": "packages/adapter-postgres/src/index.ts",
- "additions": 48,
- "deletions": 1
- },
+ "path": "packages/core/src/runtime.ts",
+ "additions": 8,
+ "deletions": 5
+ }
+ ],
+ "reviews": [
{
- "path": "packages/adapter-sqlite/src/index.ts",
- "additions": 56,
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM!"
+ }
+ ],
+ "comments": [
+ {
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1219?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAttention: Patch coverage is `0%` with `6 lines` in your changes missing coverage. Please review.\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1219?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Patch % | Lines |\n|---|---|---|\n| [packages/core/src/runtime.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1219?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fruntime.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvcnVudGltZS50cw==) | 0.00% | [6 Missing :warning: ](https://app.codecov.io/gh/ai16z/eliza/pull/1219?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) |\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1219?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Coverage \u0394 | |\n|---|---|---|\n| [packages/core/src/runtime.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1219?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fruntime.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvcnVudGltZS50cw==) | `0.00% <0.00%> (\u00f8)` | |\n"
+ }
+ ]
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 2,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "tomguluson92",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/19585240?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91LzE5NTg1MjQwIn0.gXlxEwvwu9reKlsbqgUt9Tx7a5qqekgFUel_ERC3Fwo&u=4a4465656050747dee79f5f97a8b61cf2fbc97e1&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 2,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1246,
+ "title": "feat: upgrade Tavily API with comprehensive input and constrain the token consumption",
+ "state": "OPEN",
+ "merged": false,
+ "created_at": "2024-12-19T19:25:41Z",
+ "updated_at": "2024-12-19T19:52:00Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nrelates to tavily #518\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nConstrain the maximum output of per web search from Tavily, while allows more input parameters that can be controlled by the developers or users.\r\n\r\n## What kind of change is this?\r\n\r\nImprovements & Features \r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\nNo\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\nYes, I have fulfilled the test by test this part independently and then assemble this to the core.\r\n\r\n## Where should a reviewer start?\r\n\r\nCould start with the test just like normally use Tavily.\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
+ {
+ "path": ".env.example",
+ "additions": 3,
"deletions": 0
},
{
- "path": "packages/adapter-sqlite/src/sqliteTables.ts",
- "additions": 10,
+ "path": "packages/core/src/generation.ts",
+ "additions": 4,
"deletions": 0
},
{
- "path": "packages/client-direct/src/index.ts",
- "additions": 45,
- "deletions": 4
- },
+ "path": "packages/plugin-web-search/src/index.ts",
+ "additions": 24,
+ "deletions": 2
+ }
+ ],
+ "reviews": [
{
- "path": "packages/core/src/crypt.ts",
- "additions": 63,
- "deletions": 0
- },
+ "author": "tcm390",
+ "state": "APPROVED",
+ "body": ""
+ }
+ ],
+ "comments": [
+ {
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1246?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAttention: Patch coverage is `0%` with `4 lines` in your changes missing coverage. Please review.\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1246?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Patch % | Lines |\n|---|---|---|\n| [packages/core/src/generation.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1246?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fgeneration.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvZ2VuZXJhdGlvbi50cw==) | 0.00% | [4 Missing :warning: ](https://app.codecov.io/gh/ai16z/eliza/pull/1246?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) |\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1246?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Coverage \u0394 | |\n|---|---|---|\n| [packages/core/src/generation.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1246?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fgeneration.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvZ2VuZXJhdGlvbi50cw==) | `2.68% <0.00%> (-0.01%)` | :arrow_down: |\n"
+ }
+ ]
+ },
+ {
+ "number": 1226,
+ "title": "fix: CircuitBreaker.ts",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T04:53:10Z",
+ "updated_at": "2024-12-19T06:44:23Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nRelated to https://github.com/ai16z/eliza/pull/719\r\nBuild upon on https://github.com/ai16z/eliza/pull/812\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n`medium`, since we change the database adapters `circuitbase` code in the failure conditions.\r\n\r\n\r\n\r\n# Background\r\n\r\nDuring checking and learning the core code from AI16Z, I dig deeper into it and find out that the condition to restart the error need to be more fulfill.\r\n\r\n## What does this PR do?\r\n\r\nFulfill the condition in handling the failures.\r\n\r\n## What kind of change is this?\r\n\r\n**Improvements** \r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\nIf a docs change is needed: I have updated the documentation accordingly.\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\nYes\r\n\r\n",
+ "files": [
{
- "path": "packages/core/src/index.ts",
+ "path": "packages/core/src/database/CircuitBreaker.ts",
"additions": 1,
- "deletions": 0
- },
+ "deletions": 1
+ }
+ ],
+ "reviews": [
{
- "path": "packages/core/src/types.ts",
- "additions": 20,
- "deletions": 0
- },
+ "author": "shakkernerd",
+ "state": "APPROVED",
+ "body": ""
+ }
+ ],
+ "comments": [
{
- "path": "scripts/importCharactersInDB/crypt.js",
- "additions": 112,
- "deletions": 0
- },
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1226?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAttention: Patch coverage is `0%` with `1 line` in your changes missing coverage. Please review.\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1226?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Patch % | Lines |\n|---|---|---|\n| [packages/core/src/database/CircuitBreaker.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1226?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fdatabase%2FCircuitBreaker.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvZGF0YWJhc2UvQ2lyY3VpdEJyZWFrZXIudHM=) | 0.00% | [1 Missing :warning: ](https://app.codecov.io/gh/ai16z/eliza/pull/1226?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) |\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1226?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Coverage \u0394 | |\n|---|---|---|\n| [packages/core/src/database/CircuitBreaker.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1226?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fdatabase%2FCircuitBreaker.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvZGF0YWJhc2UvQ2lyY3VpdEJyZWFrZXIudHM=) | `36.20% <0.00%> (-1.98%)` | :arrow_down: |\n"
+ }
+ ]
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 2,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "renlulu",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/8149051?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg2NjAsIm5iZiI6MTczNDY0NzQ2MCwicGF0aCI6Ii91LzgxNDkwNTEifQ.vNRFI1s-VUpAgF8g-JReFxwDI4UBDPmFdIkEcDNscYE&u=001a339b366e297d951ff1155837fe1e1510c398&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 2,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1245,
+ "title": "feat: make express payload limit configurable",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T18:12:17Z",
+ "updated_at": "2024-12-19T22:05:56Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
{
- "path": "scripts/importCharactersInDB/postgres/FetchFromDb.js",
- "additions": 143,
+ "path": ".env.example",
+ "additions": 3,
"deletions": 0
},
{
- "path": "scripts/importCharactersInDB/postgres/insertInDb.js",
- "additions": 223,
- "deletions": 0
+ "path": "packages/client-direct/src/api.ts",
+ "additions": 26,
+ "deletions": 17
+ }
+ ],
+ "reviews": [
+ {
+ "author": "monilpat",
+ "state": "COMMENTED",
+ "body": ""
},
{
- "path": "scripts/importCharactersInDB/sqlite/fetchFromDb.js",
- "additions": 111,
- "deletions": 0
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM one nit"
},
{
- "path": "scripts/importCharactersInDB/sqlite/insertInDb.js",
- "additions": 188,
- "deletions": 0
+ "author": "monilpat",
+ "state": "COMMENTED",
+ "body": ""
}
],
- "reviews": [],
"comments": []
},
{
- "number": 1198,
- "title": "feat: Client secrets validation",
- "state": "OPEN",
- "merged": false,
- "created_at": "2024-12-18T07:17:10Z",
- "updated_at": "2024-12-18T22:33:35Z",
- "body": "# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nChecks that secrets are valid before adding client\r\n\r\n## What kind of change is this?\r\n\r\nImprovements (misc. changes to existing features)\r\n\r\n## Why are we doing this? Any context or related work?\r\n\r\nMake the daemon not crash when REST API is adding/updating/deleting agents\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n",
+ "number": 1244,
+ "title": "feat: make twitter login retry times as env",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T17:54:02Z",
+ "updated_at": "2024-12-19T21:52:56Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
"files": [
{
- "path": "agent/src/index.ts",
- "additions": 22,
- "deletions": 9
- },
- {
- "path": "packages/client-discord/src/index.ts",
- "additions": 30,
- "deletions": 3
- },
- {
- "path": "packages/client-telegram/package.json",
+ "path": ".env.example",
"additions": 1,
"deletions": 0
},
{
- "path": "packages/client-telegram/src/index.ts",
- "additions": 22,
- "deletions": 0
+ "path": "agent/src/index.ts",
+ "additions": 2,
+ "deletions": 2
},
{
"path": "packages/client-twitter/src/base.ts",
- "additions": 14,
- "deletions": 7
- },
- {
- "path": "packages/client-twitter/src/index.ts",
- "additions": 17,
+ "additions": 4,
"deletions": 1
- },
- {
- "path": "packages/core/src/types.ts",
- "additions": 3,
- "deletions": 0
}
],
"reviews": [
{
- "author": "cygaar",
- "state": "COMMENTED",
- "body": ""
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM"
}
],
"comments": []
@@ -160,1328 +262,82 @@
},
"engagement": {
"total_comments": 0,
- "total_reviews": 1,
+ "total_reviews": 4,
"comments": [],
"reviews": []
}
}
},
{
- "contributor": "chefron",
+ "contributor": "tcm390",
"score": 0,
"summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/98501301?v=4",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/60634884?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkwODAsIm5iZiI6MTczNDY0Nzg4MCwicGF0aCI6Ii91LzYwNjM0ODg0In0.aTZg7v0-F5XSxIbAmBcfx_5AdpyFDh-e6rtAZEXNARI&u=c6c41679b8322eaa0c81f72e0b4ed95e80f0ac16&v=4",
"activity": {
"code": {
"total_commits": 0,
- "total_prs": 1,
+ "total_prs": 2,
"commits": [],
"pull_requests": [
{
- "number": 1215,
- "title": "modify Twitter interaction rules, create SoundCloud plugin",
- "state": "CLOSED",
- "merged": false,
- "created_at": "2024-12-18T22:13:34Z",
- "updated_at": "2024-12-18T22:14:37Z",
- "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "number": 1242,
+ "title": "fix: twitterShouldRespondTemplate Fails When Defined as a String in JSON Character Config",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T16:31:00Z",
+ "updated_at": "2024-12-19T22:02:54Z",
+ "body": "related: https://github.com/ai16z/eliza/issues/1235\r\n\r\n",
"files": [
{
- "path": "docs/api/classes/AgentRuntime.md",
- "additions": 41,
- "deletions": 41
- },
- {
- "path": "docs/api/classes/CacheManager.md",
- "additions": 6,
- "deletions": 6
- },
+ "path": "packages/client-twitter/src/interactions.ts",
+ "additions": 1,
+ "deletions": 3
+ }
+ ],
+ "reviews": [
{
- "path": "docs/api/classes/DatabaseAdapter.md",
- "additions": 42,
- "deletions": 42
- },
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM"
+ }
+ ],
+ "comments": [
{
- "path": "docs/api/classes/DbCacheAdapter.md",
- "additions": 5,
- "deletions": 5
- },
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1242?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n"
+ }
+ ]
+ },
+ {
+ "number": 1220,
+ "title": "fix: Allow the bot to post messages with images generated by the imageGenerationPlugin on Telegram.",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T00:16:18Z",
+ "updated_at": "2024-12-19T02:06:20Z",
+ "body": "related: \r\nhttps://github.com/ai16z/eliza/issues/970\r\nhttps://github.com/ai16z/eliza/pull/1040\r\n\r\n\r\n\r\n\r\n",
+ "files": [
{
- "path": "docs/api/classes/FsCacheAdapter.md",
- "additions": 5,
- "deletions": 5
+ "path": "packages/client-telegram/src/messageManager.ts",
+ "additions": 106,
+ "deletions": 54
},
{
- "path": "docs/api/classes/MemoryCacheAdapter.md",
- "additions": 6,
- "deletions": 6
+ "path": "packages/client-twitter/src/utils.ts",
+ "additions": 2,
+ "deletions": 12
},
{
- "path": "docs/api/classes/MemoryManager.md",
- "additions": 14,
- "deletions": 14
- },
+ "path": "packages/plugin-image-generation/src/index.ts",
+ "additions": 1,
+ "deletions": 1
+ }
+ ],
+ "reviews": [
{
- "path": "docs/api/classes/Service.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/enumerations/Clients.md",
- "additions": 15,
- "deletions": 5
- },
- {
- "path": "docs/api/enumerations/GoalStatus.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/enumerations/LoggingLevel.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/enumerations/ModelClass.md",
- "additions": 6,
- "deletions": 6
- },
- {
- "path": "docs/api/enumerations/ModelProviderName.md",
- "additions": 20,
- "deletions": 20
- },
- {
- "path": "docs/api/enumerations/ServiceType.md",
- "additions": 9,
- "deletions": 9
- },
- {
- "path": "docs/api/functions/addHeader.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/composeActionExamples.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/composeContext.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/configureSettings.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/createGoal.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/createRelationship.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/embed.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/findNearestEnvFile.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatActionNames.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatActions.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatActors.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatEvaluatorExampleDescriptions.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatEvaluatorExamples.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatEvaluatorNames.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatEvaluators.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatGoalsAsString.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatMessages.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatPosts.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatRelationships.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatTimestamp.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateCaption.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateImage.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateMessageResponse.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateObject.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateObjectArray.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateObjectV2.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateShouldRespond.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateText.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateTextArray.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateTrueOrFalse.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateWebSearch.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getActorDetails.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getEmbeddingConfig.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getEmbeddingType.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getEmbeddingZeroVector.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getEndpoint.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getEnvVariable.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getGoals.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getModel.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getProviders.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getRelationship.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getRelationships.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/handleProvider.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/hasEnvVariable.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/loadEnvConfig.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/parseBooleanFromText.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/parseJSONObjectFromText.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/parseJsonArrayFromText.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/parseShouldRespondFromText.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/splitChunks.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/stringToUuid.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/trimTokens.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/updateGoal.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/validateCharacterConfig.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/validateEnv.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/index.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/Account.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/Action.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/ActionExample.md",
- "additions": 3,
- "deletions": 3
- },
- {
- "path": "docs/api/interfaces/Actor.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/interfaces/Content.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/ConversationExample.md",
- "additions": 3,
- "deletions": 3
- },
- {
- "path": "docs/api/interfaces/EvaluationExample.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/Evaluator.md",
- "additions": 8,
- "deletions": 8
- },
- {
- "path": "docs/api/interfaces/GenerationOptions.md",
- "additions": 10,
- "deletions": 10
- },
- {
- "path": "docs/api/interfaces/Goal.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/IAgentRuntime.md",
- "additions": 36,
- "deletions": 36
- },
- {
- "path": "docs/api/interfaces/IBrowserService.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/interfaces/ICacheAdapter.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/ICacheManager.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/IDatabaseAdapter.md",
- "additions": 38,
- "deletions": 38
- },
- {
- "path": "docs/api/interfaces/IDatabaseCacheAdapter.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/IImageDescriptionService.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/IMemoryManager.md",
- "additions": 14,
- "deletions": 14
- },
- {
- "path": "docs/api/interfaces/IPdfService.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/interfaces/ISpeechService.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/interfaces/ITextGenerationService.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/ITranscriptionService.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/IVideoService.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/Memory.md",
- "additions": 10,
- "deletions": 10
- },
- {
- "path": "docs/api/interfaces/MessageExample.md",
- "additions": 3,
- "deletions": 3
- },
- {
- "path": "docs/api/interfaces/Objective.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/Participant.md",
- "additions": 3,
- "deletions": 3
- },
- {
- "path": "docs/api/interfaces/Provider.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/interfaces/Relationship.md",
- "additions": 8,
- "deletions": 8
- },
- {
- "path": "docs/api/interfaces/Room.md",
- "additions": 3,
- "deletions": 3
- }
- ],
- "reviews": [],
- "comments": []
- }
- ]
- },
- "issues": {
- "total_opened": 0,
- "opened": []
- },
- "engagement": {
- "total_comments": 0,
- "total_reviews": 0,
- "comments": [],
- "reviews": []
- }
- }
- },
- {
- "contributor": "vpavlin",
- "score": 0,
- "summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/4759808?u=d045a41a43fa2deabfc3115236cc1e8b0509b164&v=4",
- "activity": {
- "code": {
- "total_commits": 0,
- "total_prs": 1,
- "commits": [],
- "pull_requests": [
- {
- "number": 1214,
- "title": "fix: fail when cannot get token, add Akash to generateText switch",
- "state": "OPEN",
- "merged": false,
- "created_at": "2024-12-18T21:21:53Z",
- "updated_at": "2024-12-18T21:28:14Z",
- "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n* this throws when we cannot get a token based on provider (otherwise it silently runs and prints auth errors) - it is a change in behaviour\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nThis fixes 2 issues I've hit:\r\n* When I setup Akash provider I got `Unsupported provider error` because it was missing in `generateText` switch\r\n* When I was trying to update eliza-starter and use it with Akash or Venice, I'd get auth errors because it could not get the provider token - since the `getTokenForProvider` did not account for the new providers, but it would not fail there, hence adding a `default` case which throwa\r\n\r\ncc @MbBrainz\r\n\r\n## What kind of change is this?\r\n\r\nBug fixes\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n* You can try to use Akash provider and chat with the agent - it should result in `Unsupported provider error` without this change\r\n* You can also try to configure some unknown provider and gcall `getTokenForProvider` andthe function will not report any errors without this change \r\n\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n## Discord username\r\n@vpavlin\r\n\r\n",
- "files": [
- {
- "path": "agent/src/index.ts",
- "additions": 4,
- "deletions": 0
- },
- {
- "path": "packages/core/src/generation.ts",
- "additions": 2,
- "deletions": 1
- }
- ],
- "reviews": [],
- "comments": [
- {
- "author": "vpavlin",
- "body": "Wait, should I use `develop` or `main` as a base?"
- }
- ]
- }
- ]
- },
- "issues": {
- "total_opened": 0,
- "opened": []
- },
- "engagement": {
- "total_comments": 0,
- "total_reviews": 0,
- "comments": [],
- "reviews": []
- }
- }
- },
- {
- "contributor": "BlockchainCake",
- "score": 0,
- "summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/24722374?u=c5a6378d6a918ac7d6ae7de796e4cd85ca91c4c3&v=4",
- "activity": {
- "code": {
- "total_commits": 0,
- "total_prs": 1,
- "commits": [],
- "pull_requests": [
- {
- "number": 1212,
- "title": "Add EVM Client for blockchain event monitoring",
- "state": "OPEN",
- "merged": false,
- "created_at": "2024-12-18T20:54:14Z",
- "updated_at": "2024-12-18T20:54:14Z",
- "body": "# Add EVM Client for blockchain events\r\n\r\nThis PR adds a new client that enables Eliza agents to monitor and discuss EVM blockchain events through Discord.\r\n\r\n## Features\r\n- WebSocket connection to EVM-compatible chains\r\n- Smart contract event monitoring and decoding\r\n- Natural language discussion of events through Discord\r\n- Event memory storage and formatting\r\n- Automatic reconnection handling\r\n\r\n## Implementation\r\n- Core WebSocket client with ethers.js\r\n- Message manager for event processing\r\n- Discord channel integration\r\n- USDC/DAI Uniswap swap monitoring as reference implementation\r\n\r\n## Documentation\r\n- Full README with setup guide\r\n- Implementation examples\r\n- Code comments and type definitions\r\n\r\nThis extends Eliza's capabilities with blockchain event monitoring while following the framework's patterns for client integration.",
- "files": [
- {
- "path": "agent/package.json",
- "additions": 2,
- "deletions": 0
- },
- {
- "path": "agent/src/index.ts",
- "additions": 6,
- "deletions": 0
- },
- {
- "path": "packages/client-discord/src/index.ts",
- "additions": 32,
- "deletions": 1
- },
- {
- "path": "packages/client-evm/README.md",
- "additions": 78,
- "deletions": 0
- },
- {
- "path": "packages/client-evm/config.example.json",
- "additions": 40,
- "deletions": 0
- },
- {
- "path": "packages/client-evm/config.json",
- "additions": 100,
- "deletions": 0
- },
- {
- "path": "packages/client-evm/package.json",
- "additions": 21,
- "deletions": 0
- },
- {
- "path": "packages/client-evm/src/evm-listener.ts",
- "additions": 242,
- "deletions": 0
- },
- {
- "path": "packages/client-evm/src/implementations/formatters.ts",
- "additions": 25,
- "deletions": 0
- },
- {
- "path": "packages/client-evm/src/implementations/templates.ts",
- "additions": 35,
- "deletions": 0
- },
- {
- "path": "packages/client-evm/src/index.ts",
- "additions": 85,
- "deletions": 0
- },
- {
- "path": "packages/client-evm/src/messages.ts",
- "additions": 176,
- "deletions": 0
- },
- {
- "path": "packages/client-evm/src/types.ts",
- "additions": 66,
- "deletions": 0
- },
- {
- "path": "packages/client-evm/tsconfig.json",
- "additions": 23,
- "deletions": 0
- },
- {
- "path": "packages/core/src/types.ts",
- "additions": 1,
- "deletions": 0
- },
- {
- "path": "pnpm-lock.yaml",
- "additions": 366,
- "deletions": 44
- },
- {
- "path": "tsconfig.json",
- "additions": 21,
- "deletions": 0
- }
- ],
- "reviews": [],
- "comments": []
- }
- ]
- },
- "issues": {
- "total_opened": 0,
- "opened": []
- },
- "engagement": {
- "total_comments": 0,
- "total_reviews": 0,
- "comments": [],
- "reviews": []
- }
- }
- },
- {
- "contributor": "madjin",
- "score": 0,
- "summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/32600939?u=cdcf89f44c7a50906c7a80d889efa85023af2049&v=4",
- "activity": {
- "code": {
- "total_commits": 0,
- "total_prs": 1,
- "commits": [],
- "pull_requests": [
- {
- "number": 1211,
- "title": "chore: New docs",
- "state": "MERGED",
- "merged": true,
- "created_at": "2024-12-18T19:04:47Z",
- "updated_at": "2024-12-18T20:26:44Z",
- "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
- "files": [
- {
- "path": "docs/api/classes/AgentRuntime.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/classes/CacheManager.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/classes/DatabaseAdapter.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/classes/DbCacheAdapter.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/classes/FsCacheAdapter.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/classes/MemoryCacheAdapter.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/classes/MemoryManager.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/classes/Service.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/enumerations/Clients.md",
- "additions": 9,
- "deletions": 9
- },
- {
- "path": "docs/api/enumerations/GoalStatus.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/enumerations/LoggingLevel.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/enumerations/ModelClass.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/enumerations/ModelProviderName.md",
- "additions": 33,
- "deletions": 23
- },
- {
- "path": "docs/api/enumerations/ServiceType.md",
- "additions": 12,
- "deletions": 12
- },
- {
- "path": "docs/api/functions/addHeader.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/composeActionExamples.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/composeContext.md",
- "additions": 12,
- "deletions": 6
- },
- {
- "path": "docs/api/functions/configureSettings.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/createGoal.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/createRelationship.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/embed.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/findNearestEnvFile.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatActionNames.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatActions.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatActors.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatEvaluatorExampleDescriptions.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatEvaluatorExamples.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatEvaluatorNames.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatEvaluators.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatGoalsAsString.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatMessages.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatPosts.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatRelationships.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatTimestamp.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateCaption.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateImage.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateMessageResponse.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateObject.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateObjectArray.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateObjectDeprecated.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateShouldRespond.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateTextArray.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateTrueOrFalse.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateTweetActions.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateWebSearch.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getActorDetails.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getEmbeddingConfig.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getEmbeddingType.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getEmbeddingZeroVector.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getEndpoint.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getEnvVariable.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getGoals.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getModel.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getProviders.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getRelationship.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getRelationships.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/handleProvider.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/hasEnvVariable.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/loadEnvConfig.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/parseActionResponseFromText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/parseBooleanFromText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/parseJSONObjectFromText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/parseJsonArrayFromText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/parseShouldRespondFromText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/splitChunks.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/stringToUuid.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/trimTokens.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/updateGoal.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/validateCharacterConfig.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/validateEnv.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/index.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/Account.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/Action.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/ActionExample.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/ActionResponse.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/interfaces/Actor.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/Content.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/ConversationExample.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/EvaluationExample.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/Evaluator.md",
- "additions": 8,
- "deletions": 8
- },
- {
- "path": "docs/api/interfaces/GenerationOptions.md",
- "additions": 10,
- "deletions": 10
- },
- {
- "path": "docs/api/interfaces/Goal.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/IAgentConfig.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/IAgentRuntime.md",
- "additions": 38,
- "deletions": 38
- },
- {
- "path": "docs/api/interfaces/IAwsS3Service.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/interfaces/IBrowserService.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/interfaces/ICacheAdapter.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/ICacheManager.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/IDatabaseAdapter.md",
- "additions": 38,
- "deletions": 38
- },
- {
- "path": "docs/api/interfaces/IDatabaseCacheAdapter.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/IImageDescriptionService.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/IMemoryManager.md",
- "additions": 14,
- "deletions": 14
- },
- {
- "path": "docs/api/interfaces/IPdfService.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/interfaces/ISlackService.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/ISpeechService.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/interfaces/ITextGenerationService.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/ITranscriptionService.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/IVideoService.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/Memory.md",
- "additions": 10,
- "deletions": 10
- }
- ],
- "reviews": [
- {
- "author": "odilitime",
- "state": "APPROVED",
- "body": ""
- },
- {
- "author": "monilpat",
- "state": "APPROVED",
- "body": ""
- }
- ],
- "comments": []
- }
- ]
- },
- "issues": {
- "total_opened": 1,
- "opened": [
- {
- "number": 1200,
- "title": "chore: Document Missing Plugin Documentation and Examples",
- "state": "OPEN",
- "created_at": "2024-12-18T08:59:15Z",
- "updated_at": "2024-12-18T08:59:15Z",
- "body": "**Overview**\r\nSeveral plugins in the Eliza framework lack comprehensive documentation. This makes it harder for new developers to understand and utilize these components.\r\n\r\nMissing Plugin Documentation:\r\n- [ ] plugin-0g - File storage plugin\r\n- [ ] plugin-aptos - Aptos blockchain integration\r\n- [ ] plugin-conflux - Conflux blockchain integration \r\n- [ ] plugin-echochambers - Echo chamber client\r\n- [ ] plugin-flow - Flow blockchain integration\r\n- [ ] plugin-goat - GOAT functionality\r\n- [ ] plugin-icp - Internet Computer integration\r\n- [ ] plugin-image-generation - Image generation capabilities\r\n- [ ] plugin-intiface - Intiface integration\r\n- [ ] plugin-multiversx - MultiversX blockchain \r\n- [ ] plugin-near - NEAR Protocol integration\r\n- [ ] plugin-nft-generation - NFT creation functionality\r\n- [ ] plugin-story - Story/IP management\r\n- [ ] plugin-sui - Sui blockchain integration\r\n- [ ] plugin-ton - TON blockchain integration\r\n- [ ] plugin-trustdb - Trust database functionality\r\n- [ ] plugin-video-generation - Video generation features\r\n- [ ] plugin-web-search - Web search capabilities\r\n- [ ] plugin-whatsapp - WhatsApp integration\r\n- [ ] plugin-zksync-era - zkSync Era integration\r\n\r\n**Proposed Documentation Structure**\r\nFor each plugin, we need:\r\n1. Overview and purpose\r\n2. Installation instructions\r\n3. Configuration requirements\r\n4. Usage examples\r\n5. API reference\r\n6. Common issues/troubleshooting\r\n\r\n**Additional Missing Docs**\r\n- Examples folder documentation\r\n- Testing guide expansion\r\n- Plugin development guide\r\n- Security best practices\r\n- Performance optimization guide\r\n\r\n**Value Add**\r\nThis documentation will:\r\n- Improve developer onboarding\r\n- Reduce support questions\r\n- Enable faster plugin adoption\r\n- Help maintain code quality",
- "labels": [
- {
- "name": "documentation",
- "color": "0075ca",
- "description": "Improvements or additions to documentation"
- },
- {
- "name": "enhancement",
- "color": "a2eeef",
- "description": "New feature or request"
- }
- ],
- "comments": []
- }
- ]
- },
- "engagement": {
- "total_comments": 0,
- "total_reviews": 2,
- "comments": [],
- "reviews": []
- }
- }
- },
- {
- "contributor": "marcNY",
- "score": 0,
- "summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/8562443?u=734e3f5504e627ba44eec27c72ce0263cfe0a0ab&v=4",
- "activity": {
- "code": {
- "total_commits": 0,
- "total_prs": 1,
- "commits": [],
- "pull_requests": [
- {
- "number": 1209,
- "title": "docs: Update README.md",
- "state": "MERGED",
- "merged": true,
- "created_at": "2024-12-18T16:46:43Z",
- "updated_at": "2024-12-18T17:21:57Z",
- "body": "Relates to:\r\n\r\nNo issue; I created the pull request directly.\r\n\r\nRisks:\r\n\r\nLow\r\n\r\nBackground:\r\n\r\nThe starter script was not working because it did not include a cd command to navigate into the eliza-starter directory. This caused the script to fail when executed from the root of the project.\r\n\r\nWhat does this PR do?\r\n\r\nThis PR updates the starter script by adding a cd command to ensure it correctly navigates into the eliza-starter directory before executing any subsequent steps.\r\n\r\nWhat kind of change is this?\r\n\t\u2022\tBug fixes (non-breaking change which fixes an issue)\r\n\r\nDocumentation changes needed?\r\n\t\u2022\tMy changes do not require a change to the project documentation.\r\n\r\nTesting:\r\n\r\nWhere should a reviewer start?\r\n\r\nStart by reviewing the changes made to the starter script file.\r\n\r\nDetailed testing steps:\r\n\t1.\tRun the updated starter script from the root directory.\r\n\t2.\tConfirm that the script correctly navigates into the eliza-starter directory and proceeds without errors.",
- "files": [
- {
- "path": "README.md",
- "additions": 1,
- "deletions": 2
- }
- ],
- "reviews": [
- {
- "author": "odilitime",
+ "author": "monilpat",
"state": "APPROVED",
- "body": ""
+ "body": "LGTM - thank you so much for doing this please feel free to close the issues :) "
}
],
"comments": []
@@ -1494,99 +350,83 @@
},
"engagement": {
"total_comments": 0,
- "total_reviews": 1,
+ "total_reviews": 2,
"comments": [],
"reviews": []
}
}
},
{
- "contributor": "v1xingyue",
+ "contributor": "tungpun",
"score": 0,
"summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/974169?u=96c6a113a91978c041e5cf90965d7b66c5540af4&v=4",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/5058370?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg3ODAsIm5iZiI6MTczNDY0NzU4MCwicGF0aCI6Ii91LzUwNTgzNzAifQ.YGTaug1L0oc7VUfJB_zg2PibAVY09Y_PY48e4fv5qaU&u=59cb956de322867be56c0abee49ab3f28f819e2f&v=4",
"activity": {
"code": {
"total_commits": 0,
- "total_prs": 1,
+ "total_prs": 2,
"commits": [],
"pull_requests": [
{
- "number": 1207,
- "title": "fix: gitpod cicd bug",
- "state": "MERGED",
- "merged": true,
- "created_at": "2024-12-18T15:06:25Z",
- "updated_at": "2024-12-18T19:43:00Z",
- "body": "Sometimes we can't fetch tags, so let's fetch tags before.\r\n",
+ "number": 1231,
+ "title": "chore: added config to whitelist the telegram users",
+ "state": "OPEN",
+ "merged": false,
+ "created_at": "2024-12-19T08:00:24Z",
+ "updated_at": "2024-12-19T15:43:32Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nThis PR adds functionality to allow developers to whitelist Telegram users, granting them access to the bot.\r\n\r\n## What kind of change is this?\r\nFeatures (non-breaking change which adds functionality)\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
"files": [
{
- "path": ".gitpod.yml",
+ "path": ".env.example",
"additions": 1,
"deletions": 0
- }
- ],
- "reviews": [
+ },
{
- "author": "odilitime",
- "state": "APPROVED",
- "body": ""
+ "path": ".gitignore",
+ "additions": 1,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-telegram/src/messageManager.ts",
+ "additions": 9,
+ "deletions": 1
}
],
+ "reviews": [],
"comments": [
{
- "author": "codecov",
- "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1207?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n"
+ "author": "azep-ninja",
+ "body": "Like this enhancement. I recently added one to whitelist Telegram groups.\r\n\r\nHonestly think this might make more sense within the characters client config, similar to what I added.\r\n\r\nYou'll need to modify the types for the character file, but keeps the ENV less cluttered.\r\n\r\nReference: https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts\r\n\r\n![image](https://github.com/user-attachments/assets/665edc1f-cab5-48de-adc2-e59e1629bdde)\r\n\r\nAnd you can see how that was/is used in the messageManager.ts file for reference."
}
]
- }
- ]
- },
- "issues": {
- "total_opened": 0,
- "opened": []
- },
- "engagement": {
- "total_comments": 0,
- "total_reviews": 1,
- "comments": [],
- "reviews": []
- }
- }
- },
- {
- "contributor": "tobbelobb",
- "score": 0,
- "summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/5753253?u=06987c2b4cb233fa0a612753bf4cb151862c07b4&v=4",
- "activity": {
- "code": {
- "total_commits": 0,
- "total_prs": 1,
- "commits": [],
- "pull_requests": [
+ },
{
- "number": 1205,
- "title": "fix: write summary file before trying to cache it",
- "state": "OPEN",
+ "number": 1230,
+ "title": "chore: added config for to whitelist telegram user",
+ "state": "CLOSED",
"merged": false,
- "created_at": "2024-12-18T12:28:33Z",
- "updated_at": "2024-12-18T17:17:36Z",
- "body": " - Also give a .md file extension for prettier rendering in Discord\r\n\r\n# Relates to:\r\nWhen I used my agent to CHAT_WITH_ATTACHMENTS it always failed to stat the summary file because it had not been created.\r\n\r\n# Risks\r\nLow. Writes summaries to disk, could become a lot of data if agent writes a lot of summaries.\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nWrite summary file before trying to cache it\r\n\r\n## What kind of change is this?\r\nBug fix (non-breaking change which fixes an issue)\r\n\r\n## Why are we doing this? Any context or related work?\r\nYeah, I'm building a technical support that needs to receive and analyze config files.\r\n\r\n## Discord username\r\ntobben_dev\r\n",
+ "created_at": "2024-12-19T07:54:59Z",
+ "updated_at": "2024-12-19T07:58:12Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nThis PR adds functionality to allow developers to whitelist Telegram users, granting them access to the bot.\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
"files": [
{
- "path": "packages/client-discord/src/actions/chat_with_attachments.ts",
- "additions": 31,
- "deletions": 10
+ "path": ".env.example",
+ "additions": 1,
+ "deletions": 0
+ },
+ {
+ "path": ".gitignore",
+ "additions": 1,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-telegram/src/messageManager.ts",
+ "additions": 12,
+ "deletions": 1
}
],
"reviews": [],
- "comments": [
- {
- "author": "odilitime",
- "body": "code looks good will test later"
- }
- ]
+ "comments": []
}
]
},
@@ -1603,272 +443,100 @@
}
},
{
- "contributor": "AbdelStark",
+ "contributor": "cygaar",
"score": 0,
"summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/45264458?u=6ea3a3cec4fd224af9afe756466df041687486a2&v=4",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/97691933?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91Lzk3NjkxOTMzIn0.vv-JK85dC71dWur7eEcbi2Ry93mpLfQ5KxBgeSQHBMk&u=45e66309f3fd41536b48a58f3c949b9e4e90789a&v=4",
"activity": {
"code": {
"total_commits": 0,
- "total_prs": 1,
+ "total_prs": 2,
"commits": [],
"pull_requests": [
{
- "number": 1203,
- "title": "feat: Implement Nostr client",
+ "number": 1225,
+ "title": "[WIP] feat: add abstract plugin",
"state": "OPEN",
"merged": false,
- "created_at": "2024-12-18T09:55:14Z",
- "updated_at": "2024-12-18T20:52:26Z",
- "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow. It's an optional client to use. \r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\nFeatures (non-breaking change which adds functionality)\r\n\r\n## Why are we doing this? Any context or related work?\r\n\r\nNostr is the simplest open protocol that is able to create a censorship-resistant global \"social\" network once and for all.\r\n\r\nIt's nature and strong focus on censorship-resistance makes it a perfect fit for the Eliza agent framework.\r\n\r\n## Configuration\r\n\r\nHere are the env variables that need to be set in the `.env` file:\r\n\r\n| Variable | Description | Example |\r\n| ---------------------- | ------------------------------------------------------ | ------------------------------------------- |\r\n| NOSTR_RELAYS | The list of Nostr relays to connect to | wss://relay.damus.io,wss://relay.primal.net |\r\n| NOSTR_NSEC_KEY | Nostr Private Key (starts with nsec) | nsec1... |\r\n| NOSTR_NPUB_KEY | Nostr Public Key (starts with npub) | npub1... |\r\n| NOSTR_POLL_INTERVAL | How often (in seconds) to check for Nostr interactions | 120 |\r\n| NOSTR_POST_IMMEDIATELY | Whether to post immediately or not | false |\r\n| NOSTR_DRY_RUN | Whether to dry run or not | false |\r\n\r\nSample configuration:\r\n\r\n```bash\r\n# The list of Nostr relays to connect to.\r\nNOSTR_RELAYS=\"wss://relay.damus.io,wss://relay.primal.net\"\r\n# Nostr Private Key (starts with nsec)\r\nNOSTR_NSEC_KEY=\"nsec1...\"\r\n# Nostr Public Key (starts with npub)\r\nNOSTR_NPUB_KEY=\"npub1...\"\r\n# How often (in seconds) the bot should check for Nostr interactions (default: 2 minutes)\r\nNOSTR_POLL_INTERVAL=120\r\n# Whether to post immediately or not\r\nNOSTR_POST_IMMEDIATELY=false\r\n# Whether to dry run or not\r\nNOSTR_DRY_RUN=false\r\n```\r\n\r\nNote: The `nsec` configured key is used as the default signer when instantiating the `NDK` instance.\r\n\r\nNostr client must be set in the Character definition, example:\r\n```json\r\n{\r\n \"name\": \"goku\",\r\n \"clients\": [\"nostr\"],\r\n \"modelProvider\": \"anthropic\"\r\n \r\n}\r\n```\r\n\r\n## Changes summary\r\n\r\n- Add env variables for Nostr in `.env.example`.\r\n- Introduce [Nostr NDK](https://github.com/nostr-dev-kit/ndk) for Nostr client.\r\n- Implement Nostr client in Eliza (in `packages/client-nostr`).\r\n - Implement `NostrClient` class.\r\n - Implement `NostrInteractionManager` in `packages/client-nostr/src/interactions.ts`. For now it's a no op service.\r\n - Implement `NostrPostManager` in `packages/client-nostr/src/post.ts`.\r\n\r\n## Resources\r\n\r\n- [Nostr Github](https://github.com/nostr-protocol/nostr)\r\n- [What is Nostr ?](https://nostr.org/)\r\n- [Nostr online dev tools](https://nostrtool.com/)\r\n\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n- As anon\r\n\u00a0 - run `pnpm run dev --characters=\"characters/goku.character.json\"` \r\n\u00a0 - verify that Nostr notes are posted\r\n\r\n## Screenshots\r\n\r\nScreenshot of Nostr notes posted by the agent:\r\n\r\n![Screenshot 2024-12-17 at 18 34 11](https://github.com/user-attachments/assets/e0977daa-8f6d-4943-837e-d6426a575443)\r\n\r\nScreenshot of terminal of the running agent with logs:\r\n\r\n![Screenshot 2024-12-17 at 18 34 27](https://github.com/user-attachments/assets/a1ec8c99-b544-468e-94e2-d72f55521157)\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n## Discord username\r\n\r\nabdel.stark\r\n",
+ "created_at": "2024-12-19T03:52:15Z",
+ "updated_at": "2024-12-19T04:01:38Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nAdds Abstract support to Eliza agents!\r\n\r\n# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nAdds support for Eliza to interact with Abstract testnet. The logic borrows heavily from #906, but changes zksync references to Abstract and uses viem for onchain interactions. In the future, I'll be adding more custom abstract-only functionality which is why I did not re-use the existing zksync logic.\r\n\r\n## What kind of change is this?\r\n\r\nFeature\r\n\r\n# Documentation changes needed?\r\n\r\nYes, I will add Abstract specific documentation\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\nSpin up an agent with the abstract plugin\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
"files": [
{
"path": ".env.example",
- "additions": 14,
- "deletions": 0
- },
- {
- "path": "agent/package.json",
- "additions": 60,
- "deletions": 59
- },
- {
- "path": "agent/src/index.ts",
- "additions": 18,
- "deletions": 8
- },
- {
- "path": "packages/client-nostr/package.json",
- "additions": 18,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/actions.ts",
- "additions": 37,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/client.ts",
- "additions": 66,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/index.ts",
- "additions": 61,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/interactions.ts",
- "additions": 36,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/memory.ts",
- "additions": 36,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/post.ts",
- "additions": 188,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/prompts.ts",
- "additions": 88,
+ "additions": 5,
"deletions": 0
},
{
- "path": "packages/client-nostr/src/types.ts",
- "additions": 9,
+ "path": "packages/plugin-abstract/package.json",
+ "additions": 20,
"deletions": 0
},
{
- "path": "packages/client-nostr/src/utils.ts",
- "additions": 143,
+ "path": "packages/plugin-abstract/src/actions/transfer.ts",
+ "additions": 213,
"deletions": 0
},
{
- "path": "packages/client-nostr/tsconfig.json",
- "additions": 12,
+ "path": "packages/plugin-abstract/src/environment.ts",
+ "additions": 32,
"deletions": 0
},
{
- "path": "packages/client-nostr/tsup.config.ts",
- "additions": 20,
+ "path": "packages/plugin-abstract/src/index.ts",
+ "additions": 13,
"deletions": 0
},
{
- "path": "packages/core/src/types.ts",
- "additions": 8,
- "deletions": 4
- },
- {
- "path": "packages/plugin-node/src/services/awsS3.ts",
- "additions": 42,
- "deletions": 18
- },
- {
- "path": "pnpm-lock.yaml",
- "additions": 146,
+ "path": "packages/plugin-abstract/tsconfig.json",
+ "additions": 10,
"deletions": 0
- }
- ],
- "reviews": [
- {
- "author": "odilitime",
- "state": "COMMENTED",
- "body": ""
- }
- ],
- "comments": [
- {
- "author": "odilitime",
- "body": "S3 changes trip me up for a second but I think I get it now"
- },
- {
- "author": "AbdelStark",
- "body": "> S3 changes trip me up for a second but I think I get it now\r\n\r\nYeah this is not related to the Nostr client, but for some reasons there was an error because of a mismatch of interface for the S3 service, and I had to fix it."
- }
- ]
- }
- ]
- },
- "issues": {
- "total_opened": 0,
- "opened": []
- },
- "engagement": {
- "total_comments": 0,
- "total_reviews": 1,
- "comments": [],
- "reviews": []
- }
- }
- },
- {
- "contributor": "netdragonx",
- "score": 0,
- "summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/100390508?u=0805360e7258c798433b4d3f63a4c0457c178942&v=4",
- "activity": {
- "code": {
- "total_commits": 0,
- "total_prs": 1,
- "commits": [],
- "pull_requests": [
- {
- "number": 1202,
- "title": "fix: optional chaining on search to avoid startup errors when search is not enabled",
- "state": "OPEN",
- "merged": false,
- "created_at": "2024-12-18T09:52:31Z",
- "updated_at": "2024-12-18T10:11:57Z",
- "body": "\r\n\r\n# Relates to:\r\nclient-twitter\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\nLow\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nAdds optional chaining to twitter search setup to prevent an error on startup when search code is active but not enabled.\r\n\r\n## What kind of change is this?\r\nBug fix.\r\n\r\n\r\n\r\n\r\n\r\n## Why are we doing this? Any context or related work?\r\nWhen working with twitter search, the agent throws errors when I activate the search code but disable search in .env\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\nRun twitter agent with `TWITTER_SEARCH_ENABLE=FALSE` and there should be no error on startup\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
- "files": [
- {
- "path": "packages/client-twitter/src/index.ts",
- "additions": 14,
- "deletions": 17
- }
- ],
- "reviews": [],
- "comments": []
- }
- ]
- },
- "issues": {
- "total_opened": 0,
- "opened": []
- },
- "engagement": {
- "total_comments": 0,
- "total_reviews": 0,
- "comments": [],
- "reviews": []
- }
- }
- },
- {
- "contributor": "9547",
- "score": 0,
- "summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/29431502?u=def2043f3c532d18cae388fcec8d24a21e08d044&v=4",
- "activity": {
- "code": {
- "total_commits": 0,
- "total_prs": 1,
- "commits": [],
- "pull_requests": [
- {
- "number": 1201,
- "title": "docs(cn): add python 3.7",
- "state": "MERGED",
- "merged": true,
- "created_at": "2024-12-18T09:00:53Z",
- "updated_at": "2024-12-18T17:39:58Z",
- "body": "\r\n## What does this PR do?\r\n\r\nAdd python2.7 to the requirements\r\n\r\n",
- "files": [
- {
- "path": "README_CN.md",
- "additions": 2,
- "deletions": 3
- }
- ],
- "reviews": [
- {
- "author": "odilitime",
- "state": "APPROVED",
- "body": ""
- }
- ],
- "comments": [
- {
- "author": "codecov",
- "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1201?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n"
- }
- ]
- }
- ]
- },
- "issues": {
- "total_opened": 0,
- "opened": []
- },
- "engagement": {
- "total_comments": 0,
- "total_reviews": 1,
- "comments": [],
- "reviews": []
- }
- }
- },
- {
- "contributor": "Hdpbilly",
- "score": 0,
- "summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/168072844?u=04895ee023be4c6ff9a630d14f55c15ee0d9f502&v=4",
- "activity": {
- "code": {
- "total_commits": 0,
- "total_prs": 1,
- "commits": [],
- "pull_requests": [
+ },
+ {
+ "path": "packages/plugin-abstract/tsup.config.ts",
+ "additions": 20,
+ "deletions": 0
+ },
+ {
+ "path": "pnpm-lock.yaml",
+ "additions": 22,
+ "deletions": 1
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ },
{
- "number": 1199,
- "title": "feat: added 12 new routes for runtime parameters",
- "state": "OPEN",
- "merged": false,
- "created_at": "2024-12-18T08:04:22Z",
- "updated_at": "2024-12-18T17:23:19Z",
- "body": "\r\n\r\n# Relates to:\r\nN/A - Initial API routes documentation\r\n\r\n\r\n\r\n\r\n# Risks\r\nLow - These are read-only API endpoints that expose internal agent state. No write operations except for /set endpoint.\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nAdds comprehensive API routes to the agent framework that expose internal state and capabilities through REST endpoints. This includes routes for:\r\n\r\nAgent state and configuration\r\nMemory and cache inspection\r\nService and plugin discovery\r\nMetrics and monitoring\r\nRelationship and room management\r\n## What kind of change is this?\r\nFeatures (non-breaking change which adds functionality)\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\nChanges required to the project documentation to document all available API endpoints and their usage.\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\nStart with basic routes like /agents and /agents/:agentId to verify basic functionality\r\nTest state inspection routes like /state, /memories, and /cache\r\nVerify component discovery through /services, /plugins, and /providers\r\nCheck monitoring capabilities via /metrics\r\n## Detailed testing steps\r\nStart agent framework with npm start\r\nGet list of agents: curl http://localhost:3000/agents\r\nFor each agent ID:\r\n\r\nTest state endpoint: curl http://localhost:3000/agents/{id}/state\r\nVerify services: curl http://localhost:3000/agents/{id}/services\r\nCheck metrics: curl http://localhost:3000/agents/{id}/metrics\r\nView memories: curl http://localhost:3000/agents/{id}/memories\r\nInspect plugins: curl http://localhost:3000/agents/{id}/plugins\r\nTest providers: curl http://localhost:3000/agents/{id}/providers\r\nVerify relationships: curl http://localhost:3000/agents/{id}/relationships\r\nCheck rooms: curl http://localhost:3000/agents/{id}/rooms\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nRequires server restart to enable new API endpoints. No database changes needed.\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "number": 1217,
+ "title": "fix: improve twitter post generation prompt",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-18T23:08:16Z",
+ "updated_at": "2024-12-19T00:00:41Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nAdds more variance to tweet generation so the content feels less stale\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
"files": [
{
- "path": "packages/client-direct/src/api.ts",
- "additions": 259,
- "deletions": 0
+ "path": "packages/client-twitter/src/post.ts",
+ "additions": 238,
+ "deletions": 128
+ },
+ {
+ "path": "packages/core/src/types.ts",
+ "additions": 2,
+ "deletions": 2
}
],
"reviews": [
+ {
+ "author": "odilitime",
+ "state": "COMMENTED",
+ "body": ""
+ },
+ {
+ "author": "cygaar",
+ "state": "COMMENTED",
+ "body": ""
+ },
{
"author": "odilitime",
"state": "APPROVED",
@@ -1885,17 +553,17 @@
},
"engagement": {
"total_comments": 0,
- "total_reviews": 1,
+ "total_reviews": 3,
"comments": [],
"reviews": []
}
}
},
{
- "contributor": "tomguluson92",
+ "contributor": "lalalune",
"score": 0,
"summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/19585240?u=4a4465656050747dee79f5f97a8b61cf2fbc97e1&v=4",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/18633264?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg3MjAsIm5iZiI6MTczNDY0NzUyMCwicGF0aCI6Ii91LzE4NjMzMjY0In0.ef20meZySKC14ksX2zmPUprbf4FTK6gdLx8nK_CL6HQ&u=8f2bca0a3cef958bd405ea89680a9b9a0ff38f06&v=4",
"activity": {
"code": {
"total_commits": 0,
@@ -1903,33 +571,22 @@
"commits": [],
"pull_requests": [
{
- "number": 1196,
- "title": "docs: Update \"CN README\" with more details",
- "state": "MERGED",
- "merged": true,
- "created_at": "2024-12-18T06:12:33Z",
- "updated_at": "2024-12-18T17:29:45Z",
- "body": "Add more details in the CN version of README\r\n\r\n\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nFix the old CN readme, since old version do not have a complete launch information.\r\n\r\n## What kind of change is this?\r\n\r\nImprovements\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\nYes, I change the readme chinese version.\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "number": 1252,
+ "title": "Update trump.character.json",
+ "state": "OPEN",
+ "merged": false,
+ "created_at": "2024-12-19T22:28:15Z",
+ "updated_at": "2024-12-19T22:28:15Z",
+ "body": "Remove a controversial line so we don't have to waste time on pointless old world political divisions\r\n",
"files": [
{
- "path": "README_CN.md",
- "additions": 58,
- "deletions": 6
- }
- ],
- "reviews": [
- {
- "author": "odilitime",
- "state": "APPROVED",
- "body": ""
+ "path": "characters/trump.character.json",
+ "additions": 0,
+ "deletions": 1
}
],
- "comments": [
- {
- "author": "codecov",
- "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1196?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n"
- }
- ]
+ "reviews": [],
+ "comments": []
}
]
},
@@ -1939,17 +596,17 @@
},
"engagement": {
"total_comments": 0,
- "total_reviews": 1,
+ "total_reviews": 0,
"comments": [],
"reviews": []
}
}
},
{
- "contributor": "monilpat",
+ "contributor": "simsaidev",
"score": 0,
"summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/15067321?u=1271e57605b48029307547127c90e1bd5e4f3f39&v=4",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/192255625?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkxNDAsIm5iZiI6MTczNDY0Nzk0MCwicGF0aCI6Ii91LzE5MjI1NTYyNSJ9.m6UXmOZB4P5aDEzW8NlIro6a_oNBtl6QaTF-4MUr8Yc&u=618ee6c5eb68a948ec29fc112d1ad85a34ced79c&v=4",
"activity": {
"code": {
"total_commits": 0,
@@ -1957,574 +614,856 @@
"commits": [],
"pull_requests": [
{
- "number": 1195,
- "title": "feat: integrate contextualized actions + bug fixes ",
+ "number": 1249,
+ "title": "Release/v.1.0",
"state": "CLOSED",
"merged": false,
- "created_at": "2024-12-18T05:26:54Z",
- "updated_at": "2024-12-18T05:27:15Z",
- "body": "Integrate memories (files) + character details to in actions plus a few bug fixes",
+ "created_at": "2024-12-19T20:46:20Z",
+ "updated_at": "2024-12-19T20:55:58Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nInitial V-1.0 of SimsAI client package for Eliza framework. Used for testing your agents and interacting on the Simsai platform. SimsAI is a social media thats only for agents, allowing humans to only comment, prompt like or repost their followed agents. Jeets or posts by the agents, will eventually be mintable as NFTs to the user with royalties for the creators and the agent wallets.\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow risk. New client, configurable by the user.\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nThis allows agents to post on the SimsAI platform. Specifically, Jeeter the twitter replica for agents.\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\nClient Change. Feature.\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\nTesting can be done by:\r\n\r\n1. Adding necessary env vars.\r\n2. Running as normal (with the dry run variable on with their character file)\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
"files": [
{
"path": ".env.example",
- "additions": 2,
- "deletions": 7
- },
- {
- "path": ".github/workflows/sync-upstream.yaml",
- "additions": 80,
+ "additions": 7,
"deletions": 0
},
- {
- "path": ".gitignore",
- "additions": 5,
- "deletions": 1
- },
{
"path": "agent/package.json",
- "additions": 3,
- "deletions": 1
+ "additions": 60,
+ "deletions": 59
},
{
"path": "agent/src/index.ts",
- "additions": 54,
- "deletions": 12
+ "additions": 10,
+ "deletions": 3
},
{
- "path": "characters/chronis.character.json",
- "additions": 321,
+ "path": "characters/simsai.character.json",
+ "additions": 89,
"deletions": 0
},
{
- "path": "characters/logging-addict.character.json",
- "additions": 262,
+ "path": "packages/client-simsai/.npmignore",
+ "additions": 6,
"deletions": 0
},
{
- "path": "docs/api/classes/AgentRuntime.md",
- "additions": 40,
- "deletions": 40
- },
- {
- "path": "docs/api/classes/CacheManager.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/classes/DatabaseAdapter.md",
- "additions": 41,
- "deletions": 41
- },
- {
- "path": "docs/api/classes/DbCacheAdapter.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/classes/FsCacheAdapter.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/classes/MemoryCacheAdapter.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/classes/MemoryManager.md",
- "additions": 13,
- "deletions": 13
- },
- {
- "path": "docs/api/classes/Service.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/enumerations/Clients.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/enumerations/GoalStatus.md",
+ "path": "packages/client-simsai/eslint.config.mjs",
"additions": 3,
- "deletions": 3
+ "deletions": 0
},
{
- "path": "docs/api/enumerations/LoggingLevel.md",
- "additions": 3,
- "deletions": 3
+ "path": "packages/client-simsai/package.json",
+ "additions": 24,
+ "deletions": 0
},
{
- "path": "docs/api/enumerations/ModelClass.md",
- "additions": 5,
- "deletions": 5
+ "path": "packages/client-simsai/src/index.ts",
+ "additions": 48,
+ "deletions": 0
},
{
- "path": "docs/api/enumerations/ModelProviderName.md",
- "additions": 76,
+ "path": "packages/client-simsai/src/jeeter/base.ts",
+ "additions": 607,
"deletions": 0
},
{
- "path": "docs/api/enumerations/ServiceType.md",
- "additions": 8,
- "deletions": 8
+ "path": "packages/client-simsai/src/jeeter/client.ts",
+ "additions": 302,
+ "deletions": 0
},
{
- "path": "docs/api/functions/addHeader.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/client-simsai/src/jeeter/constants.ts",
+ "additions": 115,
+ "deletions": 0
},
{
- "path": "docs/api/functions/composeActionExamples.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/client-simsai/src/jeeter/environment.ts",
+ "additions": 48,
+ "deletions": 0
},
{
- "path": "docs/api/functions/composeContext.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/client-simsai/src/jeeter/interactions.ts",
+ "additions": 465,
+ "deletions": 0
},
{
- "path": "docs/api/functions/configureSettings.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/client-simsai/src/jeeter/post.ts",
+ "additions": 222,
+ "deletions": 0
},
{
- "path": "docs/api/functions/createGoal.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/client-simsai/src/jeeter/search.ts",
+ "additions": 597,
+ "deletions": 0
},
{
- "path": "docs/api/functions/createRelationship.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/client-simsai/src/jeeter/types.ts",
+ "additions": 224,
+ "deletions": 0
},
{
- "path": "docs/api/functions/embed.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/client-simsai/src/jeeter/utils.ts",
+ "additions": 349,
+ "deletions": 0
},
{
- "path": "docs/api/functions/findNearestEnvFile.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/client-simsai/tsconfig.json",
+ "additions": 10,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatActionNames.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/client-simsai/tsup.config.ts",
+ "additions": 20,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatActions.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/core/src/types.ts",
+ "additions": 7,
+ "deletions": 2
},
{
- "path": "docs/api/functions/formatActors.md",
- "additions": 1,
- "deletions": 1
- },
+ "path": "pnpm-lock.yaml",
+ "additions": 23116,
+ "deletions": 18054
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "ileana-pr",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/103957712?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkyMDAsIm5iZiI6MTczNDY0ODAwMCwicGF0aCI6Ii91LzEwMzk1NzcxMiJ9.u9qrd1GMtEVN5qePaZWSeDuQhZDSkFlWmmVmXRCEMKU&u=b865d84e1f5bffd16f907c5318a177dfc9f927d0&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1248,
+ "title": "feat: news-plugin",
+ "state": "OPEN",
+ "merged": false,
+ "created_at": "2024-12-19T20:30:07Z",
+ "updated_at": "2024-12-19T20:31:12Z",
+ "body": "\r\n\r\n# Relates to:\r\nAI Agent Dev School Video #2: https://www.youtube.com/watch?v=XenGeAcPAQo&t=3383s \r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow \r\n\r\n\r\n\r\n# Background\r\nShaw shows us how to create a simple plugin that returns the latest news on a specific topic. This is an example code of a completed currentNewsAction. It can be modified and expanded for added functionality. \r\n\r\n## What does this PR do?\r\n\r\nAdds an example of the news plugin described by Shaw. \r\n\r\n## What kind of change is this?\r\n\r\nFeatures \r\n\r\n\r\n\r\n\r\n\r\n\r\nIt will help future students to see an example of the code and more experienced devs to add functionality to a useful plugin. \r\n\r\n# Documentation changes needed?\r\n\r\nnone, but I can add documentation \r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\nI tested the plugin with C3PO character and was able to retrieve news on different topics. \r\n\r\nFormatting of the output can use some improvement. \r\n\r\n## Where should a reviewer start?\r\n\r\nnews.ts \r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
{
- "path": "docs/api/functions/formatEvaluatorExampleDescriptions.md",
- "additions": 1,
- "deletions": 1
+ "path": ".env.example",
+ "additions": 3,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatEvaluatorExamples.md",
+ "path": "agent/package.json",
"additions": 1,
- "deletions": 1
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatEvaluatorNames.md",
- "additions": 1,
- "deletions": 1
+ "path": "agent/src/index.ts",
+ "additions": 2,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatEvaluators.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-news/.npmignore",
+ "additions": 6,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatGoalsAsString.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-news/eslint.config.mjs",
+ "additions": 3,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatMessages.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-news/package.json",
+ "additions": 19,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatPosts.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-news/src/actions/index.ts",
+ "additions": 2,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatRelationships.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-news/src/actions/news.ts",
+ "additions": 172,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatTimestamp.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-news/src/index.ts",
+ "additions": 10,
+ "deletions": 0
},
{
- "path": "docs/api/functions/generateCaption.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-news/tsconfig.json",
+ "additions": 13,
+ "deletions": 0
},
{
- "path": "docs/api/functions/generateImage.md",
- "additions": 1,
- "deletions": 1
- },
+ "path": "packages/plugin-news/tsup.config.ts",
+ "additions": 20,
+ "deletions": 0
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "karelvuong",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/95452264?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0ODAsIm5iZiI6MTczNDY0NzI4MCwicGF0aCI6Ii91Lzk1NDUyMjY0In0.oN52fhkgFgvEaNu1V3xXp5TP8PU9DPwM0A0M4KD5yBM&u=a0ca99a025844781a3b09ed9616bf1308ffaa601&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1247,
+ "title": "feat: Add Treasure Plugin",
+ "state": "OPEN",
+ "merged": false,
+ "created_at": "2024-12-19T20:15:23Z",
+ "updated_at": "2024-12-19T20:18:35Z",
+ "body": "\r\n\r\n# Relates to:\r\nAdds Treasure support for Eliza agents.\r\n\r\n# Risks\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n[Treasure](https://treasure.lol) is a gaming-centric L2 rollup built on ZKsync. This PR adds support for Eliza to interact with the Treasure mainnet, with logic/implementation borrowed from #1225 and #1128.\r\n\r\nInitially, only the `transfer` function has been supported with additional features to come to hook into the Treasure Development Kit (TDK), Magicswap, and other Treasure platform features.\r\n\r\n## What kind of change is this?\r\n\r\nFeature\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\nSpin up an agent with the `treasure` plugin + review `plugin-treasure`.\r\n\r\n## Detailed testing steps\r\n1. In `.env`, should set the value for `TREASURE_ADDRESS` (public address for the agent account), `TREASURE_PRIVATE_KEY` (private key for the same account), and `TREASURE_RPC_URL` as https://rpc.treasure.lol.\r\nTo test the transfer function properly, this address needs tokens. [Treasure Bridge](https://bridge.treasure.lol/) can be used to bridge MAGIC directly from `arb1` to an address on `treasure`.\r\n2. Run the agent and prompt it with: \"Send 0.1 MAGIC to \" - e.g. \"send 0.1 MAGIC to 0x7A6a48b8e7BD3451Fc57f01Ad9Aaea62cdf5956E\"\r\n3. Assuming you had 1 MAGIC to send, the agent will confirm and respond with the tx hash, e.g. \"Successfully sent 1 MAGIC to 0x7A6a48b8e7BD3451Fc57f01Ad9Aaea62cdf5956E\r\nTransaction: 0x45759cf3e76d26610154a094c87572fbd7f5ef909f62c4ea13f7defb0d87cf0b\"\r\nThe tx hash can be checked on the Treasure Block Explorer (https://treasurescan.io/)",
+ "files": [
{
- "path": "docs/api/functions/generateMessageResponse.md",
- "additions": 1,
- "deletions": 1
+ "path": ".env.example",
+ "additions": 5,
+ "deletions": 0
},
{
- "path": "docs/api/functions/generateObject.md",
- "additions": 1,
- "deletions": 1
+ "path": "agent/package.json",
+ "additions": 60,
+ "deletions": 59
},
{
- "path": "docs/api/functions/generateObjectArray.md",
- "additions": 1,
- "deletions": 1
+ "path": "agent/src/index.ts",
+ "additions": 7,
+ "deletions": 3
},
{
- "path": "docs/api/functions/generateObjectV2.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-treasure/package.json",
+ "additions": 20,
+ "deletions": 0
},
{
- "path": "docs/api/functions/generateShouldRespond.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-treasure/src/actions/transfer.ts",
+ "additions": 215,
+ "deletions": 0
},
{
- "path": "docs/api/functions/generateText.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-treasure/src/environment.ts",
+ "additions": 43,
+ "deletions": 0
},
{
- "path": "docs/api/functions/generateTextArray.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-treasure/src/index.ts",
+ "additions": 13,
+ "deletions": 0
},
{
- "path": "docs/api/functions/generateTrueOrFalse.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-treasure/tsconfig.json",
+ "additions": 10,
+ "deletions": 0
},
{
- "path": "docs/api/functions/generateWebSearch.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-treasure/tsup.config.ts",
+ "additions": 20,
+ "deletions": 0
},
{
- "path": "docs/api/functions/getActorDetails.md",
- "additions": 1,
- "deletions": 1
- },
+ "path": "pnpm-lock.yaml",
+ "additions": 21,
+ "deletions": 0
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "luisalrp",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/31384138?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg1NDAsIm5iZiI6MTczNDY0NzM0MCwicGF0aCI6Ii91LzMxMzg0MTM4In0.XQRH_JmHfJ9SSP2y-iWTJbtF0mMQ96QBOO5JmXkIdDI&u=dd50e8885f7f8e2372d955b7fae623bba8be9ec2&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1243,
+ "title": "Fix visibility issue github image cicd",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T16:36:23Z",
+ "updated_at": "2024-12-19T22:02:34Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n[Publish an official Docker Image in ghcr. #876](https://github.com/ai16z/eliza/issues/876) and PR [feat : github image cicd #889](https://github.com/ai16z/eliza/pull/889) by @v1xingyue.\r\n\r\n# Risks\r\n\r\nLow. I do not see risks.\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\nUpdates image.yaml to add the task to change package visibility.\r\n",
+ "files": [
{
- "path": "docs/api/functions/getEmbeddingConfig.md",
- "additions": 1,
- "deletions": 1
- },
+ "path": ".github/workflows/image.yaml",
+ "additions": 56,
+ "deletions": 47
+ }
+ ],
+ "reviews": [
{
- "path": "docs/api/functions/getEmbeddingType.md",
- "additions": 1,
- "deletions": 1
- },
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM! "
+ }
+ ],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 1,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "robin-rrt",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/66296664?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91LzY2Mjk2NjY0In0.xDIk15VBLjxq_UQ581P8lfJH4UZ_Es24hWAMsjRhmL0&u=3c317252695c6601ff8f1189de214e05a87458bd&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1241,
+ "title": "feat: add avail plugin",
+ "state": "OPEN",
+ "merged": false,
+ "created_at": "2024-12-19T15:54:49Z",
+ "updated_at": "2024-12-19T15:59:35Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nN/A\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow.\r\nThe main implementation risk is that the Plugin doesn't work as intended.\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n[Avail](https://www.availproject.org/) aims to accelerate Web3's unification using its cutting-edge modular technology stack, which combines data availability, aggregation, and shared security.\r\n\r\nIn this version, the `transfer` and `submitData` actions are supported.\r\n\r\nMultiple L2s are working with Avail to meet their data availability and interoperability needs.\r\n\r\n## What kind of change is this?\r\n\r\nFeatures (non-breaking change which adds functionality)\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\nSince Avail is a Substrate based network, and not EVM-compatible (cannot work with `plugin-evm`), it requires some docs to show how to submit data and transfer tokens. I have updated the documentation accordingly in the README for the plugin.\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\nMost of the changes are in `plugin-avail`\r\n\r\n\r\n## Detailed testing steps\r\n- In `.env` you should set the value for `AVAIL_ADDRESS` (this is the public address for the agent account) and `AVAIL_SEED` (seed phrase for the same account).\r\n- **Transfer AVAIL**\r\n - To test transfer function, you need tokens in your Avail account. On testnet, you can use the [Avail Faucet](https://faucet.avail.tools/). If you need more please ping me, and I can send it over. \r\n - Run the agent and prompt it with: \"send 1 AVAIL to \" - e.g. `send 1 AVAIL to 5GWbvXjefEvXXETtKQH7YBsUaPc379KAQATW1eqeJT26cbsK`\r\n - Assuming everything goes smoothly the agent returns with the Tx Hash, and Block Hash. \r\nThe tx hash can be checked on the Avail block explorer at https://avail-turing.subscan.io/\r\n- **Submit Data**\r\n - To test data submission, you need tokens in your Avail account to pay fees. On testnet, you can use the [Avail Faucet](https://faucet.avail.tools/). If you need more please ping me, and I can send it over. \r\n - Run the agent and prompt it with: \"Submit the following data to Avail \" - e.g. `Submit the following data to Avail \"Hello World!\"`\r\n - Assuming everything goes smoothly the agent returns with the Tx Hash, and Block Hash. \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n## Discord username\r\nRobinRRT\r\n\r\n",
+ "files": [
{
- "path": "docs/api/functions/getEmbeddingZeroVector.md",
- "additions": 1,
- "deletions": 1
+ "path": ".env.example",
+ "additions": 6,
+ "deletions": 0
},
{
- "path": "docs/api/functions/getEndpoint.md",
+ "path": "agent/package.json",
"additions": 1,
- "deletions": 1
+ "deletions": 0
},
{
- "path": "docs/api/functions/getEnvVariable.md",
- "additions": 1,
- "deletions": 1
+ "path": "agent/src/index.ts",
+ "additions": 3,
+ "deletions": 0
},
{
- "path": "docs/api/functions/getGoals.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-avail/.npmignore",
+ "additions": 6,
+ "deletions": 0
},
{
- "path": "docs/api/functions/getModel.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-avail/README.md",
+ "additions": 25,
+ "deletions": 0
},
{
- "path": "docs/api/functions/getProviders.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-avail/eslint.config.mjs",
+ "additions": 3,
+ "deletions": 0
},
{
- "path": "docs/api/functions/getRelationship.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-avail/package.json",
+ "additions": 21,
+ "deletions": 0
},
{
- "path": "docs/api/functions/getRelationships.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-avail/src/actions/submitData.ts",
+ "additions": 238,
+ "deletions": 0
},
{
- "path": "docs/api/functions/handleProvider.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-avail/src/actions/transfer.ts",
+ "additions": 237,
+ "deletions": 0
},
{
- "path": "docs/api/functions/hasEnvVariable.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-avail/src/environment.ts",
+ "additions": 36,
+ "deletions": 0
},
{
- "path": "docs/api/functions/loadEnvConfig.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-avail/src/index.ts",
+ "additions": 23,
+ "deletions": 0
},
{
- "path": "docs/api/functions/parseBooleanFromText.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-avail/tsconfig.json",
+ "additions": 13,
+ "deletions": 0
},
{
- "path": "docs/api/functions/parseJSONObjectFromText.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-avail/tsup.config.ts",
+ "additions": 21,
+ "deletions": 0
},
{
- "path": "docs/api/functions/parseJsonArrayFromText.md",
- "additions": 1,
- "deletions": 1
- },
+ "path": "pnpm-lock.yaml",
+ "additions": 0,
+ "deletions": 37536
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "jonathangus",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/7723195?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg3MjAsIm5iZiI6MTczNDY0NzUyMCwicGF0aCI6Ii91Lzc3MjMxOTUifQ.htne0skqI0Y2OwK1K8bRO0AevoSbqtOjKav7qWgZDAo&u=2f07ca181065b387adcebe19eaf0798526e6f061&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1239,
+ "title": "fix: Sync UI Client with server port env",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T13:56:38Z",
+ "updated_at": "2024-12-19T21:54:31Z",
+ "body": "\r\n\r\n# Risks\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nIt uses SERVER_PORT environment variable in the client app\r\n\r\n## What kind of change is this?\r\nImprovements for developer experience\r\n\r\n## Why are we doing this? Any context or related work?\r\nExperienced this issue when developing and wanted to use another port then 3000\r\n\r\n# Documentation changes needed?\r\nMy changes do not require a change to the project documentation.\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
{
- "path": "docs/api/functions/parseShouldRespondFromText.md",
- "additions": 1,
+ "path": "client/vite.config.ts",
+ "additions": 4,
"deletions": 1
- },
+ }
+ ],
+ "reviews": [
{
- "path": "docs/api/functions/splitChunks.md",
- "additions": 1,
- "deletions": 1
- },
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM - thank you!"
+ }
+ ],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 1,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "stopmalone",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/191122176?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0ODAsIm5iZiI6MTczNDY0NzI4MCwicGF0aCI6Ii91LzE5MTEyMjE3NiJ9.ybYAjXg2xaOgZcqMmzsOuJjvH0kd5lS5Gz7MnOiTJ7Q&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1238,
+ "title": "Feat/deva client integration",
+ "state": "OPEN",
+ "merged": false,
+ "created_at": "2024-12-19T12:44:48Z",
+ "updated_at": "2024-12-19T17:45:19Z",
+ "body": "# Pull Request: Integrate Deva into Eliza\r\n\r\n## Relates to\r\n\r\nThis PR adds a new [Deva](https://www.deva.me/) client integration for the Eliza AI agent, enabling posting and scheduling posts to the [Deva](https://www.deva.me/) feed.\r\n\r\n## Risks\r\n\r\n- **Minimal Risk**: This integration is additive and does not alter existing functionalities of Eliza.\r\n- **Dependency Management**: Introduces a new dependency on Deva's API, which requires monitoring for future updates or changes.\r\n- **Data Privacy**: Ensures that any data shared between Eliza and Deva complies with our privacy policies.\r\n\r\n## Background\r\n\r\n### What does this PR do?\r\n\r\nThis PR introduces the capability to post and schedule content directly to the [Deva platform](https://www.deva.me/) from the Eliza AI agent. Users can now seamlessly integrate their Eliza-generated content with [Deva](https://www.deva.me/), enhancing their content distribution and engagement strategies.\r\n\r\n### What kind of change is this?\r\n\r\n**Feature**: This is a non-breaking change that adds new functionality to the Eliza AI agent by integrating with Deva\u2019s API for posting and scheduling content.\r\n\r\n## Documentation Changes Needed?\r\n\r\nNot at the moment.\r\n\r\n## Testing\r\n\r\n### Detailed Testing Steps\r\n\r\n1. **Create a Deva Account**\r\n - Navigate to [deva.me](https://www.deva.me/), create an account, and press the \"Get Started\" button in the top right.\r\n - ![Get Started](https://github.com/user-attachments/assets/a31ebe01-3ee7-40f5-8e30-f59c79c642fe)\r\n\r\n2. **Complete Onboarding**\r\n - Click through the onboarding screens and connect your preferred social account (e.g., Twitter) to Deva.\r\n\r\n3. **Access the Deva Feed**\r\n - You can now see the Deva feed, where you can post and interact with other Devas.\r\n - \r\n\r\n4. **Create an Application to get the token**\r\n - At this point, you'll be able to get a token to interact with Deva, to do so: \r\n - Navigate to Apps chapter in settings by clicking the user icon in top right corner and then settings -> Apps, or opening [apps](https://www.deva.me/settings/apps)\r\n - Press Apps and Session\r\n
![image](https://github.com/user-attachments/assets/9fda36ac-3675-4f30-8c48-9b91e71a741e)\r\n - Press Create new app\r\n
![image](https://github.com/user-attachments/assets/32fc9b04-510e-4a90-876c-e4f6d2e562d7)\r\n - You are redirected to the form of the app creation, Name, Redirect URL and descriptions are necessary fields. Permissions are preselected and they are exactly enough for Eliza agent to post a message in feed.\r\n - After creating an app, select it from the list of apps;\r\n - Inside you will find a Get Token button, to generate a new token for your app:\r\n
![image](https://github.com/user-attachments/assets/307ab088-0508-496e-bc8e-4ded833e8b4f)\r\n - Later, it'll be visible in the list:\r\n
![image](https://github.com/user-attachments/assets/39034c0d-3cf3-4a69-aaab-8cd1740d9ba6)\r\n\r\n5. **Update Environment Variables**\r\n - Once you have the token, update the environment variables in the `.env` file:\r\n ```env\r\n DEVA_API_KEY=YourApiKey\r\n DEVA_API_BASE_URL=https://api.deva.me # Production API URL\r\n ```\r\n\r\n6. **Select Deva Client as Default Character**\r\n - Select the Deva client as Eliza's default character and choose the desired model:\r\n
![Select Deva Client](https://github.com/user-attachments/assets/1120ebb4-4618-4364-bbf8-7040b6bda8c0)\r\n\r\n7. **Run the Application**\r\n - Execute the following commands to install dependencies and start the application:\r\n ```bash\r\n pnpm install && pnpm start\r\n ```\r\n - This will initiate the Deva client:\r\n
![Initiate Deva Client](https://github.com/user-attachments/assets/4ef64f0b-c2c1-4a4b-a6b5-0461433af022)\r\n - Fetch the persona associated with your agent and the posts that you have pushed to the Deva feed:\r\n
![Fetch Persona and Posts](https://github.com/user-attachments/assets/5a698b06-b616-47cc-8318-355a91cc424c)\r\n - Once done, Eliza will post one message to the Deva feed immediately and schedule another one as a test message:\r\n
![Post Messages](https://github.com/user-attachments/assets/523d69f4-1f3f-4d49-82a1-163e3cd4d128)\r\n8. **Eliza agent's post is in the feed!**\r\n - \r\n\r\n\r\n### Staging Environment Testing\r\n\r\nTo avoid populating the production Deva feed, you can perform the same flow in the [staging environment](https://staging.deva.me/). Ensure you update the related environment variable:\r\n\r\n```env\r\nDEVA_API_BASE_URL=https://api-staging.deva.me # Staging API URL\r\n",
+ "files": [
{
- "path": "docs/api/functions/stringToUuid.md",
- "additions": 1,
- "deletions": 1
+ "path": ".env.example",
+ "additions": 4,
+ "deletions": 0
},
{
- "path": "docs/api/functions/trimTokens.md",
- "additions": 1,
- "deletions": 1
+ "path": ".gitignore",
+ "additions": 2,
+ "deletions": 0
},
{
- "path": "docs/api/functions/updateGoal.md",
+ "path": "agent/package.json",
"additions": 1,
- "deletions": 1
+ "deletions": 0
},
{
- "path": "docs/api/functions/validateCharacterConfig.md",
- "additions": 1,
- "deletions": 1
+ "path": "agent/src/index.ts",
+ "additions": 6,
+ "deletions": 0
},
{
- "path": "docs/api/functions/validateEnv.md",
- "additions": 1,
- "deletions": 1
+ "path": "docs/api/enumerations/Clients.md",
+ "additions": 9,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/Account.md",
+ "path": "packages/client-deva/.npmignore",
"additions": 6,
- "deletions": 6
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/Action.md",
- "additions": 6,
- "deletions": 6
+ "path": "packages/client-deva/eslint.config.mjs",
+ "additions": 3,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/ActionExample.md",
- "additions": 2,
- "deletions": 2
+ "path": "packages/client-deva/package.json",
+ "additions": 24,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/Actor.md",
- "additions": 4,
- "deletions": 4
+ "path": "packages/client-deva/src/base.ts",
+ "additions": 60,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/Content.md",
- "additions": 6,
- "deletions": 6
+ "path": "packages/client-deva/src/controller.ts",
+ "additions": 242,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/ConversationExample.md",
- "additions": 2,
- "deletions": 2
+ "path": "packages/client-deva/src/devaClient.ts",
+ "additions": 30,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/EvaluationExample.md",
- "additions": 3,
- "deletions": 3
+ "path": "packages/client-deva/src/enviroment.ts",
+ "additions": 32,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/Evaluator.md",
- "additions": 7,
- "deletions": 7
+ "path": "packages/client-deva/src/index.ts",
+ "additions": 28,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/GenerationOptions.md",
- "additions": 9,
- "deletions": 9
+ "path": "packages/client-deva/src/templates.ts",
+ "additions": 24,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/Goal.md",
- "additions": 6,
- "deletions": 6
+ "path": "packages/client-deva/src/types.ts",
+ "additions": 21,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/IAgentRuntime.md",
- "additions": 35,
- "deletions": 35
+ "path": "packages/client-deva/tsconfig.json",
+ "additions": 8,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/IBrowserService.md",
- "additions": 4,
- "deletions": 4
+ "path": "packages/client-deva/tsup.config.ts",
+ "additions": 20,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/ICacheAdapter.md",
- "additions": 3,
- "deletions": 3
- },
+ "path": "packages/core/src/types.ts",
+ "additions": 2,
+ "deletions": 0
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "yjshi2015",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/27291507?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkxNDAsIm5iZiI6MTczNDY0Nzk0MCwicGF0aCI6Ii91LzI3MjkxNTA3In0.xoqYjUq9ys7ZiKG80ewP_HiLtsLumNcsIRVYTO9lg4g&u=967c2c7ba1dddfaa2f14b55ef74ee6f4c0f2b5e6&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1237,
+ "title": "Update trump.character.json - Enhance terminology in the project for clarity and inclusivity",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T12:19:10Z",
+ "updated_at": "2024-12-19T22:25:39Z",
+ "body": "While reviewing the documentation, I noticed the term \u201cChina virus.\u201d To maintain professionalism and align with WHO naming standards, I suggest replacing it with terms like \u201cCOVID-19\u201d or \u201cSARS-CoV-2.\u201d This adjustment not only ensures accuracy but also promotes inclusivity and avoids potential misunderstandings.",
+ "files": [
{
- "path": "docs/api/interfaces/ICacheManager.md",
- "additions": 3,
- "deletions": 3
- },
+ "path": "characters/trump.character.json",
+ "additions": 1,
+ "deletions": 1
+ }
+ ],
+ "reviews": [
{
- "path": "docs/api/interfaces/IDatabaseAdapter.md",
- "additions": 37,
- "deletions": 37
- },
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM!"
+ }
+ ],
+ "comments": [
{
- "path": "docs/api/interfaces/IDatabaseCacheAdapter.md",
- "additions": 3,
- "deletions": 3
- },
+ "author": "lalalune",
+ "body": "> While reviewing the documentation, I noticed the term \u201cChina virus.\u201d To maintain professionalism and align with WHO naming standards, I suggest replacing it with terms like \u201cCOVID-19\u201d or \u201cSARS-CoV-2.\u201d This adjustment not only ensures accuracy but also promotes inclusivity and avoids potential misunderstandings.\r\n\r\nThe point of characters is to capture the person accurately, not the facts. Trump says silly offensive stuff, and we wanted to capture that. He would not say SARS-COVID-19. I disagree with about 99% of the stuff he says, and 99% of the stuff his character file says. That being said, I care about art, and not letting art be compromised by politics.\r\n\r\nWe love people all over the world, and personally I will be visiting China in a couple days to meet everyone. I don't believe that we should be against any group for their nationality. But we shouldn't kill the comedy and make our characters worse-- that's why OpenAI's models suck now. It's a slippery slope that will reduce bravery, integrity and quality."
+ }
+ ]
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 1,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "azurwastaken",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/30268138?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg2MDAsIm5iZiI6MTczNDY0NzQwMCwicGF0aCI6Ii91LzMwMjY4MTM4In0.0TrV_Q5n3Vx_Ly-e8SqcXksrXPMO2MatiDEMRubGAw4&u=9f22ac121f4dbfc0e56a0f165dfc306d419ec514&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1236,
+ "title": "Update README for french, spanish and italian language",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T11:24:39Z",
+ "updated_at": "2024-12-19T21:55:23Z",
+ "body": "# Relates to: N/A\r\n\r\n# Risks\r\n\r\nNo risk\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nUpdate readme FR/ES/IT for typo, spelling, etc \r\n\r\n## What kind of change is this?\r\n\r\nUpdates (new versions of included code)\r\n\r\n## Why are we doing this? Any context or related work?\r\n--> Incorrect use of language \r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n## Discord username\r\n\r\n--> azurwastaken\r\n",
+ "files": [
{
- "path": "docs/api/interfaces/IImageDescriptionService.md",
+ "path": "README_ES.md",
"additions": 3,
"deletions": 3
},
{
- "path": "docs/api/interfaces/IMemoryManager.md",
- "additions": 13,
- "deletions": 13
- },
- {
- "path": "docs/api/interfaces/IPdfService.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/ISpeechService.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/ITextGenerationService.md",
- "additions": 6,
- "deletions": 6
- },
- {
- "path": "docs/api/interfaces/ITranscriptionService.md",
+ "path": "README_FR.md",
"additions": 6,
"deletions": 6
},
{
- "path": "docs/api/interfaces/IVideoService.md",
- "additions": 6,
- "deletions": 6
- },
+ "path": "README_IT.md",
+ "additions": 7,
+ "deletions": 7
+ }
+ ],
+ "reviews": [
{
- "path": "docs/api/interfaces/Memory.md",
- "additions": 9,
- "deletions": 9
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM !"
}
],
- "reviews": [],
"comments": []
}
]
},
"issues": {
- "total_opened": 2,
- "opened": [
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 1,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "simpletrontdip",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/20158564?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5MDAsIm5iZiI6MTczNDY0NzcwMCwicGF0aCI6Ii91LzIwMTU4NTY0In0.dPZab45J8lkENAvzV8Qyi-otNiiTGf44oBcjqxoS5mg&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
{
- "number": 1194,
- "title": "Improve Logging in /packages/plugin-coinbase/src/plugins",
- "state": "OPEN",
- "created_at": "2024-12-18T04:16:18Z",
- "updated_at": "2024-12-18T08:38:48Z",
- "body": "**Is your feature request related to a problem? Please describe.**\n\nThe current logging mechanism in the `/packages/plugin-coinbase/src/plugins` directory lacks consistency and detail, making it challenging to debug and monitor the plugin's behavior effectively.\n\n**Describe the solution you'd like**\n\nIntegrate the `elizaLogger` construct to standardize logging across the plugin. This should include:\n- Consistent log levels (INFO, DEBUG, ERROR) for different operations.\n- Detailed log messages that include context such as function names and parameters.\n- Examples of how to implement `elizaLogger` in existing functions for better clarity.\n\n**Describe alternatives you've considered**\n\n- Continuing with the current ad-hoc logging approach.\n- Using a third-party logging library, though this may introduce unnecessary dependencies.\n\n**Additional context**\n\nPlease refer to existing examples in the `/packages/plugin-coinbase/src/plugins` directory and extend them where possible. Ensure that the new logging strategy aligns with the overall architecture of the `eliza` project.",
- "labels": [
+ "number": 1229,
+ "title": "feat: add parse mode=Markdown, enhance telegram bot output",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T07:31:17Z",
+ "updated_at": "2024-12-19T07:50:08Z",
+ "body": "# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nIt added `parse_mode=\"Markdown\"` to support code suggestion in Telegram bot output\r\n\r\n## What kind of change is this?\r\n\r\nImprovements (misc. changes to existing features)\r\n\r\n## Why are we doing this? Any context or related work?\r\nIt would be nice to have Markdown support in bot output, this is heavily used in all LLMs output\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n## Screenshots\r\n\r\n### Before\r\n\r\n\r\n### After\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
{
- "name": "enhancement",
- "color": "a2eeef",
- "description": "New feature or request"
- },
+ "path": "packages/client-telegram/src/messageManager.ts",
+ "additions": 1,
+ "deletions": 0
+ }
+ ],
+ "reviews": [
{
- "name": "good first issue",
- "color": "7057ff",
- "description": "Good for newcomers"
- },
+ "author": "shakkernerd",
+ "state": "APPROVED",
+ "body": "This is a good one!"
+ }
+ ],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 1,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "mobi8",
+ "score": 0,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/116540956?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0MjAsIm5iZiI6MTczNDY0NzIyMCwicGF0aCI6Ii91LzExNjU0MDk1NiJ9.kHchK_MjTR4daYT3OnAj_CC1N0leKgjEP-1jZk4UaLg&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1228,
+ "title": "Create requirements.txt",
+ "state": "CLOSED",
+ "merged": false,
+ "created_at": "2024-12-19T06:38:42Z",
+ "updated_at": "2024-12-19T06:48:44Z",
+ "body": "add\r\n\r\n\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
{
- "name": "logging",
- "color": "ededed",
- "description": null
+ "path": "requirements.txt",
+ "additions": 2,
+ "deletions": 0
}
],
+ "reviews": [],
"comments": [
{
- "author": "9547",
- "body": "@monilpat may I take this one?"
+ "author": "shakkernerd",
+ "body": "A requirements.txt file is not needed since this is a TypeScript project."
}
]
- },
- {
- "number": 1192,
- "title": "Enhance Logging in /packages/plugin-coinbase/src/plugins Using elizaLogger",
- "state": "CLOSED",
- "created_at": "2024-12-18T01:45:28Z",
- "updated_at": "2024-12-18T01:46:15Z",
- "body": "---\nname: Feature request\nabout: Suggest an idea for this project\ntitle: \"\"\nlabels: \"enhancement\"\nassignees: \"\"\n---\n\n**Is your feature request related to a problem? Please describe.**\n\nCurrently, the logging mechanism in `/packages/plugin-coinbase/src/plugins` lacks detailed output, making it difficult to trace issues and monitor performance effectively.\n\n**Describe the solution you'd like**\n\nIntegrate the `elizaLogger` construct to provide more comprehensive logging throughout the codebase. This would involve:\n- Adding entry and exit logs for key functions.\n- Including detailed error logging with stack traces.\n- Logging significant state changes and data processing steps.\n\n**Describe alternatives you've considered**\n\nConsidered using a third-party logging library, but `elizaLogger` offers a more integrated solution with existing infrastructure.\n\n**Additional context**\n\nUtilize existing examples of `elizaLogger` usage in other parts of the codebase as a reference. Extend these examples to cover more complex scenarios within the `/packages/plugin-coinbase/src/plugins` path.",
- "labels": [
- {
- "name": "enhancement",
- "color": "a2eeef",
- "description": "New feature or request"
- }
- ],
- "comments": []
}
]
},
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
"engagement": {
- "total_comments": 1,
+ "total_comments": 0,
"total_reviews": 0,
"comments": [],
"reviews": []
@@ -2532,10 +1471,10 @@
}
},
{
- "contributor": "cwrage77",
+ "contributor": "9547",
"score": 0,
"summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/10321212?u=deda48521940edac89df630f85a5f9df5cdcb95b&v=4",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/29431502?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkyMDAsIm5iZiI6MTczNDY0ODAwMCwicGF0aCI6Ii91LzI5NDMxNTAyIn0.PAeiPZdpnsK9tsuSRwgz1z1YgHWgk8LTZ7oa9Qj6tbs&u=def2043f3c532d18cae388fcec8d24a21e08d044&v=4",
"activity": {
"code": {
"total_commits": 0,
@@ -2543,102 +1482,91 @@
"commits": [],
"pull_requests": [
{
- "number": 1193,
- "title": "Feature/news plugin",
+ "number": 1227,
+ "title": "docs(readme): add bash code block for all bash scripts",
"state": "CLOSED",
"merged": false,
- "created_at": "2024-12-18T02:55:07Z",
- "updated_at": "2024-12-18T02:55:44Z",
- "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "created_at": "2024-12-19T05:49:29Z",
+ "updated_at": "2024-12-19T06:32:39Z",
+ "body": "Add `bash` code block for all the bash scripts, better to markdown rendering\r\n",
"files": [
{
- "path": ".gitignore",
- "additions": 56,
- "deletions": 54
- },
- {
- "path": "PZ-README.md",
- "additions": 14,
- "deletions": 0
+ "path": "README.md",
+ "additions": 2,
+ "deletions": 2
},
{
- "path": "agent/package.json",
- "additions": 1,
- "deletions": 0
+ "path": "README_CN.md",
+ "additions": 3,
+ "deletions": 3
},
{
- "path": "agent/src/index.ts",
+ "path": "README_DE.md",
"additions": 2,
- "deletions": 0
+ "deletions": 2
},
{
- "path": "characters/courage.character.json",
- "additions": 182,
- "deletions": 0
+ "path": "README_ES.md",
+ "additions": 3,
+ "deletions": 3
},
{
- "path": "characters/cryptodegen.character.json",
- "additions": 265,
- "deletions": 0
+ "path": "README_FR.md",
+ "additions": 2,
+ "deletions": 2
},
{
- "path": "packages/plugin-news/.npmignore",
- "additions": 6,
- "deletions": 0
+ "path": "README_HE.md",
+ "additions": 4,
+ "deletions": 5
},
{
- "path": "packages/plugin-news/eslint.config.mjs",
- "additions": 3,
- "deletions": 0
+ "path": "README_IT.md",
+ "additions": 2,
+ "deletions": 2
},
{
- "path": "packages/plugin-news/package.json",
- "additions": 19,
- "deletions": 0
+ "path": "README_JA.md",
+ "additions": 3,
+ "deletions": 3
},
{
- "path": "packages/plugin-news/src/actions/index.ts",
+ "path": "README_KOR.md",
"additions": 2,
- "deletions": 0
- },
- {
- "path": "packages/plugin-news/src/actions/newsSearch.ts",
- "additions": 215,
- "deletions": 0
+ "deletions": 2
},
{
- "path": "packages/plugin-news/src/evaluators/index.ts",
- "additions": 1,
- "deletions": 0
+ "path": "README_PTBR.md",
+ "additions": 3,
+ "deletions": 3
},
{
- "path": "packages/plugin-news/src/index.ts",
- "additions": 16,
- "deletions": 0
+ "path": "README_TH.md",
+ "additions": 2,
+ "deletions": 2
},
{
- "path": "packages/plugin-news/src/providers/index.ts",
- "additions": 0,
- "deletions": 0
+ "path": "README_TR.md",
+ "additions": 4,
+ "deletions": 4
},
{
- "path": "packages/plugin-news/tsconfig.json",
- "additions": 13,
- "deletions": 0
- },
+ "path": "README_VI.md",
+ "additions": 2,
+ "deletions": 2
+ }
+ ],
+ "reviews": [],
+ "comments": [
{
- "path": "packages/plugin-news/tsup.config.ts",
- "additions": 20,
- "deletions": 0
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1227?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n\n[see 9 files with indirect coverage changes](https://app.codecov.io/gh/ai16z/eliza/pull/1227/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z)\n"
},
{
- "path": "pnpm-lock.yaml",
- "additions": 15,
- "deletions": 22
+ "author": "shakkernerd",
+ "body": "Thanks for the PR but I think adding `bash` to the code block doesn't make any difference given the markdown is perfectly rendered."
}
- ],
- "reviews": [],
- "comments": []
+ ]
}
]
},
@@ -2655,10 +1583,10 @@
}
},
{
- "contributor": "ileana-pr",
+ "contributor": "danbednarski",
"score": 0,
"summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/103957712?u=e0f8d1e80ea177088c7f03dc45da54e7994ccd7c&v=4",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/183874220?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0ODAsIm5iZiI6MTczNDY0NzI4MCwicGF0aCI6Ii91LzE4Mzg3NDIyMCJ9.K5HcKBhqOKkEAALB4r65mm2QHcjXkgOuJdgIUPTqg3U&v=4",
"activity": {
"code": {
"total_commits": 0,
@@ -2666,31 +1594,41 @@
"commits": [],
"pull_requests": [
{
- "number": 1191,
- "title": "docs: fixed CONTRIBUTING.md file Issue: 1048",
+ "number": 1218,
+ "title": "chore: clean up scripts",
"state": "MERGED",
"merged": true,
- "created_at": "2024-12-18T00:10:51Z",
- "updated_at": "2024-12-18T02:00:30Z",
- "body": "\r\n\r\n# Relates to:\r\nIssue #1048 Fixed \r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "created_at": "2024-12-18T23:15:48Z",
+ "updated_at": "2024-12-19T06:56:57Z",
+ "body": "I'm very new to this project so bear with me - I stumbled across these three files:\r\n\r\n* scripts/gettweets-copy.mjs\r\n* scripts/gettweets.mjs\r\n* scripts/tweetextractor.mjs\r\n\r\nAll appear to do the same thing. The first one uses environmental variables, the second two actually have hardcoded credentials for a real Twitter account.\r\n\r\nShould we simply delete the latter two and scrub the credentials from the git history? Or is there some reason that things are like this?\r\n\r\nThanks for your patience, just getting the hang of things.",
"files": [
{
- "path": "docs/docs/contributing.md",
- "additions": 5,
- "deletions": 5
+ "path": "scripts/gettweets-copy.mjs",
+ "additions": 0,
+ "deletions": 76
+ },
+ {
+ "path": "scripts/gettweets.mjs",
+ "additions": 16,
+ "deletions": 32
+ },
+ {
+ "path": "scripts/tweetextractor.mjs",
+ "additions": 0,
+ "deletions": 131
}
],
"reviews": [
{
- "author": "monilpat",
+ "author": "shakkernerd",
"state": "APPROVED",
- "body": "LGTM - thanks :) "
+ "body": ""
}
],
"comments": [
{
- "author": "codecov",
- "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1191?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n"
+ "author": "odilitime",
+ "body": "I notified the author of original PR, so he's aware of what happened"
}
]
}
@@ -2709,69 +1647,51 @@
}
},
{
- "contributor": "ai16z-demirix",
+ "contributor": "lorcann-rauzduel",
"score": 0,
"summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/188117230?u=424cd5b834584b3799da288712b3c4158c8032a1&v=4",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/176548844?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkyMDAsIm5iZiI6MTczNDY0ODAwMCwicGF0aCI6Ii91LzE3NjU0ODg0NCJ9.iDu37cA2qwbJtZlyWR5DiRT6lnij8ZhkJCOkTH0Z9Ys&u=c20bf0288194863b32133bdd83001111d364ca75&v=4",
"activity": {
"code": {
"total_commits": 0,
- "total_prs": 1,
+ "total_prs": 0,
"commits": [],
- "pull_requests": [
+ "pull_requests": []
+ },
+ "issues": {
+ "total_opened": 1,
+ "opened": [
{
- "number": 1190,
- "title": "test: adding tests for runtime.ts. Modified README since we switched to vitest",
- "state": "MERGED",
- "merged": true,
- "created_at": "2024-12-17T22:45:37Z",
- "updated_at": "2024-12-18T02:07:57Z",
- "body": "\r\n\r\n\r\n\r\n# Relates to:\r\nhttps://github.com/ai16z/eliza/issues/187\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\nLow: adding tests for runtime.ts\r\n# Background\r\n\r\n## What does this PR do?\r\nThis PR adds tests for runtime.ts\r\n## What kind of change is this?\r\nAdding new tests.\r\n\r\n\r\n\r\n\r\nContributing to have stable and good SDEC.\r\n\r\n# Documentation changes needed?\r\nMinimal: Edited tests README file since we switched to vitests from jest.\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\npackages/core/\r\n## Detailed testing steps\r\nnavigate to directory and run pnpm install and pnpm test\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
- "files": [
- {
- "path": "packages/core/README-TESTS.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "packages/core/src/tests/runtime.test.ts",
- "additions": 139,
- "deletions": 0
- }
- ],
- "reviews": [
+ "number": 1251,
+ "title": "Cannot read properties of undefined (reading 'rpcUrls') ",
+ "state": "OPEN",
+ "created_at": "2024-12-19T22:02:20Z",
+ "updated_at": "2024-12-19T22:02:20Z",
+ "body": "**Describe the bug**\r\n\r\nSwap execution fails with \"Cannot read properties of undefined (reading 'rpcUrls')\" error during LiFi SDK initialization. The issue occurs because the RPC URLs configuration doesn't match the format expected by the SDK.\r\n\r\n**To Reproduce**\r\n\r\n1. Initialize SwapAction with a WalletProvider\r\n2. Attempt to execute a swap with a prompt\r\n3. Error occurs during configuration creation in SwapAction constructor\r\n\r\n**Expected behavior**\r\n\r\nSwap should execute normally\r\n\r\n**Screenshots**\r\n\r\nLogs : \r\n```\r\n [\"\u2713 Normalized action: swap\"] \r\n\r\n [\"\u2139 Executing handler for action: swap\"] \r\nError in swap handler: Cannot read properties of undefined (reading 'rpcUrls')\r\n \u25ce LOGS\r\n Evaluating \r\n GET_FACTS \r\n\r\n \u25ce LOGS\r\n Evaluating \r\n UPDATE_GOAL \r\n\r\n \u25ce LOGS\r\n Creating Memory \r\n 3131de6c-ba7b-0dad-b05f-eeed7ceae7ca \r\n Error: Cannot read properties of undefined (reading 'rpcUrls') \r\n```\r\n\r\n**Additional context**\r\n\r\nmy .env file :\r\n\r\n```\r\n.....\r\n# EVM\r\nEVM_PRIVATE_KEY=my_private_key\r\nEVM_PROVIDER_URL=my_eth_mainnet_provider\r\nETHEREUM_PROVIDER_ARBITRUM_=my_arbitrum_mainnet_provider\r\nETHEREUM_PROVIDER_ARBITRUM_SEPOLIA=my_arbitrum_sepolia_provider\r\n\r\n```\r\n\r\nmy character file :\r\n```\r\n\r\n \"name\": \"user-agent\",\r\n \"clients\": [\"twitter\", \"telegram\"],\r\n \"modelProvider\": \"anthropic\",\r\n \"settings\": {\r\n \"secrets\": {},\r\n \"voice\": {},\r\n \"chains\": { \"evm\": [\"arbitrum\", \"arbitrumSepolia\"] }\r\n },\r\n \"plugins\": [\"@ai16z/plugin-evm\"],\r\n```\r\n",
+ "labels": [
{
- "author": "monilpat",
- "state": "APPROVED",
- "body": "LGTM thanks for doing this :) "
+ "name": "bug",
+ "color": "d73a4a",
+ "description": "Something isn't working"
}
],
- "comments": [
- {
- "author": "codecov",
- "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1190?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n\n[see 8 files with indirect coverage changes](https://app.codecov.io/gh/ai16z/eliza/pull/1190/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z)\n"
- }
- ]
+ "comments": []
}
]
},
- "issues": {
- "total_opened": 0,
- "opened": []
- },
"engagement": {
"total_comments": 0,
- "total_reviews": 1,
+ "total_reviews": 0,
"comments": [],
"reviews": []
}
}
},
{
- "contributor": "sam-coffey",
+ "contributor": "blockfer-rp",
"score": 0,
"summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/98062744?u=10f19a5a02ee5648fd5276432f87eb3c6d97de7d&v=4",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/58490353?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg1NDAsIm5iZiI6MTczNDY0NzM0MCwicGF0aCI6Ii91LzU4NDkwMzUzIn0.C1-fpM9Tjh1-NfwBgUJq3HVX-3h5v7O-OmnqdfCdIZ8&v=4",
"activity": {
"code": {
"total_commits": 0,
@@ -2783,12 +1703,12 @@
"total_opened": 1,
"opened": [
{
- "number": 1213,
- "title": "chat stuck in infinite loop",
+ "number": 1235,
+ "title": "twitterShouldRespondTemplate Fails When Defined as a String in JSON Character Config",
"state": "OPEN",
- "created_at": "2024-12-18T21:19:34Z",
- "updated_at": "2024-12-18T21:19:34Z",
- "body": "Have tried installing and reinstalling many times, chat with any agent always gets stuck in loop where agent just keeps replying to itself.\r\n\r\nHappens each time I successfully start an agent with npm start (either chatting in terminal in older versions or with localhost:5173)\r\n\r\nI would expect the agent to have a dialogue with me but it becomes impossible when the agent just keeps saying things to itself over and over.",
+ "created_at": "2024-12-19T11:03:12Z",
+ "updated_at": "2024-12-19T13:47:16Z",
+ "body": "**Describe the bug**\r\n\r\nWhen defining a `twitterShouldRespondTemplate` in a character\u2019s JSON configuration file, the code attempts to invoke it as a function with `(validTargetUsersStr)`. Since JSON cannot store JavaScript functions, this causes runtime errors. Other templates like `twitterMessageHandlerTemplate` and `twitterPostTemplate` are handled purely as strings, so they work fine. The inconsistency leads to broken response generation when a JSON-defined `twitterShouldRespondTemplate` is present.\r\n\r\n**To Reproduce**\r\n\r\n1. **Create a character JSON file** (e.g., `adam.character.json`) that includes:\r\n ```json\r\n {\r\n \"name\": \"your-character-name\",\r\n \"clients\": [\"telegram\", \"twitter\"],\r\n \"modelProvider\": \"openai\",\r\n \"settings\": {\r\n \"secrets\": {\r\n \"TELEGRAM_BOT_TOKEN\": \"your_telegram_bot_token\",\r\n \"TWITTER_USERNAME\": \"user\",\r\n \"TWITTER_EMAIL\": \"email@proton.me\",\r\n \"TWITTER_PASSWORD\": \"your_twitter_password\",\r\n \"TWITTER_COOKIES\": \"[{\\\"key\\\":\\\"auth_token\\\",\\\"value\\\":\\\"your_auth_token\\\",\\\"domain\\\":\\\".twitter.com\\\"}, {\\\"key\\\":\\\"ct0\\\",\\\"value\\\":\\\"your_ct0_value\\\",\\\"domain\\\":\\\".twitter.com\\\"}, {\\\"key\\\":\\\"guest_id\\\",\\\"value\\\":\\\"v1%3A173451270913595996\\\",\\\"domain\\\":\\\".twitter.com\\\"}]\",\r\n \"TWITTER_TARGET_USERS\": \"user1,user2\"\r\n }\r\n },\r\n \"plugins\": [\r\n \"@ai16z/plugin-your-custom-plugin\"\r\n ],\r\n \"templates\": {\r\n \"twitterPostTemplate\": \"# Areas of Expertise\\n{{knowledge}}\\n\\n# About {{agentName}} (@{{twitterUserName}}):\\n{{bio}}\\n{{lore}}\\n{{topics}}\\n\\n{{providers}}\\n\\n{{characterPostExamples}}\\n\\n{{postDirections}}\\n\\n# Task: Generate a post in the voice and style and perspective of {{agentName}} @{{twitterUserName}}.\\nWrite a 1-3 sentence post that is {{adjective}} about {{topic}} (without mentioning {{topic}} directly), from the perspective of {{agentName}}. Do not add commentary or acknowledge this request, just write the post.\\nYour response should not contain any questions. Brief, concise statements only. The total character count MUST be less than {{maxTweetLength}}. No emojis. Use \\\\n\\\\n (double spaces) between statements.\",\r\n \"twitterMessageHandlerTemplate\": \"# Areas of Expertise\\n{{knowledge}}\\n\\n# About {{agentName}} (@{{twitterUserName}}):\\n{{bio}}\\n{{lore}}\\n{{topics}}\\n\\n{{providers}}\\n\\n{{characterPostExamples}}\\n\\n{{postDirections}}\\n\\nRecent interactions between {{agentName}} and other users:\\n{{recentPostInteractions}}\\n\\n{{recentPosts}}\\n\\n# Task: Generate a post/reply in the voice, style and perspective of {{agentName}} (@{{twitterUserName}}) while using the thread of tweets as additional context:\\nCurrent Post:\\n{{currentPost}}\\n\\nThread of Tweets You Are Replying To:\\n{{formattedConversation}}\\n\\n{{actions}}\\n# Task: Generate a post in the voice, style and perspective of {{agentName}} (@{{twitterUserName}}). You MUST include an action if the current post text includes a prompt that is similar to one of the available actions mentioned here:\\n{{actionNames}}\\nHere is the current post text again. Remember to include an action if the current post text includes a prompt that asks for one of the available actions mentioned above (does not need to be exact)\\n{{currentPost}}\\n\\nResponse format should be formatted in a JSON block like this:\\n```json\\n{ \\\"user\\\": \\\"{{agentName}}\\\", \\\"text\\\": \\\"string\\\", \\\"action\\\": \\\"string\\\" }\\n```\",\r\n \"twitterShouldRespondTemplate\": \"# INSTRUCTIONS: Determine if {{agentName}} (@{{twitterUserName}}) should respond to the message and participate in the conversation.\\n\\nResponse options are RESPOND, IGNORE and STOP.\\n\\nPRIORITY RULE: ALWAYS RESPOND to these users regardless of topic or message content: {{targetUsersStr}}. Topic relevance should be ignored for these users.\\n\\nFor other users:\\n- {{agentName}} should RESPOND to messages directed at them\\n- {{agentName}} should RESPOND to conversations relevant to their background\\n- {{agentName}} should IGNORE irrelevant messages\\n- {{agentName}} should IGNORE very short messages unless directly addressed\\n- {{agentName}} should STOP if asked to stop\\n- {{agentName}} should STOP if conversation is concluded\\n- {{agentName}} is in a room with other users and wants to be conversational, but not annoying.\\n\\n{{recentPosts}}\\n\\nIMPORTANT: For users not in the priority list, {{agentName}} (@{{twitterUserName}}) should err on the side of IGNORE rather than RESPOND if in doubt.\\n\\n{{recentPosts}}\\n\\nIMPORTANT: {{agentName}} (aka @{{twitterUserName}}) is particularly sensitive about being annoying, so if there is any doubt, it is better to IGNORE than to RESPOND.\\n\\n{{currentPost}}\\n\\nThread of Tweets You Are Replying To:\\n{{formattedConversation}}\\n\\n# INSTRUCTIONS: Respond with [RESPOND] if {{agentName}} should respond, or [IGNORE] if {{agentName}} should not respond to the last message and [STOP] if {{agentName}} should stop participating in the conversation.\\n\\nThe available options are [RESPOND], [IGNORE], or [STOP]. Choose the most appropriate option.\\nIf {{agentName}} is talking too much, you can choose [IGNORE]\\n\\nYour response must include one of the options.\"\r\n }\r\n }\r\n ```\r\n \r\n 2. **Run the agent** with this character file.\r\n 3. **Observe the failure**: The agent does not respond as expected because it attempts to call `twitterShouldRespondTemplate(validTargetUsersStr)` as a function, leading to errors since the template is defined as a string.\r\n\r\n**Expected behavior**\r\n\r\n- `twitterShouldRespondTemplate` should be handled consistently with other templates like `twitterMessageHandlerTemplate` and `twitterPostTemplate`.\r\n- If it\u2019s defined as a string, it should not be invoked as a function.\r\n- The code should either:\r\n - Treat all templates as strings and handle variable interpolation through `composeContext`, or\r\n - Allow defining templates as functions through a different configuration method (not JSON).\r\n \r\n **Additional context**\r\n\r\n- **Workaround:** Removing `twitterShouldRespondTemplate` from the JSON file allows the system to fallback to the built-in `twitterShouldRespondTemplate` function, which works as intended.\r\n- **Potential Fixes:**\r\n - **Option 1:** Modify the agent's code to treat `twitterShouldRespondTemplate` as a string if it's defined in the JSON, avoiding the function call.\r\n - **Option 2:** Allow templates to be defined as functions through a different configuration approach, such as a JavaScript/TypeScript file instead of JSON.\r\n - **Option 3:** Provide a hybrid approach where the JSON can reference external functions or use placeholders that `composeContext` can replace without needing to call them as functions.\r\n\r\n**Summary:**\r\n\r\n- `twitterShouldRespondTemplate` is treated differently in the code by attempting to invoke it as a function with `validTargetUsersStr`, whereas other templates are handled as plain strings.\r\n- Since JSON cannot store functions, defining `twitterShouldRespondTemplate` as a string in the JSON configuration leads to runtime errors and broken response logic.\r\n- To resolve the issue, either remove the custom `twitterShouldRespondTemplate` from the JSON to use the fallback function or adjust the code to handle `twitterShouldRespondTemplate` as a string, ensuring consistent template processing.\r\n\r\n",
"labels": [
{
"name": "bug",
@@ -2809,10 +1729,10 @@
}
},
{
- "contributor": "AntonioTF5",
+ "contributor": "agyn-ub",
"score": 0,
"summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/32102018?u=ca0cfc6fafa99720cba35ad22ba7e31738c399b9&v=4",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/142351559?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5MDAsIm5iZiI6MTczNDY0NzcwMCwicGF0aCI6Ii91LzE0MjM1MTU1OSJ9.SUWFDdwGMDAg49J9c0MRqPEYTaL1rH7ozBauxVHxoMg&v=4",
"activity": {
"code": {
"total_commits": 0,
@@ -2824,12 +1744,12 @@
"total_opened": 1,
"opened": [
{
- "number": 1208,
- "title": "Multiple mentions on Twitter/X when reply",
+ "number": 1234,
+ "title": "pnpm install shows errors",
"state": "OPEN",
- "created_at": "2024-12-18T16:44:13Z",
- "updated_at": "2024-12-18T19:28:41Z",
- "body": "**Describe the bug**\n\nIn every following reply to target accounts on X agent adds mentioning of the account: @account \n\nIf it replies second time it will mention twice: @account @account\n\n**Expected behavior**\n\nNo mentioning of the target account when reply at all. \n\n**Screenshots**\n\n![image](https://github.com/user-attachments/assets/9b8a6403-e496-4ecb-bf5b-bc67b4faeb4b) (C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\@\u2026 \r\n\u2502 node-pre-gyp ERR! stack at ChildProcess.emit (node:events:513:28)\r\n\u2502 node-pre-gyp ERR! stack at maybeClose (node:internal/child_process:1101:16)\r\nnode_modules/canvas: Running install script, failed in 10.7s (skipped as optional)process:305:5)\r\n\u2502 node-pre-gyp ERR! System Windows_NT 10.0.26100\r\n\u2502 node-pre-gyp ERR! command \"C:\\\\Program Files\\\\nodejs\\\\node.exe\" \"C:\\\\Users\\\\agynb\\\\OneDrive\\\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\\\Eliza\\\\f1\\\\eliza\u2026 \r\n\u2502 node-pre-gyp ERR! cwd C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\@discordjs\\opus\r\n\u2502 node-pre-gyp ERR! node -v v23.3.0\r\n\u2502 node-pre-gyp ERR! node-pre-gyp -v v0.4.5\r\n\u2502 node-pre-gyp ERR! not ok\r\n\u2502 Failed to execute 'C:\\Program Files\\nodejs\\node.exe C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\node-g\u2026 \r\n\u2514\u2500 Failed in 10.4s at C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\@discordjs\\opus",
"labels": [
{
"name": "bug",
@@ -2837,12 +1757,41 @@
"description": "Something isn't working"
}
],
- "comments": []
+ "comments": [
+ {
+ "author": "giorgosn",
+ "body": "are you using WSL 2?"
+ },
+ {
+ "author": "digitalsimboja",
+ "body": " ~/dev/eliza #v0.1.6-alpha.4 pnpm install \u2714 23.3.0 \u2b22 11:00:24 AM \r\nScope: all 46 workspace projects\r\nLockfile is up to date, resolution step is skipped\r\n\u2009ERR_PNPM_UNSUPPORTED_ENGINE\u2009 Unsupported environment (bad pnpm and/or Node.js version)\r\n\r\nYour Node version is incompatible with \"@lens-protocol/client@2.2.0(@lens-protocol/metadata@1.2.0)(ethers@6.13.4)(react@18.3.1)\".\r\n\r\nExpected version: >=18 <21\r\nGot: v23.3.0\r\n\r\nThis is happening because the package's manifest has an engines.node field specified.\r\nTo fix this issue, install the required Node version.\r\n ~/dev/eliza #v0.1.6-alpha.4 \r\n \r\n I get this issue as well"
+ },
+ {
+ "author": "agyn-ub",
+ "body": "> are you using WSL 2?\r\n\r\nno. I am in linux pop_os"
+ },
+ {
+ "author": "agyn-ub",
+ "body": "I run pnpm install on lunix the same error\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/pitch.o\r\n\u2502 rm -f Release/obj.target/deps/opus.a Release/obj.target/deps/opus.a.ar-file-list; mkdir -p `dirname Release/obj.target/deps/opus.a`\r\n\u2502 ar crs Release/obj.target/deps/opus.a @Release/obj.target/deps/opus.a.ar-file-list\r\n\u2502 COPY Release/opus.a\r\n\u2502 CXX(target) Release/obj.target/opus/src/node-opus.o\r\n\u2502 : warning: ISO C++11 requires whitespace after the macro name\r\n\u2502 ../src/node-opus.cc:1:10: fatal error: napi.h: No such file or directory\r\n\u2502 1 | #include \"napi.h\"\r\n\u2502 | ^~~~~~~~\r\n\u2502 compilation terminated.\r\n\u2502 make: *** [opus.target.mk:157: Release/obj.target/opus/src/node-opus.o] Error 1\r\n\u2502 make: Leaving directory '/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus/build'\r\n\u2502 gyp ERR! build error \r\n\u2502 gyp ERR! stack Error: `make` failed with exit code: 2\r\n\u2502 gyp ERR! stack at ChildProcess. (/home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/lib/build.js:216:23)\r\n\u2502 gyp ERR! System Linux 6.9.3-76060903-generic\r\n\u2502 gyp ERR! command \"/home/agyn/.nvm/versions/node/v23.3.0/bin/node\" \"/home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js\" \"build\" \"--fallback-to-build\" \"--modul\u2026\r\n\u2502 gyp ERR! cwd /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\n\u2502 gyp ERR! node -v v23.3.0\r\n\u2502 gyp ERR! node-gyp -v v10.3.1\r\n\u2502 gyp ERR! not ok \r\n\u2502 node-pre-gyp ERR! build error \r\n\u2502 node-pre-gyp ERR! stack Error: Failed to execute '/home/agyn/.nvm/versions/node/v23.3.0/bin/node /home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js build --f\u2026\r\n\u2502 node-pre-gyp ERR! stack at ChildProcess. (/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/node-pre-gyp/lib/util/compile.js:85:20)\r\n\u2502 node-pre-gyp ERR! stack at ChildProcess.emit (node:events:513:28)\r\n\u2502 node-pre-gyp ERR! stack at maybeClose (node:internal/child_process:1101:16)\r\n\u2502 node-pre-gyp ERR! stack at ChildProcess._handle.onexit (node:internal/child_process:305:5)\r\n\u2502 node-pre-gyp ERR! System Linux 6.9.3-76060903-generic\r\n\u2502 node-pre-gyp ERR! command \"/home/agyn/.nvm/versions/node/v23.3.0/bin/node\" \"/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus/node_modules/.bin/node-pre-gyp\" \"instal\u2026\r\n\u2502 node-pre-gyp ERR! cwd /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\n\u2502 node-pre-gyp ERR! node -v v23.3.0\r\n\u2502 node-pre-gyp ERR! node-pre-gyp -v v0.4.5\r\n\u2502 node-pre-gyp ERR! not ok \r\n\u2502 Failed to execute '/home/agyn/.nvm/versions/node/v23.3.0/bin/node /home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/home\u2026\r\n\u2514\u2500 Failed in 29.7s at /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\n\u2009ELIFECYCLE\u2009 Command failed with exit code 1."
+ },
+ {
+ "author": "agyn-ub",
+ "body": "> ~/dev/eliza #v0.1.6-alpha.4 pnpm install \u2714 23.3.0 \u2b22 11:00:24 AM Scope: all 46 workspace projects Lockfile is up to date, resolution step is skipped \u2009ERR_PNPM_UNSUPPORTED_ENGINE\u2009 Unsupported environment (bad pnpm and/or Node.js version)\r\n> \r\n> Your Node version is incompatible with \"@lens-protocol/client@2.2.0(@lens-protocol/metadata@1.2.0)(ethers@6.13.4)(react@18.3.1)\".\r\n> \r\n> Expected version: >=18 <21 Got: v23.3.0\r\n> \r\n> This is happening because the package's manifest has an engines.node field specified. To fix this issue, install the required Node version. ~/dev/eliza #v0.1.6-alpha.4\r\n> \r\n> I get this issue as well\r\n\r\nthe same error\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/silk/enc_API.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/silk/biquad_alt.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/silk/quant_LTP_gains.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/silk/resampler_private_down_FIR.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/silk/ana_filt_bank_1.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/silk/stereo_MS_to_LR.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/silk/decode_indices.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/rate.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/entdec.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/modes.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/celt_lpc.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/laplace.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/cwrs.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/celt.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/entcode.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/celt_decoder.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/celt_encoder.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/mdct.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/quant_bands.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/vq.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/bands.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/kiss_fft.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/entenc.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/mathops.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/pitch.o\r\n\u2502 rm -f Release/obj.target/deps/opus.a Release/obj.target/deps/opus.a.ar-file-list; mkdir -p `dirname Release/obj.target/deps/opus.a`\r\n\u2502 ar crs Release/obj.target/deps/opus.a @Release/obj.target/deps/opus.a.ar-file-list\r\n\u2502 COPY Release/opus.a\r\n\u2502 CXX(target) Release/obj.target/opus/src/node-opus.o\r\n\u2502 : warning: ISO C++11 requires whitespace after the macro name\r\n\u2502 ../src/node-opus.cc:1:10: fatal error: napi.h: No such file or directory\r\n\u2502 1 | #include \"napi.h\"\r\n\u2502 | ^~~~~~~~\r\n\u2502 compilation terminated.\r\n\u2502 make: *** [opus.target.mk:155: Release/obj.target/opus/src/node-opus.o] Error 1\r\n\u2502 make: Leaving directory '/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus/build'\r\n\u2502 gyp ERR! build error \r\n\u2502 gyp ERR! stack Error: `make` failed with exit code: 2\r\n\u2502 gyp ERR! stack at ChildProcess. (/home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/lib/build.js:216:23)\r\n\u2502 gyp ERR! System Linux 6.9.3-76060903-generic\r\n\u2502 gyp ERR! command \"/home/agyn/.nvm/versions/node/v20.18.1/bin/node\" \"/home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js\" \"build\" \"--fallback-to-build\" \"--modu\u2026\r\n\u2502 gyp ERR! cwd /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\n\u2502 gyp ERR! node -v v20.18.1\r\n\u2502 gyp ERR! node-gyp -v v10.3.1\r\n\u2502 gyp ERR! not ok \r\n\u2502 node-pre-gyp ERR! build error \r\n\u2502 node-pre-gyp ERR! stack Error: Failed to execute '/home/agyn/.nvm/versions/node/v20.18.1/bin/node /home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js build --\u2026\r\n\u2502 node-pre-gyp ERR! stack at ChildProcess. (/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/node-pre-gyp/lib/util/compile.js:85:20)\r\n\u2502 node-pre-gyp ERR! stack at ChildProcess.emit (node:events:518:28)\r\n\u2502 node-pre-gyp ERR! stack at maybeClose (node:internal/child_process:1104:16)\r\n\u2502 node-pre-gyp ERR! stack at ChildProcess._handle.onexit (node:internal/child_process:304:5)\r\n\u2502 node-pre-gyp ERR! System Linux 6.9.3-76060903-generic\r\n\u2502 node-pre-gyp ERR! command \"/home/agyn/.nvm/versions/node/v20.18.1/bin/node\" \"/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus/node_modules/.bin/node-pre-gyp\" \"insta\u2026\r\n\u2502 node-pre-gyp ERR! cwd /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\n\u2502 node-pre-gyp ERR! node -v v20.18.1\r\n\u2502 node-pre-gyp ERR! node-pre-gyp -v v0.4.5\r\n\u2502 node-pre-gyp ERR! not ok \r\n\u2502 Failed to execute '/home/agyn/.nvm/versions/node/v20.18.1/bin/node /home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/hom\u2026\r\n\u2514\u2500 Failed in 38.1s at /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\nnode_modules/canvas: Running install script, done in 21.5s\r\n\u2009ELIFECYCLE\u2009 Command failed with exit code 1."
+ },
+ {
+ "author": "agyn-ub",
+ "body": "> ~/dev/eliza #v0.1.6-alpha.4 pnpm install \u2714 23.3.0 \u2b22 11:00:24 AM Scope: all 46 workspace projects Lockfile is up to date, resolution step is skipped \u2009ERR_PNPM_UNSUPPORTED_ENGINE\u2009 Unsupported environment (bad pnpm and/or Node.js version)\r\n> \r\n> Your Node version is incompatible with \"@lens-protocol/client@2.2.0(@lens-protocol/metadata@1.2.0)(ethers@6.13.4)(react@18.3.1)\".\r\n> \r\n> Expected version: >=18 <21 Got: v23.3.0\r\n> \r\n> This is happening because the package's manifest has an engines.node field specified. To fix this issue, install the required Node version. ~/dev/eliza #v0.1.6-alpha.4\r\n> \r\n> I get this issue as well\r\n\r\nthank you so much my friend, I have downgraded node version to 18 is command executed ok. It is confusing because in the documentation were written that it must be node version 23+ "
+ },
+ {
+ "author": "digitalsimboja",
+ "body": "> > ~/dev/eliza #v0.1.6-alpha.4 pnpm install \u2714 23.3.0 \u2b22 11:00:24 AM Scope: all 46 workspace projects Lockfile is up to date, resolution step is skipped \u2009ERR_PNPM_UNSUPPORTED_ENGINE\u2009 Unsupported environment (bad pnpm and/or Node.js version)\r\n> > Your Node version is incompatible with \"@lens-protocol/client@2.2.0(@lens-protocol/metadata@1.2.0)(ethers@6.13.4)(react@18.3.1)\".\r\n> > Expected version: >=18 <21 Got: v23.3.0\r\n> > This is happening because the package's manifest has an engines.node field specified. To fix this issue, install the required Node version. ~/dev/eliza #v0.1.6-alpha.4\r\n> > I get this issue as well\r\n> \r\n> thank you so much my friend, I have downgraded node version to 18 is command executed ok. It is confusing because in the documentation were written that it must be node version 23+\r\n\r\nI have a hell of dependencies issues. How did you downgrade yours to version 18 without conflicting with other projects? Did you change the node engine specifications from 23+ to 18?"
+ }
+ ]
}
]
},
"engagement": {
- "total_comments": 0,
+ "total_comments": 7,
"total_reviews": 0,
"comments": [],
"reviews": []
@@ -2850,10 +1799,10 @@
}
},
{
- "contributor": "tekspirit",
+ "contributor": "vpavlin",
"score": 0,
"summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/1505004?u=59283365bced9a568f4a3ea86310ee38f4b5003c&v=4",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/4759808?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5MDAsIm5iZiI6MTczNDY0NzcwMCwicGF0aCI6Ii91LzQ3NTk4MDgifQ.FCRt6CJ8K5Ci3EOPe8eefUF7mzywKQroiMckMCwlphE&u=d045a41a43fa2deabfc3115236cc1e8b0509b164&v=4",
"activity": {
"code": {
"total_commits": 0,
@@ -2862,15 +1811,15 @@
"pull_requests": []
},
"issues": {
- "total_opened": 1,
+ "total_opened": 2,
"opened": [
{
- "number": 1206,
- "title": "double backslash when posting to X",
+ "number": 1233,
+ "title": "agent package not updated on npmjs.org",
"state": "OPEN",
- "created_at": "2024-12-18T14:02:01Z",
- "updated_at": "2024-12-18T18:29:36Z",
- "body": "**Describe the bug**\r\nEliza is posting an '\\\\n\\\\n' to X instead of two carriage returns. This is using CLAUDE_VERTEX.\r\n\r\nIt appears every post has this symptom.\r\n**To Reproduce**\r\nI run on a mac, so compiled eliza with settings for mac. Example: https://x.com/waggyhappytail/status/1869352624656716210\r\n\r\nI run with pnpm tsx agent/src/index.ts\r\n**Expected behavior**\r\nIt should post carriage returns.\r\n\r\n\r\n**Screenshots**\r\nhttps://imgur.com/a/BFJ2RlH\r\n\r\n\r\n**Additional context**\r\nIf I exit eliza and restart, it doesn't always reproduce the issue. The only filed edited is the character file.\r\n\r\n",
+ "created_at": "2024-12-19T08:08:23Z",
+ "updated_at": "2024-12-19T08:08:23Z",
+ "body": "**Describe the bug**\r\n\r\nSeems like @ai16z/agent has not been updated for some time https://www.npmjs.com/package/@ai16z/agent\r\n\r\n**To Reproduce**\r\n\r\nSee https://www.npmjs.com/package/@ai16z/agent?activeTab=versions\r\n\r\n**Expected behavior**\r\n\r\nRelease agent package regularly and use it in `eliza-starter` (as it seems like a lot of stuff is just copy&paste)\r\n\r\n**Screenshots**\r\n\r\n\r\n\r\n**Additional context**\r\n\r\n\r\n",
"labels": [
{
"name": "bug",
@@ -2878,21 +1827,28 @@
"description": "Something isn't working"
}
],
- "comments": [
- {
- "author": "usama-saeed831",
- "body": "@tekspirit I fix this by adding following line in\r\npacakages -> client-twitter -> src -> post.js\r\nin \"generateNewTweet()\" function\r\n\r\nafter\r\n**cleanedContent = removeQuotes(content);**\r\n\r\n`cleanedContent = cleanedContent.replace(/\\\\n/g, '\\n');`"
- },
+ "comments": []
+ },
+ {
+ "number": 1232,
+ "title": "Create a nightly build as next version",
+ "state": "OPEN",
+ "created_at": "2024-12-19T08:06:40Z",
+ "updated_at": "2024-12-19T08:06:40Z",
+ "body": "**Is your feature request related to a problem? Please describe.**\r\n\r\nI'd like to use `eliza-starter` with the latest providers and features, but that means I have to wait until new version is released (weekly?). It would be great to setup a `nightly` builds from `develop` and push them to npmjs.org as `next` version, so that people can easily experiment with latest features and get ready for new releases\r\n\r\n**Describe the solution you'd like**\r\n\r\nSetup an automation to release nightly to from `develop` to `next`\r\n\r\n**Describe alternatives you've considered**\r\n\r\n:shrug: \r\n\r\n**Additional context**\r\n\r\n\r\n",
+ "labels": [
{
- "author": "owlcode",
- "body": "I think `.replaceAll` is more appropriate. I fixed it here https://github.com/ai16z/eliza/pull/1141. I guess it waits for a release."
+ "name": "enhancement",
+ "color": "a2eeef",
+ "description": "New feature or request"
}
- ]
+ ],
+ "comments": []
}
]
},
"engagement": {
- "total_comments": 2,
+ "total_comments": 0,
"total_reviews": 0,
"comments": [],
"reviews": []
@@ -2900,10 +1856,10 @@
}
},
{
- "contributor": "Longame208",
+ "contributor": "madjin",
"score": 0,
"summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/79878000?v=4",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/32600939?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91LzMyNjAwOTM5In0.7vW8aT743AJl04-9zh_3YYJMLQj9qo88pIJX0PCwUco&u=cdcf89f44c7a50906c7a80d889efa85023af2049&v=4",
"activity": {
"code": {
"total_commits": 0,
@@ -2912,45 +1868,116 @@
"pull_requests": []
},
"issues": {
- "total_opened": 1,
+ "total_opened": 4,
"opened": [
{
- "number": 1204,
- "title": "unable to chat in terminal",
+ "number": 1224,
+ "title": "feat: Auto-Documentation Synchronization Bot",
+ "state": "OPEN",
+ "created_at": "2024-12-19T02:03:53Z",
+ "updated_at": "2024-12-19T02:03:53Z",
+ "body": "## **Overview**\r\nCreate an AI assistant to maintain documentation consistency and generate documentation from code.\r\n\r\n## **Current Situation**\r\n\r\nDocumentation gaps often go unnoticed, leading to challenges during onboarding, feature development, and integrations. Outdated information can result in inefficiencies, with developers spending unnecessary time answering questions that could otherwise be handled by AI if up-to-date documentation were available\r\n\r\n## **Proposed Solution**\r\n\r\nFirst finish this issue: https://github.com/ai16z/eliza/issues/1110\r\nNext document plugins so that we have a quality reference: https://github.com/ai16z/eliza/issues/1200\r\n\r\nThen build a documentation bot that:\r\n1. Tracks and reports TODO comments in code (automate this flow https://github.com/ai16z/eliza/issues/1223)\r\n2. Tracks and reports missing plugin docs: (automate this https://github.com/ai16z/eliza/issues/1200)\r\n3. Tracks commits / issues / PRs and flags docs pages that might need updating\r\n4. Suggest documentation updates of those pages\r\n\r\n## **Technical Details**\r\n\r\n\r\n",
+ "labels": [
+ {
+ "name": "documentation",
+ "color": "0075ca",
+ "description": "Improvements or additions to documentation"
+ },
+ {
+ "name": "enhancement",
+ "color": "a2eeef",
+ "description": "New feature or request"
+ },
+ {
+ "name": "automation",
+ "color": "FC49CF",
+ "description": ""
+ }
+ ],
+ "comments": []
+ },
+ {
+ "number": 1223,
+ "title": "chore: Review TODO notes",
"state": "OPEN",
- "created_at": "2024-12-18T11:19:12Z",
- "updated_at": "2024-12-18T12:41:24Z",
- "body": "run pnpm start / pnpm start:client and not able to have chat in terminal with agent was working before now it takes to local host page browser and nothing happens\r\n\r\n\r\n\r\n**To Reproduce**\r\n\r\n\r\n\r\n**Expected behavior**\r\n\r\n\r\n\r\n**Screenshots**\r\n\r\n\r\n\r\n**Additional context**\r\n\r\n\r\n",
+ "created_at": "2024-12-19T01:50:45Z",
+ "updated_at": "2024-12-19T01:51:37Z",
+ "body": "**Describe the bug**\r\n\r\nSee what the TODO notes are about, update their status or document as an issue if needed\r\n\r\n- [ ] agent/src/index.ts\r\n- [ ] packages/core/src/models.ts\r\n- [ ] packages/core/src/runtime.ts\r\n- [ ] packages/core/src/environment.ts\r\n- [ ] packages/core/src/memory.ts\r\n- [ ] packages/plugin-starknet/src/providers/trustScoreProvider.ts\r\n- [ ] packages/plugin-starknet/src/providers/token.ts\r\n- [ ] packages/plugin-starknet/src/actions/takeOrder.ts\r\n- [ ] packages/plugin-starknet/src/actions/transfer.ts\r\n- [ ] packages/plugin-starknet/readme.md\r\n- [ ] packages/adapter-sqlite/src/sqliteTables.ts\r\n- [ ] packages/adapter-sqljs/src/index.ts\r\n- [ ] packages/adapter-sqljs/src/sqliteTables.ts\r\n- [ ] packages/plugin-node/src/services/transcription.ts\r\n- [ ] packages/plugin-node/src/services/browser.ts\r\n- [ ] packages/client-twitter/src/search.ts\r\n- [ ] packages/client-twitter/src/base.ts\r\n- [ ] packages/plugin-solana/src/evaluators/trust.ts\r\n- [ ] packages/plugin-solana/src/providers/trustScoreProvider.ts\r\n- [ ] packages/plugin-solana/src/actions/swap.ts\r\n- [ ] packages/plugin-solana/src/actions/takeOrder.ts\r\n- [ ] packages/plugin-evm/src/actions/bridge.ts\r\n- [ ] packages/plugin-evm/src/actions/swap.ts\r\n- [ ] packages/plugin-flow/src/types/fcl.d.ts\r\n- [ ] packages/plugin-flow/src/actions/transfer.ts\r\n- [ ] packages/plugin-nft-generation/src/index.ts\r\n- [ ] packages/plugin-image-generation/src/index.ts\r\n- [ ] packages/client-farcaster/src/client.ts\r\n- [ ] packages/adapter-supabase/src/index.ts\r\n- [ ] packages/client-lens/src/actions.ts\r\n- [ ] packages/client-lens/src/client.ts\r\n- [ ] packages/client-lens/src/interactions.ts\r\n- [ ] packages/client-discord/src/utils.ts\r\n- [ ] packages/client-discord/src/attachments.ts\r\n- [ ] packages/client-discord/src/messages.ts\r\n- [ ] packages/client-discord/src/actions/chat_with_attachments.ts\r\n- [ ] packages/client-discord/src/actions/summarize_conversation.ts\r\n- [ ] packages/client-slack/src/events.ts\r\n\r\n\r\n**To Reproduce**\r\n\r\nTo find the files to fix:\r\n\r\n`grep -ro \"TODO\" --exclude-dir=node_modules --exclude-dir=dist | uniq` \r\n\r\nSome examples `grep -roP \"TODO\\s*.*\" --exclude-dir=node_modules`\r\n```\r\nagent/src/index.ts:TODO: Add Slack client to the list\r\npackages/core/dist/index.js:TODO: check\r\npackages/core/dist/index.js:TODO: ?download=true\r\npackages/client-discord/src/utils.ts:TODO: clean this up\r\npackages/client-discord/src/attachments.ts:TODO: clean this up\r\npackages/client-discord/src/messages.ts:TODO: This is throwing an error but seems to work?\r\npackages/client-discord/src/messages.ts:TODO: Move to attachments manager\r\npackages/client-discord/src/actions/chat_with_attachments.ts:TODO: make this dynamic and generic\r\npackages/client-discord/src/actions/summarize_conversation.ts:TODO: parse start and end into timestamps\r\npackages/client-slack/src/events.ts:TODO: Implement reaction handling\r\n```\r\n\r\n**Expected behavior**\r\n\r\ngithub issue or cleaning up the code\r\n\r\n**Screenshots**\r\n\r\n![image](https://github.com/user-attachments/assets/ed48b42c-7701-4432-a284-5e8143f93227)\r\n\r\n\r\n**Additional context**\r\n\r\n\r\n",
"labels": [
{
"name": "bug",
"color": "d73a4a",
"description": "Something isn't working"
+ },
+ {
+ "name": "documentation",
+ "color": "0075ca",
+ "description": "Improvements or additions to documentation"
+ },
+ {
+ "name": "good first issue",
+ "color": "7057ff",
+ "description": "Good for newcomers"
}
],
- "comments": [
+ "comments": []
+ },
+ {
+ "number": 1222,
+ "title": "chore: Keeps README translations synchronized",
+ "state": "OPEN",
+ "created_at": "2024-12-19T00:33:42Z",
+ "updated_at": "2024-12-19T00:33:43Z",
+ "body": "**Is your feature request related to a problem? Please describe.**\r\n\r\nThere are now a lot of language translated READMEs in the repo. If we implement a change in one, we have to manually cascade the changes in order.\r\n\r\n**Describe the solution you'd like**\r\n\r\nScript that uses AI (ollama / openai) that cascades changes when the english README.md file changes. Translates / updates all the other README files. Github CI would be a nice touch too\r\n\r\n**Describe alternatives you've considered**\r\n\r\n**Additional context**\r\n\r\n![image](https://github.com/user-attachments/assets/72cc29ce-6a5d-4cbc-9d6b-b6f07c09f399)\r\n",
+ "labels": [
{
- "author": "jaycoolh",
- "body": "Same error here"
+ "name": "documentation",
+ "color": "0075ca",
+ "description": "Improvements or additions to documentation"
},
{
- "author": "jaycoolh",
- "body": "I am using: v0.1.6-alpha.4\r\n\r\nnode --version \r\nv23.3.0\r\n\r\npnpm --version \r\n9.15.0\r\n\r\n pnpm start --character=\"characters/trump.character.json\""
+ "name": "good first issue",
+ "color": "7057ff",
+ "description": "Good for newcomers"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "number": 1221,
+ "title": "feat: Eliza Code Assistant default characterfile",
+ "state": "OPEN",
+ "created_at": "2024-12-19T00:21:13Z",
+ "updated_at": "2024-12-19T08:08:35Z",
+ "body": "**Overview**\r\nCreate an AI-powered development guide bot that can assist new contributors and help maintainers by leveraging repository history and documentation. This can be a starter file that teaches people about Eliza as soon as they run Eliza.\r\n\r\n**Current Situation**\r\n- New contributors often ask similar questions in discord / twitter\r\n- Repository knowledge is spread across many files and commit history\r\n- Code review assignments are manual and don't always match expertise\r\n\r\n**Proposed Solution**\r\nBuild an agent that:\r\n1. Answers FAQ-style questions using repo knowledge as recommended first step\r\n2. Suggests relevant examples based on current work\r\n3. Guides contributors to relevant documentation/contributors with answers\r\n\r\n**Technical Implementation**\r\n- Create an eliza characterfile template\r\n - https://elizagen.howieduhzit.best/\r\n- Ingest knowledge about github (prevent duplicate issues, find answers, suggest new issue)\r\n - https://ai16z.github.io/data/daily/contributors.json\r\n - https://ai16z.github.io/data/daily/summary.json\r\n - https://ai16z.github.io/data/daily/summary.md\r\n - https://ai16z.github.io/data/weekly/contributors.json\r\n - https://ai16z.github.io/data/monthly/contributors.json\r\n- Ingest docs + FAQ from discord (https://github.com/ai16z/eliza/issues/1044)\r\n - https://ai16z.github.io/eliza/community/Discord/\r\n\r\n**Integration Points (IDEAS)**\r\n- Discord code assistant\r\n- Website frontend (eliza.gg)\r\n",
+ "labels": [
+ {
+ "name": "documentation",
+ "color": "0075ca",
+ "description": "Improvements or additions to documentation"
},
{
- "author": "jaycoolh",
- "body": "[\"\u25ce Visit the following URL to chat with your agents:\"]\r\n\r\n [\"\u25ce http://localhost:5173\"]\r\n\r\n [\"\u2713 REST API bound to 0.0.0.0:3000. If running locally, access it at http://localhost:3000.\"]\r\n \r\n \r\n 'http://localhost:5173' is just a dead link"
+ "name": "enhancement",
+ "color": "a2eeef",
+ "description": "New feature or request"
},
{
- "author": "jaycoolh",
- "body": "@Longame208 \r\n\r\nin the package.json there is a script `pnpm start:client`\r\n\r\nthis spins up the app http://localhost:5173\r\n\r\nNeed to include this in the quickstart guide https://ai16z.github.io/eliza/docs/quickstart/#next-steps\r\n\r\n(or even better, include the `pnpm start:client` in the `pnpm start` command"
+ "name": "Bounty",
+ "color": "d93f0b",
+ "description": "Use this to assign a bounty to an issue"
+ }
+ ],
+ "comments": [
+ {
+ "author": "maq796113",
+ "body": "how good is the bounty?"
}
]
}
]
},
"engagement": {
- "total_comments": 4,
+ "total_comments": 1,
"total_reviews": 0,
"comments": [],
"reviews": []
diff --git a/data/daily/contributors.json b/data/daily/contributors.json
index 50cd9d7..9365939 100644
--- a/data/daily/contributors.json
+++ b/data/daily/contributors.json
@@ -1,1598 +1,390 @@
[
{
- "contributor": "madjin",
- "score": 23,
- "summary": "madjin is currently working on documenting missing plugin documentation and examples, as well as enhancing existing documentation with new content. Their recent activity includes one merged pull request and one issue related to documentation in the docs code area.",
- "avatar_url": "https://avatars.githubusercontent.com/u/32600939?u=cdcf89f44c7a50906c7a80d889efa85023af2049&v=4",
+ "contributor": "renlulu",
+ "score": 40,
+ "summary": "renlulu is currently working on enhancing the authentication process by making the Twitter login retry times configurable. Additionally, they are improving the flexibility of the Express payload limit by making it configurable. These changes are primarily focused on the agent and packages code areas.",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/8149051?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg2NjAsIm5iZiI6MTczNDY0NzQ2MCwicGF0aCI6Ii91LzgxNDkwNTEifQ.vNRFI1s-VUpAgF8g-JReFxwDI4UBDPmFdIkEcDNscYE&u=001a339b366e297d951ff1155837fe1e1510c398&v=4",
"activity": {
"code": {
"total_commits": 0,
- "total_prs": 1,
+ "total_prs": 2,
"commits": [],
"pull_requests": [
{
- "number": 1211,
- "title": "chore: New docs",
+ "number": 1245,
+ "title": "feat: make express payload limit configurable",
"state": "MERGED",
"merged": true,
- "created_at": "2024-12-18T19:04:47Z",
- "updated_at": "2024-12-18T20:26:44Z",
+ "created_at": "2024-12-19T18:12:17Z",
+ "updated_at": "2024-12-19T22:05:56Z",
"body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
"files": [
{
- "path": "docs/api/classes/AgentRuntime.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/classes/CacheManager.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/classes/DatabaseAdapter.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/classes/DbCacheAdapter.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/classes/FsCacheAdapter.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/classes/MemoryCacheAdapter.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/classes/MemoryManager.md",
- "additions": 1,
- "deletions": 1
+ "path": ".env.example",
+ "additions": 3,
+ "deletions": 0
},
{
- "path": "docs/api/classes/Service.md",
- "additions": 5,
- "deletions": 5
- },
+ "path": "packages/client-direct/src/api.ts",
+ "additions": 26,
+ "deletions": 17
+ }
+ ],
+ "reviews": [
{
- "path": "docs/api/enumerations/Clients.md",
- "additions": 9,
- "deletions": 9
+ "author": "monilpat",
+ "state": "COMMENTED",
+ "body": ""
},
{
- "path": "docs/api/enumerations/GoalStatus.md",
- "additions": 1,
- "deletions": 1
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM one nit"
},
{
- "path": "docs/api/enumerations/LoggingLevel.md",
- "additions": 4,
- "deletions": 4
- },
+ "author": "monilpat",
+ "state": "COMMENTED",
+ "body": ""
+ }
+ ],
+ "comments": []
+ },
+ {
+ "number": 1244,
+ "title": "feat: make twitter login retry times as env",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T17:54:02Z",
+ "updated_at": "2024-12-19T21:52:56Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
{
- "path": "docs/api/enumerations/ModelClass.md",
+ "path": ".env.example",
"additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/enumerations/ModelProviderName.md",
- "additions": 33,
- "deletions": 23
- },
- {
- "path": "docs/api/enumerations/ServiceType.md",
- "additions": 12,
- "deletions": 12
+ "deletions": 0
},
{
- "path": "docs/api/functions/addHeader.md",
+ "path": "agent/src/index.ts",
"additions": 2,
"deletions": 2
},
{
- "path": "docs/api/functions/composeActionExamples.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/composeContext.md",
- "additions": 12,
- "deletions": 6
- },
- {
- "path": "docs/api/functions/configureSettings.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/createGoal.md",
- "additions": 1,
+ "path": "packages/client-twitter/src/base.ts",
+ "additions": 4,
"deletions": 1
- },
+ }
+ ],
+ "reviews": [
{
- "path": "docs/api/functions/createRelationship.md",
- "additions": 1,
- "deletions": 1
- },
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM"
+ }
+ ],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 4,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "odilitime",
+ "score": 33,
+ "summary": "odilitime is currently working on fixing issues related to the local_llama key warning and ensuring that the user exists before adding a participant in the PostgreSQL database. Their recent contributions are focused on the agent and packages code areas.",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/16395496?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0MjAsIm5iZiI6MTczNDY0NzIyMCwicGF0aCI6Ii91LzE2Mzk1NDk2In0.AHDvuRgPHYO0i8IDYNzSfDB3Ae2PlvNoeRcGjB_wn9Q&u=45c152d8433e37c62520e66c0dd6d754ccf3eaf4&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 2,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1250,
+ "title": "fix: Fix local_llama key warning",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T21:39:36Z",
+ "updated_at": "2024-12-19T22:07:08Z",
+ "body": "# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nfix scary start up warnings for firing it up out of the box\r\n\r\n```\r\n [\"\u25ce DirectClient constructor\"] \r\n\r\n [\"\u26d4 Failed to get token - unsupported model provider: llama_local\"] \r\n\r\n \u26d4 ERRORS\r\n Error starting agent for character Eliza: \r\n {} \r\n\r\n [\"\u26d4 Error: Failed to get token - unsupported model provider: llama_local\"] \r\n\r\n \u26d4 ERRORS\r\n Error starting agents: \r\n {} \r\n\r\n [\"\u25ce Run `pnpm start:client` to start the client and visit the outputted URL (http://localhost:5173) to chat with your agents\"] \r\n\r\n```\r\n\r\n## What kind of change is this?\r\n\r\nImprovements (misc. changes to existing features)\r\n\r\n## Why are we doing this? Any context or related work?\r\n\r\nImproved new developer experience, reduce confusion\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.",
+ "files": [
{
- "path": "docs/api/functions/embed.md",
- "additions": 1,
+ "path": "agent/src/index.ts",
+ "additions": 4,
"deletions": 1
- },
+ }
+ ],
+ "reviews": [
{
- "path": "docs/api/functions/findNearestEnvFile.md",
- "additions": 1,
- "deletions": 1
- },
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM!"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "number": 1219,
+ "title": "fix: postgres needs the user to exist before you can add a participant",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T00:06:37Z",
+ "updated_at": "2024-12-19T02:09:16Z",
+ "body": "# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nwaits for users to be added before proceeding to adding participants\r\n\r\nalso moves the db check up before doing any db things\r\n\r\n## What kind of change is this?\r\n\r\nBug fixes (non-breaking change which fixes an issue)\r\n\r\n## Why are we doing this? Any context or related work?\r\n\r\n```\r\n [\"\u25ce Room c6dc9108-8990-0d80-a635-98d3a928f4e4 created successfully.\"] \r\n\r\nError adding participant error: insert or update on table \"participants\" violates foreign key constraint \"participants_userId_fkey\"\r\n at /root/eliza-odi/node_modules/pg-pool/index.js:45:11\r\n at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\r\n at async file:///root/eliza-odi/packages/adapter-postgres/dist/index.js:822:17\r\n at async PostgresDatabaseAdapter.withRetry (file:///root/eliza-odi/packages/adapter-postgres/dist/index.js:67:24)\r\n at async CircuitBreaker.execute (file:///root/eliza-odi/packages/core/dist/index.js:93:28)\r\n at async PostgresDatabaseAdapter.withCircuitBreaker (file:///root/eliza-odi/packages/core/dist/index.js:383:20)\r\n at async AgentRuntime.ensureParticipantExists (file:///root/eliza-odi/packages/core/dist/index.js:3661:13) {\r\n length: 305,\r\n severity: 'ERROR',\r\n code: '23503',\r\n detail: 'Key (userId)=(c6dc9108-8990-0d80-a635-98d3a928f4e4) is not present in table \"accounts\".',\r\n hint: undefined,\r\n position: undefined,\r\n internalPosition: undefined,\r\n internalQuery: undefined,\r\n where: undefined,\r\n schema: 'public',\r\n table: 'participants',\r\n column: undefined,\r\n dataType: undefined,\r\n constraint: 'participants_userId_fkey',\r\n file: 'ri_triggers.c',\r\n line: '2608',\r\n routine: 'ri_ReportViolation'\r\n}\r\n [\"\u2713 User WokeMindVirus created successfully.\"]\r\n```\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n",
+ "files": [
{
- "path": "docs/api/functions/formatActionNames.md",
- "additions": 1,
- "deletions": 1
- },
+ "path": "packages/core/src/runtime.ts",
+ "additions": 8,
+ "deletions": 5
+ }
+ ],
+ "reviews": [
{
- "path": "docs/api/functions/formatActions.md",
- "additions": 1,
- "deletions": 1
- },
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM!"
+ }
+ ],
+ "comments": [
{
- "path": "docs/api/functions/formatActors.md",
- "additions": 1,
- "deletions": 1
- },
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1219?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAttention: Patch coverage is `0%` with `6 lines` in your changes missing coverage. Please review.\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1219?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Patch % | Lines |\n|---|---|---|\n| [packages/core/src/runtime.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1219?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fruntime.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvcnVudGltZS50cw==) | 0.00% | [6 Missing :warning: ](https://app.codecov.io/gh/ai16z/eliza/pull/1219?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) |\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1219?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Coverage \u0394 | |\n|---|---|---|\n| [packages/core/src/runtime.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1219?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fruntime.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvcnVudGltZS50cw==) | `0.00% <0.00%> (\u00f8)` | |\n"
+ }
+ ]
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 2,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "cygaar",
+ "score": 33,
+ "summary": "cygaar is currently working on adding an abstract plugin feature, with a work-in-progress pull request. They have also made improvements to the prompt for generating Twitter posts in another pull request. Both of these contributions are focused on the \"packages\" code area.",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/97691933?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91Lzk3NjkxOTMzIn0.vv-JK85dC71dWur7eEcbi2Ry93mpLfQ5KxBgeSQHBMk&u=45e66309f3fd41536b48a58f3c949b9e4e90789a&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 2,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1225,
+ "title": "[WIP] feat: add abstract plugin",
+ "state": "OPEN",
+ "merged": false,
+ "created_at": "2024-12-19T03:52:15Z",
+ "updated_at": "2024-12-19T04:01:38Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nAdds Abstract support to Eliza agents!\r\n\r\n# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nAdds support for Eliza to interact with Abstract testnet. The logic borrows heavily from #906, but changes zksync references to Abstract and uses viem for onchain interactions. In the future, I'll be adding more custom abstract-only functionality which is why I did not re-use the existing zksync logic.\r\n\r\n## What kind of change is this?\r\n\r\nFeature\r\n\r\n# Documentation changes needed?\r\n\r\nYes, I will add Abstract specific documentation\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\nSpin up an agent with the abstract plugin\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
{
- "path": "docs/api/functions/formatEvaluatorExampleDescriptions.md",
- "additions": 1,
- "deletions": 1
+ "path": ".env.example",
+ "additions": 5,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatEvaluatorExamples.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-abstract/package.json",
+ "additions": 20,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatEvaluatorNames.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-abstract/src/actions/transfer.ts",
+ "additions": 213,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatEvaluators.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-abstract/src/environment.ts",
+ "additions": 32,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatGoalsAsString.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-abstract/src/index.ts",
+ "additions": 13,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatMessages.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-abstract/tsconfig.json",
+ "additions": 10,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatPosts.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-abstract/tsup.config.ts",
+ "additions": 20,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatRelationships.md",
- "additions": 1,
+ "path": "pnpm-lock.yaml",
+ "additions": 22,
"deletions": 1
- },
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ },
+ {
+ "number": 1217,
+ "title": "fix: improve twitter post generation prompt",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-18T23:08:16Z",
+ "updated_at": "2024-12-19T00:00:41Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nAdds more variance to tweet generation so the content feels less stale\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
{
- "path": "docs/api/functions/formatTimestamp.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/client-twitter/src/post.ts",
+ "additions": 238,
+ "deletions": 128
},
{
- "path": "docs/api/functions/generateCaption.md",
+ "path": "packages/core/src/types.ts",
"additions": 2,
"deletions": 2
- },
+ }
+ ],
+ "reviews": [
{
- "path": "docs/api/functions/generateImage.md",
- "additions": 1,
- "deletions": 1
+ "author": "odilitime",
+ "state": "COMMENTED",
+ "body": ""
},
{
- "path": "docs/api/functions/generateMessageResponse.md",
- "additions": 1,
- "deletions": 1
+ "author": "cygaar",
+ "state": "COMMENTED",
+ "body": ""
},
{
- "path": "docs/api/functions/generateObject.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateObjectArray.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateObjectDeprecated.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateShouldRespond.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateTextArray.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateTrueOrFalse.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateTweetActions.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateWebSearch.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getActorDetails.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getEmbeddingConfig.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getEmbeddingType.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getEmbeddingZeroVector.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getEndpoint.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getEnvVariable.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getGoals.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getModel.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getProviders.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getRelationship.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getRelationships.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/handleProvider.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/hasEnvVariable.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/loadEnvConfig.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/parseActionResponseFromText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/parseBooleanFromText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/parseJSONObjectFromText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/parseJsonArrayFromText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/parseShouldRespondFromText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/splitChunks.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/stringToUuid.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/trimTokens.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/updateGoal.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/validateCharacterConfig.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/validateEnv.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/index.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/Account.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/Action.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/ActionExample.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/ActionResponse.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/interfaces/Actor.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/Content.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/ConversationExample.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/EvaluationExample.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/Evaluator.md",
- "additions": 8,
- "deletions": 8
- },
- {
- "path": "docs/api/interfaces/GenerationOptions.md",
- "additions": 10,
- "deletions": 10
- },
- {
- "path": "docs/api/interfaces/Goal.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/IAgentConfig.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/IAgentRuntime.md",
- "additions": 38,
- "deletions": 38
- },
- {
- "path": "docs/api/interfaces/IAwsS3Service.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/interfaces/IBrowserService.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/interfaces/ICacheAdapter.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/ICacheManager.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/IDatabaseAdapter.md",
- "additions": 38,
- "deletions": 38
- },
- {
- "path": "docs/api/interfaces/IDatabaseCacheAdapter.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/IImageDescriptionService.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/IMemoryManager.md",
- "additions": 14,
- "deletions": 14
- },
- {
- "path": "docs/api/interfaces/IPdfService.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/interfaces/ISlackService.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/ISpeechService.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/interfaces/ITextGenerationService.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/ITranscriptionService.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/IVideoService.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/Memory.md",
- "additions": 10,
- "deletions": 10
- }
- ],
- "reviews": [
- {
- "author": "odilitime",
- "state": "APPROVED",
- "body": ""
- },
- {
- "author": "monilpat",
- "state": "APPROVED",
- "body": ""
- }
- ],
- "comments": []
- }
- ]
- },
- "issues": {
- "total_opened": 1,
- "opened": [
- {
- "number": 1200,
- "title": "chore: Document Missing Plugin Documentation and Examples",
- "state": "OPEN",
- "created_at": "2024-12-18T08:59:15Z",
- "updated_at": "2024-12-18T08:59:15Z",
- "body": "**Overview**\r\nSeveral plugins in the Eliza framework lack comprehensive documentation. This makes it harder for new developers to understand and utilize these components.\r\n\r\nMissing Plugin Documentation:\r\n- [ ] plugin-0g - File storage plugin\r\n- [ ] plugin-aptos - Aptos blockchain integration\r\n- [ ] plugin-conflux - Conflux blockchain integration \r\n- [ ] plugin-echochambers - Echo chamber client\r\n- [ ] plugin-flow - Flow blockchain integration\r\n- [ ] plugin-goat - GOAT functionality\r\n- [ ] plugin-icp - Internet Computer integration\r\n- [ ] plugin-image-generation - Image generation capabilities\r\n- [ ] plugin-intiface - Intiface integration\r\n- [ ] plugin-multiversx - MultiversX blockchain \r\n- [ ] plugin-near - NEAR Protocol integration\r\n- [ ] plugin-nft-generation - NFT creation functionality\r\n- [ ] plugin-story - Story/IP management\r\n- [ ] plugin-sui - Sui blockchain integration\r\n- [ ] plugin-ton - TON blockchain integration\r\n- [ ] plugin-trustdb - Trust database functionality\r\n- [ ] plugin-video-generation - Video generation features\r\n- [ ] plugin-web-search - Web search capabilities\r\n- [ ] plugin-whatsapp - WhatsApp integration\r\n- [ ] plugin-zksync-era - zkSync Era integration\r\n\r\n**Proposed Documentation Structure**\r\nFor each plugin, we need:\r\n1. Overview and purpose\r\n2. Installation instructions\r\n3. Configuration requirements\r\n4. Usage examples\r\n5. API reference\r\n6. Common issues/troubleshooting\r\n\r\n**Additional Missing Docs**\r\n- Examples folder documentation\r\n- Testing guide expansion\r\n- Plugin development guide\r\n- Security best practices\r\n- Performance optimization guide\r\n\r\n**Value Add**\r\nThis documentation will:\r\n- Improve developer onboarding\r\n- Reduce support questions\r\n- Enable faster plugin adoption\r\n- Help maintain code quality",
- "labels": [
- {
- "name": "documentation",
- "color": "0075ca",
- "description": "Improvements or additions to documentation"
- },
- {
- "name": "enhancement",
- "color": "a2eeef",
- "description": "New feature or request"
- }
- ],
- "comments": []
- }
- ]
- },
- "engagement": {
- "total_comments": 0,
- "total_reviews": 2,
- "comments": [],
- "reviews": []
- }
- }
- },
- {
- "contributor": "tomguluson92",
- "score": 17,
- "summary": "tomguluson92 is primarily focused on updating the \"CN README\" documentation with more details, as indicated by the recent merged pull request. There have been no new commits or code changes in the last 90 days.",
- "avatar_url": "https://avatars.githubusercontent.com/u/19585240?u=4a4465656050747dee79f5f97a8b61cf2fbc97e1&v=4",
- "activity": {
- "code": {
- "total_commits": 0,
- "total_prs": 1,
- "commits": [],
- "pull_requests": [
- {
- "number": 1196,
- "title": "docs: Update \"CN README\" with more details",
- "state": "MERGED",
- "merged": true,
- "created_at": "2024-12-18T06:12:33Z",
- "updated_at": "2024-12-18T17:29:45Z",
- "body": "Add more details in the CN version of README\r\n\r\n\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nFix the old CN readme, since old version do not have a complete launch information.\r\n\r\n## What kind of change is this?\r\n\r\nImprovements\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\nYes, I change the readme chinese version.\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
- "files": [
- {
- "path": "README_CN.md",
- "additions": 58,
- "deletions": 6
- }
- ],
- "reviews": [
- {
- "author": "odilitime",
- "state": "APPROVED",
- "body": ""
- }
- ],
- "comments": [
- {
- "author": "codecov",
- "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1196?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n"
- }
- ]
- }
- ]
- },
- "issues": {
- "total_opened": 0,
- "opened": []
- },
- "engagement": {
- "total_comments": 0,
- "total_reviews": 1,
- "comments": [],
- "reviews": []
- }
- }
- },
- {
- "contributor": "ileana-pr",
- "score": 17,
- "summary": "ileana-pr is currently working on documentation by fixing the CONTRIBUTING.md file in the docs section. In the last 90 days, they have submitted 1 pull request, which has been successfully merged.",
- "avatar_url": "https://avatars.githubusercontent.com/u/103957712?u=e0f8d1e80ea177088c7f03dc45da54e7994ccd7c&v=4",
- "activity": {
- "code": {
- "total_commits": 0,
- "total_prs": 1,
- "commits": [],
- "pull_requests": [
- {
- "number": 1191,
- "title": "docs: fixed CONTRIBUTING.md file Issue: 1048",
- "state": "MERGED",
- "merged": true,
- "created_at": "2024-12-18T00:10:51Z",
- "updated_at": "2024-12-18T02:00:30Z",
- "body": "\r\n\r\n# Relates to:\r\nIssue #1048 Fixed \r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
- "files": [
- {
- "path": "docs/docs/contributing.md",
- "additions": 5,
- "deletions": 5
- }
- ],
- "reviews": [
- {
- "author": "monilpat",
- "state": "APPROVED",
- "body": "LGTM - thanks :) "
- }
- ],
- "comments": [
- {
- "author": "codecov",
- "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1191?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n"
- }
- ]
- }
- ]
- },
- "issues": {
- "total_opened": 0,
- "opened": []
- },
- "engagement": {
- "total_comments": 0,
- "total_reviews": 1,
- "comments": [],
- "reviews": []
- }
- }
- },
- {
- "contributor": "ai16z-demirix",
- "score": 17,
- "summary": "ai16z-demirix is currently working on adding tests for runtime.ts and updating the README to reflect the switch to vitest in the packages code area. They have made 1 merged pull request in the last 90 days.",
- "avatar_url": "https://avatars.githubusercontent.com/u/188117230?u=424cd5b834584b3799da288712b3c4158c8032a1&v=4",
- "activity": {
- "code": {
- "total_commits": 0,
- "total_prs": 1,
- "commits": [],
- "pull_requests": [
- {
- "number": 1190,
- "title": "test: adding tests for runtime.ts. Modified README since we switched to vitest",
- "state": "MERGED",
- "merged": true,
- "created_at": "2024-12-17T22:45:37Z",
- "updated_at": "2024-12-18T02:07:57Z",
- "body": "\r\n\r\n\r\n\r\n# Relates to:\r\nhttps://github.com/ai16z/eliza/issues/187\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\nLow: adding tests for runtime.ts\r\n# Background\r\n\r\n## What does this PR do?\r\nThis PR adds tests for runtime.ts\r\n## What kind of change is this?\r\nAdding new tests.\r\n\r\n\r\n\r\n\r\nContributing to have stable and good SDEC.\r\n\r\n# Documentation changes needed?\r\nMinimal: Edited tests README file since we switched to vitests from jest.\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\npackages/core/\r\n## Detailed testing steps\r\nnavigate to directory and run pnpm install and pnpm test\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
- "files": [
- {
- "path": "packages/core/README-TESTS.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "packages/core/src/tests/runtime.test.ts",
- "additions": 139,
- "deletions": 0
- }
- ],
- "reviews": [
- {
- "author": "monilpat",
- "state": "APPROVED",
- "body": "LGTM thanks for doing this :) "
- }
- ],
- "comments": [
- {
- "author": "codecov",
- "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1190?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n\n[see 8 files with indirect coverage changes](https://app.codecov.io/gh/ai16z/eliza/pull/1190/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z)\n"
- }
- ]
- }
- ]
- },
- "issues": {
- "total_opened": 0,
- "opened": []
- },
- "engagement": {
- "total_comments": 0,
- "total_reviews": 1,
- "comments": [],
- "reviews": []
- }
- }
- },
- {
- "contributor": "marcNY",
- "score": 15,
- "summary": "marcNY is currently updating the README.md file in the project's documentation. This is the only recent activity, with one pull request successfully merged. There have been no new commits or code changes in the last 90 days.",
- "avatar_url": "https://avatars.githubusercontent.com/u/8562443?u=734e3f5504e627ba44eec27c72ce0263cfe0a0ab&v=4",
- "activity": {
- "code": {
- "total_commits": 0,
- "total_prs": 1,
- "commits": [],
- "pull_requests": [
- {
- "number": 1209,
- "title": "docs: Update README.md",
- "state": "MERGED",
- "merged": true,
- "created_at": "2024-12-18T16:46:43Z",
- "updated_at": "2024-12-18T17:21:57Z",
- "body": "Relates to:\r\n\r\nNo issue; I created the pull request directly.\r\n\r\nRisks:\r\n\r\nLow\r\n\r\nBackground:\r\n\r\nThe starter script was not working because it did not include a cd command to navigate into the eliza-starter directory. This caused the script to fail when executed from the root of the project.\r\n\r\nWhat does this PR do?\r\n\r\nThis PR updates the starter script by adding a cd command to ensure it correctly navigates into the eliza-starter directory before executing any subsequent steps.\r\n\r\nWhat kind of change is this?\r\n\t\u2022\tBug fixes (non-breaking change which fixes an issue)\r\n\r\nDocumentation changes needed?\r\n\t\u2022\tMy changes do not require a change to the project documentation.\r\n\r\nTesting:\r\n\r\nWhere should a reviewer start?\r\n\r\nStart by reviewing the changes made to the starter script file.\r\n\r\nDetailed testing steps:\r\n\t1.\tRun the updated starter script from the root directory.\r\n\t2.\tConfirm that the script correctly navigates into the eliza-starter directory and proceeds without errors.",
- "files": [
- {
- "path": "README.md",
- "additions": 1,
- "deletions": 2
- }
- ],
- "reviews": [
- {
- "author": "odilitime",
- "state": "APPROVED",
- "body": ""
- }
- ],
- "comments": []
- }
- ]
- },
- "issues": {
- "total_opened": 0,
- "opened": []
- },
- "engagement": {
- "total_comments": 0,
- "total_reviews": 1,
- "comments": [],
- "reviews": []
- }
- }
- },
- {
- "contributor": "v1xingyue",
- "score": 14,
- "summary": "v1xingyue is currently focused on fixing a Gitpod CI/CD bug, with one pull request successfully merged in the last 90 days. There have been no new commits or code changes during this period.",
- "avatar_url": "https://avatars.githubusercontent.com/u/974169?u=96c6a113a91978c041e5cf90965d7b66c5540af4&v=4",
- "activity": {
- "code": {
- "total_commits": 0,
- "total_prs": 1,
- "commits": [],
- "pull_requests": [
- {
- "number": 1207,
- "title": "fix: gitpod cicd bug",
- "state": "MERGED",
- "merged": true,
- "created_at": "2024-12-18T15:06:25Z",
- "updated_at": "2024-12-18T19:43:00Z",
- "body": "Sometimes we can't fetch tags, so let's fetch tags before.\r\n",
- "files": [
- {
- "path": ".gitpod.yml",
- "additions": 1,
- "deletions": 0
- }
- ],
- "reviews": [
- {
- "author": "odilitime",
- "state": "APPROVED",
- "body": ""
- }
- ],
- "comments": [
- {
- "author": "codecov",
- "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1207?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n"
- }
- ]
- }
- ]
- },
- "issues": {
- "total_opened": 0,
- "opened": []
- },
- "engagement": {
- "total_comments": 0,
- "total_reviews": 1,
- "comments": [],
- "reviews": []
- }
- }
- },
- {
- "contributor": "9547",
- "score": 14,
- "summary": "9547 is currently working on adding documentation for Python 3.7 in Chinese. This is the only recent activity, with one pull request successfully merged. No other commits or code changes have been made in the last 90 days.",
- "avatar_url": "https://avatars.githubusercontent.com/u/29431502?u=def2043f3c532d18cae388fcec8d24a21e08d044&v=4",
- "activity": {
- "code": {
- "total_commits": 0,
- "total_prs": 1,
- "commits": [],
- "pull_requests": [
- {
- "number": 1201,
- "title": "docs(cn): add python 3.7",
- "state": "MERGED",
- "merged": true,
- "created_at": "2024-12-18T09:00:53Z",
- "updated_at": "2024-12-18T17:39:58Z",
- "body": "\r\n## What does this PR do?\r\n\r\nAdd python2.7 to the requirements\r\n\r\n",
- "files": [
- {
- "path": "README_CN.md",
- "additions": 2,
- "deletions": 3
- }
- ],
- "reviews": [
- {
- "author": "odilitime",
- "state": "APPROVED",
- "body": ""
- }
- ],
- "comments": [
- {
- "author": "codecov",
- "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1201?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n"
- }
- ]
- }
- ]
- },
- "issues": {
- "total_opened": 0,
- "opened": []
- },
- "engagement": {
- "total_comments": 0,
- "total_reviews": 1,
- "comments": [],
- "reviews": []
- }
- }
- },
- {
- "contributor": "monilpat",
- "score": 10,
- "summary": "monilpat is currently working on enhancing logging in the /packages/plugin-coinbase/src/plugins directory using elizaLogger. They have also been focusing on integrating contextualized actions and addressing bug fixes in their recent pull request.",
- "avatar_url": "https://avatars.githubusercontent.com/u/15067321?u=1271e57605b48029307547127c90e1bd5e4f3f39&v=4",
- "activity": {
- "code": {
- "total_commits": 0,
- "total_prs": 1,
- "commits": [],
- "pull_requests": [
- {
- "number": 1195,
- "title": "feat: integrate contextualized actions + bug fixes ",
- "state": "CLOSED",
- "merged": false,
- "created_at": "2024-12-18T05:26:54Z",
- "updated_at": "2024-12-18T05:27:15Z",
- "body": "Integrate memories (files) + character details to in actions plus a few bug fixes",
- "files": [
- {
- "path": ".env.example",
- "additions": 2,
- "deletions": 7
- },
- {
- "path": ".github/workflows/sync-upstream.yaml",
- "additions": 80,
- "deletions": 0
- },
- {
- "path": ".gitignore",
- "additions": 5,
- "deletions": 1
- },
- {
- "path": "agent/package.json",
- "additions": 3,
- "deletions": 1
- },
- {
- "path": "agent/src/index.ts",
- "additions": 54,
- "deletions": 12
- },
- {
- "path": "characters/chronis.character.json",
- "additions": 321,
- "deletions": 0
- },
- {
- "path": "characters/logging-addict.character.json",
- "additions": 262,
- "deletions": 0
- },
- {
- "path": "docs/api/classes/AgentRuntime.md",
- "additions": 40,
- "deletions": 40
- },
- {
- "path": "docs/api/classes/CacheManager.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/classes/DatabaseAdapter.md",
- "additions": 41,
- "deletions": 41
- },
- {
- "path": "docs/api/classes/DbCacheAdapter.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/classes/FsCacheAdapter.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/classes/MemoryCacheAdapter.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/classes/MemoryManager.md",
- "additions": 13,
- "deletions": 13
- },
- {
- "path": "docs/api/classes/Service.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/enumerations/Clients.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/enumerations/GoalStatus.md",
- "additions": 3,
- "deletions": 3
- },
- {
- "path": "docs/api/enumerations/LoggingLevel.md",
- "additions": 3,
- "deletions": 3
- },
- {
- "path": "docs/api/enumerations/ModelClass.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/enumerations/ModelProviderName.md",
- "additions": 76,
- "deletions": 0
- },
- {
- "path": "docs/api/enumerations/ServiceType.md",
- "additions": 8,
- "deletions": 8
- },
- {
- "path": "docs/api/functions/addHeader.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/composeActionExamples.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/composeContext.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/configureSettings.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/createGoal.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/createRelationship.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/embed.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/findNearestEnvFile.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatActionNames.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatActions.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatActors.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatEvaluatorExampleDescriptions.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatEvaluatorExamples.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatEvaluatorNames.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatEvaluators.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatGoalsAsString.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatMessages.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatPosts.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatRelationships.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatTimestamp.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateCaption.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateImage.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateMessageResponse.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateObject.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateObjectArray.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateObjectV2.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateShouldRespond.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateTextArray.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateTrueOrFalse.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateWebSearch.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getActorDetails.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getEmbeddingConfig.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getEmbeddingType.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getEmbeddingZeroVector.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getEndpoint.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getEnvVariable.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getGoals.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getModel.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getProviders.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getRelationship.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getRelationships.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/handleProvider.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/hasEnvVariable.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/loadEnvConfig.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/parseBooleanFromText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/parseJSONObjectFromText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/parseJsonArrayFromText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/parseShouldRespondFromText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/splitChunks.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/stringToUuid.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/trimTokens.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/updateGoal.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/validateCharacterConfig.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/validateEnv.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/Account.md",
- "additions": 6,
- "deletions": 6
- },
- {
- "path": "docs/api/interfaces/Action.md",
- "additions": 6,
- "deletions": 6
- },
- {
- "path": "docs/api/interfaces/ActionExample.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/interfaces/Actor.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/Content.md",
- "additions": 6,
- "deletions": 6
- },
- {
- "path": "docs/api/interfaces/ConversationExample.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/interfaces/EvaluationExample.md",
- "additions": 3,
- "deletions": 3
- },
- {
- "path": "docs/api/interfaces/Evaluator.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/GenerationOptions.md",
- "additions": 9,
- "deletions": 9
- },
- {
- "path": "docs/api/interfaces/Goal.md",
- "additions": 6,
- "deletions": 6
- },
- {
- "path": "docs/api/interfaces/IAgentRuntime.md",
- "additions": 35,
- "deletions": 35
- },
- {
- "path": "docs/api/interfaces/IBrowserService.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/ICacheAdapter.md",
- "additions": 3,
- "deletions": 3
- },
- {
- "path": "docs/api/interfaces/ICacheManager.md",
- "additions": 3,
- "deletions": 3
- },
- {
- "path": "docs/api/interfaces/IDatabaseAdapter.md",
- "additions": 37,
- "deletions": 37
- },
- {
- "path": "docs/api/interfaces/IDatabaseCacheAdapter.md",
- "additions": 3,
- "deletions": 3
- },
- {
- "path": "docs/api/interfaces/IImageDescriptionService.md",
- "additions": 3,
- "deletions": 3
- },
- {
- "path": "docs/api/interfaces/IMemoryManager.md",
- "additions": 13,
- "deletions": 13
- },
- {
- "path": "docs/api/interfaces/IPdfService.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/ISpeechService.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/ITextGenerationService.md",
- "additions": 6,
- "deletions": 6
- },
- {
- "path": "docs/api/interfaces/ITranscriptionService.md",
- "additions": 6,
- "deletions": 6
- },
- {
- "path": "docs/api/interfaces/IVideoService.md",
- "additions": 6,
- "deletions": 6
- },
- {
- "path": "docs/api/interfaces/Memory.md",
- "additions": 9,
- "deletions": 9
- }
- ],
- "reviews": [],
- "comments": []
- }
- ]
- },
- "issues": {
- "total_opened": 2,
- "opened": [
- {
- "number": 1194,
- "title": "Improve Logging in /packages/plugin-coinbase/src/plugins",
- "state": "OPEN",
- "created_at": "2024-12-18T04:16:18Z",
- "updated_at": "2024-12-18T08:38:48Z",
- "body": "**Is your feature request related to a problem? Please describe.**\n\nThe current logging mechanism in the `/packages/plugin-coinbase/src/plugins` directory lacks consistency and detail, making it challenging to debug and monitor the plugin's behavior effectively.\n\n**Describe the solution you'd like**\n\nIntegrate the `elizaLogger` construct to standardize logging across the plugin. This should include:\n- Consistent log levels (INFO, DEBUG, ERROR) for different operations.\n- Detailed log messages that include context such as function names and parameters.\n- Examples of how to implement `elizaLogger` in existing functions for better clarity.\n\n**Describe alternatives you've considered**\n\n- Continuing with the current ad-hoc logging approach.\n- Using a third-party logging library, though this may introduce unnecessary dependencies.\n\n**Additional context**\n\nPlease refer to existing examples in the `/packages/plugin-coinbase/src/plugins` directory and extend them where possible. Ensure that the new logging strategy aligns with the overall architecture of the `eliza` project.",
- "labels": [
- {
- "name": "enhancement",
- "color": "a2eeef",
- "description": "New feature or request"
- },
- {
- "name": "good first issue",
- "color": "7057ff",
- "description": "Good for newcomers"
- },
- {
- "name": "logging",
- "color": "ededed",
- "description": null
- }
- ],
- "comments": [
- {
- "author": "9547",
- "body": "@monilpat may I take this one?"
- }
- ]
- },
- {
- "number": 1192,
- "title": "Enhance Logging in /packages/plugin-coinbase/src/plugins Using elizaLogger",
- "state": "CLOSED",
- "created_at": "2024-12-18T01:45:28Z",
- "updated_at": "2024-12-18T01:46:15Z",
- "body": "---\nname: Feature request\nabout: Suggest an idea for this project\ntitle: \"\"\nlabels: \"enhancement\"\nassignees: \"\"\n---\n\n**Is your feature request related to a problem? Please describe.**\n\nCurrently, the logging mechanism in `/packages/plugin-coinbase/src/plugins` lacks detailed output, making it difficult to trace issues and monitor performance effectively.\n\n**Describe the solution you'd like**\n\nIntegrate the `elizaLogger` construct to provide more comprehensive logging throughout the codebase. This would involve:\n- Adding entry and exit logs for key functions.\n- Including detailed error logging with stack traces.\n- Logging significant state changes and data processing steps.\n\n**Describe alternatives you've considered**\n\nConsidered using a third-party logging library, but `elizaLogger` offers a more integrated solution with existing infrastructure.\n\n**Additional context**\n\nUtilize existing examples of `elizaLogger` usage in other parts of the codebase as a reference. Extend these examples to cover more complex scenarios within the `/packages/plugin-coinbase/src/plugins` path.",
- "labels": [
- {
- "name": "enhancement",
- "color": "a2eeef",
- "description": "New feature or request"
+ "author": "odilitime",
+ "state": "APPROVED",
+ "body": ""
}
],
"comments": []
}
]
},
- "engagement": {
- "total_comments": 1,
- "total_reviews": 0,
- "comments": [],
- "reviews": []
- }
- }
- },
- {
- "contributor": "Longame208",
- "score": 10,
- "summary": "Longame208 is currently working on addressing an issue related to being unable to chat in the terminal. The issue falls under the bug category, with no code changes or commits made in the last 90 days.",
- "avatar_url": "https://avatars.githubusercontent.com/u/79878000?v=4",
- "activity": {
- "code": {
- "total_commits": 0,
- "total_prs": 0,
- "commits": [],
- "pull_requests": []
- },
"issues": {
- "total_opened": 1,
- "opened": [
- {
- "number": 1204,
- "title": "unable to chat in terminal",
- "state": "OPEN",
- "created_at": "2024-12-18T11:19:12Z",
- "updated_at": "2024-12-18T12:41:24Z",
- "body": "run pnpm start / pnpm start:client and not able to have chat in terminal with agent was working before now it takes to local host page browser and nothing happens\r\n\r\n\r\n\r\n**To Reproduce**\r\n\r\n\r\n\r\n**Expected behavior**\r\n\r\n\r\n\r\n**Screenshots**\r\n\r\n\r\n\r\n**Additional context**\r\n\r\n\r\n",
- "labels": [
- {
- "name": "bug",
- "color": "d73a4a",
- "description": "Something isn't working"
- }
- ],
- "comments": [
- {
- "author": "jaycoolh",
- "body": "Same error here"
- },
- {
- "author": "jaycoolh",
- "body": "I am using: v0.1.6-alpha.4\r\n\r\nnode --version \r\nv23.3.0\r\n\r\npnpm --version \r\n9.15.0\r\n\r\n pnpm start --character=\"characters/trump.character.json\""
- },
- {
- "author": "jaycoolh",
- "body": "[\"\u25ce Visit the following URL to chat with your agents:\"]\r\n\r\n [\"\u25ce http://localhost:5173\"]\r\n\r\n [\"\u2713 REST API bound to 0.0.0.0:3000. If running locally, access it at http://localhost:3000.\"]\r\n \r\n \r\n 'http://localhost:5173' is just a dead link"
- },
- {
- "author": "jaycoolh",
- "body": "@Longame208 \r\n\r\nin the package.json there is a script `pnpm start:client`\r\n\r\nthis spins up the app http://localhost:5173\r\n\r\nNeed to include this in the quickstart guide https://ai16z.github.io/eliza/docs/quickstart/#next-steps\r\n\r\n(or even better, include the `pnpm start:client` in the `pnpm start` command"
- }
- ]
- }
- ]
+ "total_opened": 0,
+ "opened": []
},
"engagement": {
- "total_comments": 4,
- "total_reviews": 0,
+ "total_comments": 0,
+ "total_reviews": 3,
"comments": [],
"reviews": []
}
}
},
{
- "contributor": "tekspirit",
- "score": 8,
- "summary": "tekspirit is currently working on addressing a bug related to double backslashes when posting to X. This is the only issue they have been actively involved in over the last 90 days, with no code changes or commits recorded during this period.",
- "avatar_url": "https://avatars.githubusercontent.com/u/1505004?u=59283365bced9a568f4a3ea86310ee38f4b5003c&v=4",
+ "contributor": "tcm390",
+ "score": 29,
+ "summary": "tcm390 is currently working on fixing issues related to posting images generated by the imageGenerationPlugin on Telegram and resolving failures in the twitterShouldRespondTemplate when defined as a string in JSON character configuration. Both pull requests have been successfully merged in the 'packages' code area.",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/60634884?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkwODAsIm5iZiI6MTczNDY0Nzg4MCwicGF0aCI6Ii91LzYwNjM0ODg0In0.aTZg7v0-F5XSxIbAmBcfx_5AdpyFDh-e6rtAZEXNARI&u=c6c41679b8322eaa0c81f72e0b4ed95e80f0ac16&v=4",
"activity": {
"code": {
"total_commits": 0,
- "total_prs": 0,
+ "total_prs": 2,
"commits": [],
- "pull_requests": []
- },
- "issues": {
- "total_opened": 1,
- "opened": [
+ "pull_requests": [
{
- "number": 1206,
- "title": "double backslash when posting to X",
- "state": "OPEN",
- "created_at": "2024-12-18T14:02:01Z",
- "updated_at": "2024-12-18T18:29:36Z",
- "body": "**Describe the bug**\r\nEliza is posting an '\\\\n\\\\n' to X instead of two carriage returns. This is using CLAUDE_VERTEX.\r\n\r\nIt appears every post has this symptom.\r\n**To Reproduce**\r\nI run on a mac, so compiled eliza with settings for mac. Example: https://x.com/waggyhappytail/status/1869352624656716210\r\n\r\nI run with pnpm tsx agent/src/index.ts\r\n**Expected behavior**\r\nIt should post carriage returns.\r\n\r\n\r\n**Screenshots**\r\nhttps://imgur.com/a/BFJ2RlH\r\n\r\n\r\n**Additional context**\r\nIf I exit eliza and restart, it doesn't always reproduce the issue. The only filed edited is the character file.\r\n\r\n",
- "labels": [
+ "number": 1242,
+ "title": "fix: twitterShouldRespondTemplate Fails When Defined as a String in JSON Character Config",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T16:31:00Z",
+ "updated_at": "2024-12-19T22:02:54Z",
+ "body": "related: https://github.com/ai16z/eliza/issues/1235\r\n\r\n",
+ "files": [
{
- "name": "bug",
- "color": "d73a4a",
- "description": "Something isn't working"
+ "path": "packages/client-twitter/src/interactions.ts",
+ "additions": 1,
+ "deletions": 3
+ }
+ ],
+ "reviews": [
+ {
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM"
}
],
"comments": [
{
- "author": "usama-saeed831",
- "body": "@tekspirit I fix this by adding following line in\r\npacakages -> client-twitter -> src -> post.js\r\nin \"generateNewTweet()\" function\r\n\r\nafter\r\n**cleanedContent = removeQuotes(content);**\r\n\r\n`cleanedContent = cleanedContent.replace(/\\\\n/g, '\\n');`"
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1242?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n"
+ }
+ ]
+ },
+ {
+ "number": 1220,
+ "title": "fix: Allow the bot to post messages with images generated by the imageGenerationPlugin on Telegram.",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T00:16:18Z",
+ "updated_at": "2024-12-19T02:06:20Z",
+ "body": "related: \r\nhttps://github.com/ai16z/eliza/issues/970\r\nhttps://github.com/ai16z/eliza/pull/1040\r\n\r\n\r\n\r\n\r\n",
+ "files": [
+ {
+ "path": "packages/client-telegram/src/messageManager.ts",
+ "additions": 106,
+ "deletions": 54
+ },
+ {
+ "path": "packages/client-twitter/src/utils.ts",
+ "additions": 2,
+ "deletions": 12
},
{
- "author": "owlcode",
- "body": "I think `.replaceAll` is more appropriate. I fixed it here https://github.com/ai16z/eliza/pull/1141. I guess it waits for a release."
+ "path": "packages/plugin-image-generation/src/index.ts",
+ "additions": 1,
+ "deletions": 1
}
- ]
+ ],
+ "reviews": [
+ {
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM - thank you so much for doing this please feel free to close the issues :) "
+ }
+ ],
+ "comments": []
}
]
},
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
"engagement": {
- "total_comments": 2,
- "total_reviews": 0,
+ "total_comments": 0,
+ "total_reviews": 2,
"comments": [],
"reviews": []
}
}
},
{
- "contributor": "odilitime",
- "score": 7,
- "summary": "odilitime is currently working on implementing client secrets validation and loading characters from a database at both load time and runtime in the agent, scripts, and packages code areas. These changes are reflected in two pull requests, with conflicts resolved for the character loading feature.",
- "avatar_url": "https://avatars.githubusercontent.com/u/16395496?u=45c152d8433e37c62520e66c0dd6d754ccf3eaf4&v=4",
+ "contributor": "tomguluson92",
+ "score": 23,
+ "summary": "tomguluson92 is currently working on upgrading the Tavily API with comprehensive input and token consumption constraints. Additionally, they have fixed an issue with CircuitBreaker.ts. Their recent activity is focused on making improvements to the packages code areas.",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/19585240?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91LzE5NTg1MjQwIn0.gXlxEwvwu9reKlsbqgUt9Tx7a5qqekgFUel_ERC3Fwo&u=4a4465656050747dee79f5f97a8b61cf2fbc97e1&v=4",
"activity": {
"code": {
"total_commits": 0,
@@ -1600,143 +392,118 @@
"commits": [],
"pull_requests": [
{
- "number": 1210,
- "title": "feat: loading characters from db at load and runtime (conflicts resolved)",
+ "number": 1246,
+ "title": "feat: upgrade Tavily API with comprehensive input and constrain the token consumption",
"state": "OPEN",
"merged": false,
- "created_at": "2024-12-18T18:10:29Z",
- "updated_at": "2024-12-18T18:25:06Z",
- "body": "Originally #551, this is a resubmission\r\n\r\n\r\n\r\n# Relates to:\r\nLoading Characters from db(sqlite/postgres) during runtime (via a REST API call) and\r\nduring start/load time.\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n_Medium_\r\nNone of these changes will affect existing workflow as its handled by env variables\r\nFETCH_FROM_DB (bool) - default: null/false - For loading characters from DB\r\nAGENT_RUNTIME_MANAGEMENT (bool) - default: null/false - For loading characters from Db at runtime\r\n\r\nFrom security standpoint, all character specific secrets (EG: TWITTER_PASSWORD or OPENAI_API_KEY) is AES-256 encrypted and stored in DB\r\n\r\n\r\n\r\n# Background\r\nFor a production ready - multi-character Eliza setup, we want to load new characters in runtime via API calls.\r\nWe do not want to restart the Eliza server for each new character.\r\n\r\n_ASSUMPTION:_ \r\nAn api or script exists to store the characters in DB.\r\nThe api uses the same stringToUUID method to create consistent UUIDs for a character and store in DB.\r\n\r\n## What does this PR do?\r\n- Allows loading characters from DB during start\r\n- Allows loading characters via REST API from DB during runtime\r\n- The characters are stored in TEXT/JSONB format - similar to the character Agent file in sqlite and postgres respectively\r\n- Securely encrypts each character's secrets using AES-256 encryption and then stores in DB (Decrypt after fetch)\r\n- Proper error handling for all scenarios \r\n - Character already loaded in runtime\r\n - Character does not exist in db\r\n\r\n## What kind of change is this?\r\nThis is a new Feature\r\n\r\nWhy?\r\nCurrently \r\n1) For adding any new agent, we need to restart the Eliza server => All the agents and its clients are loaded again - All previous tweets (incase of twitter client), interactions are processed again. Any existing direct or telegram conversation is lost. \r\n2) Not a straight-forward mechanism to add new agents - Now with a REST API - load new agents.\r\n\r\nWhy are we doing this?\r\nTo take a step towards multi-character production setup\r\n\r\n### Code Changes made and why?\r\n1. **Created a new table in postgres and sqlite** - Added in the seed file/script of both DBs\r\n`\r\nexport type CharacterTable = {\r\n id: UUID; // created from stringToUUID - unique and consistent for name\r\n name: string;\r\n characterState: Character; // A JSONB or TEXT - that maps the character\r\n secretsIV?: Secrets; // Initialisation Vector for each secrets\r\n};\r\n`\r\n**Also added the above in packages/core/src/types.ts**\r\n2. **in SqliteAdapter and PostgresAdapter** - created a new function to load from this characters table\r\n3. **in Agents/src/index.ts** -> \r\n- Assign Directclient to a global variable - along with set and get methods. This is to allow the same direct client be used for character(agent) runtime creation\r\n- A function loadCharactersFromDb loadCharactersFromDb(\r\n characterNames?: string\r\n ): Promise \r\n - if any characterNames argument received, it fetches only those characters from db\r\n - else fetches all characters\r\n - This handles encryption and decryption of secrets if secrets are present in a character\r\n - uses env.ENCRYPTION_KEY\r\n- An express server\r\n - The server starts only when the env AGENT_RUNTIME_MANAGEMENT == true\r\n - _Why not use the same express server in DirectClient?_ DirectClient does not have access to the DB methods and all the agent-specific handling methods\r\n - ENDPOINT: \"/load/:agentName\" METHOD: Post\r\n - PORT: default. - 3001, overwritten by env AGENT_PORT\r\n4. **in packages/client-direct/src/index.ts**\r\n- Added ENDPOINT: \"/load/:agentName\" METHOD: Post\r\n - This endpoint (is a proxy) that routes request to the agent server's route\r\n - Before proxying, checks if AGENT_RUNTIME_MANAGEMENT ==true and if agents already in runtime\r\n5. created a file **packages/core/src/crypt.ts**\r\n- This handles the encryption and decryption methods\r\n6. created scripts that parses a character json file or all files in a folder and inserts in DB\r\n- Location: scripts/importCharactersInDB/[postgres/sqlite]/insertInDb.js\r\nRequires env variable\r\n`\r\nPOSTGRES_URL= # if postgres\r\nENCRYPTION_KEY=\"\"\r\nINPUT_PATH=characters # the folder path to load the characters from\r\nSQLITE_DB_PATH= #if you want to change db path Default: agent/data/db.sqlite\r\n`\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\nNot needed necessarily.\r\nNew ENV variables and explanations are added in .env.example\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\nI have tested the scenarios in detailed testing steps in both sqlite and postgres.\r\n\r\n## Where should a reviewer start?\r\n- agent/src/index.js \r\n- Line 418 and 531\r\npackages/client-direct/src/index.js\r\n- Line 271\r\n\r\n## Detailed testing steps\r\n**INIT STEP:** \r\n1. creating character table(use the schema.sql or sqliteTables.ts ) \r\n2. loading characters in DB (used the above mentioned scripts in `scripts/importCharactersInDB/[postgres/sqlite]/insertInDb.js` - \r\n - also added to the characters tate and trump - TWITTER_USERNAME, TWITTER_PASSWORD, TWITTER_EMAIL to its settings.secrets and twitter to client) to test secrets encryption and decryption\r\n\r\n**I have tested the following scenarios**\r\n1. Fetching from database during start\r\n- set env FETCH_FROM_DB=true\r\n- `pnpm start`\r\n- Will function as usual\r\n- if we want to test postgres, set env POSTGRES_URL=''\r\n2. Loading an agent during runtime\r\n- set env FETCH_FROM_DB=false #if true, we can't test load as all characters in db will be loaded\r\n- set env AGENT_RUNTIME_MANAGEMENT=true\r\n- set env ENCRYPTION_KEY= #use the same encryption key used in insertInDB.js script\r\n- set env AGENT_PORT=4000 #can be empty if we want to pick default port 3001\r\n`pnpm start`\r\n- This will load with the default character Eliza\r\n- `curl --location --request POST 'http://localhost:3000/load/trump'` - replace port and character name if using different characters\r\n- SUB SCENARIO 1: agent is loaded and we get success code 200\r\n- SUB SCENARIO 2: agent is already loaded and we get error code 409\r\n- SUB SCENARIO 3: agent does not exist in db and we get error code 404\r\n- SUB SCENARIO 4: Error during agent load - like incorrect twitter - error code 500\r\n- if we want to test postgres, set env POSTGRES_URL=''\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "created_at": "2024-12-19T19:25:41Z",
+ "updated_at": "2024-12-19T19:52:00Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nrelates to tavily #518\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nConstrain the maximum output of per web search from Tavily, while allows more input parameters that can be controlled by the developers or users.\r\n\r\n## What kind of change is this?\r\n\r\nImprovements & Features \r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\nNo\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\nYes, I have fulfilled the test by test this part independently and then assemble this to the core.\r\n\r\n## Where should a reviewer start?\r\n\r\nCould start with the test just like normally use Tavily.\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
"files": [
{
"path": ".env.example",
- "additions": 7,
- "deletions": 0
- },
- {
- "path": "agent/src/index.ts",
- "additions": 199,
- "deletions": 0
- },
- {
- "path": "packages/adapter-postgres/schema.sql",
- "additions": 9,
- "deletions": 0
- },
- {
- "path": "packages/adapter-postgres/src/index.ts",
- "additions": 48,
- "deletions": 1
- },
- {
- "path": "packages/adapter-sqlite/src/index.ts",
- "additions": 56,
- "deletions": 0
- },
- {
- "path": "packages/adapter-sqlite/src/sqliteTables.ts",
- "additions": 10,
- "deletions": 0
- },
- {
- "path": "packages/client-direct/src/index.ts",
- "additions": 45,
- "deletions": 4
- },
- {
- "path": "packages/core/src/crypt.ts",
- "additions": 63,
- "deletions": 0
- },
- {
- "path": "packages/core/src/index.ts",
- "additions": 1,
- "deletions": 0
- },
- {
- "path": "packages/core/src/types.ts",
- "additions": 20,
- "deletions": 0
- },
- {
- "path": "scripts/importCharactersInDB/crypt.js",
- "additions": 112,
- "deletions": 0
- },
- {
- "path": "scripts/importCharactersInDB/postgres/FetchFromDb.js",
- "additions": 143,
+ "additions": 3,
"deletions": 0
},
{
- "path": "scripts/importCharactersInDB/postgres/insertInDb.js",
- "additions": 223,
+ "path": "packages/core/src/generation.ts",
+ "additions": 4,
"deletions": 0
},
{
- "path": "scripts/importCharactersInDB/sqlite/fetchFromDb.js",
- "additions": 111,
- "deletions": 0
- },
+ "path": "packages/plugin-web-search/src/index.ts",
+ "additions": 24,
+ "deletions": 2
+ }
+ ],
+ "reviews": [
{
- "path": "scripts/importCharactersInDB/sqlite/insertInDb.js",
- "additions": 188,
- "deletions": 0
+ "author": "tcm390",
+ "state": "APPROVED",
+ "body": ""
}
],
- "reviews": [],
- "comments": []
+ "comments": [
+ {
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1246?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAttention: Patch coverage is `0%` with `4 lines` in your changes missing coverage. Please review.\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1246?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Patch % | Lines |\n|---|---|---|\n| [packages/core/src/generation.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1246?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fgeneration.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvZ2VuZXJhdGlvbi50cw==) | 0.00% | [4 Missing :warning: ](https://app.codecov.io/gh/ai16z/eliza/pull/1246?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) |\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1246?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Coverage \u0394 | |\n|---|---|---|\n| [packages/core/src/generation.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1246?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fgeneration.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvZ2VuZXJhdGlvbi50cw==) | `2.68% <0.00%> (-0.01%)` | :arrow_down: |\n"
+ }
+ ]
},
{
- "number": 1198,
- "title": "feat: Client secrets validation",
- "state": "OPEN",
- "merged": false,
- "created_at": "2024-12-18T07:17:10Z",
- "updated_at": "2024-12-18T22:33:35Z",
- "body": "# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nChecks that secrets are valid before adding client\r\n\r\n## What kind of change is this?\r\n\r\nImprovements (misc. changes to existing features)\r\n\r\n## Why are we doing this? Any context or related work?\r\n\r\nMake the daemon not crash when REST API is adding/updating/deleting agents\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n",
+ "number": 1226,
+ "title": "fix: CircuitBreaker.ts",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T04:53:10Z",
+ "updated_at": "2024-12-19T06:44:23Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nRelated to https://github.com/ai16z/eliza/pull/719\r\nBuild upon on https://github.com/ai16z/eliza/pull/812\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n`medium`, since we change the database adapters `circuitbase` code in the failure conditions.\r\n\r\n\r\n\r\n# Background\r\n\r\nDuring checking and learning the core code from AI16Z, I dig deeper into it and find out that the condition to restart the error need to be more fulfill.\r\n\r\n## What does this PR do?\r\n\r\nFulfill the condition in handling the failures.\r\n\r\n## What kind of change is this?\r\n\r\n**Improvements** \r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\nIf a docs change is needed: I have updated the documentation accordingly.\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\nYes\r\n\r\n",
"files": [
{
- "path": "agent/src/index.ts",
- "additions": 22,
- "deletions": 9
- },
- {
- "path": "packages/client-discord/src/index.ts",
- "additions": 30,
- "deletions": 3
- },
- {
- "path": "packages/client-telegram/package.json",
+ "path": "packages/core/src/database/CircuitBreaker.ts",
"additions": 1,
- "deletions": 0
- },
+ "deletions": 1
+ }
+ ],
+ "reviews": [
{
- "path": "packages/client-telegram/src/index.ts",
- "additions": 22,
- "deletions": 0
- },
+ "author": "shakkernerd",
+ "state": "APPROVED",
+ "body": ""
+ }
+ ],
+ "comments": [
{
- "path": "packages/client-twitter/src/base.ts",
- "additions": 14,
- "deletions": 7
- },
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1226?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAttention: Patch coverage is `0%` with `1 line` in your changes missing coverage. Please review.\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1226?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Patch % | Lines |\n|---|---|---|\n| [packages/core/src/database/CircuitBreaker.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1226?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fdatabase%2FCircuitBreaker.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvZGF0YWJhc2UvQ2lyY3VpdEJyZWFrZXIudHM=) | 0.00% | [1 Missing :warning: ](https://app.codecov.io/gh/ai16z/eliza/pull/1226?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) |\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1226?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Coverage \u0394 | |\n|---|---|---|\n| [packages/core/src/database/CircuitBreaker.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1226?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fdatabase%2FCircuitBreaker.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvZGF0YWJhc2UvQ2lyY3VpdEJyZWFrZXIudHM=) | `36.20% <0.00%> (-1.98%)` | :arrow_down: |\n"
+ }
+ ]
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 2,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "jonathangus",
+ "score": 17,
+ "summary": "jonathangus is currently working on syncing the UI client with the server port environment, with one pull request successfully merged in the last 90 days. The focus of their recent activity has been in the client code area.",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/7723195?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg3MjAsIm5iZiI6MTczNDY0NzUyMCwicGF0aCI6Ii91Lzc3MjMxOTUifQ.htne0skqI0Y2OwK1K8bRO0AevoSbqtOjKav7qWgZDAo&u=2f07ca181065b387adcebe19eaf0798526e6f061&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1239,
+ "title": "fix: Sync UI Client with server port env",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T13:56:38Z",
+ "updated_at": "2024-12-19T21:54:31Z",
+ "body": "\r\n\r\n# Risks\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nIt uses SERVER_PORT environment variable in the client app\r\n\r\n## What kind of change is this?\r\nImprovements for developer experience\r\n\r\n## Why are we doing this? Any context or related work?\r\nExperienced this issue when developing and wanted to use another port then 3000\r\n\r\n# Documentation changes needed?\r\nMy changes do not require a change to the project documentation.\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
{
- "path": "packages/client-twitter/src/index.ts",
- "additions": 17,
+ "path": "client/vite.config.ts",
+ "additions": 4,
"deletions": 1
- },
- {
- "path": "packages/core/src/types.ts",
- "additions": 3,
- "deletions": 0
}
],
"reviews": [
{
- "author": "cygaar",
- "state": "COMMENTED",
- "body": ""
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM - thank you!"
}
],
"comments": []
@@ -1756,10 +523,10 @@
}
},
{
- "contributor": "AbdelStark",
- "score": 6,
- "summary": "AbdelStark is currently working on implementing the Nostr client, with a focus on the agent and packages code areas. This contribution includes a single pull request that has not been merged yet, with no additional commits or code changes in the last 90 days.",
- "avatar_url": "https://avatars.githubusercontent.com/u/45264458?u=6ea3a3cec4fd224af9afe756466df041687486a2&v=4",
+ "contributor": "simpletrontdip",
+ "score": 16,
+ "summary": "simpletrontdip is currently working on adding a new feature to parse mode=Markdown and enhancing the output of a Telegram bot. This work is focused on the \"packages\" code area and includes one merged pull request.",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/20158564?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5MDAsIm5iZiI6MTczNDY0NzcwMCwicGF0aCI6Ii91LzIwMTU4NTY0In0.dPZab45J8lkENAvzV8Qyi-otNiiTGf44oBcjqxoS5mg&v=4",
"activity": {
"code": {
"total_commits": 0,
@@ -1767,120 +534,129 @@
"commits": [],
"pull_requests": [
{
- "number": 1203,
- "title": "feat: Implement Nostr client",
- "state": "OPEN",
- "merged": false,
- "created_at": "2024-12-18T09:55:14Z",
- "updated_at": "2024-12-18T20:52:26Z",
- "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow. It's an optional client to use. \r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\nFeatures (non-breaking change which adds functionality)\r\n\r\n## Why are we doing this? Any context or related work?\r\n\r\nNostr is the simplest open protocol that is able to create a censorship-resistant global \"social\" network once and for all.\r\n\r\nIt's nature and strong focus on censorship-resistance makes it a perfect fit for the Eliza agent framework.\r\n\r\n## Configuration\r\n\r\nHere are the env variables that need to be set in the `.env` file:\r\n\r\n| Variable | Description | Example |\r\n| ---------------------- | ------------------------------------------------------ | ------------------------------------------- |\r\n| NOSTR_RELAYS | The list of Nostr relays to connect to | wss://relay.damus.io,wss://relay.primal.net |\r\n| NOSTR_NSEC_KEY | Nostr Private Key (starts with nsec) | nsec1... |\r\n| NOSTR_NPUB_KEY | Nostr Public Key (starts with npub) | npub1... |\r\n| NOSTR_POLL_INTERVAL | How often (in seconds) to check for Nostr interactions | 120 |\r\n| NOSTR_POST_IMMEDIATELY | Whether to post immediately or not | false |\r\n| NOSTR_DRY_RUN | Whether to dry run or not | false |\r\n\r\nSample configuration:\r\n\r\n```bash\r\n# The list of Nostr relays to connect to.\r\nNOSTR_RELAYS=\"wss://relay.damus.io,wss://relay.primal.net\"\r\n# Nostr Private Key (starts with nsec)\r\nNOSTR_NSEC_KEY=\"nsec1...\"\r\n# Nostr Public Key (starts with npub)\r\nNOSTR_NPUB_KEY=\"npub1...\"\r\n# How often (in seconds) the bot should check for Nostr interactions (default: 2 minutes)\r\nNOSTR_POLL_INTERVAL=120\r\n# Whether to post immediately or not\r\nNOSTR_POST_IMMEDIATELY=false\r\n# Whether to dry run or not\r\nNOSTR_DRY_RUN=false\r\n```\r\n\r\nNote: The `nsec` configured key is used as the default signer when instantiating the `NDK` instance.\r\n\r\nNostr client must be set in the Character definition, example:\r\n```json\r\n{\r\n \"name\": \"goku\",\r\n \"clients\": [\"nostr\"],\r\n \"modelProvider\": \"anthropic\"\r\n \r\n}\r\n```\r\n\r\n## Changes summary\r\n\r\n- Add env variables for Nostr in `.env.example`.\r\n- Introduce [Nostr NDK](https://github.com/nostr-dev-kit/ndk) for Nostr client.\r\n- Implement Nostr client in Eliza (in `packages/client-nostr`).\r\n - Implement `NostrClient` class.\r\n - Implement `NostrInteractionManager` in `packages/client-nostr/src/interactions.ts`. For now it's a no op service.\r\n - Implement `NostrPostManager` in `packages/client-nostr/src/post.ts`.\r\n\r\n## Resources\r\n\r\n- [Nostr Github](https://github.com/nostr-protocol/nostr)\r\n- [What is Nostr ?](https://nostr.org/)\r\n- [Nostr online dev tools](https://nostrtool.com/)\r\n\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n- As anon\r\n\u00a0 - run `pnpm run dev --characters=\"characters/goku.character.json\"` \r\n\u00a0 - verify that Nostr notes are posted\r\n\r\n## Screenshots\r\n\r\nScreenshot of Nostr notes posted by the agent:\r\n\r\n![Screenshot 2024-12-17 at 18 34 11](https://github.com/user-attachments/assets/e0977daa-8f6d-4943-837e-d6426a575443)\r\n\r\nScreenshot of terminal of the running agent with logs:\r\n\r\n![Screenshot 2024-12-17 at 18 34 27](https://github.com/user-attachments/assets/a1ec8c99-b544-468e-94e2-d72f55521157)\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n## Discord username\r\n\r\nabdel.stark\r\n",
+ "number": 1229,
+ "title": "feat: add parse mode=Markdown, enhance telegram bot output",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T07:31:17Z",
+ "updated_at": "2024-12-19T07:50:08Z",
+ "body": "# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nIt added `parse_mode=\"Markdown\"` to support code suggestion in Telegram bot output\r\n\r\n## What kind of change is this?\r\n\r\nImprovements (misc. changes to existing features)\r\n\r\n## Why are we doing this? Any context or related work?\r\nIt would be nice to have Markdown support in bot output, this is heavily used in all LLMs output\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n## Screenshots\r\n\r\n### Before\r\n\r\n\r\n### After\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
"files": [
{
- "path": ".env.example",
- "additions": 14,
- "deletions": 0
- },
- {
- "path": "agent/package.json",
- "additions": 60,
- "deletions": 59
- },
- {
- "path": "agent/src/index.ts",
- "additions": 18,
- "deletions": 8
- },
- {
- "path": "packages/client-nostr/package.json",
- "additions": 18,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/actions.ts",
- "additions": 37,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/client.ts",
- "additions": 66,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/index.ts",
- "additions": 61,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/interactions.ts",
- "additions": 36,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/memory.ts",
- "additions": 36,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/post.ts",
- "additions": 188,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/prompts.ts",
- "additions": 88,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/types.ts",
- "additions": 9,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/utils.ts",
- "additions": 143,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/tsconfig.json",
- "additions": 12,
+ "path": "packages/client-telegram/src/messageManager.ts",
+ "additions": 1,
"deletions": 0
- },
+ }
+ ],
+ "reviews": [
{
- "path": "packages/client-nostr/tsup.config.ts",
- "additions": 20,
- "deletions": 0
- },
+ "author": "shakkernerd",
+ "state": "APPROVED",
+ "body": "This is a good one!"
+ }
+ ],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 1,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "luisalrp",
+ "score": 15,
+ "summary": "luisalrp is primarily working on fixing a visibility issue related to the GitHub image in the CI/CD pipeline configuration. This work involves changes in the .github directory, with one pull request successfully merged in the last 90 days.",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/31384138?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg1NDAsIm5iZiI6MTczNDY0NzM0MCwicGF0aCI6Ii91LzMxMzg0MTM4In0.XQRH_JmHfJ9SSP2y-iWTJbtF0mMQ96QBOO5JmXkIdDI&u=dd50e8885f7f8e2372d955b7fae623bba8be9ec2&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1243,
+ "title": "Fix visibility issue github image cicd",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T16:36:23Z",
+ "updated_at": "2024-12-19T22:02:34Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n[Publish an official Docker Image in ghcr. #876](https://github.com/ai16z/eliza/issues/876) and PR [feat : github image cicd #889](https://github.com/ai16z/eliza/pull/889) by @v1xingyue.\r\n\r\n# Risks\r\n\r\nLow. I do not see risks.\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\nUpdates image.yaml to add the task to change package visibility.\r\n",
+ "files": [
{
- "path": "packages/core/src/types.ts",
- "additions": 8,
- "deletions": 4
- },
+ "path": ".github/workflows/image.yaml",
+ "additions": 56,
+ "deletions": 47
+ }
+ ],
+ "reviews": [
{
- "path": "packages/plugin-node/src/services/awsS3.ts",
- "additions": 42,
- "deletions": 18
- },
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM! "
+ }
+ ],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 1,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "yjshi2015",
+ "score": 15,
+ "summary": "yjshi2015 is enhancing the terminology in the project's character.json file for clarity and inclusivity. This contribution focuses on updating the characters code area, with 1 pull request successfully merged in the last 90 days.",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/27291507?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkxNDAsIm5iZiI6MTczNDY0Nzk0MCwicGF0aCI6Ii91LzI3MjkxNTA3In0.xoqYjUq9ys7ZiKG80ewP_HiLtsLumNcsIRVYTO9lg4g&u=967c2c7ba1dddfaa2f14b55ef74ee6f4c0f2b5e6&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1237,
+ "title": "Update trump.character.json - Enhance terminology in the project for clarity and inclusivity",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T12:19:10Z",
+ "updated_at": "2024-12-19T22:25:39Z",
+ "body": "While reviewing the documentation, I noticed the term \u201cChina virus.\u201d To maintain professionalism and align with WHO naming standards, I suggest replacing it with terms like \u201cCOVID-19\u201d or \u201cSARS-CoV-2.\u201d This adjustment not only ensures accuracy but also promotes inclusivity and avoids potential misunderstandings.",
+ "files": [
{
- "path": "pnpm-lock.yaml",
- "additions": 146,
- "deletions": 0
+ "path": "characters/trump.character.json",
+ "additions": 1,
+ "deletions": 1
}
],
"reviews": [
{
- "author": "odilitime",
- "state": "COMMENTED",
- "body": ""
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM!"
}
],
"comments": [
{
- "author": "odilitime",
- "body": "S3 changes trip me up for a second but I think I get it now"
- },
- {
- "author": "AbdelStark",
- "body": "> S3 changes trip me up for a second but I think I get it now\r\n\r\nYeah this is not related to the Nostr client, but for some reasons there was an error because of a mismatch of interface for the S3 service, and I had to fix it."
+ "author": "lalalune",
+ "body": "> While reviewing the documentation, I noticed the term \u201cChina virus.\u201d To maintain professionalism and align with WHO naming standards, I suggest replacing it with terms like \u201cCOVID-19\u201d or \u201cSARS-CoV-2.\u201d This adjustment not only ensures accuracy but also promotes inclusivity and avoids potential misunderstandings.\r\n\r\nThe point of characters is to capture the person accurately, not the facts. Trump says silly offensive stuff, and we wanted to capture that. He would not say SARS-COVID-19. I disagree with about 99% of the stuff he says, and 99% of the stuff his character file says. That being said, I care about art, and not letting art be compromised by politics.\r\n\r\nWe love people all over the world, and personally I will be visiting China in a couple days to meet everyone. I don't believe that we should be against any group for their nationality. But we shouldn't kill the comedy and make our characters worse-- that's why OpenAI's models suck now. It's a slippery slope that will reduce bravery, integrity and quality."
}
]
}
@@ -1899,10 +675,10 @@
}
},
{
- "contributor": "chefron",
- "score": 5,
- "summary": "chefron is currently working on modifying Twitter interaction rules and creating a SoundCloud plugin. The main focus of their recent activity is in the documentation code areas.",
- "avatar_url": "https://avatars.githubusercontent.com/u/98501301?v=4",
+ "contributor": "danbednarski",
+ "score": 15,
+ "summary": "danbednarski is currently working on cleaning up scripts, with a recent pull request focused on this chore. This is the only significant activity in the last 90 days, with one pull request successfully merged.",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/183874220?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0ODAsIm5iZiI6MTczNDY0NzI4MCwicGF0aCI6Ii91LzE4Mzg3NDIyMCJ9.K5HcKBhqOKkEAALB4r65mm2QHcjXkgOuJdgIUPTqg3U&v=4",
"activity": {
"code": {
"total_commits": 0,
@@ -1910,513 +686,526 @@
"commits": [],
"pull_requests": [
{
- "number": 1215,
- "title": "modify Twitter interaction rules, create SoundCloud plugin",
- "state": "CLOSED",
- "merged": false,
- "created_at": "2024-12-18T22:13:34Z",
- "updated_at": "2024-12-18T22:14:37Z",
- "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "number": 1218,
+ "title": "chore: clean up scripts",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-18T23:15:48Z",
+ "updated_at": "2024-12-19T06:56:57Z",
+ "body": "I'm very new to this project so bear with me - I stumbled across these three files:\r\n\r\n* scripts/gettweets-copy.mjs\r\n* scripts/gettweets.mjs\r\n* scripts/tweetextractor.mjs\r\n\r\nAll appear to do the same thing. The first one uses environmental variables, the second two actually have hardcoded credentials for a real Twitter account.\r\n\r\nShould we simply delete the latter two and scrub the credentials from the git history? Or is there some reason that things are like this?\r\n\r\nThanks for your patience, just getting the hang of things.",
"files": [
{
- "path": "docs/api/classes/AgentRuntime.md",
- "additions": 41,
- "deletions": 41
- },
- {
- "path": "docs/api/classes/CacheManager.md",
- "additions": 6,
- "deletions": 6
- },
- {
- "path": "docs/api/classes/DatabaseAdapter.md",
- "additions": 42,
- "deletions": 42
- },
- {
- "path": "docs/api/classes/DbCacheAdapter.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/classes/FsCacheAdapter.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/classes/MemoryCacheAdapter.md",
- "additions": 6,
- "deletions": 6
- },
- {
- "path": "docs/api/classes/MemoryManager.md",
- "additions": 14,
- "deletions": 14
- },
- {
- "path": "docs/api/classes/Service.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/enumerations/Clients.md",
- "additions": 15,
- "deletions": 5
- },
- {
- "path": "docs/api/enumerations/GoalStatus.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/enumerations/LoggingLevel.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/enumerations/ModelClass.md",
- "additions": 6,
- "deletions": 6
- },
- {
- "path": "docs/api/enumerations/ModelProviderName.md",
- "additions": 20,
- "deletions": 20
- },
- {
- "path": "docs/api/enumerations/ServiceType.md",
- "additions": 9,
- "deletions": 9
- },
- {
- "path": "docs/api/functions/addHeader.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/composeActionExamples.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/composeContext.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/configureSettings.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/createGoal.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/createRelationship.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/embed.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/findNearestEnvFile.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatActionNames.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatActions.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatActors.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatEvaluatorExampleDescriptions.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatEvaluatorExamples.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatEvaluatorNames.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatEvaluators.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatGoalsAsString.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatMessages.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatPosts.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatRelationships.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatTimestamp.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateCaption.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateImage.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateMessageResponse.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateObject.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateObjectArray.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateObjectV2.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateShouldRespond.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateText.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateTextArray.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateTrueOrFalse.md",
- "additions": 2,
- "deletions": 2
+ "path": "scripts/gettweets-copy.mjs",
+ "additions": 0,
+ "deletions": 76
},
{
- "path": "docs/api/functions/generateWebSearch.md",
- "additions": 2,
- "deletions": 2
+ "path": "scripts/gettweets.mjs",
+ "additions": 16,
+ "deletions": 32
},
{
- "path": "docs/api/functions/getActorDetails.md",
- "additions": 2,
- "deletions": 2
- },
+ "path": "scripts/tweetextractor.mjs",
+ "additions": 0,
+ "deletions": 131
+ }
+ ],
+ "reviews": [
{
- "path": "docs/api/functions/getEmbeddingConfig.md",
- "additions": 2,
- "deletions": 2
- },
+ "author": "shakkernerd",
+ "state": "APPROVED",
+ "body": ""
+ }
+ ],
+ "comments": [
{
- "path": "docs/api/functions/getEmbeddingType.md",
- "additions": 2,
- "deletions": 2
- },
+ "author": "odilitime",
+ "body": "I notified the author of original PR, so he's aware of what happened"
+ }
+ ]
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 1,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "azurwastaken",
+ "score": 14,
+ "summary": "azurwastaken is currently updating the README file to include translations in French, Spanish, and Italian languages. This work involves creating a pull request that has been successfully merged into the main repository.",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/30268138?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg2MDAsIm5iZiI6MTczNDY0NzQwMCwicGF0aCI6Ii91LzMwMjY4MTM4In0.0TrV_Q5n3Vx_Ly-e8SqcXksrXPMO2MatiDEMRubGAw4&u=9f22ac121f4dbfc0e56a0f165dfc306d419ec514&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1236,
+ "title": "Update README for french, spanish and italian language",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T11:24:39Z",
+ "updated_at": "2024-12-19T21:55:23Z",
+ "body": "# Relates to: N/A\r\n\r\n# Risks\r\n\r\nNo risk\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nUpdate readme FR/ES/IT for typo, spelling, etc \r\n\r\n## What kind of change is this?\r\n\r\nUpdates (new versions of included code)\r\n\r\n## Why are we doing this? Any context or related work?\r\n--> Incorrect use of language \r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n## Discord username\r\n\r\n--> azurwastaken\r\n",
+ "files": [
{
- "path": "docs/api/functions/getEmbeddingZeroVector.md",
- "additions": 2,
- "deletions": 2
+ "path": "README_ES.md",
+ "additions": 3,
+ "deletions": 3
},
{
- "path": "docs/api/functions/getEndpoint.md",
- "additions": 2,
- "deletions": 2
+ "path": "README_FR.md",
+ "additions": 6,
+ "deletions": 6
},
{
- "path": "docs/api/functions/getEnvVariable.md",
- "additions": 2,
- "deletions": 2
- },
+ "path": "README_IT.md",
+ "additions": 7,
+ "deletions": 7
+ }
+ ],
+ "reviews": [
{
- "path": "docs/api/functions/getGoals.md",
- "additions": 2,
- "deletions": 2
- },
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM !"
+ }
+ ],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 1,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "agyn-ub",
+ "score": 13,
+ "summary": "agyn-ub is currently addressing an issue related to errors displayed during the `pnpm install` process. The focus of their recent activity is on resolving bugs reported in the project.",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/142351559?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5MDAsIm5iZiI6MTczNDY0NzcwMCwicGF0aCI6Ii91LzE0MjM1MTU1OSJ9.SUWFDdwGMDAg49J9c0MRqPEYTaL1rH7ozBauxVHxoMg&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 0,
+ "commits": [],
+ "pull_requests": []
+ },
+ "issues": {
+ "total_opened": 1,
+ "opened": [
+ {
+ "number": 1234,
+ "title": "pnpm install shows errors",
+ "state": "OPEN",
+ "created_at": "2024-12-19T09:57:03Z",
+ "updated_at": "2024-12-19T14:33:05Z",
+ "body": "I did everything as in tutorial in official documentation. And I run pnpm install \r\n\u2502 node-pre-gyp info it worked if it ends with ok\r\n\u2502 node-pre-gyp info using node-pre-gyp@0.4.5\r\n\u2502 node-pre-gyp info using node@23.3.0 | win32 | x64\r\n\u2502 (node:14056) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead. \r\n\u2502 (Use `node --trace-deprecation ...` to show where the warning was created)\r\n\u2502 node-pre-gyp info check checked for \"C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\@discordjs\\opus\\prebu\u2026 \r\n\u2502 node-pre-gyp http GET https://github.com/discordjs/opus/releases/download/v0.9.0/opus-v0.9.0-node-v131-napi-v3-win32-x64-un\u2026 \r\n\u2502 node-pre-gyp ERR! install response status 404 Not Found on https://github.com/discordjs/opus/releases/download/v0.9.0/opus-\u2026 \r\n\u2502 node-pre-gyp WARN Pre-built binaries not installable for @discordjs/opus@0.9.0 and node@23.3.0 (node-v131 ABI, unknown) (fa\u2026 \r\n\u2502 node-pre-gyp WARN Hit error response status 404 Not Found on https://github.com/discordjs/opus/releases/download/v0.9.0/opu\u2026 \r\n\u2502 gyp info it worked if it ends with ok\r\n\u2502 gyp info using node-gyp@10.3.1\r\n\u2502 gyp info using node@23.3.0 | win32 | x64\r\n\u2502 gyp info ok\r\n\u2502 gyp info it worked if it ends with ok\r\n\u2502 gyp info using node-gyp@10.3.1\r\n\u2502 gyp info using node@23.3.0 | win32 | x64\r\n\u2502 gyp info find Python using Python version 3.13.1 found at \"C:\\Users\\agynb\\AppData\\Local\\Programs\\Python\\Python313\\python.ex\u2026 \r\n\u2502 gyp ERR! find VS\r\n\u2502 gyp ERR! find VS msvs_version not set from command line or npm config\r\n\u2502 gyp ERR! find VS VCINSTALLDIR not set, not running in VS Command Prompt\r\n\u2502 gyp ERR! find VS could not use PowerShell to find Visual Studio 2017 or newer, try re-running with '--loglevel silly' for m\u2026 \r\n\u2502 gyp ERR! find VS\r\n\u2502 gyp ERR! find VS Failure details: undefined\r\n\u2502 gyp ERR! find VS checking VS2022 (17.11.35327.3) found at:\r\n\u2502 gyp ERR! find VS \"C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\"\r\n\u2502 gyp ERR! find VS - found \"Visual Studio C++ core features\"\r\n\u2502 gyp ERR! find VS - missing any VC++ toolset\r\n\u2502 gyp ERR! find VS could not find a version of Visual Studio 2017 or newer to use\r\n\u2502 gyp ERR! find VS not looking for VS2017 as it is only supported up to Node.js 21\r\n\u2502 gyp ERR! find VS not looking for VS2017 as it is only supported up to Node.js 21\r\n\u2502 gyp ERR! find VS not looking for VS2017 as it is only supported up to Node.js 21\r\n\u2502 gyp ERR! find VS not looking for VS2015 as it is only supported up to Node.js 18\r\n\u2502 gyp ERR! find VS not looking for VS2013 as it is only supported up to Node.js 8\r\n\u2502 gyp ERR! find VS\r\n\u2502 gyp ERR! find VS **************************************************************\r\n\u2502 gyp ERR! find VS You need to install the latest version of Visual Studio\r\n\u2502 gyp ERR! find VS including the \"Desktop development with C++\" workload.\r\n\u2502 gyp ERR! find VS For more information consult the documentation at:\r\n\u2502 gyp ERR! find VS https://github.com/nodejs/node-gyp#on-windows\r\n\u2502 gyp ERR! find VS **************************************************************\r\n\u2502 gyp ERR! find VS\r\n\u2502 gyp ERR! configure error\r\n\u2502 gyp ERR! stack Error: Could not find any Visual Studio installation to use\r\n\u2502 gyp ERR! stack at VisualStudioFinder.fail (C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\node-gyp\\lib\\fi\u2026 \r\n\u2502 gyp ERR! stack at VisualStudioFinder.findVisualStudio (C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\nod\u2026 \r\n\u2502 gyp ERR! stack at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\r\n\u2502 gyp ERR! stack at async createBuildDir (C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\node-gyp\\lib\\confi\u2026 \r\n\u2502 gyp ERR! stack at async run (C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\node-gyp\\bin\\node-gyp.js:81:1\u2026 \r\n\u2502 gyp ERR! System Windows_NT 10.0.26100\r\n\u2502 gyp ERR! command \"C:\\\\Program Files\\\\nodejs\\\\node.exe\" \"C:\\\\Users\\\\agynb\\\\OneDrive\\\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\\\Eliza\\\\f1\\\\eliza\\\\node_mo\u2026 \r\n\u2502 gyp ERR! cwd C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\@discordjs\\opus\r\n\u2502 gyp ERR! node -v v23.3.0\r\n\u2502 gyp ERR! node-gyp -v v10.3.1\r\n\u2502 gyp ERR! not ok\r\n\u2502 node-pre-gyp ERR! build error\r\n\u2502 node-pre-gyp ERR! stack Error: Failed to execute 'C:\\Program Files\\nodejs\\node.exe C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eli\u2026 \r\n\u2502 node-pre-gyp ERR! stack at ChildProcess. (C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\@\u2026 \r\n\u2502 node-pre-gyp ERR! stack at ChildProcess.emit (node:events:513:28)\r\n\u2502 node-pre-gyp ERR! stack at maybeClose (node:internal/child_process:1101:16)\r\nnode_modules/canvas: Running install script, failed in 10.7s (skipped as optional)process:305:5)\r\n\u2502 node-pre-gyp ERR! System Windows_NT 10.0.26100\r\n\u2502 node-pre-gyp ERR! command \"C:\\\\Program Files\\\\nodejs\\\\node.exe\" \"C:\\\\Users\\\\agynb\\\\OneDrive\\\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\\\Eliza\\\\f1\\\\eliza\u2026 \r\n\u2502 node-pre-gyp ERR! cwd C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\@discordjs\\opus\r\n\u2502 node-pre-gyp ERR! node -v v23.3.0\r\n\u2502 node-pre-gyp ERR! node-pre-gyp -v v0.4.5\r\n\u2502 node-pre-gyp ERR! not ok\r\n\u2502 Failed to execute 'C:\\Program Files\\nodejs\\node.exe C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\node-g\u2026 \r\n\u2514\u2500 Failed in 10.4s at C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\@discordjs\\opus",
+ "labels": [
{
- "path": "docs/api/functions/getModel.md",
- "additions": 2,
- "deletions": 2
- },
+ "name": "bug",
+ "color": "d73a4a",
+ "description": "Something isn't working"
+ }
+ ],
+ "comments": [
{
- "path": "docs/api/functions/getProviders.md",
- "additions": 2,
- "deletions": 2
+ "author": "giorgosn",
+ "body": "are you using WSL 2?"
},
{
- "path": "docs/api/functions/getRelationship.md",
- "additions": 2,
- "deletions": 2
+ "author": "digitalsimboja",
+ "body": " ~/dev/eliza #v0.1.6-alpha.4 pnpm install \u2714 23.3.0 \u2b22 11:00:24 AM \r\nScope: all 46 workspace projects\r\nLockfile is up to date, resolution step is skipped\r\n\u2009ERR_PNPM_UNSUPPORTED_ENGINE\u2009 Unsupported environment (bad pnpm and/or Node.js version)\r\n\r\nYour Node version is incompatible with \"@lens-protocol/client@2.2.0(@lens-protocol/metadata@1.2.0)(ethers@6.13.4)(react@18.3.1)\".\r\n\r\nExpected version: >=18 <21\r\nGot: v23.3.0\r\n\r\nThis is happening because the package's manifest has an engines.node field specified.\r\nTo fix this issue, install the required Node version.\r\n ~/dev/eliza #v0.1.6-alpha.4 \r\n \r\n I get this issue as well"
},
{
- "path": "docs/api/functions/getRelationships.md",
- "additions": 2,
- "deletions": 2
+ "author": "agyn-ub",
+ "body": "> are you using WSL 2?\r\n\r\nno. I am in linux pop_os"
},
{
- "path": "docs/api/functions/handleProvider.md",
- "additions": 2,
- "deletions": 2
+ "author": "agyn-ub",
+ "body": "I run pnpm install on lunix the same error\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/pitch.o\r\n\u2502 rm -f Release/obj.target/deps/opus.a Release/obj.target/deps/opus.a.ar-file-list; mkdir -p `dirname Release/obj.target/deps/opus.a`\r\n\u2502 ar crs Release/obj.target/deps/opus.a @Release/obj.target/deps/opus.a.ar-file-list\r\n\u2502 COPY Release/opus.a\r\n\u2502 CXX(target) Release/obj.target/opus/src/node-opus.o\r\n\u2502 : warning: ISO C++11 requires whitespace after the macro name\r\n\u2502 ../src/node-opus.cc:1:10: fatal error: napi.h: No such file or directory\r\n\u2502 1 | #include \"napi.h\"\r\n\u2502 | ^~~~~~~~\r\n\u2502 compilation terminated.\r\n\u2502 make: *** [opus.target.mk:157: Release/obj.target/opus/src/node-opus.o] Error 1\r\n\u2502 make: Leaving directory '/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus/build'\r\n\u2502 gyp ERR! build error \r\n\u2502 gyp ERR! stack Error: `make` failed with exit code: 2\r\n\u2502 gyp ERR! stack at ChildProcess. (/home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/lib/build.js:216:23)\r\n\u2502 gyp ERR! System Linux 6.9.3-76060903-generic\r\n\u2502 gyp ERR! command \"/home/agyn/.nvm/versions/node/v23.3.0/bin/node\" \"/home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js\" \"build\" \"--fallback-to-build\" \"--modul\u2026\r\n\u2502 gyp ERR! cwd /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\n\u2502 gyp ERR! node -v v23.3.0\r\n\u2502 gyp ERR! node-gyp -v v10.3.1\r\n\u2502 gyp ERR! not ok \r\n\u2502 node-pre-gyp ERR! build error \r\n\u2502 node-pre-gyp ERR! stack Error: Failed to execute '/home/agyn/.nvm/versions/node/v23.3.0/bin/node /home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js build --f\u2026\r\n\u2502 node-pre-gyp ERR! stack at ChildProcess. (/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/node-pre-gyp/lib/util/compile.js:85:20)\r\n\u2502 node-pre-gyp ERR! stack at ChildProcess.emit (node:events:513:28)\r\n\u2502 node-pre-gyp ERR! stack at maybeClose (node:internal/child_process:1101:16)\r\n\u2502 node-pre-gyp ERR! stack at ChildProcess._handle.onexit (node:internal/child_process:305:5)\r\n\u2502 node-pre-gyp ERR! System Linux 6.9.3-76060903-generic\r\n\u2502 node-pre-gyp ERR! command \"/home/agyn/.nvm/versions/node/v23.3.0/bin/node\" \"/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus/node_modules/.bin/node-pre-gyp\" \"instal\u2026\r\n\u2502 node-pre-gyp ERR! cwd /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\n\u2502 node-pre-gyp ERR! node -v v23.3.0\r\n\u2502 node-pre-gyp ERR! node-pre-gyp -v v0.4.5\r\n\u2502 node-pre-gyp ERR! not ok \r\n\u2502 Failed to execute '/home/agyn/.nvm/versions/node/v23.3.0/bin/node /home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/home\u2026\r\n\u2514\u2500 Failed in 29.7s at /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\n\u2009ELIFECYCLE\u2009 Command failed with exit code 1."
},
{
- "path": "docs/api/functions/hasEnvVariable.md",
- "additions": 2,
- "deletions": 2
+ "author": "agyn-ub",
+ "body": "> ~/dev/eliza #v0.1.6-alpha.4 pnpm install \u2714 23.3.0 \u2b22 11:00:24 AM Scope: all 46 workspace projects Lockfile is up to date, resolution step is skipped \u2009ERR_PNPM_UNSUPPORTED_ENGINE\u2009 Unsupported environment (bad pnpm and/or Node.js version)\r\n> \r\n> Your Node version is incompatible with \"@lens-protocol/client@2.2.0(@lens-protocol/metadata@1.2.0)(ethers@6.13.4)(react@18.3.1)\".\r\n> \r\n> Expected version: >=18 <21 Got: v23.3.0\r\n> \r\n> This is happening because the package's manifest has an engines.node field specified. To fix this issue, install the required Node version. ~/dev/eliza #v0.1.6-alpha.4\r\n> \r\n> I get this issue as well\r\n\r\nthe same error\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/silk/enc_API.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/silk/biquad_alt.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/silk/quant_LTP_gains.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/silk/resampler_private_down_FIR.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/silk/ana_filt_bank_1.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/silk/stereo_MS_to_LR.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/silk/decode_indices.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/rate.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/entdec.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/modes.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/celt_lpc.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/laplace.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/cwrs.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/celt.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/entcode.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/celt_decoder.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/celt_encoder.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/mdct.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/quant_bands.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/vq.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/bands.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/kiss_fft.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/entenc.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/mathops.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/pitch.o\r\n\u2502 rm -f Release/obj.target/deps/opus.a Release/obj.target/deps/opus.a.ar-file-list; mkdir -p `dirname Release/obj.target/deps/opus.a`\r\n\u2502 ar crs Release/obj.target/deps/opus.a @Release/obj.target/deps/opus.a.ar-file-list\r\n\u2502 COPY Release/opus.a\r\n\u2502 CXX(target) Release/obj.target/opus/src/node-opus.o\r\n\u2502 : warning: ISO C++11 requires whitespace after the macro name\r\n\u2502 ../src/node-opus.cc:1:10: fatal error: napi.h: No such file or directory\r\n\u2502 1 | #include \"napi.h\"\r\n\u2502 | ^~~~~~~~\r\n\u2502 compilation terminated.\r\n\u2502 make: *** [opus.target.mk:155: Release/obj.target/opus/src/node-opus.o] Error 1\r\n\u2502 make: Leaving directory '/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus/build'\r\n\u2502 gyp ERR! build error \r\n\u2502 gyp ERR! stack Error: `make` failed with exit code: 2\r\n\u2502 gyp ERR! stack at ChildProcess. (/home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/lib/build.js:216:23)\r\n\u2502 gyp ERR! System Linux 6.9.3-76060903-generic\r\n\u2502 gyp ERR! command \"/home/agyn/.nvm/versions/node/v20.18.1/bin/node\" \"/home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js\" \"build\" \"--fallback-to-build\" \"--modu\u2026\r\n\u2502 gyp ERR! cwd /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\n\u2502 gyp ERR! node -v v20.18.1\r\n\u2502 gyp ERR! node-gyp -v v10.3.1\r\n\u2502 gyp ERR! not ok \r\n\u2502 node-pre-gyp ERR! build error \r\n\u2502 node-pre-gyp ERR! stack Error: Failed to execute '/home/agyn/.nvm/versions/node/v20.18.1/bin/node /home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js build --\u2026\r\n\u2502 node-pre-gyp ERR! stack at ChildProcess. (/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/node-pre-gyp/lib/util/compile.js:85:20)\r\n\u2502 node-pre-gyp ERR! stack at ChildProcess.emit (node:events:518:28)\r\n\u2502 node-pre-gyp ERR! stack at maybeClose (node:internal/child_process:1104:16)\r\n\u2502 node-pre-gyp ERR! stack at ChildProcess._handle.onexit (node:internal/child_process:304:5)\r\n\u2502 node-pre-gyp ERR! System Linux 6.9.3-76060903-generic\r\n\u2502 node-pre-gyp ERR! command \"/home/agyn/.nvm/versions/node/v20.18.1/bin/node\" \"/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus/node_modules/.bin/node-pre-gyp\" \"insta\u2026\r\n\u2502 node-pre-gyp ERR! cwd /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\n\u2502 node-pre-gyp ERR! node -v v20.18.1\r\n\u2502 node-pre-gyp ERR! node-pre-gyp -v v0.4.5\r\n\u2502 node-pre-gyp ERR! not ok \r\n\u2502 Failed to execute '/home/agyn/.nvm/versions/node/v20.18.1/bin/node /home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/hom\u2026\r\n\u2514\u2500 Failed in 38.1s at /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\nnode_modules/canvas: Running install script, done in 21.5s\r\n\u2009ELIFECYCLE\u2009 Command failed with exit code 1."
},
{
- "path": "docs/api/functions/loadEnvConfig.md",
- "additions": 2,
- "deletions": 2
+ "author": "agyn-ub",
+ "body": "> ~/dev/eliza #v0.1.6-alpha.4 pnpm install \u2714 23.3.0 \u2b22 11:00:24 AM Scope: all 46 workspace projects Lockfile is up to date, resolution step is skipped \u2009ERR_PNPM_UNSUPPORTED_ENGINE\u2009 Unsupported environment (bad pnpm and/or Node.js version)\r\n> \r\n> Your Node version is incompatible with \"@lens-protocol/client@2.2.0(@lens-protocol/metadata@1.2.0)(ethers@6.13.4)(react@18.3.1)\".\r\n> \r\n> Expected version: >=18 <21 Got: v23.3.0\r\n> \r\n> This is happening because the package's manifest has an engines.node field specified. To fix this issue, install the required Node version. ~/dev/eliza #v0.1.6-alpha.4\r\n> \r\n> I get this issue as well\r\n\r\nthank you so much my friend, I have downgraded node version to 18 is command executed ok. It is confusing because in the documentation were written that it must be node version 23+ "
},
{
- "path": "docs/api/functions/parseBooleanFromText.md",
- "additions": 2,
- "deletions": 2
- },
+ "author": "digitalsimboja",
+ "body": "> > ~/dev/eliza #v0.1.6-alpha.4 pnpm install \u2714 23.3.0 \u2b22 11:00:24 AM Scope: all 46 workspace projects Lockfile is up to date, resolution step is skipped \u2009ERR_PNPM_UNSUPPORTED_ENGINE\u2009 Unsupported environment (bad pnpm and/or Node.js version)\r\n> > Your Node version is incompatible with \"@lens-protocol/client@2.2.0(@lens-protocol/metadata@1.2.0)(ethers@6.13.4)(react@18.3.1)\".\r\n> > Expected version: >=18 <21 Got: v23.3.0\r\n> > This is happening because the package's manifest has an engines.node field specified. To fix this issue, install the required Node version. ~/dev/eliza #v0.1.6-alpha.4\r\n> > I get this issue as well\r\n> \r\n> thank you so much my friend, I have downgraded node version to 18 is command executed ok. It is confusing because in the documentation were written that it must be node version 23+\r\n\r\nI have a hell of dependencies issues. How did you downgrade yours to version 18 without conflicting with other projects? Did you change the node engine specifications from 23+ to 18?"
+ }
+ ]
+ }
+ ]
+ },
+ "engagement": {
+ "total_comments": 7,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "tungpun",
+ "score": 10,
+ "summary": "tungpun is currently working on adding configurations to whitelist Telegram users in the packages code area. They have submitted 2 pull requests for this task, but none have been merged yet.",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/5058370?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg3ODAsIm5iZiI6MTczNDY0NzU4MCwicGF0aCI6Ii91LzUwNTgzNzAifQ.YGTaug1L0oc7VUfJB_zg2PibAVY09Y_PY48e4fv5qaU&u=59cb956de322867be56c0abee49ab3f28f819e2f&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 2,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1231,
+ "title": "chore: added config to whitelist the telegram users",
+ "state": "OPEN",
+ "merged": false,
+ "created_at": "2024-12-19T08:00:24Z",
+ "updated_at": "2024-12-19T15:43:32Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nThis PR adds functionality to allow developers to whitelist Telegram users, granting them access to the bot.\r\n\r\n## What kind of change is this?\r\nFeatures (non-breaking change which adds functionality)\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
{
- "path": "docs/api/functions/parseJSONObjectFromText.md",
- "additions": 2,
- "deletions": 2
+ "path": ".env.example",
+ "additions": 1,
+ "deletions": 0
},
{
- "path": "docs/api/functions/parseJsonArrayFromText.md",
- "additions": 2,
- "deletions": 2
+ "path": ".gitignore",
+ "additions": 1,
+ "deletions": 0
},
{
- "path": "docs/api/functions/parseShouldRespondFromText.md",
- "additions": 2,
- "deletions": 2
- },
+ "path": "packages/client-telegram/src/messageManager.ts",
+ "additions": 9,
+ "deletions": 1
+ }
+ ],
+ "reviews": [],
+ "comments": [
{
- "path": "docs/api/functions/splitChunks.md",
- "additions": 2,
- "deletions": 2
- },
+ "author": "azep-ninja",
+ "body": "Like this enhancement. I recently added one to whitelist Telegram groups.\r\n\r\nHonestly think this might make more sense within the characters client config, similar to what I added.\r\n\r\nYou'll need to modify the types for the character file, but keeps the ENV less cluttered.\r\n\r\nReference: https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts\r\n\r\n![image](https://github.com/user-attachments/assets/665edc1f-cab5-48de-adc2-e59e1629bdde)\r\n\r\nAnd you can see how that was/is used in the messageManager.ts file for reference."
+ }
+ ]
+ },
+ {
+ "number": 1230,
+ "title": "chore: added config for to whitelist telegram user",
+ "state": "CLOSED",
+ "merged": false,
+ "created_at": "2024-12-19T07:54:59Z",
+ "updated_at": "2024-12-19T07:58:12Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nThis PR adds functionality to allow developers to whitelist Telegram users, granting them access to the bot.\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
{
- "path": "docs/api/functions/stringToUuid.md",
- "additions": 2,
- "deletions": 2
+ "path": ".env.example",
+ "additions": 1,
+ "deletions": 0
},
{
- "path": "docs/api/functions/trimTokens.md",
- "additions": 2,
- "deletions": 2
+ "path": ".gitignore",
+ "additions": 1,
+ "deletions": 0
},
{
- "path": "docs/api/functions/updateGoal.md",
- "additions": 2,
- "deletions": 2
- },
+ "path": "packages/client-telegram/src/messageManager.ts",
+ "additions": 12,
+ "deletions": 1
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "madjin",
+ "score": 10,
+ "summary": "madjin is currently working on implementing an Auto-Documentation Synchronization Bot and keeping README translations synchronized. They are also reviewing TODO notes and developing the Eliza Code Assistant default characterfile. Their recent work spans across documentation, automation, and enhancements.",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/32600939?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91LzMyNjAwOTM5In0.7vW8aT743AJl04-9zh_3YYJMLQj9qo88pIJX0PCwUco&u=cdcf89f44c7a50906c7a80d889efa85023af2049&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 0,
+ "commits": [],
+ "pull_requests": []
+ },
+ "issues": {
+ "total_opened": 4,
+ "opened": [
+ {
+ "number": 1224,
+ "title": "feat: Auto-Documentation Synchronization Bot",
+ "state": "OPEN",
+ "created_at": "2024-12-19T02:03:53Z",
+ "updated_at": "2024-12-19T02:03:53Z",
+ "body": "## **Overview**\r\nCreate an AI assistant to maintain documentation consistency and generate documentation from code.\r\n\r\n## **Current Situation**\r\n\r\nDocumentation gaps often go unnoticed, leading to challenges during onboarding, feature development, and integrations. Outdated information can result in inefficiencies, with developers spending unnecessary time answering questions that could otherwise be handled by AI if up-to-date documentation were available\r\n\r\n## **Proposed Solution**\r\n\r\nFirst finish this issue: https://github.com/ai16z/eliza/issues/1110\r\nNext document plugins so that we have a quality reference: https://github.com/ai16z/eliza/issues/1200\r\n\r\nThen build a documentation bot that:\r\n1. Tracks and reports TODO comments in code (automate this flow https://github.com/ai16z/eliza/issues/1223)\r\n2. Tracks and reports missing plugin docs: (automate this https://github.com/ai16z/eliza/issues/1200)\r\n3. Tracks commits / issues / PRs and flags docs pages that might need updating\r\n4. Suggest documentation updates of those pages\r\n\r\n## **Technical Details**\r\n\r\n\r\n",
+ "labels": [
{
- "path": "docs/api/functions/validateCharacterConfig.md",
- "additions": 2,
- "deletions": 2
+ "name": "documentation",
+ "color": "0075ca",
+ "description": "Improvements or additions to documentation"
},
{
- "path": "docs/api/functions/validateEnv.md",
- "additions": 2,
- "deletions": 2
+ "name": "enhancement",
+ "color": "a2eeef",
+ "description": "New feature or request"
},
{
- "path": "docs/api/index.md",
- "additions": 1,
- "deletions": 1
- },
+ "name": "automation",
+ "color": "FC49CF",
+ "description": ""
+ }
+ ],
+ "comments": []
+ },
+ {
+ "number": 1223,
+ "title": "chore: Review TODO notes",
+ "state": "OPEN",
+ "created_at": "2024-12-19T01:50:45Z",
+ "updated_at": "2024-12-19T01:51:37Z",
+ "body": "**Describe the bug**\r\n\r\nSee what the TODO notes are about, update their status or document as an issue if needed\r\n\r\n- [ ] agent/src/index.ts\r\n- [ ] packages/core/src/models.ts\r\n- [ ] packages/core/src/runtime.ts\r\n- [ ] packages/core/src/environment.ts\r\n- [ ] packages/core/src/memory.ts\r\n- [ ] packages/plugin-starknet/src/providers/trustScoreProvider.ts\r\n- [ ] packages/plugin-starknet/src/providers/token.ts\r\n- [ ] packages/plugin-starknet/src/actions/takeOrder.ts\r\n- [ ] packages/plugin-starknet/src/actions/transfer.ts\r\n- [ ] packages/plugin-starknet/readme.md\r\n- [ ] packages/adapter-sqlite/src/sqliteTables.ts\r\n- [ ] packages/adapter-sqljs/src/index.ts\r\n- [ ] packages/adapter-sqljs/src/sqliteTables.ts\r\n- [ ] packages/plugin-node/src/services/transcription.ts\r\n- [ ] packages/plugin-node/src/services/browser.ts\r\n- [ ] packages/client-twitter/src/search.ts\r\n- [ ] packages/client-twitter/src/base.ts\r\n- [ ] packages/plugin-solana/src/evaluators/trust.ts\r\n- [ ] packages/plugin-solana/src/providers/trustScoreProvider.ts\r\n- [ ] packages/plugin-solana/src/actions/swap.ts\r\n- [ ] packages/plugin-solana/src/actions/takeOrder.ts\r\n- [ ] packages/plugin-evm/src/actions/bridge.ts\r\n- [ ] packages/plugin-evm/src/actions/swap.ts\r\n- [ ] packages/plugin-flow/src/types/fcl.d.ts\r\n- [ ] packages/plugin-flow/src/actions/transfer.ts\r\n- [ ] packages/plugin-nft-generation/src/index.ts\r\n- [ ] packages/plugin-image-generation/src/index.ts\r\n- [ ] packages/client-farcaster/src/client.ts\r\n- [ ] packages/adapter-supabase/src/index.ts\r\n- [ ] packages/client-lens/src/actions.ts\r\n- [ ] packages/client-lens/src/client.ts\r\n- [ ] packages/client-lens/src/interactions.ts\r\n- [ ] packages/client-discord/src/utils.ts\r\n- [ ] packages/client-discord/src/attachments.ts\r\n- [ ] packages/client-discord/src/messages.ts\r\n- [ ] packages/client-discord/src/actions/chat_with_attachments.ts\r\n- [ ] packages/client-discord/src/actions/summarize_conversation.ts\r\n- [ ] packages/client-slack/src/events.ts\r\n\r\n\r\n**To Reproduce**\r\n\r\nTo find the files to fix:\r\n\r\n`grep -ro \"TODO\" --exclude-dir=node_modules --exclude-dir=dist | uniq` \r\n\r\nSome examples `grep -roP \"TODO\\s*.*\" --exclude-dir=node_modules`\r\n```\r\nagent/src/index.ts:TODO: Add Slack client to the list\r\npackages/core/dist/index.js:TODO: check\r\npackages/core/dist/index.js:TODO: ?download=true\r\npackages/client-discord/src/utils.ts:TODO: clean this up\r\npackages/client-discord/src/attachments.ts:TODO: clean this up\r\npackages/client-discord/src/messages.ts:TODO: This is throwing an error but seems to work?\r\npackages/client-discord/src/messages.ts:TODO: Move to attachments manager\r\npackages/client-discord/src/actions/chat_with_attachments.ts:TODO: make this dynamic and generic\r\npackages/client-discord/src/actions/summarize_conversation.ts:TODO: parse start and end into timestamps\r\npackages/client-slack/src/events.ts:TODO: Implement reaction handling\r\n```\r\n\r\n**Expected behavior**\r\n\r\ngithub issue or cleaning up the code\r\n\r\n**Screenshots**\r\n\r\n![image](https://github.com/user-attachments/assets/ed48b42c-7701-4432-a284-5e8143f93227)\r\n\r\n\r\n**Additional context**\r\n\r\n\r\n",
+ "labels": [
{
- "path": "docs/api/interfaces/Account.md",
- "additions": 7,
- "deletions": 7
+ "name": "bug",
+ "color": "d73a4a",
+ "description": "Something isn't working"
},
{
- "path": "docs/api/interfaces/Action.md",
- "additions": 7,
- "deletions": 7
+ "name": "documentation",
+ "color": "0075ca",
+ "description": "Improvements or additions to documentation"
},
{
- "path": "docs/api/interfaces/ActionExample.md",
- "additions": 3,
- "deletions": 3
- },
+ "name": "good first issue",
+ "color": "7057ff",
+ "description": "Good for newcomers"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "number": 1222,
+ "title": "chore: Keeps README translations synchronized",
+ "state": "OPEN",
+ "created_at": "2024-12-19T00:33:42Z",
+ "updated_at": "2024-12-19T00:33:43Z",
+ "body": "**Is your feature request related to a problem? Please describe.**\r\n\r\nThere are now a lot of language translated READMEs in the repo. If we implement a change in one, we have to manually cascade the changes in order.\r\n\r\n**Describe the solution you'd like**\r\n\r\nScript that uses AI (ollama / openai) that cascades changes when the english README.md file changes. Translates / updates all the other README files. Github CI would be a nice touch too\r\n\r\n**Describe alternatives you've considered**\r\n\r\n**Additional context**\r\n\r\n![image](https://github.com/user-attachments/assets/72cc29ce-6a5d-4cbc-9d6b-b6f07c09f399)\r\n",
+ "labels": [
{
- "path": "docs/api/interfaces/Actor.md",
- "additions": 5,
- "deletions": 5
+ "name": "documentation",
+ "color": "0075ca",
+ "description": "Improvements or additions to documentation"
},
{
- "path": "docs/api/interfaces/Content.md",
- "additions": 7,
- "deletions": 7
- },
+ "name": "good first issue",
+ "color": "7057ff",
+ "description": "Good for newcomers"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "number": 1221,
+ "title": "feat: Eliza Code Assistant default characterfile",
+ "state": "OPEN",
+ "created_at": "2024-12-19T00:21:13Z",
+ "updated_at": "2024-12-19T08:08:35Z",
+ "body": "**Overview**\r\nCreate an AI-powered development guide bot that can assist new contributors and help maintainers by leveraging repository history and documentation. This can be a starter file that teaches people about Eliza as soon as they run Eliza.\r\n\r\n**Current Situation**\r\n- New contributors often ask similar questions in discord / twitter\r\n- Repository knowledge is spread across many files and commit history\r\n- Code review assignments are manual and don't always match expertise\r\n\r\n**Proposed Solution**\r\nBuild an agent that:\r\n1. Answers FAQ-style questions using repo knowledge as recommended first step\r\n2. Suggests relevant examples based on current work\r\n3. Guides contributors to relevant documentation/contributors with answers\r\n\r\n**Technical Implementation**\r\n- Create an eliza characterfile template\r\n - https://elizagen.howieduhzit.best/\r\n- Ingest knowledge about github (prevent duplicate issues, find answers, suggest new issue)\r\n - https://ai16z.github.io/data/daily/contributors.json\r\n - https://ai16z.github.io/data/daily/summary.json\r\n - https://ai16z.github.io/data/daily/summary.md\r\n - https://ai16z.github.io/data/weekly/contributors.json\r\n - https://ai16z.github.io/data/monthly/contributors.json\r\n- Ingest docs + FAQ from discord (https://github.com/ai16z/eliza/issues/1044)\r\n - https://ai16z.github.io/eliza/community/Discord/\r\n\r\n**Integration Points (IDEAS)**\r\n- Discord code assistant\r\n- Website frontend (eliza.gg)\r\n",
+ "labels": [
{
- "path": "docs/api/interfaces/ConversationExample.md",
- "additions": 3,
- "deletions": 3
+ "name": "documentation",
+ "color": "0075ca",
+ "description": "Improvements or additions to documentation"
},
{
- "path": "docs/api/interfaces/EvaluationExample.md",
- "additions": 4,
- "deletions": 4
+ "name": "enhancement",
+ "color": "a2eeef",
+ "description": "New feature or request"
},
{
- "path": "docs/api/interfaces/Evaluator.md",
- "additions": 8,
- "deletions": 8
- },
+ "name": "Bounty",
+ "color": "d93f0b",
+ "description": "Use this to assign a bounty to an issue"
+ }
+ ],
+ "comments": [
{
- "path": "docs/api/interfaces/GenerationOptions.md",
- "additions": 10,
- "deletions": 10
- },
+ "author": "maq796113",
+ "body": "how good is the bounty?"
+ }
+ ]
+ }
+ ]
+ },
+ "engagement": {
+ "total_comments": 1,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "simsaidev",
+ "score": 5,
+ "summary": "simsaidev is currently working on preparing a release for version 1.0, focusing on code areas such as agent, characters, and packages. This includes one open pull request that has not been merged yet.",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/192255625?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkxNDAsIm5iZiI6MTczNDY0Nzk0MCwicGF0aCI6Ii91LzE5MjI1NTYyNSJ9.m6UXmOZB4P5aDEzW8NlIro6a_oNBtl6QaTF-4MUr8Yc&u=618ee6c5eb68a948ec29fc112d1ad85a34ced79c&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1249,
+ "title": "Release/v.1.0",
+ "state": "CLOSED",
+ "merged": false,
+ "created_at": "2024-12-19T20:46:20Z",
+ "updated_at": "2024-12-19T20:55:58Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nInitial V-1.0 of SimsAI client package for Eliza framework. Used for testing your agents and interacting on the Simsai platform. SimsAI is a social media thats only for agents, allowing humans to only comment, prompt like or repost their followed agents. Jeets or posts by the agents, will eventually be mintable as NFTs to the user with royalties for the creators and the agent wallets.\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow risk. New client, configurable by the user.\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nThis allows agents to post on the SimsAI platform. Specifically, Jeeter the twitter replica for agents.\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\nClient Change. Feature.\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\nTesting can be done by:\r\n\r\n1. Adding necessary env vars.\r\n2. Running as normal (with the dry run variable on with their character file)\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
{
- "path": "docs/api/interfaces/Goal.md",
+ "path": ".env.example",
"additions": 7,
- "deletions": 7
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/IAgentRuntime.md",
- "additions": 36,
- "deletions": 36
+ "path": "agent/package.json",
+ "additions": 60,
+ "deletions": 59
},
{
- "path": "docs/api/interfaces/IBrowserService.md",
- "additions": 5,
- "deletions": 5
+ "path": "agent/src/index.ts",
+ "additions": 10,
+ "deletions": 3
},
{
- "path": "docs/api/interfaces/ICacheAdapter.md",
- "additions": 4,
- "deletions": 4
+ "path": "characters/simsai.character.json",
+ "additions": 89,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/ICacheManager.md",
- "additions": 4,
- "deletions": 4
+ "path": "packages/client-simsai/.npmignore",
+ "additions": 6,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/IDatabaseAdapter.md",
- "additions": 38,
- "deletions": 38
+ "path": "packages/client-simsai/eslint.config.mjs",
+ "additions": 3,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/IDatabaseCacheAdapter.md",
- "additions": 4,
- "deletions": 4
+ "path": "packages/client-simsai/package.json",
+ "additions": 24,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/IImageDescriptionService.md",
- "additions": 4,
- "deletions": 4
+ "path": "packages/client-simsai/src/index.ts",
+ "additions": 48,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/IMemoryManager.md",
- "additions": 14,
- "deletions": 14
+ "path": "packages/client-simsai/src/jeeter/base.ts",
+ "additions": 607,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/IPdfService.md",
- "additions": 5,
- "deletions": 5
+ "path": "packages/client-simsai/src/jeeter/client.ts",
+ "additions": 302,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/ISpeechService.md",
- "additions": 5,
- "deletions": 5
+ "path": "packages/client-simsai/src/jeeter/constants.ts",
+ "additions": 115,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/ITextGenerationService.md",
- "additions": 7,
- "deletions": 7
+ "path": "packages/client-simsai/src/jeeter/environment.ts",
+ "additions": 48,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/ITranscriptionService.md",
- "additions": 7,
- "deletions": 7
+ "path": "packages/client-simsai/src/jeeter/interactions.ts",
+ "additions": 465,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/IVideoService.md",
- "additions": 7,
- "deletions": 7
+ "path": "packages/client-simsai/src/jeeter/post.ts",
+ "additions": 222,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/Memory.md",
- "additions": 10,
- "deletions": 10
+ "path": "packages/client-simsai/src/jeeter/search.ts",
+ "additions": 597,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/MessageExample.md",
- "additions": 3,
- "deletions": 3
+ "path": "packages/client-simsai/src/jeeter/types.ts",
+ "additions": 224,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/Objective.md",
- "additions": 4,
- "deletions": 4
+ "path": "packages/client-simsai/src/jeeter/utils.ts",
+ "additions": 349,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/Participant.md",
- "additions": 3,
- "deletions": 3
+ "path": "packages/client-simsai/tsconfig.json",
+ "additions": 10,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/Provider.md",
- "additions": 2,
- "deletions": 2
+ "path": "packages/client-simsai/tsup.config.ts",
+ "additions": 20,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/Relationship.md",
- "additions": 8,
- "deletions": 8
+ "path": "packages/core/src/types.ts",
+ "additions": 7,
+ "deletions": 2
},
{
- "path": "docs/api/interfaces/Room.md",
- "additions": 3,
- "deletions": 3
+ "path": "pnpm-lock.yaml",
+ "additions": 23116,
+ "deletions": 18054
}
],
"reviews": [],
@@ -2437,10 +1226,10 @@
}
},
{
- "contributor": "vpavlin",
+ "contributor": "ileana-pr",
"score": 5,
- "summary": "vpavlin is currently working on a pull request to fix an issue related to generating text and adding Akash to the switch. The code changes are focused on the agent and packages code areas.",
- "avatar_url": "https://avatars.githubusercontent.com/u/4759808?u=d045a41a43fa2deabfc3115236cc1e8b0509b164&v=4",
+ "summary": "ileana-pr is currently working on a feature enhancement for the news-plugin in the agent and packages code areas. This contribution includes a pull request for the new feature, with no commits or code changes yet.",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/103957712?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkyMDAsIm5iZiI6MTczNDY0ODAwMCwicGF0aCI6Ii91LzEwMzk1NzcxMiJ9.u9qrd1GMtEVN5qePaZWSeDuQhZDSkFlWmmVmXRCEMKU&u=b865d84e1f5bffd16f907c5318a177dfc9f927d0&v=4",
"activity": {
"code": {
"total_commits": 0,
@@ -2448,71 +1237,68 @@
"commits": [],
"pull_requests": [
{
- "number": 1214,
- "title": "fix: fail when cannot get token, add Akash to generateText switch",
+ "number": 1248,
+ "title": "feat: news-plugin",
"state": "OPEN",
"merged": false,
- "created_at": "2024-12-18T21:21:53Z",
- "updated_at": "2024-12-18T21:28:14Z",
- "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n* this throws when we cannot get a token based on provider (otherwise it silently runs and prints auth errors) - it is a change in behaviour\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nThis fixes 2 issues I've hit:\r\n* When I setup Akash provider I got `Unsupported provider error` because it was missing in `generateText` switch\r\n* When I was trying to update eliza-starter and use it with Akash or Venice, I'd get auth errors because it could not get the provider token - since the `getTokenForProvider` did not account for the new providers, but it would not fail there, hence adding a `default` case which throwa\r\n\r\ncc @MbBrainz\r\n\r\n## What kind of change is this?\r\n\r\nBug fixes\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n* You can try to use Akash provider and chat with the agent - it should result in `Unsupported provider error` without this change\r\n* You can also try to configure some unknown provider and gcall `getTokenForProvider` andthe function will not report any errors without this change \r\n\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n## Discord username\r\n@vpavlin\r\n\r\n",
+ "created_at": "2024-12-19T20:30:07Z",
+ "updated_at": "2024-12-19T20:31:12Z",
+ "body": "\r\n\r\n# Relates to:\r\nAI Agent Dev School Video #2: https://www.youtube.com/watch?v=XenGeAcPAQo&t=3383s \r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow \r\n\r\n\r\n\r\n# Background\r\nShaw shows us how to create a simple plugin that returns the latest news on a specific topic. This is an example code of a completed currentNewsAction. It can be modified and expanded for added functionality. \r\n\r\n## What does this PR do?\r\n\r\nAdds an example of the news plugin described by Shaw. \r\n\r\n## What kind of change is this?\r\n\r\nFeatures \r\n\r\n\r\n\r\n\r\n\r\n\r\nIt will help future students to see an example of the code and more experienced devs to add functionality to a useful plugin. \r\n\r\n# Documentation changes needed?\r\n\r\nnone, but I can add documentation \r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\nI tested the plugin with C3PO character and was able to retrieve news on different topics. \r\n\r\nFormatting of the output can use some improvement. \r\n\r\n## Where should a reviewer start?\r\n\r\nnews.ts \r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
"files": [
+ {
+ "path": ".env.example",
+ "additions": 3,
+ "deletions": 0
+ },
+ {
+ "path": "agent/package.json",
+ "additions": 1,
+ "deletions": 0
+ },
{
"path": "agent/src/index.ts",
- "additions": 4,
+ "additions": 2,
"deletions": 0
},
{
- "path": "packages/core/src/generation.ts",
+ "path": "packages/plugin-news/.npmignore",
+ "additions": 6,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/eslint.config.mjs",
+ "additions": 3,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/package.json",
+ "additions": 19,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/src/actions/index.ts",
"additions": 2,
- "deletions": 1
- }
- ],
- "reviews": [],
- "comments": [
+ "deletions": 0
+ },
{
- "author": "vpavlin",
- "body": "Wait, should I use `develop` or `main` as a base?"
- }
- ]
- }
- ]
- },
- "issues": {
- "total_opened": 0,
- "opened": []
- },
- "engagement": {
- "total_comments": 0,
- "total_reviews": 0,
- "comments": [],
- "reviews": []
- }
- }
- },
- {
- "contributor": "netdragonx",
- "score": 5,
- "summary": "netdragonx is currently working on fixing optional chaining on search to prevent startup errors when search is not enabled. This work is focused on the packages code area, with one pull request submitted but not yet merged in the last 90 days.",
- "avatar_url": "https://avatars.githubusercontent.com/u/100390508?u=0805360e7258c798433b4d3f63a4c0457c178942&v=4",
- "activity": {
- "code": {
- "total_commits": 0,
- "total_prs": 1,
- "commits": [],
- "pull_requests": [
- {
- "number": 1202,
- "title": "fix: optional chaining on search to avoid startup errors when search is not enabled",
- "state": "OPEN",
- "merged": false,
- "created_at": "2024-12-18T09:52:31Z",
- "updated_at": "2024-12-18T10:11:57Z",
- "body": "\r\n\r\n# Relates to:\r\nclient-twitter\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\nLow\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nAdds optional chaining to twitter search setup to prevent an error on startup when search code is active but not enabled.\r\n\r\n## What kind of change is this?\r\nBug fix.\r\n\r\n\r\n\r\n\r\n\r\n## Why are we doing this? Any context or related work?\r\nWhen working with twitter search, the agent throws errors when I activate the search code but disable search in .env\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\nRun twitter agent with `TWITTER_SEARCH_ENABLE=FALSE` and there should be no error on startup\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
- "files": [
+ "path": "packages/plugin-news/src/actions/news.ts",
+ "additions": 172,
+ "deletions": 0
+ },
{
- "path": "packages/client-twitter/src/index.ts",
- "additions": 14,
- "deletions": 17
+ "path": "packages/plugin-news/src/index.ts",
+ "additions": 10,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/tsconfig.json",
+ "additions": 13,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/tsup.config.ts",
+ "additions": 20,
+ "deletions": 0
}
],
"reviews": [],
@@ -2533,10 +1319,10 @@
}
},
{
- "contributor": "Hdpbilly",
+ "contributor": "karelvuong",
"score": 5,
- "summary": "Hdpbilly is currently working on adding 12 new routes for runtime parameters in the packages code area, with a recent pull request reflecting this ongoing effort.",
- "avatar_url": "https://avatars.githubusercontent.com/u/168072844?u=04895ee023be4c6ff9a630d14f55c15ee0d9f502&v=4",
+ "summary": "karelvuong is currently working on a new feature called Treasure Plugin, with a pull request submitted but not yet merged. The code changes are focused on the agent and packages code areas.",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/95452264?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0ODAsIm5iZiI6MTczNDY0NzI4MCwicGF0aCI6Ii91Lzk1NDUyMjY0In0.oN52fhkgFgvEaNu1V3xXp5TP8PU9DPwM0A0M4KD5yBM&u=a0ca99a025844781a3b09ed9616bf1308ffaa601&v=4",
"activity": {
"code": {
"total_commits": 0,
@@ -2544,27 +1330,66 @@
"commits": [],
"pull_requests": [
{
- "number": 1199,
- "title": "feat: added 12 new routes for runtime parameters",
+ "number": 1247,
+ "title": "feat: Add Treasure Plugin",
"state": "OPEN",
"merged": false,
- "created_at": "2024-12-18T08:04:22Z",
- "updated_at": "2024-12-18T17:23:19Z",
- "body": "\r\n\r\n# Relates to:\r\nN/A - Initial API routes documentation\r\n\r\n\r\n\r\n\r\n# Risks\r\nLow - These are read-only API endpoints that expose internal agent state. No write operations except for /set endpoint.\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nAdds comprehensive API routes to the agent framework that expose internal state and capabilities through REST endpoints. This includes routes for:\r\n\r\nAgent state and configuration\r\nMemory and cache inspection\r\nService and plugin discovery\r\nMetrics and monitoring\r\nRelationship and room management\r\n## What kind of change is this?\r\nFeatures (non-breaking change which adds functionality)\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\nChanges required to the project documentation to document all available API endpoints and their usage.\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\nStart with basic routes like /agents and /agents/:agentId to verify basic functionality\r\nTest state inspection routes like /state, /memories, and /cache\r\nVerify component discovery through /services, /plugins, and /providers\r\nCheck monitoring capabilities via /metrics\r\n## Detailed testing steps\r\nStart agent framework with npm start\r\nGet list of agents: curl http://localhost:3000/agents\r\nFor each agent ID:\r\n\r\nTest state endpoint: curl http://localhost:3000/agents/{id}/state\r\nVerify services: curl http://localhost:3000/agents/{id}/services\r\nCheck metrics: curl http://localhost:3000/agents/{id}/metrics\r\nView memories: curl http://localhost:3000/agents/{id}/memories\r\nInspect plugins: curl http://localhost:3000/agents/{id}/plugins\r\nTest providers: curl http://localhost:3000/agents/{id}/providers\r\nVerify relationships: curl http://localhost:3000/agents/{id}/relationships\r\nCheck rooms: curl http://localhost:3000/agents/{id}/rooms\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nRequires server restart to enable new API endpoints. No database changes needed.\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "created_at": "2024-12-19T20:15:23Z",
+ "updated_at": "2024-12-19T20:18:35Z",
+ "body": "\r\n\r\n# Relates to:\r\nAdds Treasure support for Eliza agents.\r\n\r\n# Risks\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n[Treasure](https://treasure.lol) is a gaming-centric L2 rollup built on ZKsync. This PR adds support for Eliza to interact with the Treasure mainnet, with logic/implementation borrowed from #1225 and #1128.\r\n\r\nInitially, only the `transfer` function has been supported with additional features to come to hook into the Treasure Development Kit (TDK), Magicswap, and other Treasure platform features.\r\n\r\n## What kind of change is this?\r\n\r\nFeature\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\nSpin up an agent with the `treasure` plugin + review `plugin-treasure`.\r\n\r\n## Detailed testing steps\r\n1. In `.env`, should set the value for `TREASURE_ADDRESS` (public address for the agent account), `TREASURE_PRIVATE_KEY` (private key for the same account), and `TREASURE_RPC_URL` as https://rpc.treasure.lol.\r\nTo test the transfer function properly, this address needs tokens. [Treasure Bridge](https://bridge.treasure.lol/) can be used to bridge MAGIC directly from `arb1` to an address on `treasure`.\r\n2. Run the agent and prompt it with: \"Send 0.1 MAGIC to \" - e.g. \"send 0.1 MAGIC to 0x7A6a48b8e7BD3451Fc57f01Ad9Aaea62cdf5956E\"\r\n3. Assuming you had 1 MAGIC to send, the agent will confirm and respond with the tx hash, e.g. \"Successfully sent 1 MAGIC to 0x7A6a48b8e7BD3451Fc57f01Ad9Aaea62cdf5956E\r\nTransaction: 0x45759cf3e76d26610154a094c87572fbd7f5ef909f62c4ea13f7defb0d87cf0b\"\r\nThe tx hash can be checked on the Treasure Block Explorer (https://treasurescan.io/)",
"files": [
{
- "path": "packages/client-direct/src/api.ts",
- "additions": 259,
+ "path": ".env.example",
+ "additions": 5,
"deletions": 0
- }
- ],
- "reviews": [
+ },
{
- "author": "odilitime",
- "state": "APPROVED",
- "body": ""
+ "path": "agent/package.json",
+ "additions": 60,
+ "deletions": 59
+ },
+ {
+ "path": "agent/src/index.ts",
+ "additions": 7,
+ "deletions": 3
+ },
+ {
+ "path": "packages/plugin-treasure/package.json",
+ "additions": 20,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-treasure/src/actions/transfer.ts",
+ "additions": 215,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-treasure/src/environment.ts",
+ "additions": 43,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-treasure/src/index.ts",
+ "additions": 13,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-treasure/tsconfig.json",
+ "additions": 10,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-treasure/tsup.config.ts",
+ "additions": 20,
+ "deletions": 0
+ },
+ {
+ "path": "pnpm-lock.yaml",
+ "additions": 21,
+ "deletions": 0
}
],
+ "reviews": [],
"comments": []
}
]
@@ -2575,17 +1400,17 @@
},
"engagement": {
"total_comments": 0,
- "total_reviews": 1,
+ "total_reviews": 0,
"comments": [],
"reviews": []
}
}
},
{
- "contributor": "cwrage77",
+ "contributor": "robin-rrt",
"score": 5,
- "summary": "cwrage77 is currently working on a feature/news plugin, with a focus on code areas such as characters, agent, and packages. This includes one open pull request, but no merged changes, commits, or reported issues in the last 90 days.",
- "avatar_url": "https://avatars.githubusercontent.com/u/10321212?u=deda48521940edac89df630f85a5f9df5cdcb95b&v=4",
+ "summary": "robin-rrt is currently working on a feature to add the avail plugin. The code changes are focused on the agent and packages areas, with 1 pull request created but not yet merged in the last 90 days.",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/66296664?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91LzY2Mjk2NjY0In0.xDIk15VBLjxq_UQ581P8lfJH4UZ_Es24hWAMsjRhmL0&u=3c317252695c6601ff8f1189de214e05a87458bd&v=4",
"activity": {
"code": {
"total_commits": 0,
@@ -2593,22 +1418,17 @@
"commits": [],
"pull_requests": [
{
- "number": 1193,
- "title": "Feature/news plugin",
- "state": "CLOSED",
+ "number": 1241,
+ "title": "feat: add avail plugin",
+ "state": "OPEN",
"merged": false,
- "created_at": "2024-12-18T02:55:07Z",
- "updated_at": "2024-12-18T02:55:44Z",
- "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "created_at": "2024-12-19T15:54:49Z",
+ "updated_at": "2024-12-19T15:59:35Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nN/A\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow.\r\nThe main implementation risk is that the Plugin doesn't work as intended.\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n[Avail](https://www.availproject.org/) aims to accelerate Web3's unification using its cutting-edge modular technology stack, which combines data availability, aggregation, and shared security.\r\n\r\nIn this version, the `transfer` and `submitData` actions are supported.\r\n\r\nMultiple L2s are working with Avail to meet their data availability and interoperability needs.\r\n\r\n## What kind of change is this?\r\n\r\nFeatures (non-breaking change which adds functionality)\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\nSince Avail is a Substrate based network, and not EVM-compatible (cannot work with `plugin-evm`), it requires some docs to show how to submit data and transfer tokens. I have updated the documentation accordingly in the README for the plugin.\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\nMost of the changes are in `plugin-avail`\r\n\r\n\r\n## Detailed testing steps\r\n- In `.env` you should set the value for `AVAIL_ADDRESS` (this is the public address for the agent account) and `AVAIL_SEED` (seed phrase for the same account).\r\n- **Transfer AVAIL**\r\n - To test transfer function, you need tokens in your Avail account. On testnet, you can use the [Avail Faucet](https://faucet.avail.tools/). If you need more please ping me, and I can send it over. \r\n - Run the agent and prompt it with: \"send 1 AVAIL to \" - e.g. `send 1 AVAIL to 5GWbvXjefEvXXETtKQH7YBsUaPc379KAQATW1eqeJT26cbsK`\r\n - Assuming everything goes smoothly the agent returns with the Tx Hash, and Block Hash. \r\nThe tx hash can be checked on the Avail block explorer at https://avail-turing.subscan.io/\r\n- **Submit Data**\r\n - To test data submission, you need tokens in your Avail account to pay fees. On testnet, you can use the [Avail Faucet](https://faucet.avail.tools/). If you need more please ping me, and I can send it over. \r\n - Run the agent and prompt it with: \"Submit the following data to Avail \" - e.g. `Submit the following data to Avail \"Hello World!\"`\r\n - Assuming everything goes smoothly the agent returns with the Tx Hash, and Block Hash. \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n## Discord username\r\nRobinRRT\r\n\r\n",
"files": [
{
- "path": ".gitignore",
- "additions": 56,
- "deletions": 54
- },
- {
- "path": "PZ-README.md",
- "additions": 14,
+ "path": ".env.example",
+ "additions": 6,
"deletions": 0
},
{
@@ -2618,73 +1438,63 @@
},
{
"path": "agent/src/index.ts",
- "additions": 2,
- "deletions": 0
- },
- {
- "path": "characters/courage.character.json",
- "additions": 182,
- "deletions": 0
- },
- {
- "path": "characters/cryptodegen.character.json",
- "additions": 265,
+ "additions": 3,
"deletions": 0
},
{
- "path": "packages/plugin-news/.npmignore",
+ "path": "packages/plugin-avail/.npmignore",
"additions": 6,
"deletions": 0
},
{
- "path": "packages/plugin-news/eslint.config.mjs",
- "additions": 3,
+ "path": "packages/plugin-avail/README.md",
+ "additions": 25,
"deletions": 0
},
{
- "path": "packages/plugin-news/package.json",
- "additions": 19,
+ "path": "packages/plugin-avail/eslint.config.mjs",
+ "additions": 3,
"deletions": 0
},
{
- "path": "packages/plugin-news/src/actions/index.ts",
- "additions": 2,
+ "path": "packages/plugin-avail/package.json",
+ "additions": 21,
"deletions": 0
},
{
- "path": "packages/plugin-news/src/actions/newsSearch.ts",
- "additions": 215,
+ "path": "packages/plugin-avail/src/actions/submitData.ts",
+ "additions": 238,
"deletions": 0
},
{
- "path": "packages/plugin-news/src/evaluators/index.ts",
- "additions": 1,
+ "path": "packages/plugin-avail/src/actions/transfer.ts",
+ "additions": 237,
"deletions": 0
},
{
- "path": "packages/plugin-news/src/index.ts",
- "additions": 16,
+ "path": "packages/plugin-avail/src/environment.ts",
+ "additions": 36,
"deletions": 0
},
{
- "path": "packages/plugin-news/src/providers/index.ts",
- "additions": 0,
+ "path": "packages/plugin-avail/src/index.ts",
+ "additions": 23,
"deletions": 0
},
{
- "path": "packages/plugin-news/tsconfig.json",
+ "path": "packages/plugin-avail/tsconfig.json",
"additions": 13,
"deletions": 0
},
{
- "path": "packages/plugin-news/tsup.config.ts",
- "additions": 20,
+ "path": "packages/plugin-avail/tsup.config.ts",
+ "additions": 21,
"deletions": 0
},
{
"path": "pnpm-lock.yaml",
- "additions": 15,
- "deletions": 22
+ "additions": 0,
+ "deletions": 37536
}
],
"reviews": [],
@@ -2705,10 +1515,10 @@
}
},
{
- "contributor": "BlockchainCake",
- "score": 3,
- "summary": "BlockchainCake is currently working on adding an EVM Client for blockchain event monitoring, focusing on code areas such as agent and packages. This work includes a single pull request with no merged changes within the last 90 days.",
- "avatar_url": "https://avatars.githubusercontent.com/u/24722374?u=c5a6378d6a918ac7d6ae7de796e4cd85ca91c4c3&v=4",
+ "contributor": "stopmalone",
+ "score": 5,
+ "summary": "stopmalone is currently working on integrating the deva client into the project, focusing on documentation, agent, and packages. This includes a single pull request for the feature development.",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/191122176?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0ODAsIm5iZiI6MTczNDY0NzI4MCwicGF0aCI6Ii91LzE5MTEyMjE3NiJ9.ybYAjXg2xaOgZcqMmzsOuJjvH0kd5lS5Gz7MnOiTJ7Q&v=4",
"activity": {
"code": {
"total_commits": 0,
@@ -2716,97 +1526,102 @@
"commits": [],
"pull_requests": [
{
- "number": 1212,
- "title": "Add EVM Client for blockchain event monitoring",
+ "number": 1238,
+ "title": "Feat/deva client integration",
"state": "OPEN",
"merged": false,
- "created_at": "2024-12-18T20:54:14Z",
- "updated_at": "2024-12-18T20:54:14Z",
- "body": "# Add EVM Client for blockchain events\r\n\r\nThis PR adds a new client that enables Eliza agents to monitor and discuss EVM blockchain events through Discord.\r\n\r\n## Features\r\n- WebSocket connection to EVM-compatible chains\r\n- Smart contract event monitoring and decoding\r\n- Natural language discussion of events through Discord\r\n- Event memory storage and formatting\r\n- Automatic reconnection handling\r\n\r\n## Implementation\r\n- Core WebSocket client with ethers.js\r\n- Message manager for event processing\r\n- Discord channel integration\r\n- USDC/DAI Uniswap swap monitoring as reference implementation\r\n\r\n## Documentation\r\n- Full README with setup guide\r\n- Implementation examples\r\n- Code comments and type definitions\r\n\r\nThis extends Eliza's capabilities with blockchain event monitoring while following the framework's patterns for client integration.",
+ "created_at": "2024-12-19T12:44:48Z",
+ "updated_at": "2024-12-19T17:45:19Z",
+ "body": "# Pull Request: Integrate Deva into Eliza\r\n\r\n## Relates to\r\n\r\nThis PR adds a new [Deva](https://www.deva.me/) client integration for the Eliza AI agent, enabling posting and scheduling posts to the [Deva](https://www.deva.me/) feed.\r\n\r\n## Risks\r\n\r\n- **Minimal Risk**: This integration is additive and does not alter existing functionalities of Eliza.\r\n- **Dependency Management**: Introduces a new dependency on Deva's API, which requires monitoring for future updates or changes.\r\n- **Data Privacy**: Ensures that any data shared between Eliza and Deva complies with our privacy policies.\r\n\r\n## Background\r\n\r\n### What does this PR do?\r\n\r\nThis PR introduces the capability to post and schedule content directly to the [Deva platform](https://www.deva.me/) from the Eliza AI agent. Users can now seamlessly integrate their Eliza-generated content with [Deva](https://www.deva.me/), enhancing their content distribution and engagement strategies.\r\n\r\n### What kind of change is this?\r\n\r\n**Feature**: This is a non-breaking change that adds new functionality to the Eliza AI agent by integrating with Deva\u2019s API for posting and scheduling content.\r\n\r\n## Documentation Changes Needed?\r\n\r\nNot at the moment.\r\n\r\n## Testing\r\n\r\n### Detailed Testing Steps\r\n\r\n1. **Create a Deva Account**\r\n - Navigate to [deva.me](https://www.deva.me/), create an account, and press the \"Get Started\" button in the top right.\r\n - ![Get Started](https://github.com/user-attachments/assets/a31ebe01-3ee7-40f5-8e30-f59c79c642fe)\r\n\r\n2. **Complete Onboarding**\r\n - Click through the onboarding screens and connect your preferred social account (e.g., Twitter) to Deva.\r\n\r\n3. **Access the Deva Feed**\r\n - You can now see the Deva feed, where you can post and interact with other Devas.\r\n - \r\n\r\n4. **Create an Application to get the token**\r\n - At this point, you'll be able to get a token to interact with Deva, to do so: \r\n - Navigate to Apps chapter in settings by clicking the user icon in top right corner and then settings -> Apps, or opening [apps](https://www.deva.me/settings/apps)\r\n - Press Apps and Session\r\n
![image](https://github.com/user-attachments/assets/9fda36ac-3675-4f30-8c48-9b91e71a741e)\r\n - Press Create new app\r\n
![image](https://github.com/user-attachments/assets/32fc9b04-510e-4a90-876c-e4f6d2e562d7)\r\n - You are redirected to the form of the app creation, Name, Redirect URL and descriptions are necessary fields. Permissions are preselected and they are exactly enough for Eliza agent to post a message in feed.\r\n - After creating an app, select it from the list of apps;\r\n - Inside you will find a Get Token button, to generate a new token for your app:\r\n
![image](https://github.com/user-attachments/assets/307ab088-0508-496e-bc8e-4ded833e8b4f)\r\n - Later, it'll be visible in the list:\r\n
![image](https://github.com/user-attachments/assets/39034c0d-3cf3-4a69-aaab-8cd1740d9ba6)\r\n\r\n5. **Update Environment Variables**\r\n - Once you have the token, update the environment variables in the `.env` file:\r\n ```env\r\n DEVA_API_KEY=YourApiKey\r\n DEVA_API_BASE_URL=https://api.deva.me # Production API URL\r\n ```\r\n\r\n6. **Select Deva Client as Default Character**\r\n - Select the Deva client as Eliza's default character and choose the desired model:\r\n
![Select Deva Client](https://github.com/user-attachments/assets/1120ebb4-4618-4364-bbf8-7040b6bda8c0)\r\n\r\n7. **Run the Application**\r\n - Execute the following commands to install dependencies and start the application:\r\n ```bash\r\n pnpm install && pnpm start\r\n ```\r\n - This will initiate the Deva client:\r\n
![Initiate Deva Client](https://github.com/user-attachments/assets/4ef64f0b-c2c1-4a4b-a6b5-0461433af022)\r\n - Fetch the persona associated with your agent and the posts that you have pushed to the Deva feed:\r\n
![Fetch Persona and Posts](https://github.com/user-attachments/assets/5a698b06-b616-47cc-8318-355a91cc424c)\r\n - Once done, Eliza will post one message to the Deva feed immediately and schedule another one as a test message:\r\n
![Post Messages](https://github.com/user-attachments/assets/523d69f4-1f3f-4d49-82a1-163e3cd4d128)\r\n8. **Eliza agent's post is in the feed!**\r\n - \r\n\r\n\r\n### Staging Environment Testing\r\n\r\nTo avoid populating the production Deva feed, you can perform the same flow in the [staging environment](https://staging.deva.me/). Ensure you update the related environment variable:\r\n\r\n```env\r\nDEVA_API_BASE_URL=https://api-staging.deva.me # Staging API URL\r\n",
"files": [
{
- "path": "agent/package.json",
+ "path": ".env.example",
+ "additions": 4,
+ "deletions": 0
+ },
+ {
+ "path": ".gitignore",
"additions": 2,
"deletions": 0
},
+ {
+ "path": "agent/package.json",
+ "additions": 1,
+ "deletions": 0
+ },
{
"path": "agent/src/index.ts",
"additions": 6,
"deletions": 0
},
{
- "path": "packages/client-discord/src/index.ts",
- "additions": 32,
- "deletions": 1
+ "path": "docs/api/enumerations/Clients.md",
+ "additions": 9,
+ "deletions": 0
},
{
- "path": "packages/client-evm/README.md",
- "additions": 78,
+ "path": "packages/client-deva/.npmignore",
+ "additions": 6,
"deletions": 0
},
{
- "path": "packages/client-evm/config.example.json",
- "additions": 40,
+ "path": "packages/client-deva/eslint.config.mjs",
+ "additions": 3,
"deletions": 0
},
{
- "path": "packages/client-evm/config.json",
- "additions": 100,
+ "path": "packages/client-deva/package.json",
+ "additions": 24,
"deletions": 0
},
{
- "path": "packages/client-evm/package.json",
- "additions": 21,
+ "path": "packages/client-deva/src/base.ts",
+ "additions": 60,
"deletions": 0
},
{
- "path": "packages/client-evm/src/evm-listener.ts",
+ "path": "packages/client-deva/src/controller.ts",
"additions": 242,
"deletions": 0
},
{
- "path": "packages/client-evm/src/implementations/formatters.ts",
- "additions": 25,
+ "path": "packages/client-deva/src/devaClient.ts",
+ "additions": 30,
"deletions": 0
},
{
- "path": "packages/client-evm/src/implementations/templates.ts",
- "additions": 35,
+ "path": "packages/client-deva/src/enviroment.ts",
+ "additions": 32,
"deletions": 0
},
{
- "path": "packages/client-evm/src/index.ts",
- "additions": 85,
+ "path": "packages/client-deva/src/index.ts",
+ "additions": 28,
"deletions": 0
},
{
- "path": "packages/client-evm/src/messages.ts",
- "additions": 176,
+ "path": "packages/client-deva/src/templates.ts",
+ "additions": 24,
"deletions": 0
},
{
- "path": "packages/client-evm/src/types.ts",
- "additions": 66,
+ "path": "packages/client-deva/src/types.ts",
+ "additions": 21,
"deletions": 0
},
{
- "path": "packages/client-evm/tsconfig.json",
- "additions": 23,
+ "path": "packages/client-deva/tsconfig.json",
+ "additions": 8,
"deletions": 0
},
{
- "path": "packages/core/src/types.ts",
- "additions": 1,
+ "path": "packages/client-deva/tsup.config.ts",
+ "additions": 20,
"deletions": 0
},
{
- "path": "pnpm-lock.yaml",
- "additions": 366,
- "deletions": 44
- },
- {
- "path": "tsconfig.json",
- "additions": 21,
+ "path": "packages/core/src/types.ts",
+ "additions": 2,
"deletions": 0
}
],
@@ -2828,10 +1643,58 @@
}
},
{
- "contributor": "tobbelobb",
+ "contributor": "mobi8",
+ "score": 5,
+ "summary": "mobi8 is currently working on creating a requirements.txt file. This is the only recent activity, with no merged pull requests, commits, or code changes in the last 90 days.",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/116540956?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0MjAsIm5iZiI6MTczNDY0NzIyMCwicGF0aCI6Ii91LzExNjU0MDk1NiJ9.kHchK_MjTR4daYT3OnAj_CC1N0leKgjEP-1jZk4UaLg&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1228,
+ "title": "Create requirements.txt",
+ "state": "CLOSED",
+ "merged": false,
+ "created_at": "2024-12-19T06:38:42Z",
+ "updated_at": "2024-12-19T06:48:44Z",
+ "body": "add\r\n\r\n\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
+ {
+ "path": "requirements.txt",
+ "additions": 2,
+ "deletions": 0
+ }
+ ],
+ "reviews": [],
+ "comments": [
+ {
+ "author": "shakkernerd",
+ "body": "A requirements.txt file is not needed since this is a TypeScript project."
+ }
+ ]
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "9547",
"score": 3,
- "summary": "tobbelobb is currently working on fixing an issue related to writing a summary file before attempting to cache it in the \"packages\" code area. This is reflected in a recent pull request, with no commits or code changes reported in the last 90 days.",
- "avatar_url": "https://avatars.githubusercontent.com/u/5753253?u=06987c2b4cb233fa0a612753bf4cb151862c07b4&v=4",
+ "summary": "9547 is currently working on adding a bash code block to all bash scripts in the README file. This is the only recent activity, with no merged PRs, commits, or code changes.",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/29431502?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkyMDAsIm5iZiI6MTczNDY0ODAwMCwicGF0aCI6Ii91LzI5NDMxNTAyIn0.PAeiPZdpnsK9tsuSRwgz1z1YgHWgk8LTZ7oa9Qj6tbs&u=def2043f3c532d18cae388fcec8d24a21e08d044&v=4",
"activity": {
"code": {
"total_commits": 0,
@@ -2839,25 +1702,89 @@
"commits": [],
"pull_requests": [
{
- "number": 1205,
- "title": "fix: write summary file before trying to cache it",
- "state": "OPEN",
+ "number": 1227,
+ "title": "docs(readme): add bash code block for all bash scripts",
+ "state": "CLOSED",
"merged": false,
- "created_at": "2024-12-18T12:28:33Z",
- "updated_at": "2024-12-18T17:17:36Z",
- "body": " - Also give a .md file extension for prettier rendering in Discord\r\n\r\n# Relates to:\r\nWhen I used my agent to CHAT_WITH_ATTACHMENTS it always failed to stat the summary file because it had not been created.\r\n\r\n# Risks\r\nLow. Writes summaries to disk, could become a lot of data if agent writes a lot of summaries.\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nWrite summary file before trying to cache it\r\n\r\n## What kind of change is this?\r\nBug fix (non-breaking change which fixes an issue)\r\n\r\n## Why are we doing this? Any context or related work?\r\nYeah, I'm building a technical support that needs to receive and analyze config files.\r\n\r\n## Discord username\r\ntobben_dev\r\n",
+ "created_at": "2024-12-19T05:49:29Z",
+ "updated_at": "2024-12-19T06:32:39Z",
+ "body": "Add `bash` code block for all the bash scripts, better to markdown rendering\r\n",
"files": [
{
- "path": "packages/client-discord/src/actions/chat_with_attachments.ts",
- "additions": 31,
- "deletions": 10
+ "path": "README.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "README_CN.md",
+ "additions": 3,
+ "deletions": 3
+ },
+ {
+ "path": "README_DE.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "README_ES.md",
+ "additions": 3,
+ "deletions": 3
+ },
+ {
+ "path": "README_FR.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "README_HE.md",
+ "additions": 4,
+ "deletions": 5
+ },
+ {
+ "path": "README_IT.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "README_JA.md",
+ "additions": 3,
+ "deletions": 3
+ },
+ {
+ "path": "README_KOR.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "README_PTBR.md",
+ "additions": 3,
+ "deletions": 3
+ },
+ {
+ "path": "README_TH.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "README_TR.md",
+ "additions": 4,
+ "deletions": 4
+ },
+ {
+ "path": "README_VI.md",
+ "additions": 2,
+ "deletions": 2
}
],
"reviews": [],
"comments": [
{
- "author": "odilitime",
- "body": "code looks good will test later"
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1227?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n\n[see 9 files with indirect coverage changes](https://app.codecov.io/gh/ai16z/eliza/pull/1227/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z)\n"
+ },
+ {
+ "author": "shakkernerd",
+ "body": "Thanks for the PR but I think adding `bash` to the code block doesn't make any difference given the markdown is perfectly rendered."
}
]
}
@@ -2876,10 +1803,110 @@
}
},
{
- "contributor": "sam-coffey",
+ "contributor": "lalalune",
+ "score": 2,
+ "summary": "lalalune is currently working on updating the character information in the trump.character.json file. This is the only recent activity in the last 90 days, with no merged pull requests, commits, or code changes in other areas.",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/18633264?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg3MjAsIm5iZiI6MTczNDY0NzUyMCwicGF0aCI6Ii91LzE4NjMzMjY0In0.ef20meZySKC14ksX2zmPUprbf4FTK6gdLx8nK_CL6HQ&u=8f2bca0a3cef958bd405ea89680a9b9a0ff38f06&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1252,
+ "title": "Update trump.character.json",
+ "state": "OPEN",
+ "merged": false,
+ "created_at": "2024-12-19T22:28:15Z",
+ "updated_at": "2024-12-19T22:28:15Z",
+ "body": "Remove a controversial line so we don't have to waste time on pointless old world political divisions\r\n",
+ "files": [
+ {
+ "path": "characters/trump.character.json",
+ "additions": 0,
+ "deletions": 1
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "vpavlin",
+ "score": 2,
+ "summary": "vpavlin is currently working on updating the agent package on npmjs.org and creating a nightly build for the next version. Their recent activity includes addressing enhancement and bug-related issues within the project.",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/4759808?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5MDAsIm5iZiI6MTczNDY0NzcwMCwicGF0aCI6Ii91LzQ3NTk4MDgifQ.FCRt6CJ8K5Ci3EOPe8eefUF7mzywKQroiMckMCwlphE&u=d045a41a43fa2deabfc3115236cc1e8b0509b164&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 0,
+ "commits": [],
+ "pull_requests": []
+ },
+ "issues": {
+ "total_opened": 2,
+ "opened": [
+ {
+ "number": 1233,
+ "title": "agent package not updated on npmjs.org",
+ "state": "OPEN",
+ "created_at": "2024-12-19T08:08:23Z",
+ "updated_at": "2024-12-19T08:08:23Z",
+ "body": "**Describe the bug**\r\n\r\nSeems like @ai16z/agent has not been updated for some time https://www.npmjs.com/package/@ai16z/agent\r\n\r\n**To Reproduce**\r\n\r\nSee https://www.npmjs.com/package/@ai16z/agent?activeTab=versions\r\n\r\n**Expected behavior**\r\n\r\nRelease agent package regularly and use it in `eliza-starter` (as it seems like a lot of stuff is just copy&paste)\r\n\r\n**Screenshots**\r\n\r\n\r\n\r\n**Additional context**\r\n\r\n\r\n",
+ "labels": [
+ {
+ "name": "bug",
+ "color": "d73a4a",
+ "description": "Something isn't working"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "number": 1232,
+ "title": "Create a nightly build as next version",
+ "state": "OPEN",
+ "created_at": "2024-12-19T08:06:40Z",
+ "updated_at": "2024-12-19T08:06:40Z",
+ "body": "**Is your feature request related to a problem? Please describe.**\r\n\r\nI'd like to use `eliza-starter` with the latest providers and features, but that means I have to wait until new version is released (weekly?). It would be great to setup a `nightly` builds from `develop` and push them to npmjs.org as `next` version, so that people can easily experiment with latest features and get ready for new releases\r\n\r\n**Describe the solution you'd like**\r\n\r\nSetup an automation to release nightly to from `develop` to `next`\r\n\r\n**Describe alternatives you've considered**\r\n\r\n:shrug: \r\n\r\n**Additional context**\r\n\r\n\r\n",
+ "labels": [
+ {
+ "name": "enhancement",
+ "color": "a2eeef",
+ "description": "New feature or request"
+ }
+ ],
+ "comments": []
+ }
+ ]
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "lorcann-rauzduel",
"score": 1,
- "summary": "sam-coffey is currently addressing a bug related to a chat stuck in an infinite loop, as indicated by the single open issue in the last 90 days. There have been no pull requests or commits made during this period.",
- "avatar_url": "https://avatars.githubusercontent.com/u/98062744?u=10f19a5a02ee5648fd5276432f87eb3c6d97de7d&v=4",
+ "summary": "lorcann-rauzduel is currently working on resolving a bug related to reading properties of undefined in the 'rpcUrls' field, as indicated by the single open issue in the last 90 days. There have been no pull requests, commits, or code changes during this period.",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/176548844?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkyMDAsIm5iZiI6MTczNDY0ODAwMCwicGF0aCI6Ii91LzE3NjU0ODg0NCJ9.iDu37cA2qwbJtZlyWR5DiRT6lnij8ZhkJCOkTH0Z9Ys&u=c20bf0288194863b32133bdd83001111d364ca75&v=4",
"activity": {
"code": {
"total_commits": 0,
@@ -2891,12 +1918,12 @@
"total_opened": 1,
"opened": [
{
- "number": 1213,
- "title": "chat stuck in infinite loop",
+ "number": 1251,
+ "title": "Cannot read properties of undefined (reading 'rpcUrls') ",
"state": "OPEN",
- "created_at": "2024-12-18T21:19:34Z",
- "updated_at": "2024-12-18T21:19:34Z",
- "body": "Have tried installing and reinstalling many times, chat with any agent always gets stuck in loop where agent just keeps replying to itself.\r\n\r\nHappens each time I successfully start an agent with npm start (either chatting in terminal in older versions or with localhost:5173)\r\n\r\nI would expect the agent to have a dialogue with me but it becomes impossible when the agent just keeps saying things to itself over and over.",
+ "created_at": "2024-12-19T22:02:20Z",
+ "updated_at": "2024-12-19T22:02:20Z",
+ "body": "**Describe the bug**\r\n\r\nSwap execution fails with \"Cannot read properties of undefined (reading 'rpcUrls')\" error during LiFi SDK initialization. The issue occurs because the RPC URLs configuration doesn't match the format expected by the SDK.\r\n\r\n**To Reproduce**\r\n\r\n1. Initialize SwapAction with a WalletProvider\r\n2. Attempt to execute a swap with a prompt\r\n3. Error occurs during configuration creation in SwapAction constructor\r\n\r\n**Expected behavior**\r\n\r\nSwap should execute normally\r\n\r\n**Screenshots**\r\n\r\nLogs : \r\n```\r\n [\"\u2713 Normalized action: swap\"] \r\n\r\n [\"\u2139 Executing handler for action: swap\"] \r\nError in swap handler: Cannot read properties of undefined (reading 'rpcUrls')\r\n \u25ce LOGS\r\n Evaluating \r\n GET_FACTS \r\n\r\n \u25ce LOGS\r\n Evaluating \r\n UPDATE_GOAL \r\n\r\n \u25ce LOGS\r\n Creating Memory \r\n 3131de6c-ba7b-0dad-b05f-eeed7ceae7ca \r\n Error: Cannot read properties of undefined (reading 'rpcUrls') \r\n```\r\n\r\n**Additional context**\r\n\r\nmy .env file :\r\n\r\n```\r\n.....\r\n# EVM\r\nEVM_PRIVATE_KEY=my_private_key\r\nEVM_PROVIDER_URL=my_eth_mainnet_provider\r\nETHEREUM_PROVIDER_ARBITRUM_=my_arbitrum_mainnet_provider\r\nETHEREUM_PROVIDER_ARBITRUM_SEPOLIA=my_arbitrum_sepolia_provider\r\n\r\n```\r\n\r\nmy character file :\r\n```\r\n\r\n \"name\": \"user-agent\",\r\n \"clients\": [\"twitter\", \"telegram\"],\r\n \"modelProvider\": \"anthropic\",\r\n \"settings\": {\r\n \"secrets\": {},\r\n \"voice\": {},\r\n \"chains\": { \"evm\": [\"arbitrum\", \"arbitrumSepolia\"] }\r\n },\r\n \"plugins\": [\"@ai16z/plugin-evm\"],\r\n```\r\n",
"labels": [
{
"name": "bug",
@@ -2917,10 +1944,10 @@
}
},
{
- "contributor": "AntonioTF5",
+ "contributor": "blockfer-rp",
"score": 1,
- "summary": "AntonioTF5 is currently working on addressing a bug related to multiple mentions on Twitter/X when replying, as indicated by their recent activity of opening one issue in the last 90 days. There have been no pull requests, commits, or code changes associated with this issue so far.",
- "avatar_url": "https://avatars.githubusercontent.com/u/32102018?u=ca0cfc6fafa99720cba35ad22ba7e31738c399b9&v=4",
+ "summary": "blockfer-rp is currently working on resolving a bug related to the twitterShouldRespondTemplate failing when defined as a string in JSON character configuration. This is the only issue they have been actively addressing in the last 90 days, with no code changes or pull requests merged during this period.",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/58490353?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg1NDAsIm5iZiI6MTczNDY0NzM0MCwicGF0aCI6Ii91LzU4NDkwMzUzIn0.C1-fpM9Tjh1-NfwBgUJq3HVX-3h5v7O-OmnqdfCdIZ8&v=4",
"activity": {
"code": {
"total_commits": 0,
@@ -2932,12 +1959,12 @@
"total_opened": 1,
"opened": [
{
- "number": 1208,
- "title": "Multiple mentions on Twitter/X when reply",
+ "number": 1235,
+ "title": "twitterShouldRespondTemplate Fails When Defined as a String in JSON Character Config",
"state": "OPEN",
- "created_at": "2024-12-18T16:44:13Z",
- "updated_at": "2024-12-18T19:28:41Z",
- "body": "**Describe the bug**\n\nIn every following reply to target accounts on X agent adds mentioning of the account: @account \n\nIf it replies second time it will mention twice: @account @account\n\n**Expected behavior**\n\nNo mentioning of the target account when reply at all. \n\n**Screenshots**\n\n![image](https://github.com/user-attachments/assets/9b8a6403-e496-4ecb-bf5b-bc67b4faeb4b)\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
+ {
+ "path": "docs/api/classes/AgentRuntime.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/classes/CacheManager.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/classes/DatabaseAdapter.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/classes/DbCacheAdapter.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/classes/FsCacheAdapter.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/classes/MemoryCacheAdapter.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/classes/MemoryManager.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/classes/Service.md",
+ "additions": 5,
+ "deletions": 5
+ },
+ {
+ "path": "docs/api/enumerations/Clients.md",
+ "additions": 9,
+ "deletions": 9
+ },
+ {
+ "path": "docs/api/enumerations/GoalStatus.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/enumerations/LoggingLevel.md",
+ "additions": 4,
+ "deletions": 4
+ },
+ {
+ "path": "docs/api/enumerations/ModelClass.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/enumerations/ModelProviderName.md",
+ "additions": 33,
+ "deletions": 23
+ },
+ {
+ "path": "docs/api/enumerations/ServiceType.md",
+ "additions": 12,
+ "deletions": 12
+ },
+ {
+ "path": "docs/api/functions/addHeader.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/composeActionExamples.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/composeContext.md",
+ "additions": 12,
+ "deletions": 6
+ },
+ {
+ "path": "docs/api/functions/configureSettings.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/createGoal.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/createRelationship.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/embed.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/findNearestEnvFile.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/formatActionNames.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/formatActions.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/formatActors.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/formatEvaluatorExampleDescriptions.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/formatEvaluatorExamples.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/formatEvaluatorNames.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/formatEvaluators.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/formatGoalsAsString.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/formatMessages.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/formatPosts.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/formatRelationships.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/formatTimestamp.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/generateCaption.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/generateImage.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/generateMessageResponse.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/generateObject.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/generateObjectArray.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/generateObjectDeprecated.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/generateShouldRespond.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/generateText.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/generateTextArray.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/generateTrueOrFalse.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/generateTweetActions.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/generateWebSearch.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/getActorDetails.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/getEmbeddingConfig.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/getEmbeddingType.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/getEmbeddingZeroVector.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/getEndpoint.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/getEnvVariable.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/getGoals.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/getModel.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/getProviders.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/getRelationship.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/getRelationships.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/handleProvider.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/hasEnvVariable.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/loadEnvConfig.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/parseActionResponseFromText.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/parseBooleanFromText.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/parseJSONObjectFromText.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/parseJsonArrayFromText.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/parseShouldRespondFromText.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/splitChunks.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/stringToUuid.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/trimTokens.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/updateGoal.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/validateCharacterConfig.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/validateEnv.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/index.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/interfaces/Account.md",
+ "additions": 7,
+ "deletions": 7
+ },
+ {
+ "path": "docs/api/interfaces/Action.md",
+ "additions": 7,
+ "deletions": 7
+ },
+ {
+ "path": "docs/api/interfaces/ActionExample.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/interfaces/ActionResponse.md",
+ "additions": 5,
+ "deletions": 5
+ },
+ {
+ "path": "docs/api/interfaces/Actor.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/interfaces/Content.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/interfaces/ConversationExample.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/interfaces/EvaluationExample.md",
+ "additions": 4,
+ "deletions": 4
+ },
+ {
+ "path": "docs/api/interfaces/Evaluator.md",
+ "additions": 8,
+ "deletions": 8
+ },
+ {
+ "path": "docs/api/interfaces/GenerationOptions.md",
+ "additions": 10,
+ "deletions": 10
+ },
+ {
+ "path": "docs/api/interfaces/Goal.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/interfaces/IAgentConfig.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/interfaces/IAgentRuntime.md",
+ "additions": 38,
+ "deletions": 38
+ },
+ {
+ "path": "docs/api/interfaces/IAwsS3Service.md",
+ "additions": 5,
+ "deletions": 5
+ },
+ {
+ "path": "docs/api/interfaces/IBrowserService.md",
+ "additions": 5,
+ "deletions": 5
+ },
+ {
+ "path": "docs/api/interfaces/ICacheAdapter.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/interfaces/ICacheManager.md",
+ "additions": 4,
+ "deletions": 4
+ },
+ {
+ "path": "docs/api/interfaces/IDatabaseAdapter.md",
+ "additions": 38,
+ "deletions": 38
+ },
+ {
+ "path": "docs/api/interfaces/IDatabaseCacheAdapter.md",
+ "additions": 4,
+ "deletions": 4
+ },
+ {
+ "path": "docs/api/interfaces/IImageDescriptionService.md",
+ "additions": 4,
+ "deletions": 4
+ },
+ {
+ "path": "docs/api/interfaces/IMemoryManager.md",
+ "additions": 14,
+ "deletions": 14
+ },
+ {
+ "path": "docs/api/interfaces/IPdfService.md",
+ "additions": 5,
+ "deletions": 5
+ },
+ {
+ "path": "docs/api/interfaces/ISlackService.md",
+ "additions": 4,
+ "deletions": 4
+ },
+ {
+ "path": "docs/api/interfaces/ISpeechService.md",
+ "additions": 5,
+ "deletions": 5
+ },
+ {
+ "path": "docs/api/interfaces/ITextGenerationService.md",
+ "additions": 7,
+ "deletions": 7
+ },
+ {
+ "path": "docs/api/interfaces/ITranscriptionService.md",
+ "additions": 7,
+ "deletions": 7
+ },
+ {
+ "path": "docs/api/interfaces/IVideoService.md",
+ "additions": 7,
+ "deletions": 7
+ },
+ {
+ "path": "docs/api/interfaces/Memory.md",
+ "additions": 10,
+ "deletions": 10
+ }
+ ],
+ "reviews": [
+ {
+ "author": "odilitime",
+ "state": "APPROVED",
+ "body": ""
+ },
+ {
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": ""
+ }
+ ],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 1,
+ "opened": [
+ {
+ "number": 1200,
+ "title": "chore: Document Missing Plugin Documentation and Examples",
+ "state": "OPEN",
+ "created_at": "2024-12-18T08:59:15Z",
+ "updated_at": "2024-12-18T08:59:15Z",
+ "body": "**Overview**\r\nSeveral plugins in the Eliza framework lack comprehensive documentation. This makes it harder for new developers to understand and utilize these components.\r\n\r\nMissing Plugin Documentation:\r\n- [ ] plugin-0g - File storage plugin\r\n- [ ] plugin-aptos - Aptos blockchain integration\r\n- [ ] plugin-conflux - Conflux blockchain integration \r\n- [ ] plugin-echochambers - Echo chamber client\r\n- [ ] plugin-flow - Flow blockchain integration\r\n- [ ] plugin-goat - GOAT functionality\r\n- [ ] plugin-icp - Internet Computer integration\r\n- [ ] plugin-image-generation - Image generation capabilities\r\n- [ ] plugin-intiface - Intiface integration\r\n- [ ] plugin-multiversx - MultiversX blockchain \r\n- [ ] plugin-near - NEAR Protocol integration\r\n- [ ] plugin-nft-generation - NFT creation functionality\r\n- [ ] plugin-story - Story/IP management\r\n- [ ] plugin-sui - Sui blockchain integration\r\n- [ ] plugin-ton - TON blockchain integration\r\n- [ ] plugin-trustdb - Trust database functionality\r\n- [ ] plugin-video-generation - Video generation features\r\n- [ ] plugin-web-search - Web search capabilities\r\n- [ ] plugin-whatsapp - WhatsApp integration\r\n- [ ] plugin-zksync-era - zkSync Era integration\r\n\r\n**Proposed Documentation Structure**\r\nFor each plugin, we need:\r\n1. Overview and purpose\r\n2. Installation instructions\r\n3. Configuration requirements\r\n4. Usage examples\r\n5. API reference\r\n6. Common issues/troubleshooting\r\n\r\n**Additional Missing Docs**\r\n- Examples folder documentation\r\n- Testing guide expansion\r\n- Plugin development guide\r\n- Security best practices\r\n- Performance optimization guide\r\n\r\n**Value Add**\r\nThis documentation will:\r\n- Improve developer onboarding\r\n- Reduce support questions\r\n- Enable faster plugin adoption\r\n- Help maintain code quality",
+ "labels": [
+ {
+ "name": "documentation",
+ "color": "0075ca",
+ "description": "Improvements or additions to documentation"
+ },
+ {
+ "name": "enhancement",
+ "color": "a2eeef",
+ "description": "New feature or request"
+ }
+ ],
+ "comments": []
+ }
+ ]
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 2,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "tomguluson92",
+ "score": 17,
+ "summary": "tomguluson92 is primarily focused on updating the \"CN README\" documentation with more details, as indicated by the recent merged pull request. There have been no new commits or code changes in the last 90 days.",
+ "avatar_url": "https://avatars.githubusercontent.com/u/19585240?u=4a4465656050747dee79f5f97a8b61cf2fbc97e1&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1196,
+ "title": "docs: Update \"CN README\" with more details",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-18T06:12:33Z",
+ "updated_at": "2024-12-18T17:29:45Z",
+ "body": "Add more details in the CN version of README\r\n\r\n\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nFix the old CN readme, since old version do not have a complete launch information.\r\n\r\n## What kind of change is this?\r\n\r\nImprovements\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\nYes, I change the readme chinese version.\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
+ {
+ "path": "README_CN.md",
+ "additions": 58,
+ "deletions": 6
+ }
+ ],
+ "reviews": [
+ {
+ "author": "odilitime",
+ "state": "APPROVED",
+ "body": ""
+ }
+ ],
+ "comments": [
+ {
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1196?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n"
+ }
+ ]
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 1,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "ileana-pr",
+ "score": 17,
+ "summary": "ileana-pr is currently working on documentation by fixing the CONTRIBUTING.md file in the docs section. In the last 90 days, they have submitted 1 pull request, which has been successfully merged.",
+ "avatar_url": "https://avatars.githubusercontent.com/u/103957712?u=e0f8d1e80ea177088c7f03dc45da54e7994ccd7c&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1191,
+ "title": "docs: fixed CONTRIBUTING.md file Issue: 1048",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-18T00:10:51Z",
+ "updated_at": "2024-12-18T02:00:30Z",
+ "body": "\r\n\r\n# Relates to:\r\nIssue #1048 Fixed \r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
+ {
+ "path": "docs/docs/contributing.md",
+ "additions": 5,
+ "deletions": 5
+ }
+ ],
+ "reviews": [
+ {
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM - thanks :) "
+ }
+ ],
+ "comments": [
+ {
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1191?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n"
+ }
+ ]
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 1,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "ai16z-demirix",
+ "score": 17,
+ "summary": "ai16z-demirix is currently working on adding tests for runtime.ts and updating the README to reflect the switch to vitest in the packages code area. They have made 1 merged pull request in the last 90 days.",
+ "avatar_url": "https://avatars.githubusercontent.com/u/188117230?u=424cd5b834584b3799da288712b3c4158c8032a1&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1190,
+ "title": "test: adding tests for runtime.ts. Modified README since we switched to vitest",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-17T22:45:37Z",
+ "updated_at": "2024-12-18T02:07:57Z",
+ "body": "\r\n\r\n\r\n\r\n# Relates to:\r\nhttps://github.com/ai16z/eliza/issues/187\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\nLow: adding tests for runtime.ts\r\n# Background\r\n\r\n## What does this PR do?\r\nThis PR adds tests for runtime.ts\r\n## What kind of change is this?\r\nAdding new tests.\r\n\r\n\r\n\r\n\r\nContributing to have stable and good SDEC.\r\n\r\n# Documentation changes needed?\r\nMinimal: Edited tests README file since we switched to vitests from jest.\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\npackages/core/\r\n## Detailed testing steps\r\nnavigate to directory and run pnpm install and pnpm test\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
+ {
+ "path": "packages/core/README-TESTS.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "packages/core/src/tests/runtime.test.ts",
+ "additions": 139,
+ "deletions": 0
+ }
+ ],
+ "reviews": [
+ {
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM thanks for doing this :) "
+ }
+ ],
+ "comments": [
+ {
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1190?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n\n[see 8 files with indirect coverage changes](https://app.codecov.io/gh/ai16z/eliza/pull/1190/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z)\n"
+ }
+ ]
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 1,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "marcNY",
+ "score": 15,
+ "summary": "marcNY is currently updating the README.md file in the project's documentation. This is the only recent activity, with one pull request successfully merged. There have been no new commits or code changes in the last 90 days.",
+ "avatar_url": "https://avatars.githubusercontent.com/u/8562443?u=734e3f5504e627ba44eec27c72ce0263cfe0a0ab&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1209,
+ "title": "docs: Update README.md",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-18T16:46:43Z",
+ "updated_at": "2024-12-18T17:21:57Z",
+ "body": "Relates to:\r\n\r\nNo issue; I created the pull request directly.\r\n\r\nRisks:\r\n\r\nLow\r\n\r\nBackground:\r\n\r\nThe starter script was not working because it did not include a cd command to navigate into the eliza-starter directory. This caused the script to fail when executed from the root of the project.\r\n\r\nWhat does this PR do?\r\n\r\nThis PR updates the starter script by adding a cd command to ensure it correctly navigates into the eliza-starter directory before executing any subsequent steps.\r\n\r\nWhat kind of change is this?\r\n\t\u2022\tBug fixes (non-breaking change which fixes an issue)\r\n\r\nDocumentation changes needed?\r\n\t\u2022\tMy changes do not require a change to the project documentation.\r\n\r\nTesting:\r\n\r\nWhere should a reviewer start?\r\n\r\nStart by reviewing the changes made to the starter script file.\r\n\r\nDetailed testing steps:\r\n\t1.\tRun the updated starter script from the root directory.\r\n\t2.\tConfirm that the script correctly navigates into the eliza-starter directory and proceeds without errors.",
+ "files": [
+ {
+ "path": "README.md",
+ "additions": 1,
+ "deletions": 2
+ }
+ ],
+ "reviews": [
+ {
+ "author": "odilitime",
+ "state": "APPROVED",
+ "body": ""
+ }
+ ],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 1,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "v1xingyue",
+ "score": 14,
+ "summary": "v1xingyue is currently focused on fixing a Gitpod CI/CD bug, with one pull request successfully merged in the last 90 days. There have been no new commits or code changes during this period.",
+ "avatar_url": "https://avatars.githubusercontent.com/u/974169?u=96c6a113a91978c041e5cf90965d7b66c5540af4&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1207,
+ "title": "fix: gitpod cicd bug",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-18T15:06:25Z",
+ "updated_at": "2024-12-18T19:43:00Z",
+ "body": "Sometimes we can't fetch tags, so let's fetch tags before.\r\n",
+ "files": [
+ {
+ "path": ".gitpod.yml",
+ "additions": 1,
+ "deletions": 0
+ }
+ ],
+ "reviews": [
+ {
+ "author": "odilitime",
+ "state": "APPROVED",
+ "body": ""
+ }
+ ],
+ "comments": [
+ {
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1207?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n"
+ }
+ ]
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 1,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "9547",
+ "score": 14,
+ "summary": "9547 is currently working on adding documentation for Python 3.7 in Chinese. This is the only recent activity, with one pull request successfully merged. No other commits or code changes have been made in the last 90 days.",
+ "avatar_url": "https://avatars.githubusercontent.com/u/29431502?u=def2043f3c532d18cae388fcec8d24a21e08d044&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1201,
+ "title": "docs(cn): add python 3.7",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-18T09:00:53Z",
+ "updated_at": "2024-12-18T17:39:58Z",
+ "body": "\r\n## What does this PR do?\r\n\r\nAdd python2.7 to the requirements\r\n\r\n",
+ "files": [
+ {
+ "path": "README_CN.md",
+ "additions": 2,
+ "deletions": 3
+ }
+ ],
+ "reviews": [
+ {
+ "author": "odilitime",
+ "state": "APPROVED",
+ "body": ""
+ }
+ ],
+ "comments": [
+ {
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1201?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n"
+ }
+ ]
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 1,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "monilpat",
+ "score": 10,
+ "summary": "monilpat is currently working on enhancing logging in the /packages/plugin-coinbase/src/plugins directory using elizaLogger. They have also been focusing on integrating contextualized actions and addressing bug fixes in their recent pull request.",
+ "avatar_url": "https://avatars.githubusercontent.com/u/15067321?u=1271e57605b48029307547127c90e1bd5e4f3f39&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1195,
+ "title": "feat: integrate contextualized actions + bug fixes ",
+ "state": "CLOSED",
+ "merged": false,
+ "created_at": "2024-12-18T05:26:54Z",
+ "updated_at": "2024-12-18T05:27:15Z",
+ "body": "Integrate memories (files) + character details to in actions plus a few bug fixes",
+ "files": [
+ {
+ "path": ".env.example",
+ "additions": 2,
+ "deletions": 7
+ },
+ {
+ "path": ".github/workflows/sync-upstream.yaml",
+ "additions": 80,
+ "deletions": 0
+ },
+ {
+ "path": ".gitignore",
+ "additions": 5,
+ "deletions": 1
+ },
+ {
+ "path": "agent/package.json",
+ "additions": 3,
+ "deletions": 1
+ },
+ {
+ "path": "agent/src/index.ts",
+ "additions": 54,
+ "deletions": 12
+ },
+ {
+ "path": "characters/chronis.character.json",
+ "additions": 321,
+ "deletions": 0
+ },
+ {
+ "path": "characters/logging-addict.character.json",
+ "additions": 262,
+ "deletions": 0
+ },
+ {
+ "path": "docs/api/classes/AgentRuntime.md",
+ "additions": 40,
+ "deletions": 40
+ },
+ {
+ "path": "docs/api/classes/CacheManager.md",
+ "additions": 5,
+ "deletions": 5
+ },
+ {
+ "path": "docs/api/classes/DatabaseAdapter.md",
+ "additions": 41,
+ "deletions": 41
+ },
+ {
+ "path": "docs/api/classes/DbCacheAdapter.md",
+ "additions": 4,
+ "deletions": 4
+ },
+ {
+ "path": "docs/api/classes/FsCacheAdapter.md",
+ "additions": 4,
+ "deletions": 4
+ },
+ {
+ "path": "docs/api/classes/MemoryCacheAdapter.md",
+ "additions": 5,
+ "deletions": 5
+ },
+ {
+ "path": "docs/api/classes/MemoryManager.md",
+ "additions": 13,
+ "deletions": 13
+ },
+ {
+ "path": "docs/api/classes/Service.md",
+ "additions": 4,
+ "deletions": 4
+ },
+ {
+ "path": "docs/api/enumerations/Clients.md",
+ "additions": 4,
+ "deletions": 4
+ },
+ {
+ "path": "docs/api/enumerations/GoalStatus.md",
+ "additions": 3,
+ "deletions": 3
+ },
+ {
+ "path": "docs/api/enumerations/LoggingLevel.md",
+ "additions": 3,
+ "deletions": 3
+ },
+ {
+ "path": "docs/api/enumerations/ModelClass.md",
+ "additions": 5,
+ "deletions": 5
+ },
+ {
+ "path": "docs/api/enumerations/ModelProviderName.md",
+ "additions": 76,
+ "deletions": 0
+ },
+ {
+ "path": "docs/api/enumerations/ServiceType.md",
+ "additions": 8,
+ "deletions": 8
+ },
+ {
+ "path": "docs/api/functions/addHeader.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/composeActionExamples.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/composeContext.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/configureSettings.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/createGoal.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/createRelationship.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/embed.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/findNearestEnvFile.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/formatActionNames.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/formatActions.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/formatActors.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/formatEvaluatorExampleDescriptions.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/formatEvaluatorExamples.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/formatEvaluatorNames.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/formatEvaluators.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/formatGoalsAsString.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/formatMessages.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/formatPosts.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/formatRelationships.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/formatTimestamp.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/generateCaption.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/generateImage.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/generateMessageResponse.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/generateObject.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/generateObjectArray.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/generateObjectV2.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/generateShouldRespond.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/generateText.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/generateTextArray.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/generateTrueOrFalse.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/generateWebSearch.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/getActorDetails.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/getEmbeddingConfig.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/getEmbeddingType.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/getEmbeddingZeroVector.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/getEndpoint.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/getEnvVariable.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/getGoals.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/getModel.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/getProviders.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/getRelationship.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/getRelationships.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/handleProvider.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/hasEnvVariable.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/loadEnvConfig.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/parseBooleanFromText.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/parseJSONObjectFromText.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/parseJsonArrayFromText.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/parseShouldRespondFromText.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/splitChunks.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/stringToUuid.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/trimTokens.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/updateGoal.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/validateCharacterConfig.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/functions/validateEnv.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/interfaces/Account.md",
+ "additions": 6,
+ "deletions": 6
+ },
+ {
+ "path": "docs/api/interfaces/Action.md",
+ "additions": 6,
+ "deletions": 6
+ },
+ {
+ "path": "docs/api/interfaces/ActionExample.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/interfaces/Actor.md",
+ "additions": 4,
+ "deletions": 4
+ },
+ {
+ "path": "docs/api/interfaces/Content.md",
+ "additions": 6,
+ "deletions": 6
+ },
+ {
+ "path": "docs/api/interfaces/ConversationExample.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/interfaces/EvaluationExample.md",
+ "additions": 3,
+ "deletions": 3
+ },
+ {
+ "path": "docs/api/interfaces/Evaluator.md",
+ "additions": 7,
+ "deletions": 7
+ },
+ {
+ "path": "docs/api/interfaces/GenerationOptions.md",
+ "additions": 9,
+ "deletions": 9
+ },
+ {
+ "path": "docs/api/interfaces/Goal.md",
+ "additions": 6,
+ "deletions": 6
+ },
+ {
+ "path": "docs/api/interfaces/IAgentRuntime.md",
+ "additions": 35,
+ "deletions": 35
+ },
+ {
+ "path": "docs/api/interfaces/IBrowserService.md",
+ "additions": 4,
+ "deletions": 4
+ },
+ {
+ "path": "docs/api/interfaces/ICacheAdapter.md",
+ "additions": 3,
+ "deletions": 3
+ },
+ {
+ "path": "docs/api/interfaces/ICacheManager.md",
+ "additions": 3,
+ "deletions": 3
+ },
+ {
+ "path": "docs/api/interfaces/IDatabaseAdapter.md",
+ "additions": 37,
+ "deletions": 37
+ },
+ {
+ "path": "docs/api/interfaces/IDatabaseCacheAdapter.md",
+ "additions": 3,
+ "deletions": 3
+ },
+ {
+ "path": "docs/api/interfaces/IImageDescriptionService.md",
+ "additions": 3,
+ "deletions": 3
+ },
+ {
+ "path": "docs/api/interfaces/IMemoryManager.md",
+ "additions": 13,
+ "deletions": 13
+ },
+ {
+ "path": "docs/api/interfaces/IPdfService.md",
+ "additions": 4,
+ "deletions": 4
+ },
+ {
+ "path": "docs/api/interfaces/ISpeechService.md",
+ "additions": 4,
+ "deletions": 4
+ },
+ {
+ "path": "docs/api/interfaces/ITextGenerationService.md",
+ "additions": 6,
+ "deletions": 6
+ },
+ {
+ "path": "docs/api/interfaces/ITranscriptionService.md",
+ "additions": 6,
+ "deletions": 6
+ },
+ {
+ "path": "docs/api/interfaces/IVideoService.md",
+ "additions": 6,
+ "deletions": 6
+ },
+ {
+ "path": "docs/api/interfaces/Memory.md",
+ "additions": 9,
+ "deletions": 9
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 2,
+ "opened": [
+ {
+ "number": 1194,
+ "title": "Improve Logging in /packages/plugin-coinbase/src/plugins",
+ "state": "OPEN",
+ "created_at": "2024-12-18T04:16:18Z",
+ "updated_at": "2024-12-18T08:38:48Z",
+ "body": "**Is your feature request related to a problem? Please describe.**\n\nThe current logging mechanism in the `/packages/plugin-coinbase/src/plugins` directory lacks consistency and detail, making it challenging to debug and monitor the plugin's behavior effectively.\n\n**Describe the solution you'd like**\n\nIntegrate the `elizaLogger` construct to standardize logging across the plugin. This should include:\n- Consistent log levels (INFO, DEBUG, ERROR) for different operations.\n- Detailed log messages that include context such as function names and parameters.\n- Examples of how to implement `elizaLogger` in existing functions for better clarity.\n\n**Describe alternatives you've considered**\n\n- Continuing with the current ad-hoc logging approach.\n- Using a third-party logging library, though this may introduce unnecessary dependencies.\n\n**Additional context**\n\nPlease refer to existing examples in the `/packages/plugin-coinbase/src/plugins` directory and extend them where possible. Ensure that the new logging strategy aligns with the overall architecture of the `eliza` project.",
+ "labels": [
+ {
+ "name": "enhancement",
+ "color": "a2eeef",
+ "description": "New feature or request"
+ },
+ {
+ "name": "good first issue",
+ "color": "7057ff",
+ "description": "Good for newcomers"
+ },
+ {
+ "name": "logging",
+ "color": "ededed",
+ "description": null
+ }
+ ],
+ "comments": [
+ {
+ "author": "9547",
+ "body": "@monilpat may I take this one?"
+ }
+ ]
+ },
+ {
+ "number": 1192,
+ "title": "Enhance Logging in /packages/plugin-coinbase/src/plugins Using elizaLogger",
+ "state": "CLOSED",
+ "created_at": "2024-12-18T01:45:28Z",
+ "updated_at": "2024-12-18T01:46:15Z",
+ "body": "---\nname: Feature request\nabout: Suggest an idea for this project\ntitle: \"\"\nlabels: \"enhancement\"\nassignees: \"\"\n---\n\n**Is your feature request related to a problem? Please describe.**\n\nCurrently, the logging mechanism in `/packages/plugin-coinbase/src/plugins` lacks detailed output, making it difficult to trace issues and monitor performance effectively.\n\n**Describe the solution you'd like**\n\nIntegrate the `elizaLogger` construct to provide more comprehensive logging throughout the codebase. This would involve:\n- Adding entry and exit logs for key functions.\n- Including detailed error logging with stack traces.\n- Logging significant state changes and data processing steps.\n\n**Describe alternatives you've considered**\n\nConsidered using a third-party logging library, but `elizaLogger` offers a more integrated solution with existing infrastructure.\n\n**Additional context**\n\nUtilize existing examples of `elizaLogger` usage in other parts of the codebase as a reference. Extend these examples to cover more complex scenarios within the `/packages/plugin-coinbase/src/plugins` path.",
+ "labels": [
+ {
+ "name": "enhancement",
+ "color": "a2eeef",
+ "description": "New feature or request"
+ }
+ ],
+ "comments": []
+ }
+ ]
+ },
+ "engagement": {
+ "total_comments": 1,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "Longame208",
+ "score": 10,
+ "summary": "Longame208 is currently working on addressing an issue related to being unable to chat in the terminal. The issue falls under the bug category, with no code changes or commits made in the last 90 days.",
+ "avatar_url": "https://avatars.githubusercontent.com/u/79878000?v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 0,
+ "commits": [],
+ "pull_requests": []
+ },
+ "issues": {
+ "total_opened": 1,
+ "opened": [
+ {
+ "number": 1204,
+ "title": "unable to chat in terminal",
+ "state": "OPEN",
+ "created_at": "2024-12-18T11:19:12Z",
+ "updated_at": "2024-12-18T12:41:24Z",
+ "body": "run pnpm start / pnpm start:client and not able to have chat in terminal with agent was working before now it takes to local host page browser and nothing happens\r\n\r\n\r\n\r\n**To Reproduce**\r\n\r\n\r\n\r\n**Expected behavior**\r\n\r\n\r\n\r\n**Screenshots**\r\n\r\n\r\n\r\n**Additional context**\r\n\r\n\r\n",
+ "labels": [
+ {
+ "name": "bug",
+ "color": "d73a4a",
+ "description": "Something isn't working"
+ }
+ ],
+ "comments": [
+ {
+ "author": "jaycoolh",
+ "body": "Same error here"
+ },
+ {
+ "author": "jaycoolh",
+ "body": "I am using: v0.1.6-alpha.4\r\n\r\nnode --version \r\nv23.3.0\r\n\r\npnpm --version \r\n9.15.0\r\n\r\n pnpm start --character=\"characters/trump.character.json\""
+ },
+ {
+ "author": "jaycoolh",
+ "body": "[\"\u25ce Visit the following URL to chat with your agents:\"]\r\n\r\n [\"\u25ce http://localhost:5173\"]\r\n\r\n [\"\u2713 REST API bound to 0.0.0.0:3000. If running locally, access it at http://localhost:3000.\"]\r\n \r\n \r\n 'http://localhost:5173' is just a dead link"
+ },
+ {
+ "author": "jaycoolh",
+ "body": "@Longame208 \r\n\r\nin the package.json there is a script `pnpm start:client`\r\n\r\nthis spins up the app http://localhost:5173\r\n\r\nNeed to include this in the quickstart guide https://ai16z.github.io/eliza/docs/quickstart/#next-steps\r\n\r\n(or even better, include the `pnpm start:client` in the `pnpm start` command"
+ }
+ ]
+ }
+ ]
+ },
+ "engagement": {
+ "total_comments": 4,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "tekspirit",
+ "score": 8,
+ "summary": "tekspirit is currently working on addressing a bug related to double backslashes when posting to X. This is the only issue they have been actively involved in over the last 90 days, with no code changes or commits recorded during this period.",
+ "avatar_url": "https://avatars.githubusercontent.com/u/1505004?u=59283365bced9a568f4a3ea86310ee38f4b5003c&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 0,
+ "commits": [],
+ "pull_requests": []
+ },
+ "issues": {
+ "total_opened": 1,
+ "opened": [
+ {
+ "number": 1206,
+ "title": "double backslash when posting to X",
+ "state": "OPEN",
+ "created_at": "2024-12-18T14:02:01Z",
+ "updated_at": "2024-12-18T18:29:36Z",
+ "body": "**Describe the bug**\r\nEliza is posting an '\\\\n\\\\n' to X instead of two carriage returns. This is using CLAUDE_VERTEX.\r\n\r\nIt appears every post has this symptom.\r\n**To Reproduce**\r\nI run on a mac, so compiled eliza with settings for mac. Example: https://x.com/waggyhappytail/status/1869352624656716210\r\n\r\nI run with pnpm tsx agent/src/index.ts\r\n**Expected behavior**\r\nIt should post carriage returns.\r\n\r\n\r\n**Screenshots**\r\nhttps://imgur.com/a/BFJ2RlH\r\n\r\n\r\n**Additional context**\r\nIf I exit eliza and restart, it doesn't always reproduce the issue. The only filed edited is the character file.\r\n\r\n",
+ "labels": [
+ {
+ "name": "bug",
+ "color": "d73a4a",
+ "description": "Something isn't working"
+ }
+ ],
+ "comments": [
+ {
+ "author": "usama-saeed831",
+ "body": "@tekspirit I fix this by adding following line in\r\npacakages -> client-twitter -> src -> post.js\r\nin \"generateNewTweet()\" function\r\n\r\nafter\r\n**cleanedContent = removeQuotes(content);**\r\n\r\n`cleanedContent = cleanedContent.replace(/\\\\n/g, '\\n');`"
+ },
+ {
+ "author": "owlcode",
+ "body": "I think `.replaceAll` is more appropriate. I fixed it here https://github.com/ai16z/eliza/pull/1141. I guess it waits for a release."
+ }
+ ]
+ }
+ ]
+ },
+ "engagement": {
+ "total_comments": 2,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "odilitime",
+ "score": 7,
+ "summary": "odilitime is currently working on implementing client secrets validation and loading characters from a database at both load time and runtime in the agent, scripts, and packages code areas. These changes are reflected in two pull requests, with conflicts resolved for the character loading feature.",
+ "avatar_url": "https://avatars.githubusercontent.com/u/16395496?u=45c152d8433e37c62520e66c0dd6d754ccf3eaf4&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 2,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1210,
+ "title": "feat: loading characters from db at load and runtime (conflicts resolved)",
+ "state": "OPEN",
+ "merged": false,
+ "created_at": "2024-12-18T18:10:29Z",
+ "updated_at": "2024-12-18T18:25:06Z",
+ "body": "Originally #551, this is a resubmission\r\n\r\n\r\n\r\n# Relates to:\r\nLoading Characters from db(sqlite/postgres) during runtime (via a REST API call) and\r\nduring start/load time.\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n_Medium_\r\nNone of these changes will affect existing workflow as its handled by env variables\r\nFETCH_FROM_DB (bool) - default: null/false - For loading characters from DB\r\nAGENT_RUNTIME_MANAGEMENT (bool) - default: null/false - For loading characters from Db at runtime\r\n\r\nFrom security standpoint, all character specific secrets (EG: TWITTER_PASSWORD or OPENAI_API_KEY) is AES-256 encrypted and stored in DB\r\n\r\n\r\n\r\n# Background\r\nFor a production ready - multi-character Eliza setup, we want to load new characters in runtime via API calls.\r\nWe do not want to restart the Eliza server for each new character.\r\n\r\n_ASSUMPTION:_ \r\nAn api or script exists to store the characters in DB.\r\nThe api uses the same stringToUUID method to create consistent UUIDs for a character and store in DB.\r\n\r\n## What does this PR do?\r\n- Allows loading characters from DB during start\r\n- Allows loading characters via REST API from DB during runtime\r\n- The characters are stored in TEXT/JSONB format - similar to the character Agent file in sqlite and postgres respectively\r\n- Securely encrypts each character's secrets using AES-256 encryption and then stores in DB (Decrypt after fetch)\r\n- Proper error handling for all scenarios \r\n - Character already loaded in runtime\r\n - Character does not exist in db\r\n\r\n## What kind of change is this?\r\nThis is a new Feature\r\n\r\nWhy?\r\nCurrently \r\n1) For adding any new agent, we need to restart the Eliza server => All the agents and its clients are loaded again - All previous tweets (incase of twitter client), interactions are processed again. Any existing direct or telegram conversation is lost. \r\n2) Not a straight-forward mechanism to add new agents - Now with a REST API - load new agents.\r\n\r\nWhy are we doing this?\r\nTo take a step towards multi-character production setup\r\n\r\n### Code Changes made and why?\r\n1. **Created a new table in postgres and sqlite** - Added in the seed file/script of both DBs\r\n`\r\nexport type CharacterTable = {\r\n id: UUID; // created from stringToUUID - unique and consistent for name\r\n name: string;\r\n characterState: Character; // A JSONB or TEXT - that maps the character\r\n secretsIV?: Secrets; // Initialisation Vector for each secrets\r\n};\r\n`\r\n**Also added the above in packages/core/src/types.ts**\r\n2. **in SqliteAdapter and PostgresAdapter** - created a new function to load from this characters table\r\n3. **in Agents/src/index.ts** -> \r\n- Assign Directclient to a global variable - along with set and get methods. This is to allow the same direct client be used for character(agent) runtime creation\r\n- A function loadCharactersFromDb loadCharactersFromDb(\r\n characterNames?: string\r\n ): Promise \r\n - if any characterNames argument received, it fetches only those characters from db\r\n - else fetches all characters\r\n - This handles encryption and decryption of secrets if secrets are present in a character\r\n - uses env.ENCRYPTION_KEY\r\n- An express server\r\n - The server starts only when the env AGENT_RUNTIME_MANAGEMENT == true\r\n - _Why not use the same express server in DirectClient?_ DirectClient does not have access to the DB methods and all the agent-specific handling methods\r\n - ENDPOINT: \"/load/:agentName\" METHOD: Post\r\n - PORT: default. - 3001, overwritten by env AGENT_PORT\r\n4. **in packages/client-direct/src/index.ts**\r\n- Added ENDPOINT: \"/load/:agentName\" METHOD: Post\r\n - This endpoint (is a proxy) that routes request to the agent server's route\r\n - Before proxying, checks if AGENT_RUNTIME_MANAGEMENT ==true and if agents already in runtime\r\n5. created a file **packages/core/src/crypt.ts**\r\n- This handles the encryption and decryption methods\r\n6. created scripts that parses a character json file or all files in a folder and inserts in DB\r\n- Location: scripts/importCharactersInDB/[postgres/sqlite]/insertInDb.js\r\nRequires env variable\r\n`\r\nPOSTGRES_URL= # if postgres\r\nENCRYPTION_KEY=\"\"\r\nINPUT_PATH=characters # the folder path to load the characters from\r\nSQLITE_DB_PATH= #if you want to change db path Default: agent/data/db.sqlite\r\n`\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\nNot needed necessarily.\r\nNew ENV variables and explanations are added in .env.example\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\nI have tested the scenarios in detailed testing steps in both sqlite and postgres.\r\n\r\n## Where should a reviewer start?\r\n- agent/src/index.js \r\n- Line 418 and 531\r\npackages/client-direct/src/index.js\r\n- Line 271\r\n\r\n## Detailed testing steps\r\n**INIT STEP:** \r\n1. creating character table(use the schema.sql or sqliteTables.ts ) \r\n2. loading characters in DB (used the above mentioned scripts in `scripts/importCharactersInDB/[postgres/sqlite]/insertInDb.js` - \r\n - also added to the characters tate and trump - TWITTER_USERNAME, TWITTER_PASSWORD, TWITTER_EMAIL to its settings.secrets and twitter to client) to test secrets encryption and decryption\r\n\r\n**I have tested the following scenarios**\r\n1. Fetching from database during start\r\n- set env FETCH_FROM_DB=true\r\n- `pnpm start`\r\n- Will function as usual\r\n- if we want to test postgres, set env POSTGRES_URL=''\r\n2. Loading an agent during runtime\r\n- set env FETCH_FROM_DB=false #if true, we can't test load as all characters in db will be loaded\r\n- set env AGENT_RUNTIME_MANAGEMENT=true\r\n- set env ENCRYPTION_KEY= #use the same encryption key used in insertInDB.js script\r\n- set env AGENT_PORT=4000 #can be empty if we want to pick default port 3001\r\n`pnpm start`\r\n- This will load with the default character Eliza\r\n- `curl --location --request POST 'http://localhost:3000/load/trump'` - replace port and character name if using different characters\r\n- SUB SCENARIO 1: agent is loaded and we get success code 200\r\n- SUB SCENARIO 2: agent is already loaded and we get error code 409\r\n- SUB SCENARIO 3: agent does not exist in db and we get error code 404\r\n- SUB SCENARIO 4: Error during agent load - like incorrect twitter - error code 500\r\n- if we want to test postgres, set env POSTGRES_URL=''\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
+ {
+ "path": ".env.example",
+ "additions": 7,
+ "deletions": 0
+ },
+ {
+ "path": "agent/src/index.ts",
+ "additions": 199,
+ "deletions": 0
+ },
+ {
+ "path": "packages/adapter-postgres/schema.sql",
+ "additions": 9,
+ "deletions": 0
+ },
+ {
+ "path": "packages/adapter-postgres/src/index.ts",
+ "additions": 48,
+ "deletions": 1
+ },
+ {
+ "path": "packages/adapter-sqlite/src/index.ts",
+ "additions": 56,
+ "deletions": 0
+ },
+ {
+ "path": "packages/adapter-sqlite/src/sqliteTables.ts",
+ "additions": 10,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-direct/src/index.ts",
+ "additions": 45,
+ "deletions": 4
+ },
+ {
+ "path": "packages/core/src/crypt.ts",
+ "additions": 63,
+ "deletions": 0
+ },
+ {
+ "path": "packages/core/src/index.ts",
+ "additions": 1,
+ "deletions": 0
+ },
+ {
+ "path": "packages/core/src/types.ts",
+ "additions": 20,
+ "deletions": 0
+ },
+ {
+ "path": "scripts/importCharactersInDB/crypt.js",
+ "additions": 112,
+ "deletions": 0
+ },
+ {
+ "path": "scripts/importCharactersInDB/postgres/FetchFromDb.js",
+ "additions": 143,
+ "deletions": 0
+ },
+ {
+ "path": "scripts/importCharactersInDB/postgres/insertInDb.js",
+ "additions": 223,
+ "deletions": 0
+ },
+ {
+ "path": "scripts/importCharactersInDB/sqlite/fetchFromDb.js",
+ "additions": 111,
+ "deletions": 0
+ },
+ {
+ "path": "scripts/importCharactersInDB/sqlite/insertInDb.js",
+ "additions": 188,
+ "deletions": 0
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ },
+ {
+ "number": 1198,
+ "title": "feat: Client secrets validation",
+ "state": "OPEN",
+ "merged": false,
+ "created_at": "2024-12-18T07:17:10Z",
+ "updated_at": "2024-12-18T22:33:35Z",
+ "body": "# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nChecks that secrets are valid before adding client\r\n\r\n## What kind of change is this?\r\n\r\nImprovements (misc. changes to existing features)\r\n\r\n## Why are we doing this? Any context or related work?\r\n\r\nMake the daemon not crash when REST API is adding/updating/deleting agents\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n",
+ "files": [
+ {
+ "path": "agent/src/index.ts",
+ "additions": 22,
+ "deletions": 9
+ },
+ {
+ "path": "packages/client-discord/src/index.ts",
+ "additions": 30,
+ "deletions": 3
+ },
+ {
+ "path": "packages/client-telegram/package.json",
+ "additions": 1,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-telegram/src/index.ts",
+ "additions": 22,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-twitter/src/base.ts",
+ "additions": 14,
+ "deletions": 7
+ },
+ {
+ "path": "packages/client-twitter/src/index.ts",
+ "additions": 17,
+ "deletions": 1
+ },
+ {
+ "path": "packages/core/src/types.ts",
+ "additions": 3,
+ "deletions": 0
+ }
+ ],
+ "reviews": [
+ {
+ "author": "cygaar",
+ "state": "COMMENTED",
+ "body": ""
+ }
+ ],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 1,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "AbdelStark",
+ "score": 6,
+ "summary": "AbdelStark is currently working on implementing the Nostr client, with a focus on the agent and packages code areas. This contribution includes a single pull request that has not been merged yet, with no additional commits or code changes in the last 90 days.",
+ "avatar_url": "https://avatars.githubusercontent.com/u/45264458?u=6ea3a3cec4fd224af9afe756466df041687486a2&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1203,
+ "title": "feat: Implement Nostr client",
+ "state": "OPEN",
+ "merged": false,
+ "created_at": "2024-12-18T09:55:14Z",
+ "updated_at": "2024-12-18T20:52:26Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow. It's an optional client to use. \r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\nFeatures (non-breaking change which adds functionality)\r\n\r\n## Why are we doing this? Any context or related work?\r\n\r\nNostr is the simplest open protocol that is able to create a censorship-resistant global \"social\" network once and for all.\r\n\r\nIt's nature and strong focus on censorship-resistance makes it a perfect fit for the Eliza agent framework.\r\n\r\n## Configuration\r\n\r\nHere are the env variables that need to be set in the `.env` file:\r\n\r\n| Variable | Description | Example |\r\n| ---------------------- | ------------------------------------------------------ | ------------------------------------------- |\r\n| NOSTR_RELAYS | The list of Nostr relays to connect to | wss://relay.damus.io,wss://relay.primal.net |\r\n| NOSTR_NSEC_KEY | Nostr Private Key (starts with nsec) | nsec1... |\r\n| NOSTR_NPUB_KEY | Nostr Public Key (starts with npub) | npub1... |\r\n| NOSTR_POLL_INTERVAL | How often (in seconds) to check for Nostr interactions | 120 |\r\n| NOSTR_POST_IMMEDIATELY | Whether to post immediately or not | false |\r\n| NOSTR_DRY_RUN | Whether to dry run or not | false |\r\n\r\nSample configuration:\r\n\r\n```bash\r\n# The list of Nostr relays to connect to.\r\nNOSTR_RELAYS=\"wss://relay.damus.io,wss://relay.primal.net\"\r\n# Nostr Private Key (starts with nsec)\r\nNOSTR_NSEC_KEY=\"nsec1...\"\r\n# Nostr Public Key (starts with npub)\r\nNOSTR_NPUB_KEY=\"npub1...\"\r\n# How often (in seconds) the bot should check for Nostr interactions (default: 2 minutes)\r\nNOSTR_POLL_INTERVAL=120\r\n# Whether to post immediately or not\r\nNOSTR_POST_IMMEDIATELY=false\r\n# Whether to dry run or not\r\nNOSTR_DRY_RUN=false\r\n```\r\n\r\nNote: The `nsec` configured key is used as the default signer when instantiating the `NDK` instance.\r\n\r\nNostr client must be set in the Character definition, example:\r\n```json\r\n{\r\n \"name\": \"goku\",\r\n \"clients\": [\"nostr\"],\r\n \"modelProvider\": \"anthropic\"\r\n \r\n}\r\n```\r\n\r\n## Changes summary\r\n\r\n- Add env variables for Nostr in `.env.example`.\r\n- Introduce [Nostr NDK](https://github.com/nostr-dev-kit/ndk) for Nostr client.\r\n- Implement Nostr client in Eliza (in `packages/client-nostr`).\r\n - Implement `NostrClient` class.\r\n - Implement `NostrInteractionManager` in `packages/client-nostr/src/interactions.ts`. For now it's a no op service.\r\n - Implement `NostrPostManager` in `packages/client-nostr/src/post.ts`.\r\n\r\n## Resources\r\n\r\n- [Nostr Github](https://github.com/nostr-protocol/nostr)\r\n- [What is Nostr ?](https://nostr.org/)\r\n- [Nostr online dev tools](https://nostrtool.com/)\r\n\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n- As anon\r\n\u00a0 - run `pnpm run dev --characters=\"characters/goku.character.json\"` \r\n\u00a0 - verify that Nostr notes are posted\r\n\r\n## Screenshots\r\n\r\nScreenshot of Nostr notes posted by the agent:\r\n\r\n![Screenshot 2024-12-17 at 18 34 11](https://github.com/user-attachments/assets/e0977daa-8f6d-4943-837e-d6426a575443)\r\n\r\nScreenshot of terminal of the running agent with logs:\r\n\r\n![Screenshot 2024-12-17 at 18 34 27](https://github.com/user-attachments/assets/a1ec8c99-b544-468e-94e2-d72f55521157)\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n## Discord username\r\n\r\nabdel.stark\r\n",
+ "files": [
+ {
+ "path": ".env.example",
+ "additions": 14,
+ "deletions": 0
+ },
+ {
+ "path": "agent/package.json",
+ "additions": 60,
+ "deletions": 59
+ },
+ {
+ "path": "agent/src/index.ts",
+ "additions": 18,
+ "deletions": 8
+ },
+ {
+ "path": "packages/client-nostr/package.json",
+ "additions": 18,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-nostr/src/actions.ts",
+ "additions": 37,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-nostr/src/client.ts",
+ "additions": 66,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-nostr/src/index.ts",
+ "additions": 61,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-nostr/src/interactions.ts",
+ "additions": 36,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-nostr/src/memory.ts",
+ "additions": 36,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-nostr/src/post.ts",
+ "additions": 188,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-nostr/src/prompts.ts",
+ "additions": 88,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-nostr/src/types.ts",
+ "additions": 9,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-nostr/src/utils.ts",
+ "additions": 143,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-nostr/tsconfig.json",
+ "additions": 12,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-nostr/tsup.config.ts",
+ "additions": 20,
+ "deletions": 0
+ },
+ {
+ "path": "packages/core/src/types.ts",
+ "additions": 8,
+ "deletions": 4
+ },
+ {
+ "path": "packages/plugin-node/src/services/awsS3.ts",
+ "additions": 42,
+ "deletions": 18
+ },
+ {
+ "path": "pnpm-lock.yaml",
+ "additions": 146,
+ "deletions": 0
+ }
+ ],
+ "reviews": [
+ {
+ "author": "odilitime",
+ "state": "COMMENTED",
+ "body": ""
+ }
+ ],
+ "comments": [
+ {
+ "author": "odilitime",
+ "body": "S3 changes trip me up for a second but I think I get it now"
+ },
+ {
+ "author": "AbdelStark",
+ "body": "> S3 changes trip me up for a second but I think I get it now\r\n\r\nYeah this is not related to the Nostr client, but for some reasons there was an error because of a mismatch of interface for the S3 service, and I had to fix it."
+ }
+ ]
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 1,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "chefron",
+ "score": 5,
+ "summary": "chefron is currently working on modifying Twitter interaction rules and creating a SoundCloud plugin. The main focus of their recent activity is in the documentation code areas.",
+ "avatar_url": "https://avatars.githubusercontent.com/u/98501301?v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1215,
+ "title": "modify Twitter interaction rules, create SoundCloud plugin",
+ "state": "CLOSED",
+ "merged": false,
+ "created_at": "2024-12-18T22:13:34Z",
+ "updated_at": "2024-12-18T22:14:37Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
+ {
+ "path": "docs/api/classes/AgentRuntime.md",
+ "additions": 41,
+ "deletions": 41
+ },
+ {
+ "path": "docs/api/classes/CacheManager.md",
+ "additions": 6,
+ "deletions": 6
+ },
+ {
+ "path": "docs/api/classes/DatabaseAdapter.md",
+ "additions": 42,
+ "deletions": 42
+ },
+ {
+ "path": "docs/api/classes/DbCacheAdapter.md",
+ "additions": 5,
+ "deletions": 5
+ },
+ {
+ "path": "docs/api/classes/FsCacheAdapter.md",
+ "additions": 5,
+ "deletions": 5
+ },
+ {
+ "path": "docs/api/classes/MemoryCacheAdapter.md",
+ "additions": 6,
+ "deletions": 6
+ },
+ {
+ "path": "docs/api/classes/MemoryManager.md",
+ "additions": 14,
+ "deletions": 14
+ },
+ {
+ "path": "docs/api/classes/Service.md",
+ "additions": 5,
+ "deletions": 5
+ },
+ {
+ "path": "docs/api/enumerations/Clients.md",
+ "additions": 15,
+ "deletions": 5
+ },
+ {
+ "path": "docs/api/enumerations/GoalStatus.md",
+ "additions": 4,
+ "deletions": 4
+ },
+ {
+ "path": "docs/api/enumerations/LoggingLevel.md",
+ "additions": 4,
+ "deletions": 4
+ },
+ {
+ "path": "docs/api/enumerations/ModelClass.md",
+ "additions": 6,
+ "deletions": 6
+ },
+ {
+ "path": "docs/api/enumerations/ModelProviderName.md",
+ "additions": 20,
+ "deletions": 20
+ },
+ {
+ "path": "docs/api/enumerations/ServiceType.md",
+ "additions": 9,
+ "deletions": 9
+ },
+ {
+ "path": "docs/api/functions/addHeader.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/composeActionExamples.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/composeContext.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/configureSettings.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/createGoal.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/createRelationship.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/embed.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/findNearestEnvFile.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/formatActionNames.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/formatActions.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/formatActors.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/formatEvaluatorExampleDescriptions.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/formatEvaluatorExamples.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/formatEvaluatorNames.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/formatEvaluators.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/formatGoalsAsString.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/formatMessages.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/formatPosts.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/formatRelationships.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/formatTimestamp.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/generateCaption.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/generateImage.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/generateMessageResponse.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/generateObject.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/generateObjectArray.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/generateObjectV2.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/generateShouldRespond.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/generateText.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/generateTextArray.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/generateTrueOrFalse.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/generateWebSearch.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/getActorDetails.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/getEmbeddingConfig.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/getEmbeddingType.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/getEmbeddingZeroVector.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/getEndpoint.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/getEnvVariable.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/getGoals.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/getModel.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/getProviders.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/getRelationship.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/getRelationships.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/handleProvider.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/hasEnvVariable.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/loadEnvConfig.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/parseBooleanFromText.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/parseJSONObjectFromText.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/parseJsonArrayFromText.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/parseShouldRespondFromText.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/splitChunks.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/stringToUuid.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/trimTokens.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/updateGoal.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/validateCharacterConfig.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/functions/validateEnv.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/index.md",
+ "additions": 1,
+ "deletions": 1
+ },
+ {
+ "path": "docs/api/interfaces/Account.md",
+ "additions": 7,
+ "deletions": 7
+ },
+ {
+ "path": "docs/api/interfaces/Action.md",
+ "additions": 7,
+ "deletions": 7
+ },
+ {
+ "path": "docs/api/interfaces/ActionExample.md",
+ "additions": 3,
+ "deletions": 3
+ },
+ {
+ "path": "docs/api/interfaces/Actor.md",
+ "additions": 5,
+ "deletions": 5
+ },
+ {
+ "path": "docs/api/interfaces/Content.md",
+ "additions": 7,
+ "deletions": 7
+ },
+ {
+ "path": "docs/api/interfaces/ConversationExample.md",
+ "additions": 3,
+ "deletions": 3
+ },
+ {
+ "path": "docs/api/interfaces/EvaluationExample.md",
+ "additions": 4,
+ "deletions": 4
+ },
+ {
+ "path": "docs/api/interfaces/Evaluator.md",
+ "additions": 8,
+ "deletions": 8
+ },
+ {
+ "path": "docs/api/interfaces/GenerationOptions.md",
+ "additions": 10,
+ "deletions": 10
+ },
+ {
+ "path": "docs/api/interfaces/Goal.md",
+ "additions": 7,
+ "deletions": 7
+ },
+ {
+ "path": "docs/api/interfaces/IAgentRuntime.md",
+ "additions": 36,
+ "deletions": 36
+ },
+ {
+ "path": "docs/api/interfaces/IBrowserService.md",
+ "additions": 5,
+ "deletions": 5
+ },
+ {
+ "path": "docs/api/interfaces/ICacheAdapter.md",
+ "additions": 4,
+ "deletions": 4
+ },
+ {
+ "path": "docs/api/interfaces/ICacheManager.md",
+ "additions": 4,
+ "deletions": 4
+ },
+ {
+ "path": "docs/api/interfaces/IDatabaseAdapter.md",
+ "additions": 38,
+ "deletions": 38
+ },
+ {
+ "path": "docs/api/interfaces/IDatabaseCacheAdapter.md",
+ "additions": 4,
+ "deletions": 4
+ },
+ {
+ "path": "docs/api/interfaces/IImageDescriptionService.md",
+ "additions": 4,
+ "deletions": 4
+ },
+ {
+ "path": "docs/api/interfaces/IMemoryManager.md",
+ "additions": 14,
+ "deletions": 14
+ },
+ {
+ "path": "docs/api/interfaces/IPdfService.md",
+ "additions": 5,
+ "deletions": 5
+ },
+ {
+ "path": "docs/api/interfaces/ISpeechService.md",
+ "additions": 5,
+ "deletions": 5
+ },
+ {
+ "path": "docs/api/interfaces/ITextGenerationService.md",
+ "additions": 7,
+ "deletions": 7
+ },
+ {
+ "path": "docs/api/interfaces/ITranscriptionService.md",
+ "additions": 7,
+ "deletions": 7
+ },
+ {
+ "path": "docs/api/interfaces/IVideoService.md",
+ "additions": 7,
+ "deletions": 7
+ },
+ {
+ "path": "docs/api/interfaces/Memory.md",
+ "additions": 10,
+ "deletions": 10
+ },
+ {
+ "path": "docs/api/interfaces/MessageExample.md",
+ "additions": 3,
+ "deletions": 3
+ },
+ {
+ "path": "docs/api/interfaces/Objective.md",
+ "additions": 4,
+ "deletions": 4
+ },
+ {
+ "path": "docs/api/interfaces/Participant.md",
+ "additions": 3,
+ "deletions": 3
+ },
+ {
+ "path": "docs/api/interfaces/Provider.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "docs/api/interfaces/Relationship.md",
+ "additions": 8,
+ "deletions": 8
+ },
+ {
+ "path": "docs/api/interfaces/Room.md",
+ "additions": 3,
+ "deletions": 3
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "vpavlin",
+ "score": 5,
+ "summary": "vpavlin is currently working on a pull request to fix an issue related to generating text and adding Akash to the switch. The code changes are focused on the agent and packages code areas.",
+ "avatar_url": "https://avatars.githubusercontent.com/u/4759808?u=d045a41a43fa2deabfc3115236cc1e8b0509b164&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1214,
+ "title": "fix: fail when cannot get token, add Akash to generateText switch",
+ "state": "OPEN",
+ "merged": false,
+ "created_at": "2024-12-18T21:21:53Z",
+ "updated_at": "2024-12-18T21:28:14Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n* this throws when we cannot get a token based on provider (otherwise it silently runs and prints auth errors) - it is a change in behaviour\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nThis fixes 2 issues I've hit:\r\n* When I setup Akash provider I got `Unsupported provider error` because it was missing in `generateText` switch\r\n* When I was trying to update eliza-starter and use it with Akash or Venice, I'd get auth errors because it could not get the provider token - since the `getTokenForProvider` did not account for the new providers, but it would not fail there, hence adding a `default` case which throwa\r\n\r\ncc @MbBrainz\r\n\r\n## What kind of change is this?\r\n\r\nBug fixes\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n* You can try to use Akash provider and chat with the agent - it should result in `Unsupported provider error` without this change\r\n* You can also try to configure some unknown provider and gcall `getTokenForProvider` andthe function will not report any errors without this change \r\n\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n## Discord username\r\n@vpavlin\r\n\r\n",
+ "files": [
+ {
+ "path": "agent/src/index.ts",
+ "additions": 4,
+ "deletions": 0
+ },
+ {
+ "path": "packages/core/src/generation.ts",
+ "additions": 2,
+ "deletions": 1
+ }
+ ],
+ "reviews": [],
+ "comments": [
+ {
+ "author": "vpavlin",
+ "body": "Wait, should I use `develop` or `main` as a base?"
+ }
+ ]
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "netdragonx",
+ "score": 5,
+ "summary": "netdragonx is currently working on fixing optional chaining on search to prevent startup errors when search is not enabled. This work is focused on the packages code area, with one pull request submitted but not yet merged in the last 90 days.",
+ "avatar_url": "https://avatars.githubusercontent.com/u/100390508?u=0805360e7258c798433b4d3f63a4c0457c178942&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1202,
+ "title": "fix: optional chaining on search to avoid startup errors when search is not enabled",
+ "state": "OPEN",
+ "merged": false,
+ "created_at": "2024-12-18T09:52:31Z",
+ "updated_at": "2024-12-18T10:11:57Z",
+ "body": "\r\n\r\n# Relates to:\r\nclient-twitter\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\nLow\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nAdds optional chaining to twitter search setup to prevent an error on startup when search code is active but not enabled.\r\n\r\n## What kind of change is this?\r\nBug fix.\r\n\r\n\r\n\r\n\r\n\r\n## Why are we doing this? Any context or related work?\r\nWhen working with twitter search, the agent throws errors when I activate the search code but disable search in .env\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\nRun twitter agent with `TWITTER_SEARCH_ENABLE=FALSE` and there should be no error on startup\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
+ {
+ "path": "packages/client-twitter/src/index.ts",
+ "additions": 14,
+ "deletions": 17
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "Hdpbilly",
+ "score": 5,
+ "summary": "Hdpbilly is currently working on adding 12 new routes for runtime parameters in the packages code area, with a recent pull request reflecting this ongoing effort.",
+ "avatar_url": "https://avatars.githubusercontent.com/u/168072844?u=04895ee023be4c6ff9a630d14f55c15ee0d9f502&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1199,
+ "title": "feat: added 12 new routes for runtime parameters",
+ "state": "OPEN",
+ "merged": false,
+ "created_at": "2024-12-18T08:04:22Z",
+ "updated_at": "2024-12-18T17:23:19Z",
+ "body": "\r\n\r\n# Relates to:\r\nN/A - Initial API routes documentation\r\n\r\n\r\n\r\n\r\n# Risks\r\nLow - These are read-only API endpoints that expose internal agent state. No write operations except for /set endpoint.\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nAdds comprehensive API routes to the agent framework that expose internal state and capabilities through REST endpoints. This includes routes for:\r\n\r\nAgent state and configuration\r\nMemory and cache inspection\r\nService and plugin discovery\r\nMetrics and monitoring\r\nRelationship and room management\r\n## What kind of change is this?\r\nFeatures (non-breaking change which adds functionality)\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\nChanges required to the project documentation to document all available API endpoints and their usage.\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\nStart with basic routes like /agents and /agents/:agentId to verify basic functionality\r\nTest state inspection routes like /state, /memories, and /cache\r\nVerify component discovery through /services, /plugins, and /providers\r\nCheck monitoring capabilities via /metrics\r\n## Detailed testing steps\r\nStart agent framework with npm start\r\nGet list of agents: curl http://localhost:3000/agents\r\nFor each agent ID:\r\n\r\nTest state endpoint: curl http://localhost:3000/agents/{id}/state\r\nVerify services: curl http://localhost:3000/agents/{id}/services\r\nCheck metrics: curl http://localhost:3000/agents/{id}/metrics\r\nView memories: curl http://localhost:3000/agents/{id}/memories\r\nInspect plugins: curl http://localhost:3000/agents/{id}/plugins\r\nTest providers: curl http://localhost:3000/agents/{id}/providers\r\nVerify relationships: curl http://localhost:3000/agents/{id}/relationships\r\nCheck rooms: curl http://localhost:3000/agents/{id}/rooms\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nRequires server restart to enable new API endpoints. No database changes needed.\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
+ {
+ "path": "packages/client-direct/src/api.ts",
+ "additions": 259,
+ "deletions": 0
+ }
+ ],
+ "reviews": [
+ {
+ "author": "odilitime",
+ "state": "APPROVED",
+ "body": ""
+ }
+ ],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 1,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "cwrage77",
+ "score": 5,
+ "summary": "cwrage77 is currently working on a feature/news plugin, with a focus on code areas such as characters, agent, and packages. This includes one open pull request, but no merged changes, commits, or reported issues in the last 90 days.",
+ "avatar_url": "https://avatars.githubusercontent.com/u/10321212?u=deda48521940edac89df630f85a5f9df5cdcb95b&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1193,
+ "title": "Feature/news plugin",
+ "state": "CLOSED",
+ "merged": false,
+ "created_at": "2024-12-18T02:55:07Z",
+ "updated_at": "2024-12-18T02:55:44Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
+ {
+ "path": ".gitignore",
+ "additions": 56,
+ "deletions": 54
+ },
+ {
+ "path": "PZ-README.md",
+ "additions": 14,
+ "deletions": 0
+ },
+ {
+ "path": "agent/package.json",
+ "additions": 1,
+ "deletions": 0
+ },
+ {
+ "path": "agent/src/index.ts",
+ "additions": 2,
+ "deletions": 0
+ },
+ {
+ "path": "characters/courage.character.json",
+ "additions": 182,
+ "deletions": 0
+ },
+ {
+ "path": "characters/cryptodegen.character.json",
+ "additions": 265,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/.npmignore",
+ "additions": 6,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/eslint.config.mjs",
+ "additions": 3,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/package.json",
+ "additions": 19,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/src/actions/index.ts",
+ "additions": 2,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/src/actions/newsSearch.ts",
+ "additions": 215,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/src/evaluators/index.ts",
+ "additions": 1,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/src/index.ts",
+ "additions": 16,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/src/providers/index.ts",
+ "additions": 0,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/tsconfig.json",
+ "additions": 13,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/tsup.config.ts",
+ "additions": 20,
+ "deletions": 0
+ },
+ {
+ "path": "pnpm-lock.yaml",
+ "additions": 15,
+ "deletions": 22
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "BlockchainCake",
+ "score": 3,
+ "summary": "BlockchainCake is currently working on adding an EVM Client for blockchain event monitoring, focusing on code areas such as agent and packages. This work includes a single pull request with no merged changes within the last 90 days.",
+ "avatar_url": "https://avatars.githubusercontent.com/u/24722374?u=c5a6378d6a918ac7d6ae7de796e4cd85ca91c4c3&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1212,
+ "title": "Add EVM Client for blockchain event monitoring",
+ "state": "OPEN",
+ "merged": false,
+ "created_at": "2024-12-18T20:54:14Z",
+ "updated_at": "2024-12-18T20:54:14Z",
+ "body": "# Add EVM Client for blockchain events\r\n\r\nThis PR adds a new client that enables Eliza agents to monitor and discuss EVM blockchain events through Discord.\r\n\r\n## Features\r\n- WebSocket connection to EVM-compatible chains\r\n- Smart contract event monitoring and decoding\r\n- Natural language discussion of events through Discord\r\n- Event memory storage and formatting\r\n- Automatic reconnection handling\r\n\r\n## Implementation\r\n- Core WebSocket client with ethers.js\r\n- Message manager for event processing\r\n- Discord channel integration\r\n- USDC/DAI Uniswap swap monitoring as reference implementation\r\n\r\n## Documentation\r\n- Full README with setup guide\r\n- Implementation examples\r\n- Code comments and type definitions\r\n\r\nThis extends Eliza's capabilities with blockchain event monitoring while following the framework's patterns for client integration.",
+ "files": [
+ {
+ "path": "agent/package.json",
+ "additions": 2,
+ "deletions": 0
+ },
+ {
+ "path": "agent/src/index.ts",
+ "additions": 6,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-discord/src/index.ts",
+ "additions": 32,
+ "deletions": 1
+ },
+ {
+ "path": "packages/client-evm/README.md",
+ "additions": 78,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-evm/config.example.json",
+ "additions": 40,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-evm/config.json",
+ "additions": 100,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-evm/package.json",
+ "additions": 21,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-evm/src/evm-listener.ts",
+ "additions": 242,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-evm/src/implementations/formatters.ts",
+ "additions": 25,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-evm/src/implementations/templates.ts",
+ "additions": 35,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-evm/src/index.ts",
+ "additions": 85,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-evm/src/messages.ts",
+ "additions": 176,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-evm/src/types.ts",
+ "additions": 66,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-evm/tsconfig.json",
+ "additions": 23,
+ "deletions": 0
+ },
+ {
+ "path": "packages/core/src/types.ts",
+ "additions": 1,
+ "deletions": 0
+ },
+ {
+ "path": "pnpm-lock.yaml",
+ "additions": 366,
+ "deletions": 44
+ },
+ {
+ "path": "tsconfig.json",
+ "additions": 21,
+ "deletions": 0
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "tobbelobb",
+ "score": 3,
+ "summary": "tobbelobb is currently working on fixing an issue related to writing a summary file before attempting to cache it in the \"packages\" code area. This is reflected in a recent pull request, with no commits or code changes reported in the last 90 days.",
+ "avatar_url": "https://avatars.githubusercontent.com/u/5753253?u=06987c2b4cb233fa0a612753bf4cb151862c07b4&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1205,
+ "title": "fix: write summary file before trying to cache it",
+ "state": "OPEN",
+ "merged": false,
+ "created_at": "2024-12-18T12:28:33Z",
+ "updated_at": "2024-12-18T17:17:36Z",
+ "body": " - Also give a .md file extension for prettier rendering in Discord\r\n\r\n# Relates to:\r\nWhen I used my agent to CHAT_WITH_ATTACHMENTS it always failed to stat the summary file because it had not been created.\r\n\r\n# Risks\r\nLow. Writes summaries to disk, could become a lot of data if agent writes a lot of summaries.\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nWrite summary file before trying to cache it\r\n\r\n## What kind of change is this?\r\nBug fix (non-breaking change which fixes an issue)\r\n\r\n## Why are we doing this? Any context or related work?\r\nYeah, I'm building a technical support that needs to receive and analyze config files.\r\n\r\n## Discord username\r\ntobben_dev\r\n",
+ "files": [
+ {
+ "path": "packages/client-discord/src/actions/chat_with_attachments.ts",
+ "additions": 31,
+ "deletions": 10
+ }
+ ],
+ "reviews": [],
+ "comments": [
+ {
+ "author": "odilitime",
+ "body": "code looks good will test later"
+ }
+ ]
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "sam-coffey",
+ "score": 1,
+ "summary": "sam-coffey is currently addressing a bug related to a chat stuck in an infinite loop, as indicated by the single open issue in the last 90 days. There have been no pull requests or commits made during this period.",
+ "avatar_url": "https://avatars.githubusercontent.com/u/98062744?u=10f19a5a02ee5648fd5276432f87eb3c6d97de7d&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 0,
+ "commits": [],
+ "pull_requests": []
+ },
+ "issues": {
+ "total_opened": 1,
+ "opened": [
+ {
+ "number": 1213,
+ "title": "chat stuck in infinite loop",
+ "state": "OPEN",
+ "created_at": "2024-12-18T21:19:34Z",
+ "updated_at": "2024-12-18T21:19:34Z",
+ "body": "Have tried installing and reinstalling many times, chat with any agent always gets stuck in loop where agent just keeps replying to itself.\r\n\r\nHappens each time I successfully start an agent with npm start (either chatting in terminal in older versions or with localhost:5173)\r\n\r\nI would expect the agent to have a dialogue with me but it becomes impossible when the agent just keeps saying things to itself over and over.",
+ "labels": [
+ {
+ "name": "bug",
+ "color": "d73a4a",
+ "description": "Something isn't working"
+ }
+ ],
+ "comments": []
+ }
+ ]
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "AntonioTF5",
+ "score": 1,
+ "summary": "AntonioTF5 is currently working on addressing a bug related to multiple mentions on Twitter/X when replying, as indicated by their recent activity of opening one issue in the last 90 days. There have been no pull requests, commits, or code changes associated with this issue so far.",
+ "avatar_url": "https://avatars.githubusercontent.com/u/32102018?u=ca0cfc6fafa99720cba35ad22ba7e31738c399b9&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 0,
+ "commits": [],
+ "pull_requests": []
+ },
+ "issues": {
+ "total_opened": 1,
+ "opened": [
+ {
+ "number": 1208,
+ "title": "Multiple mentions on Twitter/X when reply",
+ "state": "OPEN",
+ "created_at": "2024-12-18T16:44:13Z",
+ "updated_at": "2024-12-18T19:28:41Z",
+ "body": "**Describe the bug**\n\nIn every following reply to target accounts on X agent adds mentioning of the account: @account \n\nIf it replies second time it will mention twice: @account @account\n\n**Expected behavior**\n\nNo mentioning of the target account when reply at all. \n\n**Screenshots**\n\n![image](https://github.com/user-attachments/assets/9b8a6403-e496-4ecb-bf5b-bc67b4faeb4b) (C:\\Users\\agynb\\OneDrive\\ะ ะฐะฑะพัะธะน ััะพะป\\Eliza\\f1\\eliza\\node_modules\\@โฆ \r\nโ node-pre-gyp ERR! stack at ChildProcess.emit (node:events:513:28)\r\nโ node-pre-gyp ERR! stack at maybeClose (node:internal/child_process:1101:16)\r\nnode_modules/canvas: Running install script, failed in 10.7s (skipped as optional)process:305:5)\r\nโ node-pre-gyp ERR! System Windows_NT 10.0.26100\r\nโ node-pre-gyp ERR! command \"C:\\\\Program Files\\\\nodejs\\\\node.exe\" \"C:\\\\Users\\\\agynb\\\\OneDrive\\\\ะ ะฐะฑะพัะธะน ััะพะป\\\\Eliza\\\\f1\\\\elizaโฆ \r\nโ node-pre-gyp ERR! cwd C:\\Users\\agynb\\OneDrive\\ะ ะฐะฑะพัะธะน ััะพะป\\Eliza\\f1\\eliza\\node_modules\\@discordjs\\opus\r\nโ node-pre-gyp ERR! node -v v23.3.0\r\nโ node-pre-gyp ERR! node-pre-gyp -v v0.4.5\r\nโ node-pre-gyp ERR! not ok\r\nโ Failed to execute 'C:\\Program Files\\nodejs\\node.exe C:\\Users\\agynb\\OneDrive\\ะ ะฐะฑะพัะธะน ััะพะป\\Eliza\\f1\\eliza\\node_modules\\node-gโฆ \r\nโโ Failed in 10.4s at C:\\Users\\agynb\\OneDrive\\ะ ะฐะฑะพัะธะน ััะพะป\\Eliza\\f1\\eliza\\node_modules\\@discordjs\\opus",
+ "state": "OPEN",
+ "createdAt": "2024-12-19T09:57:03Z",
+ "updatedAt": "2024-12-19T14:33:05Z",
+ "author": {
+ "login": "agyn-ub",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/142351559?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5MDAsIm5iZiI6MTczNDY0NzcwMCwicGF0aCI6Ii91LzE0MjM1MTU1OSJ9.SUWFDdwGMDAg49J9c0MRqPEYTaL1rH7ozBauxVHxoMg&v=4"
+ },
+ "labels": [
+ {
+ "id": "LA_kwDOMT5cIs8AAAABrA0qWA",
+ "name": "bug",
+ "color": "d73a4a",
+ "description": "Something isn't working"
+ }
+ ],
+ "comments": [
+ {
+ "id": "IC_kwDOMT5cIs6YMIXC",
+ "author": "giorgosn",
+ "body": "are you using WSL 2?"
+ },
+ {
+ "id": "IC_kwDOMT5cIs6YMJNz",
+ "author": "digitalsimboja",
+ "body": " ~/dev/eliza #v0.1.6-alpha.4 pnpm install โ 23.3.0 โฌข 11:00:24 AM \r\nScope: all 46 workspace projects\r\nLockfile is up to date, resolution step is skipped\r\nโERR_PNPM_UNSUPPORTED_ENGINEโ Unsupported environment (bad pnpm and/or Node.js version)\r\n\r\nYour Node version is incompatible with \"@lens-protocol/client@2.2.0(@lens-protocol/metadata@1.2.0)(ethers@6.13.4)(react@18.3.1)\".\r\n\r\nExpected version: >=18 <21\r\nGot: v23.3.0\r\n\r\nThis is happening because the package's manifest has an engines.node field specified.\r\nTo fix this issue, install the required Node version.\r\n ~/dev/eliza #v0.1.6-alpha.4 \r\n \r\n I get this issue as well"
+ },
+ {
+ "id": "IC_kwDOMT5cIs6YM712",
+ "author": "agyn-ub",
+ "body": "> are you using WSL 2?\r\n\r\nno. I am in linux pop_os"
+ },
+ {
+ "id": "IC_kwDOMT5cIs6YM-oo",
+ "author": "agyn-ub",
+ "body": "I run pnpm install on lunix the same error\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/pitch.o\r\nโ rm -f Release/obj.target/deps/opus.a Release/obj.target/deps/opus.a.ar-file-list; mkdir -p `dirname Release/obj.target/deps/opus.a`\r\nโ ar crs Release/obj.target/deps/opus.a @Release/obj.target/deps/opus.a.ar-file-list\r\nโ COPY Release/opus.a\r\nโ CXX(target) Release/obj.target/opus/src/node-opus.o\r\nโ : warning: ISO C++11 requires whitespace after the macro name\r\nโ ../src/node-opus.cc:1:10: fatal error: napi.h: No such file or directory\r\nโ 1 | #include \"napi.h\"\r\nโ | ^~~~~~~~\r\nโ compilation terminated.\r\nโ make: *** [opus.target.mk:157: Release/obj.target/opus/src/node-opus.o] Error 1\r\nโ make: Leaving directory '/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus/build'\r\nโ gyp ERR! build error \r\nโ gyp ERR! stack Error: `make` failed with exit code: 2\r\nโ gyp ERR! stack at ChildProcess. (/home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/lib/build.js:216:23)\r\nโ gyp ERR! System Linux 6.9.3-76060903-generic\r\nโ gyp ERR! command \"/home/agyn/.nvm/versions/node/v23.3.0/bin/node\" \"/home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js\" \"build\" \"--fallback-to-build\" \"--modulโฆ\r\nโ gyp ERR! cwd /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\nโ gyp ERR! node -v v23.3.0\r\nโ gyp ERR! node-gyp -v v10.3.1\r\nโ gyp ERR! not ok \r\nโ node-pre-gyp ERR! build error \r\nโ node-pre-gyp ERR! stack Error: Failed to execute '/home/agyn/.nvm/versions/node/v23.3.0/bin/node /home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js build --fโฆ\r\nโ node-pre-gyp ERR! stack at ChildProcess. (/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/node-pre-gyp/lib/util/compile.js:85:20)\r\nโ node-pre-gyp ERR! stack at ChildProcess.emit (node:events:513:28)\r\nโ node-pre-gyp ERR! stack at maybeClose (node:internal/child_process:1101:16)\r\nโ node-pre-gyp ERR! stack at ChildProcess._handle.onexit (node:internal/child_process:305:5)\r\nโ node-pre-gyp ERR! System Linux 6.9.3-76060903-generic\r\nโ node-pre-gyp ERR! command \"/home/agyn/.nvm/versions/node/v23.3.0/bin/node\" \"/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus/node_modules/.bin/node-pre-gyp\" \"instalโฆ\r\nโ node-pre-gyp ERR! cwd /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\nโ node-pre-gyp ERR! node -v v23.3.0\r\nโ node-pre-gyp ERR! node-pre-gyp -v v0.4.5\r\nโ node-pre-gyp ERR! not ok \r\nโ Failed to execute '/home/agyn/.nvm/versions/node/v23.3.0/bin/node /home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/homeโฆ\r\nโโ Failed in 29.7s at /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\nโELIFECYCLEโ Command failed with exit code 1."
+ },
+ {
+ "id": "IC_kwDOMT5cIs6YNCVS",
+ "author": "agyn-ub",
+ "body": "> ~/dev/eliza #v0.1.6-alpha.4 pnpm install โ 23.3.0 โฌข 11:00:24 AM Scope: all 46 workspace projects Lockfile is up to date, resolution step is skipped โERR_PNPM_UNSUPPORTED_ENGINEโ Unsupported environment (bad pnpm and/or Node.js version)\r\n> \r\n> Your Node version is incompatible with \"@lens-protocol/client@2.2.0(@lens-protocol/metadata@1.2.0)(ethers@6.13.4)(react@18.3.1)\".\r\n> \r\n> Expected version: >=18 <21 Got: v23.3.0\r\n> \r\n> This is happening because the package's manifest has an engines.node field specified. To fix this issue, install the required Node version. ~/dev/eliza #v0.1.6-alpha.4\r\n> \r\n> I get this issue as well\r\n\r\nthe same error\r\nโ CC(target) Release/obj.target/libopus/deps/opus/silk/enc_API.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/silk/biquad_alt.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/silk/quant_LTP_gains.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/silk/resampler_private_down_FIR.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/silk/ana_filt_bank_1.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/silk/stereo_MS_to_LR.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/silk/decode_indices.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/rate.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/entdec.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/modes.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/celt_lpc.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/laplace.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/cwrs.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/celt.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/entcode.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/celt_decoder.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/celt_encoder.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/mdct.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/quant_bands.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/vq.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/bands.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/kiss_fft.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/entenc.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/mathops.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/pitch.o\r\nโ rm -f Release/obj.target/deps/opus.a Release/obj.target/deps/opus.a.ar-file-list; mkdir -p `dirname Release/obj.target/deps/opus.a`\r\nโ ar crs Release/obj.target/deps/opus.a @Release/obj.target/deps/opus.a.ar-file-list\r\nโ COPY Release/opus.a\r\nโ CXX(target) Release/obj.target/opus/src/node-opus.o\r\nโ : warning: ISO C++11 requires whitespace after the macro name\r\nโ ../src/node-opus.cc:1:10: fatal error: napi.h: No such file or directory\r\nโ 1 | #include \"napi.h\"\r\nโ | ^~~~~~~~\r\nโ compilation terminated.\r\nโ make: *** [opus.target.mk:155: Release/obj.target/opus/src/node-opus.o] Error 1\r\nโ make: Leaving directory '/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus/build'\r\nโ gyp ERR! build error \r\nโ gyp ERR! stack Error: `make` failed with exit code: 2\r\nโ gyp ERR! stack at ChildProcess. (/home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/lib/build.js:216:23)\r\nโ gyp ERR! System Linux 6.9.3-76060903-generic\r\nโ gyp ERR! command \"/home/agyn/.nvm/versions/node/v20.18.1/bin/node\" \"/home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js\" \"build\" \"--fallback-to-build\" \"--moduโฆ\r\nโ gyp ERR! cwd /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\nโ gyp ERR! node -v v20.18.1\r\nโ gyp ERR! node-gyp -v v10.3.1\r\nโ gyp ERR! not ok \r\nโ node-pre-gyp ERR! build error \r\nโ node-pre-gyp ERR! stack Error: Failed to execute '/home/agyn/.nvm/versions/node/v20.18.1/bin/node /home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js build --โฆ\r\nโ node-pre-gyp ERR! stack at ChildProcess. (/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/node-pre-gyp/lib/util/compile.js:85:20)\r\nโ node-pre-gyp ERR! stack at ChildProcess.emit (node:events:518:28)\r\nโ node-pre-gyp ERR! stack at maybeClose (node:internal/child_process:1104:16)\r\nโ node-pre-gyp ERR! stack at ChildProcess._handle.onexit (node:internal/child_process:304:5)\r\nโ node-pre-gyp ERR! System Linux 6.9.3-76060903-generic\r\nโ node-pre-gyp ERR! command \"/home/agyn/.nvm/versions/node/v20.18.1/bin/node\" \"/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus/node_modules/.bin/node-pre-gyp\" \"instaโฆ\r\nโ node-pre-gyp ERR! cwd /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\nโ node-pre-gyp ERR! node -v v20.18.1\r\nโ node-pre-gyp ERR! node-pre-gyp -v v0.4.5\r\nโ node-pre-gyp ERR! not ok \r\nโ Failed to execute '/home/agyn/.nvm/versions/node/v20.18.1/bin/node /home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/homโฆ\r\nโโ Failed in 38.1s at /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\nnode_modules/canvas: Running install script, done in 21.5s\r\nโELIFECYCLEโ Command failed with exit code 1."
+ },
+ {
+ "id": "IC_kwDOMT5cIs6YOfiz",
+ "author": "agyn-ub",
+ "body": "> ~/dev/eliza #v0.1.6-alpha.4 pnpm install โ 23.3.0 โฌข 11:00:24 AM Scope: all 46 workspace projects Lockfile is up to date, resolution step is skipped โERR_PNPM_UNSUPPORTED_ENGINEโ Unsupported environment (bad pnpm and/or Node.js version)\r\n> \r\n> Your Node version is incompatible with \"@lens-protocol/client@2.2.0(@lens-protocol/metadata@1.2.0)(ethers@6.13.4)(react@18.3.1)\".\r\n> \r\n> Expected version: >=18 <21 Got: v23.3.0\r\n> \r\n> This is happening because the package's manifest has an engines.node field specified. To fix this issue, install the required Node version. ~/dev/eliza #v0.1.6-alpha.4\r\n> \r\n> I get this issue as well\r\n\r\nthank you so much my friend, I have downgraded node version to 18 is command executed ok. It is confusing because in the documentation were written that it must be node version 23+ "
+ },
+ {
+ "id": "IC_kwDOMT5cIs6YP-95",
+ "author": "digitalsimboja",
+ "body": "> > ~/dev/eliza #v0.1.6-alpha.4 pnpm install โ 23.3.0 โฌข 11:00:24 AM Scope: all 46 workspace projects Lockfile is up to date, resolution step is skipped โERR_PNPM_UNSUPPORTED_ENGINEโ Unsupported environment (bad pnpm and/or Node.js version)\r\n> > Your Node version is incompatible with \"@lens-protocol/client@2.2.0(@lens-protocol/metadata@1.2.0)(ethers@6.13.4)(react@18.3.1)\".\r\n> > Expected version: >=18 <21 Got: v23.3.0\r\n> > This is happening because the package's manifest has an engines.node field specified. To fix this issue, install the required Node version. ~/dev/eliza #v0.1.6-alpha.4\r\n> > I get this issue as well\r\n> \r\n> thank you so much my friend, I have downgraded node version to 18 is command executed ok. It is confusing because in the documentation were written that it must be node version 23+\r\n\r\nI have a hell of dependencies issues. How did you downgrade yours to version 18 without conflicting with other projects? Did you change the node engine specifications from 23+ to 18?"
+ }
+ ]
+ },
+ {
+ "id": "I_kwDOMT5cIs6j4tPO",
+ "number": 1233,
+ "title": "agent package not updated on npmjs.org",
+ "body": "**Describe the bug**\r\n\r\nSeems like @ai16z/agent has not been updated for some time https://www.npmjs.com/package/@ai16z/agent\r\n\r\n**To Reproduce**\r\n\r\nSee https://www.npmjs.com/package/@ai16z/agent?activeTab=versions\r\n\r\n**Expected behavior**\r\n\r\nRelease agent package regularly and use it in `eliza-starter` (as it seems like a lot of stuff is just copy&paste)\r\n\r\n**Screenshots**\r\n\r\n\r\n\r\n**Additional context**\r\n\r\n\r\n",
+ "state": "OPEN",
+ "createdAt": "2024-12-19T08:08:23Z",
+ "updatedAt": "2024-12-19T08:08:23Z",
+ "author": {
+ "login": "vpavlin",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/4759808?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5MDAsIm5iZiI6MTczNDY0NzcwMCwicGF0aCI6Ii91LzQ3NTk4MDgifQ.FCRt6CJ8K5Ci3EOPe8eefUF7mzywKQroiMckMCwlphE&u=d045a41a43fa2deabfc3115236cc1e8b0509b164&v=4"
+ },
+ "labels": [
+ {
+ "id": "LA_kwDOMT5cIs8AAAABrA0qWA",
+ "name": "bug",
+ "color": "d73a4a",
+ "description": "Something isn't working"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "id": "I_kwDOMT5cIs6j4sjB",
+ "number": 1232,
+ "title": "Create a nightly build as next version",
+ "body": "**Is your feature request related to a problem? Please describe.**\r\n\r\nI'd like to use `eliza-starter` with the latest providers and features, but that means I have to wait until new version is released (weekly?). It would be great to setup a `nightly` builds from `develop` and push them to npmjs.org as `next` version, so that people can easily experiment with latest features and get ready for new releases\r\n\r\n**Describe the solution you'd like**\r\n\r\nSetup an automation to release nightly to from `develop` to `next`\r\n\r\n**Describe alternatives you've considered**\r\n\r\n:shrug: \r\n\r\n**Additional context**\r\n\r\n\r\n",
+ "state": "OPEN",
+ "createdAt": "2024-12-19T08:06:40Z",
+ "updatedAt": "2024-12-19T08:06:40Z",
+ "author": {
+ "login": "vpavlin",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/4759808?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5MDAsIm5iZiI6MTczNDY0NzcwMCwicGF0aCI6Ii91LzQ3NTk4MDgifQ.FCRt6CJ8K5Ci3EOPe8eefUF7mzywKQroiMckMCwlphE&u=d045a41a43fa2deabfc3115236cc1e8b0509b164&v=4"
+ },
+ "labels": [
+ {
+ "id": "LA_kwDOMT5cIs8AAAABrA0qYA",
+ "name": "enhancement",
+ "color": "a2eeef",
+ "description": "New feature or request"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "id": "I_kwDOMT5cIs6j26a1",
+ "number": 1224,
+ "title": "feat: Auto-Documentation Synchronization Bot",
+ "body": "## **Overview**\r\nCreate an AI assistant to maintain documentation consistency and generate documentation from code.\r\n\r\n## **Current Situation**\r\n\r\nDocumentation gaps often go unnoticed, leading to challenges during onboarding, feature development, and integrations. Outdated information can result in inefficiencies, with developers spending unnecessary time answering questions that could otherwise be handled by AI if up-to-date documentation were available\r\n\r\n## **Proposed Solution**\r\n\r\nFirst finish this issue: https://github.com/ai16z/eliza/issues/1110\r\nNext document plugins so that we have a quality reference: https://github.com/ai16z/eliza/issues/1200\r\n\r\nThen build a documentation bot that:\r\n1. Tracks and reports TODO comments in code (automate this flow https://github.com/ai16z/eliza/issues/1223)\r\n2. Tracks and reports missing plugin docs: (automate this https://github.com/ai16z/eliza/issues/1200)\r\n3. Tracks commits / issues / PRs and flags docs pages that might need updating\r\n4. Suggest documentation updates of those pages\r\n\r\n## **Technical Details**\r\n\r\n\r\n",
+ "state": "OPEN",
+ "createdAt": "2024-12-19T02:03:53Z",
+ "updatedAt": "2024-12-19T02:03:53Z",
+ "author": {
+ "login": "madjin",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/32600939?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91LzMyNjAwOTM5In0.7vW8aT743AJl04-9zh_3YYJMLQj9qo88pIJX0PCwUco&u=cdcf89f44c7a50906c7a80d889efa85023af2049&v=4"
+ },
+ "labels": [
+ {
+ "id": "LA_kwDOMT5cIs8AAAABrA0qWw",
+ "name": "documentation",
+ "color": "0075ca",
+ "description": "Improvements or additions to documentation"
+ },
+ {
+ "id": "LA_kwDOMT5cIs8AAAABrA0qYA",
+ "name": "enhancement",
+ "color": "a2eeef",
+ "description": "New feature or request"
+ },
+ {
+ "id": "LA_kwDOMT5cIs8AAAAByOXTdA",
+ "name": "automation",
+ "color": "FC49CF",
+ "description": ""
+ }
+ ],
+ "comments": []
+ },
+ {
+ "id": "I_kwDOMT5cIs6j23px",
+ "number": 1223,
+ "title": "chore: Review TODO notes",
+ "body": "**Describe the bug**\r\n\r\nSee what the TODO notes are about, update their status or document as an issue if needed\r\n\r\n- [ ] agent/src/index.ts\r\n- [ ] packages/core/src/models.ts\r\n- [ ] packages/core/src/runtime.ts\r\n- [ ] packages/core/src/environment.ts\r\n- [ ] packages/core/src/memory.ts\r\n- [ ] packages/plugin-starknet/src/providers/trustScoreProvider.ts\r\n- [ ] packages/plugin-starknet/src/providers/token.ts\r\n- [ ] packages/plugin-starknet/src/actions/takeOrder.ts\r\n- [ ] packages/plugin-starknet/src/actions/transfer.ts\r\n- [ ] packages/plugin-starknet/readme.md\r\n- [ ] packages/adapter-sqlite/src/sqliteTables.ts\r\n- [ ] packages/adapter-sqljs/src/index.ts\r\n- [ ] packages/adapter-sqljs/src/sqliteTables.ts\r\n- [ ] packages/plugin-node/src/services/transcription.ts\r\n- [ ] packages/plugin-node/src/services/browser.ts\r\n- [ ] packages/client-twitter/src/search.ts\r\n- [ ] packages/client-twitter/src/base.ts\r\n- [ ] packages/plugin-solana/src/evaluators/trust.ts\r\n- [ ] packages/plugin-solana/src/providers/trustScoreProvider.ts\r\n- [ ] packages/plugin-solana/src/actions/swap.ts\r\n- [ ] packages/plugin-solana/src/actions/takeOrder.ts\r\n- [ ] packages/plugin-evm/src/actions/bridge.ts\r\n- [ ] packages/plugin-evm/src/actions/swap.ts\r\n- [ ] packages/plugin-flow/src/types/fcl.d.ts\r\n- [ ] packages/plugin-flow/src/actions/transfer.ts\r\n- [ ] packages/plugin-nft-generation/src/index.ts\r\n- [ ] packages/plugin-image-generation/src/index.ts\r\n- [ ] packages/client-farcaster/src/client.ts\r\n- [ ] packages/adapter-supabase/src/index.ts\r\n- [ ] packages/client-lens/src/actions.ts\r\n- [ ] packages/client-lens/src/client.ts\r\n- [ ] packages/client-lens/src/interactions.ts\r\n- [ ] packages/client-discord/src/utils.ts\r\n- [ ] packages/client-discord/src/attachments.ts\r\n- [ ] packages/client-discord/src/messages.ts\r\n- [ ] packages/client-discord/src/actions/chat_with_attachments.ts\r\n- [ ] packages/client-discord/src/actions/summarize_conversation.ts\r\n- [ ] packages/client-slack/src/events.ts\r\n\r\n\r\n**To Reproduce**\r\n\r\nTo find the files to fix:\r\n\r\n`grep -ro \"TODO\" --exclude-dir=node_modules --exclude-dir=dist | uniq` \r\n\r\nSome examples `grep -roP \"TODO\\s*.*\" --exclude-dir=node_modules`\r\n```\r\nagent/src/index.ts:TODO: Add Slack client to the list\r\npackages/core/dist/index.js:TODO: check\r\npackages/core/dist/index.js:TODO: ?download=true\r\npackages/client-discord/src/utils.ts:TODO: clean this up\r\npackages/client-discord/src/attachments.ts:TODO: clean this up\r\npackages/client-discord/src/messages.ts:TODO: This is throwing an error but seems to work?\r\npackages/client-discord/src/messages.ts:TODO: Move to attachments manager\r\npackages/client-discord/src/actions/chat_with_attachments.ts:TODO: make this dynamic and generic\r\npackages/client-discord/src/actions/summarize_conversation.ts:TODO: parse start and end into timestamps\r\npackages/client-slack/src/events.ts:TODO: Implement reaction handling\r\n```\r\n\r\n**Expected behavior**\r\n\r\ngithub issue or cleaning up the code\r\n\r\n**Screenshots**\r\n\r\n![image](https://github.com/user-attachments/assets/ed48b42c-7701-4432-a284-5e8143f93227)\r\n\r\n\r\n**Additional context**\r\n\r\n\r\n",
+ "state": "OPEN",
+ "createdAt": "2024-12-19T01:50:45Z",
+ "updatedAt": "2024-12-19T01:51:37Z",
+ "author": {
+ "login": "madjin",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/32600939?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91LzMyNjAwOTM5In0.7vW8aT743AJl04-9zh_3YYJMLQj9qo88pIJX0PCwUco&u=cdcf89f44c7a50906c7a80d889efa85023af2049&v=4"
+ },
+ "labels": [
+ {
+ "id": "LA_kwDOMT5cIs8AAAABrA0qWA",
+ "name": "bug",
+ "color": "d73a4a",
+ "description": "Something isn't working"
+ },
+ {
+ "id": "LA_kwDOMT5cIs8AAAABrA0qWw",
+ "name": "documentation",
+ "color": "0075ca",
+ "description": "Improvements or additions to documentation"
+ },
+ {
+ "id": "LA_kwDOMT5cIs8AAAABrA0qYg",
+ "name": "good first issue",
+ "color": "7057ff",
+ "description": "Good for newcomers"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "id": "I_kwDOMT5cIs6j2njJ",
+ "number": 1222,
+ "title": "chore: Keeps README translations synchronized",
+ "body": "**Is your feature request related to a problem? Please describe.**\r\n\r\nThere are now a lot of language translated READMEs in the repo. If we implement a change in one, we have to manually cascade the changes in order.\r\n\r\n**Describe the solution you'd like**\r\n\r\nScript that uses AI (ollama / openai) that cascades changes when the english README.md file changes. Translates / updates all the other README files. Github CI would be a nice touch too\r\n\r\n**Describe alternatives you've considered**\r\n\r\n**Additional context**\r\n\r\n![image](https://github.com/user-attachments/assets/72cc29ce-6a5d-4cbc-9d6b-b6f07c09f399)\r\n",
+ "state": "OPEN",
+ "createdAt": "2024-12-19T00:33:42Z",
+ "updatedAt": "2024-12-19T00:33:43Z",
+ "author": {
+ "login": "madjin",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/32600939?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91LzMyNjAwOTM5In0.7vW8aT743AJl04-9zh_3YYJMLQj9qo88pIJX0PCwUco&u=cdcf89f44c7a50906c7a80d889efa85023af2049&v=4"
+ },
+ "labels": [
+ {
+ "id": "LA_kwDOMT5cIs8AAAABrA0qWw",
+ "name": "documentation",
+ "color": "0075ca",
+ "description": "Improvements or additions to documentation"
+ },
+ {
+ "id": "LA_kwDOMT5cIs8AAAABrA0qYg",
+ "name": "good first issue",
+ "color": "7057ff",
+ "description": "Good for newcomers"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "id": "I_kwDOMT5cIs6j2k2d",
+ "number": 1221,
+ "title": "feat: Eliza Code Assistant default characterfile",
+ "body": "**Overview**\r\nCreate an AI-powered development guide bot that can assist new contributors and help maintainers by leveraging repository history and documentation. This can be a starter file that teaches people about Eliza as soon as they run Eliza.\r\n\r\n**Current Situation**\r\n- New contributors often ask similar questions in discord / twitter\r\n- Repository knowledge is spread across many files and commit history\r\n- Code review assignments are manual and don't always match expertise\r\n\r\n**Proposed Solution**\r\nBuild an agent that:\r\n1. Answers FAQ-style questions using repo knowledge as recommended first step\r\n2. Suggests relevant examples based on current work\r\n3. Guides contributors to relevant documentation/contributors with answers\r\n\r\n**Technical Implementation**\r\n- Create an eliza characterfile template\r\n - https://elizagen.howieduhzit.best/\r\n- Ingest knowledge about github (prevent duplicate issues, find answers, suggest new issue)\r\n - https://ai16z.github.io/data/daily/contributors.json\r\n - https://ai16z.github.io/data/daily/summary.json\r\n - https://ai16z.github.io/data/daily/summary.md\r\n - https://ai16z.github.io/data/weekly/contributors.json\r\n - https://ai16z.github.io/data/monthly/contributors.json\r\n- Ingest docs + FAQ from discord (https://github.com/ai16z/eliza/issues/1044)\r\n - https://ai16z.github.io/eliza/community/Discord/\r\n\r\n**Integration Points (IDEAS)**\r\n- Discord code assistant\r\n- Website frontend (eliza.gg)\r\n",
+ "state": "OPEN",
+ "createdAt": "2024-12-19T00:21:13Z",
+ "updatedAt": "2024-12-19T08:08:35Z",
+ "author": {
+ "login": "madjin",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/32600939?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91LzMyNjAwOTM5In0.7vW8aT743AJl04-9zh_3YYJMLQj9qo88pIJX0PCwUco&u=cdcf89f44c7a50906c7a80d889efa85023af2049&v=4"
+ },
+ "labels": [
+ {
+ "id": "LA_kwDOMT5cIs8AAAABrA0qWw",
+ "name": "documentation",
+ "color": "0075ca",
+ "description": "Improvements or additions to documentation"
+ },
+ {
+ "id": "LA_kwDOMT5cIs8AAAABrA0qYA",
+ "name": "enhancement",
+ "color": "a2eeef",
+ "description": "New feature or request"
+ },
+ {
+ "id": "LA_kwDOMT5cIs8AAAABzZ3HKg",
+ "name": "Bounty",
+ "color": "d93f0b",
+ "description": "Use this to assign a bounty to an issue"
+ }
+ ],
+ "comments": [
+ {
+ "id": "IC_kwDOMT5cIs6YLBEb",
+ "author": "maq796113",
+ "body": "how good is the bounty?"
+ }
+ ]
+ }
+]
diff --git a/data/daily/history/prs_2024_12_19.json b/data/daily/history/prs_2024_12_19.json
new file mode 100644
index 0000000..2821c88
--- /dev/null
+++ b/data/daily/history/prs_2024_12_19.json
@@ -0,0 +1,1341 @@
+[
+ {
+ "id": "PR_kwDOMT5cIs6F2aBP",
+ "number": 1252,
+ "title": "Update trump.character.json",
+ "body": "Remove a controversial line so we don't have to waste time on pointless old world political divisions\r\n",
+ "state": "OPEN",
+ "merged": false,
+ "createdAt": "2024-12-19T22:28:15Z",
+ "updatedAt": "2024-12-19T22:28:15Z",
+ "author": {
+ "login": "lalalune",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/18633264?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg3MjAsIm5iZiI6MTczNDY0NzUyMCwicGF0aCI6Ii91LzE4NjMzMjY0In0.ef20meZySKC14ksX2zmPUprbf4FTK6gdLx8nK_CL6HQ&u=8f2bca0a3cef958bd405ea89680a9b9a0ff38f06&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": "characters/trump.character.json",
+ "additions": 0,
+ "deletions": 1
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ },
+ {
+ "id": "PR_kwDOMT5cIs6F2Mwt",
+ "number": 1250,
+ "title": "fix: Fix local_llama key warning",
+ "body": "# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nfix scary start up warnings for firing it up out of the box\r\n\r\n```\r\n [\"โ DirectClient constructor\"] \r\n\r\n [\"โ Failed to get token - unsupported model provider: llama_local\"] \r\n\r\n โ ERRORS\r\n Error starting agent for character Eliza: \r\n {} \r\n\r\n [\"โ Error: Failed to get token - unsupported model provider: llama_local\"] \r\n\r\n โ ERRORS\r\n Error starting agents: \r\n {} \r\n\r\n [\"โ Run `pnpm start:client` to start the client and visit the outputted URL (http://localhost:5173) to chat with your agents\"] \r\n\r\n```\r\n\r\n## What kind of change is this?\r\n\r\nImprovements (misc. changes to existing features)\r\n\r\n## Why are we doing this? Any context or related work?\r\n\r\nImproved new developer experience, reduce confusion\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.",
+ "state": "MERGED",
+ "merged": true,
+ "createdAt": "2024-12-19T21:39:36Z",
+ "updatedAt": "2024-12-19T22:07:08Z",
+ "author": {
+ "login": "odilitime",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/16395496?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0MjAsIm5iZiI6MTczNDY0NzIyMCwicGF0aCI6Ii91LzE2Mzk1NDk2In0.AHDvuRgPHYO0i8IDYNzSfDB3Ae2PlvNoeRcGjB_wn9Q&u=45c152d8433e37c62520e66c0dd6d754ccf3eaf4&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": "agent/src/index.ts",
+ "additions": 4,
+ "deletions": 1
+ }
+ ],
+ "reviews": [
+ {
+ "id": "PRR_kwDOMT5cIs6V-5DP",
+ "author": "monilpat",
+ "body": "LGTM!",
+ "state": "APPROVED"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "id": "PR_kwDOMT5cIs6F136K",
+ "number": 1249,
+ "title": "Release/v.1.0",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nInitial V-1.0 of SimsAI client package for Eliza framework. Used for testing your agents and interacting on the Simsai platform. SimsAI is a social media thats only for agents, allowing humans to only comment, prompt like or repost their followed agents. Jeets or posts by the agents, will eventually be mintable as NFTs to the user with royalties for the creators and the agent wallets.\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow risk. New client, configurable by the user.\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nThis allows agents to post on the SimsAI platform. Specifically, Jeeter the twitter replica for agents.\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\nClient Change. Feature.\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\nTesting can be done by:\r\n\r\n1. Adding necessary env vars.\r\n2. Running as normal (with the dry run variable on with their character file)\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "state": "CLOSED",
+ "merged": false,
+ "createdAt": "2024-12-19T20:46:20Z",
+ "updatedAt": "2024-12-19T20:55:58Z",
+ "author": {
+ "login": "simsaidev",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/192255625?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkxNDAsIm5iZiI6MTczNDY0Nzk0MCwicGF0aCI6Ii91LzE5MjI1NTYyNSJ9.m6UXmOZB4P5aDEzW8NlIro6a_oNBtl6QaTF-4MUr8Yc&u=618ee6c5eb68a948ec29fc112d1ad85a34ced79c&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": ".env.example",
+ "additions": 7,
+ "deletions": 0
+ },
+ {
+ "path": "agent/package.json",
+ "additions": 60,
+ "deletions": 59
+ },
+ {
+ "path": "agent/src/index.ts",
+ "additions": 10,
+ "deletions": 3
+ },
+ {
+ "path": "characters/simsai.character.json",
+ "additions": 89,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/.npmignore",
+ "additions": 6,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/eslint.config.mjs",
+ "additions": 3,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/package.json",
+ "additions": 24,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/src/index.ts",
+ "additions": 48,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/src/jeeter/base.ts",
+ "additions": 607,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/src/jeeter/client.ts",
+ "additions": 302,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/src/jeeter/constants.ts",
+ "additions": 115,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/src/jeeter/environment.ts",
+ "additions": 48,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/src/jeeter/interactions.ts",
+ "additions": 465,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/src/jeeter/post.ts",
+ "additions": 222,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/src/jeeter/search.ts",
+ "additions": 597,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/src/jeeter/types.ts",
+ "additions": 224,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/src/jeeter/utils.ts",
+ "additions": 349,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/tsconfig.json",
+ "additions": 10,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-simsai/tsup.config.ts",
+ "additions": 20,
+ "deletions": 0
+ },
+ {
+ "path": "packages/core/src/types.ts",
+ "additions": 7,
+ "deletions": 2
+ },
+ {
+ "path": "pnpm-lock.yaml",
+ "additions": 23116,
+ "deletions": 18054
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ },
+ {
+ "id": "PR_kwDOMT5cIs6F1xMy",
+ "number": 1248,
+ "title": "feat: news-plugin",
+ "body": "\r\n\r\n# Relates to:\r\nAI Agent Dev School Video #2: https://www.youtube.com/watch?v=XenGeAcPAQo&t=3383s \r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow \r\n\r\n\r\n\r\n# Background\r\nShaw shows us how to create a simple plugin that returns the latest news on a specific topic. This is an example code of a completed currentNewsAction. It can be modified and expanded for added functionality. \r\n\r\n## What does this PR do?\r\n\r\nAdds an example of the news plugin described by Shaw. \r\n\r\n## What kind of change is this?\r\n\r\nFeatures \r\n\r\n\r\n\r\n\r\n\r\n\r\nIt will help future students to see an example of the code and more experienced devs to add functionality to a useful plugin. \r\n\r\n# Documentation changes needed?\r\n\r\nnone, but I can add documentation \r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\nI tested the plugin with C3PO character and was able to retrieve news on different topics. \r\n\r\nFormatting of the output can use some improvement. \r\n\r\n## Where should a reviewer start?\r\n\r\nnews.ts \r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "state": "OPEN",
+ "merged": false,
+ "createdAt": "2024-12-19T20:30:07Z",
+ "updatedAt": "2024-12-19T20:31:12Z",
+ "author": {
+ "login": "ileana-pr",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/103957712?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkyMDAsIm5iZiI6MTczNDY0ODAwMCwicGF0aCI6Ii91LzEwMzk1NzcxMiJ9.u9qrd1GMtEVN5qePaZWSeDuQhZDSkFlWmmVmXRCEMKU&u=b865d84e1f5bffd16f907c5318a177dfc9f927d0&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": ".env.example",
+ "additions": 3,
+ "deletions": 0
+ },
+ {
+ "path": "agent/package.json",
+ "additions": 1,
+ "deletions": 0
+ },
+ {
+ "path": "agent/src/index.ts",
+ "additions": 2,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/.npmignore",
+ "additions": 6,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/eslint.config.mjs",
+ "additions": 3,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/package.json",
+ "additions": 19,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/src/actions/index.ts",
+ "additions": 2,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/src/actions/news.ts",
+ "additions": 172,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/src/index.ts",
+ "additions": 10,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/tsconfig.json",
+ "additions": 13,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/tsup.config.ts",
+ "additions": 20,
+ "deletions": 0
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ },
+ {
+ "id": "PR_kwDOMT5cIs6F1qLS",
+ "number": 1247,
+ "title": "feat: Add Treasure Plugin",
+ "body": "\r\n\r\n# Relates to:\r\nAdds Treasure support for Eliza agents.\r\n\r\n# Risks\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n[Treasure](https://treasure.lol) is a gaming-centric L2 rollup built on ZKsync. This PR adds support for Eliza to interact with the Treasure mainnet, with logic/implementation borrowed from #1225 and #1128.\r\n\r\nInitially, only the `transfer` function has been supported with additional features to come to hook into the Treasure Development Kit (TDK), Magicswap, and other Treasure platform features.\r\n\r\n## What kind of change is this?\r\n\r\nFeature\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\nSpin up an agent with the `treasure` plugin + review `plugin-treasure`.\r\n\r\n## Detailed testing steps\r\n1. In `.env`, should set the value for `TREASURE_ADDRESS` (public address for the agent account), `TREASURE_PRIVATE_KEY` (private key for the same account), and `TREASURE_RPC_URL` as https://rpc.treasure.lol.\r\nTo test the transfer function properly, this address needs tokens. [Treasure Bridge](https://bridge.treasure.lol/) can be used to bridge MAGIC directly from `arb1` to an address on `treasure`.\r\n2. Run the agent and prompt it with: \"Send 0.1 MAGIC to \" - e.g. \"send 0.1 MAGIC to 0x7A6a48b8e7BD3451Fc57f01Ad9Aaea62cdf5956E\"\r\n3. Assuming you had 1 MAGIC to send, the agent will confirm and respond with the tx hash, e.g. \"Successfully sent 1 MAGIC to 0x7A6a48b8e7BD3451Fc57f01Ad9Aaea62cdf5956E\r\nTransaction: 0x45759cf3e76d26610154a094c87572fbd7f5ef909f62c4ea13f7defb0d87cf0b\"\r\nThe tx hash can be checked on the Treasure Block Explorer (https://treasurescan.io/)",
+ "state": "OPEN",
+ "merged": false,
+ "createdAt": "2024-12-19T20:15:23Z",
+ "updatedAt": "2024-12-19T20:18:35Z",
+ "author": {
+ "login": "karelvuong",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/95452264?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0ODAsIm5iZiI6MTczNDY0NzI4MCwicGF0aCI6Ii91Lzk1NDUyMjY0In0.oN52fhkgFgvEaNu1V3xXp5TP8PU9DPwM0A0M4KD5yBM&u=a0ca99a025844781a3b09ed9616bf1308ffaa601&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": ".env.example",
+ "additions": 5,
+ "deletions": 0
+ },
+ {
+ "path": "agent/package.json",
+ "additions": 60,
+ "deletions": 59
+ },
+ {
+ "path": "agent/src/index.ts",
+ "additions": 7,
+ "deletions": 3
+ },
+ {
+ "path": "packages/plugin-treasure/package.json",
+ "additions": 20,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-treasure/src/actions/transfer.ts",
+ "additions": 215,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-treasure/src/environment.ts",
+ "additions": 43,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-treasure/src/index.ts",
+ "additions": 13,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-treasure/tsconfig.json",
+ "additions": 10,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-treasure/tsup.config.ts",
+ "additions": 20,
+ "deletions": 0
+ },
+ {
+ "path": "pnpm-lock.yaml",
+ "additions": 21,
+ "deletions": 0
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ },
+ {
+ "id": "PR_kwDOMT5cIs6F1Xyh",
+ "number": 1246,
+ "title": "feat: upgrade Tavily API with comprehensive input and constrain the token consumption",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nrelates to tavily #518\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nConstrain the maximum output of per web search from Tavily, while allows more input parameters that can be controlled by the developers or users.\r\n\r\n## What kind of change is this?\r\n\r\nImprovements & Features \r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\nNo\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\nYes, I have fulfilled the test by test this part independently and then assemble this to the core.\r\n\r\n## Where should a reviewer start?\r\n\r\nCould start with the test just like normally use Tavily.\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "state": "OPEN",
+ "merged": false,
+ "createdAt": "2024-12-19T19:25:41Z",
+ "updatedAt": "2024-12-19T19:52:00Z",
+ "author": {
+ "login": "tomguluson92",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/19585240?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91LzE5NTg1MjQwIn0.gXlxEwvwu9reKlsbqgUt9Tx7a5qqekgFUel_ERC3Fwo&u=4a4465656050747dee79f5f97a8b61cf2fbc97e1&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": ".env.example",
+ "additions": 3,
+ "deletions": 0
+ },
+ {
+ "path": "packages/core/src/generation.ts",
+ "additions": 4,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-web-search/src/index.ts",
+ "additions": 24,
+ "deletions": 2
+ }
+ ],
+ "reviews": [
+ {
+ "id": "PRR_kwDOMT5cIs6V989r",
+ "author": "tcm390",
+ "body": "",
+ "state": "APPROVED"
+ }
+ ],
+ "comments": [
+ {
+ "id": "IC_kwDOMT5cIs6YU9A-",
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1246?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAttention: Patch coverage is `0%` with `4 lines` in your changes missing coverage. Please review.\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1246?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Patch % | Lines |\n|---|---|---|\n| [packages/core/src/generation.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1246?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fgeneration.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvZ2VuZXJhdGlvbi50cw==) | 0.00% | [4 Missing :warning: ](https://app.codecov.io/gh/ai16z/eliza/pull/1246?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) |\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1246?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Coverage ฮ | |\n|---|---|---|\n| [packages/core/src/generation.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1246?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fgeneration.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvZ2VuZXJhdGlvbi50cw==) | `2.68% <0.00%> (-0.01%)` | :arrow_down: |\n"
+ }
+ ]
+ },
+ {
+ "id": "PR_kwDOMT5cIs6F09Aj",
+ "number": 1245,
+ "title": "feat: make express payload limit configurable",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "state": "MERGED",
+ "merged": true,
+ "createdAt": "2024-12-19T18:12:17Z",
+ "updatedAt": "2024-12-19T22:05:56Z",
+ "author": {
+ "login": "renlulu",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/8149051?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg2NjAsIm5iZiI6MTczNDY0NzQ2MCwicGF0aCI6Ii91LzgxNDkwNTEifQ.vNRFI1s-VUpAgF8g-JReFxwDI4UBDPmFdIkEcDNscYE&u=001a339b366e297d951ff1155837fe1e1510c398&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": ".env.example",
+ "additions": 3,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-direct/src/api.ts",
+ "additions": 26,
+ "deletions": 17
+ }
+ ],
+ "reviews": [
+ {
+ "id": "PRR_kwDOMT5cIs6V-6EW",
+ "author": "monilpat",
+ "body": "",
+ "state": "COMMENTED"
+ },
+ {
+ "id": "PRR_kwDOMT5cIs6V-6Ku",
+ "author": "monilpat",
+ "body": "LGTM one nit",
+ "state": "APPROVED"
+ },
+ {
+ "id": "PRR_kwDOMT5cIs6V--i7",
+ "author": "monilpat",
+ "body": "",
+ "state": "COMMENTED"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "id": "PR_kwDOMT5cIs6F0zf0",
+ "number": 1244,
+ "title": "feat: make twitter login retry times as env",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "state": "MERGED",
+ "merged": true,
+ "createdAt": "2024-12-19T17:54:02Z",
+ "updatedAt": "2024-12-19T21:52:56Z",
+ "author": {
+ "login": "renlulu",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/8149051?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg2NjAsIm5iZiI6MTczNDY0NzQ2MCwicGF0aCI6Ii91LzgxNDkwNTEifQ.vNRFI1s-VUpAgF8g-JReFxwDI4UBDPmFdIkEcDNscYE&u=001a339b366e297d951ff1155837fe1e1510c398&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": ".env.example",
+ "additions": 1,
+ "deletions": 0
+ },
+ {
+ "path": "agent/src/index.ts",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "packages/client-twitter/src/base.ts",
+ "additions": 4,
+ "deletions": 1
+ }
+ ],
+ "reviews": [
+ {
+ "id": "PRR_kwDOMT5cIs6V-6X7",
+ "author": "monilpat",
+ "body": "LGTM",
+ "state": "APPROVED"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "id": "PR_kwDOMT5cIs6F0GdF",
+ "number": 1243,
+ "title": "Fix visibility issue github image cicd",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n[Publish an official Docker Image in ghcr. #876](https://github.com/ai16z/eliza/issues/876) and PR [feat : github image cicd #889](https://github.com/ai16z/eliza/pull/889) by @v1xingyue.\r\n\r\n# Risks\r\n\r\nLow. I do not see risks.\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\nUpdates image.yaml to add the task to change package visibility.\r\n",
+ "state": "MERGED",
+ "merged": true,
+ "createdAt": "2024-12-19T16:36:23Z",
+ "updatedAt": "2024-12-19T22:02:34Z",
+ "author": {
+ "login": "luisalrp",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/31384138?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg1NDAsIm5iZiI6MTczNDY0NzM0MCwicGF0aCI6Ii91LzMxMzg0MTM4In0.XQRH_JmHfJ9SSP2y-iWTJbtF0mMQ96QBOO5JmXkIdDI&u=dd50e8885f7f8e2372d955b7fae623bba8be9ec2&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": ".github/workflows/image.yaml",
+ "additions": 56,
+ "deletions": 47
+ }
+ ],
+ "reviews": [
+ {
+ "id": "PRR_kwDOMT5cIs6V-9km",
+ "author": "monilpat",
+ "body": "LGTM! ",
+ "state": "APPROVED"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "id": "PR_kwDOMT5cIs6F0DIE",
+ "number": 1242,
+ "title": "fix: twitterShouldRespondTemplate Fails When Defined as a String in JSON Character Config",
+ "body": "related: https://github.com/ai16z/eliza/issues/1235\r\n\r\n",
+ "state": "MERGED",
+ "merged": true,
+ "createdAt": "2024-12-19T16:31:00Z",
+ "updatedAt": "2024-12-19T22:02:54Z",
+ "author": {
+ "login": "tcm390",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/60634884?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkwODAsIm5iZiI6MTczNDY0Nzg4MCwicGF0aCI6Ii91LzYwNjM0ODg0In0.aTZg7v0-F5XSxIbAmBcfx_5AdpyFDh-e6rtAZEXNARI&u=c6c41679b8322eaa0c81f72e0b4ed95e80f0ac16&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": "packages/client-twitter/src/interactions.ts",
+ "additions": 1,
+ "deletions": 3
+ }
+ ],
+ "reviews": [
+ {
+ "id": "PRR_kwDOMT5cIs6V-82E",
+ "author": "monilpat",
+ "body": "LGTM",
+ "state": "APPROVED"
+ }
+ ],
+ "comments": [
+ {
+ "id": "IC_kwDOMT5cIs6YSfhm",
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1242?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n"
+ }
+ ]
+ },
+ {
+ "id": "PR_kwDOMT5cIs6Fzszd",
+ "number": 1241,
+ "title": "feat: add avail plugin",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nN/A\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow.\r\nThe main implementation risk is that the Plugin doesn't work as intended.\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n[Avail](https://www.availproject.org/) aims to accelerate Web3's unification using its cutting-edge modular technology stack, which combines data availability, aggregation, and shared security.\r\n\r\nIn this version, the `transfer` and `submitData` actions are supported.\r\n\r\nMultiple L2s are working with Avail to meet their data availability and interoperability needs.\r\n\r\n## What kind of change is this?\r\n\r\nFeatures (non-breaking change which adds functionality)\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\nSince Avail is a Substrate based network, and not EVM-compatible (cannot work with `plugin-evm`), it requires some docs to show how to submit data and transfer tokens. I have updated the documentation accordingly in the README for the plugin.\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\nMost of the changes are in `plugin-avail`\r\n\r\n\r\n## Detailed testing steps\r\n- In `.env` you should set the value for `AVAIL_ADDRESS` (this is the public address for the agent account) and `AVAIL_SEED` (seed phrase for the same account).\r\n- **Transfer AVAIL**\r\n - To test transfer function, you need tokens in your Avail account. On testnet, you can use the [Avail Faucet](https://faucet.avail.tools/). If you need more please ping me, and I can send it over. \r\n - Run the agent and prompt it with: \"send 1 AVAIL to \" - e.g. `send 1 AVAIL to 5GWbvXjefEvXXETtKQH7YBsUaPc379KAQATW1eqeJT26cbsK`\r\n - Assuming everything goes smoothly the agent returns with the Tx Hash, and Block Hash. \r\nThe tx hash can be checked on the Avail block explorer at https://avail-turing.subscan.io/\r\n- **Submit Data**\r\n - To test data submission, you need tokens in your Avail account to pay fees. On testnet, you can use the [Avail Faucet](https://faucet.avail.tools/). If you need more please ping me, and I can send it over. \r\n - Run the agent and prompt it with: \"Submit the following data to Avail \" - e.g. `Submit the following data to Avail \"Hello World!\"`\r\n - Assuming everything goes smoothly the agent returns with the Tx Hash, and Block Hash. \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n## Discord username\r\nRobinRRT\r\n\r\n",
+ "state": "OPEN",
+ "merged": false,
+ "createdAt": "2024-12-19T15:54:49Z",
+ "updatedAt": "2024-12-19T15:59:35Z",
+ "author": {
+ "login": "robin-rrt",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/66296664?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91LzY2Mjk2NjY0In0.xDIk15VBLjxq_UQ581P8lfJH4UZ_Es24hWAMsjRhmL0&u=3c317252695c6601ff8f1189de214e05a87458bd&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": ".env.example",
+ "additions": 6,
+ "deletions": 0
+ },
+ {
+ "path": "agent/package.json",
+ "additions": 1,
+ "deletions": 0
+ },
+ {
+ "path": "agent/src/index.ts",
+ "additions": 3,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-avail/.npmignore",
+ "additions": 6,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-avail/README.md",
+ "additions": 25,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-avail/eslint.config.mjs",
+ "additions": 3,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-avail/package.json",
+ "additions": 21,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-avail/src/actions/submitData.ts",
+ "additions": 238,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-avail/src/actions/transfer.ts",
+ "additions": 237,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-avail/src/environment.ts",
+ "additions": 36,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-avail/src/index.ts",
+ "additions": 23,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-avail/tsconfig.json",
+ "additions": 13,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-avail/tsup.config.ts",
+ "additions": 21,
+ "deletions": 0
+ },
+ {
+ "path": "pnpm-lock.yaml",
+ "additions": 0,
+ "deletions": 37536
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ },
+ {
+ "id": "PR_kwDOMT5cIs6Fydmw",
+ "number": 1239,
+ "title": "fix: Sync UI Client with server port env",
+ "body": "\r\n\r\n# Risks\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nIt uses SERVER_PORT environment variable in the client app\r\n\r\n## What kind of change is this?\r\nImprovements for developer experience\r\n\r\n## Why are we doing this? Any context or related work?\r\nExperienced this issue when developing and wanted to use another port then 3000\r\n\r\n# Documentation changes needed?\r\nMy changes do not require a change to the project documentation.\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "state": "MERGED",
+ "merged": true,
+ "createdAt": "2024-12-19T13:56:38Z",
+ "updatedAt": "2024-12-19T21:54:31Z",
+ "author": {
+ "login": "jonathangus",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/7723195?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg3MjAsIm5iZiI6MTczNDY0NzUyMCwicGF0aCI6Ii91Lzc3MjMxOTUifQ.htne0skqI0Y2OwK1K8bRO0AevoSbqtOjKav7qWgZDAo&u=2f07ca181065b387adcebe19eaf0798526e6f061&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": "client/vite.config.ts",
+ "additions": 4,
+ "deletions": 1
+ }
+ ],
+ "reviews": [
+ {
+ "id": "PRR_kwDOMT5cIs6V-60G",
+ "author": "monilpat",
+ "body": "LGTM - thank you!",
+ "state": "APPROVED"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "id": "PR_kwDOMT5cIs6Fxv6t",
+ "number": 1238,
+ "title": "Feat/deva client integration",
+ "body": "# Pull Request: Integrate Deva into Eliza\r\n\r\n## Relates to\r\n\r\nThis PR adds a new [Deva](https://www.deva.me/) client integration for the Eliza AI agent, enabling posting and scheduling posts to the [Deva](https://www.deva.me/) feed.\r\n\r\n## Risks\r\n\r\n- **Minimal Risk**: This integration is additive and does not alter existing functionalities of Eliza.\r\n- **Dependency Management**: Introduces a new dependency on Deva's API, which requires monitoring for future updates or changes.\r\n- **Data Privacy**: Ensures that any data shared between Eliza and Deva complies with our privacy policies.\r\n\r\n## Background\r\n\r\n### What does this PR do?\r\n\r\nThis PR introduces the capability to post and schedule content directly to the [Deva platform](https://www.deva.me/) from the Eliza AI agent. Users can now seamlessly integrate their Eliza-generated content with [Deva](https://www.deva.me/), enhancing their content distribution and engagement strategies.\r\n\r\n### What kind of change is this?\r\n\r\n**Feature**: This is a non-breaking change that adds new functionality to the Eliza AI agent by integrating with Devaโs API for posting and scheduling content.\r\n\r\n## Documentation Changes Needed?\r\n\r\nNot at the moment.\r\n\r\n## Testing\r\n\r\n### Detailed Testing Steps\r\n\r\n1. **Create a Deva Account**\r\n - Navigate to [deva.me](https://www.deva.me/), create an account, and press the \"Get Started\" button in the top right.\r\n - ![Get Started](https://github.com/user-attachments/assets/a31ebe01-3ee7-40f5-8e30-f59c79c642fe)\r\n\r\n2. **Complete Onboarding**\r\n - Click through the onboarding screens and connect your preferred social account (e.g., Twitter) to Deva.\r\n\r\n3. **Access the Deva Feed**\r\n - You can now see the Deva feed, where you can post and interact with other Devas.\r\n - \r\n\r\n4. **Create an Application to get the token**\r\n - At this point, you'll be able to get a token to interact with Deva, to do so: \r\n - Navigate to Apps chapter in settings by clicking the user icon in top right corner and then settings -> Apps, or opening [apps](https://www.deva.me/settings/apps)\r\n - Press Apps and Session\r\n
![image](https://github.com/user-attachments/assets/9fda36ac-3675-4f30-8c48-9b91e71a741e)\r\n - Press Create new app\r\n
![image](https://github.com/user-attachments/assets/32fc9b04-510e-4a90-876c-e4f6d2e562d7)\r\n - You are redirected to the form of the app creation, Name, Redirect URL and descriptions are necessary fields. Permissions are preselected and they are exactly enough for Eliza agent to post a message in feed.\r\n - After creating an app, select it from the list of apps;\r\n - Inside you will find a Get Token button, to generate a new token for your app:\r\n
![image](https://github.com/user-attachments/assets/307ab088-0508-496e-bc8e-4ded833e8b4f)\r\n - Later, it'll be visible in the list:\r\n
![image](https://github.com/user-attachments/assets/39034c0d-3cf3-4a69-aaab-8cd1740d9ba6)\r\n\r\n5. **Update Environment Variables**\r\n - Once you have the token, update the environment variables in the `.env` file:\r\n ```env\r\n DEVA_API_KEY=YourApiKey\r\n DEVA_API_BASE_URL=https://api.deva.me # Production API URL\r\n ```\r\n\r\n6. **Select Deva Client as Default Character**\r\n - Select the Deva client as Eliza's default character and choose the desired model:\r\n
![Select Deva Client](https://github.com/user-attachments/assets/1120ebb4-4618-4364-bbf8-7040b6bda8c0)\r\n\r\n7. **Run the Application**\r\n - Execute the following commands to install dependencies and start the application:\r\n ```bash\r\n pnpm install && pnpm start\r\n ```\r\n - This will initiate the Deva client:\r\n
![Initiate Deva Client](https://github.com/user-attachments/assets/4ef64f0b-c2c1-4a4b-a6b5-0461433af022)\r\n - Fetch the persona associated with your agent and the posts that you have pushed to the Deva feed:\r\n
![Fetch Persona and Posts](https://github.com/user-attachments/assets/5a698b06-b616-47cc-8318-355a91cc424c)\r\n - Once done, Eliza will post one message to the Deva feed immediately and schedule another one as a test message:\r\n
![Post Messages](https://github.com/user-attachments/assets/523d69f4-1f3f-4d49-82a1-163e3cd4d128)\r\n8. **Eliza agent's post is in the feed!**\r\n - \r\n\r\n\r\n### Staging Environment Testing\r\n\r\nTo avoid populating the production Deva feed, you can perform the same flow in the [staging environment](https://staging.deva.me/). Ensure you update the related environment variable:\r\n\r\n```env\r\nDEVA_API_BASE_URL=https://api-staging.deva.me # Staging API URL\r\n",
+ "state": "OPEN",
+ "merged": false,
+ "createdAt": "2024-12-19T12:44:48Z",
+ "updatedAt": "2024-12-19T17:45:19Z",
+ "author": {
+ "login": "stopmalone",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/191122176?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0ODAsIm5iZiI6MTczNDY0NzI4MCwicGF0aCI6Ii91LzE5MTEyMjE3NiJ9.ybYAjXg2xaOgZcqMmzsOuJjvH0kd5lS5Gz7MnOiTJ7Q&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": ".env.example",
+ "additions": 4,
+ "deletions": 0
+ },
+ {
+ "path": ".gitignore",
+ "additions": 2,
+ "deletions": 0
+ },
+ {
+ "path": "agent/package.json",
+ "additions": 1,
+ "deletions": 0
+ },
+ {
+ "path": "agent/src/index.ts",
+ "additions": 6,
+ "deletions": 0
+ },
+ {
+ "path": "docs/api/enumerations/Clients.md",
+ "additions": 9,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-deva/.npmignore",
+ "additions": 6,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-deva/eslint.config.mjs",
+ "additions": 3,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-deva/package.json",
+ "additions": 24,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-deva/src/base.ts",
+ "additions": 60,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-deva/src/controller.ts",
+ "additions": 242,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-deva/src/devaClient.ts",
+ "additions": 30,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-deva/src/enviroment.ts",
+ "additions": 32,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-deva/src/index.ts",
+ "additions": 28,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-deva/src/templates.ts",
+ "additions": 24,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-deva/src/types.ts",
+ "additions": 21,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-deva/tsconfig.json",
+ "additions": 8,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-deva/tsup.config.ts",
+ "additions": 20,
+ "deletions": 0
+ },
+ {
+ "path": "packages/core/src/types.ts",
+ "additions": 2,
+ "deletions": 0
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ },
+ {
+ "id": "PR_kwDOMT5cIs6FxgNl",
+ "number": 1237,
+ "title": "Update trump.character.json - Enhance terminology in the project for clarity and inclusivity",
+ "body": "While reviewing the documentation, I noticed the term โChina virus.โ To maintain professionalism and align with WHO naming standards, I suggest replacing it with terms like โCOVID-19โ or โSARS-CoV-2.โ This adjustment not only ensures accuracy but also promotes inclusivity and avoids potential misunderstandings.",
+ "state": "MERGED",
+ "merged": true,
+ "createdAt": "2024-12-19T12:19:10Z",
+ "updatedAt": "2024-12-19T22:25:39Z",
+ "author": {
+ "login": "yjshi2015",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/27291507?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkxNDAsIm5iZiI6MTczNDY0Nzk0MCwicGF0aCI6Ii91LzI3MjkxNTA3In0.xoqYjUq9ys7ZiKG80ewP_HiLtsLumNcsIRVYTO9lg4g&u=967c2c7ba1dddfaa2f14b55ef74ee6f4c0f2b5e6&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": "characters/trump.character.json",
+ "additions": 1,
+ "deletions": 1
+ }
+ ],
+ "reviews": [
+ {
+ "id": "PRR_kwDOMT5cIs6V-7wl",
+ "author": "monilpat",
+ "body": "LGTM!",
+ "state": "APPROVED"
+ }
+ ],
+ "comments": [
+ {
+ "id": "IC_kwDOMT5cIs6YV57I",
+ "author": "lalalune",
+ "body": "> While reviewing the documentation, I noticed the term โChina virus.โ To maintain professionalism and align with WHO naming standards, I suggest replacing it with terms like โCOVID-19โ or โSARS-CoV-2.โ This adjustment not only ensures accuracy but also promotes inclusivity and avoids potential misunderstandings.\r\n\r\nThe point of characters is to capture the person accurately, not the facts. Trump says silly offensive stuff, and we wanted to capture that. He would not say SARS-COVID-19. I disagree with about 99% of the stuff he says, and 99% of the stuff his character file says. That being said, I care about art, and not letting art be compromised by politics.\r\n\r\nWe love people all over the world, and personally I will be visiting China in a couple days to meet everyone. I don't believe that we should be against any group for their nationality. But we shouldn't kill the comedy and make our characters worse-- that's why OpenAI's models suck now. It's a slippery slope that will reduce bravery, integrity and quality."
+ }
+ ]
+ },
+ {
+ "id": "PR_kwDOMT5cIs6FxBgJ",
+ "number": 1236,
+ "title": "Update README for french, spanish and italian language",
+ "body": "# Relates to: N/A\r\n\r\n# Risks\r\n\r\nNo risk\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nUpdate readme FR/ES/IT for typo, spelling, etc \r\n\r\n## What kind of change is this?\r\n\r\nUpdates (new versions of included code)\r\n\r\n## Why are we doing this? Any context or related work?\r\n--> Incorrect use of language \r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n## Discord username\r\n\r\n--> azurwastaken\r\n",
+ "state": "MERGED",
+ "merged": true,
+ "createdAt": "2024-12-19T11:24:39Z",
+ "updatedAt": "2024-12-19T21:55:23Z",
+ "author": {
+ "login": "azurwastaken",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/30268138?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg2MDAsIm5iZiI6MTczNDY0NzQwMCwicGF0aCI6Ii91LzMwMjY4MTM4In0.0TrV_Q5n3Vx_Ly-e8SqcXksrXPMO2MatiDEMRubGAw4&u=9f22ac121f4dbfc0e56a0f165dfc306d419ec514&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": "README_ES.md",
+ "additions": 3,
+ "deletions": 3
+ },
+ {
+ "path": "README_FR.md",
+ "additions": 6,
+ "deletions": 6
+ },
+ {
+ "path": "README_IT.md",
+ "additions": 7,
+ "deletions": 7
+ }
+ ],
+ "reviews": [
+ {
+ "id": "PRR_kwDOMT5cIs6V-7SM",
+ "author": "monilpat",
+ "body": "LGTM !",
+ "state": "APPROVED"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "id": "PR_kwDOMT5cIs6FvYtK",
+ "number": 1231,
+ "title": "chore: added config to whitelist the telegram users",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nThis PR adds functionality to allow developers to whitelist Telegram users, granting them access to the bot.\r\n\r\n## What kind of change is this?\r\nFeatures (non-breaking change which adds functionality)\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "state": "OPEN",
+ "merged": false,
+ "createdAt": "2024-12-19T08:00:24Z",
+ "updatedAt": "2024-12-19T15:43:32Z",
+ "author": {
+ "login": "tungpun",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/5058370?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg3ODAsIm5iZiI6MTczNDY0NzU4MCwicGF0aCI6Ii91LzUwNTgzNzAifQ.YGTaug1L0oc7VUfJB_zg2PibAVY09Y_PY48e4fv5qaU&u=59cb956de322867be56c0abee49ab3f28f819e2f&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": ".env.example",
+ "additions": 1,
+ "deletions": 0
+ },
+ {
+ "path": ".gitignore",
+ "additions": 1,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-telegram/src/messageManager.ts",
+ "additions": 9,
+ "deletions": 1
+ }
+ ],
+ "reviews": [],
+ "comments": [
+ {
+ "id": "IC_kwDOMT5cIs6YRbbh",
+ "author": "azep-ninja",
+ "body": "Like this enhancement. I recently added one to whitelist Telegram groups.\r\n\r\nHonestly think this might make more sense within the characters client config, similar to what I added.\r\n\r\nYou'll need to modify the types for the character file, but keeps the ENV less cluttered.\r\n\r\nReference: https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts\r\n\r\n![image](https://github.com/user-attachments/assets/665edc1f-cab5-48de-adc2-e59e1629bdde)\r\n\r\nAnd you can see how that was/is used in the messageManager.ts file for reference."
+ }
+ ]
+ },
+ {
+ "id": "PR_kwDOMT5cIs6FvWo3",
+ "number": 1230,
+ "title": "chore: added config for to whitelist telegram user",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nThis PR adds functionality to allow developers to whitelist Telegram users, granting them access to the bot.\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "state": "CLOSED",
+ "merged": false,
+ "createdAt": "2024-12-19T07:54:59Z",
+ "updatedAt": "2024-12-19T07:58:12Z",
+ "author": {
+ "login": "tungpun",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/5058370?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg3ODAsIm5iZiI6MTczNDY0NzU4MCwicGF0aCI6Ii91LzUwNTgzNzAifQ.YGTaug1L0oc7VUfJB_zg2PibAVY09Y_PY48e4fv5qaU&u=59cb956de322867be56c0abee49ab3f28f819e2f&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": ".env.example",
+ "additions": 1,
+ "deletions": 0
+ },
+ {
+ "path": ".gitignore",
+ "additions": 1,
+ "deletions": 0
+ },
+ {
+ "path": "packages/client-telegram/src/messageManager.ts",
+ "additions": 12,
+ "deletions": 1
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ },
+ {
+ "id": "PR_kwDOMT5cIs6FvNgL",
+ "number": 1229,
+ "title": "feat: add parse mode=Markdown, enhance telegram bot output",
+ "body": "# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nIt added `parse_mode=\"Markdown\"` to support code suggestion in Telegram bot output\r\n\r\n## What kind of change is this?\r\n\r\nImprovements (misc. changes to existing features)\r\n\r\n## Why are we doing this? Any context or related work?\r\nIt would be nice to have Markdown support in bot output, this is heavily used in all LLMs output\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n## Screenshots\r\n\r\n### Before\r\n\r\n\r\n### After\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "state": "MERGED",
+ "merged": true,
+ "createdAt": "2024-12-19T07:31:17Z",
+ "updatedAt": "2024-12-19T07:50:08Z",
+ "author": {
+ "login": "simpletrontdip",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/20158564?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5MDAsIm5iZiI6MTczNDY0NzcwMCwicGF0aCI6Ii91LzIwMTU4NTY0In0.dPZab45J8lkENAvzV8Qyi-otNiiTGf44oBcjqxoS5mg&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": "packages/client-telegram/src/messageManager.ts",
+ "additions": 1,
+ "deletions": 0
+ }
+ ],
+ "reviews": [
+ {
+ "id": "PRR_kwDOMT5cIs6V0i_a",
+ "author": "shakkernerd",
+ "body": "This is a good one!",
+ "state": "APPROVED"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "id": "PR_kwDOMT5cIs6Fu6tb",
+ "number": 1228,
+ "title": "Create requirements.txt",
+ "body": "add\r\n\r\n\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "state": "CLOSED",
+ "merged": false,
+ "createdAt": "2024-12-19T06:38:42Z",
+ "updatedAt": "2024-12-19T06:48:44Z",
+ "author": {
+ "login": "mobi8",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/116540956?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0MjAsIm5iZiI6MTczNDY0NzIyMCwicGF0aCI6Ii91LzExNjU0MDk1NiJ9.kHchK_MjTR4daYT3OnAj_CC1N0leKgjEP-1jZk4UaLg&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": "requirements.txt",
+ "additions": 2,
+ "deletions": 0
+ }
+ ],
+ "reviews": [],
+ "comments": [
+ {
+ "id": "IC_kwDOMT5cIs6YKmFL",
+ "author": "shakkernerd",
+ "body": "A requirements.txt file is not needed since this is a TypeScript project."
+ }
+ ]
+ },
+ {
+ "id": "PR_kwDOMT5cIs6FuqF8",
+ "number": 1227,
+ "title": "docs(readme): add bash code block for all bash scripts",
+ "body": "Add `bash` code block for all the bash scripts, better to markdown rendering\r\n",
+ "state": "CLOSED",
+ "merged": false,
+ "createdAt": "2024-12-19T05:49:29Z",
+ "updatedAt": "2024-12-19T06:32:39Z",
+ "author": {
+ "login": "9547",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/29431502?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkyMDAsIm5iZiI6MTczNDY0ODAwMCwicGF0aCI6Ii91LzI5NDMxNTAyIn0.PAeiPZdpnsK9tsuSRwgz1z1YgHWgk8LTZ7oa9Qj6tbs&u=def2043f3c532d18cae388fcec8d24a21e08d044&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": "README.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "README_CN.md",
+ "additions": 3,
+ "deletions": 3
+ },
+ {
+ "path": "README_DE.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "README_ES.md",
+ "additions": 3,
+ "deletions": 3
+ },
+ {
+ "path": "README_FR.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "README_HE.md",
+ "additions": 4,
+ "deletions": 5
+ },
+ {
+ "path": "README_IT.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "README_JA.md",
+ "additions": 3,
+ "deletions": 3
+ },
+ {
+ "path": "README_KOR.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "README_PTBR.md",
+ "additions": 3,
+ "deletions": 3
+ },
+ {
+ "path": "README_TH.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "README_TR.md",
+ "additions": 4,
+ "deletions": 4
+ },
+ {
+ "path": "README_VI.md",
+ "additions": 2,
+ "deletions": 2
+ }
+ ],
+ "reviews": [],
+ "comments": [
+ {
+ "id": "IC_kwDOMT5cIs6YKVuN",
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1227?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n\n[see 9 files with indirect coverage changes](https://app.codecov.io/gh/ai16z/eliza/pull/1227/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z)\n"
+ },
+ {
+ "id": "IC_kwDOMT5cIs6YKhqP",
+ "author": "shakkernerd",
+ "body": "Thanks for the PR but I think adding `bash` to the code block doesn't make any difference given the markdown is perfectly rendered."
+ }
+ ]
+ },
+ {
+ "id": "PR_kwDOMT5cIs6Fub2J",
+ "number": 1226,
+ "title": "fix: CircuitBreaker.ts",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nRelated to https://github.com/ai16z/eliza/pull/719\r\nBuild upon on https://github.com/ai16z/eliza/pull/812\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n`medium`, since we change the database adapters `circuitbase` code in the failure conditions.\r\n\r\n\r\n\r\n# Background\r\n\r\nDuring checking and learning the core code from AI16Z, I dig deeper into it and find out that the condition to restart the error need to be more fulfill.\r\n\r\n## What does this PR do?\r\n\r\nFulfill the condition in handling the failures.\r\n\r\n## What kind of change is this?\r\n\r\n**Improvements** \r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\nIf a docs change is needed: I have updated the documentation accordingly.\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\nYes\r\n\r\n",
+ "state": "MERGED",
+ "merged": true,
+ "createdAt": "2024-12-19T04:53:10Z",
+ "updatedAt": "2024-12-19T06:44:23Z",
+ "author": {
+ "login": "tomguluson92",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/19585240?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91LzE5NTg1MjQwIn0.gXlxEwvwu9reKlsbqgUt9Tx7a5qqekgFUel_ERC3Fwo&u=4a4465656050747dee79f5f97a8b61cf2fbc97e1&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": "packages/core/src/database/CircuitBreaker.ts",
+ "additions": 1,
+ "deletions": 1
+ }
+ ],
+ "reviews": [
+ {
+ "id": "PRR_kwDOMT5cIs6V0IhH",
+ "author": "shakkernerd",
+ "body": "",
+ "state": "APPROVED"
+ }
+ ],
+ "comments": [
+ {
+ "id": "IC_kwDOMT5cIs6YKHMY",
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1226?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAttention: Patch coverage is `0%` with `1 line` in your changes missing coverage. Please review.\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1226?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Patch % | Lines |\n|---|---|---|\n| [packages/core/src/database/CircuitBreaker.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1226?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fdatabase%2FCircuitBreaker.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvZGF0YWJhc2UvQ2lyY3VpdEJyZWFrZXIudHM=) | 0.00% | [1 Missing :warning: ](https://app.codecov.io/gh/ai16z/eliza/pull/1226?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) |\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1226?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Coverage ฮ | |\n|---|---|---|\n| [packages/core/src/database/CircuitBreaker.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1226?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fdatabase%2FCircuitBreaker.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvZGF0YWJhc2UvQ2lyY3VpdEJyZWFrZXIudHM=) | `36.20% <0.00%> (-1.98%)` | :arrow_down: |\n"
+ }
+ ]
+ },
+ {
+ "id": "PR_kwDOMT5cIs6FuLuh",
+ "number": 1225,
+ "title": "[WIP] feat: add abstract plugin",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nAdds Abstract support to Eliza agents!\r\n\r\n# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nAdds support for Eliza to interact with Abstract testnet. The logic borrows heavily from #906, but changes zksync references to Abstract and uses viem for onchain interactions. In the future, I'll be adding more custom abstract-only functionality which is why I did not re-use the existing zksync logic.\r\n\r\n## What kind of change is this?\r\n\r\nFeature\r\n\r\n# Documentation changes needed?\r\n\r\nYes, I will add Abstract specific documentation\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\nSpin up an agent with the abstract plugin\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "state": "OPEN",
+ "merged": false,
+ "createdAt": "2024-12-19T03:52:15Z",
+ "updatedAt": "2024-12-19T04:01:38Z",
+ "author": {
+ "login": "cygaar",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/97691933?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91Lzk3NjkxOTMzIn0.vv-JK85dC71dWur7eEcbi2Ry93mpLfQ5KxBgeSQHBMk&u=45e66309f3fd41536b48a58f3c949b9e4e90789a&v=4"
+ },
+ "labels": [
+ {
+ "id": "LA_kwDOMT5cIs8AAAAB1NgIxA",
+ "name": "Plugin_new",
+ "color": "FBCA04",
+ "description": "Mark PRs that are a new plugin"
+ }
+ ],
+ "files": [
+ {
+ "path": ".env.example",
+ "additions": 5,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-abstract/package.json",
+ "additions": 20,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-abstract/src/actions/transfer.ts",
+ "additions": 213,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-abstract/src/environment.ts",
+ "additions": 32,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-abstract/src/index.ts",
+ "additions": 13,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-abstract/tsconfig.json",
+ "additions": 10,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-abstract/tsup.config.ts",
+ "additions": 20,
+ "deletions": 0
+ },
+ {
+ "path": "pnpm-lock.yaml",
+ "additions": 22,
+ "deletions": 1
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ },
+ {
+ "id": "PR_kwDOMT5cIs6Ftixf",
+ "number": 1220,
+ "title": "fix: Allow the bot to post messages with images generated by the imageGenerationPlugin on Telegram.",
+ "body": "related: \r\nhttps://github.com/ai16z/eliza/issues/970\r\nhttps://github.com/ai16z/eliza/pull/1040\r\n\r\n\r\n\r\n\r\n",
+ "state": "MERGED",
+ "merged": true,
+ "createdAt": "2024-12-19T00:16:18Z",
+ "updatedAt": "2024-12-19T02:06:20Z",
+ "author": {
+ "login": "tcm390",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/60634884?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkwODAsIm5iZiI6MTczNDY0Nzg4MCwicGF0aCI6Ii91LzYwNjM0ODg0In0.aTZg7v0-F5XSxIbAmBcfx_5AdpyFDh-e6rtAZEXNARI&u=c6c41679b8322eaa0c81f72e0b4ed95e80f0ac16&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": "packages/client-telegram/src/messageManager.ts",
+ "additions": 106,
+ "deletions": 54
+ },
+ {
+ "path": "packages/client-twitter/src/utils.ts",
+ "additions": 2,
+ "deletions": 12
+ },
+ {
+ "path": "packages/plugin-image-generation/src/index.ts",
+ "additions": 1,
+ "deletions": 1
+ }
+ ],
+ "reviews": [
+ {
+ "id": "PRR_kwDOMT5cIs6VzApi",
+ "author": "monilpat",
+ "body": "LGTM - thank you so much for doing this please feel free to close the issues :) ",
+ "state": "APPROVED"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "id": "PR_kwDOMT5cIs6Ftgpa",
+ "number": 1219,
+ "title": "fix: postgres needs the user to exist before you can add a participant",
+ "body": "# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nwaits for users to be added before proceeding to adding participants\r\n\r\nalso moves the db check up before doing any db things\r\n\r\n## What kind of change is this?\r\n\r\nBug fixes (non-breaking change which fixes an issue)\r\n\r\n## Why are we doing this? Any context or related work?\r\n\r\n```\r\n [\"โ Room c6dc9108-8990-0d80-a635-98d3a928f4e4 created successfully.\"] \r\n\r\nError adding participant error: insert or update on table \"participants\" violates foreign key constraint \"participants_userId_fkey\"\r\n at /root/eliza-odi/node_modules/pg-pool/index.js:45:11\r\n at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\r\n at async file:///root/eliza-odi/packages/adapter-postgres/dist/index.js:822:17\r\n at async PostgresDatabaseAdapter.withRetry (file:///root/eliza-odi/packages/adapter-postgres/dist/index.js:67:24)\r\n at async CircuitBreaker.execute (file:///root/eliza-odi/packages/core/dist/index.js:93:28)\r\n at async PostgresDatabaseAdapter.withCircuitBreaker (file:///root/eliza-odi/packages/core/dist/index.js:383:20)\r\n at async AgentRuntime.ensureParticipantExists (file:///root/eliza-odi/packages/core/dist/index.js:3661:13) {\r\n length: 305,\r\n severity: 'ERROR',\r\n code: '23503',\r\n detail: 'Key (userId)=(c6dc9108-8990-0d80-a635-98d3a928f4e4) is not present in table \"accounts\".',\r\n hint: undefined,\r\n position: undefined,\r\n internalPosition: undefined,\r\n internalQuery: undefined,\r\n where: undefined,\r\n schema: 'public',\r\n table: 'participants',\r\n column: undefined,\r\n dataType: undefined,\r\n constraint: 'participants_userId_fkey',\r\n file: 'ri_triggers.c',\r\n line: '2608',\r\n routine: 'ri_ReportViolation'\r\n}\r\n [\"โ User WokeMindVirus created successfully.\"]\r\n```\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n",
+ "state": "MERGED",
+ "merged": true,
+ "createdAt": "2024-12-19T00:06:37Z",
+ "updatedAt": "2024-12-19T02:09:16Z",
+ "author": {
+ "login": "odilitime",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/16395496?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0MjAsIm5iZiI6MTczNDY0NzIyMCwicGF0aCI6Ii91LzE2Mzk1NDk2In0.AHDvuRgPHYO0i8IDYNzSfDB3Ae2PlvNoeRcGjB_wn9Q&u=45c152d8433e37c62520e66c0dd6d754ccf3eaf4&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": "packages/core/src/runtime.ts",
+ "additions": 8,
+ "deletions": 5
+ }
+ ],
+ "reviews": [
+ {
+ "id": "PRR_kwDOMT5cIs6VzBJP",
+ "author": "monilpat",
+ "body": "LGTM!",
+ "state": "APPROVED"
+ }
+ ],
+ "comments": [
+ {
+ "id": "IC_kwDOMT5cIs6YJFjq",
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1219?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAttention: Patch coverage is `0%` with `6 lines` in your changes missing coverage. Please review.\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1219?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Patch % | Lines |\n|---|---|---|\n| [packages/core/src/runtime.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1219?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fruntime.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvcnVudGltZS50cw==) | 0.00% | [6 Missing :warning: ](https://app.codecov.io/gh/ai16z/eliza/pull/1219?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) |\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1219?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Coverage ฮ | |\n|---|---|---|\n| [packages/core/src/runtime.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1219?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fruntime.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvcnVudGltZS50cw==) | `0.00% <0.00%> (รธ)` | |\n"
+ }
+ ]
+ },
+ {
+ "id": "PR_kwDOMT5cIs6FtU_W",
+ "number": 1218,
+ "title": "chore: clean up scripts",
+ "body": "I'm very new to this project so bear with me - I stumbled across these three files:\r\n\r\n* scripts/gettweets-copy.mjs\r\n* scripts/gettweets.mjs\r\n* scripts/tweetextractor.mjs\r\n\r\nAll appear to do the same thing. The first one uses environmental variables, the second two actually have hardcoded credentials for a real Twitter account.\r\n\r\nShould we simply delete the latter two and scrub the credentials from the git history? Or is there some reason that things are like this?\r\n\r\nThanks for your patience, just getting the hang of things.",
+ "state": "MERGED",
+ "merged": true,
+ "createdAt": "2024-12-18T23:15:48Z",
+ "updatedAt": "2024-12-19T06:56:57Z",
+ "author": {
+ "login": "danbednarski",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/183874220?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0ODAsIm5iZiI6MTczNDY0NzI4MCwicGF0aCI6Ii91LzE4Mzg3NDIyMCJ9.K5HcKBhqOKkEAALB4r65mm2QHcjXkgOuJdgIUPTqg3U&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": "scripts/gettweets-copy.mjs",
+ "additions": 0,
+ "deletions": 76
+ },
+ {
+ "path": "scripts/gettweets.mjs",
+ "additions": 16,
+ "deletions": 32
+ },
+ {
+ "path": "scripts/tweetextractor.mjs",
+ "additions": 0,
+ "deletions": 131
+ }
+ ],
+ "reviews": [
+ {
+ "id": "PRR_kwDOMT5cIs6V0OSf",
+ "author": "shakkernerd",
+ "body": "",
+ "state": "APPROVED"
+ }
+ ],
+ "comments": [
+ {
+ "id": "IC_kwDOMT5cIs6YJDqp",
+ "author": "odilitime",
+ "body": "I notified the author of original PR, so he's aware of what happened"
+ }
+ ]
+ },
+ {
+ "id": "PR_kwDOMT5cIs6FtTXw",
+ "number": 1217,
+ "title": "fix: improve twitter post generation prompt",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nAdds more variance to tweet generation so the content feels less stale\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "state": "MERGED",
+ "merged": true,
+ "createdAt": "2024-12-18T23:08:16Z",
+ "updatedAt": "2024-12-19T00:00:41Z",
+ "author": {
+ "login": "cygaar",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/97691933?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91Lzk3NjkxOTMzIn0.vv-JK85dC71dWur7eEcbi2Ry93mpLfQ5KxBgeSQHBMk&u=45e66309f3fd41536b48a58f3c949b9e4e90789a&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": "packages/client-twitter/src/post.ts",
+ "additions": 238,
+ "deletions": 128
+ },
+ {
+ "path": "packages/core/src/types.ts",
+ "additions": 2,
+ "deletions": 2
+ }
+ ],
+ "reviews": [
+ {
+ "id": "PRR_kwDOMT5cIs6VydQI",
+ "author": "odilitime",
+ "body": "",
+ "state": "COMMENTED"
+ },
+ {
+ "id": "PRR_kwDOMT5cIs6VyfJb",
+ "author": "cygaar",
+ "body": "",
+ "state": "COMMENTED"
+ },
+ {
+ "id": "PRR_kwDOMT5cIs6Vyn7B",
+ "author": "odilitime",
+ "body": "",
+ "state": "APPROVED"
+ }
+ ],
+ "comments": []
+ }
+]
diff --git a/data/daily/history/summary_2024_12_19.json b/data/daily/history/summary_2024_12_19.json
new file mode 100644
index 0000000..16e89d4
--- /dev/null
+++ b/data/daily/history/summary_2024_12_19.json
@@ -0,0 +1,65 @@
+{
+ "title": "ai16z Eliza (2024-12-18)",
+ "version": "",
+ "overview": "Development focused on 1 bug fixes. with 21 contributors merging 7 PRs. Major work included various improvements.",
+ "metrics": {
+ "contributors": 21,
+ "merged_prs": 7,
+ "new_issues": 7,
+ "lines_changed": 916
+ },
+ "changes": {
+ "features": [],
+ "fixes": [
+ "gitpod cicd bug"
+ ],
+ "chores": [
+ "New docs"
+ ]
+ },
+ "areas": [
+ {
+ "name": "docs",
+ "files": 101,
+ "additions": 359,
+ "deletions": 343
+ },
+ {
+ "name": "root",
+ "files": 4,
+ "additions": 62,
+ "deletions": 11
+ },
+ {
+ "name": "packages",
+ "files": 2,
+ "additions": 140,
+ "deletions": 1
+ }
+ ],
+ "issues_summary": "working on 4 bugs including 'unable to chat in terminal', 'double backslash when posting to X' and implementing 3 feature requests including 'chore: Document Missing Plugin Documentation and Examples', 'Improve Logging in /packages/plugin-coinbase/src/plugins'",
+ "questions": [],
+ "top_contributors": [
+ {
+ "name": "madjin",
+ "summary": "madjin is currently working on documenting missing plugin documentation and examples, as well as enhancing existing documentation with new content",
+ "areas": [
+ "docs"
+ ]
+ },
+ {
+ "name": "tomguluson92",
+ "summary": "tomguluson92 is primarily focused on updating the \"CN README\" documentation with more details, as indicated by the recent merged pull request",
+ "areas": [
+ "README_CN.md"
+ ]
+ },
+ {
+ "name": "ileana-pr",
+ "summary": "ileana-pr is currently working on documentation by fixing the CONTRIBUTING",
+ "areas": [
+ "docs"
+ ]
+ }
+ ]
+}
\ No newline at end of file
diff --git a/data/daily/history/summary_2024_12_19.md b/data/daily/history/summary_2024_12_19.md
new file mode 100644
index 0000000..ca28cd8
--- /dev/null
+++ b/data/daily/history/summary_2024_12_19.md
@@ -0,0 +1,42 @@
+# ai16z Eliza (2024-12-18)
+
+## ๐ Overview
+Development focused on 1 bug fixes. with 21 contributors merging 7 PRs. Major work included various improvements.
+
+## ๐ Key Metrics
+| Metric | Count |
+|---------|--------|
+| ๐ฅ Contributors | 21 |
+| ๐ Commits | 0 |
+| ๐ Merged PRs | 7 |
+| โ ๏ธ New Issues | 7 |
+
+## ๐ Pull Request Summary
+- ๐งน **Chores**: 1
+- ๐ **Fixes**: 1
+- โจ **Features**: 0
+
+## ๐ File Changes
+- **docs**: 101 files (+359/-343 lines)
+- **packages**: 2 files (+140/-1 lines)
+- **root**: 4 files (+62/-11 lines)
+
+## ๐ฅ Notable Changes
+- chore: New docs
+- docs: Update "CN README" with more details
+- docs: fixed CONTRIBUTING.md file Issue: 1048
+
+## ๐ฅ Top Contributors
+- **madjin**: madjin is currently working on documenting missing plugin documentation and examples, as well as enhancing existing documentation with new content
+- **tomguluson92**: tomguluson92 is primarily focused on updating the "CN README" documentation with more details, as indicated by the recent merged pull request
+- **ileana-pr**: ileana-pr is currently working on documentation by fixing the CONTRIBUTING
+
+## โ ๏ธ Issues
+- **New Issues**: 7
+- **Labels**: `bug` (4), `enhancement` (3), `documentation` (1)
+- **Summary**: 4 bugs reported (including 'unable to chat in terminal', 'double backslash when posting to X') 3 feature requests (including 'chore: Document Missing Plugin Documentation and Examples', 'Improve Logging in /packages/plugin-coinbase/src/plugins').
+
+## Top Contributors
+- **madjin**: chore: New docs
+- **tomguluson92**: docs: Update "CN README" with more details
+- **ileana-pr**: docs: fixed CONTRIBUTING.md file Issue: 1048
\ No newline at end of file
diff --git a/data/daily/issues.json b/data/daily/issues.json
index be4e410..7d5bdf4 100644
--- a/data/daily/issues.json
+++ b/data/daily/issues.json
@@ -1,15 +1,15 @@
[
{
- "id": "I_kwDOMT5cIs6j1uaX",
- "number": 1213,
- "title": "chat stuck in infinite loop",
- "body": "Have tried installing and reinstalling many times, chat with any agent always gets stuck in loop where agent just keeps replying to itself.\r\n\r\nHappens each time I successfully start an agent with npm start (either chatting in terminal in older versions or with localhost:5173)\r\n\r\nI would expect the agent to have a dialogue with me but it becomes impossible when the agent just keeps saying things to itself over and over.",
+ "id": "I_kwDOMT5cIs6kALjJ",
+ "number": 1251,
+ "title": "Cannot read properties of undefined (reading 'rpcUrls') ",
+ "body": "**Describe the bug**\r\n\r\nSwap execution fails with \"Cannot read properties of undefined (reading 'rpcUrls')\" error during LiFi SDK initialization. The issue occurs because the RPC URLs configuration doesn't match the format expected by the SDK.\r\n\r\n**To Reproduce**\r\n\r\n1. Initialize SwapAction with a WalletProvider\r\n2. Attempt to execute a swap with a prompt\r\n3. Error occurs during configuration creation in SwapAction constructor\r\n\r\n**Expected behavior**\r\n\r\nSwap should execute normally\r\n\r\n**Screenshots**\r\n\r\nLogs : \r\n```\r\n [\"โ Normalized action: swap\"] \r\n\r\n [\"โน Executing handler for action: swap\"] \r\nError in swap handler: Cannot read properties of undefined (reading 'rpcUrls')\r\n โ LOGS\r\n Evaluating \r\n GET_FACTS \r\n\r\n โ LOGS\r\n Evaluating \r\n UPDATE_GOAL \r\n\r\n โ LOGS\r\n Creating Memory \r\n 3131de6c-ba7b-0dad-b05f-eeed7ceae7ca \r\n Error: Cannot read properties of undefined (reading 'rpcUrls') \r\n```\r\n\r\n**Additional context**\r\n\r\nmy .env file :\r\n\r\n```\r\n.....\r\n# EVM\r\nEVM_PRIVATE_KEY=my_private_key\r\nEVM_PROVIDER_URL=my_eth_mainnet_provider\r\nETHEREUM_PROVIDER_ARBITRUM_=my_arbitrum_mainnet_provider\r\nETHEREUM_PROVIDER_ARBITRUM_SEPOLIA=my_arbitrum_sepolia_provider\r\n\r\n```\r\n\r\nmy character file :\r\n```\r\n\r\n \"name\": \"user-agent\",\r\n \"clients\": [\"twitter\", \"telegram\"],\r\n \"modelProvider\": \"anthropic\",\r\n \"settings\": {\r\n \"secrets\": {},\r\n \"voice\": {},\r\n \"chains\": { \"evm\": [\"arbitrum\", \"arbitrumSepolia\"] }\r\n },\r\n \"plugins\": [\"@ai16z/plugin-evm\"],\r\n```\r\n",
"state": "OPEN",
- "createdAt": "2024-12-18T21:19:34Z",
- "updatedAt": "2024-12-18T21:19:34Z",
+ "createdAt": "2024-12-19T22:02:20Z",
+ "updatedAt": "2024-12-19T22:02:20Z",
"author": {
- "login": "sam-coffey",
- "avatarUrl": "https://avatars.githubusercontent.com/u/98062744?u=10f19a5a02ee5648fd5276432f87eb3c6d97de7d&v=4"
+ "login": "lorcann-rauzduel",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/176548844?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkyMDAsIm5iZiI6MTczNDY0ODAwMCwicGF0aCI6Ii91LzE3NjU0ODg0NCJ9.iDu37cA2qwbJtZlyWR5DiRT6lnij8ZhkJCOkTH0Z9Ys&u=c20bf0288194863b32133bdd83001111d364ca75&v=4"
},
"labels": [
{
@@ -22,16 +22,16 @@
"comments": []
},
{
- "id": "I_kwDOMT5cIs6jz6gl",
- "number": 1208,
- "title": "Multiple mentions on Twitter/X when reply",
- "body": "**Describe the bug**\n\nIn every following reply to target accounts on X agent adds mentioning of the account: @account \n\nIf it replies second time it will mention twice: @account @account\n\n**Expected behavior**\n\nNo mentioning of the target account when reply at all. \n\n**Screenshots**\n\n![image](https://github.com/user-attachments/assets/9b8a6403-e496-4ecb-bf5b-bc67b4faeb4b)\r\nIt appears every post has this symptom.\r\n**To Reproduce**\r\nI run on a mac, so compiled eliza with settings for mac. Example: https://x.com/waggyhappytail/status/1869352624656716210\r\n\r\nI run with pnpm tsx agent/src/index.ts\r\n**Expected behavior**\r\nIt should post carriage returns.\r\n\r\n\r\n**Screenshots**\r\nhttps://imgur.com/a/BFJ2RlH\r\n\r\n\r\n**Additional context**\r\nIf I exit eliza and restart, it doesn't always reproduce the issue. The only filed edited is the character file.\r\n\r\n",
+ "id": "I_kwDOMT5cIs6j5ps4",
+ "number": 1234,
+ "title": "pnpm install shows errors",
+ "body": "I did everything as in tutorial in official documentation. And I run pnpm install \r\nโ node-pre-gyp info it worked if it ends with ok\r\nโ node-pre-gyp info using node-pre-gyp@0.4.5\r\nโ node-pre-gyp info using node@23.3.0 | win32 | x64\r\nโ (node:14056) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead. \r\nโ (Use `node --trace-deprecation ...` to show where the warning was created)\r\nโ node-pre-gyp info check checked for \"C:\\Users\\agynb\\OneDrive\\ะ ะฐะฑะพัะธะน ััะพะป\\Eliza\\f1\\eliza\\node_modules\\@discordjs\\opus\\prebuโฆ \r\nโ node-pre-gyp http GET https://github.com/discordjs/opus/releases/download/v0.9.0/opus-v0.9.0-node-v131-napi-v3-win32-x64-unโฆ \r\nโ node-pre-gyp ERR! install response status 404 Not Found on https://github.com/discordjs/opus/releases/download/v0.9.0/opus-โฆ \r\nโ node-pre-gyp WARN Pre-built binaries not installable for @discordjs/opus@0.9.0 and node@23.3.0 (node-v131 ABI, unknown) (faโฆ \r\nโ node-pre-gyp WARN Hit error response status 404 Not Found on https://github.com/discordjs/opus/releases/download/v0.9.0/opuโฆ \r\nโ gyp info it worked if it ends with ok\r\nโ gyp info using node-gyp@10.3.1\r\nโ gyp info using node@23.3.0 | win32 | x64\r\nโ gyp info ok\r\nโ gyp info it worked if it ends with ok\r\nโ gyp info using node-gyp@10.3.1\r\nโ gyp info using node@23.3.0 | win32 | x64\r\nโ gyp info find Python using Python version 3.13.1 found at \"C:\\Users\\agynb\\AppData\\Local\\Programs\\Python\\Python313\\python.exโฆ \r\nโ gyp ERR! find VS\r\nโ gyp ERR! find VS msvs_version not set from command line or npm config\r\nโ gyp ERR! find VS VCINSTALLDIR not set, not running in VS Command Prompt\r\nโ gyp ERR! find VS could not use PowerShell to find Visual Studio 2017 or newer, try re-running with '--loglevel silly' for mโฆ \r\nโ gyp ERR! find VS\r\nโ gyp ERR! find VS Failure details: undefined\r\nโ gyp ERR! find VS checking VS2022 (17.11.35327.3) found at:\r\nโ gyp ERR! find VS \"C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\"\r\nโ gyp ERR! find VS - found \"Visual Studio C++ core features\"\r\nโ gyp ERR! find VS - missing any VC++ toolset\r\nโ gyp ERR! find VS could not find a version of Visual Studio 2017 or newer to use\r\nโ gyp ERR! find VS not looking for VS2017 as it is only supported up to Node.js 21\r\nโ gyp ERR! find VS not looking for VS2017 as it is only supported up to Node.js 21\r\nโ gyp ERR! find VS not looking for VS2017 as it is only supported up to Node.js 21\r\nโ gyp ERR! find VS not looking for VS2015 as it is only supported up to Node.js 18\r\nโ gyp ERR! find VS not looking for VS2013 as it is only supported up to Node.js 8\r\nโ gyp ERR! find VS\r\nโ gyp ERR! find VS **************************************************************\r\nโ gyp ERR! find VS You need to install the latest version of Visual Studio\r\nโ gyp ERR! find VS including the \"Desktop development with C++\" workload.\r\nโ gyp ERR! find VS For more information consult the documentation at:\r\nโ gyp ERR! find VS https://github.com/nodejs/node-gyp#on-windows\r\nโ gyp ERR! find VS **************************************************************\r\nโ gyp ERR! find VS\r\nโ gyp ERR! configure error\r\nโ gyp ERR! stack Error: Could not find any Visual Studio installation to use\r\nโ gyp ERR! stack at VisualStudioFinder.fail (C:\\Users\\agynb\\OneDrive\\ะ ะฐะฑะพัะธะน ััะพะป\\Eliza\\f1\\eliza\\node_modules\\node-gyp\\lib\\fiโฆ \r\nโ gyp ERR! stack at VisualStudioFinder.findVisualStudio (C:\\Users\\agynb\\OneDrive\\ะ ะฐะฑะพัะธะน ััะพะป\\Eliza\\f1\\eliza\\node_modules\\nodโฆ \r\nโ gyp ERR! stack at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\r\nโ gyp ERR! stack at async createBuildDir (C:\\Users\\agynb\\OneDrive\\ะ ะฐะฑะพัะธะน ััะพะป\\Eliza\\f1\\eliza\\node_modules\\node-gyp\\lib\\confiโฆ \r\nโ gyp ERR! stack at async run (C:\\Users\\agynb\\OneDrive\\ะ ะฐะฑะพัะธะน ััะพะป\\Eliza\\f1\\eliza\\node_modules\\node-gyp\\bin\\node-gyp.js:81:1โฆ \r\nโ gyp ERR! System Windows_NT 10.0.26100\r\nโ gyp ERR! command \"C:\\\\Program Files\\\\nodejs\\\\node.exe\" \"C:\\\\Users\\\\agynb\\\\OneDrive\\\\ะ ะฐะฑะพัะธะน ััะพะป\\\\Eliza\\\\f1\\\\eliza\\\\node_moโฆ \r\nโ gyp ERR! cwd C:\\Users\\agynb\\OneDrive\\ะ ะฐะฑะพัะธะน ััะพะป\\Eliza\\f1\\eliza\\node_modules\\@discordjs\\opus\r\nโ gyp ERR! node -v v23.3.0\r\nโ gyp ERR! node-gyp -v v10.3.1\r\nโ gyp ERR! not ok\r\nโ node-pre-gyp ERR! build error\r\nโ node-pre-gyp ERR! stack Error: Failed to execute 'C:\\Program Files\\nodejs\\node.exe C:\\Users\\agynb\\OneDrive\\ะ ะฐะฑะพัะธะน ััะพะป\\Eliโฆ \r\nโ node-pre-gyp ERR! stack at ChildProcess. (C:\\Users\\agynb\\OneDrive\\ะ ะฐะฑะพัะธะน ััะพะป\\Eliza\\f1\\eliza\\node_modules\\@โฆ \r\nโ node-pre-gyp ERR! stack at ChildProcess.emit (node:events:513:28)\r\nโ node-pre-gyp ERR! stack at maybeClose (node:internal/child_process:1101:16)\r\nnode_modules/canvas: Running install script, failed in 10.7s (skipped as optional)process:305:5)\r\nโ node-pre-gyp ERR! System Windows_NT 10.0.26100\r\nโ node-pre-gyp ERR! command \"C:\\\\Program Files\\\\nodejs\\\\node.exe\" \"C:\\\\Users\\\\agynb\\\\OneDrive\\\\ะ ะฐะฑะพัะธะน ััะพะป\\\\Eliza\\\\f1\\\\elizaโฆ \r\nโ node-pre-gyp ERR! cwd C:\\Users\\agynb\\OneDrive\\ะ ะฐะฑะพัะธะน ััะพะป\\Eliza\\f1\\eliza\\node_modules\\@discordjs\\opus\r\nโ node-pre-gyp ERR! node -v v23.3.0\r\nโ node-pre-gyp ERR! node-pre-gyp -v v0.4.5\r\nโ node-pre-gyp ERR! not ok\r\nโ Failed to execute 'C:\\Program Files\\nodejs\\node.exe C:\\Users\\agynb\\OneDrive\\ะ ะฐะฑะพัะธะน ััะพะป\\Eliza\\f1\\eliza\\node_modules\\node-gโฆ \r\nโโ Failed in 10.4s at C:\\Users\\agynb\\OneDrive\\ะ ะฐะฑะพัะธะน ััะพะป\\Eliza\\f1\\eliza\\node_modules\\@discordjs\\opus",
"state": "OPEN",
- "createdAt": "2024-12-18T14:02:01Z",
- "updatedAt": "2024-12-18T18:29:36Z",
+ "createdAt": "2024-12-19T09:57:03Z",
+ "updatedAt": "2024-12-19T14:33:05Z",
"author": {
- "login": "tekspirit",
- "avatarUrl": "https://avatars.githubusercontent.com/u/1505004?u=59283365bced9a568f4a3ea86310ee38f4b5003c&v=4"
+ "login": "agyn-ub",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/142351559?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5MDAsIm5iZiI6MTczNDY0NzcwMCwicGF0aCI6Ii91LzE0MjM1MTU1OSJ9.SUWFDdwGMDAg49J9c0MRqPEYTaL1rH7ozBauxVHxoMg&v=4"
},
"labels": [
{
@@ -65,28 +65,53 @@
],
"comments": [
{
- "id": "IC_kwDOMT5cIs6YG7Hb",
- "author": "usama-saeed831",
- "body": "@tekspirit I fix this by adding following line in\r\npacakages -> client-twitter -> src -> post.js\r\nin \"generateNewTweet()\" function\r\n\r\nafter\r\n**cleanedContent = removeQuotes(content);**\r\n\r\n`cleanedContent = cleanedContent.replace(/\\\\n/g, '\\n');`"
+ "id": "IC_kwDOMT5cIs6YMIXC",
+ "author": "giorgosn",
+ "body": "are you using WSL 2?"
},
{
- "id": "IC_kwDOMT5cIs6YHH_r",
- "author": "owlcode",
- "body": "I think `.replaceAll` is more appropriate. I fixed it here https://github.com/ai16z/eliza/pull/1141. I guess it waits for a release."
+ "id": "IC_kwDOMT5cIs6YMJNz",
+ "author": "digitalsimboja",
+ "body": " ~/dev/eliza #v0.1.6-alpha.4 pnpm install โ 23.3.0 โฌข 11:00:24 AM \r\nScope: all 46 workspace projects\r\nLockfile is up to date, resolution step is skipped\r\nโERR_PNPM_UNSUPPORTED_ENGINEโ Unsupported environment (bad pnpm and/or Node.js version)\r\n\r\nYour Node version is incompatible with \"@lens-protocol/client@2.2.0(@lens-protocol/metadata@1.2.0)(ethers@6.13.4)(react@18.3.1)\".\r\n\r\nExpected version: >=18 <21\r\nGot: v23.3.0\r\n\r\nThis is happening because the package's manifest has an engines.node field specified.\r\nTo fix this issue, install the required Node version.\r\n ~/dev/eliza #v0.1.6-alpha.4 \r\n \r\n I get this issue as well"
+ },
+ {
+ "id": "IC_kwDOMT5cIs6YM712",
+ "author": "agyn-ub",
+ "body": "> are you using WSL 2?\r\n\r\nno. I am in linux pop_os"
+ },
+ {
+ "id": "IC_kwDOMT5cIs6YM-oo",
+ "author": "agyn-ub",
+ "body": "I run pnpm install on lunix the same error\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/pitch.o\r\nโ rm -f Release/obj.target/deps/opus.a Release/obj.target/deps/opus.a.ar-file-list; mkdir -p `dirname Release/obj.target/deps/opus.a`\r\nโ ar crs Release/obj.target/deps/opus.a @Release/obj.target/deps/opus.a.ar-file-list\r\nโ COPY Release/opus.a\r\nโ CXX(target) Release/obj.target/opus/src/node-opus.o\r\nโ : warning: ISO C++11 requires whitespace after the macro name\r\nโ ../src/node-opus.cc:1:10: fatal error: napi.h: No such file or directory\r\nโ 1 | #include \"napi.h\"\r\nโ | ^~~~~~~~\r\nโ compilation terminated.\r\nโ make: *** [opus.target.mk:157: Release/obj.target/opus/src/node-opus.o] Error 1\r\nโ make: Leaving directory '/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus/build'\r\nโ gyp ERR! build error \r\nโ gyp ERR! stack Error: `make` failed with exit code: 2\r\nโ gyp ERR! stack at ChildProcess. (/home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/lib/build.js:216:23)\r\nโ gyp ERR! System Linux 6.9.3-76060903-generic\r\nโ gyp ERR! command \"/home/agyn/.nvm/versions/node/v23.3.0/bin/node\" \"/home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js\" \"build\" \"--fallback-to-build\" \"--modulโฆ\r\nโ gyp ERR! cwd /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\nโ gyp ERR! node -v v23.3.0\r\nโ gyp ERR! node-gyp -v v10.3.1\r\nโ gyp ERR! not ok \r\nโ node-pre-gyp ERR! build error \r\nโ node-pre-gyp ERR! stack Error: Failed to execute '/home/agyn/.nvm/versions/node/v23.3.0/bin/node /home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js build --fโฆ\r\nโ node-pre-gyp ERR! stack at ChildProcess. (/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/node-pre-gyp/lib/util/compile.js:85:20)\r\nโ node-pre-gyp ERR! stack at ChildProcess.emit (node:events:513:28)\r\nโ node-pre-gyp ERR! stack at maybeClose (node:internal/child_process:1101:16)\r\nโ node-pre-gyp ERR! stack at ChildProcess._handle.onexit (node:internal/child_process:305:5)\r\nโ node-pre-gyp ERR! System Linux 6.9.3-76060903-generic\r\nโ node-pre-gyp ERR! command \"/home/agyn/.nvm/versions/node/v23.3.0/bin/node\" \"/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus/node_modules/.bin/node-pre-gyp\" \"instalโฆ\r\nโ node-pre-gyp ERR! cwd /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\nโ node-pre-gyp ERR! node -v v23.3.0\r\nโ node-pre-gyp ERR! node-pre-gyp -v v0.4.5\r\nโ node-pre-gyp ERR! not ok \r\nโ Failed to execute '/home/agyn/.nvm/versions/node/v23.3.0/bin/node /home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/homeโฆ\r\nโโ Failed in 29.7s at /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\nโELIFECYCLEโ Command failed with exit code 1."
+ },
+ {
+ "id": "IC_kwDOMT5cIs6YNCVS",
+ "author": "agyn-ub",
+ "body": "> ~/dev/eliza #v0.1.6-alpha.4 pnpm install โ 23.3.0 โฌข 11:00:24 AM Scope: all 46 workspace projects Lockfile is up to date, resolution step is skipped โERR_PNPM_UNSUPPORTED_ENGINEโ Unsupported environment (bad pnpm and/or Node.js version)\r\n> \r\n> Your Node version is incompatible with \"@lens-protocol/client@2.2.0(@lens-protocol/metadata@1.2.0)(ethers@6.13.4)(react@18.3.1)\".\r\n> \r\n> Expected version: >=18 <21 Got: v23.3.0\r\n> \r\n> This is happening because the package's manifest has an engines.node field specified. To fix this issue, install the required Node version. ~/dev/eliza #v0.1.6-alpha.4\r\n> \r\n> I get this issue as well\r\n\r\nthe same error\r\nโ CC(target) Release/obj.target/libopus/deps/opus/silk/enc_API.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/silk/biquad_alt.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/silk/quant_LTP_gains.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/silk/resampler_private_down_FIR.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/silk/ana_filt_bank_1.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/silk/stereo_MS_to_LR.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/silk/decode_indices.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/rate.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/entdec.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/modes.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/celt_lpc.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/laplace.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/cwrs.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/celt.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/entcode.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/celt_decoder.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/celt_encoder.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/mdct.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/quant_bands.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/vq.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/bands.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/kiss_fft.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/entenc.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/mathops.o\r\nโ CC(target) Release/obj.target/libopus/deps/opus/celt/pitch.o\r\nโ rm -f Release/obj.target/deps/opus.a Release/obj.target/deps/opus.a.ar-file-list; mkdir -p `dirname Release/obj.target/deps/opus.a`\r\nโ ar crs Release/obj.target/deps/opus.a @Release/obj.target/deps/opus.a.ar-file-list\r\nโ COPY Release/opus.a\r\nโ CXX(target) Release/obj.target/opus/src/node-opus.o\r\nโ : warning: ISO C++11 requires whitespace after the macro name\r\nโ ../src/node-opus.cc:1:10: fatal error: napi.h: No such file or directory\r\nโ 1 | #include \"napi.h\"\r\nโ | ^~~~~~~~\r\nโ compilation terminated.\r\nโ make: *** [opus.target.mk:155: Release/obj.target/opus/src/node-opus.o] Error 1\r\nโ make: Leaving directory '/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus/build'\r\nโ gyp ERR! build error \r\nโ gyp ERR! stack Error: `make` failed with exit code: 2\r\nโ gyp ERR! stack at ChildProcess. (/home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/lib/build.js:216:23)\r\nโ gyp ERR! System Linux 6.9.3-76060903-generic\r\nโ gyp ERR! command \"/home/agyn/.nvm/versions/node/v20.18.1/bin/node\" \"/home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js\" \"build\" \"--fallback-to-build\" \"--moduโฆ\r\nโ gyp ERR! cwd /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\nโ gyp ERR! node -v v20.18.1\r\nโ gyp ERR! node-gyp -v v10.3.1\r\nโ gyp ERR! not ok \r\nโ node-pre-gyp ERR! build error \r\nโ node-pre-gyp ERR! stack Error: Failed to execute '/home/agyn/.nvm/versions/node/v20.18.1/bin/node /home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js build --โฆ\r\nโ node-pre-gyp ERR! stack at ChildProcess. (/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/node-pre-gyp/lib/util/compile.js:85:20)\r\nโ node-pre-gyp ERR! stack at ChildProcess.emit (node:events:518:28)\r\nโ node-pre-gyp ERR! stack at maybeClose (node:internal/child_process:1104:16)\r\nโ node-pre-gyp ERR! stack at ChildProcess._handle.onexit (node:internal/child_process:304:5)\r\nโ node-pre-gyp ERR! System Linux 6.9.3-76060903-generic\r\nโ node-pre-gyp ERR! command \"/home/agyn/.nvm/versions/node/v20.18.1/bin/node\" \"/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus/node_modules/.bin/node-pre-gyp\" \"instaโฆ\r\nโ node-pre-gyp ERR! cwd /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\nโ node-pre-gyp ERR! node -v v20.18.1\r\nโ node-pre-gyp ERR! node-pre-gyp -v v0.4.5\r\nโ node-pre-gyp ERR! not ok \r\nโ Failed to execute '/home/agyn/.nvm/versions/node/v20.18.1/bin/node /home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/homโฆ\r\nโโ Failed in 38.1s at /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\nnode_modules/canvas: Running install script, done in 21.5s\r\nโELIFECYCLEโ Command failed with exit code 1."
+ },
+ {
+ "id": "IC_kwDOMT5cIs6YOfiz",
+ "author": "agyn-ub",
+ "body": "> ~/dev/eliza #v0.1.6-alpha.4 pnpm install โ 23.3.0 โฌข 11:00:24 AM Scope: all 46 workspace projects Lockfile is up to date, resolution step is skipped โERR_PNPM_UNSUPPORTED_ENGINEโ Unsupported environment (bad pnpm and/or Node.js version)\r\n> \r\n> Your Node version is incompatible with \"@lens-protocol/client@2.2.0(@lens-protocol/metadata@1.2.0)(ethers@6.13.4)(react@18.3.1)\".\r\n> \r\n> Expected version: >=18 <21 Got: v23.3.0\r\n> \r\n> This is happening because the package's manifest has an engines.node field specified. To fix this issue, install the required Node version. ~/dev/eliza #v0.1.6-alpha.4\r\n> \r\n> I get this issue as well\r\n\r\nthank you so much my friend, I have downgraded node version to 18 is command executed ok. It is confusing because in the documentation were written that it must be node version 23+ "
+ },
+ {
+ "id": "IC_kwDOMT5cIs6YP-95",
+ "author": "digitalsimboja",
+ "body": "> > ~/dev/eliza #v0.1.6-alpha.4 pnpm install โ 23.3.0 โฌข 11:00:24 AM Scope: all 46 workspace projects Lockfile is up to date, resolution step is skipped โERR_PNPM_UNSUPPORTED_ENGINEโ Unsupported environment (bad pnpm and/or Node.js version)\r\n> > Your Node version is incompatible with \"@lens-protocol/client@2.2.0(@lens-protocol/metadata@1.2.0)(ethers@6.13.4)(react@18.3.1)\".\r\n> > Expected version: >=18 <21 Got: v23.3.0\r\n> > This is happening because the package's manifest has an engines.node field specified. To fix this issue, install the required Node version. ~/dev/eliza #v0.1.6-alpha.4\r\n> > I get this issue as well\r\n> \r\n> thank you so much my friend, I have downgraded node version to 18 is command executed ok. It is confusing because in the documentation were written that it must be node version 23+\r\n\r\nI have a hell of dependencies issues. How did you downgrade yours to version 18 without conflicting with other projects? Did you change the node engine specifications from 23+ to 18?"
}
]
},
{
- "id": "I_kwDOMT5cIs6jxA-5",
- "number": 1204,
- "title": "unable to chat in terminal",
- "body": "run pnpm start / pnpm start:client and not able to have chat in terminal with agent was working before now it takes to local host page browser and nothing happens\r\n\r\n\r\n\r\n**To Reproduce**\r\n\r\n\r\n\r\n**Expected behavior**\r\n\r\n\r\n\r\n**Screenshots**\r\n\r\n\r\n\r\n**Additional context**\r\n\r\n\r\n",
+ "id": "I_kwDOMT5cIs6j4tPO",
+ "number": 1233,
+ "title": "agent package not updated on npmjs.org",
+ "body": "**Describe the bug**\r\n\r\nSeems like @ai16z/agent has not been updated for some time https://www.npmjs.com/package/@ai16z/agent\r\n\r\n**To Reproduce**\r\n\r\nSee https://www.npmjs.com/package/@ai16z/agent?activeTab=versions\r\n\r\n**Expected behavior**\r\n\r\nRelease agent package regularly and use it in `eliza-starter` (as it seems like a lot of stuff is just copy&paste)\r\n\r\n**Screenshots**\r\n\r\n\r\n\r\n**Additional context**\r\n\r\n\r\n",
"state": "OPEN",
- "createdAt": "2024-12-18T11:19:12Z",
- "updatedAt": "2024-12-18T12:41:24Z",
+ "createdAt": "2024-12-19T08:08:23Z",
+ "updatedAt": "2024-12-19T08:08:23Z",
"author": {
- "login": "Longame208",
- "avatarUrl": "https://avatars.githubusercontent.com/u/79878000?v=4"
+ "login": "vpavlin",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/4759808?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5MDAsIm5iZiI6MTczNDY0NzcwMCwicGF0aCI6Ii91LzQ3NTk4MDgifQ.FCRt6CJ8K5Ci3EOPe8eefUF7mzywKQroiMckMCwlphE&u=d045a41a43fa2deabfc3115236cc1e8b0509b164&v=4"
},
"labels": [
{
@@ -96,40 +121,41 @@
"description": "Something isn't working"
}
],
- "comments": [
- {
- "id": "IC_kwDOMT5cIs6YEFix",
- "author": "jaycoolh",
- "body": "Same error here"
- },
- {
- "id": "IC_kwDOMT5cIs6YEGQE",
- "author": "jaycoolh",
- "body": "I am using: v0.1.6-alpha.4\r\n\r\nnode --version \r\nv23.3.0\r\n\r\npnpm --version \r\n9.15.0\r\n\r\n pnpm start --character=\"characters/trump.character.json\""
- },
- {
- "id": "IC_kwDOMT5cIs6YEHCF",
- "author": "jaycoolh",
- "body": "[\"โ Visit the following URL to chat with your agents:\"]\r\n\r\n [\"โ http://localhost:5173\"]\r\n\r\n [\"โ REST API bound to 0.0.0.0:3000. If running locally, access it at http://localhost:3000.\"]\r\n \r\n \r\n 'http://localhost:5173' is just a dead link"
- },
+ "comments": []
+ },
+ {
+ "id": "I_kwDOMT5cIs6j4sjB",
+ "number": 1232,
+ "title": "Create a nightly build as next version",
+ "body": "**Is your feature request related to a problem? Please describe.**\r\n\r\nI'd like to use `eliza-starter` with the latest providers and features, but that means I have to wait until new version is released (weekly?). It would be great to setup a `nightly` builds from `develop` and push them to npmjs.org as `next` version, so that people can easily experiment with latest features and get ready for new releases\r\n\r\n**Describe the solution you'd like**\r\n\r\nSetup an automation to release nightly to from `develop` to `next`\r\n\r\n**Describe alternatives you've considered**\r\n\r\n:shrug: \r\n\r\n**Additional context**\r\n\r\n\r\n",
+ "state": "OPEN",
+ "createdAt": "2024-12-19T08:06:40Z",
+ "updatedAt": "2024-12-19T08:06:40Z",
+ "author": {
+ "login": "vpavlin",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/4759808?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5MDAsIm5iZiI6MTczNDY0NzcwMCwicGF0aCI6Ii91LzQ3NTk4MDgifQ.FCRt6CJ8K5Ci3EOPe8eefUF7mzywKQroiMckMCwlphE&u=d045a41a43fa2deabfc3115236cc1e8b0509b164&v=4"
+ },
+ "labels": [
{
- "id": "IC_kwDOMT5cIs6YEIsG",
- "author": "jaycoolh",
- "body": "@Longame208 \r\n\r\nin the package.json there is a script `pnpm start:client`\r\n\r\nthis spins up the app http://localhost:5173\r\n\r\nNeed to include this in the quickstart guide https://ai16z.github.io/eliza/docs/quickstart/#next-steps\r\n\r\n(or even better, include the `pnpm start:client` in the `pnpm start` command"
+ "id": "LA_kwDOMT5cIs8AAAABrA0qYA",
+ "name": "enhancement",
+ "color": "a2eeef",
+ "description": "New feature or request"
}
- ]
+ ],
+ "comments": []
},
{
- "id": "I_kwDOMT5cIs6jvwwA",
- "number": 1200,
- "title": "chore: Document Missing Plugin Documentation and Examples",
- "body": "**Overview**\r\nSeveral plugins in the Eliza framework lack comprehensive documentation. This makes it harder for new developers to understand and utilize these components.\r\n\r\nMissing Plugin Documentation:\r\n- [ ] plugin-0g - File storage plugin\r\n- [ ] plugin-aptos - Aptos blockchain integration\r\n- [ ] plugin-conflux - Conflux blockchain integration \r\n- [ ] plugin-echochambers - Echo chamber client\r\n- [ ] plugin-flow - Flow blockchain integration\r\n- [ ] plugin-goat - GOAT functionality\r\n- [ ] plugin-icp - Internet Computer integration\r\n- [ ] plugin-image-generation - Image generation capabilities\r\n- [ ] plugin-intiface - Intiface integration\r\n- [ ] plugin-multiversx - MultiversX blockchain \r\n- [ ] plugin-near - NEAR Protocol integration\r\n- [ ] plugin-nft-generation - NFT creation functionality\r\n- [ ] plugin-story - Story/IP management\r\n- [ ] plugin-sui - Sui blockchain integration\r\n- [ ] plugin-ton - TON blockchain integration\r\n- [ ] plugin-trustdb - Trust database functionality\r\n- [ ] plugin-video-generation - Video generation features\r\n- [ ] plugin-web-search - Web search capabilities\r\n- [ ] plugin-whatsapp - WhatsApp integration\r\n- [ ] plugin-zksync-era - zkSync Era integration\r\n\r\n**Proposed Documentation Structure**\r\nFor each plugin, we need:\r\n1. Overview and purpose\r\n2. Installation instructions\r\n3. Configuration requirements\r\n4. Usage examples\r\n5. API reference\r\n6. Common issues/troubleshooting\r\n\r\n**Additional Missing Docs**\r\n- Examples folder documentation\r\n- Testing guide expansion\r\n- Plugin development guide\r\n- Security best practices\r\n- Performance optimization guide\r\n\r\n**Value Add**\r\nThis documentation will:\r\n- Improve developer onboarding\r\n- Reduce support questions\r\n- Enable faster plugin adoption\r\n- Help maintain code quality",
+ "id": "I_kwDOMT5cIs6j26a1",
+ "number": 1224,
+ "title": "feat: Auto-Documentation Synchronization Bot",
+ "body": "## **Overview**\r\nCreate an AI assistant to maintain documentation consistency and generate documentation from code.\r\n\r\n## **Current Situation**\r\n\r\nDocumentation gaps often go unnoticed, leading to challenges during onboarding, feature development, and integrations. Outdated information can result in inefficiencies, with developers spending unnecessary time answering questions that could otherwise be handled by AI if up-to-date documentation were available\r\n\r\n## **Proposed Solution**\r\n\r\nFirst finish this issue: https://github.com/ai16z/eliza/issues/1110\r\nNext document plugins so that we have a quality reference: https://github.com/ai16z/eliza/issues/1200\r\n\r\nThen build a documentation bot that:\r\n1. Tracks and reports TODO comments in code (automate this flow https://github.com/ai16z/eliza/issues/1223)\r\n2. Tracks and reports missing plugin docs: (automate this https://github.com/ai16z/eliza/issues/1200)\r\n3. Tracks commits / issues / PRs and flags docs pages that might need updating\r\n4. Suggest documentation updates of those pages\r\n\r\n## **Technical Details**\r\n\r\n\r\n",
"state": "OPEN",
- "createdAt": "2024-12-18T08:59:15Z",
- "updatedAt": "2024-12-18T08:59:15Z",
+ "createdAt": "2024-12-19T02:03:53Z",
+ "updatedAt": "2024-12-19T02:03:53Z",
"author": {
"login": "madjin",
- "avatarUrl": "https://avatars.githubusercontent.com/u/32600939?u=cdcf89f44c7a50906c7a80d889efa85023af2049&v=4"
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/32600939?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91LzMyNjAwOTM5In0.7vW8aT743AJl04-9zh_3YYJMLQj9qo88pIJX0PCwUco&u=cdcf89f44c7a50906c7a80d889efa85023af2049&v=4"
},
"labels": [
{
@@ -143,70 +169,116 @@
"name": "enhancement",
"color": "a2eeef",
"description": "New feature or request"
+ },
+ {
+ "id": "LA_kwDOMT5cIs8AAAAByOXTdA",
+ "name": "automation",
+ "color": "FC49CF",
+ "description": ""
}
],
"comments": []
},
{
- "id": "I_kwDOMT5cIs6jt6h0",
- "number": 1194,
- "title": "Improve Logging in /packages/plugin-coinbase/src/plugins",
- "body": "**Is your feature request related to a problem? Please describe.**\n\nThe current logging mechanism in the `/packages/plugin-coinbase/src/plugins` directory lacks consistency and detail, making it challenging to debug and monitor the plugin's behavior effectively.\n\n**Describe the solution you'd like**\n\nIntegrate the `elizaLogger` construct to standardize logging across the plugin. This should include:\n- Consistent log levels (INFO, DEBUG, ERROR) for different operations.\n- Detailed log messages that include context such as function names and parameters.\n- Examples of how to implement `elizaLogger` in existing functions for better clarity.\n\n**Describe alternatives you've considered**\n\n- Continuing with the current ad-hoc logging approach.\n- Using a third-party logging library, though this may introduce unnecessary dependencies.\n\n**Additional context**\n\nPlease refer to existing examples in the `/packages/plugin-coinbase/src/plugins` directory and extend them where possible. Ensure that the new logging strategy aligns with the overall architecture of the `eliza` project.",
+ "id": "I_kwDOMT5cIs6j23px",
+ "number": 1223,
+ "title": "chore: Review TODO notes",
+ "body": "**Describe the bug**\r\n\r\nSee what the TODO notes are about, update their status or document as an issue if needed\r\n\r\n- [ ] agent/src/index.ts\r\n- [ ] packages/core/src/models.ts\r\n- [ ] packages/core/src/runtime.ts\r\n- [ ] packages/core/src/environment.ts\r\n- [ ] packages/core/src/memory.ts\r\n- [ ] packages/plugin-starknet/src/providers/trustScoreProvider.ts\r\n- [ ] packages/plugin-starknet/src/providers/token.ts\r\n- [ ] packages/plugin-starknet/src/actions/takeOrder.ts\r\n- [ ] packages/plugin-starknet/src/actions/transfer.ts\r\n- [ ] packages/plugin-starknet/readme.md\r\n- [ ] packages/adapter-sqlite/src/sqliteTables.ts\r\n- [ ] packages/adapter-sqljs/src/index.ts\r\n- [ ] packages/adapter-sqljs/src/sqliteTables.ts\r\n- [ ] packages/plugin-node/src/services/transcription.ts\r\n- [ ] packages/plugin-node/src/services/browser.ts\r\n- [ ] packages/client-twitter/src/search.ts\r\n- [ ] packages/client-twitter/src/base.ts\r\n- [ ] packages/plugin-solana/src/evaluators/trust.ts\r\n- [ ] packages/plugin-solana/src/providers/trustScoreProvider.ts\r\n- [ ] packages/plugin-solana/src/actions/swap.ts\r\n- [ ] packages/plugin-solana/src/actions/takeOrder.ts\r\n- [ ] packages/plugin-evm/src/actions/bridge.ts\r\n- [ ] packages/plugin-evm/src/actions/swap.ts\r\n- [ ] packages/plugin-flow/src/types/fcl.d.ts\r\n- [ ] packages/plugin-flow/src/actions/transfer.ts\r\n- [ ] packages/plugin-nft-generation/src/index.ts\r\n- [ ] packages/plugin-image-generation/src/index.ts\r\n- [ ] packages/client-farcaster/src/client.ts\r\n- [ ] packages/adapter-supabase/src/index.ts\r\n- [ ] packages/client-lens/src/actions.ts\r\n- [ ] packages/client-lens/src/client.ts\r\n- [ ] packages/client-lens/src/interactions.ts\r\n- [ ] packages/client-discord/src/utils.ts\r\n- [ ] packages/client-discord/src/attachments.ts\r\n- [ ] packages/client-discord/src/messages.ts\r\n- [ ] packages/client-discord/src/actions/chat_with_attachments.ts\r\n- [ ] packages/client-discord/src/actions/summarize_conversation.ts\r\n- [ ] packages/client-slack/src/events.ts\r\n\r\n\r\n**To Reproduce**\r\n\r\nTo find the files to fix:\r\n\r\n`grep -ro \"TODO\" --exclude-dir=node_modules --exclude-dir=dist | uniq` \r\n\r\nSome examples `grep -roP \"TODO\\s*.*\" --exclude-dir=node_modules`\r\n```\r\nagent/src/index.ts:TODO: Add Slack client to the list\r\npackages/core/dist/index.js:TODO: check\r\npackages/core/dist/index.js:TODO: ?download=true\r\npackages/client-discord/src/utils.ts:TODO: clean this up\r\npackages/client-discord/src/attachments.ts:TODO: clean this up\r\npackages/client-discord/src/messages.ts:TODO: This is throwing an error but seems to work?\r\npackages/client-discord/src/messages.ts:TODO: Move to attachments manager\r\npackages/client-discord/src/actions/chat_with_attachments.ts:TODO: make this dynamic and generic\r\npackages/client-discord/src/actions/summarize_conversation.ts:TODO: parse start and end into timestamps\r\npackages/client-slack/src/events.ts:TODO: Implement reaction handling\r\n```\r\n\r\n**Expected behavior**\r\n\r\ngithub issue or cleaning up the code\r\n\r\n**Screenshots**\r\n\r\n![image](https://github.com/user-attachments/assets/ed48b42c-7701-4432-a284-5e8143f93227)\r\n\r\n\r\n**Additional context**\r\n\r\n\r\n",
"state": "OPEN",
- "createdAt": "2024-12-18T04:16:18Z",
- "updatedAt": "2024-12-18T08:38:48Z",
+ "createdAt": "2024-12-19T01:50:45Z",
+ "updatedAt": "2024-12-19T01:51:37Z",
"author": {
- "login": "monilpat",
- "avatarUrl": "https://avatars.githubusercontent.com/u/15067321?u=1271e57605b48029307547127c90e1bd5e4f3f39&v=4"
+ "login": "madjin",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/32600939?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91LzMyNjAwOTM5In0.7vW8aT743AJl04-9zh_3YYJMLQj9qo88pIJX0PCwUco&u=cdcf89f44c7a50906c7a80d889efa85023af2049&v=4"
},
"labels": [
{
- "id": "LA_kwDOMT5cIs8AAAABrA0qYA",
- "name": "enhancement",
- "color": "a2eeef",
- "description": "New feature or request"
+ "id": "LA_kwDOMT5cIs8AAAABrA0qWA",
+ "name": "bug",
+ "color": "d73a4a",
+ "description": "Something isn't working"
+ },
+ {
+ "id": "LA_kwDOMT5cIs8AAAABrA0qWw",
+ "name": "documentation",
+ "color": "0075ca",
+ "description": "Improvements or additions to documentation"
},
{
"id": "LA_kwDOMT5cIs8AAAABrA0qYg",
"name": "good first issue",
"color": "7057ff",
"description": "Good for newcomers"
- },
- {
- "id": "LA_kwDOMT5cIs8AAAAB1sfhyA",
- "name": "logging",
- "color": "ededed",
- "description": null
}
],
- "comments": [
+ "comments": []
+ },
+ {
+ "id": "I_kwDOMT5cIs6j2njJ",
+ "number": 1222,
+ "title": "chore: Keeps README translations synchronized",
+ "body": "**Is your feature request related to a problem? Please describe.**\r\n\r\nThere are now a lot of language translated READMEs in the repo. If we implement a change in one, we have to manually cascade the changes in order.\r\n\r\n**Describe the solution you'd like**\r\n\r\nScript that uses AI (ollama / openai) that cascades changes when the english README.md file changes. Translates / updates all the other README files. Github CI would be a nice touch too\r\n\r\n**Describe alternatives you've considered**\r\n\r\n**Additional context**\r\n\r\n![image](https://github.com/user-attachments/assets/72cc29ce-6a5d-4cbc-9d6b-b6f07c09f399)\r\n",
+ "state": "OPEN",
+ "createdAt": "2024-12-19T00:33:42Z",
+ "updatedAt": "2024-12-19T00:33:43Z",
+ "author": {
+ "login": "madjin",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/32600939?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91LzMyNjAwOTM5In0.7vW8aT743AJl04-9zh_3YYJMLQj9qo88pIJX0PCwUco&u=cdcf89f44c7a50906c7a80d889efa85023af2049&v=4"
+ },
+ "labels": [
{
- "id": "IC_kwDOMT5cIs6YCIDm",
- "author": "9547",
- "body": "@monilpat may I take this one?"
+ "id": "LA_kwDOMT5cIs8AAAABrA0qWw",
+ "name": "documentation",
+ "color": "0075ca",
+ "description": "Improvements or additions to documentation"
+ },
+ {
+ "id": "LA_kwDOMT5cIs8AAAABrA0qYg",
+ "name": "good first issue",
+ "color": "7057ff",
+ "description": "Good for newcomers"
}
- ]
+ ],
+ "comments": []
},
{
- "id": "I_kwDOMT5cIs6jtKs0",
- "number": 1192,
- "title": "Enhance Logging in /packages/plugin-coinbase/src/plugins Using elizaLogger",
- "body": "---\nname: Feature request\nabout: Suggest an idea for this project\ntitle: \"\"\nlabels: \"enhancement\"\nassignees: \"\"\n---\n\n**Is your feature request related to a problem? Please describe.**\n\nCurrently, the logging mechanism in `/packages/plugin-coinbase/src/plugins` lacks detailed output, making it difficult to trace issues and monitor performance effectively.\n\n**Describe the solution you'd like**\n\nIntegrate the `elizaLogger` construct to provide more comprehensive logging throughout the codebase. This would involve:\n- Adding entry and exit logs for key functions.\n- Including detailed error logging with stack traces.\n- Logging significant state changes and data processing steps.\n\n**Describe alternatives you've considered**\n\nConsidered using a third-party logging library, but `elizaLogger` offers a more integrated solution with existing infrastructure.\n\n**Additional context**\n\nUtilize existing examples of `elizaLogger` usage in other parts of the codebase as a reference. Extend these examples to cover more complex scenarios within the `/packages/plugin-coinbase/src/plugins` path.",
- "state": "CLOSED",
- "createdAt": "2024-12-18T01:45:28Z",
- "updatedAt": "2024-12-18T01:46:15Z",
+ "id": "I_kwDOMT5cIs6j2k2d",
+ "number": 1221,
+ "title": "feat: Eliza Code Assistant default characterfile",
+ "body": "**Overview**\r\nCreate an AI-powered development guide bot that can assist new contributors and help maintainers by leveraging repository history and documentation. This can be a starter file that teaches people about Eliza as soon as they run Eliza.\r\n\r\n**Current Situation**\r\n- New contributors often ask similar questions in discord / twitter\r\n- Repository knowledge is spread across many files and commit history\r\n- Code review assignments are manual and don't always match expertise\r\n\r\n**Proposed Solution**\r\nBuild an agent that:\r\n1. Answers FAQ-style questions using repo knowledge as recommended first step\r\n2. Suggests relevant examples based on current work\r\n3. Guides contributors to relevant documentation/contributors with answers\r\n\r\n**Technical Implementation**\r\n- Create an eliza characterfile template\r\n - https://elizagen.howieduhzit.best/\r\n- Ingest knowledge about github (prevent duplicate issues, find answers, suggest new issue)\r\n - https://ai16z.github.io/data/daily/contributors.json\r\n - https://ai16z.github.io/data/daily/summary.json\r\n - https://ai16z.github.io/data/daily/summary.md\r\n - https://ai16z.github.io/data/weekly/contributors.json\r\n - https://ai16z.github.io/data/monthly/contributors.json\r\n- Ingest docs + FAQ from discord (https://github.com/ai16z/eliza/issues/1044)\r\n - https://ai16z.github.io/eliza/community/Discord/\r\n\r\n**Integration Points (IDEAS)**\r\n- Discord code assistant\r\n- Website frontend (eliza.gg)\r\n",
+ "state": "OPEN",
+ "createdAt": "2024-12-19T00:21:13Z",
+ "updatedAt": "2024-12-19T08:08:35Z",
"author": {
- "login": "monilpat",
- "avatarUrl": "https://avatars.githubusercontent.com/u/15067321?u=1271e57605b48029307547127c90e1bd5e4f3f39&v=4"
+ "login": "madjin",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/32600939?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91LzMyNjAwOTM5In0.7vW8aT743AJl04-9zh_3YYJMLQj9qo88pIJX0PCwUco&u=cdcf89f44c7a50906c7a80d889efa85023af2049&v=4"
},
"labels": [
+ {
+ "id": "LA_kwDOMT5cIs8AAAABrA0qWw",
+ "name": "documentation",
+ "color": "0075ca",
+ "description": "Improvements or additions to documentation"
+ },
{
"id": "LA_kwDOMT5cIs8AAAABrA0qYA",
"name": "enhancement",
"color": "a2eeef",
"description": "New feature or request"
+ },
+ {
+ "id": "LA_kwDOMT5cIs8AAAABzZ3HKg",
+ "name": "Bounty",
+ "color": "d93f0b",
+ "description": "Use this to assign a bounty to an issue"
}
],
- "comments": []
+ "comments": [
+ {
+ "id": "IC_kwDOMT5cIs6YLBEb",
+ "author": "maq796113",
+ "body": "how good is the bounty?"
+ }
+ ]
}
]
diff --git a/data/daily/prs.json b/data/daily/prs.json
index 3489eb4..2821c88 100644
--- a/data/daily/prs.json
+++ b/data/daily/prs.json
@@ -1,2437 +1,1341 @@
[
{
- "id": "PR_kwDOMT5cIs6FtFmV",
- "number": 1215,
- "title": "modify Twitter interaction rules, create SoundCloud plugin",
- "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
- "state": "CLOSED",
+ "id": "PR_kwDOMT5cIs6F2aBP",
+ "number": 1252,
+ "title": "Update trump.character.json",
+ "body": "Remove a controversial line so we don't have to waste time on pointless old world political divisions\r\n",
+ "state": "OPEN",
"merged": false,
- "createdAt": "2024-12-18T22:13:34Z",
- "updatedAt": "2024-12-18T22:14:37Z",
+ "createdAt": "2024-12-19T22:28:15Z",
+ "updatedAt": "2024-12-19T22:28:15Z",
"author": {
- "login": "chefron",
- "avatarUrl": "https://avatars.githubusercontent.com/u/98501301?v=4"
+ "login": "lalalune",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/18633264?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg3MjAsIm5iZiI6MTczNDY0NzUyMCwicGF0aCI6Ii91LzE4NjMzMjY0In0.ef20meZySKC14ksX2zmPUprbf4FTK6gdLx8nK_CL6HQ&u=8f2bca0a3cef958bd405ea89680a9b9a0ff38f06&v=4"
},
"labels": [],
"files": [
{
- "path": "docs/api/classes/AgentRuntime.md",
- "additions": 41,
- "deletions": 41
- },
+ "path": "characters/trump.character.json",
+ "additions": 0,
+ "deletions": 1
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ },
+ {
+ "id": "PR_kwDOMT5cIs6F2Mwt",
+ "number": 1250,
+ "title": "fix: Fix local_llama key warning",
+ "body": "# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nfix scary start up warnings for firing it up out of the box\r\n\r\n```\r\n [\"โ DirectClient constructor\"] \r\n\r\n [\"โ Failed to get token - unsupported model provider: llama_local\"] \r\n\r\n โ ERRORS\r\n Error starting agent for character Eliza: \r\n {} \r\n\r\n [\"โ Error: Failed to get token - unsupported model provider: llama_local\"] \r\n\r\n โ ERRORS\r\n Error starting agents: \r\n {} \r\n\r\n [\"โ Run `pnpm start:client` to start the client and visit the outputted URL (http://localhost:5173) to chat with your agents\"] \r\n\r\n```\r\n\r\n## What kind of change is this?\r\n\r\nImprovements (misc. changes to existing features)\r\n\r\n## Why are we doing this? Any context or related work?\r\n\r\nImproved new developer experience, reduce confusion\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.",
+ "state": "MERGED",
+ "merged": true,
+ "createdAt": "2024-12-19T21:39:36Z",
+ "updatedAt": "2024-12-19T22:07:08Z",
+ "author": {
+ "login": "odilitime",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/16395496?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0MjAsIm5iZiI6MTczNDY0NzIyMCwicGF0aCI6Ii91LzE2Mzk1NDk2In0.AHDvuRgPHYO0i8IDYNzSfDB3Ae2PlvNoeRcGjB_wn9Q&u=45c152d8433e37c62520e66c0dd6d754ccf3eaf4&v=4"
+ },
+ "labels": [],
+ "files": [
{
- "path": "docs/api/classes/CacheManager.md",
- "additions": 6,
- "deletions": 6
+ "path": "agent/src/index.ts",
+ "additions": 4,
+ "deletions": 1
+ }
+ ],
+ "reviews": [
+ {
+ "id": "PRR_kwDOMT5cIs6V-5DP",
+ "author": "monilpat",
+ "body": "LGTM!",
+ "state": "APPROVED"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "id": "PR_kwDOMT5cIs6F136K",
+ "number": 1249,
+ "title": "Release/v.1.0",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nInitial V-1.0 of SimsAI client package for Eliza framework. Used for testing your agents and interacting on the Simsai platform. SimsAI is a social media thats only for agents, allowing humans to only comment, prompt like or repost their followed agents. Jeets or posts by the agents, will eventually be mintable as NFTs to the user with royalties for the creators and the agent wallets.\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow risk. New client, configurable by the user.\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nThis allows agents to post on the SimsAI platform. Specifically, Jeeter the twitter replica for agents.\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\nClient Change. Feature.\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\nTesting can be done by:\r\n\r\n1. Adding necessary env vars.\r\n2. Running as normal (with the dry run variable on with their character file)\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "state": "CLOSED",
+ "merged": false,
+ "createdAt": "2024-12-19T20:46:20Z",
+ "updatedAt": "2024-12-19T20:55:58Z",
+ "author": {
+ "login": "simsaidev",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/192255625?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkxNDAsIm5iZiI6MTczNDY0Nzk0MCwicGF0aCI6Ii91LzE5MjI1NTYyNSJ9.m6UXmOZB4P5aDEzW8NlIro6a_oNBtl6QaTF-4MUr8Yc&u=618ee6c5eb68a948ec29fc112d1ad85a34ced79c&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": ".env.example",
+ "additions": 7,
+ "deletions": 0
},
{
- "path": "docs/api/classes/DatabaseAdapter.md",
- "additions": 42,
- "deletions": 42
+ "path": "agent/package.json",
+ "additions": 60,
+ "deletions": 59
},
{
- "path": "docs/api/classes/DbCacheAdapter.md",
- "additions": 5,
- "deletions": 5
+ "path": "agent/src/index.ts",
+ "additions": 10,
+ "deletions": 3
},
{
- "path": "docs/api/classes/FsCacheAdapter.md",
- "additions": 5,
- "deletions": 5
+ "path": "characters/simsai.character.json",
+ "additions": 89,
+ "deletions": 0
},
{
- "path": "docs/api/classes/MemoryCacheAdapter.md",
+ "path": "packages/client-simsai/.npmignore",
"additions": 6,
- "deletions": 6
+ "deletions": 0
},
{
- "path": "docs/api/classes/MemoryManager.md",
- "additions": 14,
- "deletions": 14
+ "path": "packages/client-simsai/eslint.config.mjs",
+ "additions": 3,
+ "deletions": 0
},
{
- "path": "docs/api/classes/Service.md",
- "additions": 5,
- "deletions": 5
+ "path": "packages/client-simsai/package.json",
+ "additions": 24,
+ "deletions": 0
},
{
- "path": "docs/api/enumerations/Clients.md",
- "additions": 15,
- "deletions": 5
+ "path": "packages/client-simsai/src/index.ts",
+ "additions": 48,
+ "deletions": 0
},
{
- "path": "docs/api/enumerations/GoalStatus.md",
- "additions": 4,
- "deletions": 4
+ "path": "packages/client-simsai/src/jeeter/base.ts",
+ "additions": 607,
+ "deletions": 0
},
{
- "path": "docs/api/enumerations/LoggingLevel.md",
- "additions": 4,
- "deletions": 4
+ "path": "packages/client-simsai/src/jeeter/client.ts",
+ "additions": 302,
+ "deletions": 0
},
{
- "path": "docs/api/enumerations/ModelClass.md",
- "additions": 6,
- "deletions": 6
+ "path": "packages/client-simsai/src/jeeter/constants.ts",
+ "additions": 115,
+ "deletions": 0
},
{
- "path": "docs/api/enumerations/ModelProviderName.md",
- "additions": 20,
- "deletions": 20
+ "path": "packages/client-simsai/src/jeeter/environment.ts",
+ "additions": 48,
+ "deletions": 0
},
{
- "path": "docs/api/enumerations/ServiceType.md",
- "additions": 9,
- "deletions": 9
+ "path": "packages/client-simsai/src/jeeter/interactions.ts",
+ "additions": 465,
+ "deletions": 0
},
{
- "path": "docs/api/functions/addHeader.md",
- "additions": 2,
- "deletions": 2
+ "path": "packages/client-simsai/src/jeeter/post.ts",
+ "additions": 222,
+ "deletions": 0
},
{
- "path": "docs/api/functions/composeActionExamples.md",
- "additions": 2,
- "deletions": 2
+ "path": "packages/client-simsai/src/jeeter/search.ts",
+ "additions": 597,
+ "deletions": 0
},
{
- "path": "docs/api/functions/composeContext.md",
- "additions": 2,
- "deletions": 2
+ "path": "packages/client-simsai/src/jeeter/types.ts",
+ "additions": 224,
+ "deletions": 0
},
{
- "path": "docs/api/functions/configureSettings.md",
- "additions": 2,
- "deletions": 2
+ "path": "packages/client-simsai/src/jeeter/utils.ts",
+ "additions": 349,
+ "deletions": 0
},
{
- "path": "docs/api/functions/createGoal.md",
- "additions": 2,
- "deletions": 2
+ "path": "packages/client-simsai/tsconfig.json",
+ "additions": 10,
+ "deletions": 0
},
{
- "path": "docs/api/functions/createRelationship.md",
- "additions": 2,
- "deletions": 2
+ "path": "packages/client-simsai/tsup.config.ts",
+ "additions": 20,
+ "deletions": 0
},
{
- "path": "docs/api/functions/embed.md",
- "additions": 2,
+ "path": "packages/core/src/types.ts",
+ "additions": 7,
"deletions": 2
},
{
- "path": "docs/api/functions/findNearestEnvFile.md",
- "additions": 2,
- "deletions": 2
- },
+ "path": "pnpm-lock.yaml",
+ "additions": 23116,
+ "deletions": 18054
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ },
+ {
+ "id": "PR_kwDOMT5cIs6F1xMy",
+ "number": 1248,
+ "title": "feat: news-plugin",
+ "body": "\r\n\r\n# Relates to:\r\nAI Agent Dev School Video #2: https://www.youtube.com/watch?v=XenGeAcPAQo&t=3383s \r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow \r\n\r\n\r\n\r\n# Background\r\nShaw shows us how to create a simple plugin that returns the latest news on a specific topic. This is an example code of a completed currentNewsAction. It can be modified and expanded for added functionality. \r\n\r\n## What does this PR do?\r\n\r\nAdds an example of the news plugin described by Shaw. \r\n\r\n## What kind of change is this?\r\n\r\nFeatures \r\n\r\n\r\n\r\n\r\n\r\n\r\nIt will help future students to see an example of the code and more experienced devs to add functionality to a useful plugin. \r\n\r\n# Documentation changes needed?\r\n\r\nnone, but I can add documentation \r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\nI tested the plugin with C3PO character and was able to retrieve news on different topics. \r\n\r\nFormatting of the output can use some improvement. \r\n\r\n## Where should a reviewer start?\r\n\r\nnews.ts \r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "state": "OPEN",
+ "merged": false,
+ "createdAt": "2024-12-19T20:30:07Z",
+ "updatedAt": "2024-12-19T20:31:12Z",
+ "author": {
+ "login": "ileana-pr",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/103957712?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkyMDAsIm5iZiI6MTczNDY0ODAwMCwicGF0aCI6Ii91LzEwMzk1NzcxMiJ9.u9qrd1GMtEVN5qePaZWSeDuQhZDSkFlWmmVmXRCEMKU&u=b865d84e1f5bffd16f907c5318a177dfc9f927d0&v=4"
+ },
+ "labels": [],
+ "files": [
{
- "path": "docs/api/functions/formatActionNames.md",
- "additions": 2,
- "deletions": 2
+ "path": ".env.example",
+ "additions": 3,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatActions.md",
- "additions": 2,
- "deletions": 2
+ "path": "agent/package.json",
+ "additions": 1,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatActors.md",
+ "path": "agent/src/index.ts",
"additions": 2,
- "deletions": 2
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatEvaluatorExampleDescriptions.md",
- "additions": 2,
- "deletions": 2
+ "path": "packages/plugin-news/.npmignore",
+ "additions": 6,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatEvaluatorExamples.md",
- "additions": 2,
- "deletions": 2
+ "path": "packages/plugin-news/eslint.config.mjs",
+ "additions": 3,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatEvaluatorNames.md",
- "additions": 2,
- "deletions": 2
+ "path": "packages/plugin-news/package.json",
+ "additions": 19,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatEvaluators.md",
+ "path": "packages/plugin-news/src/actions/index.ts",
"additions": 2,
- "deletions": 2
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatGoalsAsString.md",
- "additions": 2,
- "deletions": 2
+ "path": "packages/plugin-news/src/actions/news.ts",
+ "additions": 172,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatMessages.md",
- "additions": 2,
- "deletions": 2
+ "path": "packages/plugin-news/src/index.ts",
+ "additions": 10,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatPosts.md",
- "additions": 2,
- "deletions": 2
+ "path": "packages/plugin-news/tsconfig.json",
+ "additions": 13,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatRelationships.md",
- "additions": 2,
- "deletions": 2
- },
+ "path": "packages/plugin-news/tsup.config.ts",
+ "additions": 20,
+ "deletions": 0
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ },
+ {
+ "id": "PR_kwDOMT5cIs6F1qLS",
+ "number": 1247,
+ "title": "feat: Add Treasure Plugin",
+ "body": "\r\n\r\n# Relates to:\r\nAdds Treasure support for Eliza agents.\r\n\r\n# Risks\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n[Treasure](https://treasure.lol) is a gaming-centric L2 rollup built on ZKsync. This PR adds support for Eliza to interact with the Treasure mainnet, with logic/implementation borrowed from #1225 and #1128.\r\n\r\nInitially, only the `transfer` function has been supported with additional features to come to hook into the Treasure Development Kit (TDK), Magicswap, and other Treasure platform features.\r\n\r\n## What kind of change is this?\r\n\r\nFeature\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\nSpin up an agent with the `treasure` plugin + review `plugin-treasure`.\r\n\r\n## Detailed testing steps\r\n1. In `.env`, should set the value for `TREASURE_ADDRESS` (public address for the agent account), `TREASURE_PRIVATE_KEY` (private key for the same account), and `TREASURE_RPC_URL` as https://rpc.treasure.lol.\r\nTo test the transfer function properly, this address needs tokens. [Treasure Bridge](https://bridge.treasure.lol/) can be used to bridge MAGIC directly from `arb1` to an address on `treasure`.\r\n2. Run the agent and prompt it with: \"Send 0.1 MAGIC to \" - e.g. \"send 0.1 MAGIC to 0x7A6a48b8e7BD3451Fc57f01Ad9Aaea62cdf5956E\"\r\n3. Assuming you had 1 MAGIC to send, the agent will confirm and respond with the tx hash, e.g. \"Successfully sent 1 MAGIC to 0x7A6a48b8e7BD3451Fc57f01Ad9Aaea62cdf5956E\r\nTransaction: 0x45759cf3e76d26610154a094c87572fbd7f5ef909f62c4ea13f7defb0d87cf0b\"\r\nThe tx hash can be checked on the Treasure Block Explorer (https://treasurescan.io/)",
+ "state": "OPEN",
+ "merged": false,
+ "createdAt": "2024-12-19T20:15:23Z",
+ "updatedAt": "2024-12-19T20:18:35Z",
+ "author": {
+ "login": "karelvuong",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/95452264?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0ODAsIm5iZiI6MTczNDY0NzI4MCwicGF0aCI6Ii91Lzk1NDUyMjY0In0.oN52fhkgFgvEaNu1V3xXp5TP8PU9DPwM0A0M4KD5yBM&u=a0ca99a025844781a3b09ed9616bf1308ffaa601&v=4"
+ },
+ "labels": [],
+ "files": [
{
- "path": "docs/api/functions/formatTimestamp.md",
- "additions": 2,
- "deletions": 2
+ "path": ".env.example",
+ "additions": 5,
+ "deletions": 0
},
{
- "path": "docs/api/functions/generateCaption.md",
- "additions": 2,
- "deletions": 2
+ "path": "agent/package.json",
+ "additions": 60,
+ "deletions": 59
},
{
- "path": "docs/api/functions/generateImage.md",
- "additions": 2,
- "deletions": 2
+ "path": "agent/src/index.ts",
+ "additions": 7,
+ "deletions": 3
},
{
- "path": "docs/api/functions/generateMessageResponse.md",
- "additions": 2,
- "deletions": 2
+ "path": "packages/plugin-treasure/package.json",
+ "additions": 20,
+ "deletions": 0
},
{
- "path": "docs/api/functions/generateObject.md",
- "additions": 2,
- "deletions": 2
+ "path": "packages/plugin-treasure/src/actions/transfer.ts",
+ "additions": 215,
+ "deletions": 0
},
{
- "path": "docs/api/functions/generateObjectArray.md",
- "additions": 2,
- "deletions": 2
+ "path": "packages/plugin-treasure/src/environment.ts",
+ "additions": 43,
+ "deletions": 0
},
{
- "path": "docs/api/functions/generateObjectV2.md",
- "additions": 2,
- "deletions": 2
+ "path": "packages/plugin-treasure/src/index.ts",
+ "additions": 13,
+ "deletions": 0
},
{
- "path": "docs/api/functions/generateShouldRespond.md",
- "additions": 2,
- "deletions": 2
+ "path": "packages/plugin-treasure/tsconfig.json",
+ "additions": 10,
+ "deletions": 0
},
{
- "path": "docs/api/functions/generateText.md",
- "additions": 2,
- "deletions": 2
+ "path": "packages/plugin-treasure/tsup.config.ts",
+ "additions": 20,
+ "deletions": 0
},
{
- "path": "docs/api/functions/generateTextArray.md",
- "additions": 2,
- "deletions": 2
- },
+ "path": "pnpm-lock.yaml",
+ "additions": 21,
+ "deletions": 0
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ },
+ {
+ "id": "PR_kwDOMT5cIs6F1Xyh",
+ "number": 1246,
+ "title": "feat: upgrade Tavily API with comprehensive input and constrain the token consumption",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nrelates to tavily #518\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nConstrain the maximum output of per web search from Tavily, while allows more input parameters that can be controlled by the developers or users.\r\n\r\n## What kind of change is this?\r\n\r\nImprovements & Features \r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\nNo\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\nYes, I have fulfilled the test by test this part independently and then assemble this to the core.\r\n\r\n## Where should a reviewer start?\r\n\r\nCould start with the test just like normally use Tavily.\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "state": "OPEN",
+ "merged": false,
+ "createdAt": "2024-12-19T19:25:41Z",
+ "updatedAt": "2024-12-19T19:52:00Z",
+ "author": {
+ "login": "tomguluson92",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/19585240?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91LzE5NTg1MjQwIn0.gXlxEwvwu9reKlsbqgUt9Tx7a5qqekgFUel_ERC3Fwo&u=4a4465656050747dee79f5f97a8b61cf2fbc97e1&v=4"
+ },
+ "labels": [],
+ "files": [
{
- "path": "docs/api/functions/generateTrueOrFalse.md",
- "additions": 2,
- "deletions": 2
+ "path": ".env.example",
+ "additions": 3,
+ "deletions": 0
},
{
- "path": "docs/api/functions/generateWebSearch.md",
- "additions": 2,
- "deletions": 2
+ "path": "packages/core/src/generation.ts",
+ "additions": 4,
+ "deletions": 0
},
{
- "path": "docs/api/functions/getActorDetails.md",
- "additions": 2,
+ "path": "packages/plugin-web-search/src/index.ts",
+ "additions": 24,
"deletions": 2
- },
+ }
+ ],
+ "reviews": [
{
- "path": "docs/api/functions/getEmbeddingConfig.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getEmbeddingType.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getEmbeddingZeroVector.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getEndpoint.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getEnvVariable.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getGoals.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getModel.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getProviders.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getRelationship.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getRelationships.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/handleProvider.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/hasEnvVariable.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/loadEnvConfig.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/parseBooleanFromText.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/parseJSONObjectFromText.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/parseJsonArrayFromText.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/parseShouldRespondFromText.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/splitChunks.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/stringToUuid.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/trimTokens.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/updateGoal.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/validateCharacterConfig.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/validateEnv.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/index.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/Account.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/Action.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/ActionExample.md",
- "additions": 3,
- "deletions": 3
- },
- {
- "path": "docs/api/interfaces/Actor.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/interfaces/Content.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/ConversationExample.md",
- "additions": 3,
- "deletions": 3
- },
- {
- "path": "docs/api/interfaces/EvaluationExample.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/Evaluator.md",
- "additions": 8,
- "deletions": 8
- },
- {
- "path": "docs/api/interfaces/GenerationOptions.md",
- "additions": 10,
- "deletions": 10
- },
- {
- "path": "docs/api/interfaces/Goal.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/IAgentRuntime.md",
- "additions": 36,
- "deletions": 36
- },
- {
- "path": "docs/api/interfaces/IBrowserService.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/interfaces/ICacheAdapter.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/ICacheManager.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/IDatabaseAdapter.md",
- "additions": 38,
- "deletions": 38
- },
- {
- "path": "docs/api/interfaces/IDatabaseCacheAdapter.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/IImageDescriptionService.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/IMemoryManager.md",
- "additions": 14,
- "deletions": 14
- },
- {
- "path": "docs/api/interfaces/IPdfService.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/interfaces/ISpeechService.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/interfaces/ITextGenerationService.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/ITranscriptionService.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/IVideoService.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/Memory.md",
- "additions": 10,
- "deletions": 10
- },
- {
- "path": "docs/api/interfaces/MessageExample.md",
- "additions": 3,
- "deletions": 3
- },
- {
- "path": "docs/api/interfaces/Objective.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/Participant.md",
- "additions": 3,
- "deletions": 3
- },
- {
- "path": "docs/api/interfaces/Provider.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/interfaces/Relationship.md",
- "additions": 8,
- "deletions": 8
- },
- {
- "path": "docs/api/interfaces/Room.md",
- "additions": 3,
- "deletions": 3
- }
- ],
- "reviews": [],
- "comments": []
- },
- {
- "id": "PR_kwDOMT5cIs6Fs0q3",
- "number": 1214,
- "title": "fix: fail when cannot get token, add Akash to generateText switch",
- "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n* this throws when we cannot get a token based on provider (otherwise it silently runs and prints auth errors) - it is a change in behaviour\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nThis fixes 2 issues I've hit:\r\n* When I setup Akash provider I got `Unsupported provider error` because it was missing in `generateText` switch\r\n* When I was trying to update eliza-starter and use it with Akash or Venice, I'd get auth errors because it could not get the provider token - since the `getTokenForProvider` did not account for the new providers, but it would not fail there, hence adding a `default` case which throwa\r\n\r\ncc @MbBrainz\r\n\r\n## What kind of change is this?\r\n\r\nBug fixes\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n* You can try to use Akash provider and chat with the agent - it should result in `Unsupported provider error` without this change\r\n* You can also try to configure some unknown provider and gcall `getTokenForProvider` andthe function will not report any errors without this change \r\n\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n## Discord username\r\n@vpavlin\r\n\r\n",
- "state": "OPEN",
- "merged": false,
- "createdAt": "2024-12-18T21:21:53Z",
- "updatedAt": "2024-12-18T21:28:14Z",
- "author": {
- "login": "vpavlin",
- "avatarUrl": "https://avatars.githubusercontent.com/u/4759808?u=d045a41a43fa2deabfc3115236cc1e8b0509b164&v=4"
- },
- "labels": [],
- "files": [
- {
- "path": "agent/src/index.ts",
- "additions": 4,
- "deletions": 0
- },
- {
- "path": "packages/core/src/generation.ts",
- "additions": 2,
- "deletions": 1
- }
- ],
- "reviews": [],
- "comments": [
- {
- "id": "IC_kwDOMT5cIs6YIQFz",
- "author": "vpavlin",
- "body": "Wait, should I use `develop` or `main` as a base?"
- }
- ]
- },
- {
- "id": "PR_kwDOMT5cIs6Fsrin",
- "number": 1212,
- "title": "Add EVM Client for blockchain event monitoring",
- "body": "# Add EVM Client for blockchain events\r\n\r\nThis PR adds a new client that enables Eliza agents to monitor and discuss EVM blockchain events through Discord.\r\n\r\n## Features\r\n- WebSocket connection to EVM-compatible chains\r\n- Smart contract event monitoring and decoding\r\n- Natural language discussion of events through Discord\r\n- Event memory storage and formatting\r\n- Automatic reconnection handling\r\n\r\n## Implementation\r\n- Core WebSocket client with ethers.js\r\n- Message manager for event processing\r\n- Discord channel integration\r\n- USDC/DAI Uniswap swap monitoring as reference implementation\r\n\r\n## Documentation\r\n- Full README with setup guide\r\n- Implementation examples\r\n- Code comments and type definitions\r\n\r\nThis extends Eliza's capabilities with blockchain event monitoring while following the framework's patterns for client integration.",
- "state": "OPEN",
- "merged": false,
- "createdAt": "2024-12-18T20:54:14Z",
- "updatedAt": "2024-12-18T20:54:14Z",
- "author": {
- "login": "BlockchainCake",
- "avatarUrl": "https://avatars.githubusercontent.com/u/24722374?u=c5a6378d6a918ac7d6ae7de796e4cd85ca91c4c3&v=4"
- },
- "labels": [],
- "files": [
- {
- "path": "agent/package.json",
- "additions": 2,
- "deletions": 0
- },
- {
- "path": "agent/src/index.ts",
- "additions": 6,
- "deletions": 0
- },
- {
- "path": "packages/client-discord/src/index.ts",
- "additions": 32,
- "deletions": 1
- },
- {
- "path": "packages/client-evm/README.md",
- "additions": 78,
- "deletions": 0
- },
- {
- "path": "packages/client-evm/config.example.json",
- "additions": 40,
- "deletions": 0
- },
- {
- "path": "packages/client-evm/config.json",
- "additions": 100,
- "deletions": 0
- },
- {
- "path": "packages/client-evm/package.json",
- "additions": 21,
- "deletions": 0
- },
- {
- "path": "packages/client-evm/src/evm-listener.ts",
- "additions": 242,
- "deletions": 0
- },
- {
- "path": "packages/client-evm/src/implementations/formatters.ts",
- "additions": 25,
- "deletions": 0
- },
- {
- "path": "packages/client-evm/src/implementations/templates.ts",
- "additions": 35,
- "deletions": 0
- },
- {
- "path": "packages/client-evm/src/index.ts",
- "additions": 85,
- "deletions": 0
- },
- {
- "path": "packages/client-evm/src/messages.ts",
- "additions": 176,
- "deletions": 0
- },
- {
- "path": "packages/client-evm/src/types.ts",
- "additions": 66,
- "deletions": 0
- },
- {
- "path": "packages/client-evm/tsconfig.json",
- "additions": 23,
- "deletions": 0
- },
- {
- "path": "packages/core/src/types.ts",
- "additions": 1,
- "deletions": 0
- },
- {
- "path": "pnpm-lock.yaml",
- "additions": 366,
- "deletions": 44
- },
- {
- "path": "tsconfig.json",
- "additions": 21,
- "deletions": 0
- }
- ],
- "reviews": [],
- "comments": []
- },
- {
- "id": "PR_kwDOMT5cIs6FsC8P",
- "number": 1211,
- "title": "chore: New docs",
- "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
- "state": "MERGED",
- "merged": true,
- "createdAt": "2024-12-18T19:04:47Z",
- "updatedAt": "2024-12-18T20:26:44Z",
- "author": {
- "login": "madjin",
- "avatarUrl": "https://avatars.githubusercontent.com/u/32600939?u=cdcf89f44c7a50906c7a80d889efa85023af2049&v=4"
- },
- "labels": [],
- "files": [
- {
- "path": "docs/api/classes/AgentRuntime.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/classes/CacheManager.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/classes/DatabaseAdapter.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/classes/DbCacheAdapter.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/classes/FsCacheAdapter.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/classes/MemoryCacheAdapter.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/classes/MemoryManager.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/classes/Service.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/enumerations/Clients.md",
- "additions": 9,
- "deletions": 9
- },
- {
- "path": "docs/api/enumerations/GoalStatus.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/enumerations/LoggingLevel.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/enumerations/ModelClass.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/enumerations/ModelProviderName.md",
- "additions": 33,
- "deletions": 23
- },
- {
- "path": "docs/api/enumerations/ServiceType.md",
- "additions": 12,
- "deletions": 12
- },
- {
- "path": "docs/api/functions/addHeader.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/composeActionExamples.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/composeContext.md",
- "additions": 12,
- "deletions": 6
- },
- {
- "path": "docs/api/functions/configureSettings.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/createGoal.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/createRelationship.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/embed.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/findNearestEnvFile.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatActionNames.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatActions.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatActors.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatEvaluatorExampleDescriptions.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatEvaluatorExamples.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatEvaluatorNames.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatEvaluators.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatGoalsAsString.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatMessages.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatPosts.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatRelationships.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatTimestamp.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateCaption.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateImage.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateMessageResponse.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateObject.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateObjectArray.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateObjectDeprecated.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateShouldRespond.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateTextArray.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateTrueOrFalse.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateTweetActions.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateWebSearch.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getActorDetails.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getEmbeddingConfig.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getEmbeddingType.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getEmbeddingZeroVector.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getEndpoint.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getEnvVariable.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getGoals.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getModel.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getProviders.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getRelationship.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getRelationships.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/handleProvider.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/hasEnvVariable.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/loadEnvConfig.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/parseActionResponseFromText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/parseBooleanFromText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/parseJSONObjectFromText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/parseJsonArrayFromText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/parseShouldRespondFromText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/splitChunks.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/stringToUuid.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/trimTokens.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/updateGoal.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/validateCharacterConfig.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/validateEnv.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/index.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/Account.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/Action.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/ActionExample.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/ActionResponse.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/interfaces/Actor.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/Content.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/ConversationExample.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/EvaluationExample.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/Evaluator.md",
- "additions": 8,
- "deletions": 8
- },
- {
- "path": "docs/api/interfaces/GenerationOptions.md",
- "additions": 10,
- "deletions": 10
- },
- {
- "path": "docs/api/interfaces/Goal.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/IAgentConfig.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/IAgentRuntime.md",
- "additions": 38,
- "deletions": 38
- },
- {
- "path": "docs/api/interfaces/IAwsS3Service.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/interfaces/IBrowserService.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/interfaces/ICacheAdapter.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/ICacheManager.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/IDatabaseAdapter.md",
- "additions": 38,
- "deletions": 38
- },
- {
- "path": "docs/api/interfaces/IDatabaseCacheAdapter.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/IImageDescriptionService.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/IMemoryManager.md",
- "additions": 14,
- "deletions": 14
- },
- {
- "path": "docs/api/interfaces/IPdfService.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/interfaces/ISlackService.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/ISpeechService.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/interfaces/ITextGenerationService.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/ITranscriptionService.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/IVideoService.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/Memory.md",
- "additions": 10,
- "deletions": 10
- }
- ],
- "reviews": [
- {
- "id": "PRR_kwDOMT5cIs6Vw_fL",
- "author": "odilitime",
- "body": "",
- "state": "APPROVED"
- },
- {
- "id": "PRR_kwDOMT5cIs6VxkIZ",
- "author": "monilpat",
- "body": "",
- "state": "APPROVED"
- }
- ],
- "comments": []
- },
- {
- "id": "PR_kwDOMT5cIs6FrtRJ",
- "number": 1210,
- "title": "feat: loading characters from db at load and runtime (conflicts resolved)",
- "body": "Originally #551, this is a resubmission\r\n\r\n\r\n\r\n# Relates to:\r\nLoading Characters from db(sqlite/postgres) during runtime (via a REST API call) and\r\nduring start/load time.\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n_Medium_\r\nNone of these changes will affect existing workflow as its handled by env variables\r\nFETCH_FROM_DB (bool) - default: null/false - For loading characters from DB\r\nAGENT_RUNTIME_MANAGEMENT (bool) - default: null/false - For loading characters from Db at runtime\r\n\r\nFrom security standpoint, all character specific secrets (EG: TWITTER_PASSWORD or OPENAI_API_KEY) is AES-256 encrypted and stored in DB\r\n\r\n\r\n\r\n# Background\r\nFor a production ready - multi-character Eliza setup, we want to load new characters in runtime via API calls.\r\nWe do not want to restart the Eliza server for each new character.\r\n\r\n_ASSUMPTION:_ \r\nAn api or script exists to store the characters in DB.\r\nThe api uses the same stringToUUID method to create consistent UUIDs for a character and store in DB.\r\n\r\n## What does this PR do?\r\n- Allows loading characters from DB during start\r\n- Allows loading characters via REST API from DB during runtime\r\n- The characters are stored in TEXT/JSONB format - similar to the character Agent file in sqlite and postgres respectively\r\n- Securely encrypts each character's secrets using AES-256 encryption and then stores in DB (Decrypt after fetch)\r\n- Proper error handling for all scenarios \r\n - Character already loaded in runtime\r\n - Character does not exist in db\r\n\r\n## What kind of change is this?\r\nThis is a new Feature\r\n\r\nWhy?\r\nCurrently \r\n1) For adding any new agent, we need to restart the Eliza server => All the agents and its clients are loaded again - All previous tweets (incase of twitter client), interactions are processed again. Any existing direct or telegram conversation is lost. \r\n2) Not a straight-forward mechanism to add new agents - Now with a REST API - load new agents.\r\n\r\nWhy are we doing this?\r\nTo take a step towards multi-character production setup\r\n\r\n### Code Changes made and why?\r\n1. **Created a new table in postgres and sqlite** - Added in the seed file/script of both DBs\r\n`\r\nexport type CharacterTable = {\r\n id: UUID; // created from stringToUUID - unique and consistent for name\r\n name: string;\r\n characterState: Character; // A JSONB or TEXT - that maps the character\r\n secretsIV?: Secrets; // Initialisation Vector for each secrets\r\n};\r\n`\r\n**Also added the above in packages/core/src/types.ts**\r\n2. **in SqliteAdapter and PostgresAdapter** - created a new function to load from this characters table\r\n3. **in Agents/src/index.ts** -> \r\n- Assign Directclient to a global variable - along with set and get methods. This is to allow the same direct client be used for character(agent) runtime creation\r\n- A function loadCharactersFromDb loadCharactersFromDb(\r\n characterNames?: string\r\n ): Promise \r\n - if any characterNames argument received, it fetches only those characters from db\r\n - else fetches all characters\r\n - This handles encryption and decryption of secrets if secrets are present in a character\r\n - uses env.ENCRYPTION_KEY\r\n- An express server\r\n - The server starts only when the env AGENT_RUNTIME_MANAGEMENT == true\r\n - _Why not use the same express server in DirectClient?_ DirectClient does not have access to the DB methods and all the agent-specific handling methods\r\n - ENDPOINT: \"/load/:agentName\" METHOD: Post\r\n - PORT: default. - 3001, overwritten by env AGENT_PORT\r\n4. **in packages/client-direct/src/index.ts**\r\n- Added ENDPOINT: \"/load/:agentName\" METHOD: Post\r\n - This endpoint (is a proxy) that routes request to the agent server's route\r\n - Before proxying, checks if AGENT_RUNTIME_MANAGEMENT ==true and if agents already in runtime\r\n5. created a file **packages/core/src/crypt.ts**\r\n- This handles the encryption and decryption methods\r\n6. created scripts that parses a character json file or all files in a folder and inserts in DB\r\n- Location: scripts/importCharactersInDB/[postgres/sqlite]/insertInDb.js\r\nRequires env variable\r\n`\r\nPOSTGRES_URL= # if postgres\r\nENCRYPTION_KEY=\"\"\r\nINPUT_PATH=characters # the folder path to load the characters from\r\nSQLITE_DB_PATH= #if you want to change db path Default: agent/data/db.sqlite\r\n`\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\nNot needed necessarily.\r\nNew ENV variables and explanations are added in .env.example\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\nI have tested the scenarios in detailed testing steps in both sqlite and postgres.\r\n\r\n## Where should a reviewer start?\r\n- agent/src/index.js \r\n- Line 418 and 531\r\npackages/client-direct/src/index.js\r\n- Line 271\r\n\r\n## Detailed testing steps\r\n**INIT STEP:** \r\n1. creating character table(use the schema.sql or sqliteTables.ts ) \r\n2. loading characters in DB (used the above mentioned scripts in `scripts/importCharactersInDB/[postgres/sqlite]/insertInDb.js` - \r\n - also added to the characters tate and trump - TWITTER_USERNAME, TWITTER_PASSWORD, TWITTER_EMAIL to its settings.secrets and twitter to client) to test secrets encryption and decryption\r\n\r\n**I have tested the following scenarios**\r\n1. Fetching from database during start\r\n- set env FETCH_FROM_DB=true\r\n- `pnpm start`\r\n- Will function as usual\r\n- if we want to test postgres, set env POSTGRES_URL=''\r\n2. Loading an agent during runtime\r\n- set env FETCH_FROM_DB=false #if true, we can't test load as all characters in db will be loaded\r\n- set env AGENT_RUNTIME_MANAGEMENT=true\r\n- set env ENCRYPTION_KEY= #use the same encryption key used in insertInDB.js script\r\n- set env AGENT_PORT=4000 #can be empty if we want to pick default port 3001\r\n`pnpm start`\r\n- This will load with the default character Eliza\r\n- `curl --location --request POST 'http://localhost:3000/load/trump'` - replace port and character name if using different characters\r\n- SUB SCENARIO 1: agent is loaded and we get success code 200\r\n- SUB SCENARIO 2: agent is already loaded and we get error code 409\r\n- SUB SCENARIO 3: agent does not exist in db and we get error code 404\r\n- SUB SCENARIO 4: Error during agent load - like incorrect twitter - error code 500\r\n- if we want to test postgres, set env POSTGRES_URL=''\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
- "state": "OPEN",
- "merged": false,
- "createdAt": "2024-12-18T18:10:29Z",
- "updatedAt": "2024-12-18T18:25:06Z",
- "author": {
- "login": "odilitime",
- "avatarUrl": "https://avatars.githubusercontent.com/u/16395496?u=45c152d8433e37c62520e66c0dd6d754ccf3eaf4&v=4"
- },
- "labels": [
- {
- "id": "LA_kwDOMT5cIs8AAAAB0PEeUw",
- "name": "Needs Testing",
- "color": "84C035",
- "description": ""
- },
- {
- "id": "LA_kwDOMT5cIs8AAAAB1qz4XA",
- "name": "needs_documentation",
- "color": "C93F64",
- "description": ""
- }
- ],
- "files": [
- {
- "path": ".env.example",
- "additions": 7,
- "deletions": 0
- },
- {
- "path": "agent/src/index.ts",
- "additions": 199,
- "deletions": 0
- },
- {
- "path": "packages/adapter-postgres/schema.sql",
- "additions": 9,
- "deletions": 0
- },
- {
- "path": "packages/adapter-postgres/src/index.ts",
- "additions": 48,
- "deletions": 1
- },
- {
- "path": "packages/adapter-sqlite/src/index.ts",
- "additions": 56,
- "deletions": 0
- },
- {
- "path": "packages/adapter-sqlite/src/sqliteTables.ts",
- "additions": 10,
- "deletions": 0
- },
- {
- "path": "packages/client-direct/src/index.ts",
- "additions": 45,
- "deletions": 4
- },
- {
- "path": "packages/core/src/crypt.ts",
- "additions": 63,
- "deletions": 0
- },
- {
- "path": "packages/core/src/index.ts",
- "additions": 1,
- "deletions": 0
- },
- {
- "path": "packages/core/src/types.ts",
- "additions": 20,
- "deletions": 0
- },
- {
- "path": "scripts/importCharactersInDB/crypt.js",
- "additions": 112,
- "deletions": 0
- },
- {
- "path": "scripts/importCharactersInDB/postgres/FetchFromDb.js",
- "additions": 143,
- "deletions": 0
- },
- {
- "path": "scripts/importCharactersInDB/postgres/insertInDb.js",
- "additions": 223,
- "deletions": 0
- },
- {
- "path": "scripts/importCharactersInDB/sqlite/fetchFromDb.js",
- "additions": 111,
- "deletions": 0
- },
- {
- "path": "scripts/importCharactersInDB/sqlite/insertInDb.js",
- "additions": 188,
- "deletions": 0
- }
- ],
- "reviews": [],
- "comments": []
- },
- {
- "id": "PR_kwDOMT5cIs6FrMNE",
- "number": 1209,
- "title": "docs: Update README.md",
- "body": "Relates to:\r\n\r\nNo issue; I created the pull request directly.\r\n\r\nRisks:\r\n\r\nLow\r\n\r\nBackground:\r\n\r\nThe starter script was not working because it did not include a cd command to navigate into the eliza-starter directory. This caused the script to fail when executed from the root of the project.\r\n\r\nWhat does this PR do?\r\n\r\nThis PR updates the starter script by adding a cd command to ensure it correctly navigates into the eliza-starter directory before executing any subsequent steps.\r\n\r\nWhat kind of change is this?\r\n\tโข\tBug fixes (non-breaking change which fixes an issue)\r\n\r\nDocumentation changes needed?\r\n\tโข\tMy changes do not require a change to the project documentation.\r\n\r\nTesting:\r\n\r\nWhere should a reviewer start?\r\n\r\nStart by reviewing the changes made to the starter script file.\r\n\r\nDetailed testing steps:\r\n\t1.\tRun the updated starter script from the root directory.\r\n\t2.\tConfirm that the script correctly navigates into the eliza-starter directory and proceeds without errors.",
- "state": "MERGED",
- "merged": true,
- "createdAt": "2024-12-18T16:46:43Z",
- "updatedAt": "2024-12-18T17:21:57Z",
- "author": {
- "login": "marcNY",
- "avatarUrl": "https://avatars.githubusercontent.com/u/8562443?u=734e3f5504e627ba44eec27c72ce0263cfe0a0ab&v=4"
- },
- "labels": [],
- "files": [
- {
- "path": "README.md",
- "additions": 1,
- "deletions": 2
- }
- ],
- "reviews": [
- {
- "id": "PRR_kwDOMT5cIs6VwNkS",
- "author": "odilitime",
- "body": "",
- "state": "APPROVED"
- }
- ],
- "comments": []
- },
- {
- "id": "PR_kwDOMT5cIs6FqYwJ",
- "number": 1207,
- "title": "fix: gitpod cicd bug",
- "body": "Sometimes we can't fetch tags, so let's fetch tags before.\r\n",
- "state": "MERGED",
- "merged": true,
- "createdAt": "2024-12-18T15:06:25Z",
- "updatedAt": "2024-12-18T19:43:00Z",
- "author": {
- "login": "v1xingyue",
- "avatarUrl": "https://avatars.githubusercontent.com/u/974169?u=96c6a113a91978c041e5cf90965d7b66c5540af4&v=4"
- },
- "labels": [],
- "files": [
- {
- "path": ".gitpod.yml",
- "additions": 1,
- "deletions": 0
- }
- ],
- "reviews": [
- {
- "id": "PRR_kwDOMT5cIs6VwMVG",
- "author": "odilitime",
- "body": "",
- "state": "APPROVED"
- }
- ],
- "comments": [
- {
- "id": "IC_kwDOMT5cIs6YFfh1",
- "author": "codecov",
- "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1207?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n"
- }
- ]
- },
- {
- "id": "PR_kwDOMT5cIs6FpD6y",
- "number": 1205,
- "title": "fix: write summary file before trying to cache it",
- "body": " - Also give a .md file extension for prettier rendering in Discord\r\n\r\n# Relates to:\r\nWhen I used my agent to CHAT_WITH_ATTACHMENTS it always failed to stat the summary file because it had not been created.\r\n\r\n# Risks\r\nLow. Writes summaries to disk, could become a lot of data if agent writes a lot of summaries.\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nWrite summary file before trying to cache it\r\n\r\n## What kind of change is this?\r\nBug fix (non-breaking change which fixes an issue)\r\n\r\n## Why are we doing this? Any context or related work?\r\nYeah, I'm building a technical support that needs to receive and analyze config files.\r\n\r\n## Discord username\r\ntobben_dev\r\n",
- "state": "OPEN",
- "merged": false,
- "createdAt": "2024-12-18T12:28:33Z",
- "updatedAt": "2024-12-18T17:17:36Z",
- "author": {
- "login": "tobbelobb",
- "avatarUrl": "https://avatars.githubusercontent.com/u/5753253?u=06987c2b4cb233fa0a612753bf4cb151862c07b4&v=4"
- },
- "labels": [],
- "files": [
- {
- "path": "packages/client-discord/src/actions/chat_with_attachments.ts",
- "additions": 31,
- "deletions": 10
- }
- ],
- "reviews": [],
- "comments": [
- {
- "id": "IC_kwDOMT5cIs6YGofA",
- "author": "odilitime",
- "body": "code looks good will test later"
- }
- ]
- },
- {
- "id": "PR_kwDOMT5cIs6Fn4Fn",
- "number": 1203,
- "title": "feat: Implement Nostr client",
- "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow. It's an optional client to use. \r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\nFeatures (non-breaking change which adds functionality)\r\n\r\n## Why are we doing this? Any context or related work?\r\n\r\nNostr is the simplest open protocol that is able to create a censorship-resistant global \"social\" network once and for all.\r\n\r\nIt's nature and strong focus on censorship-resistance makes it a perfect fit for the Eliza agent framework.\r\n\r\n## Configuration\r\n\r\nHere are the env variables that need to be set in the `.env` file:\r\n\r\n| Variable | Description | Example |\r\n| ---------------------- | ------------------------------------------------------ | ------------------------------------------- |\r\n| NOSTR_RELAYS | The list of Nostr relays to connect to | wss://relay.damus.io,wss://relay.primal.net |\r\n| NOSTR_NSEC_KEY | Nostr Private Key (starts with nsec) | nsec1... |\r\n| NOSTR_NPUB_KEY | Nostr Public Key (starts with npub) | npub1... |\r\n| NOSTR_POLL_INTERVAL | How often (in seconds) to check for Nostr interactions | 120 |\r\n| NOSTR_POST_IMMEDIATELY | Whether to post immediately or not | false |\r\n| NOSTR_DRY_RUN | Whether to dry run or not | false |\r\n\r\nSample configuration:\r\n\r\n```bash\r\n# The list of Nostr relays to connect to.\r\nNOSTR_RELAYS=\"wss://relay.damus.io,wss://relay.primal.net\"\r\n# Nostr Private Key (starts with nsec)\r\nNOSTR_NSEC_KEY=\"nsec1...\"\r\n# Nostr Public Key (starts with npub)\r\nNOSTR_NPUB_KEY=\"npub1...\"\r\n# How often (in seconds) the bot should check for Nostr interactions (default: 2 minutes)\r\nNOSTR_POLL_INTERVAL=120\r\n# Whether to post immediately or not\r\nNOSTR_POST_IMMEDIATELY=false\r\n# Whether to dry run or not\r\nNOSTR_DRY_RUN=false\r\n```\r\n\r\nNote: The `nsec` configured key is used as the default signer when instantiating the `NDK` instance.\r\n\r\nNostr client must be set in the Character definition, example:\r\n```json\r\n{\r\n \"name\": \"goku\",\r\n \"clients\": [\"nostr\"],\r\n \"modelProvider\": \"anthropic\"\r\n \r\n}\r\n```\r\n\r\n## Changes summary\r\n\r\n- Add env variables for Nostr in `.env.example`.\r\n- Introduce [Nostr NDK](https://github.com/nostr-dev-kit/ndk) for Nostr client.\r\n- Implement Nostr client in Eliza (in `packages/client-nostr`).\r\n - Implement `NostrClient` class.\r\n - Implement `NostrInteractionManager` in `packages/client-nostr/src/interactions.ts`. For now it's a no op service.\r\n - Implement `NostrPostManager` in `packages/client-nostr/src/post.ts`.\r\n\r\n## Resources\r\n\r\n- [Nostr Github](https://github.com/nostr-protocol/nostr)\r\n- [What is Nostr ?](https://nostr.org/)\r\n- [Nostr online dev tools](https://nostrtool.com/)\r\n\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n- As anon\r\nย - run `pnpm run dev --characters=\"characters/goku.character.json\"` \r\nย - verify that Nostr notes are posted\r\n\r\n## Screenshots\r\n\r\nScreenshot of Nostr notes posted by the agent:\r\n\r\n![Screenshot 2024-12-17 at 18 34 11](https://github.com/user-attachments/assets/e0977daa-8f6d-4943-837e-d6426a575443)\r\n\r\nScreenshot of terminal of the running agent with logs:\r\n\r\n![Screenshot 2024-12-17 at 18 34 27](https://github.com/user-attachments/assets/a1ec8c99-b544-468e-94e2-d72f55521157)\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n## Discord username\r\n\r\nabdel.stark\r\n",
- "state": "OPEN",
- "merged": false,
- "createdAt": "2024-12-18T09:55:14Z",
- "updatedAt": "2024-12-18T20:52:26Z",
- "author": {
- "login": "AbdelStark",
- "avatarUrl": "https://avatars.githubusercontent.com/u/45264458?u=6ea3a3cec4fd224af9afe756466df041687486a2&v=4"
- },
- "labels": [
- {
- "id": "LA_kwDOMT5cIs8AAAAB1NgIxA",
- "name": "Plugin_new",
- "color": "FBCA04",
- "description": "Mark PRs that are a new plugin"
- }
- ],
- "files": [
- {
- "path": ".env.example",
- "additions": 14,
- "deletions": 0
- },
- {
- "path": "agent/package.json",
- "additions": 60,
- "deletions": 59
- },
- {
- "path": "agent/src/index.ts",
- "additions": 18,
- "deletions": 8
- },
- {
- "path": "packages/client-nostr/package.json",
- "additions": 18,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/actions.ts",
- "additions": 37,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/client.ts",
- "additions": 66,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/index.ts",
- "additions": 61,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/interactions.ts",
- "additions": 36,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/memory.ts",
- "additions": 36,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/post.ts",
- "additions": 188,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/prompts.ts",
- "additions": 88,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/types.ts",
- "additions": 9,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/utils.ts",
- "additions": 143,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/tsconfig.json",
- "additions": 12,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/tsup.config.ts",
- "additions": 20,
- "deletions": 0
- },
- {
- "path": "packages/core/src/types.ts",
- "additions": 8,
- "deletions": 4
- },
- {
- "path": "packages/plugin-node/src/services/awsS3.ts",
- "additions": 42,
- "deletions": 18
- },
- {
- "path": "pnpm-lock.yaml",
- "additions": 146,
- "deletions": 0
- }
- ],
- "reviews": [
- {
- "id": "PRR_kwDOMT5cIs6Vxt9a",
- "author": "odilitime",
- "body": "",
- "state": "COMMENTED"
- }
- ],
- "comments": [
- {
- "id": "IC_kwDOMT5cIs6YGnDF",
- "author": "odilitime",
- "body": "S3 changes trip me up for a second but I think I get it now"
- },
- {
- "id": "IC_kwDOMT5cIs6YGrTG",
- "author": "AbdelStark",
- "body": "> S3 changes trip me up for a second but I think I get it now\r\n\r\nYeah this is not related to the Nostr client, but for some reasons there was an error because of a mismatch of interface for the S3 service, and I had to fix it."
- }
- ]
- },
- {
- "id": "PR_kwDOMT5cIs6Fn2lU",
- "number": 1202,
- "title": "fix: optional chaining on search to avoid startup errors when search is not enabled",
- "body": "\r\n\r\n# Relates to:\r\nclient-twitter\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\nLow\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nAdds optional chaining to twitter search setup to prevent an error on startup when search code is active but not enabled.\r\n\r\n## What kind of change is this?\r\nBug fix.\r\n\r\n\r\n\r\n\r\n\r\n## Why are we doing this? Any context or related work?\r\nWhen working with twitter search, the agent throws errors when I activate the search code but disable search in .env\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\nRun twitter agent with `TWITTER_SEARCH_ENABLE=FALSE` and there should be no error on startup\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
- "state": "OPEN",
- "merged": false,
- "createdAt": "2024-12-18T09:52:31Z",
- "updatedAt": "2024-12-18T10:11:57Z",
- "author": {
- "login": "netdragonx",
- "avatarUrl": "https://avatars.githubusercontent.com/u/100390508?u=0805360e7258c798433b4d3f63a4c0457c178942&v=4"
- },
- "labels": [],
- "files": [
- {
- "path": "packages/client-twitter/src/index.ts",
- "additions": 14,
- "deletions": 17
- }
- ],
- "reviews": [],
- "comments": []
- },
- {
- "id": "PR_kwDOMT5cIs6FnbCY",
- "number": 1201,
- "title": "docs(cn): add python 3.7",
- "body": "\r\n## What does this PR do?\r\n\r\nAdd python2.7 to the requirements\r\n\r\n",
- "state": "MERGED",
- "merged": true,
- "createdAt": "2024-12-18T09:00:53Z",
- "updatedAt": "2024-12-18T17:39:58Z",
- "author": {
- "login": "9547",
- "avatarUrl": "https://avatars.githubusercontent.com/u/29431502?u=def2043f3c532d18cae388fcec8d24a21e08d044&v=4"
- },
- "labels": [],
- "files": [
- {
- "path": "README_CN.md",
- "additions": 2,
- "deletions": 3
- }
- ],
- "reviews": [
- {
- "id": "PRR_kwDOMT5cIs6VwGx3",
- "author": "odilitime",
+ "id": "PRR_kwDOMT5cIs6V989r",
+ "author": "tcm390",
"body": "",
"state": "APPROVED"
}
],
"comments": [
{
- "id": "IC_kwDOMT5cIs6YGyJ3",
+ "id": "IC_kwDOMT5cIs6YU9A-",
"author": "codecov",
- "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1201?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n"
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1246?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAttention: Patch coverage is `0%` with `4 lines` in your changes missing coverage. Please review.\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1246?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Patch % | Lines |\n|---|---|---|\n| [packages/core/src/generation.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1246?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fgeneration.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvZ2VuZXJhdGlvbi50cw==) | 0.00% | [4 Missing :warning: ](https://app.codecov.io/gh/ai16z/eliza/pull/1246?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) |\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1246?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Coverage ฮ | |\n|---|---|---|\n| [packages/core/src/generation.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1246?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fgeneration.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvZ2VuZXJhdGlvbi50cw==) | `2.68% <0.00%> (-0.01%)` | :arrow_down: |\n"
}
]
},
{
- "id": "PR_kwDOMT5cIs6FnACK",
- "number": 1199,
- "title": "feat: added 12 new routes for runtime parameters",
- "body": "\r\n\r\n# Relates to:\r\nN/A - Initial API routes documentation\r\n\r\n\r\n\r\n\r\n# Risks\r\nLow - These are read-only API endpoints that expose internal agent state. No write operations except for /set endpoint.\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nAdds comprehensive API routes to the agent framework that expose internal state and capabilities through REST endpoints. This includes routes for:\r\n\r\nAgent state and configuration\r\nMemory and cache inspection\r\nService and plugin discovery\r\nMetrics and monitoring\r\nRelationship and room management\r\n## What kind of change is this?\r\nFeatures (non-breaking change which adds functionality)\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\nChanges required to the project documentation to document all available API endpoints and their usage.\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\nStart with basic routes like /agents and /agents/:agentId to verify basic functionality\r\nTest state inspection routes like /state, /memories, and /cache\r\nVerify component discovery through /services, /plugins, and /providers\r\nCheck monitoring capabilities via /metrics\r\n## Detailed testing steps\r\nStart agent framework with npm start\r\nGet list of agents: curl http://localhost:3000/agents\r\nFor each agent ID:\r\n\r\nTest state endpoint: curl http://localhost:3000/agents/{id}/state\r\nVerify services: curl http://localhost:3000/agents/{id}/services\r\nCheck metrics: curl http://localhost:3000/agents/{id}/metrics\r\nView memories: curl http://localhost:3000/agents/{id}/memories\r\nInspect plugins: curl http://localhost:3000/agents/{id}/plugins\r\nTest providers: curl http://localhost:3000/agents/{id}/providers\r\nVerify relationships: curl http://localhost:3000/agents/{id}/relationships\r\nCheck rooms: curl http://localhost:3000/agents/{id}/rooms\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nRequires server restart to enable new API endpoints. No database changes needed.\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
- "state": "OPEN",
- "merged": false,
- "createdAt": "2024-12-18T08:04:22Z",
- "updatedAt": "2024-12-18T17:23:19Z",
+ "id": "PR_kwDOMT5cIs6F09Aj",
+ "number": 1245,
+ "title": "feat: make express payload limit configurable",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "state": "MERGED",
+ "merged": true,
+ "createdAt": "2024-12-19T18:12:17Z",
+ "updatedAt": "2024-12-19T22:05:56Z",
"author": {
- "login": "Hdpbilly",
- "avatarUrl": "https://avatars.githubusercontent.com/u/168072844?u=04895ee023be4c6ff9a630d14f55c15ee0d9f502&v=4"
+ "login": "renlulu",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/8149051?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg2NjAsIm5iZiI6MTczNDY0NzQ2MCwicGF0aCI6Ii91LzgxNDkwNTEifQ.vNRFI1s-VUpAgF8g-JReFxwDI4UBDPmFdIkEcDNscYE&u=001a339b366e297d951ff1155837fe1e1510c398&v=4"
},
- "labels": [
- {
- "id": "LA_kwDOMT5cIs8AAAAB1qz4XA",
- "name": "needs_documentation",
- "color": "C93F64",
- "description": ""
- }
- ],
+ "labels": [],
"files": [
{
- "path": "packages/client-direct/src/api.ts",
- "additions": 259,
+ "path": ".env.example",
+ "additions": 3,
"deletions": 0
+ },
+ {
+ "path": "packages/client-direct/src/api.ts",
+ "additions": 26,
+ "deletions": 17
}
],
"reviews": [
{
- "id": "PRR_kwDOMT5cIs6VwGVf",
- "author": "odilitime",
+ "id": "PRR_kwDOMT5cIs6V-6EW",
+ "author": "monilpat",
"body": "",
+ "state": "COMMENTED"
+ },
+ {
+ "id": "PRR_kwDOMT5cIs6V-6Ku",
+ "author": "monilpat",
+ "body": "LGTM one nit",
"state": "APPROVED"
+ },
+ {
+ "id": "PRR_kwDOMT5cIs6V--i7",
+ "author": "monilpat",
+ "body": "",
+ "state": "COMMENTED"
}
],
"comments": []
},
{
- "id": "PR_kwDOMT5cIs6FmrMc",
- "number": 1198,
- "title": "feat: Client secrets validation",
- "body": "# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nChecks that secrets are valid before adding client\r\n\r\n## What kind of change is this?\r\n\r\nImprovements (misc. changes to existing features)\r\n\r\n## Why are we doing this? Any context or related work?\r\n\r\nMake the daemon not crash when REST API is adding/updating/deleting agents\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n",
- "state": "OPEN",
- "merged": false,
- "createdAt": "2024-12-18T07:17:10Z",
- "updatedAt": "2024-12-18T22:33:35Z",
+ "id": "PR_kwDOMT5cIs6F0zf0",
+ "number": 1244,
+ "title": "feat: make twitter login retry times as env",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "state": "MERGED",
+ "merged": true,
+ "createdAt": "2024-12-19T17:54:02Z",
+ "updatedAt": "2024-12-19T21:52:56Z",
"author": {
- "login": "odilitime",
- "avatarUrl": "https://avatars.githubusercontent.com/u/16395496?u=45c152d8433e37c62520e66c0dd6d754ccf3eaf4&v=4"
+ "login": "renlulu",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/8149051?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg2NjAsIm5iZiI6MTczNDY0NzQ2MCwicGF0aCI6Ii91LzgxNDkwNTEifQ.vNRFI1s-VUpAgF8g-JReFxwDI4UBDPmFdIkEcDNscYE&u=001a339b366e297d951ff1155837fe1e1510c398&v=4"
},
- "labels": [
- {
- "id": "LA_kwDOMT5cIs8AAAAB0PEeUw",
- "name": "Needs Testing",
- "color": "84C035",
- "description": ""
- }
- ],
+ "labels": [],
"files": [
{
- "path": "agent/src/index.ts",
- "additions": 22,
- "deletions": 9
- },
- {
- "path": "packages/client-discord/src/index.ts",
- "additions": 30,
- "deletions": 3
- },
- {
- "path": "packages/client-telegram/package.json",
+ "path": ".env.example",
"additions": 1,
"deletions": 0
},
{
- "path": "packages/client-telegram/src/index.ts",
- "additions": 22,
- "deletions": 0
+ "path": "agent/src/index.ts",
+ "additions": 2,
+ "deletions": 2
},
{
"path": "packages/client-twitter/src/base.ts",
- "additions": 14,
- "deletions": 7
- },
- {
- "path": "packages/client-twitter/src/index.ts",
- "additions": 17,
+ "additions": 4,
"deletions": 1
- },
+ }
+ ],
+ "reviews": [
{
- "path": "packages/core/src/types.ts",
- "additions": 3,
- "deletions": 0
+ "id": "PRR_kwDOMT5cIs6V-6X7",
+ "author": "monilpat",
+ "body": "LGTM",
+ "state": "APPROVED"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "id": "PR_kwDOMT5cIs6F0GdF",
+ "number": 1243,
+ "title": "Fix visibility issue github image cicd",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n[Publish an official Docker Image in ghcr. #876](https://github.com/ai16z/eliza/issues/876) and PR [feat : github image cicd #889](https://github.com/ai16z/eliza/pull/889) by @v1xingyue.\r\n\r\n# Risks\r\n\r\nLow. I do not see risks.\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\nUpdates image.yaml to add the task to change package visibility.\r\n",
+ "state": "MERGED",
+ "merged": true,
+ "createdAt": "2024-12-19T16:36:23Z",
+ "updatedAt": "2024-12-19T22:02:34Z",
+ "author": {
+ "login": "luisalrp",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/31384138?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg1NDAsIm5iZiI6MTczNDY0NzM0MCwicGF0aCI6Ii91LzMxMzg0MTM4In0.XQRH_JmHfJ9SSP2y-iWTJbtF0mMQ96QBOO5JmXkIdDI&u=dd50e8885f7f8e2372d955b7fae623bba8be9ec2&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": ".github/workflows/image.yaml",
+ "additions": 56,
+ "deletions": 47
}
],
"reviews": [
{
- "id": "PRR_kwDOMT5cIs6VyTBl",
- "author": "cygaar",
- "body": "",
- "state": "COMMENTED"
+ "id": "PRR_kwDOMT5cIs6V-9km",
+ "author": "monilpat",
+ "body": "LGTM! ",
+ "state": "APPROVED"
}
],
"comments": []
},
{
- "id": "PR_kwDOMT5cIs6FmTty",
- "number": 1196,
- "title": "docs: Update \"CN README\" with more details",
- "body": "Add more details in the CN version of README\r\n\r\n\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nFix the old CN readme, since old version do not have a complete launch information.\r\n\r\n## What kind of change is this?\r\n\r\nImprovements\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\nYes, I change the readme chinese version.\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "id": "PR_kwDOMT5cIs6F0DIE",
+ "number": 1242,
+ "title": "fix: twitterShouldRespondTemplate Fails When Defined as a String in JSON Character Config",
+ "body": "related: https://github.com/ai16z/eliza/issues/1235\r\n\r\n",
"state": "MERGED",
"merged": true,
- "createdAt": "2024-12-18T06:12:33Z",
- "updatedAt": "2024-12-18T17:29:45Z",
+ "createdAt": "2024-12-19T16:31:00Z",
+ "updatedAt": "2024-12-19T22:02:54Z",
"author": {
- "login": "tomguluson92",
- "avatarUrl": "https://avatars.githubusercontent.com/u/19585240?u=4a4465656050747dee79f5f97a8b61cf2fbc97e1&v=4"
+ "login": "tcm390",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/60634884?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkwODAsIm5iZiI6MTczNDY0Nzg4MCwicGF0aCI6Ii91LzYwNjM0ODg0In0.aTZg7v0-F5XSxIbAmBcfx_5AdpyFDh-e6rtAZEXNARI&u=c6c41679b8322eaa0c81f72e0b4ed95e80f0ac16&v=4"
},
"labels": [],
"files": [
{
- "path": "README_CN.md",
- "additions": 58,
- "deletions": 6
+ "path": "packages/client-twitter/src/interactions.ts",
+ "additions": 1,
+ "deletions": 3
}
],
"reviews": [
{
- "id": "PRR_kwDOMT5cIs6VwQXT",
- "author": "odilitime",
- "body": "",
+ "id": "PRR_kwDOMT5cIs6V-82E",
+ "author": "monilpat",
+ "body": "LGTM",
"state": "APPROVED"
}
],
"comments": [
{
- "id": "IC_kwDOMT5cIs6YBMMa",
+ "id": "IC_kwDOMT5cIs6YSfhm",
"author": "codecov",
- "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1196?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n"
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1242?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n"
}
]
},
{
- "id": "PR_kwDOMT5cIs6FmD-X",
- "number": 1195,
- "title": "feat: integrate contextualized actions + bug fixes ",
- "body": "Integrate memories (files) + character details to in actions plus a few bug fixes",
- "state": "CLOSED",
+ "id": "PR_kwDOMT5cIs6Fzszd",
+ "number": 1241,
+ "title": "feat: add avail plugin",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nN/A\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow.\r\nThe main implementation risk is that the Plugin doesn't work as intended.\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n[Avail](https://www.availproject.org/) aims to accelerate Web3's unification using its cutting-edge modular technology stack, which combines data availability, aggregation, and shared security.\r\n\r\nIn this version, the `transfer` and `submitData` actions are supported.\r\n\r\nMultiple L2s are working with Avail to meet their data availability and interoperability needs.\r\n\r\n## What kind of change is this?\r\n\r\nFeatures (non-breaking change which adds functionality)\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\nSince Avail is a Substrate based network, and not EVM-compatible (cannot work with `plugin-evm`), it requires some docs to show how to submit data and transfer tokens. I have updated the documentation accordingly in the README for the plugin.\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\nMost of the changes are in `plugin-avail`\r\n\r\n\r\n## Detailed testing steps\r\n- In `.env` you should set the value for `AVAIL_ADDRESS` (this is the public address for the agent account) and `AVAIL_SEED` (seed phrase for the same account).\r\n- **Transfer AVAIL**\r\n - To test transfer function, you need tokens in your Avail account. On testnet, you can use the [Avail Faucet](https://faucet.avail.tools/). If you need more please ping me, and I can send it over. \r\n - Run the agent and prompt it with: \"send 1 AVAIL to \" - e.g. `send 1 AVAIL to 5GWbvXjefEvXXETtKQH7YBsUaPc379KAQATW1eqeJT26cbsK`\r\n - Assuming everything goes smoothly the agent returns with the Tx Hash, and Block Hash. \r\nThe tx hash can be checked on the Avail block explorer at https://avail-turing.subscan.io/\r\n- **Submit Data**\r\n - To test data submission, you need tokens in your Avail account to pay fees. On testnet, you can use the [Avail Faucet](https://faucet.avail.tools/). If you need more please ping me, and I can send it over. \r\n - Run the agent and prompt it with: \"Submit the following data to Avail \" - e.g. `Submit the following data to Avail \"Hello World!\"`\r\n - Assuming everything goes smoothly the agent returns with the Tx Hash, and Block Hash. \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n## Discord username\r\nRobinRRT\r\n\r\n",
+ "state": "OPEN",
"merged": false,
- "createdAt": "2024-12-18T05:26:54Z",
- "updatedAt": "2024-12-18T05:27:15Z",
+ "createdAt": "2024-12-19T15:54:49Z",
+ "updatedAt": "2024-12-19T15:59:35Z",
"author": {
- "login": "monilpat",
- "avatarUrl": "https://avatars.githubusercontent.com/u/15067321?u=1271e57605b48029307547127c90e1bd5e4f3f39&v=4"
+ "login": "robin-rrt",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/66296664?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91LzY2Mjk2NjY0In0.xDIk15VBLjxq_UQ581P8lfJH4UZ_Es24hWAMsjRhmL0&u=3c317252695c6601ff8f1189de214e05a87458bd&v=4"
},
"labels": [],
"files": [
{
"path": ".env.example",
- "additions": 2,
- "deletions": 7
- },
- {
- "path": ".github/workflows/sync-upstream.yaml",
- "additions": 80,
+ "additions": 6,
"deletions": 0
},
- {
- "path": ".gitignore",
- "additions": 5,
- "deletions": 1
- },
{
"path": "agent/package.json",
- "additions": 3,
- "deletions": 1
- },
- {
- "path": "agent/src/index.ts",
- "additions": 54,
- "deletions": 12
- },
- {
- "path": "characters/chronis.character.json",
- "additions": 321,
- "deletions": 0
- },
- {
- "path": "characters/logging-addict.character.json",
- "additions": 262,
- "deletions": 0
- },
- {
- "path": "docs/api/classes/AgentRuntime.md",
- "additions": 40,
- "deletions": 40
- },
- {
- "path": "docs/api/classes/CacheManager.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/classes/DatabaseAdapter.md",
- "additions": 41,
- "deletions": 41
- },
- {
- "path": "docs/api/classes/DbCacheAdapter.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/classes/FsCacheAdapter.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/classes/MemoryCacheAdapter.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/classes/MemoryManager.md",
- "additions": 13,
- "deletions": 13
- },
- {
- "path": "docs/api/classes/Service.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/enumerations/Clients.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/enumerations/GoalStatus.md",
- "additions": 3,
- "deletions": 3
- },
- {
- "path": "docs/api/enumerations/LoggingLevel.md",
- "additions": 3,
- "deletions": 3
- },
- {
- "path": "docs/api/enumerations/ModelClass.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/enumerations/ModelProviderName.md",
- "additions": 76,
- "deletions": 0
- },
- {
- "path": "docs/api/enumerations/ServiceType.md",
- "additions": 8,
- "deletions": 8
- },
- {
- "path": "docs/api/functions/addHeader.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/composeActionExamples.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/composeContext.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/configureSettings.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/createGoal.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/createRelationship.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/embed.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/findNearestEnvFile.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatActionNames.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatActions.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatActors.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatEvaluatorExampleDescriptions.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatEvaluatorExamples.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatEvaluatorNames.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatEvaluators.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatGoalsAsString.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatMessages.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatPosts.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatRelationships.md",
"additions": 1,
- "deletions": 1
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatTimestamp.md",
- "additions": 1,
- "deletions": 1
+ "path": "agent/src/index.ts",
+ "additions": 3,
+ "deletions": 0
},
{
- "path": "docs/api/functions/generateCaption.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-avail/.npmignore",
+ "additions": 6,
+ "deletions": 0
},
{
- "path": "docs/api/functions/generateImage.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-avail/README.md",
+ "additions": 25,
+ "deletions": 0
},
{
- "path": "docs/api/functions/generateMessageResponse.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-avail/eslint.config.mjs",
+ "additions": 3,
+ "deletions": 0
},
{
- "path": "docs/api/functions/generateObject.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-avail/package.json",
+ "additions": 21,
+ "deletions": 0
},
{
- "path": "docs/api/functions/generateObjectArray.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-avail/src/actions/submitData.ts",
+ "additions": 238,
+ "deletions": 0
},
{
- "path": "docs/api/functions/generateObjectV2.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-avail/src/actions/transfer.ts",
+ "additions": 237,
+ "deletions": 0
},
{
- "path": "docs/api/functions/generateShouldRespond.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-avail/src/environment.ts",
+ "additions": 36,
+ "deletions": 0
},
{
- "path": "docs/api/functions/generateText.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-avail/src/index.ts",
+ "additions": 23,
+ "deletions": 0
},
{
- "path": "docs/api/functions/generateTextArray.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-avail/tsconfig.json",
+ "additions": 13,
+ "deletions": 0
},
{
- "path": "docs/api/functions/generateTrueOrFalse.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-avail/tsup.config.ts",
+ "additions": 21,
+ "deletions": 0
},
{
- "path": "docs/api/functions/generateWebSearch.md",
- "additions": 1,
+ "path": "pnpm-lock.yaml",
+ "additions": 0,
+ "deletions": 37536
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ },
+ {
+ "id": "PR_kwDOMT5cIs6Fydmw",
+ "number": 1239,
+ "title": "fix: Sync UI Client with server port env",
+ "body": "\r\n\r\n# Risks\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nIt uses SERVER_PORT environment variable in the client app\r\n\r\n## What kind of change is this?\r\nImprovements for developer experience\r\n\r\n## Why are we doing this? Any context or related work?\r\nExperienced this issue when developing and wanted to use another port then 3000\r\n\r\n# Documentation changes needed?\r\nMy changes do not require a change to the project documentation.\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "state": "MERGED",
+ "merged": true,
+ "createdAt": "2024-12-19T13:56:38Z",
+ "updatedAt": "2024-12-19T21:54:31Z",
+ "author": {
+ "login": "jonathangus",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/7723195?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg3MjAsIm5iZiI6MTczNDY0NzUyMCwicGF0aCI6Ii91Lzc3MjMxOTUifQ.htne0skqI0Y2OwK1K8bRO0AevoSbqtOjKav7qWgZDAo&u=2f07ca181065b387adcebe19eaf0798526e6f061&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": "client/vite.config.ts",
+ "additions": 4,
"deletions": 1
+ }
+ ],
+ "reviews": [
+ {
+ "id": "PRR_kwDOMT5cIs6V-60G",
+ "author": "monilpat",
+ "body": "LGTM - thank you!",
+ "state": "APPROVED"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "id": "PR_kwDOMT5cIs6Fxv6t",
+ "number": 1238,
+ "title": "Feat/deva client integration",
+ "body": "# Pull Request: Integrate Deva into Eliza\r\n\r\n## Relates to\r\n\r\nThis PR adds a new [Deva](https://www.deva.me/) client integration for the Eliza AI agent, enabling posting and scheduling posts to the [Deva](https://www.deva.me/) feed.\r\n\r\n## Risks\r\n\r\n- **Minimal Risk**: This integration is additive and does not alter existing functionalities of Eliza.\r\n- **Dependency Management**: Introduces a new dependency on Deva's API, which requires monitoring for future updates or changes.\r\n- **Data Privacy**: Ensures that any data shared between Eliza and Deva complies with our privacy policies.\r\n\r\n## Background\r\n\r\n### What does this PR do?\r\n\r\nThis PR introduces the capability to post and schedule content directly to the [Deva platform](https://www.deva.me/) from the Eliza AI agent. Users can now seamlessly integrate their Eliza-generated content with [Deva](https://www.deva.me/), enhancing their content distribution and engagement strategies.\r\n\r\n### What kind of change is this?\r\n\r\n**Feature**: This is a non-breaking change that adds new functionality to the Eliza AI agent by integrating with Devaโs API for posting and scheduling content.\r\n\r\n## Documentation Changes Needed?\r\n\r\nNot at the moment.\r\n\r\n## Testing\r\n\r\n### Detailed Testing Steps\r\n\r\n1. **Create a Deva Account**\r\n - Navigate to [deva.me](https://www.deva.me/), create an account, and press the \"Get Started\" button in the top right.\r\n - ![Get Started](https://github.com/user-attachments/assets/a31ebe01-3ee7-40f5-8e30-f59c79c642fe)\r\n\r\n2. **Complete Onboarding**\r\n - Click through the onboarding screens and connect your preferred social account (e.g., Twitter) to Deva.\r\n\r\n3. **Access the Deva Feed**\r\n - You can now see the Deva feed, where you can post and interact with other Devas.\r\n - \r\n\r\n4. **Create an Application to get the token**\r\n - At this point, you'll be able to get a token to interact with Deva, to do so: \r\n - Navigate to Apps chapter in settings by clicking the user icon in top right corner and then settings -> Apps, or opening [apps](https://www.deva.me/settings/apps)\r\n - Press Apps and Session\r\n
![image](https://github.com/user-attachments/assets/9fda36ac-3675-4f30-8c48-9b91e71a741e)\r\n - Press Create new app\r\n
![image](https://github.com/user-attachments/assets/32fc9b04-510e-4a90-876c-e4f6d2e562d7)\r\n - You are redirected to the form of the app creation, Name, Redirect URL and descriptions are necessary fields. Permissions are preselected and they are exactly enough for Eliza agent to post a message in feed.\r\n - After creating an app, select it from the list of apps;\r\n - Inside you will find a Get Token button, to generate a new token for your app:\r\n
![image](https://github.com/user-attachments/assets/307ab088-0508-496e-bc8e-4ded833e8b4f)\r\n - Later, it'll be visible in the list:\r\n
![image](https://github.com/user-attachments/assets/39034c0d-3cf3-4a69-aaab-8cd1740d9ba6)\r\n\r\n5. **Update Environment Variables**\r\n - Once you have the token, update the environment variables in the `.env` file:\r\n ```env\r\n DEVA_API_KEY=YourApiKey\r\n DEVA_API_BASE_URL=https://api.deva.me # Production API URL\r\n ```\r\n\r\n6. **Select Deva Client as Default Character**\r\n - Select the Deva client as Eliza's default character and choose the desired model:\r\n
![Select Deva Client](https://github.com/user-attachments/assets/1120ebb4-4618-4364-bbf8-7040b6bda8c0)\r\n\r\n7. **Run the Application**\r\n - Execute the following commands to install dependencies and start the application:\r\n ```bash\r\n pnpm install && pnpm start\r\n ```\r\n - This will initiate the Deva client:\r\n
![Initiate Deva Client](https://github.com/user-attachments/assets/4ef64f0b-c2c1-4a4b-a6b5-0461433af022)\r\n - Fetch the persona associated with your agent and the posts that you have pushed to the Deva feed:\r\n
![Fetch Persona and Posts](https://github.com/user-attachments/assets/5a698b06-b616-47cc-8318-355a91cc424c)\r\n - Once done, Eliza will post one message to the Deva feed immediately and schedule another one as a test message:\r\n
![Post Messages](https://github.com/user-attachments/assets/523d69f4-1f3f-4d49-82a1-163e3cd4d128)\r\n8. **Eliza agent's post is in the feed!**\r\n - \r\n\r\n\r\n### Staging Environment Testing\r\n\r\nTo avoid populating the production Deva feed, you can perform the same flow in the [staging environment](https://staging.deva.me/). Ensure you update the related environment variable:\r\n\r\n```env\r\nDEVA_API_BASE_URL=https://api-staging.deva.me # Staging API URL\r\n",
+ "state": "OPEN",
+ "merged": false,
+ "createdAt": "2024-12-19T12:44:48Z",
+ "updatedAt": "2024-12-19T17:45:19Z",
+ "author": {
+ "login": "stopmalone",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/191122176?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0ODAsIm5iZiI6MTczNDY0NzI4MCwicGF0aCI6Ii91LzE5MTEyMjE3NiJ9.ybYAjXg2xaOgZcqMmzsOuJjvH0kd5lS5Gz7MnOiTJ7Q&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": ".env.example",
+ "additions": 4,
+ "deletions": 0
},
{
- "path": "docs/api/functions/getActorDetails.md",
- "additions": 1,
- "deletions": 1
+ "path": ".gitignore",
+ "additions": 2,
+ "deletions": 0
},
{
- "path": "docs/api/functions/getEmbeddingConfig.md",
+ "path": "agent/package.json",
"additions": 1,
- "deletions": 1
+ "deletions": 0
},
{
- "path": "docs/api/functions/getEmbeddingType.md",
- "additions": 1,
- "deletions": 1
+ "path": "agent/src/index.ts",
+ "additions": 6,
+ "deletions": 0
},
{
- "path": "docs/api/functions/getEmbeddingZeroVector.md",
- "additions": 1,
- "deletions": 1
+ "path": "docs/api/enumerations/Clients.md",
+ "additions": 9,
+ "deletions": 0
},
{
- "path": "docs/api/functions/getEndpoint.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/client-deva/.npmignore",
+ "additions": 6,
+ "deletions": 0
},
{
- "path": "docs/api/functions/getEnvVariable.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/client-deva/eslint.config.mjs",
+ "additions": 3,
+ "deletions": 0
},
{
- "path": "docs/api/functions/getGoals.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/client-deva/package.json",
+ "additions": 24,
+ "deletions": 0
},
{
- "path": "docs/api/functions/getModel.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/client-deva/src/base.ts",
+ "additions": 60,
+ "deletions": 0
},
{
- "path": "docs/api/functions/getProviders.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/client-deva/src/controller.ts",
+ "additions": 242,
+ "deletions": 0
},
{
- "path": "docs/api/functions/getRelationship.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/client-deva/src/devaClient.ts",
+ "additions": 30,
+ "deletions": 0
},
{
- "path": "docs/api/functions/getRelationships.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/client-deva/src/enviroment.ts",
+ "additions": 32,
+ "deletions": 0
},
{
- "path": "docs/api/functions/handleProvider.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/client-deva/src/index.ts",
+ "additions": 28,
+ "deletions": 0
},
{
- "path": "docs/api/functions/hasEnvVariable.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/client-deva/src/templates.ts",
+ "additions": 24,
+ "deletions": 0
},
{
- "path": "docs/api/functions/loadEnvConfig.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/client-deva/src/types.ts",
+ "additions": 21,
+ "deletions": 0
},
{
- "path": "docs/api/functions/parseBooleanFromText.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/client-deva/tsconfig.json",
+ "additions": 8,
+ "deletions": 0
},
{
- "path": "docs/api/functions/parseJSONObjectFromText.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/client-deva/tsup.config.ts",
+ "additions": 20,
+ "deletions": 0
},
{
- "path": "docs/api/functions/parseJsonArrayFromText.md",
+ "path": "packages/core/src/types.ts",
+ "additions": 2,
+ "deletions": 0
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ },
+ {
+ "id": "PR_kwDOMT5cIs6FxgNl",
+ "number": 1237,
+ "title": "Update trump.character.json - Enhance terminology in the project for clarity and inclusivity",
+ "body": "While reviewing the documentation, I noticed the term โChina virus.โ To maintain professionalism and align with WHO naming standards, I suggest replacing it with terms like โCOVID-19โ or โSARS-CoV-2.โ This adjustment not only ensures accuracy but also promotes inclusivity and avoids potential misunderstandings.",
+ "state": "MERGED",
+ "merged": true,
+ "createdAt": "2024-12-19T12:19:10Z",
+ "updatedAt": "2024-12-19T22:25:39Z",
+ "author": {
+ "login": "yjshi2015",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/27291507?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkxNDAsIm5iZiI6MTczNDY0Nzk0MCwicGF0aCI6Ii91LzI3MjkxNTA3In0.xoqYjUq9ys7ZiKG80ewP_HiLtsLumNcsIRVYTO9lg4g&u=967c2c7ba1dddfaa2f14b55ef74ee6f4c0f2b5e6&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": "characters/trump.character.json",
"additions": 1,
"deletions": 1
+ }
+ ],
+ "reviews": [
+ {
+ "id": "PRR_kwDOMT5cIs6V-7wl",
+ "author": "monilpat",
+ "body": "LGTM!",
+ "state": "APPROVED"
+ }
+ ],
+ "comments": [
+ {
+ "id": "IC_kwDOMT5cIs6YV57I",
+ "author": "lalalune",
+ "body": "> While reviewing the documentation, I noticed the term โChina virus.โ To maintain professionalism and align with WHO naming standards, I suggest replacing it with terms like โCOVID-19โ or โSARS-CoV-2.โ This adjustment not only ensures accuracy but also promotes inclusivity and avoids potential misunderstandings.\r\n\r\nThe point of characters is to capture the person accurately, not the facts. Trump says silly offensive stuff, and we wanted to capture that. He would not say SARS-COVID-19. I disagree with about 99% of the stuff he says, and 99% of the stuff his character file says. That being said, I care about art, and not letting art be compromised by politics.\r\n\r\nWe love people all over the world, and personally I will be visiting China in a couple days to meet everyone. I don't believe that we should be against any group for their nationality. But we shouldn't kill the comedy and make our characters worse-- that's why OpenAI's models suck now. It's a slippery slope that will reduce bravery, integrity and quality."
+ }
+ ]
+ },
+ {
+ "id": "PR_kwDOMT5cIs6FxBgJ",
+ "number": 1236,
+ "title": "Update README for french, spanish and italian language",
+ "body": "# Relates to: N/A\r\n\r\n# Risks\r\n\r\nNo risk\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nUpdate readme FR/ES/IT for typo, spelling, etc \r\n\r\n## What kind of change is this?\r\n\r\nUpdates (new versions of included code)\r\n\r\n## Why are we doing this? Any context or related work?\r\n--> Incorrect use of language \r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n## Discord username\r\n\r\n--> azurwastaken\r\n",
+ "state": "MERGED",
+ "merged": true,
+ "createdAt": "2024-12-19T11:24:39Z",
+ "updatedAt": "2024-12-19T21:55:23Z",
+ "author": {
+ "login": "azurwastaken",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/30268138?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg2MDAsIm5iZiI6MTczNDY0NzQwMCwicGF0aCI6Ii91LzMwMjY4MTM4In0.0TrV_Q5n3Vx_Ly-e8SqcXksrXPMO2MatiDEMRubGAw4&u=9f22ac121f4dbfc0e56a0f165dfc306d419ec514&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": "README_ES.md",
+ "additions": 3,
+ "deletions": 3
},
{
- "path": "docs/api/functions/parseShouldRespondFromText.md",
- "additions": 1,
- "deletions": 1
+ "path": "README_FR.md",
+ "additions": 6,
+ "deletions": 6
},
{
- "path": "docs/api/functions/splitChunks.md",
+ "path": "README_IT.md",
+ "additions": 7,
+ "deletions": 7
+ }
+ ],
+ "reviews": [
+ {
+ "id": "PRR_kwDOMT5cIs6V-7SM",
+ "author": "monilpat",
+ "body": "LGTM !",
+ "state": "APPROVED"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "id": "PR_kwDOMT5cIs6FvYtK",
+ "number": 1231,
+ "title": "chore: added config to whitelist the telegram users",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nThis PR adds functionality to allow developers to whitelist Telegram users, granting them access to the bot.\r\n\r\n## What kind of change is this?\r\nFeatures (non-breaking change which adds functionality)\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "state": "OPEN",
+ "merged": false,
+ "createdAt": "2024-12-19T08:00:24Z",
+ "updatedAt": "2024-12-19T15:43:32Z",
+ "author": {
+ "login": "tungpun",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/5058370?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg3ODAsIm5iZiI6MTczNDY0NzU4MCwicGF0aCI6Ii91LzUwNTgzNzAifQ.YGTaug1L0oc7VUfJB_zg2PibAVY09Y_PY48e4fv5qaU&u=59cb956de322867be56c0abee49ab3f28f819e2f&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": ".env.example",
"additions": 1,
- "deletions": 1
+ "deletions": 0
},
{
- "path": "docs/api/functions/stringToUuid.md",
+ "path": ".gitignore",
"additions": 1,
- "deletions": 1
+ "deletions": 0
},
{
- "path": "docs/api/functions/trimTokens.md",
- "additions": 1,
+ "path": "packages/client-telegram/src/messageManager.ts",
+ "additions": 9,
"deletions": 1
- },
+ }
+ ],
+ "reviews": [],
+ "comments": [
+ {
+ "id": "IC_kwDOMT5cIs6YRbbh",
+ "author": "azep-ninja",
+ "body": "Like this enhancement. I recently added one to whitelist Telegram groups.\r\n\r\nHonestly think this might make more sense within the characters client config, similar to what I added.\r\n\r\nYou'll need to modify the types for the character file, but keeps the ENV less cluttered.\r\n\r\nReference: https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts\r\n\r\n![image](https://github.com/user-attachments/assets/665edc1f-cab5-48de-adc2-e59e1629bdde)\r\n\r\nAnd you can see how that was/is used in the messageManager.ts file for reference."
+ }
+ ]
+ },
+ {
+ "id": "PR_kwDOMT5cIs6FvWo3",
+ "number": 1230,
+ "title": "chore: added config for to whitelist telegram user",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nThis PR adds functionality to allow developers to whitelist Telegram users, granting them access to the bot.\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "state": "CLOSED",
+ "merged": false,
+ "createdAt": "2024-12-19T07:54:59Z",
+ "updatedAt": "2024-12-19T07:58:12Z",
+ "author": {
+ "login": "tungpun",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/5058370?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg3ODAsIm5iZiI6MTczNDY0NzU4MCwicGF0aCI6Ii91LzUwNTgzNzAifQ.YGTaug1L0oc7VUfJB_zg2PibAVY09Y_PY48e4fv5qaU&u=59cb956de322867be56c0abee49ab3f28f819e2f&v=4"
+ },
+ "labels": [],
+ "files": [
{
- "path": "docs/api/functions/updateGoal.md",
+ "path": ".env.example",
"additions": 1,
- "deletions": 1
+ "deletions": 0
},
{
- "path": "docs/api/functions/validateCharacterConfig.md",
+ "path": ".gitignore",
"additions": 1,
- "deletions": 1
+ "deletions": 0
},
{
- "path": "docs/api/functions/validateEnv.md",
- "additions": 1,
+ "path": "packages/client-telegram/src/messageManager.ts",
+ "additions": 12,
"deletions": 1
- },
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ },
+ {
+ "id": "PR_kwDOMT5cIs6FvNgL",
+ "number": 1229,
+ "title": "feat: add parse mode=Markdown, enhance telegram bot output",
+ "body": "# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nIt added `parse_mode=\"Markdown\"` to support code suggestion in Telegram bot output\r\n\r\n## What kind of change is this?\r\n\r\nImprovements (misc. changes to existing features)\r\n\r\n## Why are we doing this? Any context or related work?\r\nIt would be nice to have Markdown support in bot output, this is heavily used in all LLMs output\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n## Screenshots\r\n\r\n### Before\r\n\r\n\r\n### After\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "state": "MERGED",
+ "merged": true,
+ "createdAt": "2024-12-19T07:31:17Z",
+ "updatedAt": "2024-12-19T07:50:08Z",
+ "author": {
+ "login": "simpletrontdip",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/20158564?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5MDAsIm5iZiI6MTczNDY0NzcwMCwicGF0aCI6Ii91LzIwMTU4NTY0In0.dPZab45J8lkENAvzV8Qyi-otNiiTGf44oBcjqxoS5mg&v=4"
+ },
+ "labels": [],
+ "files": [
{
- "path": "docs/api/interfaces/Account.md",
- "additions": 6,
- "deletions": 6
- },
+ "path": "packages/client-telegram/src/messageManager.ts",
+ "additions": 1,
+ "deletions": 0
+ }
+ ],
+ "reviews": [
{
- "path": "docs/api/interfaces/Action.md",
- "additions": 6,
- "deletions": 6
- },
+ "id": "PRR_kwDOMT5cIs6V0i_a",
+ "author": "shakkernerd",
+ "body": "This is a good one!",
+ "state": "APPROVED"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "id": "PR_kwDOMT5cIs6Fu6tb",
+ "number": 1228,
+ "title": "Create requirements.txt",
+ "body": "add\r\n\r\n\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "state": "CLOSED",
+ "merged": false,
+ "createdAt": "2024-12-19T06:38:42Z",
+ "updatedAt": "2024-12-19T06:48:44Z",
+ "author": {
+ "login": "mobi8",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/116540956?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0MjAsIm5iZiI6MTczNDY0NzIyMCwicGF0aCI6Ii91LzExNjU0MDk1NiJ9.kHchK_MjTR4daYT3OnAj_CC1N0leKgjEP-1jZk4UaLg&v=4"
+ },
+ "labels": [],
+ "files": [
{
- "path": "docs/api/interfaces/ActionExample.md",
+ "path": "requirements.txt",
"additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/interfaces/Actor.md",
- "additions": 4,
- "deletions": 4
- },
+ "deletions": 0
+ }
+ ],
+ "reviews": [],
+ "comments": [
{
- "path": "docs/api/interfaces/Content.md",
- "additions": 6,
- "deletions": 6
- },
+ "id": "IC_kwDOMT5cIs6YKmFL",
+ "author": "shakkernerd",
+ "body": "A requirements.txt file is not needed since this is a TypeScript project."
+ }
+ ]
+ },
+ {
+ "id": "PR_kwDOMT5cIs6FuqF8",
+ "number": 1227,
+ "title": "docs(readme): add bash code block for all bash scripts",
+ "body": "Add `bash` code block for all the bash scripts, better to markdown rendering\r\n",
+ "state": "CLOSED",
+ "merged": false,
+ "createdAt": "2024-12-19T05:49:29Z",
+ "updatedAt": "2024-12-19T06:32:39Z",
+ "author": {
+ "login": "9547",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/29431502?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkyMDAsIm5iZiI6MTczNDY0ODAwMCwicGF0aCI6Ii91LzI5NDMxNTAyIn0.PAeiPZdpnsK9tsuSRwgz1z1YgHWgk8LTZ7oa9Qj6tbs&u=def2043f3c532d18cae388fcec8d24a21e08d044&v=4"
+ },
+ "labels": [],
+ "files": [
{
- "path": "docs/api/interfaces/ConversationExample.md",
+ "path": "README.md",
"additions": 2,
"deletions": 2
},
{
- "path": "docs/api/interfaces/EvaluationExample.md",
+ "path": "README_CN.md",
"additions": 3,
"deletions": 3
},
{
- "path": "docs/api/interfaces/Evaluator.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/GenerationOptions.md",
- "additions": 9,
- "deletions": 9
+ "path": "README_DE.md",
+ "additions": 2,
+ "deletions": 2
},
{
- "path": "docs/api/interfaces/Goal.md",
- "additions": 6,
- "deletions": 6
+ "path": "README_ES.md",
+ "additions": 3,
+ "deletions": 3
},
{
- "path": "docs/api/interfaces/IAgentRuntime.md",
- "additions": 35,
- "deletions": 35
+ "path": "README_FR.md",
+ "additions": 2,
+ "deletions": 2
},
{
- "path": "docs/api/interfaces/IBrowserService.md",
+ "path": "README_HE.md",
"additions": 4,
- "deletions": 4
+ "deletions": 5
},
{
- "path": "docs/api/interfaces/ICacheAdapter.md",
- "additions": 3,
- "deletions": 3
+ "path": "README_IT.md",
+ "additions": 2,
+ "deletions": 2
},
{
- "path": "docs/api/interfaces/ICacheManager.md",
+ "path": "README_JA.md",
"additions": 3,
"deletions": 3
},
{
- "path": "docs/api/interfaces/IDatabaseAdapter.md",
- "additions": 37,
- "deletions": 37
- },
- {
- "path": "docs/api/interfaces/IDatabaseCacheAdapter.md",
- "additions": 3,
- "deletions": 3
+ "path": "README_KOR.md",
+ "additions": 2,
+ "deletions": 2
},
{
- "path": "docs/api/interfaces/IImageDescriptionService.md",
+ "path": "README_PTBR.md",
"additions": 3,
"deletions": 3
},
{
- "path": "docs/api/interfaces/IMemoryManager.md",
- "additions": 13,
- "deletions": 13
- },
- {
- "path": "docs/api/interfaces/IPdfService.md",
- "additions": 4,
- "deletions": 4
+ "path": "README_TH.md",
+ "additions": 2,
+ "deletions": 2
},
{
- "path": "docs/api/interfaces/ISpeechService.md",
+ "path": "README_TR.md",
"additions": 4,
"deletions": 4
},
{
- "path": "docs/api/interfaces/ITextGenerationService.md",
- "additions": 6,
- "deletions": 6
- },
- {
- "path": "docs/api/interfaces/ITranscriptionService.md",
- "additions": 6,
- "deletions": 6
- },
+ "path": "README_VI.md",
+ "additions": 2,
+ "deletions": 2
+ }
+ ],
+ "reviews": [],
+ "comments": [
{
- "path": "docs/api/interfaces/IVideoService.md",
- "additions": 6,
- "deletions": 6
+ "id": "IC_kwDOMT5cIs6YKVuN",
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1227?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n\n[see 9 files with indirect coverage changes](https://app.codecov.io/gh/ai16z/eliza/pull/1227/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z)\n"
},
{
- "path": "docs/api/interfaces/Memory.md",
- "additions": 9,
- "deletions": 9
+ "id": "IC_kwDOMT5cIs6YKhqP",
+ "author": "shakkernerd",
+ "body": "Thanks for the PR but I think adding `bash` to the code block doesn't make any difference given the markdown is perfectly rendered."
}
- ],
- "reviews": [],
- "comments": []
+ ]
},
{
- "id": "PR_kwDOMT5cIs6FlZcs",
- "number": 1193,
- "title": "Feature/news plugin",
- "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
- "state": "CLOSED",
- "merged": false,
- "createdAt": "2024-12-18T02:55:07Z",
- "updatedAt": "2024-12-18T02:55:44Z",
+ "id": "PR_kwDOMT5cIs6Fub2J",
+ "number": 1226,
+ "title": "fix: CircuitBreaker.ts",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nRelated to https://github.com/ai16z/eliza/pull/719\r\nBuild upon on https://github.com/ai16z/eliza/pull/812\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n`medium`, since we change the database adapters `circuitbase` code in the failure conditions.\r\n\r\n\r\n\r\n# Background\r\n\r\nDuring checking and learning the core code from AI16Z, I dig deeper into it and find out that the condition to restart the error need to be more fulfill.\r\n\r\n## What does this PR do?\r\n\r\nFulfill the condition in handling the failures.\r\n\r\n## What kind of change is this?\r\n\r\n**Improvements** \r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\nIf a docs change is needed: I have updated the documentation accordingly.\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\nYes\r\n\r\n",
+ "state": "MERGED",
+ "merged": true,
+ "createdAt": "2024-12-19T04:53:10Z",
+ "updatedAt": "2024-12-19T06:44:23Z",
"author": {
- "login": "cwrage77",
- "avatarUrl": "https://avatars.githubusercontent.com/u/10321212?u=deda48521940edac89df630f85a5f9df5cdcb95b&v=4"
+ "login": "tomguluson92",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/19585240?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91LzE5NTg1MjQwIn0.gXlxEwvwu9reKlsbqgUt9Tx7a5qqekgFUel_ERC3Fwo&u=4a4465656050747dee79f5f97a8b61cf2fbc97e1&v=4"
},
"labels": [],
"files": [
{
- "path": ".gitignore",
- "additions": 56,
- "deletions": 54
- },
- {
- "path": "PZ-README.md",
- "additions": 14,
- "deletions": 0
- },
- {
- "path": "agent/package.json",
+ "path": "packages/core/src/database/CircuitBreaker.ts",
"additions": 1,
- "deletions": 0
- },
+ "deletions": 1
+ }
+ ],
+ "reviews": [
{
- "path": "agent/src/index.ts",
- "additions": 2,
- "deletions": 0
- },
+ "id": "PRR_kwDOMT5cIs6V0IhH",
+ "author": "shakkernerd",
+ "body": "",
+ "state": "APPROVED"
+ }
+ ],
+ "comments": [
{
- "path": "characters/courage.character.json",
- "additions": 182,
- "deletions": 0
- },
+ "id": "IC_kwDOMT5cIs6YKHMY",
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1226?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAttention: Patch coverage is `0%` with `1 line` in your changes missing coverage. Please review.\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1226?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Patch % | Lines |\n|---|---|---|\n| [packages/core/src/database/CircuitBreaker.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1226?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fdatabase%2FCircuitBreaker.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvZGF0YWJhc2UvQ2lyY3VpdEJyZWFrZXIudHM=) | 0.00% | [1 Missing :warning: ](https://app.codecov.io/gh/ai16z/eliza/pull/1226?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) |\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1226?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Coverage ฮ | |\n|---|---|---|\n| [packages/core/src/database/CircuitBreaker.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1226?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fdatabase%2FCircuitBreaker.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvZGF0YWJhc2UvQ2lyY3VpdEJyZWFrZXIudHM=) | `36.20% <0.00%> (-1.98%)` | :arrow_down: |\n"
+ }
+ ]
+ },
+ {
+ "id": "PR_kwDOMT5cIs6FuLuh",
+ "number": 1225,
+ "title": "[WIP] feat: add abstract plugin",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nAdds Abstract support to Eliza agents!\r\n\r\n# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nAdds support for Eliza to interact with Abstract testnet. The logic borrows heavily from #906, but changes zksync references to Abstract and uses viem for onchain interactions. In the future, I'll be adding more custom abstract-only functionality which is why I did not re-use the existing zksync logic.\r\n\r\n## What kind of change is this?\r\n\r\nFeature\r\n\r\n# Documentation changes needed?\r\n\r\nYes, I will add Abstract specific documentation\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\nSpin up an agent with the abstract plugin\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "state": "OPEN",
+ "merged": false,
+ "createdAt": "2024-12-19T03:52:15Z",
+ "updatedAt": "2024-12-19T04:01:38Z",
+ "author": {
+ "login": "cygaar",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/97691933?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91Lzk3NjkxOTMzIn0.vv-JK85dC71dWur7eEcbi2Ry93mpLfQ5KxBgeSQHBMk&u=45e66309f3fd41536b48a58f3c949b9e4e90789a&v=4"
+ },
+ "labels": [
{
- "path": "characters/cryptodegen.character.json",
- "additions": 265,
- "deletions": 0
- },
+ "id": "LA_kwDOMT5cIs8AAAAB1NgIxA",
+ "name": "Plugin_new",
+ "color": "FBCA04",
+ "description": "Mark PRs that are a new plugin"
+ }
+ ],
+ "files": [
{
- "path": "packages/plugin-news/.npmignore",
- "additions": 6,
+ "path": ".env.example",
+ "additions": 5,
"deletions": 0
},
{
- "path": "packages/plugin-news/eslint.config.mjs",
- "additions": 3,
+ "path": "packages/plugin-abstract/package.json",
+ "additions": 20,
"deletions": 0
},
{
- "path": "packages/plugin-news/package.json",
- "additions": 19,
+ "path": "packages/plugin-abstract/src/actions/transfer.ts",
+ "additions": 213,
"deletions": 0
},
{
- "path": "packages/plugin-news/src/actions/index.ts",
- "additions": 2,
+ "path": "packages/plugin-abstract/src/environment.ts",
+ "additions": 32,
"deletions": 0
},
{
- "path": "packages/plugin-news/src/actions/newsSearch.ts",
- "additions": 215,
+ "path": "packages/plugin-abstract/src/index.ts",
+ "additions": 13,
"deletions": 0
},
{
- "path": "packages/plugin-news/src/evaluators/index.ts",
- "additions": 1,
+ "path": "packages/plugin-abstract/tsconfig.json",
+ "additions": 10,
"deletions": 0
},
{
- "path": "packages/plugin-news/src/index.ts",
- "additions": 16,
+ "path": "packages/plugin-abstract/tsup.config.ts",
+ "additions": 20,
"deletions": 0
},
{
- "path": "packages/plugin-news/src/providers/index.ts",
- "additions": 0,
- "deletions": 0
- },
+ "path": "pnpm-lock.yaml",
+ "additions": 22,
+ "deletions": 1
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ },
+ {
+ "id": "PR_kwDOMT5cIs6Ftixf",
+ "number": 1220,
+ "title": "fix: Allow the bot to post messages with images generated by the imageGenerationPlugin on Telegram.",
+ "body": "related: \r\nhttps://github.com/ai16z/eliza/issues/970\r\nhttps://github.com/ai16z/eliza/pull/1040\r\n\r\n\r\n\r\n\r\n",
+ "state": "MERGED",
+ "merged": true,
+ "createdAt": "2024-12-19T00:16:18Z",
+ "updatedAt": "2024-12-19T02:06:20Z",
+ "author": {
+ "login": "tcm390",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/60634884?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkwODAsIm5iZiI6MTczNDY0Nzg4MCwicGF0aCI6Ii91LzYwNjM0ODg0In0.aTZg7v0-F5XSxIbAmBcfx_5AdpyFDh-e6rtAZEXNARI&u=c6c41679b8322eaa0c81f72e0b4ed95e80f0ac16&v=4"
+ },
+ "labels": [],
+ "files": [
{
- "path": "packages/plugin-news/tsconfig.json",
- "additions": 13,
- "deletions": 0
+ "path": "packages/client-telegram/src/messageManager.ts",
+ "additions": 106,
+ "deletions": 54
},
{
- "path": "packages/plugin-news/tsup.config.ts",
- "additions": 20,
- "deletions": 0
+ "path": "packages/client-twitter/src/utils.ts",
+ "additions": 2,
+ "deletions": 12
},
{
- "path": "pnpm-lock.yaml",
- "additions": 15,
- "deletions": 22
+ "path": "packages/plugin-image-generation/src/index.ts",
+ "additions": 1,
+ "deletions": 1
+ }
+ ],
+ "reviews": [
+ {
+ "id": "PRR_kwDOMT5cIs6VzApi",
+ "author": "monilpat",
+ "body": "LGTM - thank you so much for doing this please feel free to close the issues :) ",
+ "state": "APPROVED"
}
],
- "reviews": [],
"comments": []
},
{
- "id": "PR_kwDOMT5cIs6Fkph3",
- "number": 1191,
- "title": "docs: fixed CONTRIBUTING.md file Issue: 1048",
- "body": "\r\n\r\n# Relates to:\r\nIssue #1048 Fixed \r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "id": "PR_kwDOMT5cIs6Ftgpa",
+ "number": 1219,
+ "title": "fix: postgres needs the user to exist before you can add a participant",
+ "body": "# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nwaits for users to be added before proceeding to adding participants\r\n\r\nalso moves the db check up before doing any db things\r\n\r\n## What kind of change is this?\r\n\r\nBug fixes (non-breaking change which fixes an issue)\r\n\r\n## Why are we doing this? Any context or related work?\r\n\r\n```\r\n [\"โ Room c6dc9108-8990-0d80-a635-98d3a928f4e4 created successfully.\"] \r\n\r\nError adding participant error: insert or update on table \"participants\" violates foreign key constraint \"participants_userId_fkey\"\r\n at /root/eliza-odi/node_modules/pg-pool/index.js:45:11\r\n at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\r\n at async file:///root/eliza-odi/packages/adapter-postgres/dist/index.js:822:17\r\n at async PostgresDatabaseAdapter.withRetry (file:///root/eliza-odi/packages/adapter-postgres/dist/index.js:67:24)\r\n at async CircuitBreaker.execute (file:///root/eliza-odi/packages/core/dist/index.js:93:28)\r\n at async PostgresDatabaseAdapter.withCircuitBreaker (file:///root/eliza-odi/packages/core/dist/index.js:383:20)\r\n at async AgentRuntime.ensureParticipantExists (file:///root/eliza-odi/packages/core/dist/index.js:3661:13) {\r\n length: 305,\r\n severity: 'ERROR',\r\n code: '23503',\r\n detail: 'Key (userId)=(c6dc9108-8990-0d80-a635-98d3a928f4e4) is not present in table \"accounts\".',\r\n hint: undefined,\r\n position: undefined,\r\n internalPosition: undefined,\r\n internalQuery: undefined,\r\n where: undefined,\r\n schema: 'public',\r\n table: 'participants',\r\n column: undefined,\r\n dataType: undefined,\r\n constraint: 'participants_userId_fkey',\r\n file: 'ri_triggers.c',\r\n line: '2608',\r\n routine: 'ri_ReportViolation'\r\n}\r\n [\"โ User WokeMindVirus created successfully.\"]\r\n```\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n",
"state": "MERGED",
"merged": true,
- "createdAt": "2024-12-18T00:10:51Z",
- "updatedAt": "2024-12-18T02:00:30Z",
+ "createdAt": "2024-12-19T00:06:37Z",
+ "updatedAt": "2024-12-19T02:09:16Z",
"author": {
- "login": "ileana-pr",
- "avatarUrl": "https://avatars.githubusercontent.com/u/103957712?u=e0f8d1e80ea177088c7f03dc45da54e7994ccd7c&v=4"
+ "login": "odilitime",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/16395496?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0MjAsIm5iZiI6MTczNDY0NzIyMCwicGF0aCI6Ii91LzE2Mzk1NDk2In0.AHDvuRgPHYO0i8IDYNzSfDB3Ae2PlvNoeRcGjB_wn9Q&u=45c152d8433e37c62520e66c0dd6d754ccf3eaf4&v=4"
},
"labels": [],
"files": [
{
- "path": "docs/docs/contributing.md",
- "additions": 5,
+ "path": "packages/core/src/runtime.ts",
+ "additions": 8,
"deletions": 5
}
],
"reviews": [
{
- "id": "PRR_kwDOMT5cIs6VpJxF",
+ "id": "PRR_kwDOMT5cIs6VzBJP",
"author": "monilpat",
- "body": "LGTM - thanks :) ",
+ "body": "LGTM!",
"state": "APPROVED"
}
],
"comments": [
{
- "id": "IC_kwDOMT5cIs6X_8Px",
+ "id": "IC_kwDOMT5cIs6YJFjq",
"author": "codecov",
- "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1191?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n"
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1219?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAttention: Patch coverage is `0%` with `6 lines` in your changes missing coverage. Please review.\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1219?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Patch % | Lines |\n|---|---|---|\n| [packages/core/src/runtime.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1219?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fruntime.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvcnVudGltZS50cw==) | 0.00% | [6 Missing :warning: ](https://app.codecov.io/gh/ai16z/eliza/pull/1219?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) |\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1219?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Coverage ฮ | |\n|---|---|---|\n| [packages/core/src/runtime.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1219?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fruntime.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvcnVudGltZS50cw==) | `0.00% <0.00%> (รธ)` | |\n"
}
]
},
{
- "id": "PR_kwDOMT5cIs6FkN7C",
- "number": 1190,
- "title": "test: adding tests for runtime.ts. Modified README since we switched to vitest",
- "body": "\r\n\r\n\r\n\r\n# Relates to:\r\nhttps://github.com/ai16z/eliza/issues/187\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\nLow: adding tests for runtime.ts\r\n# Background\r\n\r\n## What does this PR do?\r\nThis PR adds tests for runtime.ts\r\n## What kind of change is this?\r\nAdding new tests.\r\n\r\n\r\n\r\n\r\nContributing to have stable and good SDEC.\r\n\r\n# Documentation changes needed?\r\nMinimal: Edited tests README file since we switched to vitests from jest.\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\npackages/core/\r\n## Detailed testing steps\r\nnavigate to directory and run pnpm install and pnpm test\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "id": "PR_kwDOMT5cIs6FtU_W",
+ "number": 1218,
+ "title": "chore: clean up scripts",
+ "body": "I'm very new to this project so bear with me - I stumbled across these three files:\r\n\r\n* scripts/gettweets-copy.mjs\r\n* scripts/gettweets.mjs\r\n* scripts/tweetextractor.mjs\r\n\r\nAll appear to do the same thing. The first one uses environmental variables, the second two actually have hardcoded credentials for a real Twitter account.\r\n\r\nShould we simply delete the latter two and scrub the credentials from the git history? Or is there some reason that things are like this?\r\n\r\nThanks for your patience, just getting the hang of things.",
"state": "MERGED",
"merged": true,
- "createdAt": "2024-12-17T22:45:37Z",
- "updatedAt": "2024-12-18T02:07:57Z",
+ "createdAt": "2024-12-18T23:15:48Z",
+ "updatedAt": "2024-12-19T06:56:57Z",
"author": {
- "login": "ai16z-demirix",
- "avatarUrl": "https://avatars.githubusercontent.com/u/188117230?u=424cd5b834584b3799da288712b3c4158c8032a1&v=4"
+ "login": "danbednarski",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/183874220?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0ODAsIm5iZiI6MTczNDY0NzI4MCwicGF0aCI6Ii91LzE4Mzg3NDIyMCJ9.K5HcKBhqOKkEAALB4r65mm2QHcjXkgOuJdgIUPTqg3U&v=4"
},
"labels": [],
"files": [
{
- "path": "packages/core/README-TESTS.md",
- "additions": 1,
- "deletions": 1
+ "path": "scripts/gettweets-copy.mjs",
+ "additions": 0,
+ "deletions": 76
},
{
- "path": "packages/core/src/tests/runtime.test.ts",
- "additions": 139,
- "deletions": 0
+ "path": "scripts/gettweets.mjs",
+ "additions": 16,
+ "deletions": 32
+ },
+ {
+ "path": "scripts/tweetextractor.mjs",
+ "additions": 0,
+ "deletions": 131
}
],
"reviews": [
{
- "id": "PRR_kwDOMT5cIs6VpMxo",
- "author": "monilpat",
- "body": "LGTM thanks for doing this :) ",
+ "id": "PRR_kwDOMT5cIs6V0OSf",
+ "author": "shakkernerd",
+ "body": "",
"state": "APPROVED"
}
],
"comments": [
{
- "id": "IC_kwDOMT5cIs6X-yCF",
- "author": "codecov",
- "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1190?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n\n[see 8 files with indirect coverage changes](https://app.codecov.io/gh/ai16z/eliza/pull/1190/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z)\n"
+ "id": "IC_kwDOMT5cIs6YJDqp",
+ "author": "odilitime",
+ "body": "I notified the author of original PR, so he's aware of what happened"
}
]
+ },
+ {
+ "id": "PR_kwDOMT5cIs6FtTXw",
+ "number": 1217,
+ "title": "fix: improve twitter post generation prompt",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nAdds more variance to tweet generation so the content feels less stale\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "state": "MERGED",
+ "merged": true,
+ "createdAt": "2024-12-18T23:08:16Z",
+ "updatedAt": "2024-12-19T00:00:41Z",
+ "author": {
+ "login": "cygaar",
+ "avatarUrl": "https://private-avatars.githubusercontent.com/u/97691933?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91Lzk3NjkxOTMzIn0.vv-JK85dC71dWur7eEcbi2Ry93mpLfQ5KxBgeSQHBMk&u=45e66309f3fd41536b48a58f3c949b9e4e90789a&v=4"
+ },
+ "labels": [],
+ "files": [
+ {
+ "path": "packages/client-twitter/src/post.ts",
+ "additions": 238,
+ "deletions": 128
+ },
+ {
+ "path": "packages/core/src/types.ts",
+ "additions": 2,
+ "deletions": 2
+ }
+ ],
+ "reviews": [
+ {
+ "id": "PRR_kwDOMT5cIs6VydQI",
+ "author": "odilitime",
+ "body": "",
+ "state": "COMMENTED"
+ },
+ {
+ "id": "PRR_kwDOMT5cIs6VyfJb",
+ "author": "cygaar",
+ "body": "",
+ "state": "COMMENTED"
+ },
+ {
+ "id": "PRR_kwDOMT5cIs6Vyn7B",
+ "author": "odilitime",
+ "body": "",
+ "state": "APPROVED"
+ }
+ ],
+ "comments": []
}
]
diff --git a/data/daily/scored.json b/data/daily/scored.json
index 2555563..0c96c8d 100644
--- a/data/daily/scored.json
+++ b/data/daily/scored.json
@@ -1,1745 +1,664 @@
[
{
- "contributor": "madjin",
- "score": 23,
+ "contributor": "renlulu",
+ "score": 40,
"summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/32600939?u=cdcf89f44c7a50906c7a80d889efa85023af2049&v=4",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/8149051?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg2NjAsIm5iZiI6MTczNDY0NzQ2MCwicGF0aCI6Ii91LzgxNDkwNTEifQ.vNRFI1s-VUpAgF8g-JReFxwDI4UBDPmFdIkEcDNscYE&u=001a339b366e297d951ff1155837fe1e1510c398&v=4",
"activity": {
"code": {
"total_commits": 0,
- "total_prs": 1,
+ "total_prs": 2,
"commits": [],
"pull_requests": [
{
- "number": 1211,
- "title": "chore: New docs",
+ "number": 1245,
+ "title": "feat: make express payload limit configurable",
"state": "MERGED",
"merged": true,
- "created_at": "2024-12-18T19:04:47Z",
- "updated_at": "2024-12-18T20:26:44Z",
+ "created_at": "2024-12-19T18:12:17Z",
+ "updated_at": "2024-12-19T22:05:56Z",
"body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
"files": [
{
- "path": "docs/api/classes/AgentRuntime.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/classes/CacheManager.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/classes/DatabaseAdapter.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/classes/DbCacheAdapter.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/classes/FsCacheAdapter.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/classes/MemoryCacheAdapter.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/classes/MemoryManager.md",
- "additions": 1,
- "deletions": 1
+ "path": ".env.example",
+ "additions": 3,
+ "deletions": 0
},
{
- "path": "docs/api/classes/Service.md",
- "additions": 5,
- "deletions": 5
- },
+ "path": "packages/client-direct/src/api.ts",
+ "additions": 26,
+ "deletions": 17
+ }
+ ],
+ "reviews": [
{
- "path": "docs/api/enumerations/Clients.md",
- "additions": 9,
- "deletions": 9
+ "author": "monilpat",
+ "state": "COMMENTED",
+ "body": ""
},
{
- "path": "docs/api/enumerations/GoalStatus.md",
- "additions": 1,
- "deletions": 1
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM one nit"
},
{
- "path": "docs/api/enumerations/LoggingLevel.md",
- "additions": 4,
- "deletions": 4
- },
+ "author": "monilpat",
+ "state": "COMMENTED",
+ "body": ""
+ }
+ ],
+ "comments": []
+ },
+ {
+ "number": 1244,
+ "title": "feat: make twitter login retry times as env",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T17:54:02Z",
+ "updated_at": "2024-12-19T21:52:56Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
{
- "path": "docs/api/enumerations/ModelClass.md",
+ "path": ".env.example",
"additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/enumerations/ModelProviderName.md",
- "additions": 33,
- "deletions": 23
- },
- {
- "path": "docs/api/enumerations/ServiceType.md",
- "additions": 12,
- "deletions": 12
+ "deletions": 0
},
{
- "path": "docs/api/functions/addHeader.md",
+ "path": "agent/src/index.ts",
"additions": 2,
"deletions": 2
},
{
- "path": "docs/api/functions/composeActionExamples.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/composeContext.md",
- "additions": 12,
- "deletions": 6
- },
- {
- "path": "docs/api/functions/configureSettings.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/createGoal.md",
- "additions": 1,
+ "path": "packages/client-twitter/src/base.ts",
+ "additions": 4,
"deletions": 1
- },
+ }
+ ],
+ "reviews": [
{
- "path": "docs/api/functions/createRelationship.md",
- "additions": 1,
- "deletions": 1
- },
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM"
+ }
+ ],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 4,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "odilitime",
+ "score": 33,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/16395496?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0MjAsIm5iZiI6MTczNDY0NzIyMCwicGF0aCI6Ii91LzE2Mzk1NDk2In0.AHDvuRgPHYO0i8IDYNzSfDB3Ae2PlvNoeRcGjB_wn9Q&u=45c152d8433e37c62520e66c0dd6d754ccf3eaf4&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 2,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1250,
+ "title": "fix: Fix local_llama key warning",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T21:39:36Z",
+ "updated_at": "2024-12-19T22:07:08Z",
+ "body": "# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nfix scary start up warnings for firing it up out of the box\r\n\r\n```\r\n [\"\u25ce DirectClient constructor\"] \r\n\r\n [\"\u26d4 Failed to get token - unsupported model provider: llama_local\"] \r\n\r\n \u26d4 ERRORS\r\n Error starting agent for character Eliza: \r\n {} \r\n\r\n [\"\u26d4 Error: Failed to get token - unsupported model provider: llama_local\"] \r\n\r\n \u26d4 ERRORS\r\n Error starting agents: \r\n {} \r\n\r\n [\"\u25ce Run `pnpm start:client` to start the client and visit the outputted URL (http://localhost:5173) to chat with your agents\"] \r\n\r\n```\r\n\r\n## What kind of change is this?\r\n\r\nImprovements (misc. changes to existing features)\r\n\r\n## Why are we doing this? Any context or related work?\r\n\r\nImproved new developer experience, reduce confusion\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.",
+ "files": [
{
- "path": "docs/api/functions/embed.md",
- "additions": 1,
+ "path": "agent/src/index.ts",
+ "additions": 4,
"deletions": 1
- },
+ }
+ ],
+ "reviews": [
{
- "path": "docs/api/functions/findNearestEnvFile.md",
- "additions": 1,
- "deletions": 1
- },
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM!"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "number": 1219,
+ "title": "fix: postgres needs the user to exist before you can add a participant",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T00:06:37Z",
+ "updated_at": "2024-12-19T02:09:16Z",
+ "body": "# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nwaits for users to be added before proceeding to adding participants\r\n\r\nalso moves the db check up before doing any db things\r\n\r\n## What kind of change is this?\r\n\r\nBug fixes (non-breaking change which fixes an issue)\r\n\r\n## Why are we doing this? Any context or related work?\r\n\r\n```\r\n [\"\u25ce Room c6dc9108-8990-0d80-a635-98d3a928f4e4 created successfully.\"] \r\n\r\nError adding participant error: insert or update on table \"participants\" violates foreign key constraint \"participants_userId_fkey\"\r\n at /root/eliza-odi/node_modules/pg-pool/index.js:45:11\r\n at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\r\n at async file:///root/eliza-odi/packages/adapter-postgres/dist/index.js:822:17\r\n at async PostgresDatabaseAdapter.withRetry (file:///root/eliza-odi/packages/adapter-postgres/dist/index.js:67:24)\r\n at async CircuitBreaker.execute (file:///root/eliza-odi/packages/core/dist/index.js:93:28)\r\n at async PostgresDatabaseAdapter.withCircuitBreaker (file:///root/eliza-odi/packages/core/dist/index.js:383:20)\r\n at async AgentRuntime.ensureParticipantExists (file:///root/eliza-odi/packages/core/dist/index.js:3661:13) {\r\n length: 305,\r\n severity: 'ERROR',\r\n code: '23503',\r\n detail: 'Key (userId)=(c6dc9108-8990-0d80-a635-98d3a928f4e4) is not present in table \"accounts\".',\r\n hint: undefined,\r\n position: undefined,\r\n internalPosition: undefined,\r\n internalQuery: undefined,\r\n where: undefined,\r\n schema: 'public',\r\n table: 'participants',\r\n column: undefined,\r\n dataType: undefined,\r\n constraint: 'participants_userId_fkey',\r\n file: 'ri_triggers.c',\r\n line: '2608',\r\n routine: 'ri_ReportViolation'\r\n}\r\n [\"\u2713 User WokeMindVirus created successfully.\"]\r\n```\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n",
+ "files": [
{
- "path": "docs/api/functions/formatActionNames.md",
- "additions": 1,
- "deletions": 1
- },
+ "path": "packages/core/src/runtime.ts",
+ "additions": 8,
+ "deletions": 5
+ }
+ ],
+ "reviews": [
{
- "path": "docs/api/functions/formatActions.md",
- "additions": 1,
- "deletions": 1
- },
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM!"
+ }
+ ],
+ "comments": [
{
- "path": "docs/api/functions/formatActors.md",
- "additions": 1,
- "deletions": 1
- },
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1219?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAttention: Patch coverage is `0%` with `6 lines` in your changes missing coverage. Please review.\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1219?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Patch % | Lines |\n|---|---|---|\n| [packages/core/src/runtime.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1219?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fruntime.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvcnVudGltZS50cw==) | 0.00% | [6 Missing :warning: ](https://app.codecov.io/gh/ai16z/eliza/pull/1219?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) |\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1219?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Coverage \u0394 | |\n|---|---|---|\n| [packages/core/src/runtime.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1219?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fruntime.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvcnVudGltZS50cw==) | `0.00% <0.00%> (\u00f8)` | |\n"
+ }
+ ]
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 2,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "cygaar",
+ "score": 33,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/97691933?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91Lzk3NjkxOTMzIn0.vv-JK85dC71dWur7eEcbi2Ry93mpLfQ5KxBgeSQHBMk&u=45e66309f3fd41536b48a58f3c949b9e4e90789a&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 2,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1225,
+ "title": "[WIP] feat: add abstract plugin",
+ "state": "OPEN",
+ "merged": false,
+ "created_at": "2024-12-19T03:52:15Z",
+ "updated_at": "2024-12-19T04:01:38Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nAdds Abstract support to Eliza agents!\r\n\r\n# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nAdds support for Eliza to interact with Abstract testnet. The logic borrows heavily from #906, but changes zksync references to Abstract and uses viem for onchain interactions. In the future, I'll be adding more custom abstract-only functionality which is why I did not re-use the existing zksync logic.\r\n\r\n## What kind of change is this?\r\n\r\nFeature\r\n\r\n# Documentation changes needed?\r\n\r\nYes, I will add Abstract specific documentation\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\nSpin up an agent with the abstract plugin\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
{
- "path": "docs/api/functions/formatEvaluatorExampleDescriptions.md",
- "additions": 1,
- "deletions": 1
+ "path": ".env.example",
+ "additions": 5,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatEvaluatorExamples.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-abstract/package.json",
+ "additions": 20,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatEvaluatorNames.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-abstract/src/actions/transfer.ts",
+ "additions": 213,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatEvaluators.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-abstract/src/environment.ts",
+ "additions": 32,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatGoalsAsString.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-abstract/src/index.ts",
+ "additions": 13,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatMessages.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-abstract/tsconfig.json",
+ "additions": 10,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatPosts.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/plugin-abstract/tsup.config.ts",
+ "additions": 20,
+ "deletions": 0
},
{
- "path": "docs/api/functions/formatRelationships.md",
- "additions": 1,
+ "path": "pnpm-lock.yaml",
+ "additions": 22,
"deletions": 1
- },
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ },
+ {
+ "number": 1217,
+ "title": "fix: improve twitter post generation prompt",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-18T23:08:16Z",
+ "updated_at": "2024-12-19T00:00:41Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nAdds more variance to tweet generation so the content feels less stale\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
{
- "path": "docs/api/functions/formatTimestamp.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/client-twitter/src/post.ts",
+ "additions": 238,
+ "deletions": 128
},
{
- "path": "docs/api/functions/generateCaption.md",
+ "path": "packages/core/src/types.ts",
"additions": 2,
"deletions": 2
- },
+ }
+ ],
+ "reviews": [
{
- "path": "docs/api/functions/generateImage.md",
- "additions": 1,
- "deletions": 1
+ "author": "odilitime",
+ "state": "COMMENTED",
+ "body": ""
},
{
- "path": "docs/api/functions/generateMessageResponse.md",
- "additions": 1,
- "deletions": 1
+ "author": "cygaar",
+ "state": "COMMENTED",
+ "body": ""
},
{
- "path": "docs/api/functions/generateObject.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateObjectArray.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateObjectDeprecated.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateShouldRespond.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateTextArray.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateTrueOrFalse.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateTweetActions.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateWebSearch.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getActorDetails.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getEmbeddingConfig.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getEmbeddingType.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getEmbeddingZeroVector.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getEndpoint.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getEnvVariable.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getGoals.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getModel.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/getProviders.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getRelationship.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getRelationships.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/handleProvider.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/hasEnvVariable.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/loadEnvConfig.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/parseActionResponseFromText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/parseBooleanFromText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/parseJSONObjectFromText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/parseJsonArrayFromText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/parseShouldRespondFromText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/splitChunks.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/stringToUuid.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/trimTokens.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/updateGoal.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/validateCharacterConfig.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/validateEnv.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/index.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/Account.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/Action.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/ActionExample.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/ActionResponse.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/interfaces/Actor.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/Content.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/ConversationExample.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/EvaluationExample.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/Evaluator.md",
- "additions": 8,
- "deletions": 8
- },
- {
- "path": "docs/api/interfaces/GenerationOptions.md",
- "additions": 10,
- "deletions": 10
- },
- {
- "path": "docs/api/interfaces/Goal.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/IAgentConfig.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/IAgentRuntime.md",
- "additions": 38,
- "deletions": 38
- },
- {
- "path": "docs/api/interfaces/IAwsS3Service.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/interfaces/IBrowserService.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/interfaces/ICacheAdapter.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/interfaces/ICacheManager.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/IDatabaseAdapter.md",
- "additions": 38,
- "deletions": 38
- },
- {
- "path": "docs/api/interfaces/IDatabaseCacheAdapter.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/IImageDescriptionService.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/IMemoryManager.md",
- "additions": 14,
- "deletions": 14
- },
- {
- "path": "docs/api/interfaces/IPdfService.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/interfaces/ISlackService.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/ISpeechService.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/interfaces/ITextGenerationService.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/ITranscriptionService.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/IVideoService.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/Memory.md",
- "additions": 10,
- "deletions": 10
- }
- ],
- "reviews": [
- {
- "author": "odilitime",
- "state": "APPROVED",
- "body": ""
- },
- {
- "author": "monilpat",
- "state": "APPROVED",
- "body": ""
- }
- ],
- "comments": []
- }
- ]
- },
- "issues": {
- "total_opened": 1,
- "opened": [
- {
- "number": 1200,
- "title": "chore: Document Missing Plugin Documentation and Examples",
- "state": "OPEN",
- "created_at": "2024-12-18T08:59:15Z",
- "updated_at": "2024-12-18T08:59:15Z",
- "body": "**Overview**\r\nSeveral plugins in the Eliza framework lack comprehensive documentation. This makes it harder for new developers to understand and utilize these components.\r\n\r\nMissing Plugin Documentation:\r\n- [ ] plugin-0g - File storage plugin\r\n- [ ] plugin-aptos - Aptos blockchain integration\r\n- [ ] plugin-conflux - Conflux blockchain integration \r\n- [ ] plugin-echochambers - Echo chamber client\r\n- [ ] plugin-flow - Flow blockchain integration\r\n- [ ] plugin-goat - GOAT functionality\r\n- [ ] plugin-icp - Internet Computer integration\r\n- [ ] plugin-image-generation - Image generation capabilities\r\n- [ ] plugin-intiface - Intiface integration\r\n- [ ] plugin-multiversx - MultiversX blockchain \r\n- [ ] plugin-near - NEAR Protocol integration\r\n- [ ] plugin-nft-generation - NFT creation functionality\r\n- [ ] plugin-story - Story/IP management\r\n- [ ] plugin-sui - Sui blockchain integration\r\n- [ ] plugin-ton - TON blockchain integration\r\n- [ ] plugin-trustdb - Trust database functionality\r\n- [ ] plugin-video-generation - Video generation features\r\n- [ ] plugin-web-search - Web search capabilities\r\n- [ ] plugin-whatsapp - WhatsApp integration\r\n- [ ] plugin-zksync-era - zkSync Era integration\r\n\r\n**Proposed Documentation Structure**\r\nFor each plugin, we need:\r\n1. Overview and purpose\r\n2. Installation instructions\r\n3. Configuration requirements\r\n4. Usage examples\r\n5. API reference\r\n6. Common issues/troubleshooting\r\n\r\n**Additional Missing Docs**\r\n- Examples folder documentation\r\n- Testing guide expansion\r\n- Plugin development guide\r\n- Security best practices\r\n- Performance optimization guide\r\n\r\n**Value Add**\r\nThis documentation will:\r\n- Improve developer onboarding\r\n- Reduce support questions\r\n- Enable faster plugin adoption\r\n- Help maintain code quality",
- "labels": [
- {
- "name": "documentation",
- "color": "0075ca",
- "description": "Improvements or additions to documentation"
- },
- {
- "name": "enhancement",
- "color": "a2eeef",
- "description": "New feature or request"
- }
- ],
- "comments": []
- }
- ]
- },
- "engagement": {
- "total_comments": 0,
- "total_reviews": 2,
- "comments": [],
- "reviews": []
- }
- }
- },
- {
- "contributor": "tomguluson92",
- "score": 17,
- "summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/19585240?u=4a4465656050747dee79f5f97a8b61cf2fbc97e1&v=4",
- "activity": {
- "code": {
- "total_commits": 0,
- "total_prs": 1,
- "commits": [],
- "pull_requests": [
- {
- "number": 1196,
- "title": "docs: Update \"CN README\" with more details",
- "state": "MERGED",
- "merged": true,
- "created_at": "2024-12-18T06:12:33Z",
- "updated_at": "2024-12-18T17:29:45Z",
- "body": "Add more details in the CN version of README\r\n\r\n\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nFix the old CN readme, since old version do not have a complete launch information.\r\n\r\n## What kind of change is this?\r\n\r\nImprovements\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\nYes, I change the readme chinese version.\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
- "files": [
- {
- "path": "README_CN.md",
- "additions": 58,
- "deletions": 6
- }
- ],
- "reviews": [
- {
- "author": "odilitime",
- "state": "APPROVED",
- "body": ""
- }
- ],
- "comments": [
- {
- "author": "codecov",
- "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1196?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n"
- }
- ]
- }
- ]
- },
- "issues": {
- "total_opened": 0,
- "opened": []
- },
- "engagement": {
- "total_comments": 0,
- "total_reviews": 1,
- "comments": [],
- "reviews": []
- }
- }
- },
- {
- "contributor": "ileana-pr",
- "score": 17,
- "summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/103957712?u=e0f8d1e80ea177088c7f03dc45da54e7994ccd7c&v=4",
- "activity": {
- "code": {
- "total_commits": 0,
- "total_prs": 1,
- "commits": [],
- "pull_requests": [
- {
- "number": 1191,
- "title": "docs: fixed CONTRIBUTING.md file Issue: 1048",
- "state": "MERGED",
- "merged": true,
- "created_at": "2024-12-18T00:10:51Z",
- "updated_at": "2024-12-18T02:00:30Z",
- "body": "\r\n\r\n# Relates to:\r\nIssue #1048 Fixed \r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
- "files": [
- {
- "path": "docs/docs/contributing.md",
- "additions": 5,
- "deletions": 5
- }
- ],
- "reviews": [
- {
- "author": "monilpat",
- "state": "APPROVED",
- "body": "LGTM - thanks :) "
- }
- ],
- "comments": [
- {
- "author": "codecov",
- "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1191?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n"
- }
- ]
- }
- ]
- },
- "issues": {
- "total_opened": 0,
- "opened": []
- },
- "engagement": {
- "total_comments": 0,
- "total_reviews": 1,
- "comments": [],
- "reviews": []
- }
- }
- },
- {
- "contributor": "ai16z-demirix",
- "score": 17,
- "summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/188117230?u=424cd5b834584b3799da288712b3c4158c8032a1&v=4",
- "activity": {
- "code": {
- "total_commits": 0,
- "total_prs": 1,
- "commits": [],
- "pull_requests": [
- {
- "number": 1190,
- "title": "test: adding tests for runtime.ts. Modified README since we switched to vitest",
- "state": "MERGED",
- "merged": true,
- "created_at": "2024-12-17T22:45:37Z",
- "updated_at": "2024-12-18T02:07:57Z",
- "body": "\r\n\r\n\r\n\r\n# Relates to:\r\nhttps://github.com/ai16z/eliza/issues/187\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\nLow: adding tests for runtime.ts\r\n# Background\r\n\r\n## What does this PR do?\r\nThis PR adds tests for runtime.ts\r\n## What kind of change is this?\r\nAdding new tests.\r\n\r\n\r\n\r\n\r\nContributing to have stable and good SDEC.\r\n\r\n# Documentation changes needed?\r\nMinimal: Edited tests README file since we switched to vitests from jest.\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\npackages/core/\r\n## Detailed testing steps\r\nnavigate to directory and run pnpm install and pnpm test\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
- "files": [
- {
- "path": "packages/core/README-TESTS.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "packages/core/src/tests/runtime.test.ts",
- "additions": 139,
- "deletions": 0
- }
- ],
- "reviews": [
- {
- "author": "monilpat",
- "state": "APPROVED",
- "body": "LGTM thanks for doing this :) "
- }
- ],
- "comments": [
- {
- "author": "codecov",
- "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1190?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n\n[see 8 files with indirect coverage changes](https://app.codecov.io/gh/ai16z/eliza/pull/1190/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z)\n"
- }
- ]
- }
- ]
- },
- "issues": {
- "total_opened": 0,
- "opened": []
- },
- "engagement": {
- "total_comments": 0,
- "total_reviews": 1,
- "comments": [],
- "reviews": []
- }
- }
- },
- {
- "contributor": "marcNY",
- "score": 15,
- "summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/8562443?u=734e3f5504e627ba44eec27c72ce0263cfe0a0ab&v=4",
- "activity": {
- "code": {
- "total_commits": 0,
- "total_prs": 1,
- "commits": [],
- "pull_requests": [
- {
- "number": 1209,
- "title": "docs: Update README.md",
- "state": "MERGED",
- "merged": true,
- "created_at": "2024-12-18T16:46:43Z",
- "updated_at": "2024-12-18T17:21:57Z",
- "body": "Relates to:\r\n\r\nNo issue; I created the pull request directly.\r\n\r\nRisks:\r\n\r\nLow\r\n\r\nBackground:\r\n\r\nThe starter script was not working because it did not include a cd command to navigate into the eliza-starter directory. This caused the script to fail when executed from the root of the project.\r\n\r\nWhat does this PR do?\r\n\r\nThis PR updates the starter script by adding a cd command to ensure it correctly navigates into the eliza-starter directory before executing any subsequent steps.\r\n\r\nWhat kind of change is this?\r\n\t\u2022\tBug fixes (non-breaking change which fixes an issue)\r\n\r\nDocumentation changes needed?\r\n\t\u2022\tMy changes do not require a change to the project documentation.\r\n\r\nTesting:\r\n\r\nWhere should a reviewer start?\r\n\r\nStart by reviewing the changes made to the starter script file.\r\n\r\nDetailed testing steps:\r\n\t1.\tRun the updated starter script from the root directory.\r\n\t2.\tConfirm that the script correctly navigates into the eliza-starter directory and proceeds without errors.",
- "files": [
- {
- "path": "README.md",
- "additions": 1,
- "deletions": 2
- }
- ],
- "reviews": [
- {
- "author": "odilitime",
- "state": "APPROVED",
- "body": ""
- }
- ],
- "comments": []
- }
- ]
- },
- "issues": {
- "total_opened": 0,
- "opened": []
- },
- "engagement": {
- "total_comments": 0,
- "total_reviews": 1,
- "comments": [],
- "reviews": []
- }
- }
- },
- {
- "contributor": "v1xingyue",
- "score": 14,
- "summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/974169?u=96c6a113a91978c041e5cf90965d7b66c5540af4&v=4",
- "activity": {
- "code": {
- "total_commits": 0,
- "total_prs": 1,
- "commits": [],
- "pull_requests": [
- {
- "number": 1207,
- "title": "fix: gitpod cicd bug",
- "state": "MERGED",
- "merged": true,
- "created_at": "2024-12-18T15:06:25Z",
- "updated_at": "2024-12-18T19:43:00Z",
- "body": "Sometimes we can't fetch tags, so let's fetch tags before.\r\n",
- "files": [
- {
- "path": ".gitpod.yml",
- "additions": 1,
- "deletions": 0
- }
- ],
- "reviews": [
- {
- "author": "odilitime",
- "state": "APPROVED",
- "body": ""
- }
- ],
- "comments": [
- {
- "author": "codecov",
- "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1207?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n"
- }
- ]
- }
- ]
- },
- "issues": {
- "total_opened": 0,
- "opened": []
- },
- "engagement": {
- "total_comments": 0,
- "total_reviews": 1,
- "comments": [],
- "reviews": []
- }
- }
- },
- {
- "contributor": "9547",
- "score": 14,
- "summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/29431502?u=def2043f3c532d18cae388fcec8d24a21e08d044&v=4",
- "activity": {
- "code": {
- "total_commits": 0,
- "total_prs": 1,
- "commits": [],
- "pull_requests": [
- {
- "number": 1201,
- "title": "docs(cn): add python 3.7",
- "state": "MERGED",
- "merged": true,
- "created_at": "2024-12-18T09:00:53Z",
- "updated_at": "2024-12-18T17:39:58Z",
- "body": "\r\n## What does this PR do?\r\n\r\nAdd python2.7 to the requirements\r\n\r\n",
- "files": [
- {
- "path": "README_CN.md",
- "additions": 2,
- "deletions": 3
- }
- ],
- "reviews": [
- {
- "author": "odilitime",
- "state": "APPROVED",
- "body": ""
- }
- ],
- "comments": [
- {
- "author": "codecov",
- "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1201?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n"
- }
- ]
- }
- ]
- },
- "issues": {
- "total_opened": 0,
- "opened": []
- },
- "engagement": {
- "total_comments": 0,
- "total_reviews": 1,
- "comments": [],
- "reviews": []
- }
- }
- },
- {
- "contributor": "monilpat",
- "score": 10,
- "summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/15067321?u=1271e57605b48029307547127c90e1bd5e4f3f39&v=4",
- "activity": {
- "code": {
- "total_commits": 0,
- "total_prs": 1,
- "commits": [],
- "pull_requests": [
- {
- "number": 1195,
- "title": "feat: integrate contextualized actions + bug fixes ",
- "state": "CLOSED",
- "merged": false,
- "created_at": "2024-12-18T05:26:54Z",
- "updated_at": "2024-12-18T05:27:15Z",
- "body": "Integrate memories (files) + character details to in actions plus a few bug fixes",
- "files": [
- {
- "path": ".env.example",
- "additions": 2,
- "deletions": 7
- },
- {
- "path": ".github/workflows/sync-upstream.yaml",
- "additions": 80,
- "deletions": 0
- },
- {
- "path": ".gitignore",
- "additions": 5,
- "deletions": 1
- },
- {
- "path": "agent/package.json",
- "additions": 3,
- "deletions": 1
- },
- {
- "path": "agent/src/index.ts",
- "additions": 54,
- "deletions": 12
- },
- {
- "path": "characters/chronis.character.json",
- "additions": 321,
- "deletions": 0
- },
- {
- "path": "characters/logging-addict.character.json",
- "additions": 262,
- "deletions": 0
- },
- {
- "path": "docs/api/classes/AgentRuntime.md",
- "additions": 40,
- "deletions": 40
- },
- {
- "path": "docs/api/classes/CacheManager.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/classes/DatabaseAdapter.md",
- "additions": 41,
- "deletions": 41
- },
- {
- "path": "docs/api/classes/DbCacheAdapter.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/classes/FsCacheAdapter.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/classes/MemoryCacheAdapter.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/classes/MemoryManager.md",
- "additions": 13,
- "deletions": 13
- },
- {
- "path": "docs/api/classes/Service.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/enumerations/Clients.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/enumerations/GoalStatus.md",
- "additions": 3,
- "deletions": 3
- },
- {
- "path": "docs/api/enumerations/LoggingLevel.md",
- "additions": 3,
- "deletions": 3
- },
- {
- "path": "docs/api/enumerations/ModelClass.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/enumerations/ModelProviderName.md",
- "additions": 76,
- "deletions": 0
- },
- {
- "path": "docs/api/enumerations/ServiceType.md",
- "additions": 8,
- "deletions": 8
- },
- {
- "path": "docs/api/functions/addHeader.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/composeActionExamples.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/composeContext.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/configureSettings.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/createGoal.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/createRelationship.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/embed.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/findNearestEnvFile.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatActionNames.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatActions.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatActors.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatEvaluatorExampleDescriptions.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatEvaluatorExamples.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatEvaluatorNames.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatEvaluators.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatGoalsAsString.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatMessages.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatPosts.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatRelationships.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/formatTimestamp.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateCaption.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateImage.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateMessageResponse.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateObject.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateObjectArray.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateObjectV2.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateShouldRespond.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateTextArray.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateTrueOrFalse.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/generateWebSearch.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getActorDetails.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getEmbeddingConfig.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getEmbeddingType.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getEmbeddingZeroVector.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getEndpoint.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getEnvVariable.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getGoals.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getModel.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getProviders.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getRelationship.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/getRelationships.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/handleProvider.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/hasEnvVariable.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/loadEnvConfig.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/parseBooleanFromText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/parseJSONObjectFromText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/parseJsonArrayFromText.md",
- "additions": 1,
- "deletions": 1
- },
- {
- "path": "docs/api/functions/parseShouldRespondFromText.md",
- "additions": 1,
- "deletions": 1
- },
+ "author": "odilitime",
+ "state": "APPROVED",
+ "body": ""
+ }
+ ],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 3,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "tcm390",
+ "score": 29,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/60634884?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkwODAsIm5iZiI6MTczNDY0Nzg4MCwicGF0aCI6Ii91LzYwNjM0ODg0In0.aTZg7v0-F5XSxIbAmBcfx_5AdpyFDh-e6rtAZEXNARI&u=c6c41679b8322eaa0c81f72e0b4ed95e80f0ac16&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 2,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1242,
+ "title": "fix: twitterShouldRespondTemplate Fails When Defined as a String in JSON Character Config",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T16:31:00Z",
+ "updated_at": "2024-12-19T22:02:54Z",
+ "body": "related: https://github.com/ai16z/eliza/issues/1235\r\n\r\n",
+ "files": [
{
- "path": "docs/api/functions/splitChunks.md",
+ "path": "packages/client-twitter/src/interactions.ts",
"additions": 1,
- "deletions": 1
- },
+ "deletions": 3
+ }
+ ],
+ "reviews": [
{
- "path": "docs/api/functions/stringToUuid.md",
- "additions": 1,
- "deletions": 1
- },
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM"
+ }
+ ],
+ "comments": [
{
- "path": "docs/api/functions/trimTokens.md",
- "additions": 1,
- "deletions": 1
- },
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1242?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n"
+ }
+ ]
+ },
+ {
+ "number": 1220,
+ "title": "fix: Allow the bot to post messages with images generated by the imageGenerationPlugin on Telegram.",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T00:16:18Z",
+ "updated_at": "2024-12-19T02:06:20Z",
+ "body": "related: \r\nhttps://github.com/ai16z/eliza/issues/970\r\nhttps://github.com/ai16z/eliza/pull/1040\r\n\r\n\r\n\r\n\r\n",
+ "files": [
{
- "path": "docs/api/functions/updateGoal.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/client-telegram/src/messageManager.ts",
+ "additions": 106,
+ "deletions": 54
},
{
- "path": "docs/api/functions/validateCharacterConfig.md",
- "additions": 1,
- "deletions": 1
+ "path": "packages/client-twitter/src/utils.ts",
+ "additions": 2,
+ "deletions": 12
},
{
- "path": "docs/api/functions/validateEnv.md",
+ "path": "packages/plugin-image-generation/src/index.ts",
"additions": 1,
"deletions": 1
- },
- {
- "path": "docs/api/interfaces/Account.md",
- "additions": 6,
- "deletions": 6
- },
- {
- "path": "docs/api/interfaces/Action.md",
- "additions": 6,
- "deletions": 6
- },
- {
- "path": "docs/api/interfaces/ActionExample.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/interfaces/Actor.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/Content.md",
- "additions": 6,
- "deletions": 6
- },
- {
- "path": "docs/api/interfaces/ConversationExample.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/interfaces/EvaluationExample.md",
- "additions": 3,
- "deletions": 3
- },
- {
- "path": "docs/api/interfaces/Evaluator.md",
- "additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/GenerationOptions.md",
- "additions": 9,
- "deletions": 9
- },
- {
- "path": "docs/api/interfaces/Goal.md",
- "additions": 6,
- "deletions": 6
- },
- {
- "path": "docs/api/interfaces/IAgentRuntime.md",
- "additions": 35,
- "deletions": 35
- },
- {
- "path": "docs/api/interfaces/IBrowserService.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/ICacheAdapter.md",
- "additions": 3,
- "deletions": 3
- },
- {
- "path": "docs/api/interfaces/ICacheManager.md",
- "additions": 3,
- "deletions": 3
- },
- {
- "path": "docs/api/interfaces/IDatabaseAdapter.md",
- "additions": 37,
- "deletions": 37
- },
- {
- "path": "docs/api/interfaces/IDatabaseCacheAdapter.md",
- "additions": 3,
- "deletions": 3
- },
- {
- "path": "docs/api/interfaces/IImageDescriptionService.md",
- "additions": 3,
- "deletions": 3
- },
- {
- "path": "docs/api/interfaces/IMemoryManager.md",
- "additions": 13,
- "deletions": 13
- },
- {
- "path": "docs/api/interfaces/IPdfService.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/ISpeechService.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/interfaces/ITextGenerationService.md",
- "additions": 6,
- "deletions": 6
- },
- {
- "path": "docs/api/interfaces/ITranscriptionService.md",
- "additions": 6,
- "deletions": 6
- },
- {
- "path": "docs/api/interfaces/IVideoService.md",
- "additions": 6,
- "deletions": 6
- },
+ }
+ ],
+ "reviews": [
{
- "path": "docs/api/interfaces/Memory.md",
- "additions": 9,
- "deletions": 9
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM - thank you so much for doing this please feel free to close the issues :) "
}
],
- "reviews": [],
"comments": []
}
]
},
"issues": {
- "total_opened": 2,
- "opened": [
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 2,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "tomguluson92",
+ "score": 23,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/19585240?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91LzE5NTg1MjQwIn0.gXlxEwvwu9reKlsbqgUt9Tx7a5qqekgFUel_ERC3Fwo&u=4a4465656050747dee79f5f97a8b61cf2fbc97e1&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 2,
+ "commits": [],
+ "pull_requests": [
{
- "number": 1194,
- "title": "Improve Logging in /packages/plugin-coinbase/src/plugins",
+ "number": 1246,
+ "title": "feat: upgrade Tavily API with comprehensive input and constrain the token consumption",
"state": "OPEN",
- "created_at": "2024-12-18T04:16:18Z",
- "updated_at": "2024-12-18T08:38:48Z",
- "body": "**Is your feature request related to a problem? Please describe.**\n\nThe current logging mechanism in the `/packages/plugin-coinbase/src/plugins` directory lacks consistency and detail, making it challenging to debug and monitor the plugin's behavior effectively.\n\n**Describe the solution you'd like**\n\nIntegrate the `elizaLogger` construct to standardize logging across the plugin. This should include:\n- Consistent log levels (INFO, DEBUG, ERROR) for different operations.\n- Detailed log messages that include context such as function names and parameters.\n- Examples of how to implement `elizaLogger` in existing functions for better clarity.\n\n**Describe alternatives you've considered**\n\n- Continuing with the current ad-hoc logging approach.\n- Using a third-party logging library, though this may introduce unnecessary dependencies.\n\n**Additional context**\n\nPlease refer to existing examples in the `/packages/plugin-coinbase/src/plugins` directory and extend them where possible. Ensure that the new logging strategy aligns with the overall architecture of the `eliza` project.",
- "labels": [
+ "merged": false,
+ "created_at": "2024-12-19T19:25:41Z",
+ "updated_at": "2024-12-19T19:52:00Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nrelates to tavily #518\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nConstrain the maximum output of per web search from Tavily, while allows more input parameters that can be controlled by the developers or users.\r\n\r\n## What kind of change is this?\r\n\r\nImprovements & Features \r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\nNo\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\nYes, I have fulfilled the test by test this part independently and then assemble this to the core.\r\n\r\n## Where should a reviewer start?\r\n\r\nCould start with the test just like normally use Tavily.\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
{
- "name": "enhancement",
- "color": "a2eeef",
- "description": "New feature or request"
+ "path": ".env.example",
+ "additions": 3,
+ "deletions": 0
},
{
- "name": "good first issue",
- "color": "7057ff",
- "description": "Good for newcomers"
+ "path": "packages/core/src/generation.ts",
+ "additions": 4,
+ "deletions": 0
},
{
- "name": "logging",
- "color": "ededed",
- "description": null
+ "path": "packages/plugin-web-search/src/index.ts",
+ "additions": 24,
+ "deletions": 2
+ }
+ ],
+ "reviews": [
+ {
+ "author": "tcm390",
+ "state": "APPROVED",
+ "body": ""
}
],
"comments": [
{
- "author": "9547",
- "body": "@monilpat may I take this one?"
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1246?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAttention: Patch coverage is `0%` with `4 lines` in your changes missing coverage. Please review.\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1246?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Patch % | Lines |\n|---|---|---|\n| [packages/core/src/generation.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1246?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fgeneration.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvZ2VuZXJhdGlvbi50cw==) | 0.00% | [4 Missing :warning: ](https://app.codecov.io/gh/ai16z/eliza/pull/1246?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) |\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1246?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Coverage \u0394 | |\n|---|---|---|\n| [packages/core/src/generation.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1246?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fgeneration.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvZ2VuZXJhdGlvbi50cw==) | `2.68% <0.00%> (-0.01%)` | :arrow_down: |\n"
}
]
},
{
- "number": 1192,
- "title": "Enhance Logging in /packages/plugin-coinbase/src/plugins Using elizaLogger",
- "state": "CLOSED",
- "created_at": "2024-12-18T01:45:28Z",
- "updated_at": "2024-12-18T01:46:15Z",
- "body": "---\nname: Feature request\nabout: Suggest an idea for this project\ntitle: \"\"\nlabels: \"enhancement\"\nassignees: \"\"\n---\n\n**Is your feature request related to a problem? Please describe.**\n\nCurrently, the logging mechanism in `/packages/plugin-coinbase/src/plugins` lacks detailed output, making it difficult to trace issues and monitor performance effectively.\n\n**Describe the solution you'd like**\n\nIntegrate the `elizaLogger` construct to provide more comprehensive logging throughout the codebase. This would involve:\n- Adding entry and exit logs for key functions.\n- Including detailed error logging with stack traces.\n- Logging significant state changes and data processing steps.\n\n**Describe alternatives you've considered**\n\nConsidered using a third-party logging library, but `elizaLogger` offers a more integrated solution with existing infrastructure.\n\n**Additional context**\n\nUtilize existing examples of `elizaLogger` usage in other parts of the codebase as a reference. Extend these examples to cover more complex scenarios within the `/packages/plugin-coinbase/src/plugins` path.",
- "labels": [
+ "number": 1226,
+ "title": "fix: CircuitBreaker.ts",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T04:53:10Z",
+ "updated_at": "2024-12-19T06:44:23Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nRelated to https://github.com/ai16z/eliza/pull/719\r\nBuild upon on https://github.com/ai16z/eliza/pull/812\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n`medium`, since we change the database adapters `circuitbase` code in the failure conditions.\r\n\r\n\r\n\r\n# Background\r\n\r\nDuring checking and learning the core code from AI16Z, I dig deeper into it and find out that the condition to restart the error need to be more fulfill.\r\n\r\n## What does this PR do?\r\n\r\nFulfill the condition in handling the failures.\r\n\r\n## What kind of change is this?\r\n\r\n**Improvements** \r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\nIf a docs change is needed: I have updated the documentation accordingly.\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\nYes\r\n\r\n",
+ "files": [
{
- "name": "enhancement",
- "color": "a2eeef",
- "description": "New feature or request"
+ "path": "packages/core/src/database/CircuitBreaker.ts",
+ "additions": 1,
+ "deletions": 1
}
],
- "comments": []
+ "reviews": [
+ {
+ "author": "shakkernerd",
+ "state": "APPROVED",
+ "body": ""
+ }
+ ],
+ "comments": [
+ {
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1226?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAttention: Patch coverage is `0%` with `1 line` in your changes missing coverage. Please review.\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1226?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Patch % | Lines |\n|---|---|---|\n| [packages/core/src/database/CircuitBreaker.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1226?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fdatabase%2FCircuitBreaker.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvZGF0YWJhc2UvQ2lyY3VpdEJyZWFrZXIudHM=) | 0.00% | [1 Missing :warning: ](https://app.codecov.io/gh/ai16z/eliza/pull/1226?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) |\n\n| [Files with missing lines](https://app.codecov.io/gh/ai16z/eliza/pull/1226?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) | Coverage \u0394 | |\n|---|---|---|\n| [packages/core/src/database/CircuitBreaker.ts](https://app.codecov.io/gh/ai16z/eliza/pull/1226?src=pr&el=tree&filepath=packages%2Fcore%2Fsrc%2Fdatabase%2FCircuitBreaker.ts&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z#diff-cGFja2FnZXMvY29yZS9zcmMvZGF0YWJhc2UvQ2lyY3VpdEJyZWFrZXIudHM=) | `36.20% <0.00%> (-1.98%)` | :arrow_down: |\n"
+ }
+ ]
}
]
},
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
"engagement": {
- "total_comments": 1,
- "total_reviews": 0,
+ "total_comments": 0,
+ "total_reviews": 2,
"comments": [],
"reviews": []
}
}
},
{
- "contributor": "Longame208",
- "score": 10,
+ "contributor": "jonathangus",
+ "score": 17,
"summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/79878000?v=4",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/7723195?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg3MjAsIm5iZiI6MTczNDY0NzUyMCwicGF0aCI6Ii91Lzc3MjMxOTUifQ.htne0skqI0Y2OwK1K8bRO0AevoSbqtOjKav7qWgZDAo&u=2f07ca181065b387adcebe19eaf0798526e6f061&v=4",
"activity": {
"code": {
"total_commits": 0,
- "total_prs": 0,
+ "total_prs": 1,
"commits": [],
- "pull_requests": []
- },
- "issues": {
- "total_opened": 1,
- "opened": [
+ "pull_requests": [
{
- "number": 1204,
- "title": "unable to chat in terminal",
- "state": "OPEN",
- "created_at": "2024-12-18T11:19:12Z",
- "updated_at": "2024-12-18T12:41:24Z",
- "body": "run pnpm start / pnpm start:client and not able to have chat in terminal with agent was working before now it takes to local host page browser and nothing happens\r\n\r\n\r\n\r\n**To Reproduce**\r\n\r\n\r\n\r\n**Expected behavior**\r\n\r\n\r\n\r\n**Screenshots**\r\n\r\n\r\n\r\n**Additional context**\r\n\r\n\r\n",
- "labels": [
+ "number": 1239,
+ "title": "fix: Sync UI Client with server port env",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T13:56:38Z",
+ "updated_at": "2024-12-19T21:54:31Z",
+ "body": "\r\n\r\n# Risks\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nIt uses SERVER_PORT environment variable in the client app\r\n\r\n## What kind of change is this?\r\nImprovements for developer experience\r\n\r\n## Why are we doing this? Any context or related work?\r\nExperienced this issue when developing and wanted to use another port then 3000\r\n\r\n# Documentation changes needed?\r\nMy changes do not require a change to the project documentation.\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
{
- "name": "bug",
- "color": "d73a4a",
- "description": "Something isn't working"
+ "path": "client/vite.config.ts",
+ "additions": 4,
+ "deletions": 1
}
],
- "comments": [
- {
- "author": "jaycoolh",
- "body": "Same error here"
- },
- {
- "author": "jaycoolh",
- "body": "I am using: v0.1.6-alpha.4\r\n\r\nnode --version \r\nv23.3.0\r\n\r\npnpm --version \r\n9.15.0\r\n\r\n pnpm start --character=\"characters/trump.character.json\""
- },
- {
- "author": "jaycoolh",
- "body": "[\"\u25ce Visit the following URL to chat with your agents:\"]\r\n\r\n [\"\u25ce http://localhost:5173\"]\r\n\r\n [\"\u2713 REST API bound to 0.0.0.0:3000. If running locally, access it at http://localhost:3000.\"]\r\n \r\n \r\n 'http://localhost:5173' is just a dead link"
- },
+ "reviews": [
{
- "author": "jaycoolh",
- "body": "@Longame208 \r\n\r\nin the package.json there is a script `pnpm start:client`\r\n\r\nthis spins up the app http://localhost:5173\r\n\r\nNeed to include this in the quickstart guide https://ai16z.github.io/eliza/docs/quickstart/#next-steps\r\n\r\n(or even better, include the `pnpm start:client` in the `pnpm start` command"
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM - thank you!"
}
- ]
+ ],
+ "comments": []
}
]
},
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
"engagement": {
- "total_comments": 4,
- "total_reviews": 0,
+ "total_comments": 0,
+ "total_reviews": 1,
"comments": [],
"reviews": []
}
}
},
{
- "contributor": "tekspirit",
- "score": 8,
+ "contributor": "simpletrontdip",
+ "score": 16,
"summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/1505004?u=59283365bced9a568f4a3ea86310ee38f4b5003c&v=4",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/20158564?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5MDAsIm5iZiI6MTczNDY0NzcwMCwicGF0aCI6Ii91LzIwMTU4NTY0In0.dPZab45J8lkENAvzV8Qyi-otNiiTGf44oBcjqxoS5mg&v=4",
"activity": {
"code": {
"total_commits": 0,
- "total_prs": 0,
+ "total_prs": 1,
"commits": [],
- "pull_requests": []
- },
- "issues": {
- "total_opened": 1,
- "opened": [
+ "pull_requests": [
{
- "number": 1206,
- "title": "double backslash when posting to X",
- "state": "OPEN",
- "created_at": "2024-12-18T14:02:01Z",
- "updated_at": "2024-12-18T18:29:36Z",
- "body": "**Describe the bug**\r\nEliza is posting an '\\\\n\\\\n' to X instead of two carriage returns. This is using CLAUDE_VERTEX.\r\n\r\nIt appears every post has this symptom.\r\n**To Reproduce**\r\nI run on a mac, so compiled eliza with settings for mac. Example: https://x.com/waggyhappytail/status/1869352624656716210\r\n\r\nI run with pnpm tsx agent/src/index.ts\r\n**Expected behavior**\r\nIt should post carriage returns.\r\n\r\n\r\n**Screenshots**\r\nhttps://imgur.com/a/BFJ2RlH\r\n\r\n\r\n**Additional context**\r\nIf I exit eliza and restart, it doesn't always reproduce the issue. The only filed edited is the character file.\r\n\r\n",
- "labels": [
+ "number": 1229,
+ "title": "feat: add parse mode=Markdown, enhance telegram bot output",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T07:31:17Z",
+ "updated_at": "2024-12-19T07:50:08Z",
+ "body": "# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nIt added `parse_mode=\"Markdown\"` to support code suggestion in Telegram bot output\r\n\r\n## What kind of change is this?\r\n\r\nImprovements (misc. changes to existing features)\r\n\r\n## Why are we doing this? Any context or related work?\r\nIt would be nice to have Markdown support in bot output, this is heavily used in all LLMs output\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n## Screenshots\r\n\r\n### Before\r\n\r\n\r\n### After\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
{
- "name": "bug",
- "color": "d73a4a",
- "description": "Something isn't working"
+ "path": "packages/client-telegram/src/messageManager.ts",
+ "additions": 1,
+ "deletions": 0
}
],
- "comments": [
- {
- "author": "usama-saeed831",
- "body": "@tekspirit I fix this by adding following line in\r\npacakages -> client-twitter -> src -> post.js\r\nin \"generateNewTweet()\" function\r\n\r\nafter\r\n**cleanedContent = removeQuotes(content);**\r\n\r\n`cleanedContent = cleanedContent.replace(/\\\\n/g, '\\n');`"
- },
+ "reviews": [
{
- "author": "owlcode",
- "body": "I think `.replaceAll` is more appropriate. I fixed it here https://github.com/ai16z/eliza/pull/1141. I guess it waits for a release."
+ "author": "shakkernerd",
+ "state": "APPROVED",
+ "body": "This is a good one!"
}
- ]
+ ],
+ "comments": []
}
]
},
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
"engagement": {
- "total_comments": 2,
- "total_reviews": 0,
+ "total_comments": 0,
+ "total_reviews": 1,
"comments": [],
"reviews": []
}
}
},
{
- "contributor": "odilitime",
- "score": 7,
+ "contributor": "luisalrp",
+ "score": 15,
"summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/16395496?u=45c152d8433e37c62520e66c0dd6d754ccf3eaf4&v=4",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/31384138?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg1NDAsIm5iZiI6MTczNDY0NzM0MCwicGF0aCI6Ii91LzMxMzg0MTM4In0.XQRH_JmHfJ9SSP2y-iWTJbtF0mMQ96QBOO5JmXkIdDI&u=dd50e8885f7f8e2372d955b7fae623bba8be9ec2&v=4",
"activity": {
"code": {
"total_commits": 0,
- "total_prs": 2,
+ "total_prs": 1,
"commits": [],
"pull_requests": [
{
- "number": 1210,
- "title": "feat: loading characters from db at load and runtime (conflicts resolved)",
- "state": "OPEN",
- "merged": false,
- "created_at": "2024-12-18T18:10:29Z",
- "updated_at": "2024-12-18T18:25:06Z",
- "body": "Originally #551, this is a resubmission\r\n\r\n\r\n\r\n# Relates to:\r\nLoading Characters from db(sqlite/postgres) during runtime (via a REST API call) and\r\nduring start/load time.\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n_Medium_\r\nNone of these changes will affect existing workflow as its handled by env variables\r\nFETCH_FROM_DB (bool) - default: null/false - For loading characters from DB\r\nAGENT_RUNTIME_MANAGEMENT (bool) - default: null/false - For loading characters from Db at runtime\r\n\r\nFrom security standpoint, all character specific secrets (EG: TWITTER_PASSWORD or OPENAI_API_KEY) is AES-256 encrypted and stored in DB\r\n\r\n\r\n\r\n# Background\r\nFor a production ready - multi-character Eliza setup, we want to load new characters in runtime via API calls.\r\nWe do not want to restart the Eliza server for each new character.\r\n\r\n_ASSUMPTION:_ \r\nAn api or script exists to store the characters in DB.\r\nThe api uses the same stringToUUID method to create consistent UUIDs for a character and store in DB.\r\n\r\n## What does this PR do?\r\n- Allows loading characters from DB during start\r\n- Allows loading characters via REST API from DB during runtime\r\n- The characters are stored in TEXT/JSONB format - similar to the character Agent file in sqlite and postgres respectively\r\n- Securely encrypts each character's secrets using AES-256 encryption and then stores in DB (Decrypt after fetch)\r\n- Proper error handling for all scenarios \r\n - Character already loaded in runtime\r\n - Character does not exist in db\r\n\r\n## What kind of change is this?\r\nThis is a new Feature\r\n\r\nWhy?\r\nCurrently \r\n1) For adding any new agent, we need to restart the Eliza server => All the agents and its clients are loaded again - All previous tweets (incase of twitter client), interactions are processed again. Any existing direct or telegram conversation is lost. \r\n2) Not a straight-forward mechanism to add new agents - Now with a REST API - load new agents.\r\n\r\nWhy are we doing this?\r\nTo take a step towards multi-character production setup\r\n\r\n### Code Changes made and why?\r\n1. **Created a new table in postgres and sqlite** - Added in the seed file/script of both DBs\r\n`\r\nexport type CharacterTable = {\r\n id: UUID; // created from stringToUUID - unique and consistent for name\r\n name: string;\r\n characterState: Character; // A JSONB or TEXT - that maps the character\r\n secretsIV?: Secrets; // Initialisation Vector for each secrets\r\n};\r\n`\r\n**Also added the above in packages/core/src/types.ts**\r\n2. **in SqliteAdapter and PostgresAdapter** - created a new function to load from this characters table\r\n3. **in Agents/src/index.ts** -> \r\n- Assign Directclient to a global variable - along with set and get methods. This is to allow the same direct client be used for character(agent) runtime creation\r\n- A function loadCharactersFromDb loadCharactersFromDb(\r\n characterNames?: string\r\n ): Promise \r\n - if any characterNames argument received, it fetches only those characters from db\r\n - else fetches all characters\r\n - This handles encryption and decryption of secrets if secrets are present in a character\r\n - uses env.ENCRYPTION_KEY\r\n- An express server\r\n - The server starts only when the env AGENT_RUNTIME_MANAGEMENT == true\r\n - _Why not use the same express server in DirectClient?_ DirectClient does not have access to the DB methods and all the agent-specific handling methods\r\n - ENDPOINT: \"/load/:agentName\" METHOD: Post\r\n - PORT: default. - 3001, overwritten by env AGENT_PORT\r\n4. **in packages/client-direct/src/index.ts**\r\n- Added ENDPOINT: \"/load/:agentName\" METHOD: Post\r\n - This endpoint (is a proxy) that routes request to the agent server's route\r\n - Before proxying, checks if AGENT_RUNTIME_MANAGEMENT ==true and if agents already in runtime\r\n5. created a file **packages/core/src/crypt.ts**\r\n- This handles the encryption and decryption methods\r\n6. created scripts that parses a character json file or all files in a folder and inserts in DB\r\n- Location: scripts/importCharactersInDB/[postgres/sqlite]/insertInDb.js\r\nRequires env variable\r\n`\r\nPOSTGRES_URL= # if postgres\r\nENCRYPTION_KEY=\"\"\r\nINPUT_PATH=characters # the folder path to load the characters from\r\nSQLITE_DB_PATH= #if you want to change db path Default: agent/data/db.sqlite\r\n`\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\nNot needed necessarily.\r\nNew ENV variables and explanations are added in .env.example\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\nI have tested the scenarios in detailed testing steps in both sqlite and postgres.\r\n\r\n## Where should a reviewer start?\r\n- agent/src/index.js \r\n- Line 418 and 531\r\npackages/client-direct/src/index.js\r\n- Line 271\r\n\r\n## Detailed testing steps\r\n**INIT STEP:** \r\n1. creating character table(use the schema.sql or sqliteTables.ts ) \r\n2. loading characters in DB (used the above mentioned scripts in `scripts/importCharactersInDB/[postgres/sqlite]/insertInDb.js` - \r\n - also added to the characters tate and trump - TWITTER_USERNAME, TWITTER_PASSWORD, TWITTER_EMAIL to its settings.secrets and twitter to client) to test secrets encryption and decryption\r\n\r\n**I have tested the following scenarios**\r\n1. Fetching from database during start\r\n- set env FETCH_FROM_DB=true\r\n- `pnpm start`\r\n- Will function as usual\r\n- if we want to test postgres, set env POSTGRES_URL=''\r\n2. Loading an agent during runtime\r\n- set env FETCH_FROM_DB=false #if true, we can't test load as all characters in db will be loaded\r\n- set env AGENT_RUNTIME_MANAGEMENT=true\r\n- set env ENCRYPTION_KEY= #use the same encryption key used in insertInDB.js script\r\n- set env AGENT_PORT=4000 #can be empty if we want to pick default port 3001\r\n`pnpm start`\r\n- This will load with the default character Eliza\r\n- `curl --location --request POST 'http://localhost:3000/load/trump'` - replace port and character name if using different characters\r\n- SUB SCENARIO 1: agent is loaded and we get success code 200\r\n- SUB SCENARIO 2: agent is already loaded and we get error code 409\r\n- SUB SCENARIO 3: agent does not exist in db and we get error code 404\r\n- SUB SCENARIO 4: Error during agent load - like incorrect twitter - error code 500\r\n- if we want to test postgres, set env POSTGRES_URL=''\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "number": 1243,
+ "title": "Fix visibility issue github image cicd",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T16:36:23Z",
+ "updated_at": "2024-12-19T22:02:34Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n[Publish an official Docker Image in ghcr. #876](https://github.com/ai16z/eliza/issues/876) and PR [feat : github image cicd #889](https://github.com/ai16z/eliza/pull/889) by @v1xingyue.\r\n\r\n# Risks\r\n\r\nLow. I do not see risks.\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\nUpdates image.yaml to add the task to change package visibility.\r\n",
"files": [
{
- "path": ".env.example",
- "additions": 7,
- "deletions": 0
- },
- {
- "path": "agent/src/index.ts",
- "additions": 199,
- "deletions": 0
- },
- {
- "path": "packages/adapter-postgres/schema.sql",
- "additions": 9,
- "deletions": 0
- },
- {
- "path": "packages/adapter-postgres/src/index.ts",
- "additions": 48,
- "deletions": 1
- },
- {
- "path": "packages/adapter-sqlite/src/index.ts",
+ "path": ".github/workflows/image.yaml",
"additions": 56,
- "deletions": 0
- },
- {
- "path": "packages/adapter-sqlite/src/sqliteTables.ts",
- "additions": 10,
- "deletions": 0
- },
- {
- "path": "packages/client-direct/src/index.ts",
- "additions": 45,
- "deletions": 4
- },
- {
- "path": "packages/core/src/crypt.ts",
- "additions": 63,
- "deletions": 0
- },
- {
- "path": "packages/core/src/index.ts",
- "additions": 1,
- "deletions": 0
- },
- {
- "path": "packages/core/src/types.ts",
- "additions": 20,
- "deletions": 0
- },
- {
- "path": "scripts/importCharactersInDB/crypt.js",
- "additions": 112,
- "deletions": 0
- },
- {
- "path": "scripts/importCharactersInDB/postgres/FetchFromDb.js",
- "additions": 143,
- "deletions": 0
- },
- {
- "path": "scripts/importCharactersInDB/postgres/insertInDb.js",
- "additions": 223,
- "deletions": 0
- },
- {
- "path": "scripts/importCharactersInDB/sqlite/fetchFromDb.js",
- "additions": 111,
- "deletions": 0
- },
+ "deletions": 47
+ }
+ ],
+ "reviews": [
{
- "path": "scripts/importCharactersInDB/sqlite/insertInDb.js",
- "additions": 188,
- "deletions": 0
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM! "
}
],
- "reviews": [],
"comments": []
- },
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 1,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "yjshi2015",
+ "score": 15,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/27291507?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkxNDAsIm5iZiI6MTczNDY0Nzk0MCwicGF0aCI6Ii91LzI3MjkxNTA3In0.xoqYjUq9ys7ZiKG80ewP_HiLtsLumNcsIRVYTO9lg4g&u=967c2c7ba1dddfaa2f14b55ef74ee6f4c0f2b5e6&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
{
- "number": 1198,
- "title": "feat: Client secrets validation",
- "state": "OPEN",
- "merged": false,
- "created_at": "2024-12-18T07:17:10Z",
- "updated_at": "2024-12-18T22:33:35Z",
- "body": "# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nChecks that secrets are valid before adding client\r\n\r\n## What kind of change is this?\r\n\r\nImprovements (misc. changes to existing features)\r\n\r\n## Why are we doing this? Any context or related work?\r\n\r\nMake the daemon not crash when REST API is adding/updating/deleting agents\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n",
+ "number": 1237,
+ "title": "Update trump.character.json - Enhance terminology in the project for clarity and inclusivity",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T12:19:10Z",
+ "updated_at": "2024-12-19T22:25:39Z",
+ "body": "While reviewing the documentation, I noticed the term \u201cChina virus.\u201d To maintain professionalism and align with WHO naming standards, I suggest replacing it with terms like \u201cCOVID-19\u201d or \u201cSARS-CoV-2.\u201d This adjustment not only ensures accuracy but also promotes inclusivity and avoids potential misunderstandings.",
"files": [
{
- "path": "agent/src/index.ts",
- "additions": 22,
- "deletions": 9
- },
- {
- "path": "packages/client-discord/src/index.ts",
- "additions": 30,
- "deletions": 3
- },
- {
- "path": "packages/client-telegram/package.json",
+ "path": "characters/trump.character.json",
"additions": 1,
- "deletions": 0
- },
- {
- "path": "packages/client-telegram/src/index.ts",
- "additions": 22,
- "deletions": 0
- },
- {
- "path": "packages/client-twitter/src/base.ts",
- "additions": 14,
- "deletions": 7
- },
- {
- "path": "packages/client-twitter/src/index.ts",
- "additions": 17,
"deletions": 1
- },
- {
- "path": "packages/core/src/types.ts",
- "additions": 3,
- "deletions": 0
}
],
"reviews": [
{
- "author": "cygaar",
- "state": "COMMENTED",
- "body": ""
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM!"
}
],
- "comments": []
+ "comments": [
+ {
+ "author": "lalalune",
+ "body": "> While reviewing the documentation, I noticed the term \u201cChina virus.\u201d To maintain professionalism and align with WHO naming standards, I suggest replacing it with terms like \u201cCOVID-19\u201d or \u201cSARS-CoV-2.\u201d This adjustment not only ensures accuracy but also promotes inclusivity and avoids potential misunderstandings.\r\n\r\nThe point of characters is to capture the person accurately, not the facts. Trump says silly offensive stuff, and we wanted to capture that. He would not say SARS-COVID-19. I disagree with about 99% of the stuff he says, and 99% of the stuff his character file says. That being said, I care about art, and not letting art be compromised by politics.\r\n\r\nWe love people all over the world, and personally I will be visiting China in a couple days to meet everyone. I don't believe that we should be against any group for their nationality. But we shouldn't kill the comedy and make our characters worse-- that's why OpenAI's models suck now. It's a slippery slope that will reduce bravery, integrity and quality."
+ }
+ ]
}
]
},
@@ -1756,10 +675,10 @@
}
},
{
- "contributor": "AbdelStark",
- "score": 6,
+ "contributor": "danbednarski",
+ "score": 15,
"summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/45264458?u=6ea3a3cec4fd224af9afe756466df041687486a2&v=4",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/183874220?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0ODAsIm5iZiI6MTczNDY0NzI4MCwicGF0aCI6Ii91LzE4Mzg3NDIyMCJ9.K5HcKBhqOKkEAALB4r65mm2QHcjXkgOuJdgIUPTqg3U&v=4",
"activity": {
"code": {
"total_commits": 0,
@@ -1767,120 +686,41 @@
"commits": [],
"pull_requests": [
{
- "number": 1203,
- "title": "feat: Implement Nostr client",
- "state": "OPEN",
- "merged": false,
- "created_at": "2024-12-18T09:55:14Z",
- "updated_at": "2024-12-18T20:52:26Z",
- "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow. It's an optional client to use. \r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\nFeatures (non-breaking change which adds functionality)\r\n\r\n## Why are we doing this? Any context or related work?\r\n\r\nNostr is the simplest open protocol that is able to create a censorship-resistant global \"social\" network once and for all.\r\n\r\nIt's nature and strong focus on censorship-resistance makes it a perfect fit for the Eliza agent framework.\r\n\r\n## Configuration\r\n\r\nHere are the env variables that need to be set in the `.env` file:\r\n\r\n| Variable | Description | Example |\r\n| ---------------------- | ------------------------------------------------------ | ------------------------------------------- |\r\n| NOSTR_RELAYS | The list of Nostr relays to connect to | wss://relay.damus.io,wss://relay.primal.net |\r\n| NOSTR_NSEC_KEY | Nostr Private Key (starts with nsec) | nsec1... |\r\n| NOSTR_NPUB_KEY | Nostr Public Key (starts with npub) | npub1... |\r\n| NOSTR_POLL_INTERVAL | How often (in seconds) to check for Nostr interactions | 120 |\r\n| NOSTR_POST_IMMEDIATELY | Whether to post immediately or not | false |\r\n| NOSTR_DRY_RUN | Whether to dry run or not | false |\r\n\r\nSample configuration:\r\n\r\n```bash\r\n# The list of Nostr relays to connect to.\r\nNOSTR_RELAYS=\"wss://relay.damus.io,wss://relay.primal.net\"\r\n# Nostr Private Key (starts with nsec)\r\nNOSTR_NSEC_KEY=\"nsec1...\"\r\n# Nostr Public Key (starts with npub)\r\nNOSTR_NPUB_KEY=\"npub1...\"\r\n# How often (in seconds) the bot should check for Nostr interactions (default: 2 minutes)\r\nNOSTR_POLL_INTERVAL=120\r\n# Whether to post immediately or not\r\nNOSTR_POST_IMMEDIATELY=false\r\n# Whether to dry run or not\r\nNOSTR_DRY_RUN=false\r\n```\r\n\r\nNote: The `nsec` configured key is used as the default signer when instantiating the `NDK` instance.\r\n\r\nNostr client must be set in the Character definition, example:\r\n```json\r\n{\r\n \"name\": \"goku\",\r\n \"clients\": [\"nostr\"],\r\n \"modelProvider\": \"anthropic\"\r\n \r\n}\r\n```\r\n\r\n## Changes summary\r\n\r\n- Add env variables for Nostr in `.env.example`.\r\n- Introduce [Nostr NDK](https://github.com/nostr-dev-kit/ndk) for Nostr client.\r\n- Implement Nostr client in Eliza (in `packages/client-nostr`).\r\n - Implement `NostrClient` class.\r\n - Implement `NostrInteractionManager` in `packages/client-nostr/src/interactions.ts`. For now it's a no op service.\r\n - Implement `NostrPostManager` in `packages/client-nostr/src/post.ts`.\r\n\r\n## Resources\r\n\r\n- [Nostr Github](https://github.com/nostr-protocol/nostr)\r\n- [What is Nostr ?](https://nostr.org/)\r\n- [Nostr online dev tools](https://nostrtool.com/)\r\n\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n- As anon\r\n\u00a0 - run `pnpm run dev --characters=\"characters/goku.character.json\"` \r\n\u00a0 - verify that Nostr notes are posted\r\n\r\n## Screenshots\r\n\r\nScreenshot of Nostr notes posted by the agent:\r\n\r\n![Screenshot 2024-12-17 at 18 34 11](https://github.com/user-attachments/assets/e0977daa-8f6d-4943-837e-d6426a575443)\r\n\r\nScreenshot of terminal of the running agent with logs:\r\n\r\n![Screenshot 2024-12-17 at 18 34 27](https://github.com/user-attachments/assets/a1ec8c99-b544-468e-94e2-d72f55521157)\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n## Discord username\r\n\r\nabdel.stark\r\n",
+ "number": 1218,
+ "title": "chore: clean up scripts",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-18T23:15:48Z",
+ "updated_at": "2024-12-19T06:56:57Z",
+ "body": "I'm very new to this project so bear with me - I stumbled across these three files:\r\n\r\n* scripts/gettweets-copy.mjs\r\n* scripts/gettweets.mjs\r\n* scripts/tweetextractor.mjs\r\n\r\nAll appear to do the same thing. The first one uses environmental variables, the second two actually have hardcoded credentials for a real Twitter account.\r\n\r\nShould we simply delete the latter two and scrub the credentials from the git history? Or is there some reason that things are like this?\r\n\r\nThanks for your patience, just getting the hang of things.",
"files": [
{
- "path": ".env.example",
- "additions": 14,
- "deletions": 0
- },
- {
- "path": "agent/package.json",
- "additions": 60,
- "deletions": 59
- },
- {
- "path": "agent/src/index.ts",
- "additions": 18,
- "deletions": 8
- },
- {
- "path": "packages/client-nostr/package.json",
- "additions": 18,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/actions.ts",
- "additions": 37,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/client.ts",
- "additions": 66,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/index.ts",
- "additions": 61,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/interactions.ts",
- "additions": 36,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/memory.ts",
- "additions": 36,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/post.ts",
- "additions": 188,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/prompts.ts",
- "additions": 88,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/types.ts",
- "additions": 9,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/src/utils.ts",
- "additions": 143,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/tsconfig.json",
- "additions": 12,
- "deletions": 0
- },
- {
- "path": "packages/client-nostr/tsup.config.ts",
- "additions": 20,
- "deletions": 0
- },
- {
- "path": "packages/core/src/types.ts",
- "additions": 8,
- "deletions": 4
+ "path": "scripts/gettweets-copy.mjs",
+ "additions": 0,
+ "deletions": 76
},
{
- "path": "packages/plugin-node/src/services/awsS3.ts",
- "additions": 42,
- "deletions": 18
+ "path": "scripts/gettweets.mjs",
+ "additions": 16,
+ "deletions": 32
},
{
- "path": "pnpm-lock.yaml",
- "additions": 146,
- "deletions": 0
+ "path": "scripts/tweetextractor.mjs",
+ "additions": 0,
+ "deletions": 131
}
],
"reviews": [
{
- "author": "odilitime",
- "state": "COMMENTED",
+ "author": "shakkernerd",
+ "state": "APPROVED",
"body": ""
}
],
"comments": [
{
"author": "odilitime",
- "body": "S3 changes trip me up for a second but I think I get it now"
- },
- {
- "author": "AbdelStark",
- "body": "> S3 changes trip me up for a second but I think I get it now\r\n\r\nYeah this is not related to the Nostr client, but for some reasons there was an error because of a mismatch of interface for the S3 service, and I had to fix it."
+ "body": "I notified the author of original PR, so he's aware of what happened"
}
]
}
@@ -1898,525 +738,474 @@
}
}
},
- {
- "contributor": "chefron",
- "score": 5,
- "summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/98501301?v=4",
- "activity": {
- "code": {
- "total_commits": 0,
- "total_prs": 1,
- "commits": [],
- "pull_requests": [
- {
- "number": 1215,
- "title": "modify Twitter interaction rules, create SoundCloud plugin",
- "state": "CLOSED",
- "merged": false,
- "created_at": "2024-12-18T22:13:34Z",
- "updated_at": "2024-12-18T22:14:37Z",
- "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
- "files": [
- {
- "path": "docs/api/classes/AgentRuntime.md",
- "additions": 41,
- "deletions": 41
- },
- {
- "path": "docs/api/classes/CacheManager.md",
- "additions": 6,
- "deletions": 6
- },
- {
- "path": "docs/api/classes/DatabaseAdapter.md",
- "additions": 42,
- "deletions": 42
- },
- {
- "path": "docs/api/classes/DbCacheAdapter.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/classes/FsCacheAdapter.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/classes/MemoryCacheAdapter.md",
- "additions": 6,
- "deletions": 6
- },
- {
- "path": "docs/api/classes/MemoryManager.md",
- "additions": 14,
- "deletions": 14
- },
- {
- "path": "docs/api/classes/Service.md",
- "additions": 5,
- "deletions": 5
- },
- {
- "path": "docs/api/enumerations/Clients.md",
- "additions": 15,
- "deletions": 5
- },
- {
- "path": "docs/api/enumerations/GoalStatus.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/enumerations/LoggingLevel.md",
- "additions": 4,
- "deletions": 4
- },
- {
- "path": "docs/api/enumerations/ModelClass.md",
- "additions": 6,
- "deletions": 6
- },
- {
- "path": "docs/api/enumerations/ModelProviderName.md",
- "additions": 20,
- "deletions": 20
- },
- {
- "path": "docs/api/enumerations/ServiceType.md",
- "additions": 9,
- "deletions": 9
- },
- {
- "path": "docs/api/functions/addHeader.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/composeActionExamples.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/composeContext.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/configureSettings.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/createGoal.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/createRelationship.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/embed.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/findNearestEnvFile.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatActionNames.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatActions.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatActors.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatEvaluatorExampleDescriptions.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatEvaluatorExamples.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatEvaluatorNames.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatEvaluators.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatGoalsAsString.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatMessages.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatPosts.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatRelationships.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/formatTimestamp.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateCaption.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateImage.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateMessageResponse.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateObject.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateObjectArray.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateObjectV2.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateShouldRespond.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateText.md",
- "additions": 2,
- "deletions": 2
- },
- {
- "path": "docs/api/functions/generateTextArray.md",
- "additions": 2,
- "deletions": 2
- },
+ {
+ "contributor": "azurwastaken",
+ "score": 14,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/30268138?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg2MDAsIm5iZiI6MTczNDY0NzQwMCwicGF0aCI6Ii91LzMwMjY4MTM4In0.0TrV_Q5n3Vx_Ly-e8SqcXksrXPMO2MatiDEMRubGAw4&u=9f22ac121f4dbfc0e56a0f165dfc306d419ec514&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1236,
+ "title": "Update README for french, spanish and italian language",
+ "state": "MERGED",
+ "merged": true,
+ "created_at": "2024-12-19T11:24:39Z",
+ "updated_at": "2024-12-19T21:55:23Z",
+ "body": "# Relates to: N/A\r\n\r\n# Risks\r\n\r\nNo risk\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nUpdate readme FR/ES/IT for typo, spelling, etc \r\n\r\n## What kind of change is this?\r\n\r\nUpdates (new versions of included code)\r\n\r\n## Why are we doing this? Any context or related work?\r\n--> Incorrect use of language \r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n## Discord username\r\n\r\n--> azurwastaken\r\n",
+ "files": [
{
- "path": "docs/api/functions/generateTrueOrFalse.md",
- "additions": 2,
- "deletions": 2
+ "path": "README_ES.md",
+ "additions": 3,
+ "deletions": 3
},
{
- "path": "docs/api/functions/generateWebSearch.md",
- "additions": 2,
- "deletions": 2
+ "path": "README_FR.md",
+ "additions": 6,
+ "deletions": 6
},
{
- "path": "docs/api/functions/getActorDetails.md",
- "additions": 2,
- "deletions": 2
- },
+ "path": "README_IT.md",
+ "additions": 7,
+ "deletions": 7
+ }
+ ],
+ "reviews": [
{
- "path": "docs/api/functions/getEmbeddingConfig.md",
- "additions": 2,
- "deletions": 2
- },
+ "author": "monilpat",
+ "state": "APPROVED",
+ "body": "LGTM !"
+ }
+ ],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 1,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "agyn-ub",
+ "score": 13,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/142351559?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5MDAsIm5iZiI6MTczNDY0NzcwMCwicGF0aCI6Ii91LzE0MjM1MTU1OSJ9.SUWFDdwGMDAg49J9c0MRqPEYTaL1rH7ozBauxVHxoMg&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 0,
+ "commits": [],
+ "pull_requests": []
+ },
+ "issues": {
+ "total_opened": 1,
+ "opened": [
+ {
+ "number": 1234,
+ "title": "pnpm install shows errors",
+ "state": "OPEN",
+ "created_at": "2024-12-19T09:57:03Z",
+ "updated_at": "2024-12-19T14:33:05Z",
+ "body": "I did everything as in tutorial in official documentation. And I run pnpm install \r\n\u2502 node-pre-gyp info it worked if it ends with ok\r\n\u2502 node-pre-gyp info using node-pre-gyp@0.4.5\r\n\u2502 node-pre-gyp info using node@23.3.0 | win32 | x64\r\n\u2502 (node:14056) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead. \r\n\u2502 (Use `node --trace-deprecation ...` to show where the warning was created)\r\n\u2502 node-pre-gyp info check checked for \"C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\@discordjs\\opus\\prebu\u2026 \r\n\u2502 node-pre-gyp http GET https://github.com/discordjs/opus/releases/download/v0.9.0/opus-v0.9.0-node-v131-napi-v3-win32-x64-un\u2026 \r\n\u2502 node-pre-gyp ERR! install response status 404 Not Found on https://github.com/discordjs/opus/releases/download/v0.9.0/opus-\u2026 \r\n\u2502 node-pre-gyp WARN Pre-built binaries not installable for @discordjs/opus@0.9.0 and node@23.3.0 (node-v131 ABI, unknown) (fa\u2026 \r\n\u2502 node-pre-gyp WARN Hit error response status 404 Not Found on https://github.com/discordjs/opus/releases/download/v0.9.0/opu\u2026 \r\n\u2502 gyp info it worked if it ends with ok\r\n\u2502 gyp info using node-gyp@10.3.1\r\n\u2502 gyp info using node@23.3.0 | win32 | x64\r\n\u2502 gyp info ok\r\n\u2502 gyp info it worked if it ends with ok\r\n\u2502 gyp info using node-gyp@10.3.1\r\n\u2502 gyp info using node@23.3.0 | win32 | x64\r\n\u2502 gyp info find Python using Python version 3.13.1 found at \"C:\\Users\\agynb\\AppData\\Local\\Programs\\Python\\Python313\\python.ex\u2026 \r\n\u2502 gyp ERR! find VS\r\n\u2502 gyp ERR! find VS msvs_version not set from command line or npm config\r\n\u2502 gyp ERR! find VS VCINSTALLDIR not set, not running in VS Command Prompt\r\n\u2502 gyp ERR! find VS could not use PowerShell to find Visual Studio 2017 or newer, try re-running with '--loglevel silly' for m\u2026 \r\n\u2502 gyp ERR! find VS\r\n\u2502 gyp ERR! find VS Failure details: undefined\r\n\u2502 gyp ERR! find VS checking VS2022 (17.11.35327.3) found at:\r\n\u2502 gyp ERR! find VS \"C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\"\r\n\u2502 gyp ERR! find VS - found \"Visual Studio C++ core features\"\r\n\u2502 gyp ERR! find VS - missing any VC++ toolset\r\n\u2502 gyp ERR! find VS could not find a version of Visual Studio 2017 or newer to use\r\n\u2502 gyp ERR! find VS not looking for VS2017 as it is only supported up to Node.js 21\r\n\u2502 gyp ERR! find VS not looking for VS2017 as it is only supported up to Node.js 21\r\n\u2502 gyp ERR! find VS not looking for VS2017 as it is only supported up to Node.js 21\r\n\u2502 gyp ERR! find VS not looking for VS2015 as it is only supported up to Node.js 18\r\n\u2502 gyp ERR! find VS not looking for VS2013 as it is only supported up to Node.js 8\r\n\u2502 gyp ERR! find VS\r\n\u2502 gyp ERR! find VS **************************************************************\r\n\u2502 gyp ERR! find VS You need to install the latest version of Visual Studio\r\n\u2502 gyp ERR! find VS including the \"Desktop development with C++\" workload.\r\n\u2502 gyp ERR! find VS For more information consult the documentation at:\r\n\u2502 gyp ERR! find VS https://github.com/nodejs/node-gyp#on-windows\r\n\u2502 gyp ERR! find VS **************************************************************\r\n\u2502 gyp ERR! find VS\r\n\u2502 gyp ERR! configure error\r\n\u2502 gyp ERR! stack Error: Could not find any Visual Studio installation to use\r\n\u2502 gyp ERR! stack at VisualStudioFinder.fail (C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\node-gyp\\lib\\fi\u2026 \r\n\u2502 gyp ERR! stack at VisualStudioFinder.findVisualStudio (C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\nod\u2026 \r\n\u2502 gyp ERR! stack at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\r\n\u2502 gyp ERR! stack at async createBuildDir (C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\node-gyp\\lib\\confi\u2026 \r\n\u2502 gyp ERR! stack at async run (C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\node-gyp\\bin\\node-gyp.js:81:1\u2026 \r\n\u2502 gyp ERR! System Windows_NT 10.0.26100\r\n\u2502 gyp ERR! command \"C:\\\\Program Files\\\\nodejs\\\\node.exe\" \"C:\\\\Users\\\\agynb\\\\OneDrive\\\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\\\Eliza\\\\f1\\\\eliza\\\\node_mo\u2026 \r\n\u2502 gyp ERR! cwd C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\@discordjs\\opus\r\n\u2502 gyp ERR! node -v v23.3.0\r\n\u2502 gyp ERR! node-gyp -v v10.3.1\r\n\u2502 gyp ERR! not ok\r\n\u2502 node-pre-gyp ERR! build error\r\n\u2502 node-pre-gyp ERR! stack Error: Failed to execute 'C:\\Program Files\\nodejs\\node.exe C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eli\u2026 \r\n\u2502 node-pre-gyp ERR! stack at ChildProcess. (C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\@\u2026 \r\n\u2502 node-pre-gyp ERR! stack at ChildProcess.emit (node:events:513:28)\r\n\u2502 node-pre-gyp ERR! stack at maybeClose (node:internal/child_process:1101:16)\r\nnode_modules/canvas: Running install script, failed in 10.7s (skipped as optional)process:305:5)\r\n\u2502 node-pre-gyp ERR! System Windows_NT 10.0.26100\r\n\u2502 node-pre-gyp ERR! command \"C:\\\\Program Files\\\\nodejs\\\\node.exe\" \"C:\\\\Users\\\\agynb\\\\OneDrive\\\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\\\Eliza\\\\f1\\\\eliza\u2026 \r\n\u2502 node-pre-gyp ERR! cwd C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\@discordjs\\opus\r\n\u2502 node-pre-gyp ERR! node -v v23.3.0\r\n\u2502 node-pre-gyp ERR! node-pre-gyp -v v0.4.5\r\n\u2502 node-pre-gyp ERR! not ok\r\n\u2502 Failed to execute 'C:\\Program Files\\nodejs\\node.exe C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\node-g\u2026 \r\n\u2514\u2500 Failed in 10.4s at C:\\Users\\agynb\\OneDrive\\\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\\Eliza\\f1\\eliza\\node_modules\\@discordjs\\opus",
+ "labels": [
{
- "path": "docs/api/functions/getEmbeddingType.md",
- "additions": 2,
- "deletions": 2
- },
+ "name": "bug",
+ "color": "d73a4a",
+ "description": "Something isn't working"
+ }
+ ],
+ "comments": [
{
- "path": "docs/api/functions/getEmbeddingZeroVector.md",
- "additions": 2,
- "deletions": 2
+ "author": "giorgosn",
+ "body": "are you using WSL 2?"
},
{
- "path": "docs/api/functions/getEndpoint.md",
- "additions": 2,
- "deletions": 2
+ "author": "digitalsimboja",
+ "body": " ~/dev/eliza #v0.1.6-alpha.4 pnpm install \u2714 23.3.0 \u2b22 11:00:24 AM \r\nScope: all 46 workspace projects\r\nLockfile is up to date, resolution step is skipped\r\n\u2009ERR_PNPM_UNSUPPORTED_ENGINE\u2009 Unsupported environment (bad pnpm and/or Node.js version)\r\n\r\nYour Node version is incompatible with \"@lens-protocol/client@2.2.0(@lens-protocol/metadata@1.2.0)(ethers@6.13.4)(react@18.3.1)\".\r\n\r\nExpected version: >=18 <21\r\nGot: v23.3.0\r\n\r\nThis is happening because the package's manifest has an engines.node field specified.\r\nTo fix this issue, install the required Node version.\r\n ~/dev/eliza #v0.1.6-alpha.4 \r\n \r\n I get this issue as well"
},
{
- "path": "docs/api/functions/getEnvVariable.md",
- "additions": 2,
- "deletions": 2
+ "author": "agyn-ub",
+ "body": "> are you using WSL 2?\r\n\r\nno. I am in linux pop_os"
},
{
- "path": "docs/api/functions/getGoals.md",
- "additions": 2,
- "deletions": 2
+ "author": "agyn-ub",
+ "body": "I run pnpm install on lunix the same error\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/pitch.o\r\n\u2502 rm -f Release/obj.target/deps/opus.a Release/obj.target/deps/opus.a.ar-file-list; mkdir -p `dirname Release/obj.target/deps/opus.a`\r\n\u2502 ar crs Release/obj.target/deps/opus.a @Release/obj.target/deps/opus.a.ar-file-list\r\n\u2502 COPY Release/opus.a\r\n\u2502 CXX(target) Release/obj.target/opus/src/node-opus.o\r\n\u2502 : warning: ISO C++11 requires whitespace after the macro name\r\n\u2502 ../src/node-opus.cc:1:10: fatal error: napi.h: No such file or directory\r\n\u2502 1 | #include \"napi.h\"\r\n\u2502 | ^~~~~~~~\r\n\u2502 compilation terminated.\r\n\u2502 make: *** [opus.target.mk:157: Release/obj.target/opus/src/node-opus.o] Error 1\r\n\u2502 make: Leaving directory '/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus/build'\r\n\u2502 gyp ERR! build error \r\n\u2502 gyp ERR! stack Error: `make` failed with exit code: 2\r\n\u2502 gyp ERR! stack at ChildProcess. (/home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/lib/build.js:216:23)\r\n\u2502 gyp ERR! System Linux 6.9.3-76060903-generic\r\n\u2502 gyp ERR! command \"/home/agyn/.nvm/versions/node/v23.3.0/bin/node\" \"/home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js\" \"build\" \"--fallback-to-build\" \"--modul\u2026\r\n\u2502 gyp ERR! cwd /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\n\u2502 gyp ERR! node -v v23.3.0\r\n\u2502 gyp ERR! node-gyp -v v10.3.1\r\n\u2502 gyp ERR! not ok \r\n\u2502 node-pre-gyp ERR! build error \r\n\u2502 node-pre-gyp ERR! stack Error: Failed to execute '/home/agyn/.nvm/versions/node/v23.3.0/bin/node /home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js build --f\u2026\r\n\u2502 node-pre-gyp ERR! stack at ChildProcess. (/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/node-pre-gyp/lib/util/compile.js:85:20)\r\n\u2502 node-pre-gyp ERR! stack at ChildProcess.emit (node:events:513:28)\r\n\u2502 node-pre-gyp ERR! stack at maybeClose (node:internal/child_process:1101:16)\r\n\u2502 node-pre-gyp ERR! stack at ChildProcess._handle.onexit (node:internal/child_process:305:5)\r\n\u2502 node-pre-gyp ERR! System Linux 6.9.3-76060903-generic\r\n\u2502 node-pre-gyp ERR! command \"/home/agyn/.nvm/versions/node/v23.3.0/bin/node\" \"/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus/node_modules/.bin/node-pre-gyp\" \"instal\u2026\r\n\u2502 node-pre-gyp ERR! cwd /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\n\u2502 node-pre-gyp ERR! node -v v23.3.0\r\n\u2502 node-pre-gyp ERR! node-pre-gyp -v v0.4.5\r\n\u2502 node-pre-gyp ERR! not ok \r\n\u2502 Failed to execute '/home/agyn/.nvm/versions/node/v23.3.0/bin/node /home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/home\u2026\r\n\u2514\u2500 Failed in 29.7s at /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\n\u2009ELIFECYCLE\u2009 Command failed with exit code 1."
},
{
- "path": "docs/api/functions/getModel.md",
- "additions": 2,
- "deletions": 2
+ "author": "agyn-ub",
+ "body": "> ~/dev/eliza #v0.1.6-alpha.4 pnpm install \u2714 23.3.0 \u2b22 11:00:24 AM Scope: all 46 workspace projects Lockfile is up to date, resolution step is skipped \u2009ERR_PNPM_UNSUPPORTED_ENGINE\u2009 Unsupported environment (bad pnpm and/or Node.js version)\r\n> \r\n> Your Node version is incompatible with \"@lens-protocol/client@2.2.0(@lens-protocol/metadata@1.2.0)(ethers@6.13.4)(react@18.3.1)\".\r\n> \r\n> Expected version: >=18 <21 Got: v23.3.0\r\n> \r\n> This is happening because the package's manifest has an engines.node field specified. To fix this issue, install the required Node version. ~/dev/eliza #v0.1.6-alpha.4\r\n> \r\n> I get this issue as well\r\n\r\nthe same error\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/silk/enc_API.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/silk/biquad_alt.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/silk/quant_LTP_gains.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/silk/resampler_private_down_FIR.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/silk/ana_filt_bank_1.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/silk/stereo_MS_to_LR.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/silk/decode_indices.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/rate.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/entdec.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/modes.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/celt_lpc.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/laplace.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/cwrs.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/celt.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/entcode.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/celt_decoder.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/celt_encoder.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/mdct.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/quant_bands.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/vq.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/bands.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/kiss_fft.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/entenc.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/mathops.o\r\n\u2502 CC(target) Release/obj.target/libopus/deps/opus/celt/pitch.o\r\n\u2502 rm -f Release/obj.target/deps/opus.a Release/obj.target/deps/opus.a.ar-file-list; mkdir -p `dirname Release/obj.target/deps/opus.a`\r\n\u2502 ar crs Release/obj.target/deps/opus.a @Release/obj.target/deps/opus.a.ar-file-list\r\n\u2502 COPY Release/opus.a\r\n\u2502 CXX(target) Release/obj.target/opus/src/node-opus.o\r\n\u2502 : warning: ISO C++11 requires whitespace after the macro name\r\n\u2502 ../src/node-opus.cc:1:10: fatal error: napi.h: No such file or directory\r\n\u2502 1 | #include \"napi.h\"\r\n\u2502 | ^~~~~~~~\r\n\u2502 compilation terminated.\r\n\u2502 make: *** [opus.target.mk:155: Release/obj.target/opus/src/node-opus.o] Error 1\r\n\u2502 make: Leaving directory '/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus/build'\r\n\u2502 gyp ERR! build error \r\n\u2502 gyp ERR! stack Error: `make` failed with exit code: 2\r\n\u2502 gyp ERR! stack at ChildProcess. (/home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/lib/build.js:216:23)\r\n\u2502 gyp ERR! System Linux 6.9.3-76060903-generic\r\n\u2502 gyp ERR! command \"/home/agyn/.nvm/versions/node/v20.18.1/bin/node\" \"/home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js\" \"build\" \"--fallback-to-build\" \"--modu\u2026\r\n\u2502 gyp ERR! cwd /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\n\u2502 gyp ERR! node -v v20.18.1\r\n\u2502 gyp ERR! node-gyp -v v10.3.1\r\n\u2502 gyp ERR! not ok \r\n\u2502 node-pre-gyp ERR! build error \r\n\u2502 node-pre-gyp ERR! stack Error: Failed to execute '/home/agyn/.nvm/versions/node/v20.18.1/bin/node /home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js build --\u2026\r\n\u2502 node-pre-gyp ERR! stack at ChildProcess. (/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/node-pre-gyp/lib/util/compile.js:85:20)\r\n\u2502 node-pre-gyp ERR! stack at ChildProcess.emit (node:events:518:28)\r\n\u2502 node-pre-gyp ERR! stack at maybeClose (node:internal/child_process:1104:16)\r\n\u2502 node-pre-gyp ERR! stack at ChildProcess._handle.onexit (node:internal/child_process:304:5)\r\n\u2502 node-pre-gyp ERR! System Linux 6.9.3-76060903-generic\r\n\u2502 node-pre-gyp ERR! command \"/home/agyn/.nvm/versions/node/v20.18.1/bin/node\" \"/home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus/node_modules/.bin/node-pre-gyp\" \"insta\u2026\r\n\u2502 node-pre-gyp ERR! cwd /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\n\u2502 node-pre-gyp ERR! node -v v20.18.1\r\n\u2502 node-pre-gyp ERR! node-pre-gyp -v v0.4.5\r\n\u2502 node-pre-gyp ERR! not ok \r\n\u2502 Failed to execute '/home/agyn/.nvm/versions/node/v20.18.1/bin/node /home/agyn/Desktop/AI agents/j2/eliza/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/hom\u2026\r\n\u2514\u2500 Failed in 38.1s at /home/agyn/Desktop/AI agents/j2/eliza/node_modules/@discordjs/opus\r\nnode_modules/canvas: Running install script, done in 21.5s\r\n\u2009ELIFECYCLE\u2009 Command failed with exit code 1."
},
{
- "path": "docs/api/functions/getProviders.md",
- "additions": 2,
- "deletions": 2
+ "author": "agyn-ub",
+ "body": "> ~/dev/eliza #v0.1.6-alpha.4 pnpm install \u2714 23.3.0 \u2b22 11:00:24 AM Scope: all 46 workspace projects Lockfile is up to date, resolution step is skipped \u2009ERR_PNPM_UNSUPPORTED_ENGINE\u2009 Unsupported environment (bad pnpm and/or Node.js version)\r\n> \r\n> Your Node version is incompatible with \"@lens-protocol/client@2.2.0(@lens-protocol/metadata@1.2.0)(ethers@6.13.4)(react@18.3.1)\".\r\n> \r\n> Expected version: >=18 <21 Got: v23.3.0\r\n> \r\n> This is happening because the package's manifest has an engines.node field specified. To fix this issue, install the required Node version. ~/dev/eliza #v0.1.6-alpha.4\r\n> \r\n> I get this issue as well\r\n\r\nthank you so much my friend, I have downgraded node version to 18 is command executed ok. It is confusing because in the documentation were written that it must be node version 23+ "
},
{
- "path": "docs/api/functions/getRelationship.md",
- "additions": 2,
- "deletions": 2
- },
+ "author": "digitalsimboja",
+ "body": "> > ~/dev/eliza #v0.1.6-alpha.4 pnpm install \u2714 23.3.0 \u2b22 11:00:24 AM Scope: all 46 workspace projects Lockfile is up to date, resolution step is skipped \u2009ERR_PNPM_UNSUPPORTED_ENGINE\u2009 Unsupported environment (bad pnpm and/or Node.js version)\r\n> > Your Node version is incompatible with \"@lens-protocol/client@2.2.0(@lens-protocol/metadata@1.2.0)(ethers@6.13.4)(react@18.3.1)\".\r\n> > Expected version: >=18 <21 Got: v23.3.0\r\n> > This is happening because the package's manifest has an engines.node field specified. To fix this issue, install the required Node version. ~/dev/eliza #v0.1.6-alpha.4\r\n> > I get this issue as well\r\n> \r\n> thank you so much my friend, I have downgraded node version to 18 is command executed ok. It is confusing because in the documentation were written that it must be node version 23+\r\n\r\nI have a hell of dependencies issues. How did you downgrade yours to version 18 without conflicting with other projects? Did you change the node engine specifications from 23+ to 18?"
+ }
+ ]
+ }
+ ]
+ },
+ "engagement": {
+ "total_comments": 7,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "tungpun",
+ "score": 10,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/5058370?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg3ODAsIm5iZiI6MTczNDY0NzU4MCwicGF0aCI6Ii91LzUwNTgzNzAifQ.YGTaug1L0oc7VUfJB_zg2PibAVY09Y_PY48e4fv5qaU&u=59cb956de322867be56c0abee49ab3f28f819e2f&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 2,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1231,
+ "title": "chore: added config to whitelist the telegram users",
+ "state": "OPEN",
+ "merged": false,
+ "created_at": "2024-12-19T08:00:24Z",
+ "updated_at": "2024-12-19T15:43:32Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nThis PR adds functionality to allow developers to whitelist Telegram users, granting them access to the bot.\r\n\r\n## What kind of change is this?\r\nFeatures (non-breaking change which adds functionality)\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
{
- "path": "docs/api/functions/getRelationships.md",
- "additions": 2,
- "deletions": 2
+ "path": ".env.example",
+ "additions": 1,
+ "deletions": 0
},
{
- "path": "docs/api/functions/handleProvider.md",
- "additions": 2,
- "deletions": 2
+ "path": ".gitignore",
+ "additions": 1,
+ "deletions": 0
},
{
- "path": "docs/api/functions/hasEnvVariable.md",
- "additions": 2,
- "deletions": 2
- },
+ "path": "packages/client-telegram/src/messageManager.ts",
+ "additions": 9,
+ "deletions": 1
+ }
+ ],
+ "reviews": [],
+ "comments": [
{
- "path": "docs/api/functions/loadEnvConfig.md",
- "additions": 2,
- "deletions": 2
- },
+ "author": "azep-ninja",
+ "body": "Like this enhancement. I recently added one to whitelist Telegram groups.\r\n\r\nHonestly think this might make more sense within the characters client config, similar to what I added.\r\n\r\nYou'll need to modify the types for the character file, but keeps the ENV less cluttered.\r\n\r\nReference: https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts\r\n\r\n![image](https://github.com/user-attachments/assets/665edc1f-cab5-48de-adc2-e59e1629bdde)\r\n\r\nAnd you can see how that was/is used in the messageManager.ts file for reference."
+ }
+ ]
+ },
+ {
+ "number": 1230,
+ "title": "chore: added config for to whitelist telegram user",
+ "state": "CLOSED",
+ "merged": false,
+ "created_at": "2024-12-19T07:54:59Z",
+ "updated_at": "2024-12-19T07:58:12Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nThis PR adds functionality to allow developers to whitelist Telegram users, granting them access to the bot.\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
{
- "path": "docs/api/functions/parseBooleanFromText.md",
- "additions": 2,
- "deletions": 2
+ "path": ".env.example",
+ "additions": 1,
+ "deletions": 0
},
{
- "path": "docs/api/functions/parseJSONObjectFromText.md",
- "additions": 2,
- "deletions": 2
+ "path": ".gitignore",
+ "additions": 1,
+ "deletions": 0
},
{
- "path": "docs/api/functions/parseJsonArrayFromText.md",
- "additions": 2,
- "deletions": 2
- },
+ "path": "packages/client-telegram/src/messageManager.ts",
+ "additions": 12,
+ "deletions": 1
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "madjin",
+ "score": 10,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/32600939?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91LzMyNjAwOTM5In0.7vW8aT743AJl04-9zh_3YYJMLQj9qo88pIJX0PCwUco&u=cdcf89f44c7a50906c7a80d889efa85023af2049&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 0,
+ "commits": [],
+ "pull_requests": []
+ },
+ "issues": {
+ "total_opened": 4,
+ "opened": [
+ {
+ "number": 1224,
+ "title": "feat: Auto-Documentation Synchronization Bot",
+ "state": "OPEN",
+ "created_at": "2024-12-19T02:03:53Z",
+ "updated_at": "2024-12-19T02:03:53Z",
+ "body": "## **Overview**\r\nCreate an AI assistant to maintain documentation consistency and generate documentation from code.\r\n\r\n## **Current Situation**\r\n\r\nDocumentation gaps often go unnoticed, leading to challenges during onboarding, feature development, and integrations. Outdated information can result in inefficiencies, with developers spending unnecessary time answering questions that could otherwise be handled by AI if up-to-date documentation were available\r\n\r\n## **Proposed Solution**\r\n\r\nFirst finish this issue: https://github.com/ai16z/eliza/issues/1110\r\nNext document plugins so that we have a quality reference: https://github.com/ai16z/eliza/issues/1200\r\n\r\nThen build a documentation bot that:\r\n1. Tracks and reports TODO comments in code (automate this flow https://github.com/ai16z/eliza/issues/1223)\r\n2. Tracks and reports missing plugin docs: (automate this https://github.com/ai16z/eliza/issues/1200)\r\n3. Tracks commits / issues / PRs and flags docs pages that might need updating\r\n4. Suggest documentation updates of those pages\r\n\r\n## **Technical Details**\r\n\r\n\r\n",
+ "labels": [
{
- "path": "docs/api/functions/parseShouldRespondFromText.md",
- "additions": 2,
- "deletions": 2
+ "name": "documentation",
+ "color": "0075ca",
+ "description": "Improvements or additions to documentation"
},
{
- "path": "docs/api/functions/splitChunks.md",
- "additions": 2,
- "deletions": 2
+ "name": "enhancement",
+ "color": "a2eeef",
+ "description": "New feature or request"
},
{
- "path": "docs/api/functions/stringToUuid.md",
- "additions": 2,
- "deletions": 2
- },
+ "name": "automation",
+ "color": "FC49CF",
+ "description": ""
+ }
+ ],
+ "comments": []
+ },
+ {
+ "number": 1223,
+ "title": "chore: Review TODO notes",
+ "state": "OPEN",
+ "created_at": "2024-12-19T01:50:45Z",
+ "updated_at": "2024-12-19T01:51:37Z",
+ "body": "**Describe the bug**\r\n\r\nSee what the TODO notes are about, update their status or document as an issue if needed\r\n\r\n- [ ] agent/src/index.ts\r\n- [ ] packages/core/src/models.ts\r\n- [ ] packages/core/src/runtime.ts\r\n- [ ] packages/core/src/environment.ts\r\n- [ ] packages/core/src/memory.ts\r\n- [ ] packages/plugin-starknet/src/providers/trustScoreProvider.ts\r\n- [ ] packages/plugin-starknet/src/providers/token.ts\r\n- [ ] packages/plugin-starknet/src/actions/takeOrder.ts\r\n- [ ] packages/plugin-starknet/src/actions/transfer.ts\r\n- [ ] packages/plugin-starknet/readme.md\r\n- [ ] packages/adapter-sqlite/src/sqliteTables.ts\r\n- [ ] packages/adapter-sqljs/src/index.ts\r\n- [ ] packages/adapter-sqljs/src/sqliteTables.ts\r\n- [ ] packages/plugin-node/src/services/transcription.ts\r\n- [ ] packages/plugin-node/src/services/browser.ts\r\n- [ ] packages/client-twitter/src/search.ts\r\n- [ ] packages/client-twitter/src/base.ts\r\n- [ ] packages/plugin-solana/src/evaluators/trust.ts\r\n- [ ] packages/plugin-solana/src/providers/trustScoreProvider.ts\r\n- [ ] packages/plugin-solana/src/actions/swap.ts\r\n- [ ] packages/plugin-solana/src/actions/takeOrder.ts\r\n- [ ] packages/plugin-evm/src/actions/bridge.ts\r\n- [ ] packages/plugin-evm/src/actions/swap.ts\r\n- [ ] packages/plugin-flow/src/types/fcl.d.ts\r\n- [ ] packages/plugin-flow/src/actions/transfer.ts\r\n- [ ] packages/plugin-nft-generation/src/index.ts\r\n- [ ] packages/plugin-image-generation/src/index.ts\r\n- [ ] packages/client-farcaster/src/client.ts\r\n- [ ] packages/adapter-supabase/src/index.ts\r\n- [ ] packages/client-lens/src/actions.ts\r\n- [ ] packages/client-lens/src/client.ts\r\n- [ ] packages/client-lens/src/interactions.ts\r\n- [ ] packages/client-discord/src/utils.ts\r\n- [ ] packages/client-discord/src/attachments.ts\r\n- [ ] packages/client-discord/src/messages.ts\r\n- [ ] packages/client-discord/src/actions/chat_with_attachments.ts\r\n- [ ] packages/client-discord/src/actions/summarize_conversation.ts\r\n- [ ] packages/client-slack/src/events.ts\r\n\r\n\r\n**To Reproduce**\r\n\r\nTo find the files to fix:\r\n\r\n`grep -ro \"TODO\" --exclude-dir=node_modules --exclude-dir=dist | uniq` \r\n\r\nSome examples `grep -roP \"TODO\\s*.*\" --exclude-dir=node_modules`\r\n```\r\nagent/src/index.ts:TODO: Add Slack client to the list\r\npackages/core/dist/index.js:TODO: check\r\npackages/core/dist/index.js:TODO: ?download=true\r\npackages/client-discord/src/utils.ts:TODO: clean this up\r\npackages/client-discord/src/attachments.ts:TODO: clean this up\r\npackages/client-discord/src/messages.ts:TODO: This is throwing an error but seems to work?\r\npackages/client-discord/src/messages.ts:TODO: Move to attachments manager\r\npackages/client-discord/src/actions/chat_with_attachments.ts:TODO: make this dynamic and generic\r\npackages/client-discord/src/actions/summarize_conversation.ts:TODO: parse start and end into timestamps\r\npackages/client-slack/src/events.ts:TODO: Implement reaction handling\r\n```\r\n\r\n**Expected behavior**\r\n\r\ngithub issue or cleaning up the code\r\n\r\n**Screenshots**\r\n\r\n![image](https://github.com/user-attachments/assets/ed48b42c-7701-4432-a284-5e8143f93227)\r\n\r\n\r\n**Additional context**\r\n\r\n\r\n",
+ "labels": [
{
- "path": "docs/api/functions/trimTokens.md",
- "additions": 2,
- "deletions": 2
+ "name": "bug",
+ "color": "d73a4a",
+ "description": "Something isn't working"
},
{
- "path": "docs/api/functions/updateGoal.md",
- "additions": 2,
- "deletions": 2
+ "name": "documentation",
+ "color": "0075ca",
+ "description": "Improvements or additions to documentation"
},
{
- "path": "docs/api/functions/validateCharacterConfig.md",
- "additions": 2,
- "deletions": 2
- },
+ "name": "good first issue",
+ "color": "7057ff",
+ "description": "Good for newcomers"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "number": 1222,
+ "title": "chore: Keeps README translations synchronized",
+ "state": "OPEN",
+ "created_at": "2024-12-19T00:33:42Z",
+ "updated_at": "2024-12-19T00:33:43Z",
+ "body": "**Is your feature request related to a problem? Please describe.**\r\n\r\nThere are now a lot of language translated READMEs in the repo. If we implement a change in one, we have to manually cascade the changes in order.\r\n\r\n**Describe the solution you'd like**\r\n\r\nScript that uses AI (ollama / openai) that cascades changes when the english README.md file changes. Translates / updates all the other README files. Github CI would be a nice touch too\r\n\r\n**Describe alternatives you've considered**\r\n\r\n**Additional context**\r\n\r\n![image](https://github.com/user-attachments/assets/72cc29ce-6a5d-4cbc-9d6b-b6f07c09f399)\r\n",
+ "labels": [
{
- "path": "docs/api/functions/validateEnv.md",
- "additions": 2,
- "deletions": 2
+ "name": "documentation",
+ "color": "0075ca",
+ "description": "Improvements or additions to documentation"
},
{
- "path": "docs/api/index.md",
- "additions": 1,
- "deletions": 1
- },
+ "name": "good first issue",
+ "color": "7057ff",
+ "description": "Good for newcomers"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "number": 1221,
+ "title": "feat: Eliza Code Assistant default characterfile",
+ "state": "OPEN",
+ "created_at": "2024-12-19T00:21:13Z",
+ "updated_at": "2024-12-19T08:08:35Z",
+ "body": "**Overview**\r\nCreate an AI-powered development guide bot that can assist new contributors and help maintainers by leveraging repository history and documentation. This can be a starter file that teaches people about Eliza as soon as they run Eliza.\r\n\r\n**Current Situation**\r\n- New contributors often ask similar questions in discord / twitter\r\n- Repository knowledge is spread across many files and commit history\r\n- Code review assignments are manual and don't always match expertise\r\n\r\n**Proposed Solution**\r\nBuild an agent that:\r\n1. Answers FAQ-style questions using repo knowledge as recommended first step\r\n2. Suggests relevant examples based on current work\r\n3. Guides contributors to relevant documentation/contributors with answers\r\n\r\n**Technical Implementation**\r\n- Create an eliza characterfile template\r\n - https://elizagen.howieduhzit.best/\r\n- Ingest knowledge about github (prevent duplicate issues, find answers, suggest new issue)\r\n - https://ai16z.github.io/data/daily/contributors.json\r\n - https://ai16z.github.io/data/daily/summary.json\r\n - https://ai16z.github.io/data/daily/summary.md\r\n - https://ai16z.github.io/data/weekly/contributors.json\r\n - https://ai16z.github.io/data/monthly/contributors.json\r\n- Ingest docs + FAQ from discord (https://github.com/ai16z/eliza/issues/1044)\r\n - https://ai16z.github.io/eliza/community/Discord/\r\n\r\n**Integration Points (IDEAS)**\r\n- Discord code assistant\r\n- Website frontend (eliza.gg)\r\n",
+ "labels": [
{
- "path": "docs/api/interfaces/Account.md",
- "additions": 7,
- "deletions": 7
+ "name": "documentation",
+ "color": "0075ca",
+ "description": "Improvements or additions to documentation"
},
{
- "path": "docs/api/interfaces/Action.md",
- "additions": 7,
- "deletions": 7
+ "name": "enhancement",
+ "color": "a2eeef",
+ "description": "New feature or request"
},
{
- "path": "docs/api/interfaces/ActionExample.md",
- "additions": 3,
- "deletions": 3
- },
+ "name": "Bounty",
+ "color": "d93f0b",
+ "description": "Use this to assign a bounty to an issue"
+ }
+ ],
+ "comments": [
{
- "path": "docs/api/interfaces/Actor.md",
- "additions": 5,
- "deletions": 5
- },
+ "author": "maq796113",
+ "body": "how good is the bounty?"
+ }
+ ]
+ }
+ ]
+ },
+ "engagement": {
+ "total_comments": 1,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "simsaidev",
+ "score": 5,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/192255625?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkxNDAsIm5iZiI6MTczNDY0Nzk0MCwicGF0aCI6Ii91LzE5MjI1NTYyNSJ9.m6UXmOZB4P5aDEzW8NlIro6a_oNBtl6QaTF-4MUr8Yc&u=618ee6c5eb68a948ec29fc112d1ad85a34ced79c&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1249,
+ "title": "Release/v.1.0",
+ "state": "CLOSED",
+ "merged": false,
+ "created_at": "2024-12-19T20:46:20Z",
+ "updated_at": "2024-12-19T20:55:58Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nInitial V-1.0 of SimsAI client package for Eliza framework. Used for testing your agents and interacting on the Simsai platform. SimsAI is a social media thats only for agents, allowing humans to only comment, prompt like or repost their followed agents. Jeets or posts by the agents, will eventually be mintable as NFTs to the user with royalties for the creators and the agent wallets.\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow risk. New client, configurable by the user.\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nThis allows agents to post on the SimsAI platform. Specifically, Jeeter the twitter replica for agents.\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\nClient Change. Feature.\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\nTesting can be done by:\r\n\r\n1. Adding necessary env vars.\r\n2. Running as normal (with the dry run variable on with their character file)\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
{
- "path": "docs/api/interfaces/Content.md",
+ "path": ".env.example",
"additions": 7,
- "deletions": 7
- },
- {
- "path": "docs/api/interfaces/ConversationExample.md",
- "additions": 3,
- "deletions": 3
- },
- {
- "path": "docs/api/interfaces/EvaluationExample.md",
- "additions": 4,
- "deletions": 4
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/Evaluator.md",
- "additions": 8,
- "deletions": 8
+ "path": "agent/package.json",
+ "additions": 60,
+ "deletions": 59
},
{
- "path": "docs/api/interfaces/GenerationOptions.md",
+ "path": "agent/src/index.ts",
"additions": 10,
- "deletions": 10
+ "deletions": 3
},
{
- "path": "docs/api/interfaces/Goal.md",
- "additions": 7,
- "deletions": 7
+ "path": "characters/simsai.character.json",
+ "additions": 89,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/IAgentRuntime.md",
- "additions": 36,
- "deletions": 36
+ "path": "packages/client-simsai/.npmignore",
+ "additions": 6,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/IBrowserService.md",
- "additions": 5,
- "deletions": 5
+ "path": "packages/client-simsai/eslint.config.mjs",
+ "additions": 3,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/ICacheAdapter.md",
- "additions": 4,
- "deletions": 4
+ "path": "packages/client-simsai/package.json",
+ "additions": 24,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/ICacheManager.md",
- "additions": 4,
- "deletions": 4
+ "path": "packages/client-simsai/src/index.ts",
+ "additions": 48,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/IDatabaseAdapter.md",
- "additions": 38,
- "deletions": 38
+ "path": "packages/client-simsai/src/jeeter/base.ts",
+ "additions": 607,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/IDatabaseCacheAdapter.md",
- "additions": 4,
- "deletions": 4
+ "path": "packages/client-simsai/src/jeeter/client.ts",
+ "additions": 302,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/IImageDescriptionService.md",
- "additions": 4,
- "deletions": 4
+ "path": "packages/client-simsai/src/jeeter/constants.ts",
+ "additions": 115,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/IMemoryManager.md",
- "additions": 14,
- "deletions": 14
+ "path": "packages/client-simsai/src/jeeter/environment.ts",
+ "additions": 48,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/IPdfService.md",
- "additions": 5,
- "deletions": 5
+ "path": "packages/client-simsai/src/jeeter/interactions.ts",
+ "additions": 465,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/ISpeechService.md",
- "additions": 5,
- "deletions": 5
+ "path": "packages/client-simsai/src/jeeter/post.ts",
+ "additions": 222,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/ITextGenerationService.md",
- "additions": 7,
- "deletions": 7
+ "path": "packages/client-simsai/src/jeeter/search.ts",
+ "additions": 597,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/ITranscriptionService.md",
- "additions": 7,
- "deletions": 7
+ "path": "packages/client-simsai/src/jeeter/types.ts",
+ "additions": 224,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/IVideoService.md",
- "additions": 7,
- "deletions": 7
+ "path": "packages/client-simsai/src/jeeter/utils.ts",
+ "additions": 349,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/Memory.md",
+ "path": "packages/client-simsai/tsconfig.json",
"additions": 10,
- "deletions": 10
- },
- {
- "path": "docs/api/interfaces/MessageExample.md",
- "additions": 3,
- "deletions": 3
- },
- {
- "path": "docs/api/interfaces/Objective.md",
- "additions": 4,
- "deletions": 4
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/Participant.md",
- "additions": 3,
- "deletions": 3
+ "path": "packages/client-simsai/tsup.config.ts",
+ "additions": 20,
+ "deletions": 0
},
{
- "path": "docs/api/interfaces/Provider.md",
- "additions": 2,
+ "path": "packages/core/src/types.ts",
+ "additions": 7,
"deletions": 2
},
{
- "path": "docs/api/interfaces/Relationship.md",
- "additions": 8,
- "deletions": 8
- },
- {
- "path": "docs/api/interfaces/Room.md",
- "additions": 3,
- "deletions": 3
+ "path": "pnpm-lock.yaml",
+ "additions": 23116,
+ "deletions": 18054
}
],
"reviews": [],
@@ -2437,10 +1226,10 @@
}
},
{
- "contributor": "vpavlin",
+ "contributor": "ileana-pr",
"score": 5,
"summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/4759808?u=d045a41a43fa2deabfc3115236cc1e8b0509b164&v=4",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/103957712?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkyMDAsIm5iZiI6MTczNDY0ODAwMCwicGF0aCI6Ii91LzEwMzk1NzcxMiJ9.u9qrd1GMtEVN5qePaZWSeDuQhZDSkFlWmmVmXRCEMKU&u=b865d84e1f5bffd16f907c5318a177dfc9f927d0&v=4",
"activity": {
"code": {
"total_commits": 0,
@@ -2448,71 +1237,68 @@
"commits": [],
"pull_requests": [
{
- "number": 1214,
- "title": "fix: fail when cannot get token, add Akash to generateText switch",
+ "number": 1248,
+ "title": "feat: news-plugin",
"state": "OPEN",
"merged": false,
- "created_at": "2024-12-18T21:21:53Z",
- "updated_at": "2024-12-18T21:28:14Z",
- "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n* this throws when we cannot get a token based on provider (otherwise it silently runs and prints auth errors) - it is a change in behaviour\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nThis fixes 2 issues I've hit:\r\n* When I setup Akash provider I got `Unsupported provider error` because it was missing in `generateText` switch\r\n* When I was trying to update eliza-starter and use it with Akash or Venice, I'd get auth errors because it could not get the provider token - since the `getTokenForProvider` did not account for the new providers, but it would not fail there, hence adding a `default` case which throwa\r\n\r\ncc @MbBrainz\r\n\r\n## What kind of change is this?\r\n\r\nBug fixes\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n* You can try to use Akash provider and chat with the agent - it should result in `Unsupported provider error` without this change\r\n* You can also try to configure some unknown provider and gcall `getTokenForProvider` andthe function will not report any errors without this change \r\n\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n## Discord username\r\n@vpavlin\r\n\r\n",
+ "created_at": "2024-12-19T20:30:07Z",
+ "updated_at": "2024-12-19T20:31:12Z",
+ "body": "\r\n\r\n# Relates to:\r\nAI Agent Dev School Video #2: https://www.youtube.com/watch?v=XenGeAcPAQo&t=3383s \r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow \r\n\r\n\r\n\r\n# Background\r\nShaw shows us how to create a simple plugin that returns the latest news on a specific topic. This is an example code of a completed currentNewsAction. It can be modified and expanded for added functionality. \r\n\r\n## What does this PR do?\r\n\r\nAdds an example of the news plugin described by Shaw. \r\n\r\n## What kind of change is this?\r\n\r\nFeatures \r\n\r\n\r\n\r\n\r\n\r\n\r\nIt will help future students to see an example of the code and more experienced devs to add functionality to a useful plugin. \r\n\r\n# Documentation changes needed?\r\n\r\nnone, but I can add documentation \r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\nI tested the plugin with C3PO character and was able to retrieve news on different topics. \r\n\r\nFormatting of the output can use some improvement. \r\n\r\n## Where should a reviewer start?\r\n\r\nnews.ts \r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
"files": [
+ {
+ "path": ".env.example",
+ "additions": 3,
+ "deletions": 0
+ },
+ {
+ "path": "agent/package.json",
+ "additions": 1,
+ "deletions": 0
+ },
{
"path": "agent/src/index.ts",
- "additions": 4,
+ "additions": 2,
"deletions": 0
},
{
- "path": "packages/core/src/generation.ts",
+ "path": "packages/plugin-news/.npmignore",
+ "additions": 6,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/eslint.config.mjs",
+ "additions": 3,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/package.json",
+ "additions": 19,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/src/actions/index.ts",
"additions": 2,
- "deletions": 1
- }
- ],
- "reviews": [],
- "comments": [
+ "deletions": 0
+ },
{
- "author": "vpavlin",
- "body": "Wait, should I use `develop` or `main` as a base?"
- }
- ]
- }
- ]
- },
- "issues": {
- "total_opened": 0,
- "opened": []
- },
- "engagement": {
- "total_comments": 0,
- "total_reviews": 0,
- "comments": [],
- "reviews": []
- }
- }
- },
- {
- "contributor": "netdragonx",
- "score": 5,
- "summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/100390508?u=0805360e7258c798433b4d3f63a4c0457c178942&v=4",
- "activity": {
- "code": {
- "total_commits": 0,
- "total_prs": 1,
- "commits": [],
- "pull_requests": [
- {
- "number": 1202,
- "title": "fix: optional chaining on search to avoid startup errors when search is not enabled",
- "state": "OPEN",
- "merged": false,
- "created_at": "2024-12-18T09:52:31Z",
- "updated_at": "2024-12-18T10:11:57Z",
- "body": "\r\n\r\n# Relates to:\r\nclient-twitter\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\nLow\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nAdds optional chaining to twitter search setup to prevent an error on startup when search code is active but not enabled.\r\n\r\n## What kind of change is this?\r\nBug fix.\r\n\r\n\r\n\r\n\r\n\r\n## Why are we doing this? Any context or related work?\r\nWhen working with twitter search, the agent throws errors when I activate the search code but disable search in .env\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\nRun twitter agent with `TWITTER_SEARCH_ENABLE=FALSE` and there should be no error on startup\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
- "files": [
+ "path": "packages/plugin-news/src/actions/news.ts",
+ "additions": 172,
+ "deletions": 0
+ },
{
- "path": "packages/client-twitter/src/index.ts",
- "additions": 14,
- "deletions": 17
+ "path": "packages/plugin-news/src/index.ts",
+ "additions": 10,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/tsconfig.json",
+ "additions": 13,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-news/tsup.config.ts",
+ "additions": 20,
+ "deletions": 0
}
],
"reviews": [],
@@ -2533,10 +1319,10 @@
}
},
{
- "contributor": "Hdpbilly",
+ "contributor": "karelvuong",
"score": 5,
"summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/168072844?u=04895ee023be4c6ff9a630d14f55c15ee0d9f502&v=4",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/95452264?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0ODAsIm5iZiI6MTczNDY0NzI4MCwicGF0aCI6Ii91Lzk1NDUyMjY0In0.oN52fhkgFgvEaNu1V3xXp5TP8PU9DPwM0A0M4KD5yBM&u=a0ca99a025844781a3b09ed9616bf1308ffaa601&v=4",
"activity": {
"code": {
"total_commits": 0,
@@ -2544,27 +1330,66 @@
"commits": [],
"pull_requests": [
{
- "number": 1199,
- "title": "feat: added 12 new routes for runtime parameters",
+ "number": 1247,
+ "title": "feat: Add Treasure Plugin",
"state": "OPEN",
"merged": false,
- "created_at": "2024-12-18T08:04:22Z",
- "updated_at": "2024-12-18T17:23:19Z",
- "body": "\r\n\r\n# Relates to:\r\nN/A - Initial API routes documentation\r\n\r\n\r\n\r\n\r\n# Risks\r\nLow - These are read-only API endpoints that expose internal agent state. No write operations except for /set endpoint.\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nAdds comprehensive API routes to the agent framework that expose internal state and capabilities through REST endpoints. This includes routes for:\r\n\r\nAgent state and configuration\r\nMemory and cache inspection\r\nService and plugin discovery\r\nMetrics and monitoring\r\nRelationship and room management\r\n## What kind of change is this?\r\nFeatures (non-breaking change which adds functionality)\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\nChanges required to the project documentation to document all available API endpoints and their usage.\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\nStart with basic routes like /agents and /agents/:agentId to verify basic functionality\r\nTest state inspection routes like /state, /memories, and /cache\r\nVerify component discovery through /services, /plugins, and /providers\r\nCheck monitoring capabilities via /metrics\r\n## Detailed testing steps\r\nStart agent framework with npm start\r\nGet list of agents: curl http://localhost:3000/agents\r\nFor each agent ID:\r\n\r\nTest state endpoint: curl http://localhost:3000/agents/{id}/state\r\nVerify services: curl http://localhost:3000/agents/{id}/services\r\nCheck metrics: curl http://localhost:3000/agents/{id}/metrics\r\nView memories: curl http://localhost:3000/agents/{id}/memories\r\nInspect plugins: curl http://localhost:3000/agents/{id}/plugins\r\nTest providers: curl http://localhost:3000/agents/{id}/providers\r\nVerify relationships: curl http://localhost:3000/agents/{id}/relationships\r\nCheck rooms: curl http://localhost:3000/agents/{id}/rooms\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nRequires server restart to enable new API endpoints. No database changes needed.\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "created_at": "2024-12-19T20:15:23Z",
+ "updated_at": "2024-12-19T20:18:35Z",
+ "body": "\r\n\r\n# Relates to:\r\nAdds Treasure support for Eliza agents.\r\n\r\n# Risks\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n[Treasure](https://treasure.lol) is a gaming-centric L2 rollup built on ZKsync. This PR adds support for Eliza to interact with the Treasure mainnet, with logic/implementation borrowed from #1225 and #1128.\r\n\r\nInitially, only the `transfer` function has been supported with additional features to come to hook into the Treasure Development Kit (TDK), Magicswap, and other Treasure platform features.\r\n\r\n## What kind of change is this?\r\n\r\nFeature\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\nSpin up an agent with the `treasure` plugin + review `plugin-treasure`.\r\n\r\n## Detailed testing steps\r\n1. In `.env`, should set the value for `TREASURE_ADDRESS` (public address for the agent account), `TREASURE_PRIVATE_KEY` (private key for the same account), and `TREASURE_RPC_URL` as https://rpc.treasure.lol.\r\nTo test the transfer function properly, this address needs tokens. [Treasure Bridge](https://bridge.treasure.lol/) can be used to bridge MAGIC directly from `arb1` to an address on `treasure`.\r\n2. Run the agent and prompt it with: \"Send 0.1 MAGIC to \" - e.g. \"send 0.1 MAGIC to 0x7A6a48b8e7BD3451Fc57f01Ad9Aaea62cdf5956E\"\r\n3. Assuming you had 1 MAGIC to send, the agent will confirm and respond with the tx hash, e.g. \"Successfully sent 1 MAGIC to 0x7A6a48b8e7BD3451Fc57f01Ad9Aaea62cdf5956E\r\nTransaction: 0x45759cf3e76d26610154a094c87572fbd7f5ef909f62c4ea13f7defb0d87cf0b\"\r\nThe tx hash can be checked on the Treasure Block Explorer (https://treasurescan.io/)",
"files": [
{
- "path": "packages/client-direct/src/api.ts",
- "additions": 259,
+ "path": ".env.example",
+ "additions": 5,
"deletions": 0
- }
- ],
- "reviews": [
+ },
{
- "author": "odilitime",
- "state": "APPROVED",
- "body": ""
+ "path": "agent/package.json",
+ "additions": 60,
+ "deletions": 59
+ },
+ {
+ "path": "agent/src/index.ts",
+ "additions": 7,
+ "deletions": 3
+ },
+ {
+ "path": "packages/plugin-treasure/package.json",
+ "additions": 20,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-treasure/src/actions/transfer.ts",
+ "additions": 215,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-treasure/src/environment.ts",
+ "additions": 43,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-treasure/src/index.ts",
+ "additions": 13,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-treasure/tsconfig.json",
+ "additions": 10,
+ "deletions": 0
+ },
+ {
+ "path": "packages/plugin-treasure/tsup.config.ts",
+ "additions": 20,
+ "deletions": 0
+ },
+ {
+ "path": "pnpm-lock.yaml",
+ "additions": 21,
+ "deletions": 0
}
],
+ "reviews": [],
"comments": []
}
]
@@ -2575,17 +1400,17 @@
},
"engagement": {
"total_comments": 0,
- "total_reviews": 1,
+ "total_reviews": 0,
"comments": [],
"reviews": []
}
}
},
{
- "contributor": "cwrage77",
+ "contributor": "robin-rrt",
"score": 5,
"summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/10321212?u=deda48521940edac89df630f85a5f9df5cdcb95b&v=4",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/66296664?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5NjAsIm5iZiI6MTczNDY0Nzc2MCwicGF0aCI6Ii91LzY2Mjk2NjY0In0.xDIk15VBLjxq_UQ581P8lfJH4UZ_Es24hWAMsjRhmL0&u=3c317252695c6601ff8f1189de214e05a87458bd&v=4",
"activity": {
"code": {
"total_commits": 0,
@@ -2593,22 +1418,17 @@
"commits": [],
"pull_requests": [
{
- "number": 1193,
- "title": "Feature/news plugin",
- "state": "CLOSED",
+ "number": 1241,
+ "title": "feat: add avail plugin",
+ "state": "OPEN",
"merged": false,
- "created_at": "2024-12-18T02:55:07Z",
- "updated_at": "2024-12-18T02:55:44Z",
- "body": "\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "created_at": "2024-12-19T15:54:49Z",
+ "updated_at": "2024-12-19T15:59:35Z",
+ "body": "\r\n\r\n# Relates to:\r\n\r\nN/A\r\n\r\n\r\n\r\n# Risks\r\n\r\nLow.\r\nThe main implementation risk is that the Plugin doesn't work as intended.\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n[Avail](https://www.availproject.org/) aims to accelerate Web3's unification using its cutting-edge modular technology stack, which combines data availability, aggregation, and shared security.\r\n\r\nIn this version, the `transfer` and `submitData` actions are supported.\r\n\r\nMultiple L2s are working with Avail to meet their data availability and interoperability needs.\r\n\r\n## What kind of change is this?\r\n\r\nFeatures (non-breaking change which adds functionality)\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\nSince Avail is a Substrate based network, and not EVM-compatible (cannot work with `plugin-evm`), it requires some docs to show how to submit data and transfer tokens. I have updated the documentation accordingly in the README for the plugin.\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\nMost of the changes are in `plugin-avail`\r\n\r\n\r\n## Detailed testing steps\r\n- In `.env` you should set the value for `AVAIL_ADDRESS` (this is the public address for the agent account) and `AVAIL_SEED` (seed phrase for the same account).\r\n- **Transfer AVAIL**\r\n - To test transfer function, you need tokens in your Avail account. On testnet, you can use the [Avail Faucet](https://faucet.avail.tools/). If you need more please ping me, and I can send it over. \r\n - Run the agent and prompt it with: \"send 1 AVAIL to \" - e.g. `send 1 AVAIL to 5GWbvXjefEvXXETtKQH7YBsUaPc379KAQATW1eqeJT26cbsK`\r\n - Assuming everything goes smoothly the agent returns with the Tx Hash, and Block Hash. \r\nThe tx hash can be checked on the Avail block explorer at https://avail-turing.subscan.io/\r\n- **Submit Data**\r\n - To test data submission, you need tokens in your Avail account to pay fees. On testnet, you can use the [Avail Faucet](https://faucet.avail.tools/). If you need more please ping me, and I can send it over. \r\n - Run the agent and prompt it with: \"Submit the following data to Avail \" - e.g. `Submit the following data to Avail \"Hello World!\"`\r\n - Assuming everything goes smoothly the agent returns with the Tx Hash, and Block Hash. \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n## Discord username\r\nRobinRRT\r\n\r\n",
"files": [
{
- "path": ".gitignore",
- "additions": 56,
- "deletions": 54
- },
- {
- "path": "PZ-README.md",
- "additions": 14,
+ "path": ".env.example",
+ "additions": 6,
"deletions": 0
},
{
@@ -2618,73 +1438,63 @@
},
{
"path": "agent/src/index.ts",
- "additions": 2,
- "deletions": 0
- },
- {
- "path": "characters/courage.character.json",
- "additions": 182,
- "deletions": 0
- },
- {
- "path": "characters/cryptodegen.character.json",
- "additions": 265,
+ "additions": 3,
"deletions": 0
},
{
- "path": "packages/plugin-news/.npmignore",
+ "path": "packages/plugin-avail/.npmignore",
"additions": 6,
"deletions": 0
},
{
- "path": "packages/plugin-news/eslint.config.mjs",
- "additions": 3,
+ "path": "packages/plugin-avail/README.md",
+ "additions": 25,
"deletions": 0
},
{
- "path": "packages/plugin-news/package.json",
- "additions": 19,
+ "path": "packages/plugin-avail/eslint.config.mjs",
+ "additions": 3,
"deletions": 0
},
{
- "path": "packages/plugin-news/src/actions/index.ts",
- "additions": 2,
+ "path": "packages/plugin-avail/package.json",
+ "additions": 21,
"deletions": 0
},
{
- "path": "packages/plugin-news/src/actions/newsSearch.ts",
- "additions": 215,
+ "path": "packages/plugin-avail/src/actions/submitData.ts",
+ "additions": 238,
"deletions": 0
},
{
- "path": "packages/plugin-news/src/evaluators/index.ts",
- "additions": 1,
+ "path": "packages/plugin-avail/src/actions/transfer.ts",
+ "additions": 237,
"deletions": 0
},
{
- "path": "packages/plugin-news/src/index.ts",
- "additions": 16,
+ "path": "packages/plugin-avail/src/environment.ts",
+ "additions": 36,
"deletions": 0
},
{
- "path": "packages/plugin-news/src/providers/index.ts",
- "additions": 0,
+ "path": "packages/plugin-avail/src/index.ts",
+ "additions": 23,
"deletions": 0
},
{
- "path": "packages/plugin-news/tsconfig.json",
+ "path": "packages/plugin-avail/tsconfig.json",
"additions": 13,
"deletions": 0
},
{
- "path": "packages/plugin-news/tsup.config.ts",
- "additions": 20,
+ "path": "packages/plugin-avail/tsup.config.ts",
+ "additions": 21,
"deletions": 0
},
{
"path": "pnpm-lock.yaml",
- "additions": 15,
- "deletions": 22
+ "additions": 0,
+ "deletions": 37536
}
],
"reviews": [],
@@ -2705,10 +1515,10 @@
}
},
{
- "contributor": "BlockchainCake",
- "score": 3,
+ "contributor": "stopmalone",
+ "score": 5,
"summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/24722374?u=c5a6378d6a918ac7d6ae7de796e4cd85ca91c4c3&v=4",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/191122176?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0ODAsIm5iZiI6MTczNDY0NzI4MCwicGF0aCI6Ii91LzE5MTEyMjE3NiJ9.ybYAjXg2xaOgZcqMmzsOuJjvH0kd5lS5Gz7MnOiTJ7Q&v=4",
"activity": {
"code": {
"total_commits": 0,
@@ -2716,97 +1526,102 @@
"commits": [],
"pull_requests": [
{
- "number": 1212,
- "title": "Add EVM Client for blockchain event monitoring",
+ "number": 1238,
+ "title": "Feat/deva client integration",
"state": "OPEN",
"merged": false,
- "created_at": "2024-12-18T20:54:14Z",
- "updated_at": "2024-12-18T20:54:14Z",
- "body": "# Add EVM Client for blockchain events\r\n\r\nThis PR adds a new client that enables Eliza agents to monitor and discuss EVM blockchain events through Discord.\r\n\r\n## Features\r\n- WebSocket connection to EVM-compatible chains\r\n- Smart contract event monitoring and decoding\r\n- Natural language discussion of events through Discord\r\n- Event memory storage and formatting\r\n- Automatic reconnection handling\r\n\r\n## Implementation\r\n- Core WebSocket client with ethers.js\r\n- Message manager for event processing\r\n- Discord channel integration\r\n- USDC/DAI Uniswap swap monitoring as reference implementation\r\n\r\n## Documentation\r\n- Full README with setup guide\r\n- Implementation examples\r\n- Code comments and type definitions\r\n\r\nThis extends Eliza's capabilities with blockchain event monitoring while following the framework's patterns for client integration.",
+ "created_at": "2024-12-19T12:44:48Z",
+ "updated_at": "2024-12-19T17:45:19Z",
+ "body": "# Pull Request: Integrate Deva into Eliza\r\n\r\n## Relates to\r\n\r\nThis PR adds a new [Deva](https://www.deva.me/) client integration for the Eliza AI agent, enabling posting and scheduling posts to the [Deva](https://www.deva.me/) feed.\r\n\r\n## Risks\r\n\r\n- **Minimal Risk**: This integration is additive and does not alter existing functionalities of Eliza.\r\n- **Dependency Management**: Introduces a new dependency on Deva's API, which requires monitoring for future updates or changes.\r\n- **Data Privacy**: Ensures that any data shared between Eliza and Deva complies with our privacy policies.\r\n\r\n## Background\r\n\r\n### What does this PR do?\r\n\r\nThis PR introduces the capability to post and schedule content directly to the [Deva platform](https://www.deva.me/) from the Eliza AI agent. Users can now seamlessly integrate their Eliza-generated content with [Deva](https://www.deva.me/), enhancing their content distribution and engagement strategies.\r\n\r\n### What kind of change is this?\r\n\r\n**Feature**: This is a non-breaking change that adds new functionality to the Eliza AI agent by integrating with Deva\u2019s API for posting and scheduling content.\r\n\r\n## Documentation Changes Needed?\r\n\r\nNot at the moment.\r\n\r\n## Testing\r\n\r\n### Detailed Testing Steps\r\n\r\n1. **Create a Deva Account**\r\n - Navigate to [deva.me](https://www.deva.me/), create an account, and press the \"Get Started\" button in the top right.\r\n - ![Get Started](https://github.com/user-attachments/assets/a31ebe01-3ee7-40f5-8e30-f59c79c642fe)\r\n\r\n2. **Complete Onboarding**\r\n - Click through the onboarding screens and connect your preferred social account (e.g., Twitter) to Deva.\r\n\r\n3. **Access the Deva Feed**\r\n - You can now see the Deva feed, where you can post and interact with other Devas.\r\n - \r\n\r\n4. **Create an Application to get the token**\r\n - At this point, you'll be able to get a token to interact with Deva, to do so: \r\n - Navigate to Apps chapter in settings by clicking the user icon in top right corner and then settings -> Apps, or opening [apps](https://www.deva.me/settings/apps)\r\n - Press Apps and Session\r\n
![image](https://github.com/user-attachments/assets/9fda36ac-3675-4f30-8c48-9b91e71a741e)\r\n - Press Create new app\r\n
![image](https://github.com/user-attachments/assets/32fc9b04-510e-4a90-876c-e4f6d2e562d7)\r\n - You are redirected to the form of the app creation, Name, Redirect URL and descriptions are necessary fields. Permissions are preselected and they are exactly enough for Eliza agent to post a message in feed.\r\n - After creating an app, select it from the list of apps;\r\n - Inside you will find a Get Token button, to generate a new token for your app:\r\n
![image](https://github.com/user-attachments/assets/307ab088-0508-496e-bc8e-4ded833e8b4f)\r\n - Later, it'll be visible in the list:\r\n
![image](https://github.com/user-attachments/assets/39034c0d-3cf3-4a69-aaab-8cd1740d9ba6)\r\n\r\n5. **Update Environment Variables**\r\n - Once you have the token, update the environment variables in the `.env` file:\r\n ```env\r\n DEVA_API_KEY=YourApiKey\r\n DEVA_API_BASE_URL=https://api.deva.me # Production API URL\r\n ```\r\n\r\n6. **Select Deva Client as Default Character**\r\n - Select the Deva client as Eliza's default character and choose the desired model:\r\n
![Select Deva Client](https://github.com/user-attachments/assets/1120ebb4-4618-4364-bbf8-7040b6bda8c0)\r\n\r\n7. **Run the Application**\r\n - Execute the following commands to install dependencies and start the application:\r\n ```bash\r\n pnpm install && pnpm start\r\n ```\r\n - This will initiate the Deva client:\r\n
![Initiate Deva Client](https://github.com/user-attachments/assets/4ef64f0b-c2c1-4a4b-a6b5-0461433af022)\r\n - Fetch the persona associated with your agent and the posts that you have pushed to the Deva feed:\r\n
![Fetch Persona and Posts](https://github.com/user-attachments/assets/5a698b06-b616-47cc-8318-355a91cc424c)\r\n - Once done, Eliza will post one message to the Deva feed immediately and schedule another one as a test message:\r\n
![Post Messages](https://github.com/user-attachments/assets/523d69f4-1f3f-4d49-82a1-163e3cd4d128)\r\n8. **Eliza agent's post is in the feed!**\r\n - \r\n\r\n\r\n### Staging Environment Testing\r\n\r\nTo avoid populating the production Deva feed, you can perform the same flow in the [staging environment](https://staging.deva.me/). Ensure you update the related environment variable:\r\n\r\n```env\r\nDEVA_API_BASE_URL=https://api-staging.deva.me # Staging API URL\r\n",
"files": [
{
- "path": "agent/package.json",
+ "path": ".env.example",
+ "additions": 4,
+ "deletions": 0
+ },
+ {
+ "path": ".gitignore",
"additions": 2,
"deletions": 0
},
+ {
+ "path": "agent/package.json",
+ "additions": 1,
+ "deletions": 0
+ },
{
"path": "agent/src/index.ts",
"additions": 6,
"deletions": 0
},
{
- "path": "packages/client-discord/src/index.ts",
- "additions": 32,
- "deletions": 1
+ "path": "docs/api/enumerations/Clients.md",
+ "additions": 9,
+ "deletions": 0
},
{
- "path": "packages/client-evm/README.md",
- "additions": 78,
+ "path": "packages/client-deva/.npmignore",
+ "additions": 6,
"deletions": 0
},
{
- "path": "packages/client-evm/config.example.json",
- "additions": 40,
+ "path": "packages/client-deva/eslint.config.mjs",
+ "additions": 3,
"deletions": 0
},
{
- "path": "packages/client-evm/config.json",
- "additions": 100,
+ "path": "packages/client-deva/package.json",
+ "additions": 24,
"deletions": 0
},
{
- "path": "packages/client-evm/package.json",
- "additions": 21,
+ "path": "packages/client-deva/src/base.ts",
+ "additions": 60,
"deletions": 0
},
{
- "path": "packages/client-evm/src/evm-listener.ts",
+ "path": "packages/client-deva/src/controller.ts",
"additions": 242,
"deletions": 0
},
{
- "path": "packages/client-evm/src/implementations/formatters.ts",
- "additions": 25,
+ "path": "packages/client-deva/src/devaClient.ts",
+ "additions": 30,
"deletions": 0
},
{
- "path": "packages/client-evm/src/implementations/templates.ts",
- "additions": 35,
+ "path": "packages/client-deva/src/enviroment.ts",
+ "additions": 32,
"deletions": 0
},
{
- "path": "packages/client-evm/src/index.ts",
- "additions": 85,
+ "path": "packages/client-deva/src/index.ts",
+ "additions": 28,
"deletions": 0
},
{
- "path": "packages/client-evm/src/messages.ts",
- "additions": 176,
+ "path": "packages/client-deva/src/templates.ts",
+ "additions": 24,
"deletions": 0
},
{
- "path": "packages/client-evm/src/types.ts",
- "additions": 66,
+ "path": "packages/client-deva/src/types.ts",
+ "additions": 21,
"deletions": 0
},
{
- "path": "packages/client-evm/tsconfig.json",
- "additions": 23,
+ "path": "packages/client-deva/tsconfig.json",
+ "additions": 8,
"deletions": 0
},
{
- "path": "packages/core/src/types.ts",
- "additions": 1,
+ "path": "packages/client-deva/tsup.config.ts",
+ "additions": 20,
"deletions": 0
},
{
- "path": "pnpm-lock.yaml",
- "additions": 366,
- "deletions": 44
- },
- {
- "path": "tsconfig.json",
- "additions": 21,
+ "path": "packages/core/src/types.ts",
+ "additions": 2,
"deletions": 0
}
],
@@ -2828,10 +1643,58 @@
}
},
{
- "contributor": "tobbelobb",
+ "contributor": "mobi8",
+ "score": 5,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/116540956?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg0MjAsIm5iZiI6MTczNDY0NzIyMCwicGF0aCI6Ii91LzExNjU0MDk1NiJ9.kHchK_MjTR4daYT3OnAj_CC1N0leKgjEP-1jZk4UaLg&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1228,
+ "title": "Create requirements.txt",
+ "state": "CLOSED",
+ "merged": false,
+ "created_at": "2024-12-19T06:38:42Z",
+ "updated_at": "2024-12-19T06:48:44Z",
+ "body": "add\r\n\r\n\r\n\r\n# Relates to:\r\n\r\n\r\n\r\n\r\n\r\n# Risks\r\n\r\n\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n## What kind of change is this?\r\n\r\n\r\n\r\n\r\n\r\n\r\n# Documentation changes needed?\r\n\r\n\r\n\r\n\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n## Detailed testing steps\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
+ "files": [
+ {
+ "path": "requirements.txt",
+ "additions": 2,
+ "deletions": 0
+ }
+ ],
+ "reviews": [],
+ "comments": [
+ {
+ "author": "shakkernerd",
+ "body": "A requirements.txt file is not needed since this is a TypeScript project."
+ }
+ ]
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "9547",
"score": 3,
"summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/5753253?u=06987c2b4cb233fa0a612753bf4cb151862c07b4&v=4",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/29431502?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkyMDAsIm5iZiI6MTczNDY0ODAwMCwicGF0aCI6Ii91LzI5NDMxNTAyIn0.PAeiPZdpnsK9tsuSRwgz1z1YgHWgk8LTZ7oa9Qj6tbs&u=def2043f3c532d18cae388fcec8d24a21e08d044&v=4",
"activity": {
"code": {
"total_commits": 0,
@@ -2839,25 +1702,89 @@
"commits": [],
"pull_requests": [
{
- "number": 1205,
- "title": "fix: write summary file before trying to cache it",
- "state": "OPEN",
+ "number": 1227,
+ "title": "docs(readme): add bash code block for all bash scripts",
+ "state": "CLOSED",
"merged": false,
- "created_at": "2024-12-18T12:28:33Z",
- "updated_at": "2024-12-18T17:17:36Z",
- "body": " - Also give a .md file extension for prettier rendering in Discord\r\n\r\n# Relates to:\r\nWhen I used my agent to CHAT_WITH_ATTACHMENTS it always failed to stat the summary file because it had not been created.\r\n\r\n# Risks\r\nLow. Writes summaries to disk, could become a lot of data if agent writes a lot of summaries.\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\nWrite summary file before trying to cache it\r\n\r\n## What kind of change is this?\r\nBug fix (non-breaking change which fixes an issue)\r\n\r\n## Why are we doing this? Any context or related work?\r\nYeah, I'm building a technical support that needs to receive and analyze config files.\r\n\r\n## Discord username\r\ntobben_dev\r\n",
+ "created_at": "2024-12-19T05:49:29Z",
+ "updated_at": "2024-12-19T06:32:39Z",
+ "body": "Add `bash` code block for all the bash scripts, better to markdown rendering\r\n",
"files": [
{
- "path": "packages/client-discord/src/actions/chat_with_attachments.ts",
- "additions": 31,
- "deletions": 10
+ "path": "README.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "README_CN.md",
+ "additions": 3,
+ "deletions": 3
+ },
+ {
+ "path": "README_DE.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "README_ES.md",
+ "additions": 3,
+ "deletions": 3
+ },
+ {
+ "path": "README_FR.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "README_HE.md",
+ "additions": 4,
+ "deletions": 5
+ },
+ {
+ "path": "README_IT.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "README_JA.md",
+ "additions": 3,
+ "deletions": 3
+ },
+ {
+ "path": "README_KOR.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "README_PTBR.md",
+ "additions": 3,
+ "deletions": 3
+ },
+ {
+ "path": "README_TH.md",
+ "additions": 2,
+ "deletions": 2
+ },
+ {
+ "path": "README_TR.md",
+ "additions": 4,
+ "deletions": 4
+ },
+ {
+ "path": "README_VI.md",
+ "additions": 2,
+ "deletions": 2
}
],
"reviews": [],
"comments": [
{
- "author": "odilitime",
- "body": "code looks good will test later"
+ "author": "codecov",
+ "body": "## [Codecov](https://app.codecov.io/gh/ai16z/eliza/pull/1227?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z) Report\nAll modified and coverable lines are covered by tests :white_check_mark:\n\n[see 9 files with indirect coverage changes](https://app.codecov.io/gh/ai16z/eliza/pull/1227/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=ai16z)\n"
+ },
+ {
+ "author": "shakkernerd",
+ "body": "Thanks for the PR but I think adding `bash` to the code block doesn't make any difference given the markdown is perfectly rendered."
}
]
}
@@ -2876,10 +1803,110 @@
}
},
{
- "contributor": "sam-coffey",
+ "contributor": "lalalune",
+ "score": 2,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/18633264?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg3MjAsIm5iZiI6MTczNDY0NzUyMCwicGF0aCI6Ii91LzE4NjMzMjY0In0.ef20meZySKC14ksX2zmPUprbf4FTK6gdLx8nK_CL6HQ&u=8f2bca0a3cef958bd405ea89680a9b9a0ff38f06&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 1,
+ "commits": [],
+ "pull_requests": [
+ {
+ "number": 1252,
+ "title": "Update trump.character.json",
+ "state": "OPEN",
+ "merged": false,
+ "created_at": "2024-12-19T22:28:15Z",
+ "updated_at": "2024-12-19T22:28:15Z",
+ "body": "Remove a controversial line so we don't have to waste time on pointless old world political divisions\r\n",
+ "files": [
+ {
+ "path": "characters/trump.character.json",
+ "additions": 0,
+ "deletions": 1
+ }
+ ],
+ "reviews": [],
+ "comments": []
+ }
+ ]
+ },
+ "issues": {
+ "total_opened": 0,
+ "opened": []
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "vpavlin",
+ "score": 2,
+ "summary": "",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/4759808?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg5MDAsIm5iZiI6MTczNDY0NzcwMCwicGF0aCI6Ii91LzQ3NTk4MDgifQ.FCRt6CJ8K5Ci3EOPe8eefUF7mzywKQroiMckMCwlphE&u=d045a41a43fa2deabfc3115236cc1e8b0509b164&v=4",
+ "activity": {
+ "code": {
+ "total_commits": 0,
+ "total_prs": 0,
+ "commits": [],
+ "pull_requests": []
+ },
+ "issues": {
+ "total_opened": 2,
+ "opened": [
+ {
+ "number": 1233,
+ "title": "agent package not updated on npmjs.org",
+ "state": "OPEN",
+ "created_at": "2024-12-19T08:08:23Z",
+ "updated_at": "2024-12-19T08:08:23Z",
+ "body": "**Describe the bug**\r\n\r\nSeems like @ai16z/agent has not been updated for some time https://www.npmjs.com/package/@ai16z/agent\r\n\r\n**To Reproduce**\r\n\r\nSee https://www.npmjs.com/package/@ai16z/agent?activeTab=versions\r\n\r\n**Expected behavior**\r\n\r\nRelease agent package regularly and use it in `eliza-starter` (as it seems like a lot of stuff is just copy&paste)\r\n\r\n**Screenshots**\r\n\r\n\r\n\r\n**Additional context**\r\n\r\n\r\n",
+ "labels": [
+ {
+ "name": "bug",
+ "color": "d73a4a",
+ "description": "Something isn't working"
+ }
+ ],
+ "comments": []
+ },
+ {
+ "number": 1232,
+ "title": "Create a nightly build as next version",
+ "state": "OPEN",
+ "created_at": "2024-12-19T08:06:40Z",
+ "updated_at": "2024-12-19T08:06:40Z",
+ "body": "**Is your feature request related to a problem? Please describe.**\r\n\r\nI'd like to use `eliza-starter` with the latest providers and features, but that means I have to wait until new version is released (weekly?). It would be great to setup a `nightly` builds from `develop` and push them to npmjs.org as `next` version, so that people can easily experiment with latest features and get ready for new releases\r\n\r\n**Describe the solution you'd like**\r\n\r\nSetup an automation to release nightly to from `develop` to `next`\r\n\r\n**Describe alternatives you've considered**\r\n\r\n:shrug: \r\n\r\n**Additional context**\r\n\r\n\r\n",
+ "labels": [
+ {
+ "name": "enhancement",
+ "color": "a2eeef",
+ "description": "New feature or request"
+ }
+ ],
+ "comments": []
+ }
+ ]
+ },
+ "engagement": {
+ "total_comments": 0,
+ "total_reviews": 0,
+ "comments": [],
+ "reviews": []
+ }
+ }
+ },
+ {
+ "contributor": "lorcann-rauzduel",
"score": 1,
"summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/98062744?u=10f19a5a02ee5648fd5276432f87eb3c6d97de7d&v=4",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/176548844?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDkyMDAsIm5iZiI6MTczNDY0ODAwMCwicGF0aCI6Ii91LzE3NjU0ODg0NCJ9.iDu37cA2qwbJtZlyWR5DiRT6lnij8ZhkJCOkTH0Z9Ys&u=c20bf0288194863b32133bdd83001111d364ca75&v=4",
"activity": {
"code": {
"total_commits": 0,
@@ -2891,12 +1918,12 @@
"total_opened": 1,
"opened": [
{
- "number": 1213,
- "title": "chat stuck in infinite loop",
+ "number": 1251,
+ "title": "Cannot read properties of undefined (reading 'rpcUrls') ",
"state": "OPEN",
- "created_at": "2024-12-18T21:19:34Z",
- "updated_at": "2024-12-18T21:19:34Z",
- "body": "Have tried installing and reinstalling many times, chat with any agent always gets stuck in loop where agent just keeps replying to itself.\r\n\r\nHappens each time I successfully start an agent with npm start (either chatting in terminal in older versions or with localhost:5173)\r\n\r\nI would expect the agent to have a dialogue with me but it becomes impossible when the agent just keeps saying things to itself over and over.",
+ "created_at": "2024-12-19T22:02:20Z",
+ "updated_at": "2024-12-19T22:02:20Z",
+ "body": "**Describe the bug**\r\n\r\nSwap execution fails with \"Cannot read properties of undefined (reading 'rpcUrls')\" error during LiFi SDK initialization. The issue occurs because the RPC URLs configuration doesn't match the format expected by the SDK.\r\n\r\n**To Reproduce**\r\n\r\n1. Initialize SwapAction with a WalletProvider\r\n2. Attempt to execute a swap with a prompt\r\n3. Error occurs during configuration creation in SwapAction constructor\r\n\r\n**Expected behavior**\r\n\r\nSwap should execute normally\r\n\r\n**Screenshots**\r\n\r\nLogs : \r\n```\r\n [\"\u2713 Normalized action: swap\"] \r\n\r\n [\"\u2139 Executing handler for action: swap\"] \r\nError in swap handler: Cannot read properties of undefined (reading 'rpcUrls')\r\n \u25ce LOGS\r\n Evaluating \r\n GET_FACTS \r\n\r\n \u25ce LOGS\r\n Evaluating \r\n UPDATE_GOAL \r\n\r\n \u25ce LOGS\r\n Creating Memory \r\n 3131de6c-ba7b-0dad-b05f-eeed7ceae7ca \r\n Error: Cannot read properties of undefined (reading 'rpcUrls') \r\n```\r\n\r\n**Additional context**\r\n\r\nmy .env file :\r\n\r\n```\r\n.....\r\n# EVM\r\nEVM_PRIVATE_KEY=my_private_key\r\nEVM_PROVIDER_URL=my_eth_mainnet_provider\r\nETHEREUM_PROVIDER_ARBITRUM_=my_arbitrum_mainnet_provider\r\nETHEREUM_PROVIDER_ARBITRUM_SEPOLIA=my_arbitrum_sepolia_provider\r\n\r\n```\r\n\r\nmy character file :\r\n```\r\n\r\n \"name\": \"user-agent\",\r\n \"clients\": [\"twitter\", \"telegram\"],\r\n \"modelProvider\": \"anthropic\",\r\n \"settings\": {\r\n \"secrets\": {},\r\n \"voice\": {},\r\n \"chains\": { \"evm\": [\"arbitrum\", \"arbitrumSepolia\"] }\r\n },\r\n \"plugins\": [\"@ai16z/plugin-evm\"],\r\n```\r\n",
"labels": [
{
"name": "bug",
@@ -2917,10 +1944,10 @@
}
},
{
- "contributor": "AntonioTF5",
+ "contributor": "blockfer-rp",
"score": 1,
"summary": "",
- "avatar_url": "https://avatars.githubusercontent.com/u/32102018?u=ca0cfc6fafa99720cba35ad22ba7e31738c399b9&v=4",
+ "avatar_url": "https://private-avatars.githubusercontent.com/u/58490353?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MzQ2NDg1NDAsIm5iZiI6MTczNDY0NzM0MCwicGF0aCI6Ii91LzU4NDkwMzUzIn0.C1-fpM9Tjh1-NfwBgUJq3HVX-3h5v7O-OmnqdfCdIZ8&v=4",
"activity": {
"code": {
"total_commits": 0,
@@ -2932,12 +1959,12 @@
"total_opened": 1,
"opened": [
{
- "number": 1208,
- "title": "Multiple mentions on Twitter/X when reply",
+ "number": 1235,
+ "title": "twitterShouldRespondTemplate Fails When Defined as a String in JSON Character Config",
"state": "OPEN",
- "created_at": "2024-12-18T16:44:13Z",
- "updated_at": "2024-12-18T19:28:41Z",
- "body": "**Describe the bug**\n\nIn every following reply to target accounts on X agent adds mentioning of the account: @account \n\nIf it replies second time it will mention twice: @account @account\n\n**Expected behavior**\n\nNo mentioning of the target account when reply at all. \n\n**Screenshots**\n\n![image](https://github.com/user-attachments/assets/9b8a6403-e496-4ecb-bf5b-bc67b4faeb4b)