{
  "interval": {
    "intervalStart": "2025-05-18T00:00:00.000Z",
    "intervalEnd": "2025-05-25T00:00:00.000Z",
    "intervalType": "week"
  },
  "repository": "elizaos/eliza",
  "overview": "From 2025-05-18 to 2025-05-25, elizaos/eliza had 125 new PRs (124 merged), 5 new issues, and 35 active contributors.",
  "topIssues": [
    {
      "id": "I_kwDOMT5cIs63qFiZ",
      "title": "switch agent from sqlite to postgres",
      "author": "Icarus-Community",
      "number": 4697,
      "repository": "elizaos/eliza",
      "body": "**Describe the bug**\n\ni have an agent running in V2 dev mode. Now i want to set the postgres db for the agent. i added the adapter-postgres  and added it to .env like this \n\nPOSTGRES_URL=postgresql://neondb_owner:*****@royal-sound-a2hlzmuj-pooler.eu-central-1.aws.neon.tech/supahdev?sslmode=require\n\njust like the eliza.how and the llm file states. \n\nBut my agent keeps loading the Sqlite db instead of the postgres db. \n\n\n\n**Expected behavior**\n\nthe postgress to be used for the agent\n\n\n\n**Additional context**\n\nhope someone can point me to the proper way to change the agent from sqlite to postgress\n",
      "createdAt": "2025-05-21T19:50:54Z",
      "closedAt": null,
      "state": "OPEN",
      "commentCount": 5
    },
    {
      "id": "I_kwDOMT5cIs6yy4Mz",
      "title": "Ensure USE_LOCAL_AI is always true",
      "author": "jmikedupont2",
      "number": 4303,
      "repository": "elizaos/eliza",
      "body": "Hi team,\nI am wondering about \" Ensure USE_LOCAL_AI is always true\" in v2,\nin my small version I don't want to have local ai loaded.\nIf the user sets it to false, we should respect that.\n\n",
      "createdAt": "2025-04-16T13:34:31Z",
      "closedAt": "2025-05-23T02:29:00Z",
      "state": "CLOSED",
      "commentCount": 2
    },
    {
      "id": "I_kwDOMT5cIs60vfHb",
      "title": "RAG document Knowledge error (getCachedEmbeddings)",
      "author": "retdude",
      "number": 4408,
      "repository": "elizaos/eliza",
      "body": "**Describe the bug**\n\nThe application encounters multiple errors during knowledge processing:\n1. Circuit breaker errors causing knowledge processing failures\n2. UTF-8 encoding issues with PDF files\n3. Database operation failures due to invalid byte sequences\n\nThe errors occur during the initialization phase when processing character knowledge, particularly when handling PDF files and text content.\n\n\n**To Reproduce**\n\n1. Put PDF knowledge in 'eliza/characters/knowledge/<your agent>'\n2. Set ragKnowledge to 'true' in your character file.\n3. Edit your character file to add the knowlege like so:\n```\n \"knowledge\": [\n    {\n      \"directory\": \"tech_guides\",\n      \"shared\": true\n    }\n  ], \n```\n4. Start the application using `pnpm start`\n5. The errors appear during the knowledge processing phase\n6. Specific errors include:\n   - \"invalid byte sequence for encoding \"UTF8\": 0x00\"\n   - \"Circuit breaker is OPEN\"\n   - \"unsupported Unicode escape sequence\"\n\n\n**Expected behavior**\n\n- PDF files should be properly processed without encoding errors\n- Knowledge processing should complete successfully\n- Circuit breaker should handle failures gracefully without blocking all operations\n\n\n**Screenshots**\n<img width=\"952\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/39d789b4-3fee-4a0e-b078-044101051388\" />\n\n<img width=\"1087\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/50b881b0-b3f0-43f4-8500-16f947e333fb\" />\n\n<img width=\"1097\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/90bed2aa-23db-4c89-95fe-44bb5459a0ff\" />\n\n<img width=\"1095\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/6c4db528-f2d2-40b7-9f15-96b1144303ac\" />\n\n**Additional context**\n\n-Using PGVector for RAG\n- Environment: macOS 23.6.0\n- The errors occur during the RAG (Retrieval-Augmented Generation) knowledge processing phase\n- The circuit breaker appears to be tripping due to database operation failures\n\n",
      "createdAt": "2025-04-30T19:53:01Z",
      "closedAt": "2025-05-23T02:30:04Z",
      "state": "CLOSED",
      "commentCount": 2
    },
    {
      "id": "I_kwDOMT5cIs6sPClh",
      "title": "RAG processFile attempts to embed entire files causing errors for large documents",
      "author": "omikolaj",
      "number": 3745,
      "repository": "elizaos/eliza",
      "body": "**Describe the bug**\n\n`ragknowledge.ts` file is running `embd` function on the entire content of the document, often causing errors with going over token limitations of the underlying model. The code attempts to embed the entire document, and then chunks it out.\n\n**To Reproduce**\n\n1. Create 'knowledge' directory in 'characters' directory.\n2. Add a large pdf to the directory\n3. Update *character.json file `knowledge` property to run embeddings on the file\n4. Update *character.json file `settings.ragKnowledge` property to 'true'\n5. Configure .env file to use `USE_OPENAI_EMBEDDING=true` and provide `OPENAI_API_KEY` and `EMBEDDING_OPENAI_MODEL=text-embedding-3-large` (or small)\n6. Start the server, notice errors: \n```\n[2025-03-02 15:14:48] ERROR: API Response: {\n  \"error\": {\n    \"message\": \"This model's maximum context length is 8192 tokens, however you requested 16376 tokens (16376 in your prompt; 0 for the completion). Please reduce your prompt; or completion length.\",\n    \"type\": \"invalid_request_error\",\n    \"param\": null,\n    \"code\": null\n  }\n}\n```\n\n**Expected behavior**\nAll supported documents embedded without errors\n\n**Screenshots**\n\n![Image](https://github.com/user-attachments/assets/c1d4f359-74b9-4fe5-a38d-c90012a52f27)\n\n**Additional context**\n\nThe code that does this was added on Jan5. It apppears to be in the latest release tag. Its possible Im setting something up wrong, but its not clear what.\n",
      "createdAt": "2025-03-02T15:42:28Z",
      "closedAt": "2025-05-23T02:31:18Z",
      "state": "CLOSED",
      "commentCount": 1
    },
    {
      "id": "I_kwDOMT5cIs6yyqVg",
      "title": "Task.World is redundant",
      "author": "jmikedupont2",
      "number": 4302,
      "repository": "elizaos/eliza",
      "body": "The world already is referenced from room and task references room, so we dont need to have world in task.\npackages/plugin-sql/src/schema/tasks.ts\n```\n worldId: uuid('world_id').references(() => worldTable.id, {\n   onDelete: 'cascade',\n }),\n\n```",
      "createdAt": "2025-04-16T13:14:06Z",
      "closedAt": "2025-05-23T02:27:26Z",
      "state": "CLOSED",
      "commentCount": 1
    }
  ],
  "topPRs": [
    {
      "id": "PR_kwDOMT5cIs6W-XKp",
      "title": "Permashill impl plan v1",
      "author": "jkbrooks",
      "number": 4683,
      "body": "<!-- Use this template by filling in information and copying and pasting relevant items out of the HTML comments. -->\r\n\r\n# Relates to\r\n\r\n<!-- LINK TO ISSUE OR TICKET -->\r\n\r\n<!-- This risks section must be filled out before the final review and merge. -->\r\n\r\n# Risks\r\n\r\n<!--\r\nLow, medium, large. List what kind of risks and what could be affected.\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\nBug fixes (non-breaking change which fixes an issue)\r\nImprovements (misc. changes to existing features)\r\nFeatures (non-breaking change which adds functionality)\r\nUpdates (new versions of included code)\r\n-->\r\n\r\n<!-- This \"Why\" section is most relevant if there are no linked issues explaining why. If there is a related issue, it might make sense to skip this why section. -->\r\n<!--\r\n## Why are we doing this? Any context or related work?\r\n-->\r\n\r\n# Documentation changes needed?\r\n\r\n<!--\r\nMy changes do not require a change to the project documentation.\r\nMy changes require a change to the project documentation.\r\nIf documentation change is needed: I have updated the documentation accordingly.\r\n-->\r\n\r\n<!-- Please show how you tested the PR. This will really help if the PR needs to be retested and probably help the PR get merged quicker. -->\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\nNone: Automated tests are acceptable.\r\n-->\r\n\r\n<!--\r\n- As [anon/admin], go to [link]\r\n  - [do action]\r\n  - verify [result]\r\n-->\r\n\r\n<!-- If there is a UI change, please include before and after screenshots or videos. This will speed up PRs being merged. It is extra nice to annotate screenshots with arrows or boxes pointing out the differences. -->\r\n<!--\r\n## Screenshots\r\n### Before\r\n### After\r\n-->\r\n\r\n<!-- If there is anything about the deployment, please make a note. -->\r\n<!--\r\n# Deploy Notes\r\n-->\r\n\r\n<!--  Copy and paste command line output. -->\r\n<!--\r\n## Database changes\r\n-->\r\n\r\n<!--  Please specify deploy instructions if there is something more than the automated steps. -->\r\n<!--\r\n## Deployment instructions\r\n-->\r\n\r\n<!-- If you are on Discord, please join https://discord.gg/elizaOS and state your Discord username here for the contributor role and join us in #development-feed -->\r\n<!--\r\n## Discord username\r\n\r\n-->\r\n",
      "repository": "elizaos/eliza",
      "createdAt": "2025-05-21T01:03:32Z",
      "mergedAt": null,
      "additions": 357476,
      "deletions": 183847
    },
    {
      "id": "PR_kwDOMT5cIs6R1jEI",
      "title": "resolved hapi shot error.",
      "author": "nitzansaar",
      "number": 4232,
      "body": "can build an run eliza chatbot only\r\n\r\n<!-- Use this template by filling in information and copying and pasting relevant items out of the HTML comments. -->\r\n\r\n# Relates to\r\n\r\n<!-- LINK TO ISSUE OR TICKET -->\r\n\r\n<!-- This risks section must be filled out before the final review and merge. -->\r\n\r\n# Risks\r\n\r\n<!--\r\nLow, medium, large. List what kind of risks and what could be affected.\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\nBug fixes (non-breaking change which fixes an issue)\r\nImprovements (misc. changes to existing features)\r\nFeatures (non-breaking change which adds functionality)\r\nUpdates (new versions of included code)\r\n-->\r\n\r\n<!-- This \"Why\" section is most relevant if there are no linked issues explaining why. If there is a related issue, it might make sense to skip this why section. -->\r\n<!--\r\n## Why are we doing this? Any context or related work?\r\n-->\r\n\r\n# Documentation changes needed?\r\n\r\n<!--\r\nMy changes do not require a change to the project documentation.\r\nMy changes require a change to the project documentation.\r\nIf documentation change is needed: I have updated the documentation accordingly.\r\n-->\r\n\r\n<!-- Please show how you tested the PR. This will really help if the PR needs to be retested and probably help the PR get merged quicker. -->\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\nNone: Automated tests are acceptable.\r\n-->\r\n\r\n<!--\r\n- As [anon/admin], go to [link]\r\n  - [do action]\r\n  - verify [result]\r\n-->\r\n\r\n<!-- If there is a UI change, please include before and after screenshots or videos. This will speed up PRs being merged. It is extra nice to annotate screenshots with arrows or boxes pointing out the differences. -->\r\n<!--\r\n## Screenshots\r\n### Before\r\n### After\r\n-->\r\n\r\n<!-- If there is anything about the deployment, please make a note. -->\r\n<!--\r\n# Deploy Notes\r\n-->\r\n\r\n<!--  Copy and paste command line output. -->\r\n<!--\r\n## Database changes\r\n-->\r\n\r\n<!--  Please specify deploy instructions if there is something more than the automated steps. -->\r\n<!--\r\n## Deployment instructions\r\n-->\r\n\r\n<!-- If you are on Discord, please join https://discord.gg/elizaOS and state your Discord username here for the contributor role and join us in #development-feed -->\r\n<!--\r\n## Discord username\r\n\r\n-->\r\n",
      "repository": "elizaos/eliza",
      "createdAt": "2025-04-08T19:00:40Z",
      "mergedAt": null,
      "additions": 54046,
      "deletions": 3338
    },
    {
      "id": "PR_kwDOMT5cIs6Wx7cy",
      "title": "[SpartanDev] Update elizaos",
      "author": "odilitime",
      "number": 4648,
      "body": "",
      "repository": "elizaos/eliza",
      "createdAt": "2025-05-19T20:05:12Z",
      "mergedAt": "2025-05-19T20:48:43Z",
      "additions": 42982,
      "deletions": 54376
    },
    {
      "id": "PR_kwDOMT5cIs6Wk-z3",
      "title": "V2 Spartan",
      "author": "lalalune",
      "number": 4630,
      "body": "V2 Spartan Changes (WIP)",
      "repository": "elizaos/eliza",
      "createdAt": "2025-05-17T19:07:00Z",
      "mergedAt": null,
      "additions": 23639,
      "deletions": 5547
    },
    {
      "id": "PR_kwDOMT5cIs6U33qD",
      "title": "feat: polygon",
      "author": "monilpat",
      "number": 4449,
      "body": "<!-- Use this template by filling in information and copying and pasting relevant items out of the HTML comments. -->\r\n\r\n# Relates to\r\n\r\n<!-- LINK TO ISSUE OR TICKET -->\r\n\r\n<!-- This risks section must be filled out before the final review and merge. -->\r\n\r\n# Risks\r\n\r\n<!--\r\nLow, medium, large. List what kind of risks and what could be affected.\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\nBug fixes (non-breaking change which fixes an issue)\r\nImprovements (misc. changes to existing features)\r\nFeatures (non-breaking change which adds functionality)\r\nUpdates (new versions of included code)\r\n-->\r\n\r\n<!-- This \"Why\" section is most relevant if there are no linked issues explaining why. If there is a related issue, it might make sense to skip this why section. -->\r\n<!--\r\n## Why are we doing this? Any context or related work?\r\n-->\r\n\r\n# Documentation changes needed?\r\n\r\n<!--\r\nMy changes do not require a change to the project documentation.\r\nMy changes require a change to the project documentation.\r\nIf documentation change is needed: I have updated the documentation accordingly.\r\n-->\r\n\r\n<!-- Please show how you tested the PR. This will really help if the PR needs to be retested and probably help the PR get merged quicker. -->\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\nNone: Automated tests are acceptable.\r\n-->\r\n\r\n<!--\r\n- As [anon/admin], go to [link]\r\n  - [do action]\r\n  - verify [result]\r\n-->\r\n\r\n<!-- If there is a UI change, please include before and after screenshots or videos. This will speed up PRs being merged. It is extra nice to annotate screenshots with arrows or boxes pointing out the differences. -->\r\n<!--\r\n## Screenshots\r\n### Before\r\n### After\r\n-->\r\n\r\n<!-- If there is anything about the deployment, please make a note. -->\r\n<!--\r\n# Deploy Notes\r\n-->\r\n\r\n<!--  Copy and paste command line output. -->\r\n<!--\r\n## Database changes\r\n-->\r\n\r\n<!--  Please specify deploy instructions if there is something more than the automated steps. -->\r\n<!--\r\n## Deployment instructions\r\n-->\r\n\r\n<!-- If you are on Discord, please join https://discord.gg/elizaOS and state your Discord username here for the contributor role and join us in #development-feed -->\r\n<!--\r\n## Discord username\r\n\r\n-->\r\n",
      "repository": "elizaos/eliza",
      "createdAt": "2025-05-05T02:30:24Z",
      "mergedAt": null,
      "additions": 19482,
      "deletions": 28
    }
  ],
  "codeChanges": {
    "additions": 89041,
    "deletions": 57372,
    "files": 659,
    "commitCount": 470
  },
  "completedItems": [
    {
      "title": "Fix broken Quickstart link",
      "prNumber": 4555,
      "type": "bugfix",
      "body": "Replaces outdated URL (elizaos.github.io/eliza/quickstart) with working https://eliza.how/docs/quickstart in README.\r\n\r\n\r\n\r\n\r\n\r\n\r\n"
    },
    {
      "title": "Update README_IND.md",
      "prNumber": 4542,
      "type": "other",
      "body": "<!-- Use this template by filling in information and copying and pasting relevant items out of the HTML comments. -->\r\n\r\n# Relates to\r\n\r\n<!-- LINK TO ISSUE OR TICKET -->\r\n\r\n<!-- This risks section must be filled out before the final review "
    },
    {
      "title": "Issue 451",
      "prNumber": 4575,
      "type": "other",
      "body": "# Ticket: Implement Core EVM RPC Wrappers & Basic Reads (Polygon Plugin)\r\n\r\n**Ticket Type:** Dev Ticket  \r\n**Priority:** P1  \r\n**Epic:** Implement Polygon Plugin MVP  \r\n**Assignee:** Harsh Modi  \r\n**Reporter:** AI Assistant  \r\n**Dependencie"
    },
    {
      "title": "Implement Polygon Gas Oracle Integration",
      "prNumber": 4574,
      "type": "other",
      "body": "\r\n# Relates to\r\n\r\n[Implement Polygon Gas Oracle Integration (Polygon Plugin) #452](https://github.com/Sifchain/sa-eliza/issues/452)\r\n\r\n\r\n# Risks\r\n\r\n**Low**\r\n\r\n*   **External API Dependency:** The primary gas estimation relies on the Polygon"
    },
    {
      "title": "Add README_MY.md ",
      "prNumber": 4567,
      "type": "feature",
      "body": "<!-- Use this template by filling in information and copying and pasting relevant items out of the HTML comments. -->\r\n\r\n# Relates to\r\n\r\n<!-- LINK TO ISSUE OR TICKET -->\r\n\r\n<!-- This risks section must be filled out before the final review "
    },
    {
      "title": "docs: Fix typos in faq-and-support.md",
      "prNumber": 4563,
      "type": "bugfix",
      "body": "Fixes typos in `faq-and-support.md`:\r\n\r\n- Corrected spelling of \"AIndreeson\" → \"AIndreessen\".\r\n- Fixed typo \"Tading\" → \"Trading\".\r\n\r\n## What kind of change is this?\r\n\r\n- Bug fixes (non-breaking change which fixes an issue)\r\n\r\n# Documentatio"
    },
    {
      "title": "feat: improve db api",
      "prNumber": 4556,
      "type": "feature",
      "body": "# Risks\r\n\r\nLow\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\n- getEntityById becomes getEntitesByIds (runtime still has a getEntityById helper/wrapper)\r\n- getRoom becomes getRoomsByIds (runtime still has a getRoom helper/wrapper)\r\n- batch "
    },
    {
      "title": "Fix outdated link in changelog.md",
      "prNumber": 4576,
      "type": "bugfix",
      "body": "The old link led to a 404 error (page not found).\r\nTo avoid confusion and broken navigation for readers, the link has been temporarily cleared.\r\n\r\n\r\n"
    },
    {
      "title": "fix(core): fixing failling tests, adding missing packages and fixing circular dependency ",
      "prNumber": 4605,
      "type": "bugfix",
      "body": "<!-- Use this template by filling in information and copying and pasting relevant items out of the HTML comments. -->\r\n\r\n# Relates to\r\n\r\n<!-- LINK TO ISSUE OR TICKET -->\r\n\r\n<!-- This risks section must be filled out before the final review "
    },
    {
      "title": "chore(deps): bump undici from 7.4.0 to 7.5.0 in the npm_and_yarn group across 1 directory",
      "prNumber": 4598,
      "type": "other",
      "body": "Bumps the npm_and_yarn group with 1 update in the / directory: [undici](https://github.com/nodejs/undici).\n\nUpdates `undici` from 7.4.0 to 7.5.0\n<details>\n<summary>Release notes</summary>\n<p><em>Sourced from <a href=\"https://github.com/node"
    },
    {
      "title": "wip: Plugin-Jupiter Swap",
      "prNumber": 4593,
      "type": "other",
      "body": "Added:\r\n\r\nPlugin-Jupiter which would be used to handle all jupiter swaps within plugin-trade and the Spartan product."
    },
    {
      "title": "chore: update docs",
      "prNumber": 4586,
      "type": "other",
      "body": "This PR focuses on a comprehensive update of the project's documentation.\r\n\r\nKey changes include:\r\n\r\n*   **Content Updates:**\r\n    *   Updated blog posts.\r\n    *   Added brief versions of all partner documentation.\r\n    *   Added documentat"
    },
    {
      "title": "feat: add support for PDF rag",
      "prNumber": 4611,
      "type": "feature",
      "body": "\n\n<!-- This is an auto-generated comment: release notes by coderabbit.ai -->\n\n## Summary by CodeRabbit\n\n- **New Features**\n  - Added support for extracting and uploading text content from PDF files, enabling users to upload PDFs as knowledg"
    },
    {
      "title": "API - return ID of newly created agent",
      "prNumber": 4634,
      "type": "other",
      "body": "When using API calls and creating AGENT it very useful to have returned ID on first API call, so there are not needed subsequent calls after it just to find ID, which is crucial for other types of API calls.\r\n\r\nSo I added ID in return data "
    },
    {
      "title": "cleanup: optz actions functions",
      "prNumber": 4633,
      "type": "refactor",
      "body": "# PR: Optimize Action Formatting Functions\r\n\r\nThis PR improves the code quality and performance of the action formatting functions in `actions.ts`.\r\n\r\n## Changes Made\r\n\r\n### For all functions:\r\n- Added proper input validation for edge cases"
    },
    {
      "title": "ci: Docs auto deployer.",
      "prNumber": 4631,
      "type": "other",
      "body": "This runs Github Action if anything inside `packages/docs` folder changes and auto deploys to `docs.eliza.how`."
    },
    {
      "title": "Fix chokidar watch usage",
      "prNumber": 4629,
      "type": "bugfix",
      "body": "## Summary\n- add chokidar as a regular dependency for the CLI\n- ensure chokidar is treated as external when bundling\n- use the dependency directly in `dev` command\n\n## Testing\n- ❌ `bun run test:setup-commands` *(failed to find `vitest` comm"
    },
    {
      "title": "Eliza290/cli command dev",
      "prNumber": 4618,
      "type": "other",
      "body": "This PR enhances the elizaos dev command with better character file handling while ensuring consistent behavior with start cli command\r\n\r\nAll options tested and passed:\r\n\r\n-c/--configure, \r\n-p/--port, \r\n-b/--build\r\n-char/--character\r\n\r\nKey "
    },
    {
      "title": "chore: fix some typos in comment",
      "prNumber": 4615,
      "type": "bugfix",
      "body": "<!-- Use this template by filling in information and copying and pasting relevant items out of the HTML comments. -->\r\n\r\n# Relates to\r\n\r\n<!-- LINK TO ISSUE OR TICKET -->\r\n\r\n<!-- This risks section must be filled out before the final review "
    },
    {
      "title": "feat: add plugin-rag",
      "prNumber": 4614,
      "type": "feature",
      "body": "\n\n<!-- This is an auto-generated comment: release notes by coderabbit.ai -->\n\n## Summary by CodeRabbit\n\n- **New Features**\n  - Introduced a Retrieval-Augmented Generation (RAG) plugin, enabling advanced document ingestion and retrieval capa"
    },
    {
      "title": "chore: Add missing plugin failure test",
      "prNumber": 4643,
      "type": "feature",
      "body": "## Summary\n- test plugin install modifies package.json with plugin-discord\n- verify missing plugin fails with registry error\n\n## Testing\n- `./run_all_bats.sh` *(fails: 'bats' not found in PATH)*"
    },
    {
      "title": "fix: agent start button refetch agent.status.",
      "prNumber": 4642,
      "type": "bugfix",
      "body": "When click: \"start\" on agents, it would start, but the UI would not update, until you refreshed page.\r\n\r\nNow it is realtime in the UI.\r\n\r\n![image](https://github.com/user-attachments/assets/c876553f-6710-4345-8366-6fef52fb4418)\r\n"
    },
    {
      "title": "feat: use registry",
      "prNumber": 4641,
      "type": "feature",
      "body": ""
    },
    {
      "title": "fix: docs deploy workflow",
      "prNumber": 4640,
      "type": "bugfix",
      "body": "fixes npm cache since doesn't exist for docs package, removes PR runs, should only happen on pushes."
    },
    {
      "title": "feat: allow world selection in message API",
      "prNumber": 4637,
      "type": "feature",
      "body": "## Summary\n- add optional `worldId` query param for `/agents/:agentId/message`\n- record `worldId` in created memories\n- document new query parameter in OpenAPI & docs\n\n## Testing\n- `bun test` *(fails: Cannot find module '@playwright/test')*"
    },
    {
      "title": "Merge addpolygon resolution",
      "prNumber": 4636,
      "type": "other",
      "body": "<!-- Use this template by filling in information and copying and pasting relevant items out of the HTML comments. -->\r\n\r\n# Relates to\r\n\r\n<!-- LINK TO ISSUE OR TICKET -->\r\n\r\n<!-- This risks section must be filled out before the final review "
    },
    {
      "title": "Added : Polygon Plugin ",
      "prNumber": 4635,
      "type": "other",
      "body": "# Relates to\r\n\r\nIssue:\r\n- [#450 Initialize Eliza Plugin Structure and Configuration (Polygon)](https://github.com/Sifchain/sa-eliza/issues/450)\r\n- [#453 Implement Staking Read Operations (Polygon Plugin)](https://github.com/Sifchain/sa-eliz"
    },
    {
      "title": "chore(deps): bump the pip group across 1 directory with 3 updates",
      "prNumber": 4649,
      "type": "other",
      "body": "Bumps the pip group with 3 updates in the /scripts/bug_hunt directory: [cryptography](https://github.com/pyca/cryptography), [h11](https://github.com/python-hyper/h11) and [setuptools](https://github.com/pypa/setuptools).\n\nUpdates `cryptogr"
    },
    {
      "title": "[SpartanDev] Update elizaos",
      "prNumber": 4648,
      "type": "other",
      "body": ""
    },
    {
      "title": "feat: API endpoint for creating new rooms",
      "prNumber": 4647,
      "type": "feature",
      "body": "Currently we dont have API endpoint to create new rooms, so I added this feature in PR. \r\n\r\nDid some tests, rooms are created and IDs returned. Adding screenshots from tests\r\n\r\n<img width=\"845\" alt=\"image\" src=\"https://github.com/user-attac"
    },
    {
      "title": "Eliza290/update docs readme and tests for all cli commands",
      "prNumber": 4646,
      "type": "tests",
      "body": "this is a complimentary PR to update docs, readme, and tests for all the changes related to ELIZA290, cli testing + polish.\n\n<!-- This is an auto-generated comment: release notes by coderabbit.ai -->\n\n## Summary by CodeRabbit\n\n- **New Featu"
    },
    {
      "title": "remove pr title CI",
      "prNumber": 4644,
      "type": "other",
      "body": "annoying imo, idc what name PR, should not fail CI, causes more failed looking PRs then needed."
    },
    {
      "title": "add 30s timeout to registry parsing",
      "prNumber": 4678,
      "type": "feature",
      "body": ""
    },
    {
      "title": "feat: API get rooms per agent",
      "prNumber": 4677,
      "type": "feature",
      "body": "I wanted to get all the rooms where each agent is present, so to retrive that I added API endpoint which calls the function \r\n\"getRoomsForParticipant\" and retrives this to endpoint\r\n\r\n`curl -X GET http://localhost:3000/api/agents/b850bc30-4"
    },
    {
      "title": "bring back local ai test",
      "prNumber": 4676,
      "type": "tests",
      "body": ""
    },
    {
      "title": "fix: plugin-tee build and exports",
      "prNumber": 4675,
      "type": "bugfix",
      "body": "\n\n<!-- This is an auto-generated comment: release notes by coderabbit.ai -->\n## Summary by CodeRabbit\n\n- **Bug Fixes**\n  - Improved error handling to prevent runtime errors when message content is missing or incomplete.\n  - Enhanced error l"
    },
    {
      "title": "remove mock tests for cli",
      "prNumber": 4674,
      "type": "tests",
      "body": ""
    },
    {
      "title": "chore: update project starter character & fix path for core pckg",
      "prNumber": 4671,
      "type": "bugfix",
      "body": "\n\n<!-- This is an auto-generated comment: release notes by coderabbit.ai -->\n\n## Summary by CodeRabbit\n\n- **New Features**\n\t- Eliza now responds helpfully and conversationally to a broader range of topics, including technology, business, cr"
    },
    {
      "title": "fix: shortcut reply only if no dynamic provider is present",
      "prNumber": 4670,
      "type": "bugfix",
      "body": "This PR updates the reply logic to only shortcut (reuse existing replies) when no dynamic providers are involved. It also fixes a bug where providers were incorrectly taken from the message instead of the response content."
    },
    {
      "title": "remove plugin twitter",
      "prNumber": 4669,
      "type": "other",
      "body": "removes plugin twitter from mono repo has been moved to: https://github.com/elizaos-plugins/plugin-twitter"
    },
    {
      "title": "remove discord plugin",
      "prNumber": 4668,
      "type": "other",
      "body": "has been moved out to: https://github.com/elizaos-plugins/plugin-discord"
    },
    {
      "title": "feat: Create world api endpoints",
      "prNumber": 4667,
      "type": "feature",
      "body": " I wanted to create World with API endpoints, so I can have a consistent usage of a world.\r\n There wasnt any endpoints for this so I am adding them here. \r\n-To create new world\r\n-To update current one with new info\r\n-To get all rooms in cur"
    },
    {
      "title": "Remove global env support",
      "prNumber": 4666,
      "type": "other",
      "body": "## Summary\n- drop global env logic from CLI and server\n- update UI to only manage local envs\n- rewrite docs about environment variables\n- tweak plugin messages and runtime warnings\n\n## Testing\n- `bun test` *(fails: Cannot find package 'dote"
    },
    {
      "title": "add CHANNEL_IDS to discord_plugin",
      "prNumber": 4665,
      "type": "feature",
      "body": "adds ENVs for CHANNEL_IDS so can limit the responses to certain channels"
    },
    {
      "title": "attempt dev command tear down",
      "prNumber": 4664,
      "type": "other",
      "body": "<!-- Use this template by filling in information and copying and pasting relevant items out of the HTML comments. -->\r\n\r\n# Relates to\r\n\r\n<!-- LINK TO ISSUE OR TICKET -->\r\n\r\n<!-- This risks section must be filled out before the final review "
    },
    {
      "title": "Fix bats test flakiness",
      "prNumber": 4663,
      "type": "bugfix",
      "body": "## Summary\n- guard port cleanup in bats tests\n- improve timing in dev-command tests\n- use `seq` for loops for broader shell compatibility\n\n## Testing\n- `./run_all_bats.sh` *(fails: 'bats' not found)*"
    },
    {
      "title": "fixed agent tests",
      "prNumber": 4661,
      "type": "bugfix",
      "body": ""
    },
    {
      "title": "cleaner readable test files",
      "prNumber": 4660,
      "type": "refactor",
      "body": ""
    },
    {
      "title": "Add chat clear and delete message features",
      "prNumber": 4659,
      "type": "feature",
      "body": "## Summary\n- add routes in the CLI test server for deleting individual/group memories\n- expose client API helpers for deleting and clearing group messages\n- support group memory deletion in query hooks\n- add clear chat button and delete mes"
    },
    {
      "title": "attempt: change pglite default dir",
      "prNumber": 4656,
      "type": "other",
      "body": ""
    },
    {
      "title": "default sentry better",
      "prNumber": 4655,
      "type": "other",
      "body": "Since requires new ENV added, usually would always be not true, this turns off sentry only if user sets false. Even if env not added."
    },
    {
      "title": "fix sharp install in CI, integration tests failing",
      "prNumber": 4654,
      "type": "bugfix",
      "body": "Add libvips-dev install to linux in CI, to fix error in integration tests:\n\n```\ngyp info spawn make\ngyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build' ]\n../src/common.cc:13:10: fatal error: vips/vips8: No such file or directory\n13 | #"
    },
    {
      "title": "generalized eliza agent character",
      "prNumber": 4653,
      "type": "other",
      "body": "Reduces lock in on default eliza character, removes IGNORES from message examples, goal is should be a good 1 on 1 chat that always responds for first time users."
    },
    {
      "title": "flyio docker deploy action for dev agent",
      "prNumber": 4652,
      "type": "other",
      "body": ""
    },
    {
      "title": "fix: reply action skipping dynamic providers",
      "prNumber": 4651,
      "type": "bugfix",
      "body": "This PR removes the skipping logic in the reply action. Previously, if a dynamic provider was added, it wouldn't be processed because the reply action would skip it.\r\n\r\nI think we might still need that shortcut if there's no dynamic provide"
    },
    {
      "title": "Add sentry logging to core logger errors.",
      "prNumber": 4650,
      "type": "feature",
      "body": "![image](https://github.com/user-attachments/assets/036e4f1c-bc4b-4271-a9fc-d707f1ce6ecf)\r\n\r\nInitial Sentry hookup into core logger errors.\r\n\r\nHas envs for custom Sentry setups, but defaults to ours."
    },
    {
      "title": "chore: make runtime logger public",
      "prNumber": 4696,
      "type": "other",
      "body": ""
    },
    {
      "title": "fix: use pglite in target dir with create command or inline env",
      "prNumber": 4695,
      "type": "bugfix",
      "body": "\n\n<!-- This is an auto-generated comment: release notes by coderabbit.ai -->\n\n## Summary by CodeRabbit\n\n- **Refactor**\n  - Environment and database configuration files are now stored within the project directory, ensuring localized setup fo"
    },
    {
      "title": "fix: make registry parsing direct executable + exportable",
      "prNumber": 4694,
      "type": "bugfix",
      "body": ""
    },
    {
      "title": "deps: remove discord opus deps",
      "prNumber": 4693,
      "type": "other",
      "body": ""
    },
    {
      "title": "chore: focused CLI testing",
      "prNumber": 4692,
      "type": "tests",
      "body": ""
    },
    {
      "title": "chore: Revert to using GH_PAT",
      "prNumber": 4691,
      "type": "other",
      "body": ""
    },
    {
      "title": "feat: make autodoc run on v2-develop",
      "prNumber": 4690,
      "type": "feature",
      "body": ""
    },
    {
      "title": "feat(client): move delete message button",
      "prNumber": 4689,
      "type": "feature",
      "body": "## Summary\n- show copy/tts actions and delete in same row\n- pass delete handler into `MessageContent`\n- remove old delete button placement\n\n## Testing\n- `bun run scripts/pre-commit-lint.js` *(fails: Script not found \"prettier\")*\n- `bun test"
    },
    {
      "title": "fix: Eliza290/cli test command",
      "prNumber": 4688,
      "type": "bugfix",
      "body": "This PR comprehensively updates the ElizaOS test cli command to provide a more consistent and improved testing experience across both plugins and projects.\r\n\r\n**Key Changes**\r\n\r\n1. CLI Command Structure: Reorganized the test command with th"
    },
    {
      "title": "feat: add timeout to cli tests",
      "prNumber": 4687,
      "type": "feature",
      "body": ""
    },
    {
      "title": "feat: Unify env file lookup across CLI",
      "prNumber": 4686,
      "type": "feature",
      "body": "## Summary\n- add `findNearestEnvFile` utility\n- use the new helper throughout CLI commands and utils\n\n## Testing\n- `bun test` *(fails: Cannot find module '@elizaos/core')*\n\n<!-- This is an auto-generated comment: release notes by coderabbit"
    },
    {
      "title": "feat: Lower web server logging (no 404 or ping logging)",
      "prNumber": 4685,
      "type": "feature",
      "body": "My heart isn't going to break if this is not merged, merely a suggestion\r\n\r\n"
    },
    {
      "title": "feat: Clean up plugin loading logging",
      "prNumber": 4684,
      "type": "feature",
      "body": "loading plugins just takes too much output and it's working fine now for the most part\r\n- just lower output for debug channel\r\n- move success to success channel\r\n\r\nMy heart isn't going to break if this is not merged, merely a suggestion\r\n\r\n"
    },
    {
      "title": "remove farcaster plugin",
      "prNumber": 4682,
      "type": "other",
      "body": "moved to: https://github.com/elizaos-plugins/plugin-farcaster"
    },
    {
      "title": "[Spartan] Minor tweaks",
      "prNumber": 4681,
      "type": "other",
      "body": "Just minor tweaks I've made so far"
    },
    {
      "title": "remove telegram-plugin",
      "prNumber": 4680,
      "type": "other",
      "body": "moved to: https://github.com/elizaos-plugins/plugin-telegram"
    },
    {
      "title": "fix: handle TRANSCRIPTION params & ensure proper agent log type compa…",
      "prNumber": 4679,
      "type": "bugfix",
      "body": "\n\n<!-- This is an auto-generated comment: release notes by coderabbit.ai -->\n\n## Summary by CodeRabbit\n\n- **New Features**\n  - Added support for viewing and filtering \"Transcription\" actions in the action viewer, including a new filter opti"
    },
    {
      "title": "fix: resolve character env loading, make the default character more c…",
      "prNumber": 4716,
      "type": "bugfix",
      "body": "\n\n<!-- This is an auto-generated comment: release notes by coderabbit.ai -->\n\n## Summary by CodeRabbit\n\n- **New Features**\n  - Updated Eliza character with refreshed descriptions, conversational examples, and style guidelines.\n  - Eliza now"
    },
    {
      "title": "fix docker voice",
      "prNumber": 4715,
      "type": "bugfix",
      "body": "<!-- Use this template by filling in information and copying and pasting relevant items out of the HTML comments. -->\r\n\r\n# Relates to\r\nFixes Docker deployments in TEE to ensure voice works correctly\r\n\r\nhttps://github.com/user-attachments/as"
    },
    {
      "title": "fix: cmd update to look for latest version spec by tag",
      "prNumber": 4714,
      "type": "bugfix",
      "body": ""
    },
    {
      "title": "ops: deploy CLI action",
      "prNumber": 4712,
      "type": "other",
      "body": "github action to auto deploy the CLI package on changes and version bump"
    },
    {
      "title": "fix: CLI update, use beta versions if exact is not found",
      "prNumber": 4711,
      "type": "bugfix",
      "body": "```\nError updating dependencies: Could not determine how to build the project\nProject successfully updated to the latest ElizaOS packages\n```\n\nIf deps install fails, we were still saying Success, because the try-catch scoping was not being "
    },
    {
      "title": "fix: CLI update, use beta versions if exact is not found",
      "prNumber": 4710,
      "type": "bugfix",
      "body": "```\nelizaos update: looking for same match of versions on plugins that don't exist, we need to not hardcode versions, use latest:,\nerror: No version matching \"1.0.0-beta.59\" found for specifier \"@elizaos/plugin-local-ai\" (but package exists"
    },
    {
      "title": "fix: filter for :user in client chat ignores",
      "prNumber": 4709,
      "type": "bugfix",
      "body": "`content: { text: 'hello', source: 'client_chat:user' }`\n\nIgnore was not being respected because client_chat gets `:user` appended to the string in CLI server handleSocket code.\n\nThis parses everything instead with includes.\n\n"
    },
    {
      "title": "fix: issue with create cmd and creating setup dirs",
      "prNumber": 4708,
      "type": "bugfix",
      "body": ""
    },
    {
      "title": "fix: updated text from eliza -> elizaos",
      "prNumber": 4707,
      "type": "bugfix",
      "body": "<!-- Use this template by filling in information and copying and pasting relevant items out of the HTML comments. -->\r\n\r\n# Relates to\r\nChanged text from eliza -> elizaos was making few users confuse when using cli\r\n\r\n<!-- LINK TO ISSUE OR T"
    },
    {
      "title": "fix: improve tweet text formatting with double newlines between sentence",
      "prNumber": 4706,
      "type": "bugfix",
      "body": "<!-- Use this template by filling in information and copying and pasting relevant items out of the HTML comments. -->\r\n\r\n# Relates to\r\nhttps://discord.com/channels/1051457140637827122/1323727516745334785/1375039664276377712\r\n![sdfasga](http"
    },
    {
      "title": "chore: centralise env resolution further",
      "prNumber": 4705,
      "type": "other",
      "body": "\n\n<!-- This is an auto-generated comment: release notes by coderabbit.ai -->\n## Summary by CodeRabbit\n\n- **New Features**\n  - Introduced new utilities for resolving environment files and database directories, improving consistency across th"
    },
    {
      "title": "Add file TRANSLATION",
      "prNumber": 4704,
      "type": "feature",
      "body": "<!-- Use this template by filling in information and copying and pasting relevant items out of the HTML comments. -->\r\n\r\n# Relates to\r\n\r\n<!-- LINK TO ISSUE OR TICKET -->\r\n\r\n<!-- This risks section must be filled out before the final review "
    },
    {
      "title": "add .env to plugin-starter's .gitignore file (publishing was failing due to key presence)",
      "prNumber": 4703,
      "type": "feature",
      "body": "**Problem**\r\n\r\nWhen publishing plugins to GitHub using elizaos publish, the CLI was accidentally including .env files in the initial commit. These files often contain sensitive GitHub credentials, leading to GitHub's push protection blockin"
    },
    {
      "title": "Delete README_IDN.md",
      "prNumber": 4702,
      "type": "other",
      "body": "the file is already there\r\n\r\n(i18n/readme/README_IND.md)\r\n\r\n<!-- Use this template by filling in information and copying and pasting relevant items out of the HTML comments. -->\r\n\r\n# Relates to\r\n\r\n<!-- LINK TO ISSUE OR TICKET -->\r\n\r\n<!-- Th"
    },
    {
      "title": "feat: Knowledge Plugin",
      "prNumber": 4701,
      "type": "feature",
      "body": "This PR moves the code for knowledge into the RAG plugin and renames that to the knowledge plugin\r\n\r\nSo now the agent will be able to process knowledge optionally with the plugin installed, completely removing it from the runtime"
    },
    {
      "title": "fix: use findNearestEnvFile(), etc to lookup github creds, before was…",
      "prNumber": 4700,
      "type": "bugfix",
      "body": "elizaos publish -t was failing with:\r\n\r\n✔ Enter your GitHub username: … yungalgo\r\n✔ Enter your GitHub Personal Access Token (with repo, read:org, and workflow scopes): … ****************************************\r\n[2025-05-22 03:52:59] WARN: "
    },
    {
      "title": "feat: Configure Tauri for multi-platform CI/CD and mobile support",
      "prNumber": 4699,
      "type": "feature",
      "body": "This commit introduces comprehensive updates to enable building, testing, and releasing your Tauri application (`packages/app`) across desktop (Linux, macOS, Windows) and mobile (Android, iOS) platforms.\r\n\r\nKey changes include:\r\n\r\n1.  **Tau"
    },
    {
      "title": "fix: env files, .73 release",
      "prNumber": 4751,
      "type": "bugfix",
      "body": ""
    },
    {
      "title": "feat: Comprehensive Image and Video Chat Support",
      "prNumber": 4750,
      "type": "feature",
      "body": "# 🎥 Comprehensive Image and Video Chat Support\n\nThis PR implements complete image and video handling capabilities in the Eliza chat interface, allowing users to share media content that gets properly displayed and processed by AI models.\n\n"
    },
    {
      "title": "feat: improve port + remote-url configuration support",
      "prNumber": 4749,
      "type": "feature",
      "body": ""
    },
    {
      "title": "chore: improve message handler template",
      "prNumber": 4748,
      "type": "other",
      "body": "\n\n<!-- This is an auto-generated comment: release notes by coderabbit.ai -->\n\n## Summary by CodeRabbit\n\n- **New Features**\n  - Enhanced provider selection rules for message handling, ensuring more accurate responses based on message content"
    },
    {
      "title": "unpeg CLI plugin / core deps, version .71 deploy CLI",
      "prNumber": 4747,
      "type": "other",
      "body": ""
    },
    {
      "title": "Updated polygon plugin",
      "prNumber": 4745,
      "type": "other",
      "body": "<!-- Use this template by filling in information and copying and pasting relevant items out of the HTML comments. -->\r\n\r\n# Relates to\r\n\r\n<!-- LINK TO ISSUE OR TICKET -->\r\n\r\n<!-- This risks section must be filled out before the final review "
    },
    {
      "title": "fix: make starter low prior",
      "prNumber": 4743,
      "type": "bugfix",
      "body": "\n\n<!-- This is an auto-generated comment: release notes by coderabbit.ai -->\n\n## Summary by CodeRabbit\n\n- **New Features**\n  - Updated plugin behavior to ensure it is given lower priority compared to other plugins.\n\n<!-- end of auto-generat"
    },
    {
      "title": "chore: update twitter setup blog",
      "prNumber": 4742,
      "type": "other",
      "body": "Update Twitter agent blog post."
    },
    {
      "title": "fix: postgres bypass + double init of server",
      "prNumber": 4741,
      "type": "bugfix",
      "body": ""
    },
    {
      "title": "fix: remove unused PDF.js imports causing CLI DOMMatrix runtime error",
      "prNumber": 4740,
      "type": "bugfix",
      "body": "**## Problem**\r\nCLI commands fail with `ReferenceError: Can't find variable: DOMMatrix` when running in environments without DOM support (like Node.js/Bun).\r\n\r\n**## Root Cause**  \r\n`packages/core/src/utils.ts` imports `pdfjs-dist` at the to"
    },
    {
      "title": "Add supplemental unit tests for core utilities",
      "prNumber": 4739,
      "type": "feature",
      "body": "## Summary\n- add utility tests verifying template upgrades, header addition, random name replacement, XML parsing, circular reference handling, and UUID validation\n- implement settings tests covering encryption/decryption and value salting "
    },
    {
      "title": "Fix Build Error: Missing findNearestEnvFile Import",
      "prNumber": 4732,
      "type": "bugfix",
      "body": "**Problem**\r\n\r\n- CLI build was failing with missing import error\r\n- `packages/cli/src/utils/registry/index.ts` was importing `findNearestEnvFile` which doesn't exist\r\n- Error: `No matching export in \"src/utils/index.ts\" for import \"findNear"
    },
    {
      "title": "feat: enhance plugin publishing with NPM authentication and validation",
      "prNumber": 4731,
      "type": "feature",
      "body": "**Key Features Added**\r\n\r\n1. NPM Authentication Integration (getNpmUsername())\r\n- Added required NPM authentication for registry compliance\r\n- Interactive prompts to use existing NPM login or switch accounts\r\n- Automatic fallback to npm log"
    },
    {
      "title": "refactor: simplify template path resolution in copy-template.ts",
      "prNumber": 4730,
      "type": "refactor",
      "body": "**Summary of changes:**\r\n\r\nRemoved UserEnvironment dependency - eliminated import and usage of UserEnvironment.getInstance()\r\nSimplified development mode logic - removed complex monorepo root detection and fallback logic\r\nStreamlined templa"
    },
    {
      "title": "update name handling in publisher.ts so it doesnt expect \"elizaos\" anymore",
      "prNumber": 4729,
      "type": "other",
      "body": "**Problem:**\r\n\r\npublisher.ts was hardcoded to only handle @elizaos/ scoped packages, but it needed to work with any npm scope (like @yungalgo/, @username/, etc.).\r\n\r\n**Specific Changes Made:**\r\n\r\nRepository Name Extraction (Line ~298)\r\nTest"
    },
    {
      "title": "fix: Fix response handling",
      "prNumber": 4728,
      "type": "bugfix",
      "body": "This PR fixes response handling, which is not working\r\n\r\nSo the agent actually responds and the message is correctly parsed without errors"
    },
    {
      "title": "update plugin prefix check/add function to also validate \"plugin-alpanumeric\" naming conv",
      "prNumber": 4727,
      "type": "feature",
      "body": "this is a small pr to change a codeblock that checks for \"plugin-\" prefix and adds it if its not there. i am also adding some alphanumeric validation to the part that comes after \"plugin-\" so it's like this:\r\n\r\nallowed:\r\nplugin-abc\r\nplugic-"
    },
    {
      "title": "chore: Update opentelemetry version and API usage",
      "prNumber": 4726,
      "type": "other",
      "body": "This PR updates the telemetry stack to consistent versions, since we were having some deprecation and version mismatch issues"
    },
    {
      "title": "Fix/linter issues and tests",
      "prNumber": 4725,
      "type": "bugfix",
      "body": ""
    },
    {
      "title": "fix: revert project starter character",
      "prNumber": 4724,
      "type": "bugfix",
      "body": ""
    },
    {
      "title": "fix: add libvips-dev to integration test CI",
      "prNumber": 4723,
      "type": "feature",
      "body": "fixes integration CI complaining in bun install because of Sharp deps"
    },
    {
      "title": "feat: write .env example, cleanup get-config functions",
      "prNumber": 4721,
      "type": "feature",
      "body": "`.env` file is empty on creation, this writes example envs for users to config better.\n\nAlso cleans up some functions and improves type safety and file handling."
    },
    {
      "title": "Factor Knowledge Out to Plugin and Add Service Registry Types",
      "prNumber": 4719,
      "type": "feature",
      "body": "This PR moves all knowledge functionality out of the runtime and into the plugin-knowledge\r\n\r\nIn additional, adds a service registry pattern so that external plugins can have typed Services referenced elsewhere"
    },
    {
      "title": "feat: WebSocket-based log streaming with live mode toggle",
      "prNumber": 4765,
      "type": "feature",
      "body": "## Summary\n\nThis PR adds real-time WebSocket-based log streaming to the log viewer with intelligent fallback to API polling. When the live mode toggle is enabled, the system automatically uses WebSocket streaming for instant log updates, bu"
    },
    {
      "title": "feat: Enhanced Agent Components with Improved UI and Functionality",
      "prNumber": 4764,
      "type": "feature",
      "body": "## Summary\n\nThis PR introduces significant enhancements to the agent-related components in the client package, improving both functionality and user experience.\n\n## Key Changes\n\n### Component Restructuring\n- **Renamed and enhanced component"
    },
    {
      "title": "feat: 🎨 Memory UI Enhancements & UX Improvements",
      "prNumber": 4761,
      "type": "feature",
      "body": "## 🎨 Memory UI Enhancements & UX Improvements\n\n### Overview\nThis PR significantly improves the memory management interface with enhanced UI components, better user experience, and cleaner visual design across the memory viewer and edit ove"
    },
    {
      "title": "refactor: consolidate duplicate publishing workflows",
      "prNumber": 4760,
      "type": "refactor",
      "body": "## Summary\n- Consolidate `pre-release.yml`, `release.yaml`, and `deploy-cli.yml` into a single `publish.yml` workflow\n- Eliminate ~90% code duplication while maintaining all existing functionality\n- Add enhanced manual trigger with dry-run "
    },
    {
      "title": "refactor: convert deploy-cli workflow to manual trigger with dist-tag selection",
      "prNumber": 4759,
      "type": "refactor",
      "body": "## Summary\n- Converts deploy-cli workflow from automatic push trigger to manual workflow_dispatch\n- Adds GH_PAT token for enhanced git operations and permissions\n- Replaces manual version checking with lerna-managed prerelease versioning\n- "
    },
    {
      "title": "feat: properly exclude template packages from lerna publish",
      "prNumber": 4758,
      "type": "feature",
      "body": "## Summary\n- Fix lerna publish command to properly exclude template packages from auto-publishing\n- Resolves GitHub Actions failure: \"lerna --ignore was renamed to --ignore-changes\"\n- Implements proper template exclusion while keeping templ"
    },
    {
      "title": "fix: resolve deploy-cli workflow publishing failures",
      "prNumber": 4757,
      "type": "bugfix",
      "body": "## Summary\n- Fix E404 and E403 publishing errors in deploy-cli workflow\n- Add lerna ignore flags for template packages that shouldn't be published\n- Exclude both `create-eliza` and `plugin-starter` via workflow ignore flags\n\n## Changes\n- Ad"
    },
    {
      "title": "Update claude.yml",
      "prNumber": 4756,
      "type": "other",
      "body": ""
    },
    {
      "title": "chore: move logic for image description to bootstrap",
      "prNumber": 4754,
      "type": "other",
      "body": "\n\n<!-- This is an auto-generated comment: release notes by coderabbit.ai -->\n\n## Summary by CodeRabbit\n\n- **New Features**\n  - Introduced automatic generation of detailed descriptions for image attachments, including a concise title, summar"
    },
    {
      "title": "fix: remove tee plugin, bump packages",
      "prNumber": 4753,
      "type": "bugfix",
      "body": "removes tee-plugin from monorepo, syncs packages to latest tags"
    },
    {
      "title": "fix: .env hoisting in non-monorepo dirs",
      "prNumber": 4752,
      "type": "bugfix",
      "body": "Any .envs upper from the project directory would get grabbed, even not inside monorepos... now this forces .env creation and respects the project folder."
    }
  ],
  "topContributors": [
    {
      "username": "wtfsayo",
      "avatarUrl": "https://avatars.githubusercontent.com/u/82053242?u=98209a1f10456f42d4d2fa71db4d5bf4a672cbc3&v=4",
      "totalScore": 1148.422796060461,
      "prScore": 1126.392796060461,
      "issueScore": 0,
      "reviewScore": 19.5,
      "commentScore": 2.53,
      "summary": "wtfsayo: Extremely active contributor who merged 33 PRs this week, making substantial code changes (+85k/-354k lines) with a focus on enhancing CLI functionality, improving environment handling, and adding comprehensive image/video chat support in PR #4750 (+4.5k/-3.3k lines). Demonstrated significant refactoring work in PR #4686 \"Unify env file lookup across CLI\" which removed over 46k lines, while also implementing UI improvements for memory, agent components, and WebSocket-based log streaming. Consistently active every day of the week, wtfsayo balanced feature development, bug fixes, and test improvements while maintaining a rapid PR merge rate (average 3 hours to merge)."
    },
    {
      "username": "ChristopherTrimboli",
      "avatarUrl": "https://avatars.githubusercontent.com/u/27584221?u=0d816ce1dcdea8f925aba18bb710153d4a87a719&v=4",
      "totalScore": 782.7397491572418,
      "prScore": 693.0397491572419,
      "issueScore": 0,
      "reviewScore": 89.5,
      "commentScore": 0.2,
      "summary": "ChristopherTrimboli: Led a major cleanup effort with 24 merged PRs, removing several plugins (Twitter #4669, Discord #4668, Farcaster #4682, Telegram #4680, Tee #4753) that eliminated over 38k lines of code while adding deployment improvements (FlyIO Docker #4652, CLI action #4712). Fixed numerous environment and configuration issues (#4751, #4721, #4752), improved error handling with Sentry integration (#4650), and maintained a very consistent work pattern with activity every day of the week."
    },
    {
      "username": "0xbbjoker",
      "avatarUrl": "https://avatars.githubusercontent.com/u/54844437?u=90fe1762420de6ad493a1c1582f1f70c0d87d8e2&v=4",
      "totalScore": 426.04830061149994,
      "prScore": 401.3903006114999,
      "issueScore": 0,
      "reviewScore": 23,
      "commentScore": 1.658,
      "summary": "0xbbjoker: Merged 12 PRs this week with significant work on fixing plugin builds (#4675, removing ~36k lines), improving message handling (#4748), and enhancing image description functionality (#4754). Consistently active every day with a balanced focus on features (35%) and bug fixes (35%), particularly addressing issues with character environment loading (#4716), command updates (#4714), and project setup (#4708, #4671). Provided 5 code reviews and maintained 2 open PRs for ongoing work on PGLite issues and agent configuration updates."
    },
    {
      "username": "lalalune",
      "avatarUrl": "https://avatars.githubusercontent.com/u/18633264?u=e2e906c3712c2506ebfa98df01c2cfdc50050b30&v=4",
      "totalScore": 378.3848874352684,
      "prScore": 375.30888743526845,
      "issueScore": 2,
      "reviewScore": 0,
      "commentScore": 1.0759999999999998,
      "summary": "lalalune: Led major refactoring efforts with 7 merged PRs including the Knowledge Plugin feature (#4701, +4224/-1708 lines) and factoring out Knowledge to a plugin (#4719, +27088/-54238 lines), while also adding chat features (#4659) and fixing response handling (#4728). Maintained a consistent work pattern across 5 days with 30 commits modifying 648 files (+41152/-69300 lines), while also opening 7 PRs focused on testing, memory visualization, and Windows build fixes. Additionally contributed to project planning by creating the \"V3 Goals\" issue (#4720) and actively participating in 9 issue discussions."
    },
    {
      "username": "yungalgo",
      "avatarUrl": "https://avatars.githubusercontent.com/u/113615973?u=92e0f29f7e2fbb8ce46ed13c51f692ca803de02d&v=4",
      "totalScore": 322.54913820009386,
      "prScore": 317.00913820009384,
      "issueScore": 0,
      "reviewScore": 5,
      "commentScore": 0.54,
      "summary": "yungalgo: Merged 10 PRs this week with substantial code changes (+6632/-53391 lines), primarily focused on CLI improvements, plugin publishing enhancements, and test updates. Notable contributions include fixing CLI test commands (#4688, removing over 52k lines), enhancing plugin publishing with NPM authentication (#4731), and comprehensive documentation updates for CLI commands (#4646). Maintained consistent activity across 5 days, with significant effort on test improvements and bug fixes for build errors and runtime issues."
    },
    {
      "username": "odilitime",
      "avatarUrl": "https://avatars.githubusercontent.com/u/16395496?u=c9bac48e632aae594a0d85aaf9e9c9c69b674d8b&v=4",
      "totalScore": 203.1625921979089,
      "prScore": 183.12259219790892,
      "issueScore": 0,
      "reviewScore": 19.5,
      "commentScore": 0.54,
      "summary": "odilitime: Merged 4 PRs this week, including significant updates to ElizaOS in #4648 (+959/-419 lines) and Spartan tweaks in #4681 (+168/-196 lines), along with improvements to web server logging (#4685) and plugin loading (#4684). Contributed substantial code changes across 1867 files (+90155/-247171 lines) through 47 commits, primarily focusing on other work (85%) and bug fixes (13%). Provided 4 code reviews with 3 approvals while maintaining activity on 4 out of 7 days."
    },
    {
      "username": "Samarthsinghal28",
      "avatarUrl": "https://avatars.githubusercontent.com/u/120447590?v=4",
      "totalScore": 83.9755477931522,
      "prScore": 83.9755477931522,
      "issueScore": 0,
      "reviewScore": 0,
      "commentScore": 0,
      "summary": "Samarthsinghal28: Merged two PRs related to the Polygon Plugin, with #4635 adding the initial plugin implementation and #4745 providing significant updates (+6224/-2934 lines). The contributions represent substantial code changes with a combined +7269/-1365 lines across both merged PRs."
    },
    {
      "username": "samarth30",
      "avatarUrl": "https://avatars.githubusercontent.com/u/48334430?u=1fc119a6c2deb8cf60448b4c8961cb21dc69baeb&v=4",
      "totalScore": 73.9364066231405,
      "prScore": 73.9364066231405,
      "issueScore": 0,
      "reviewScore": 0,
      "commentScore": 0,
      "summary": "samarth30: Fixed two minor text-related bugs with merged PRs #4707 (updating \"eliza\" to \"elizaos\", +4/-2 lines) and #4706 (improving tweet text formatting, +1/-0 lines). Currently working on implementing a missing method in PR #4746 related to UUID functionality, showing a focus on small but targeted bugfixes across the codebase."
    },
    {
      "username": "0xCardiE",
      "avatarUrl": "https://avatars.githubusercontent.com/u/8969767?u=8b05509ceb96fd63a6246dfbf0860fd1df586e59&v=4",
      "totalScore": 57.2295585938804,
      "prScore": 57.029558593880395,
      "issueScore": 0,
      "reviewScore": 0,
      "commentScore": 0.2,
      "summary": "0xCardiE: Merged three significant API-related PRs this week (#4647, #4677, #4667) focused on room creation, agent room retrieval, and world endpoints, collectively adding 1,408 lines while removing 34,662 lines of code. Created and closed issue #4632 regarding leaderboard username changes, while maintaining activity on 2 days of the week."
    },
    {
      "username": "tcm390",
      "avatarUrl": "https://avatars.githubusercontent.com/u/60634884?u=c6c41679b8322eaa0c81f72e0b4ed95e80f0ac16&v=4",
      "totalScore": 45.21684631185576,
      "prScore": 45.21684631185576,
      "issueScore": 0,
      "reviewScore": 0,
      "commentScore": 0,
      "summary": "tcm390: Fixed issues with reply actions by merging two PRs: #4670 (+2658/-1145 lines) addressing shortcuts when no dynamic provider is present, and #4651 (+1/-40 lines) fixing reply actions skipping dynamic providers. Modified 58 files with a total of +2659/-1185 lines of code changes, showing focused work on bugfixes during a single day of activity this week."
    },
    {
      "username": "nexisdev",
      "avatarUrl": "https://avatars.githubusercontent.com/u/89941175?u=faef3a0d6dfa5636f66776e2937e03bee832ef42&v=4",
      "totalScore": 40.4317738965761,
      "prScore": 40.4317738965761,
      "issueScore": 0,
      "reviewScore": 0,
      "commentScore": 0,
      "summary": "nexisdev: Opened PR #4718 to fork elizaOS/eliza to nexisOS/nex, making substantial code changes across 228 files (+1468/-1468 lines) in a single day of activity. The work was entirely focused on refactoring, primarily modifying code files (62%) and configuration files (18%)."
    },
    {
      "username": "jkbrooks",
      "avatarUrl": "https://avatars.githubusercontent.com/u/129074?u=4cd0bf499a885dd922e04d57e805c88f7c6dd4f9&v=4",
      "totalScore": 40.4317738965761,
      "prScore": 40.4317738965761,
      "issueScore": 0,
      "reviewScore": 0,
      "commentScore": 0,
      "summary": "jkbrooks: Opened PR #4683 \"Permashill impl plan v1\" which remains under review. No other activity this week."
    },
    {
      "username": "HarshModi2005",
      "avatarUrl": "https://avatars.githubusercontent.com/u/142230924?u=64e337bbdb6b3aded5943b7e297759e7a3cfc0f0&v=4",
      "totalScore": 40.4317738965761,
      "prScore": 40.4317738965761,
      "issueScore": 0,
      "reviewScore": 0,
      "commentScore": 0,
      "summary": "HarshModi2005: Merged a significant pull request (#4636) titled \"Merge addpolygon resolution\" that modified 109 files with substantial code changes (+31441/-9558 lines). Active on 3 days this week with 9 commits, focusing primarily on bugfixes (33%) and other work (33%), with additional contributions to tests (22%) and features (11%)."
    },
    {
      "username": "HashWarlock",
      "avatarUrl": "https://avatars.githubusercontent.com/u/64296537?u=1d8228a93c06c603e08d438677b3f736d6b1ab22&v=4",
      "totalScore": 37.988379239589584,
      "prScore": 32.78837923958958,
      "issueScore": 0,
      "reviewScore": 5,
      "commentScore": 0.2,
      "summary": "HashWarlock: Fixed Docker voice functionality through PR #4715 (+12/-25 lines), which involved configuration changes across 4 files. Contributed 2 commits with an equal split between feature and bugfix work, and provided 1 approval review with 1 PR comment."
    },
    {
      "username": "crypto-cooker",
      "avatarUrl": "https://avatars.githubusercontent.com/u/16945788?u=819d567b766cb43113f89fb60ba0fac4c5137cf5&v=4",
      "totalScore": 33.9277738965761,
      "prScore": 33.9277738965761,
      "issueScore": 0,
      "reviewScore": 0,
      "commentScore": 0,
      "summary": "crypto-cooker: Opened PR #4672 \"Fix/not defined echochambersplugin\" to address a bug issue, with minimal code changes (+6/-4 lines) across 600 files. Activity was limited to a single day this week."
    },
    {
      "username": "Freytes",
      "avatarUrl": "https://avatars.githubusercontent.com/u/4147278?u=89aa9570e6f8b4a8e9e41e8f908c16fb69c5a43f&v=4",
      "totalScore": 33.6997738965761,
      "prScore": 33.6997738965761,
      "issueScore": 0,
      "reviewScore": 0,
      "commentScore": 0,
      "summary": "Freytes: Working on a significant implementation with PR #4717 \"wip: Execute Buys on strategies using plugin-jupiter\" that involves substantial code changes (+3527/-142 lines across 50 files). Active on 3 days this week with 4 commits, primarily focused on new development (75%) with some bugfix work (25%), modifying mostly code (72%) and configuration files (25%)."
    },
    {
      "username": "imholders",
      "avatarUrl": "https://avatars.githubusercontent.com/u/202005793?v=4",
      "totalScore": 31.464984239664364,
      "prScore": 31.464984239664364,
      "issueScore": 0,
      "reviewScore": 0,
      "commentScore": 0,
      "summary": "imholders: Focused on documentation work this week, merging two PRs related to translations: PR #4704 added translation files (+418/-11 lines) and PR #4702 removed an outdated README file (+0/-149 lines). All activity occurred on a single day, with documentation being the exclusive focus of their contributions."
    },
    {
      "username": "monilpat",
      "avatarUrl": "https://avatars.githubusercontent.com/u/15067321?v=4",
      "totalScore": 16,
      "prScore": 0,
      "issueScore": 0,
      "reviewScore": 16,
      "commentScore": 0,
      "summary": "monilpat: Provided 4 code reviews (3 approvals, 1 change request) and added 2 PR comments while making substantial code changes (+7,411/-1,541 lines) across 41 files in 2 commits. Activity was concentrated on a single day this week, with work spread across various file types."
    },
    {
      "username": "Icarus-Community",
      "avatarUrl": "https://avatars.githubusercontent.com/u/174098848?u=e1b5a7fe3b0a3bda521bb26fc2e5bc3fa21393c2&v=4",
      "totalScore": 4.5,
      "prScore": 0,
      "issueScore": 4.1,
      "reviewScore": 0,
      "commentScore": 0.4,
      "summary": "Icarus-Community: Focused on issue tracking this week, opening two new issues (#4697 regarding switching the agent from SQLite to Postgres and #4744 about an export member error) and contributing to four issue discussions. No code changes or pull request activity during this period."
    },
    {
      "username": "standujar",
      "avatarUrl": "https://avatars.githubusercontent.com/u/16385918?u=718bdcd1585be8447bdfffb8c11ce249baa7532d&v=4",
      "totalScore": 4,
      "prScore": 0,
      "issueScore": 4,
      "reviewScore": 0,
      "commentScore": 0,
      "summary": "standujar: Reported two API-related issues this week: #4763 regarding \"API /:agentId/rooms/:roomId is not working\" and #4762 about \"API /:agentId/rooms is not working\", both of which remain open."
    }
  ],
  "newPRs": 125,
  "mergedPRs": 124,
  "newIssues": 5,
  "closedIssues": 16,
  "activeContributors": 35
}