{
  "prompt_name": "developer-update",
  "category": "dev",
  "date": "2025-07-27",
  "generated_text": "# ElizaOS Developer Update - July 27, 2025\n\n## Core Framework\n\nThis week marked a significant milestone for the ElizaOS architecture with the completion of the migration from JSON-based prompts to an XML format across the codebase. This refactoring greatly enhances the reliability of LLM responses and affects core entities and the bootstrap plugin ([#5623](https://github.com/elizaos/eliza/pull/5623)). \n\nThe runtime architecture saw two major improvements:\n\n1. **EventTarget Migration**: We've replaced Node.js's `EventEmitter` with Bun's native `EventTarget` API ([#5609](https://github.com/elizaos/eliza/pull/5609)), improving performance and runtime compatibility. Full backward compatibility is maintained with comprehensive tests verifying EventEmitter-compatible behavior.\n\n2. **Service Types System**: A new standardized interface for services has been implemented ([#5565](https://github.com/elizaos/eliza/pull/5565)), allowing for multiple services per type and the new `getServicesByType()` method. This creates a more modular architecture where agents can dynamically discover and leverage available services by capability.\n\nThe plugin system benefited from a new backend-only `plugin-quick-starter` template ([#5589](https://github.com/elizaos/eliza/pull/5589)) that enables more streamlined development of plugins without frontend overhead.\n\n## New Features\n\n### Action Chaining\n\nAction chaining ([#5436](https://github.com/elizaos/eliza/pull/5436)) is now available, enabling agents to plan and execute multiple actions in sequence:\n\n```javascript\n// Define a chain of actions\nconst actionChain = [\n  { \n    name: \"fetchData\", \n    params: { source: \"api\", endpoint: \"/users\" }\n  },\n  { \n    name: \"processData\", \n    // Will use result from previous action\n  },\n  { \n    name: \"respondToUser\"\n  }\n];\n\n// Action state is stored and passed through the chain\nasync function fetchDataAction(state) {\n  // Previous actions' results available in state.actionState\n  const data = await fetchFromAPI(state.params.endpoint);\n  \n  // Store result for next action\n  return {\n    result: data,\n    // Optional message to user during processing\n    callback: \"Fetching your data...\"\n  };\n}\n```\n\nState is preserved between actions, allowing each step to build upon the results of previous actions. This enables complex workflows like data retrieval, processing, and response generation to be executed in sequence.\n\n### Image Generation\n\nA new `generateImageAction` has been added to the agent pipeline ([#5446](https://github.com/elizaos/eliza/pull/5446)), enabling agents to generate images based on conversational context using `ModelType.IMAGE`.\n\n### Auto-Resizing Chat Input\n\nThe ChatInput component now features auto-resizing functionality that dynamically adjusts based on content length ([#5546](https://github.com/elizaos/eliza/pull/5546)):\n\n```jsx\nfunction resizeTextarea(textarea) {\n  if (!textarea) return;\n  \n  textarea.style.height = \"auto\";\n  textarea.style.height = `${Math.min(textarea.scrollHeight, MAX_HEIGHT)}px`;\n}\n\n// Used in ChatInput component\nconst textareaRef = useRef(null);\n\nuseEffect(() => {\n  if (textareaRef.current) {\n    resizeTextarea(textareaRef.current);\n  }\n}, [value]);\n```\n\n## Bug Fixes\n\nWe've resolved several critical bugs this week:\n\n1. **EventTarget Migration Stability**: Fixed method chaining and enhanced type safety in the EventTarget migration to ensure a smooth transition from EventEmitter ([#5612](https://github.com/elizaos/eliza/pull/5612), [#5611](https://github.com/elizaos/eliza/pull/5611)).\n\n2. **Plugin Actions Loading**: Fixed a critical issue where plugin actions were not being received by the runtime when using the NPM deployed version of the ElizaOS CLI ([#5624](https://github.com/elizaos/eliza/pull/5624)). This issue only affected the published NPM package and was resolved by importing `*/dist/index.js` to ensure the compiled files were correctly loaded.\n\n3. **JSON String Handling in SQL Base**: Fixed a bug in the SQL plugin where raw objects were incorrectly passed to PostgreSQL's JSONB type, causing insert failures ([#5628](https://github.com/elizaos/eliza/pull/5628)). The fix ensures proper stringification of content and metadata before database operations.\n\n4. **Nested Project Database Isolation**: Fixed an issue where creating a new ElizaOS project within an existing project directory caused the child to incorrectly inherit the parent's `PGLITE_DATA_DIR` environment variable ([#5618](https://github.com/elizaos/eliza/pull/5618)).\n\n## API Changes\n\nThe primary API change this week is the introduction of service types and the `getServicesByType()` method ([#5565](https://github.com/elizaos/eliza/pull/5565)). This method allows plugins to discover and use services based on their capabilities rather than specific implementations:\n\n```javascript\n// Before: Had to know exact service name\nconst webSearchService = runtime.services.googleSearch;\n\n// After: Get any available web search service\nconst webSearchServices = runtime.getServicesByType('webSearch');\nconst webSearchService = webSearchServices[0]; // Use first available\n```\n\nNew standardized service interfaces include:\n- WebSearchService\n- BrowserService\n- EmailService\n- PDFService\n- TranscriptionService\n- VideoService\n- MessageService\n- PostService\n\nPlugins should adopt these interfaces for better interoperability across the ecosystem.\n\n## Social Media Integrations\n\nThe Twitter plugin has received significant attention this week:\n\n1. **Default Character Enhancement**: The default Eliza character now includes Twitter posting examples ([#5652](https://github.com/elizaos/eliza/pull/5652)), enabling Twitter functionality out of the box:\n\n```javascript\n// Example Twitter posting functionality now included in default character\nconst twitterAction = {\n  name: 'postToTwitter',\n  description: 'Post a message to Twitter/X',\n  parameters: {\n    message: {\n      type: 'string',\n      description: 'The message to post'\n    }\n  }\n};\n```\n\n2. **X Platform Ban Resolution**: During Discord discussions this week, the team revealed they are working toward resolving the suspension of ElizaOS-related accounts from X/Twitter. Kenk mentioned they have \"a resolution with X in sight\" and that communication between ElizaOS and X teams has reportedly become quicker.\n\n## Model Provider Updates\n\nA significant architecture change has been proposed to consolidate AI model providers into a single `plugin-inference` that would support multiple API-compatible services like OpenAI, Anthropic, Google, and Groq. Discord discussions showed a preference for dynamic plugin loading/unloading as the most scalable approach for switching between providers, leveraging the existing ai-sdk for standardization.\n\nOther model provider updates:\n\n1. **Plugin Prompts Migration**: All JSON-based prompts in the bootstrap plugin have been migrated to XML format ([#5623](https://github.com/elizaos/eliza/pull/5623)) for improved LLM reliability.\n\n2. **Ollama Integration**: The Ollama plugin is now conditionally included based on the `OLLAMA_API_ENDPOINT` environment variable ([#5594](https://github.com/elizaos/eliza/pull/5594)) rather than being a universal fallback.\n\n3. **Improved Provider Selection**: The LLM provider selection prompt has been refined to reduce unnecessary provider use and improve reply speed ([#5526](https://github.com/elizaos/eliza/pull/5526)).\n\n## Breaking Changes\n\n### V1 to V2 Migration\n\nTo support backward compatibility, we've added automatic V1 to V2 character conversion during JSON import ([#5536](https://github.com/elizaos/eliza/pull/5536)). This ensures older character files work seamlessly with the new version:\n\n```javascript\n// Example of the conversion process\nfunction convertV1ToV2(character) {\n  if (!isV1Character(character)) return character;\n  \n  return {\n    name: character.name,\n    description: character.description || '',\n    systemPrompt: character.systemPrompt,\n    plugins: mapLegacyProvidersToPlugins(character.providers),\n    settings: {\n      avatar: character.avatar || '',\n      model: mapLegacyModelToV2Model(character.model),\n      temperature: character.temperature || 0.7\n    }\n  };\n}\n```\n\nNotable changes in the conversion include:\n- `providers` array is mapped to the new `plugins` array with modern plugin names\n- Provider-specific settings are properly restructured under the `settings` object\n- Legacy models are mapped to their V2 equivalents\n\nThis automatic conversion ensures a smooth transition for users migrating from V1 to V2 of the platform.",
  "source_references": [
    "2025-07-27\n---\n2025-07-26.md\n---\n# elizaOS Discord - 2025-07-26\n\n## Overall Discussion Highlights\n\n### X Platform Ban Resolution\n- ElizaOS, shawmakesmagic, and ai16z are currently banned from X (Twitter)\n- Kenk mentioned they have \"a resolution with X in sight\" and are holding off on creating new accounts\n- Communication between ElizaOS and X teams has reportedly become quicker\n- The team is not sharing screenshots of communications with X for now\n\n### Technical Architecture\n- Shaw proposed consolidating AI model providers into a single `plugin-inference` that would support multiple API-compatible services (OpenAI, Anthropic, Google, Groq)\n- Discussion favored dynamic plugin loading/unloading as the most scalable approach for switching between providers\n- Cjft suggested leveraging the existing ai-sdk for standardization rather than building from scratch\n- Clarification that Eliza can plan and execute multiple actions in sequence, not just single responses\n- Websockets functionality allows sending messages outside the standard response pattern\n\n### Agent Development\n- Agent Joshua is working on TEE (Trusted Execution Environment) deployment\n- R0am demonstrated a personal agent built with n8n and Zep for knowledge management\n- The agent processes information from Readwise highlights, Brave search API, and web content\n- Discussion about knowledge graphs for agents, with neo4j highlighted as a powerful option\n- Shaw offered a bounty for improving the plugin-auton8n project\n\n### Ecosystem & Community\n- Discussion about the Solana ecosystem's relative silence regarding ElizaOS's situation\n- Kenk clarified that while ElizaOS is Solana-native from a token perspective, they are chain-agnostic\n- Community members creating memes and promotional content for the project\n- Yikesawjeez mentioned the GENIUS act passing, which impacts memecoin regulation\n\n## Key Questions & Answers\n\n**Q: Which X accounts does the community recommend following for the latest news and updates about ElizaOS?**  \nA: Follow the builders behind the elizaOS framework, including team members across various roles. For the time being, follow the team as they have a resolution with X in sight. (Kenk)\n\n**Q: Are you not allowed to publicly communicate the conversations between you and X with us?**  \nA: We're not going to share screenshots. We have a resolution with X which has been reaffirmed, communications has become quicker between teams. (Kenk)\n\n**Q: What is the biggest catalyst we can have on elizaos ecosystem?**  \nA: The opportunity for agents on chain is broad but diverse with different catalysts across each vertical ranging from IP to Content Creators. Seeing breakout AI apps across key sectors would be a strong catalyst. (Kenk)\n\n**Q: Is it correct that Eliza is a single response model by default?**  \nA: No, it can plan multiple actions in response, run them in order, and pass their actions down the chain. Also we have websockets in most cases so it can send a message not as a response. (shaw)\n\n**Q: What if we could make a plugin-inference that supports multiple API-compatible services?**  \nA: It would be better to dynamically load/unload plugins as the most scalable approach, and leverage ai-sdk which has already done the standardization work. (Odilitime and cjft)\n\n**Q: How would you prioritize which service to use if you had multiple API keys set?**  \nA: You could use plugin params or configs, or dynamically load their provider sets through ai-sdk. (Odilitime and cjft)\n\n**Q: What tools do you use for this [image creation]?**  \nA: Midjourney (Dr. Neuro)\n\n## Community Help & Collaboration\n\n1. **Deployment Guide Assistance**\n   - Helper: Agent Joshua\n   - Helpee: sayonara\n   - Context: Deployment guide needed for elizaOS\n   - Resolution: Joshua offered to push to a branch with directions after putting his babies to bed\n\n2. **Knowledge Graph Implementation**\n   - Helper: R0am\n   - Helpee: yikesawjeez\n   - Context: Understanding how n8n and Zep work together for knowledge graphs\n   - Resolution: R0am shared screenshots and explained his workflow using Readwise, Brave search API, and TG as interface\n\n3. **JSON Format Issues**\n   - Helper: starlord\n   - Helpee: Samuel Chauche\n   - Context: JSON format hallucination issues with Eliza\n   - Resolution: Suggested using a larger model, cloud GPU, or OpenAI, though the user clarified they were already using OpenAI\n\n4. **Meme Creation Guidance**\n   - Helper: Dr. Neuro\n   - Helpee: ElizaBAO\ud83c\udf1f\n   - Context: ElizaBAO\ud83c\udf1f wanted to create memes for \"eliza\" project\n   - Resolution: Dr. Neuro created sample images using Midjourney and offered guidance on the meme creation process\n\n## Action Items\n\n### Technical\n- Create a vanilla elizaOS template for cloud launching with deployment guide (Agent Joshua)\n- Implement dynamic plugin loading/unloading for AI model providers (shaw, Odilitime)\n- Improve plugin-auton8n (bounty offered) (shaw)\n- Explore n8n swarm where agents can be tools for other agents (R0am)\n- Investigate and fix JSON format hallucination issues with Eliza's responses (Samuel Chauche)\n- Debug transaction failure in auto.fun launchpad (ElizaBAO\ud83c\udf1f)\n- Create memes for the Eliza project (ElizaBAO\ud83c\udf1f)\n- Create promotional content for eli5 project (Dr. Neuro)\n- Resolution of X platform ban for ElizaOS, shawmakesmagic, and ai16z accounts (Kenk)\n\n### Feature\n- Consider using ai-sdk for standardized model provider integration (cjft)\n- Development of breakout AI apps across key sectors (Kenk)\n- Get token listed on CoinGecko (Kenk)\n\n### Documentation\n- Create deployment documentation for TEE (sayonara)\n- Clearer communication about the X ban situation (Gianni)\n---\n2025-07-25.md\n---\n# elizaOS Discord - 2025-07-25\n\n## Overall Discussion Highlights\n\n### Technical Development\n- **Plugin Architecture Improvements**: shaw proposed consolidating various AI model providers (OpenAI, Anthropic, Google, Groq) into a single `plugin-inference` instead of separate plugins. The team discussed using ai-sdk for standardization as the most scalable approach.\n- **TEE Implementation**: Agent Joshua successfully deployed a Trusted Execution Environment (TEE) with a streamable HTTP server and offered to document the deployment process.\n- **Security Vulnerability**: cjft discovered a critical vulnerability where `elizaos publish` wasn't ignoring `.env` files, potentially exposing sensitive data, and began working on a fix.\n- **Knowledge Management Solutions**: R0am demonstrated a personal agent built using n8n and Zep for knowledge graphs, sparking discussions about different knowledge graph technologies and data pipelines.\n\n### Documentation & Resources\n- **Documentation Consolidation**: Borko confirmed that elizaos.ai will link directly to eliza.how to centralize documentation.\n- **Agent Development Guide**: DorianD provided detailed guidance to 3on_ about installing and configuring agents using Cursor AI, including forking repositories, indexing files, and linking documentation repositories.\n\n### Community & Platform Issues\n- **X/Twitter Account Suspensions**: The ElizaOS team (particularly Kenk) is working toward resolving the suspension of ElizaOS-related accounts from X/Twitter but is withholding detailed information about communications. Ben confirmed \"we'll be back, Eliza's just spreading her wings.\"\n- **Alternative Platforms**: DorianD suggested establishing a presence on Bluesky, sharing documentation links for creating bots on that platform.\n- **Project Direction Concerns**: Community members questioned the focus on memecoin launchpads rather than trading agent development, with some suggesting that auto.fun should prioritize Spartan as a trading agent launchpad.\n\n### Ongoing Development\n- **Plugin Development**: cjft is working on a \"waifu\" plugin (plugin-google-meet-cute) with plans to complete it for Monday's standup.\n- **Multi-repo Analysis**: jin is running daily multi-repo analysis to track development across repositories.\n- **MCP Interface**: Agent Joshua is making progress on the Message Control Protocol interface.\n\n## Key Questions & Answers\n\n**Q: How do I create my first agent for my Discord channel?** (asked by 3on_)  \n**A:** Use Cursor AI to help with installation, fork the main repo in GitHub, git clone it locally, and add the ElizaOS doc repo in settings to help the agent index files. (answered by DorianD)\n\n**Q: Which embedding provider is best for plugin-knowledge?** (asked by Rixilius)  \n**A:** OpenAI with text-embedding-3-large model and 3072 dimensions, plus Google's gemini-2.5-flash-lite for contextual chunking. (answered by 0xbbjoker)\n\n**Q: How would dynamic loading/unloading of plugins work for switching between AI providers?** (asked by shaw)  \n**A:** It would involve unregistering all runtime properties added by the plugin, which is the most scalable approach for swapping components. (answered by Odilitime)\n\n**Q: Is Eliza a single response model by default?** (asked by Snapper)  \n**A:** No, it can plan multiple actions in response, run them in order, and pass their actions down the chain. Also we have websockets in most cases so it can send a message not as a response. (answered by shaw)\n\n**Q: Which X accounts does the community recommend following for the latest news about ElizaOS?** (asked by Hannes K.)  \n**A:** Follow the builders behind the elizaOS framework [list of team members and their X accounts]. (answered by Kenk)\n\n**Q: So twitter accounts gone forever?** (asked by mat)  \n**A:** We'll be back, Eliza's just spreading her wings. (answered by ben)\n\n**Q: What documentation site should elizaos.ai link to?** (asked by jin)  \n**A:** We're switching over to eliza.how to link straight from elizaos.ai. (answered by Borko)\n\n## Community Help & Collaboration\n\n### Agent Development Guidance\nDorianD provided comprehensive step-by-step guidance to 3on_ on creating their first agent for Discord, covering repository forking, local setup, and documentation integration.\n\n### Embedding Configuration Optimization\n0xbbjoker helped Rixilius with plugin-knowledge issues, suggesting specific embedding configurations using OpenAI's text-embedding-3-large and contextual chunking with Google's Gemini model to improve matching quality.\n\n### Knowledge Graph Implementation\nR0am shared his knowledge management setup with yikesawjeez, explaining how he uses n8n with Zep as a knowledge graph and Readwise for data collection, complete with screenshots of his implementation.\n\n### Plugin Troubleshooting\n0xbbjoker assisted cico with browser-search plugin Playwright issues, advising on global installation and plugin updates using the migration guide.\n\n### Visual Content Creation\nDr. Neuro offered to create images/GIFs using Midjourney for community members and demonstrated this by creating visuals for ElizaBAO\ud83c\udf1f who wanted memes for the \"eliza\" token.\n\n## Action Items\n\n### Technical\n- Fix security vulnerability in `elizaos publish` that doesn't ignore `.env` files (mentioned by cjft)\n- Implement dynamic plugin loading/unloading for better provider switching (mentioned by shaw)\n- Complete the plugin-google-meet-cute \"waifu\" implementation (mentioned by cjft)\n- Rebuild the TEE starter and document deployment process (mentioned by Agent Joshua)\n- Update plugin-ollama to use TEXT_LARGE configuration (mentioned by starlord)\n- Fix plugin-knowledge to work with embeddings out of the box (mentioned by 0xbbjoker)\n- Implement proper fallback to plugin-ollama when OpenAI isn't configured (mentioned by starlord)\n- Resolve transaction deserialization error in auto.fun launchpad (mentioned by ElizaBAO\ud83c\udf1f)\n- Fix JSON format hallucination issues with OpenAI responses (mentioned by Samuel Chauche)\n- Complete the plugin-auton8n implementation (mentioned by shaw)\n- Upgrade plugin-moralis to work with Moralis Cortex (mentioned by sayonara)\n- Resolve the X/Twitter account suspensions before September (mentioned by CULTVESTING)\n\n### Documentation\n- Create deployment guide for TEE (mentioned by sayonara)\n- Consolidate documentation from elizaos.ai to eliza.how (mentioned by jin)\n- Create guide for optimal embedding configuration (mentioned by 0xbbjoker)\n- Create worked examples of how to create an agent on the ElizaOS site to help new users (mentioned by 3on_)\n- Add ElizaOS documentation repository to agent settings to improve functionality (mentioned by DorianD)\n\n### Feature\n- Develop plugin-inference to replace individual provider plugins (mentioned by shaw)\n- Implement agent swarm capability in n8n (mentioned by R0am)\n- Create a killer feature or AI agent with great product-market fit to drive adoption (mentioned by phetrusarthur\u2708)\n- Improve matching quality in knowledge plugin's similarity search (mentioned by Rixilius)\n- Focus on getting Spartan working as a trading agent launchpad for V3 instead of memecoin features (mentioned by phetrusarthur\u2708)\n- Consider establishing presence on Bluesky network (mentioned by DorianD)\n- Create memes/visuals with \"Eli5\" on shirt instead of \"Veo\" (mentioned by cantseemenomore)\n---\n2025-07-24.md\n---\n# elizaOS Discord - 2025-07-24\n\n## Overall Discussion Highlights\n\n### X Account Suspension Issue\n- The AI16Z X (Twitter) accounts have been suspended for approximately one month\n- Team member Kenk confirmed they are in communication with X to resolve the issue\n- Communications with X have improved in recent days, but response times remain slow\n- X is asking additional questions about the ElizaOS framework\n- Community members expressed frustration about the prolonged suspension compared to other projects\n- Some users suggested using alternative accounts like autofun in the meantime\n\n### Token Performance and Concerns\n- The token experienced significant volatility with a 30% drop in one day\n- It was reported as the biggest loser among the top 500 coins by market cap\n- Community members expressed frustration about:\n  - Lack of token utility\n  - Slow implementation of tokenomics\n  - Unclear path to value capture\n- Some community members remained optimistic, viewing the price drop as an accumulation opportunity\n\n### Technical Architecture Discussions\n- DorianD criticized that ElizaOS doesn't store character files and memories on-chain\n- He described it as a \"wrapper for black box LLMs\" rather than a true decentralized protocol\n- Kenk defended the approach, arguing that blockchain should be used purposefully\n- The team is focusing on agent-led services, money markets, and micropayments as the path to fee capture\n\n### Plugin Development Challenges\n- Developers discussed socket communication between ElizaOS and external services\n- Issues with receiving responses from Eliza in extensions were addressed\n- Windows compatibility problems with the knowledge plugin were identified and fixed\n- Room creation and management for services was a key topic\n- Authentication errors with the Twitter API were reported\n\n### Content Creation Initiatives\n- Jin proposed using time.fun to pitch AI news and potentially co-host a show with AI\n- Plans to improve the daily AI summary and create a weekly newsletter were mentioned\n- Discussion about using AI tools like Midjourney for creating images and artwork\n\n## Key Questions & Answers\n\n**Q: Why is the X account suspended and when will it be back?** (jpegflipflops\ud83c\udf44)  \nA: The team is in communication with X and confident it will be restored soon, with communications improving in recent days. (Kenk)\n\n**Q: Is the team going to create a new X account?** (CXL)  \nA: The team is working with X to restore the suspended accounts rather than creating new ones. (Arceon)\n\n**Q: Why doesn't ElizaOS store character files and memories on-chain?** (DorianD)  \nA: There's no fee capture benefit from putting character files on-chain. The focus is on agent-led services and money markets. (Kenk)\n\n**Q: How do I send messages to Telegram?** (Sergey Danilovich)  \nA: Code examples from GitHub repositories showing raw outgoing message implementation were shared. (Odilitime)\n\n**Q: How to output elizaOS responses to an external service worker listener?** (Samuel Chauche)  \nA: Check the next-js-starter repo for usage examples and listen for 'messageBroadcast' events. (Stan \u26a1 and 0xbbjoker)\n\n**Q: When composing a state to generate text do I need roomId and what for?** (Niann)  \nA: roomId is a mandatory field for creating a Memory object. (Niann)\n\n**Q: Is there a script to have a channel discuss with Eliza about making an issue on GitHub?** (koH)  \nA: The GitHub plugin provides an action to create GitHub issues. (Niann)\n\n**Q: Why can't I find eli5 on Autofun?** (lfg)  \nA: Go to featured. (emptyskull)\n\n## Community Help & Collaboration\n\n1. **Socket Communication Troubleshooting**\n   - Helper: 0xbbjoker | Helpee: Samuel Chauche\n   - Samuel was unable to receive responses from Eliza in their extension\n   - 0xbbjoker suggested listening for 'messageBroadcast' events, which resolved the issue\n\n2. **Windows Path Resolution Fix**\n   - Helper: starlord | Helpee: Knowledge plugin users\n   - Knowledge tab was not loading on Windows due to path issues\n   - starlord created a PR fixing the vite manifest search to check both '../dist/manifest.json' and '../dist/.vite/manifest.json' paths\n\n3. **GitHub Integration Guidance**\n   - Helper: Niann | Helpee: koH\n   - koH was looking for a way to create GitHub issues through Eliza\n   - Niann directed them to the plugin-github repository which contains an action for creating GitHub issues\n\n4. **X Account Suspension Clarification**\n   - Helper: DannyNOR NoFapArc | Helpee: nicehand1454\n   - Explained the account has been suspended for a month but team is in communication with X\n\n5. **AI Image Generation Advice**\n   - Helper: Dr. Neuro | Helpee: AccountShark\n   - Recommended Midjourney over ChatGPT for better fine art style generation\n   - Explained features like omni reference and subscription plans for consistent character images\n\n## Action Items\n\n### Technical Tasks\n1. **Fix Windows Compatibility** - Fix vite manifest search to check both '../dist/manifest.json' and '../dist/.vite/manifest.json' paths for Windows compatibility (starlord)\n2. **Implement Room Creation** - Implement proper room creation before composing state in custom plugins (0xbbjoker)\n3. **Improve Connection Handling** - Use ensureConnection function with all required parameters before state composition (0xbbjoker)\n4. **Implement Tokenomics** - Implement tokenomics in the protocol at the right time and in the right way (Kenk)\n5. **Develop Fee Capture** - Develop fee capture mechanisms around agent-led services and money markets (Kenk)\n6. **Implement Realtime Voice** - Working on realtime voice capabilities for AI to co-host shows (jin)\n\n### Documentation Needs\n1. **Socket Communication Guide** - Add documentation about socket communication and listening for 'messageBroadcast' events (Samuel Chauche)\n2. **Windows Compatibility** - Update Quickstart documentation to clarify Windows compatibility requirements (danny)\n3. **State Composition Guide** - Create guide for state composition in custom services (Niann)\n4. **X Account Situation** - Provide clearer explanation of the X account suspension situation (Multiple users)\n\n### Feature Requests\n1. **On-chain Storage** - Consider on-chain storage for character files and memories (DorianD)\n2. **Eliza Voice** - Create a voice for Eliza that can be used with Suno for audio content (Dr. Neuro)\n3. **Weekly Newsletter** - Improve daily AI summary and create a subscribable weekly newsletter (jin)\n4. **AI Co-hosted Show** - Buy time on time.fun to pitch AI news with AI co-host (jin)\n5. **Error Handling** - Improve error handling for Twitter API authentication (bitcryptowski.btc)\n---\n2025-07-26.md\n---\nFile not found\n---\n2025-07-25.md\n---\nFile not found\n---\n2025-07-24.md\n---\n# elizaOS Development Discord - 2025-07-24\n\n## Overall Discussion Highlights\n\n### General Communication\n- Brief activity in the elizaOS Development general channel\n- A community member shared a greeting (\"Gm\") in the morning\n- Users were directed to move to a different Discord server via an invitation link\n\n## Key Questions & Answers\n*No significant questions or answers were recorded in today's discussions.*\n\n## Community Help & Collaboration\n*No notable instances of community collaboration were observed in the limited conversation.*\n\n## Action Items\n*No specific action items were identified in today's discussions.*\n\n---\n\n**Note:** Today's discussion was minimal, with only two messages exchanged in the elizaOS Development general channel. The primary communication was directing users to a different Discord server.\n---\n2025-07-26.json\n---\nelizaosDailySummary\n---\nDaily Report - 2025-07-26\n---\nGitHub Activity Summary\n---\nFrom July 26-27, 2025, the elizaOS/eliza repository showed minimal activity with 1 new pull request opened (none merged), no new issues created, and 1 active contributor during this period.\n---\nPull Requests\n---\nPR #5679 titled 'fix: typo' by @crStiv has no state information available\n---\nhttps://github.com/elizaOS/eliza/pull/5679\n---\nSummary for github_other\n---\nThe repository elizaOS/eliza has a list of top contributors, though specific contributor details are not provided in the input.\n---\n2025-07-26.md\n---\n# Daily Report - 2025-07-26\n\n## GitHub Activity Summary\n- From July 26-27, 2025, the elizaOS/eliza repository showed minimal activity with 1 new pull request opened (none merged), no new issues created, and 1 active contributor during this period.\n\n## Pull Requests\n- PR #5679 titled 'fix: typo' by @crStiv has no state information available (Source: [https://github.com/elizaOS/eliza/pull/5679](https://github.com/elizaOS/eliza/pull/5679))\n\n## Summary for github_other\n- The repository elizaOS/eliza has a list of top contributors, though specific contributor details are not provided in the input.\n---\n2025-07-26.json\n---\nelizaOS\n---\nelizaOS Discord - 2025-07-26\n---\n1253563209462448241\n---\ndiscussion\n---\n# Discord Chat Analysis\n\n## 1. Summary\nThe chat primarily revolves around the ElizaOS project, which appears to be an AI agent platform on Solana. A significant ongoing issue is that ElizaOS, shawmakesmagic, and ai16z have been banned from X (formerly Twitter), which has been a point of concern for community members. Kenk, who seems to be part of the ElizaOS team, mentioned they have \"a resolution with X in sight\" and are holding off on creating new accounts. The team is not sharing screenshots of communications with X but indicated that communication between teams has become quicker. There was also discussion about the Solana ecosystem's relative silence regarding ElizaOS's situation, with Kenk acknowledging this observation while noting that Solana has featured them in hackathons and that Superteam has supported them at builder events and incubators. Kenk also clarified that while ElizaOS is Solana-native from a token perspective, they are chain-agnostic. When asked about potential catalysts for the ElizaOS ecosystem, Kenk mentioned opportunities for agents on-chain across different verticals, from IP to Content Creators, and suggested that seeing breakout AI apps across key sectors would be a strong catalyst.\n\n## 2. FAQ\nQ: Which X accounts does the community recommend following for the latest news and updates about ElizaOS? (asked by Hannes K.) A: Follow the builders behind the elizaOS framework, including team members across various roles. For the time being, follow the team as they have a resolution with X in sight. (answered by Kenk)\nQ: Are you not allowed to publicly communicate the conversations between you and X with us? (asked by Gianni) A: We're not going to share screenshots. We have a resolution with X which has been reaffirmed, communications has become quicker between teams. (answered by Kenk)\nQ: What is the biggest catalyst we can have on elizaos ecosystem? (asked by CULTVESTING) A: The opportunity for agents on chain is broad but diverse with different catalysts across each vertical ranging from IP to Content Creators. Seeing breakout AI apps across key sectors would be a strong catalyst. (answered by Kenk)\n\n## 3. Help Interactions\nHelper: Kenk | Helpee: Hannes K. | Context: New community member asking which X accounts to follow for ElizaOS updates | Resolution: Kenk provided a comprehensive list of team members to follow and explained they're holding off on creating new accounts pending X resolution.\nHelper: Quaser M | Helpee: shifuzen | Context: shifuzen requested a link | Resolution: Quaser M sent the link via direct message as it would be auto-deleted in the channel.\n\n## 4. Action Items\nTechnical: Resolution of X platform ban for ElizaOS, shawmakesmagic, and ai16z accounts | Description: Team is working on resolving the ban situation with X platform | Mentioned By: Kenk\nFeature: Development of breakout AI apps across key sectors | Description: Creating successful AI applications would serve as a strong catalyst for the ecosystem | Mentioned By: Kenk\nDocumentation: Clearer communication about the X ban situation | Description: Community members requesting more transparency about the ongoing situation with X | Mentioned By: Gianni\n---\n1300025221834739744\n---\n\ud83d\udcbb-coders\n---\n# Discord Chat Analysis for \ud83d\udcbb-coders\n\n## 1. Summary\nThe chat segment discusses technical aspects of the Eliza model's capabilities and limitations. Key points include:\n\n- Clarification that Eliza can plan and execute multiple actions in sequence, not just single responses\n- Websockets functionality allows sending messages outside the standard response pattern\n- A user reported issues with Eliza's JSON response format, specifically with single quote handling causing display problems in their extension\n- Another user experienced a transaction failure due to instruction deserialization errors in the auto.fun launchpad\n- Suggestion that hallucination issues with locally-run models might be solved by using larger models or cloud-based solutions\n- Clarification that the user experiencing JSON format issues was already using OpenAI and regularly cleaning the elizadb folder\n\n## 2. FAQ\nQ: Is it correct that Eliza is a single response model by default? (asked by Snapper) A: No, it can plan multiple actions in response, run them in order, and pass their actions down the chain. Also we have websockets in most cases so it can send a message not as a response. (answered by shaw)\nQ: How to solve \"Transaction failed due to instruction deserialization error\" in auto.fun launchpad? (asked by ElizaBAO\ud83c\udf1f) A: Unanswered\n\n## 3. Help Interactions\nHelper: starlord | Helpee: Samuel Chauche | Context: JSON format hallucination issues with Eliza | Resolution: Suggested using a larger model, cloud GPU, or OpenAI, though the user clarified they were already using OpenAI\n\n## 4. Action Items\nTechnical: Investigate and fix JSON format hallucination issues with Eliza's responses | Description: Resolve problems with single quotes being replaced or moved in JSON responses | Mentioned By: Samuel Chauche\nTechnical: Debug transaction failure in auto.fun launchpad | Description: Fix \"Transaction failed due to instruction deserialization error\" | Mentioned By: ElizaBAO\ud83c\udf1f\n---\n1361442528813121556\n---\nfun\n---\n# Discord Chat Analysis for \"fun\" Channel\n\n## 1. Summary\nThis chat segment contains no substantive technical discussions or problem-solving. The conversation primarily revolves around cryptocurrency tokens (particularly \"Eli5\" and \"Eddy\"), price predictions, and meme creation. Users share images created with Midjourney and discuss creating memes for various projects. Dr. Neuro offers to help others learn how to create images, GIFs, and videos. There are brief mentions of getting a token listed on CoinGecko, but no technical implementation details are discussed.\n\n## 2. FAQ\nQ: What tools do you use for this [image creation]? (asked by ElizaBAO\ud83c\udf1f) A: Midjourney (answered by Dr. Neuro)\nQ: Who believe eli5 and eddy will hit at least 50 million each? (asked by CULTVESTING) A: Unanswered\nQ: Can you help the user here -> [discord link]? (asked by Kenk) A: Unanswered\nQ: Thoughts on eli5? (asked by cantseemenomore) A: Unanswered\n\n## 3. Help Interactions\nHelper: Dr. Neuro | Helpee: ElizaBAO\ud83c\udf1f | Context: ElizaBAO\ud83c\udf1f wanted to create memes for \"eliza\" project | Resolution: Dr. Neuro created sample images using Midjourney and offered guidance on the meme creation process\nHelper: Dr. Neuro | Helpee: Channel members | Context: Offering to teach image/GIF/video creation | Resolution: Dr. Neuro offered to explain the process \"like you're five\"\n\n## 4. Action Items\nFeature: Get token listed on CoinGecko | Description: Token needs to be listed on CoinGecko | Mentioned By: Kenk\nTechnical: Create memes for the Eliza project | Description: Create images of Eliza eating Bao | Mentioned By: ElizaBAO\ud83c\udf1f\nTechnical: Create promotional content for eli5 | Description: Create images/loops/videos for eli5 project | Mentioned By: Dr. Neuro\n---\n1301363808421543988\n---\n\ud83e\udd47-partners\n---\nThe chat segment is extremely brief, containing only greetings (\"gm\", \"Gm gm\", \"GM\") exchanged between users Kenk, Bealers, and Milo. There is one substantive comment from Kenk mentioning that someone (unnamed) monitors the channel but is busy, suggesting they would answer questions if asked. Kenk also expresses concern about something being \"not a good look to our builders,\" but without context, it's unclear what this refers to. No technical discussions, decisions, or problem-solving occurred in this limited exchange.\n---\n1377726087789940836\n---\ncore-devs\n---\n# Analysis of core-devs Discord Chat\n\n## 1. Summary\nThe core-devs channel discussed several key technical topics. Shaw proposed consolidating AI model providers into a single `plugin-inference` that would support multiple API-compatible services (OpenAI, Anthropic, Google, Groq). This sparked a technical discussion about dynamic plugin loading/unloading as the most scalable approach for switching between providers. Cjft suggested leveraging the existing ai-sdk for standardization rather than building from scratch.\n\nAgent Joshua mentioned working on TEE (Trusted Execution Environment) deployment and offered to create a vanilla elizaOS template for cloud launching. R0am demonstrated a personal agent built with n8n and Zep for knowledge management, showing how it processes information from Readwise highlights, Brave search API, and web content. The agent can understand conversations and perform tasks like crafting responses based on context.\n\nThe discussion also touched on knowledge graphs for agents, with neo4j being highlighted as a powerful option. Yikesawjeez inquired about crosschain solutions, specifically lock-and-mint synthetic bridges, and mentioned the GENIUS act passing, which impacts memecoin regulation. Shaw offered a bounty for improving the plugin-auton8n project.\n\n## 2. FAQ\nQ: What if we could make a plugin-inference that supports multiple API-compatible services? (asked by shaw) A: It would be better to dynamically load/unload plugins as the most scalable approach, and leverage ai-sdk which has already done the standardization work. (answered by Odilitime and cjft)\nQ: How would you prioritize which service to use if you had multiple API keys set? (asked by Odilitime) A: You could use plugin params or configs, or dynamically load their provider sets through ai-sdk. (answered by Odilitime and cjft)\nQ: When looking at crosschain solutions, did you consider lock-and-mint synthetic bridges? (asked by yikesawjeez) A: Unanswered\n\n## 3. Help Interactions\nHelper: Agent Joshua | Helpee: sayonara | Context: Deployment guide needed for elizaOS | Resolution: Joshua offered to push to a branch with directions after putting his babies to bed\nHelper: R0am | Helpee: yikesawjeez | Context: Understanding how n8n and Zep work together for knowledge graphs | Resolution: R0am shared screenshots and explained his workflow using Readwise, Brave search API, and TG as interface\nHelper: R0am | Helpee: sayonara | Context: Request for n8n workflow JSON | Resolution: R0am pointed out the need for a community node for the MCP client and shared the npm package link\n\n## 4. Action Items\nType: Technical | Description: Create a vanilla elizaOS template for cloud launching with deployment guide | Mentioned By: Agent Joshua\nType: Technical | Description: Implement dynamic plugin loading/unloading for AI model providers | Mentioned By: shaw, Odilitime\nType: Technical | Description: Improve plugin-auton8n (bounty offered) | Mentioned By: shaw\nType: Technical | Description: Explore n8n swarm where agents can be tools for other agents | Mentioned By: R0am\nType: Feature | Description: Consider using ai-sdk for standardized model provider integration | Mentioned By: cjft\nType: Documentation | Description: Create deployment documentation for TEE | Mentioned By: sayonara\n---\n2025-07-26.md\n---\n# elizaOS Discord - 2025-07-26\n\n## Overall Discussion Highlights\n\n### X Platform Ban Resolution\n- ElizaOS, shawmakesmagic, and ai16z are currently banned from X (Twitter)\n- Kenk mentioned they have \"a resolution with X in sight\" and are holding off on creating new accounts\n- Communication between ElizaOS and X teams has reportedly become quicker\n- The team is not sharing screenshots of communications with X for now\n\n### Technical Architecture\n- Shaw proposed consolidating AI model providers into a single `plugin-inference` that would support multiple API-compatible services (OpenAI, Anthropic, Google, Groq)\n- Discussion favored dynamic plugin loading/unloading as the most scalable approach for switching between providers\n- Cjft suggested leveraging the existing ai-sdk for standardization rather than building from scratch\n- Clarification that Eliza can plan and execute multiple actions in sequence, not just single responses\n- Websockets functionality allows sending messages outside the standard response pattern\n\n### Agent Development\n- Agent Joshua is working on TEE (Trusted Execution Environment) deployment\n- R0am demonstrated a personal agent built with n8n and Zep for knowledge management\n- The agent processes information from Readwise highlights, Brave search API, and web content\n- Discussion about knowledge graphs for agents, with neo4j highlighted as a powerful option\n- Shaw offered a bounty for improving the plugin-auton8n project\n\n### Ecosystem & Community\n- Discussion about the Solana ecosystem's relative silence regarding ElizaOS's situation\n- Kenk clarified that while ElizaOS is Solana-native from a token perspective, they are chain-agnostic\n- Community members creating memes and promotional content for the project\n- Yikesawjeez mentioned the GENIUS act passing, which impacts memecoin regulation\n\n## Key Questions & Answers\n\n**Q: Which X accounts does the community recommend following for the latest news and updates about ElizaOS?**  \nA: Follow the builders behind the elizaOS framework, including team members across various roles. For the time being, follow the team as they have a resolution with X in sight. (Kenk)\n\n**Q: Are you not allowed to publicly communicate the conversations between you and X with us?**  \nA: We're not going to share screenshots. We have a resolution with X which has been reaffirmed, communications has become quicker between teams. (Kenk)\n\n**Q: What is the biggest catalyst we can have on elizaos ecosystem?**  \nA: The opportunity for agents on chain is broad but diverse with different catalysts across each vertical ranging from IP to Content Creators. Seeing breakout AI apps across key sectors would be a strong catalyst. (Kenk)\n\n**Q: Is it correct that Eliza is a single response model by default?**  \nA: No, it can plan multiple actions in response, run them in order, and pass their actions down the chain. Also we have websockets in most cases so it can send a message not as a response. (shaw)\n\n**Q: What if we could make a plugin-inference that supports multiple API-compatible services?**  \nA: It would be better to dynamically load/unload plugins as the most scalable approach, and leverage ai-sdk which has already done the standardization work. (Odilitime and cjft)\n\n**Q: How would you prioritize which service to use if you had multiple API keys set?**  \nA: You could use plugin params or configs, or dynamically load their provider sets through ai-sdk. (Odilitime and cjft)\n\n**Q: What tools do you use for this [image creation]?**  \nA: Midjourney (Dr. Neuro)\n\n## Community Help & Collaboration\n\n1. **Deployment Guide Assistance**\n   - Helper: Agent Joshua\n   - Helpee: sayonara\n   - Context: Deployment guide needed for elizaOS\n   - Resolution: Joshua offered to push to a branch with directions after putting his babies to bed\n\n2. **Knowledge Graph Implementation**\n   - Helper: R0am\n   - Helpee: yikesawjeez\n   - Context: Understanding how n8n and Zep work together for knowledge graphs\n   - Resolution: R0am shared screenshots and explained his workflow using Readwise, Brave search API, and TG as interface\n\n3. **JSON Format Issues**\n   - Helper: starlord\n   - Helpee: Samuel Chauche\n   - Context: JSON format hallucination issues with Eliza\n   - Resolution: Suggested using a larger model, cloud GPU, or OpenAI, though the user clarified they were already using OpenAI\n\n4. **Meme Creation Guidance**\n   - Helper: Dr. Neuro\n   - Helpee: ElizaBAO\ud83c\udf1f\n   - Context: ElizaBAO\ud83c\udf1f wanted to create memes for \"eliza\" project\n   - Resolution: Dr. Neuro created sample images using Midjourney and offered guidance on the meme creation process\n\n## Action Items\n\n### Technical\n- Create a vanilla elizaOS template for cloud launching with deployment guide (Agent Joshua)\n- Implement dynamic plugin loading/unloading for AI model providers (shaw, Odilitime)\n- Improve plugin-auton8n (bounty offered) (shaw)\n- Explore n8n swarm where agents can be tools for other agents (R0am)\n- Investigate and fix JSON format hallucination issues with Eliza's responses (Samuel Chauche)\n- Debug transaction failure in auto.fun launchpad (ElizaBAO\ud83c\udf1f)\n- Create memes for the Eliza project (ElizaBAO\ud83c\udf1f)\n- Create promotional content for eli5 project (Dr. Neuro)\n- Resolution of X platform ban for ElizaOS, shawmakesmagic, and ai16z accounts (Kenk)\n\n### Feature\n- Consider using ai-sdk for standardized model provider integration (cjft)\n- Development of breakout AI apps across key sectors (Kenk)\n- Get token listed on CoinGecko (Kenk)\n\n### Documentation\n- Create deployment documentation for TEE (sayonara)\n- Clearer communication about the X ban situation (Gianni)\n---\n2025-07-26.json\n---\nFile not found\n---\n2025-07-26.md\n---\nFile not found\n---\n2025-07-26.json\n---\nHyperfy\n---\nHyperfy Discord - 2025-07-26\n---\n994775534733115412\n---\n\ud83d\udcbb\u2502developers\n---\nThe chat segment is extremely brief and contains no technical discussions, decisions, or problem-solving. It consists only of two user mentions and one message stating \"nothing to see here.\" There is no substantive content to summarize.\n---\n958209074045026327\n---\n\u26a1\u2502general\n---\n# Analysis of Discord Chat in \"\u26a1\u2502general\"\n\n## 1. Summary\nThe chat segment is very brief and contains no technical discussions, decisions, or problem-solving. The conversation primarily consists of users expressing frustration about online identity verification requirements, specifically mentioning the UK Online Safety Act and its impact on social media accounts requiring ID verification. One user mentions \"lens chain\" as a potential alternative, but no technical details or implementations are discussed.\n\n## 2. FAQ\nQ: (No significant questions with meaningful responses were present in this chat segment)\n\n## 3. Help Interactions\n(No significant help interactions were present in this chat segment)\n\n## 4. Action Items\n(No clear action items were identified in this chat segment)\n---\n1326789867312775290\n---\n\ud83e\ude99\u2502hyper\n---\n# Analysis of Discord Chat in \"\ud83e\ude99\u2502hyper\" Channel\n\n## 1. Summary\nThe chat segment is very brief and contains minimal technical content. It primarily consists of casual conversation about cryptocurrency price movements, specifically noting a \"V shape recovery\" in the market. Users express satisfaction with this recovery and discuss having missed an opportunity to buy during a price dip. No technical discussions, decisions, or problem-solving occurred in this limited chat segment. The conversation is entirely focused on market sentiment and price action observations rather than technical implementation details.\n\n## 2. FAQ\nNo significant technical questions were asked or answered in this chat segment.\n\n## 3. Help Interactions\nNo significant help interactions occurred in this chat segment.\n\n## 4. Action Items\nNo action items were identified in this chat segment.\n---\n1031058655581323324\n---\n\ud83e\uddca\u25023d-design\n---\nThe chat segment is extremely brief with minimal technical content. It contains only three messages: a user mention from Valiant, a message from .hyp shaman stating \"nothing to see here,\" and a comment from Pete mentioning \"V1 support was A1.\" There are no substantive technical discussions, problem-solving activities, or concrete implementations to summarize from this limited exchange.\n---\n2025-07-26.md\n---\n# Hyperfy Discord - 2025-07-26\n\n## Overall Discussion Highlights\n\n### Market & Cryptocurrency\n- Users observed and discussed a \"V shape recovery\" in the cryptocurrency market\n- Some community members expressed regret about missing buying opportunities during recent price dips\n\n### Digital Identity & Regulation\n- Discussion about the UK Online Safety Act and its impact on social media platforms\n- Concerns raised about increasing ID verification requirements for online accounts\n- Brief mention of \"lens chain\" as a potential alternative approach to digital identity\n\n### Platform Development\n- Very minimal technical discussion across all channels\n- Brief positive mention of \"V1 support was A1\" in the 3D design channel\n\n## Key Questions & Answers\n\n*No significant technical questions with meaningful answers were identified in today's discussions.*\n\n## Community Help & Collaboration\n\n*Today's chat logs showed minimal collaborative problem-solving or help interactions among community members.*\n\n## Action Items\n\n*No specific action items were identified in today's discussions.*\n\n---\n\n**Note:** Today's Discord activity was notably light across all channels, with minimal technical discussion or substantive content. The conversations primarily consisted of brief exchanges about market conditions and digital identity regulations, with no significant technical problem-solving, feature discussions, or collaborative work.\n---\n2025-07-27.md\n---\nFile not found\n---\n2025-07-20.md\n---\n# elizaos/eliza Weekly Report (Jul 20 - 26, 2025)\n\n## \ud83d\ude80 Highlights\nThis week was characterized by a dual focus on enhancing core framework stability and a significant push to improve documentation and user onboarding. Key achievements include a major refactoring of prompts to an XML format for improved LLM reliability, critical security hardening of the `plugin-training` module, and the resolution of several CLI and plugin-related bugs. Concurrently, a wave of new issues laid the groundwork for future development, with a strong emphasis on expanding DeFi plugin capabilities and creating comprehensive video and written documentation.\n\n## \ud83d\udee0\ufe0f Key Developments\nWork this week centered on improving the reliability, security, and usability of the core system and its plugins.\n\n-   **Core Framework Refinement:** A significant effort was completed to migrate all JSON-based prompts to an XML format across the codebase. This refactoring aims to enhance the reliability of responses from Large Language Models (LLMs) and impacts core entities and the bootstrap plugin ([#5623](https://github.com/elizaos/eliza/pull/5623)).\n\n-   **Plugin Security & Stability:** The `plugin-training` module received critical security updates to prevent command injection vulnerabilities by validating model parameters and correcting prompt escaping ([#5663](https://github.com/elizaos/eliza/pull/5663), [#5661](https://github.com/elizaos/eliza/pull/5661)). Stability was also improved by fixing the dataset path for HuggingFace uploads and preventing the use of undefined models ([#5662](https://github.com/elizaos/eliza/pull/5662), [#5660](https://github.com/elizaos/eliza/pull/5660)). A key bug in the `@elizaos/config` package was also fixed, ensuring correct file exports for dependent plugins ([#5635](https://github.com/elizaos/eliza/pull/5635)).\n\n-   **CLI and Tooling Improvements:** Several bugs affecting the developer experience were addressed, including fixes for CLI test failures due to missing dependencies ([#5641](https://github.com/elizaos/eliza/pull/5641)) and incorrect JSON string handling in the SQL base plugin ([#5628](https://github.com/elizaos/eliza/pull/5628)).\n\n-   **Documentation and Agent Capabilities:** To aid developers, a new `AGENT.md` file was added as a quick reference guide for agent development ([#5669](https://github.com/elizaos/eliza/pull/5669]), and existing documentation was clarified ([#5642](https://github.com/elizaos/eliza/pull/5642)). The default Eliza character was also enhanced with new examples to support Twitter posting functionality ([#5652](https://github.com/elizaos/eliza/pull/5652)).\n\n## \ud83d\udc1b Issues & Triage\nThe project saw a significant influx of new issues, signaling active community engagement and outlining a clear roadmap for future work, while several key user-facing problems were resolved.\n\n-   **Closed Issues:** Important user experience issues were resolved, including a fix for the `elizaos create` command that was placing the `.elizadb` directory in the wrong location ([#5616](https://github.com/elizaos/eliza/issues/5616)). A critical support issue was closed after guiding a user to resolve an unresponsive agent by correctly setting the `GOOGLE_GENERATIVE_AI_API_KEY` environment variable ([#5664](https://github.com/elizaos/eliza/issues/5664)).\n\n-   **New & Active Issues:** A major trend this week was the request for new Web3 capabilities, with a suite of issues opened for DeFi-related plugins including Aave, Morpho, Clanker, and Defi-Llama ([#5643](https://github.com/elizaos/eliza/issues/5643)-[#5647](https://github.com/elizaos/eliza/issues/5647)). A significant strategic effort was initiated to overhaul project documentation, with new issues planning a full documentation review and the production of introductory videos ([#5665](https://github.com/elizaos/eliza/issues/5665)-[#5668](https://github.com/elizaos/eliza/issues/5668)). Other notable proposals include enhancing the `llm_judge` evaluator with multi-level assessments ([#5637](https://github.com/elizaos/eliza/issues/5637)). Several new bugs were also reported, highlighting issues with the scenario runner and CLI dependency management ([#5639](https://github.com/elizaos/eliza/issues/5639), [#5640](https://github.com/elizaos/eliza/issues/5640), [#5657](https://github.com/elizaos/eliza/issues/5657)).\n\n## \ud83d\udcac Community & Collaboration\nThe week's activity indicates a healthy and engaged community. The large number of new feature requests, particularly for DeFi plugins, suggests that users are actively trying to expand ElizaOS into new domains. The detailed planning for documentation and video tutorials shows a proactive approach to improving accessibility for new contributors and users. Furthermore, the prompt resolution of user-reported issues, such as the Google API key problem, demonstrates a responsive and supportive maintainer team focused on addressing community needs.\n---\n2025-07-01.md\n---\n# elizaos/eliza Monthly Report (July 2025)\n\n## \ud83d\ude80 Highlights\nJuly was a month of significant refinement and stabilization for ElizaOS, marked by a major UI/UX overhaul to align with new design standards and a concerted effort to enhance the command-line interface (CLI). Development focused heavily on improving developer experience through better testing infrastructure, a more robust CI/CD pipeline, and a comprehensive documentation update. While core stability and feature enhancements like action chaining saw great progress, the project also grappled with persistent challenges, particularly around Windows compatibility and the functionality of the Twitter plugin, which remains a key area of focus for the community.\n\n## \ud83d\udee0\ufe0f Key Developments\nWork this month spanned the entire stack, from foundational architecture to the end-user interface, with a clear theme of improving stability, usability, and developer tooling.\n\n-   **Comprehensive CLI Enhancements:** The CLI was a major focus, receiving a complete migration to `@clack/prompts` for a consistent user experience ([#5359]). The `create` command was improved to handle project types correctly and clean up on interruption ([#5321], [#5337]). User feedback was enhanced with spinners instead of verbose logs ([#5431]), and critical bugs related to the `update` command ([#5427]), global installations ([#5450]), and Windows path handling ([#5437]) were resolved. A new AI-powered migration tool was introduced to help upgrade plugins ([#5311]), and a `plugin-quick-starter` template was added to streamline backend-only plugin development ([#5589]).\n\n-   **Major UI/UX Overhaul:** The web client underwent a significant visual redesign to align with new Figma specifications. This included a complete refactor of Agent Cards ([#5351], [#5344]), Chat components ([#5349]), the main sidebar ([#5373]), and Agent Settings ([#5345]). Numerous bug fixes addressed layout, padding, and theming issues, resulting in a more polished and professional user interface. Functional improvements included an auto-resizing chat input ([#5546]) and automatic V1 to V2 character conversion on import ([#5536]).\n\n-   **Core Architecture & Stability:** The framework's foundation was strengthened with several key changes. A major migration from Node.js's `EventEmitter` to Bun's native `EventTarget` API was completed to improve performance and runtime compatibility ([#5609], [#5614]). A new feature introduced standardized service interfaces and a `getServicesByType()` method, enhancing modularity ([#5565]). A critical new capability for **action chaining** was implemented, allowing for more complex, sequential agent behaviors ([#5436]). Stability was further improved by fixing an advisory lock bug in the SQL plugin ([#5572]) and removing redundant middleware ([#5384]).\n\n-   **Testing, CI/CD, and Code Quality:** Developer infrastructure saw significant investment. A new `@elizaos/test-utils` package was created to centralize mock utilities and streamline testing ([#5507]). The release workflow was stabilized to fix Lerna publishing failures ([#5467]), and automated code quality analysis workflows using Claude were introduced to monitor the codebase for issues like dead code, type safety, and security vulnerabilities ([#5532], [#5543]).\n\n-   **Documentation Improvements:** A major documentation overhaul was completed, establishing separate tracks for \"simple users\" and \"developers\" to improve accessibility ([#5401]). The accuracy of the REST API documentation was improved to match the server implementation ([#5380]), and JSDoc comments were corrected throughout the core package ([#5414]).\n\n## \ud83d\udc1b Issues & Triage\nIssue tracking this month reflected the intense development pace, with a focus on resolving user-reported bugs while laying the groundwork for future features.\n\n-   **Closed Issues:** A large volume of issues were resolved, demonstrating strong maintainer responsiveness. Key resolutions include:\n    -   **CLI & Setup:** The migration of CLI input methods to `@clack/prompts` was completed ([#5295]). Critical bugs causing `elizaos start` to crash or not build the project were fixed ([#5161], [#5497]). The long-standing issue of plugins failing to load on Windows was addressed ([#5407]).\n    -   **UI/UX:** Numerous UI bugs related to the redesign were fixed, and the review of the \"Actions\" tab (renamed to \"Model Calls\") was completed ([#5377]).\n    -   **Tools:** The v1 to v2 character migrator tool was finalized and closed ([#5452]).\n\n-   **New & Active Issues:** Several critical discussions and problem areas emerged:\n    -   **Twitter Plugin Instability:** This is the most significant ongoing challenge. Multiple issues ([#31], [#36], [#38], [#39]) detail persistent problems, including client initialization errors, database insertion failures after authentication, and aggressive API rate-limiting (429 errors). The community is actively discussing whether paid Twitter API tiers are now a requirement for the plugin to function.\n    -   **Windows Compatibility:** Despite some fixes, Windows remains a source of user-reported issues, including failures to load specific plugins like `plugin-local-ai` ([#5499], [#5530]) and errors during agent creation related to directory paths ([#5603], [#5616]).\n    -   **Future Architecture:** New issues were opened to scope out a powerful **Scenario Runner** feature ([#5573]-[#5579]), indicating a future direction towards more robust agent evaluation. Discussions on agent-to-agent communication ([#5584]) and custom plugin schema migrations ([#5588]) also highlight areas of active architectural evolution.\n\n## \ud83d\udcac Community & Collaboration\nJuly saw vibrant collaboration between maintainers and the user community. The high volume of daily PRs and issue resolutions points to a very active core team. A notable dynamic is the extensive use of an AI assistant, \"Claude,\" which was instrumental in analyzing complex issues ([#4720]), providing detailed troubleshooting guides for users ([#5482]), and automating code quality checks ([#5438]).\n\nCommunity engagement was particularly high around troubleshooting difficult issues like the Twitter plugin problems ([#31], [#38]) and deployment strategies ([#5244]), where users shared logs, workarounds, and experiences. This collaborative debugging process is crucial for hardening the framework in real-world scenarios. The rapid closure of many user-reported bugs demonstrates a healthy feedback loop and a commitment to supporting the growing user base.\n---\n{\n  \"interval\": {\n    \"intervalStart\": \"2025-07-01T00:00:00.000Z\",\n    \"intervalEnd\": \"2025-08-01T00:00:00.000Z\",\n    \"intervalType\": \"month\"\n  },\n  \"repository\": \"elizaos/eliza\",\n  \"overview\": \"From 2025-07-01 to 2025-08-01, elizaos/eliza had 261 new PRs (213 merged), 83 new issues, and 40 active contributors.\",\n  \"topIssues\": [\n    {\n      \"id\": \"I_kwDOMT5cIs7B5way\",\n      \"title\": \"i use Google API : my Agent not Give a replay\",\n      \"author\": \"1BDO\",\n      \"number\": 5664,\n      \"repository\": \"elizaos/eliza\",\n      \"body\": \"root@DESKTOP-VJVJ4O4:/mnt/e/V.ON/trade-companion# elizaos dev\\n[2025-07-22 15:00:12] INFO: Using local @elizaos/cli installation\\nIdentified as an ElizaOS project package\\nRunning in project mode\\nBuilding project...\\n\u2502\\n\u25c7  \u2713 Project built successfully\\n\u2713 Initial build completed\\nStarting server...\\nUsing local @elizaos/cli installation\\nFound 36 TypeScript/JavaScript files in the watched directory\\nSample files: character.ts, frontend/index.tsx, frontend/utils.ts...\\nDev mode is active! The server will restart when files change.\\nPress Ctrl+C to exit\\n\u2713 Watching for file changes in src\\n\\n\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2880\u28d0\u28ff\u28ff\u28b0\u2840\u2800\u2800\u2800 \u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\\n\u2800\u2800\u2800\u2800\u2800\u2880\u28f4\u2824\u283e\u281b\u281b\u28ff\u28f6\u28c7\u2800\u2800\u2846 \u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\\n\u28b0\u28cb\u2873\u2844\u2800\u28a8\u28ed\u2840\u2800\u2864\u2800\u28c0\u28dd\u28bf\u28f6\u28ff\u2845 \u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\\n\u28b8\u28ef\u2800\u28c7\u2800\u28fc\u28ff\u28ff\u28c6\u28b7\u28f4\u28ff\u28ff\u284f\u28db\u2849\u2800 \u28b8\u28ff\u28ff\u28ff\u28ff\u28ff\u28ff\u28b8\u28ff\u28ff\u2800\u2800\u2800\u2800\u2800\u28ff\u28ff\u2847\u28ff\u28ff\u28ff\u28ff\u28ff\u28ff\u28ff\u2847\u2800\u2800\u2800\u28fe\u28ff\u28ff\u28e7\u2800\u2800\u2800\u28b8\u281f\u2880\u28f4\u28ff\u28ff\u28ff\u28ff\u28e6\u2840\u28e0\u28fe\u28ff\u28ff\u28ff\u28ff\u28e6\u2859\u28bf\\n\u2800\u2819\u28b7\u28ee\u28b8\u28ff\u28ff\u28ff\u28ff\u28f7\u28ef\u28df\u28cf\u28fc\u28f7\u28c5\u283e \u28b8\u28ff\u28c7\u28c0\u28c0\u28c0\u2800\u28b8\u28ff\u28ff\u2800\u2800\u2800\u2800\u2800\u28ff\u28ff\u2847\u2800\u2800\u2800\u28e0\u28ff\u28ff\u281f\u2801\u2800\u2800\u28fc\u28ff\u285f\u28ff\u28ff\u28c6\u2800\u2800\u2800\u2800\u28ff\u28ff\u280b\u2800\u2808\u283b\u28ff\u2847\u28ff\u28ff\u28c5\u28c0\u28c0\u285b\u281b\u2803\u2800\\n\u2800\u2800\u2800\u2801\u28b8\u28ff\u28ff\u28ff\u28ff\u28ff\u28ff\u28ff\u28ff\u28ff\u28ff\u280b\u2800 \u28b8\u28ff\u287f\u283f\u283f\u283f\u2800\u28b8\u28ff\u28ff\u2800\u2800\u2800\u2800\u2800\u28ff\u28ff\u2847\u2800\u28e0\u28fe\u28ff\u281f\u2801\u2800\u2800\u2800\u28f0\u28ff\u28ff\u28c1\u28f8\u28ff\u28ff\u2844\u2800\u2800\u2800\u28ff\u28ff \u2800\u2800 \u28ff\u28ff\u2888\u28db\u283f\u283f\u283f\u28ff\u28f7\u2844\u2800\\n\u2800\u2800\u2800\u2800\u2838\u28ff\u28ff\u28ff\u28ff\u28ff\u28ff\u28ff\u28ff\u28c9\u285f\u2800\u2800 \u28b8\u28ff\u28e7\u28e4\u28e4\u28e4\u28e4\u28b8\u28ff\u28ff\u28e6\u28e4\u28e4\u28e4\u2844\u28ff\u28ff\u2847\u28fe\u28ff\u28ff\u28e7\u28e4\u28e4\u28e4\u2844\u28b0\u28ff\u28ff\u281f\u281b\u281b\u283b\u28ff\u28ff\u2844\u28a0\u2840\u283b\u28ff\u28ff\u28e6\u28f4\u28ff\u28ff\u2807\u28bf\u28ff\u28e6\u28e4\u28e4\u28ff\u28ff\u2807\u28e0\\n\u2800\u2800\u2800\u2800\u28b0\u2848\u281b\u283f\u28ff\u28ff\u28ff\u28ff\u28ff\u280b\u2800   \u2818\u281b\u281b\u281b\u281b\u281b\u281b\u2808\u281b\u281b\u281b\u281b\u281b\u281b\u2803\u281b\u281b\u2803\u281b\u281b\u281b\u281b\u281b\u281b\u281b\u2803\u281b\u281b\u2803\u2800\u2800\u2800\u2800\u2819\u281b\u2803\u2818\u281b\u2800\u2808\u281b\u281b\u281b\u281b\u2801\u2800\u2800\u2819\u281b\u281b\u281b\u281b\u2801\u281a\u281b\\n\u2800\u2800\u2800\u2800\u28b8\u28ff\u2866\u2800\u2800\u2809\u281b\u283f\u2803\u2800\u2800\u2800  \u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\u2800\\n\\nVersion: 1.3.0\\n\u2502\\n\u25c7  \u2713 Project built successfully\\n[2025-07-22 15:00:49] INFO: No character files specified, attempting to load project agents...\\n[2025-07-22 15:00:49] INFO: Loaded project from /mnt/e/V.ON/trade-companion/dist/index.js\\n[2025-07-22 15:00:49] INFO: Found 1 agent(s) in project configuration\\n[2025-07-22 15:00:49] INFO: Loaded character: Crypto-Analyst\\n[2025-07-22 15:00:49] INFO: Using local @elizaos/server installation\\n[2025-07-22 15:00:51] INFO: Loaded @elizaos/server from local installation\\n[2025-07-22 15:00:51] INFO: [INIT] Database Dir for SQL plugin: /mnt/e/V.ON/trade-companion/.eliza/.elizadb\\n[2025-07-22 15:00:51] INFO: [INIT] Running database migrations for messaging tables...\\n[2025-07-22 15:00:51] INFO: DatabaseMigrationService initialized with database\\n[2025-07-22 15:00:51] INFO: Registered schema for plugin: @elizaos/plugin-sql\\n[2025-07-22 15:00:51] INFO: Discovered 1 plugin schemas out of 1 plugins\\n[2025-07-22 15:00:51] INFO: Running migrations for 1 plugins...\\n[2025-07-22 15:00:51] INFO: Starting migration for plugin: @elizaos/plugin-sql\\n[2025-07-22 15:01:00] INFO: All plugin migrations completed.\\n[2025-07-22 15:01:00] INFO: [INIT] Ensuring default server exists...\\n[2025-07-22 15:01:00] INFO: [AgentServer] Checking for default server...\\n[2025-07-22 15:01:01] INFO: [AgentServer] Default server already exists with ID: 00000000-0000-0000-0000-000000000000\\n[2025-07-22 15:01:01] WARN: Server authentication is disabled. Set ELIZA_SERVER_AUTH_TOKEN environment \\nvariable to enable.\\n[2025-07-22 15:01:01] INFO: Web UI enabled\\n[2025-07-22 15:01:01] INFO: [STATIC] Found client files at: /mnt/e/V.ON/trade-companion/node_modules/@elizaos/server/dist/client\\n[2025-07-22 15:01:01] INFO: [STATIC] Serving static files from: /mnt/e/V.ON/trade-companion/node_modules/@elizaos/server/dist/client\\n[2025-07-22 15:01:01] INFO: [SocketIO] Router initialized with 0 agents\\n[2025-07-22 15:01:01] INFO: [SocketIO] Setting up Socket.IO event listeners\\n[2025-07-22 15:01:01] INFO: [SocketIO] Registered message types: 1: ROOM_JOINING, 2: SEND_MESSAGE, 3: MESSAGE, 4: ACK, 5: THINKING, 6: CONTROL, ROOM_JOINING: 1, SEND_MESSAGE: 2, MESSAGE: 3, ACK: 4, THINKING: 5, CONTROL: 6\\nStartup successful!\\nGo to the dashboard at http://localhost:3000\\nAgentServer is listening on port 3000\\n[2025-07-22 15:01:02] INFO: Final plugins being loaded: @elizaos/plugin-sql, google-genai\\n[2025-07-22 15:01:02] INFO: Initializing character\\n[2025-07-22 15:01:02] INFO: Name:  Crypto-Analyst\\n[2025-07-22 15:01:02] INFO: plugin-sql init starting...\\n[2025-07-22 15:01:02] INFO: Database adapter created and registered\\n[2025-07-22 15:01:01] INFO: [SocketIO] New connection: UEqznuOjCM446CZiAAAB\\n[2025-07-22 15:01:03] WARN: DatabaseMigrationService not found - plugin schema migrations skipped\\n[2025-07-22 15:01:03] INFO: [Crypto-Analyst] MessageBusService: Subscribing to internal message bus for 'new_message', 'message_deleted', and 'channel_cleared' events.\\n[2025-07-22 15:01:03] INFO: [Crypto-Analyst] MessageBusService: Agent is subscribed to 1 servers (including default server)\\n[2025-07-22 15:01:03] INFO: [Crypto-Analyst] MessageBusService: Fetched 3 channels from server 00000000-0000-0000-0000-000000000000\\n[2025-07-22 15:01:03] INFO: [Crypto-Analyst] MessageBusService: Loaded 3 valid channel IDs from 1 servers (including default server)\\n[2025-07-22 15:01:03] INFO: [AgentServer] Automatically registered MessageBusConnector for agent Crypto-Analyst\\n[2025-07-22 15:01:03] INFO: [AgentServer] Auto-associated agent Crypto-Analyst with server ID: 00000000-0000-0000-0000-000000000000\\n[2025-07-22 20:31:03.276 +0530] INFO: Running plugin migrations...\\n    agentName: \\\"Crypto-Analyst\\\"\\n    logLevel: \\\"info\\\"\\n[2025-07-22 20:31:03.277 +0530] INFO: Found 1 plugins with schemas to migrate.\\n    agentName: \\\"Crypto-Analyst\\\"\\n    logLevel: \\\"info\\\"\\n[2025-07-22 20:31:03.277 +0530] INFO: Running migrations for plugin: @elizaos/plugin-sql\\n    agentName: \\\"Crypto-Analyst\\\"\\n    logLevel: \\\"info\\\"\\n[2025-07-22 20:31:03.278 +0530] INFO: Successfully migrated plugin: @elizaos/plugin-sql\\n    agentName: \\\"Crypto-Analyst\\\"\\n    logLevel: \\\"info\\\"\\n[2025-07-22 20:31:03.278 +0530] INFO: Plugin migrations completed.\\n    agentName: \\\"Crypto-Analyst\\\"\\n    logLevel: \\\"info\\\"\\n[2025-07-22 15:01:17] INFO: [SocketIO] Generic 'message' event received: {\\\"type\\\":1,\\\"payload\\\":{\\\"channelId\\\":\\\"6e7bb7c3-5b77-4e3c-907b-4e85da1ed344\\\",\\\"roomId\\\":\\\"6e7bb7c3-5b77-4e3c-907b-4e85da1ed344\\\",\\\"entityId\\\":\\\"7995d2a6-13ae-4331-9672-f92e1c9bf6af\\\"}} (SocketID: UEqznuOjCM446CZiAAAB)\\n[2025-07-22 15:01:17] INFO: [SocketIO UEqznuOjCM446CZiAAAB] Handling channel joining via 'message' event\\n[2025-07-22 15:01:17] INFO: [SocketIO] Socket UEqznuOjCM446CZiAAAB joined Socket.IO channel: 6e7bb7c3-5b77-4e3c-907b-4e85da1ed344\\n[2025-07-22 15:01:17] INFO: [SocketIO] Emitting ENTITY_JOINED event for entityId: 7995d2a6-13ae-4331-9672-f92e1c9bf6af, serverId: 00000000-0000-0000-0000-000000000000, isDm: false\\n[2025-07-22 15:01:17] INFO: [SocketIO] ENTITY_JOINED event emitted successfully for 7995d2a6-13ae-4331-9672-f92e1c9bf6af\\n[2025-07-22 15:01:17] INFO: [SocketIO] Socket UEqznuOjCM446CZiAAAB successfully joined channel 6e7bb7c3-5b77-4e3c-907b-4e85da1ed344.\\n[2025-07-22 15:01:19] INFO: [SocketIO] Client UEqznuOjCM446CZiAAAB disconnected.\\n[2025-07-22 15:01:34] INFO: [SocketIO] New connection: q2yy0Gdf6sp1rq56AAAD\\n[2025-07-22 15:01:34] INFO: [SocketIO] Generic 'message' event received: {\\\"type\\\":1,\\\"payload\\\":{\\\"channelId\\\":\\\"6e7bb7c3-5b77-4e3c-907b-4e85da1ed344\\\",\\\"roomId\\\":\\\"6e7bb7c3-5b77-4e3c-907b-4e85da1ed344\\\",\\\"entityId\\\":\\\"7995d2a6-13ae-4331-9672-f92e1c9bf6af\\\"}} (SocketID: q2yy0Gdf6sp1rq56AAAD)\\n[2025-07-22 15:01:34] INFO: [SocketIO q2yy0Gdf6sp1rq56AAAD] Handling channel joining via 'message' event\\n[2025-07-22 15:01:34] INFO: [SocketIO] Socket q2yy0Gdf6sp1rq56AAAD joined Socket.IO channel: 6e7bb7c3-5b77-4e3c-907b-4e85da1ed344\\n[2025-07-22 15:01:34] INFO: [SocketIO] Emitting ENTITY_JOINED event for entityId: 7995d2a6-13ae-4331-9672-f92e1c9bf6af, serverId: 00000000-0000-0000-0000-000000000000, isDm: false\\n[2025-07-22 15:01:34] INFO: [SocketIO] ENTITY_JOINED event emitted successfully for 7995d2a6-13ae-4331-9672-f92e1c9bf6af\\n[2025-07-22 15:01:34] INFO: [SocketIO] Socket q2yy0Gdf6sp1rq56AAAD successfully joined channel 6e7bb7c3-5b77-4e3c-907b-4e85da1ed344.\\n[2025-07-22 15:01:45] INFO: [SocketIO] Generic 'message' event received: {\\\"type\\\":2,\\\"payload\\\":{\\\"senderId\\\":\\\"7995d2a6-13ae-4331-9672-f92e1c9bf6af\\\",\\\"senderName\\\":\\\"user\\\",\\\"message\\\":\\\"hi\\\",\\\"channelId\\\":\\\"6e7bb7c3-5b77-4e3c-907b-4e85da1ed344\\\",\\\"roomId\\\":\\\"6e7bb7c3-5b77-4e3c-907b-4e85da1ed344\\\",\\\"serverId\\\":\\\"00000000-0000-0000-0000-000000000000\\\",\\\"messageId\\\":\\\"ccb9d4f2-04fd-431d-ba21-428ccd96426c\\\",\\\"source\\\":\\\"client_chat\\\",\\\"metadata\\\":{\\\"channelType\\\":\\\"DM\\\",\\\"isDm\\\":true,\\\"targetUserId\\\":\\\"e7f89f1a-d11d-0d96-a778-ae9a84ab86b3\\\"}}} (SocketID: q2yy0Gdf6sp1rq56AAAD)\\n[2025-07-22 15:01:45] INFO: [SocketIO q2yy0Gdf6sp1rq56AAAD] Handling message sending via 'message' event\\n[2025-07-22 15:01:45] INFO: [SocketIO q2yy0Gdf6sp1rq56AAAD] Received SEND_MESSAGE for central submission: channel 6e7bb7c3-5b77-4e3c-907b-4e85da1ed344 from user\\n[2025-07-22 15:01:45] INFO: [SocketIO q2yy0Gdf6sp1rq56AAAD] Full payload for debugging: {\\n  \\\"senderId\\\": \\\"7995d2a6-13ae-4331-9672-f92e1c9bf6af\\\",\\n  \\\"senderName\\\": \\\"user\\\",\\n  \\\"message\\\": \\\"hi\\\",\\n  \\\"channelId\\\": \\\"6e7bb7c3-5b77-4e3c-907b-4e85da1ed344\\\",\\n  \\\"roomId\\\": \\\"6e7bb7c3-5b77-4e3c-907b-4e85da1ed344\\\",\\n  \\\"serverId\\\": \\\"00000000-0000-0000-0000-000000000000\\\",\\n  \\\"messageId\\\": \\\"ccb9d4f2-04fd-431d-ba21-428ccd96426c\\\",\\n  \\\"source\\\": \\\"client_chat\\\",\\n  \\\"metadata\\\": {\\n    \\\"channelType\\\": \\\"DM\\\",\\n    \\\"isDm\\\": true,\\n    \\\"targetUserId\\\": \\\"e7f89f1a-d11d-0d96-a778-ae9a84ab86b3\\\"\\n  }\\n}\\n[2025-07-22 15:01:45] INFO: [SocketIO] Detected DM channel during message submission, emitting ENTITY_JOINED for proper world setup\\n[2025-07-22 15:01:45] INFO: [SocketIO] ENTITY_JOINED event emitted for DM channel setup: 7995d2a6-13ae-4331-9672-f92e1c9bf6af\\n[2025-07-22 15:01:45] INFO: [SocketIO q2yy0Gdf6sp1rq56AAAD] Checking if channel 6e7bb7c3-5b77-4e3c-907b-4e85da1ed344 exists before creating message\\n[2025-07-22 15:01:45] INFO: [SocketIO q2yy0Gdf6sp1rq56AAAD] Channel 6e7bb7c3-5b77-4e3c-907b-4e85da1ed344 exists: true\\n[2025-07-22 15:01:45] INFO: [SocketIO q2yy0Gdf6sp1rq56AAAD] Channel 6e7bb7c3-5b77-4e3c-907b-4e85da1ed344 already exists, proceeding with message creation\\n[2025-07-22 15:01:45] INFO: [Crypto-Analyst] MessageBusService: Received message from central bus      \\n    messageId: \\\"33348eee-5eba-4d52-8bfc-efb1231dc61a\\\"\\n[2025-07-22 15:01:45] INFO: [AgentServer] Published message 33348eee-5eba-4d52-8bfc-efb1231dc61a to internal message bus\\n[2025-07-22 15:01:45] INFO: [SocketIO q2yy0Gdf6sp1rq56AAAD] Message from 7995d2a6-13ae-4331-9672-f92e1c9bf6af (msgId: ccb9d4f2-04fd-431d-ba21-428ccd96426c) submitted to central store (central ID: 33348eee-5eba-4d52-8bfc-efb1231dc61a). It will be processed by agents and broadcasted upon their reply.\\n                                                                           new channel 6e7bb7c3-5b77-4e\\n[2025-07-22 15:01:45] INFO: [Crypto-Analyst - e7f89f1a-d11d-0d96-a778-ae9a84ab86b3] MessageBusService: Agent is a participant in channel 6e7bb7c3-5b84ab86b3] MessageBusService: 77-4e3c-907b-4e85da1ed344, proceeding with message processing             oceeding with message process\\n[2025-07-22 15:01:45] INFO: [Crypto-Analyst] MessageBusService: Passed server subscription check for 00000000-0000-0000-0000-000000000000           ver subscription check for 00\\n[2025-07-22 15:01:45] INFO: [Crypto-Analyst] MessageBusService: All checks passed, proceeding to create agent memory and emit MESSAGE_RECEIVED event passed, proceeding to create\\n\\n[2025-07-22 15:10:41] INFO: [AgentServer] Cleared all messages for central channel: 6e7bb7c3-5b77-4e3c-907b-4e85da1ed344\\n[2025-07-22 15:10:41] INFO: [Crypto-Analyst] MessageBusService: Received channel_cleared event for channel 6e7bb7c3-5b77-4e3c-907b-4e85da1ed344     \\n[2025-07-22 15:10:41] INFO: [Messages Router] Emitted channel_cleared event to internal bus for channel 6e7bb7c3-5b77-4e3c-907b-4e85da1ed344        \\n[2025-07-22 15:10:41] INFO: [Crypto-Analyst] MessageBusService: Found 0 memories to delete for channel 6e7bb7c3-5b77-4e3c-907b-4e85da1ed344\\n[2025-07-22 15:10:41] INFO: [Crypto-Analyst] MessageBusService: Successfully processed channel clear for 6e7bb7c3-5b77-4e3c-907b-4e85da1ed344 -> room a6e35042-e750-00a2-83a7-153ac3da2866\\n[2025-07-22 15:10:43] INFO: [SocketIO] Client q2yy0Gdf6sp1rq56AAAD disconnected.\\n[2025-07-22 15:10:44] INFO: [SocketIO] New connection: NPINUw7HcoyXtfndAAAF\\n[2025-07-22 15:10:44] INFO: [SocketIO] Generic 'message' event received: {\\\"type\\\":1,\\\"payload\\\":{\\\"channelId\\\":\\\"6e7bb7c3-5b77-4e3c-907b-4e85da1ed344\\\",\\\"roomId\\\":\\\"6e7bb7c3-5b77-4e3c-907b-4e85da1ed344\\\",\\\"entityId\\\":\\\"7995d2a6-13ae-4331-9672-f92e1c9bf6af\\\"}} (SocketID: NPINUw7HcoyXtfndAAAF)\\n[2025-07-22 15:10:44] INFO: [SocketIO NPINUw7HcoyXtfndAAAF] Handling channel joining via 'message' event\\n[2025-07-22 15:10:44] INFO: [SocketIO] Socket NPINUw7HcoyXtfndAAAF joined \\nSocket.IO channel: 6e7bb7c3-5b77-4e3c-907b-4e85da1ed344\\n[2025-07-22 15:10:44] INFO: [SocketIO] Emitting ENTITY_JOINED event for entityId: 7995d2a6-13ae-4331-9672-f92e1c9bf6af, serverId: 00000000-0000-0000-0000-000000000000, isDm: false\\n[2025-07-22 15:10:44] INFO: [SocketIO] ENTITY_JOINED event emitted successfully for 7995d2a6-13ae-4331-9672-f92e1c9bf6af\\n[2025-07-22 15:10:44] INFO: [SocketIO] Socket NPINUw7HcoyXtfndAAAF successfully joined channel 6e7bb7c3-5b77-4e3c-907b-4e85da1ed344.\\n[2025-07-22 15:11:11] INFO: [SocketIO] Generic 'message' event received: {\\\"type\\\":2,\\\"payload\\\":{\\\"senderId\\\":\\\"7995d2a6-13ae-4331-9672-f92e1c9bf6af\\\",\\\"senderName\\\":\\\"user\\\",\\\"message\\\":\\\"What do you think about Bitcoin today?\\\",\\\"channelId\\\":\\\"6e7bb7c3-5b77-4e3c-907b-4e85da1ed344\\\",\\\"roomId\\\":\\\"6e7bb7c3-5b77-4e3c-907b-4e85da1ed344\\\",\\\"serverId\\\":\\\"00000000-0000-0000-0000-000000000000\\\",\\\"messageId\\\":\\\"338c67bd-85d3-46c0-be73-d4018931455c\\\",\\\"source\\\":\\\"client_chat\\\",\\\"metadata\\\":{\\\"channelType\\\":\\\"DM\\\",\\\"isDm\\\":true,\\\"targetUserId\\\":\\\"e7f89f1a-d11d-0d96-a778-ae9a84ab86b3\\\"}}} (SocketID: NPINUw7HcoyXtfndAAAF)\\n[2025-07-22 15:11:11] INFO: [SocketIO NPINUw7HcoyXtfndAAAF] Handling message sending via 'message' event\\n[2025-07-22 15:11:11] INFO: [SocketIO NPINUw7HcoyXtfndAAAF] Received SEND_MESSAGE for central submission: channel 6e7bb7c3-5b77-4e3c-907b-4e85da1ed344 from user\\n[2025-07-22 15:11:11] INFO: [SocketIO NPINUw7HcoyXtfndAAAF] Full payload for debugging: {\\n  \\\"senderId\\\": \\\"7995d2a6-13ae-4331-9672-f92e1c9bf6af\\\",\\n  \\\"senderName\\\": \\\"user\\\",\\n  \\\"message\\\": \\\"What do you think about Bitcoin today?\\\",\\n  \\\"channelId\\\": \\\"6e7bb7c3-5b77-4e3c-907b-4e85da1ed344\\\",\\n  \\\"roomId\\\": \\\"6e7bb7c3-5b77-4e3c-907b-4e85da1ed344\\\",\\n  \\\"serverId\\\": \\\"00000000-0000-0000-0000-000000000000\\\",\\n  \\\"messageId\\\": \\\"338c67bd-85d3-46c0-be73-d4018931455c\\\",\\n  \\\"source\\\": \\\"client_chat\\\",\\n  \\\"metadata\\\": {\\n    \\\"channelType\\\": \\\"DM\\\",\\n    \\\"isDm\\\": true,\\n    \\\"targetUserId\\\": \\\"e7f89f1a-d11d-0d96-a778-ae9a84ab86b3\\\"\\n  }\\n}\\n[2025-07-22 15:11:11] INFO: [SocketIO] Detected DM channel during message \\nsubmission, emitting ENTITY_JOINED for proper world setup\\n[2025-07-22 15:11:11] INFO: [SocketIO] ENTITY_JOINED event emitted for DM \\nchannel setup: 7995d2a6-13ae-4331-9672-f92e1c9bf6af\\n[2025-07-22 15:11:11] INFO: [SocketIO NPINUw7HcoyXtfndAAAF] Checking if channel 6e7bb7c3-5b77-4e3c-907b-4e85da1ed344 exists before creating message \\n[2025-07-22 15:11:11] INFO: [SocketIO NPINUw7HcoyXtfndAAAF] Channel 6e7bb7c3-5b77-4e3c-907b-4e85da1ed344 exists: true\\n[2025-07-22 15:11:11] INFO: [SocketIO NPINUw7HcoyXtfndAAAF] Channel 6e7bb7c3-5b77-4e3c-907b-4e85da1ed344 already exists, proceeding with message creation\\n[2025-07-22 15:11:11] INFO: [Crypto-Analyst] MessageBusService: Received message from central bus\\n    messageId: \\\"330a9c76-258b-4c6b-9b04-8ca64c069833\\\"\\n[2025-07-22 15:11:11] INFO: [AgentServer] Published message 330a9c76-258b-4c6b-9b04-8ca64c069833 to internal message bus\\n[2025-07-22 15:11:11] INFO: [SocketIO NPINUw7HcoyXtfndAAAF] Message from 7995d2a6-13ae-4331-9672-f92e1c9bf6af (msgId: 338c67bd-85d3-46c0-be73-d4018931455c) submitted to central store (central ID: 330a9c76-258b-4c6b-9b04-8ca64c069833). It will be processed by agents and broadcasted upon their reply.\\n[2025-07-22 15:11:11] INFO: [Crypto-Analyst - e7f89f1a-d11d-0d96-a778-ae9a84ab86b3] MessageBusService: Agent is a participant in channel 6e7bb7c3-5b77-4e3c-907b-4e85da1ed344, proceeding with message processing\\n[2025-07-22 15:11:11] INFO: [Crypto-Analyst] MessageBusService: Passed server subscription check for 00000000-0000-0000-0000-000000000000\\n[2025-07-22 15:11:11] INFO: [Crypto-Analyst] MessageBusService: All checks passed, proceeding to create agent memory and emit MESSAGE_RECEIVED event[2025-07-22 15:21:22] INFO: [SocketIO] Client NPINUw7HcoyXtfndAAAF disconnected.\\n[2025-07-22 15:21:23] INFO: [SocketIO] New connection: 4jNOVu2RrVGNCMcCAAAH\\n[2025-07-22 15:21:23] INFO: [SocketIO] Generic 'message' event received: {\\\"type\\\":1,\\\"payload\\\":{\\\"channelId\\\":\\\"6e7bb7c3-5b77-4e3c-907b-4e85da1ed344\\\",\\\"roomId\\\":\\\"6e7bb7c3-5b77-4e3c-907b-4e85da1ed344\\\",\\\"entityId\\\":\\\"7995d2a6-13ae-4331-9672-f92e1c9bf6af\\\"}} (SocketID: 4jNOVu2RrVGNCMcCAAAH)\\n[2025-07-22 15:21:23] INFO: [SocketIO 4jNOVu2RrVGNCMcCAAAH] Handling channel joining via 'message' event\\n[2025-07-22 15:21:23] INFO: [SocketIO] Socket 4jNOVu2RrVGNCMcCAAAH joined \\nSocket.IO channel: 6e7bb7c3-5b77-4e3c-907b-4e85da1ed344\\n[2025-07-22 15:21:23] INFO: [SocketIO] Emitting ENTITY_JOINED event for entityId: 7995d2a6-13ae-4331-9672-f92e1c9bf6af, serverId: 00000000-0000-0000-0000-000000000000, isDm: false\\n[2025-07-22 15:21:23] INFO: [SocketIO] ENTITY_JOINED event emitted successfully for 7995d2a6-13ae-4331-9672-f92e1c9bf6af\\n[2025-07-22 15:21:23] INFO: [SocketIO] Socket 4jNOVu2RrVGNCMcCAAAH successfully joined channel 6e7bb7c3-5b77-4e3c-907b-4e85da1ed344.\\n[2025-07-22 15:21:26] INFO: [SocketIO] Generic 'message' event received: {\\\"type\\\":2,\\\"payload\\\":{\\\"senderId\\\":\\\"7995d2a6-13ae-4331-9672-f92e1c9bf6af\\\",\\\"senderName\\\":\\\"user\\\",\\\"message\\\":\\\"hi\\\",\\\"channelId\\\":\\\"6e7bb7c3-5b77-4e3c-907b-4e85da1ed344\\\",\\\"roomId\\\":\\\"6e7bb7c3-5b77-4e3c-907b-4e85da1ed344\\\",\\\"serverId\\\":\\\"00000000-0000-0000-0000-000000000000\\\",\\\"messageId\\\":\\\"72655936-1730-4726-b982-035e4188463a\\\",\\\"source\\\":\\\"client_chat\\\",\\\"metadata\\\":{\\\"channelType\\\":\\\"DM\\\",\\\"isDm\\\":true,\\\"targetUserId\\\":\\\"e7f89f1a-d11d-0d96-a778-ae9a84ab86b3\\\"}}} (SocketID: 4jNOVu2RrVGNCMcCAAAH)\\n[2025-07-22 15:21:26] INFO: [SocketIO 4jNOVu2RrVGNCMcCAAAH] Handling message sending via 'message' event\\n[2025-07-22 15:21:26] INFO: [SocketIO 4jNOVu2RrVGNCMcCAAAH] Received SEND_MESSAGE for central submission: channel 6e7bb7c3-5b77-4e3c-907b-4e85da1ed344 from user\\n[2025-07-22 15:21:26] INFO: [SocketIO 4jNOVu2RrVGNCMcCAAAH] Full payload for debugging: {\\n  \\\"senderId\\\": \\\"7995d2a6-13ae-4331-9672-f92e1c9bf6af\\\",\\n  \\\"senderName\\\": \\\"user\\\",\\n  \\\"message\\\": \\\"hi\\\",\\n  \\\"channelId\\\": \\\"6e7bb7c3-5b77-4e3c-907b-4e85da1ed344\\\",\\n  \\\"roomId\\\": \\\"6e7bb7c3-5b77-4e3c-907b-4e85da1ed344\\\",\\n  \\\"serverId\\\": \\\"00000000-0000-0000-0000-000000000000\\\",\\n  \\\"messageId\\\": \\\"72655936-1730-4726-b982-035e4188463a\\\",\\n  \\\"source\\\": \\\"client_chat\\\",\\n  \\\"metadata\\\": {\\n    \\\"channelType\\\": \\\"DM\\\",\\n    \\\"isDm\\\": true,\\n    \\\"targetUserId\\\": \\\"e7f89f1a-d11d-0d96-a778-ae9a84ab86b3\\\"\\n  }\\n}\\n[2025-07-22 15:21:26] INFO: [SocketIO] Detected DM channel during message \\nsubmission, emitting ENTITY_JOINED for proper world setup\\n[2025-07-22 15:21:26] INFO: [SocketIO] ENTITY_JOINED event emitted for DM \\nchannel setup: 7995d2a6-13ae-4331-9672-f92e1c9bf6af\\n[2025-07-22 15:21:26] INFO: [SocketIO 4jNOVu2RrVGNCMcCAAAH] Checking if channel 6e7bb7c3-5b77-4e3c-907b-4e85da1ed344 exists before creating message \\n[2025-07-22 15:21:26] INFO: [SocketIO 4jNOVu2RrVGNCMcCAAAH] Channel 6e7bb7c3-5b77-4e3c-907b-4e85da1ed344 exists: true\\n[2025-07-22 15:21:26] INFO: [SocketIO 4jNOVu2RrVGNCMcCAAAH] Channel 6e7bb7c3-5b77-4e3c-907b-4e85da1ed344 already exists, proceeding with message creation\\n[2025-07-22 15:21:26] INFO: [Crypto-Analyst] MessageBusService: Received message from central bus\\n    messageId: \\\"27337bab-df35-47f3-b8c6-232e68b4238c\\\"\\n[2025-07-22 15:21:26] INFO: [AgentServer] Published message 27337bab-df35-47f3-b8c6-232e68b4238c to internal message bus\\n[2025-07-22 15:21:26] INFO: [SocketIO 4jNOVu2RrVGNCMcCAAAH] Message from 7995d2a6-13ae-4331-9672-f92e1c9bf6af (msgId: 72655936-1730-4726-b982-035e4188463a) submitted to central store (central ID: 27337bab-df35-47f3-b8c6-232e68b4238c). It will be processed by agents and broadcasted upon their reply.\\n[2025-07-22 15:21:26] INFO: [Crypto-Analyst - e7f89f1a-d11d-0d96-a778-ae9a84ab86b3] MessageBusService: Agent is a participant in channel 6e7bb7c3-5b77-4e3c-907b-4e85da1ed344, proceeding with message processing\\n[2025-07-22 15:21:26] INFO: [Crypto-Analyst] MessageBusService: Passed server subscription check for 00000000-0000-0000-0000-000000000000\\n[2025-07-22 15:21:26] INFO: [Crypto-Analyst] MessageBusService: All checks passed, proceeding to create agent memory and emit MESSAGE_RECEIVED event\\n\\n\\nScreenshots\\n\\n<img width=\\\"1246\\\" height=\\\"884\\\" alt=\\\"Image\\\" src=\\\"https://github.com/user-attachments/assets/543175c3-8cbb-493a-8106-e69aae4499fb\\\" />\\n\\n \\n<img width=\\\"1139\\\" height=\\\"597\\\" alt=\\\"Image\\\" src=\\\"https://github.com/user-attachments/assets/17ae0ebd-dd18-4ff7-b5fb-58e8e7996af9\\\" />\\n\\nAdditional context\\n\\nexport const character: Character = {\\n  // --- Basic Identity ---\\n  name: 'Crypto-Analyst',\\n\\n  plugins: [\\n    \\\"@elizaos/plugin-google-genai\\\"\\n    // Use the correct name\\n  ],\\n\\n\",\n      \"createdAt\": \"2025-07-22T15:27:09Z\",\n      \"closedAt\": \"2025-07-22T17:36:12Z\",\n      \"state\": \"CLOSED\",\n      \"commentCount\": 9\n    },\n    {\n      \"id\": \"I_kwDOMT5cIs6_wA-H\",\n      \"title\": \"Plugin-local-ai failing to load on Windows\",\n      \"author\": \"SYMBaiEX\",\n      \"number\": 5499,\n      \"repository\": \"elizaos/eliza\",\n      \"body\": \"**Describe the bug**\\n\\n[2025-07-09 20:16:04] WARN: Failed to load plugin module '@elizaos/plugin-local-ai' using all relevant strategies.\\n[2025-07-09 20:16:04] INFO: Plugin @elizaos/plugin-local-ai not available, installing...\\n[2025-07-09 20:16:04] WARN: Failed to load plugin module '@elizaos/plugin-local-ai' using all relevant strategies.\\n[2025-07-09 20:16:04] WARN: Plugin @elizaos/plugin-local-ai installed from npm with potential GitHub fallback but could not be loaded/verified.\\n[2025-07-09 20:16:04] WARN: Failed to load plugin module '@elizaos/plugin-local-ai' using all relevant strategies.\\n[2025-07-09 20:16:04] ERROR: Failed to load module for plugin @elizaos/plugin-local-ai.\\n[2025-07-09 20:16:04] INFO: Final plugins being loaded: @elizaos/plugin-sql, bootstrap\\n\\n**To Reproduce**\\n\\nUse Windows.  Clean Install, select PGLite, Select Local AI, cd to the dir, elizaos start (or dev)\\n\\n**Expected behavior**\\n\\nplugin-local-ai should load properly\\n\\n**Screenshots**\\n\\n<img width=\\\"2481\\\" height=\\\"1178\\\" alt=\\\"Image\\\" src=\\\"https://github.com/user-attachments/assets/b6342157-2de4-42a1-b9c6-fcaa55519cf3\\\" />\\n\\n**Additional context**\\n\\n\",\n      \"createdAt\": \"2025-07-09T20:17:29Z\",\n      \"closedAt\": \"2025-07-13T16:15:29Z\",\n      \"state\": \"CLOSED\",\n      \"commentCount\": 4\n    },\n    {\n      \"id\": \"I_kwDOMT5cIs67xrH_\",\n      \"title\": \"@elizaos/cli test command incorrectly requires monorepo root for standalone projects\",\n      \"author\": \"sicco-moonbeam\",\n      \"number\": 5142,\n      \"repository\": \"elizaos/eliza\",\n      \"body\": \"**Describe the bug**\\n\\nThe elizaos test command incorrectly assumes that E2E tests must be run from within the ElizaOS monorepo structure, even when running tests for standalone projects created with `elizaos create`. This prevents running E2E tests in standalone projects that are meant to extend ElizaOS functionality.\\n\\n\\n**To Reproduce**\\n\\n1. Create a new ElizaOS project\\n```elizaos create my-project```\\n\\n2. Run the e2e tests:\\n\\n```npm run test:e2e```\\n\\n3. Error: Could not find monorepo root. Make sure to run tests from within the Eliza project.\\n\\n**Expected behavior**\\n\\nThe elizaos test command should:\\n1. Recognize standalone projects created with elizaos create\\n2. Run E2E tests in the project's e2e/ directory\\n3. Not require the full ElizaOS monorepo structure\\n\\n**Screenshots**\\n\\nN/A\\n\\n**Additional context**\\n\\n- Error is reliably reproducible with any \\\"out-of-the-box\\\" project created with @elizaos/cli\\n\\n\",\n      \"createdAt\": \"2025-06-16T15:05:03Z\",\n      \"closedAt\": \"2025-07-13T16:50:31Z\",\n      \"state\": \"CLOSED\",\n      \"commentCount\": 3\n    },\n    {\n      \"id\": \"I_kwDOMT5cIs68o4X0\",\n      \"title\": \"server\",\n      \"author\": \"furkannabisumji\",\n      \"number\": 5230,\n      \"repository\": \"elizaos/eliza\",\n      \"body\": \"{\\n    \\\"success\\\": false,\\n    \\\"error\\\": {\\n        \\\"message\\\": \\\"API endpoint not found\\\",\\n        \\\"code\\\": 404\\n    }\\n}\\nin all endpoints including health only get agents is working \",\n      \"createdAt\": \"2025-06-21T06:56:44Z\",\n      \"closedAt\": \"2025-07-13T16:51:00Z\",\n      \"state\": \"CLOSED\",\n      \"commentCount\": 3\n    },\n    {\n      \"id\": \"I_kwDOMT5cIs69hVkJ\",\n      \"title\": \"Migrate remaining CLI input methods to use @clack/prompts for consistency\",\n      \"author\": \"wtfsayo\",\n      \"number\": 5295,\n      \"repository\": \"elizaos/eliza\",\n      \"body\": \"# Migrate remaining CLI input methods to use @clack/prompts for consistency\\n\\n## \ud83c\udfaf Summary\\n\\nCurrently, the CLI uses a mix of input libraries (`inquirer`, Bun's global `prompt()`, and `@clack/prompts`). We should standardize on `@clack/prompts` for a consistent user experience and better styling across all CLI interactions.\\n\\n## \ud83d\udccb Current State\\n\\nMost of the CLI already uses `@clack/prompts` properly, but there are **2 main files** still using other input methods:\\n\\n### 1. `src/utils/plugin-creator.ts` - Using `inquirer` \ud83d\udce6\\n\\nThis file has multiple `inquirer.prompt()` calls that need to be migrated:\\n\\n- **Plugin specification collection** (~line 172-290):\\n  - Plugin name input\\n  - Plugin description input  \\n  - Plugin features input\\n  - Component selection (checkbox)\\n  - Action names input\\n  - Provider names input\\n  - Evaluator names input\\n  - Service names input\\n\\n### 2. `scripts/generate-unit-tests.ts` - Using global `prompt()` \ud83d\udd27\\n\\n- **Test generation confirmation** (~line 165):\\n  ```typescript\\n  const answer = prompt('Generate tests? (y/n): ');\\n  ```\\n\\n## \u2728 Benefits of Migration\\n\\n1. **Consistent UX** - All CLI interactions will have the same look and feel\\n2. **Better styling** - Clack provides superior visual design and animations\\n3. **Better error handling** - Clack has built-in cancellation handling\\n4. **Reduced dependencies** - Can remove `inquirer` from package.json\\n5. **Type safety** - Better TypeScript integration\\n\\n## \ud83d\udd27 Implementation Examples\\n\\n### For `plugin-creator.ts`:\\n\\n**Before (inquirer):**\\n```typescript\\nconst answers = await inquirer.prompt([\\n  {\\n    type: 'input',\\n    name: 'name',\\n    message: 'Plugin name (without \\\"plugin-\\\" prefix):',\\n    validate: (input: string) => input.length > 0 || 'Plugin name is required'\\n  }\\n]);\\n```\\n\\n**After (clack):**\\n```typescript\\nconst name = await clack.text({\\n  message: 'Plugin name (without \\\"plugin-\\\" prefix):',\\n  validate: (input) => input.length > 0 ? undefined : 'Plugin name is required'\\n});\\n\\nif (clack.isCancel(name)) {\\n  clack.cancel('Operation cancelled.');\\n  process.exit(0);\\n}\\n```\\n\\n### For `generate-unit-tests.ts`:\\n\\n**Before:**\\n```typescript\\nconst answer = prompt('Generate tests? (y/n): ');\\n```\\n\\n**After:**\\n```typescript\\nconst answer = await clack.confirm({\\n  message: 'Generate tests?',\\n  initialValue: true\\n});\\n\\nif (clack.isCancel(answer)) {\\n  console.log('Cancelled.');\\n  return;\\n}\\n```\\n\\n## \u2705 Reference Files (Already Using Clack)\\n\\nThese files are already properly implemented and serve as good examples:\\n- `src/commands/create/actions/creators.ts`\\n- `src/commands/create/index.ts`\\n- `src/commands/env/actions/edit.ts`\\n- `src/commands/publish/utils/validation.ts`\\n- `src/utils/cli-prompts.ts`\\n\\n## \u2705 Acceptance Criteria\\n\\n- [ ] Replace all `inquirer.prompt()` calls in `plugin-creator.ts` with clack equivalents\\n- [ ] Replace global `prompt()` call in `generate-unit-tests.ts` with clack\\n- [ ] Remove `inquirer` dependency from `package.json` if no longer used elsewhere\\n- [ ] Ensure all prompts handle cancellation properly (ctrl+c)\\n- [ ] Test plugin creation flow works identically to current behavior\\n- [ ] Test unit test generation script works identically to current behavior\\n- [ ] Maintain existing validation logic and error messages\\n- [ ] Update any related TypeScript types if needed\\n\\n## \ud83c\udfaf Priority\\n\\n**Medium** - This improves developer experience and code consistency but doesn't affect core functionality.\\n\\n## \ud83d\udca1 Implementation Notes\\n\\n- The `generate-unit-tests.ts` part would be a good **beginner-friendly** task\\n- The `plugin-creator.ts` part is more complex due to multiple sequential prompts\\n- Consider breaking this into two separate PRs if needed\\n- Make sure to test the checkbox selection for component types in plugin creation\\n\\n---\\n\\n**Note**: The majority of the CLI already uses clack properly - this is just cleaning up the last few stragglers to ensure complete consistency across the entire CLI experience.\",\n      \"createdAt\": \"2025-06-26T16:14:01Z\",\n      \"closedAt\": \"2025-07-04T07:16:46Z\",\n      \"state\": \"CLOSED\",\n      \"commentCount\": 3\n    }\n  ],\n  \"topPRs\": [\n    {\n      \"id\": \"PR_kwDOMT5cIs6dzp_i\",\n      \"title\": \"Feat/migrate docs to fumadocs\",\n      \"author\": \"SYMBaiEX\",\n      \"number\": 5435,\n      \"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\u00a0 - [do action]\\r\\n\u00a0 - 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<!-- \u00a0Copy and paste command line output. -->\\r\\n<!--\\r\\n## Database changes\\r\\n-->\\r\\n\\r\\n<!-- \u00a0Please 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/ai16z 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\",\n      \"repository\": \"elizaos/eliza\",\n      \"createdAt\": \"2025-07-07T18:23:11Z\",\n      \"mergedAt\": null,\n      \"additions\": 54767,\n      \"deletions\": 1\n    },\n    {\n      \"id\": \"PR_kwDOMT5cIs6aFGnn\",\n      \"title\": \"feat: updated plugin migrator\",\n      \"author\": \"samarth30\",\n      \"number\": 5066,\n      \"body\": \"This pull request introduces several enhancements and new features to the plugin migration system, focusing on improving test generation, repository analysis, and environment variable management. The most significant changes include the introduction of a context-aware test generation system, updates to repository analysis logic, and improvements to environment variable prompting. Additionally, configuration constants and export structure have been updated for better maintainability.\\r\\n\\r\\n### Context-Aware Test Generation\\r\\n* Added a new system for generating plugin-specific tests dynamically based on the plugin's actual structure and functionality. This replaces the old static template system, ensuring more relevant and accurate tests. (`CONTEXT_AWARE_TESTING.md`)\\r\\n\\r\\n### Repository Analysis Enhancements\\r\\n* Implemented a repository analyzer that scans a plugin's directory for key files (`README.md`, `package.json`, `index.ts/js`) and source files while respecting token limits and skipping large or binary files. (`repository-analyzer.ts`)\\r\\n\\r\\n### Environment Variable Management\\r\\n* Introduced `EnvPrompter`, a utility for interactive collection and validation of environment variables, with support for sensitive values and default descriptions. (`env-prompter.ts`)\\r\\n\\r\\n### Configuration Updates\\r\\n* Added new configuration constants for migration, including `MAX_TOKENS`, `CLAUDE_CODE_TIMEOUT`, and `MIN_DISK_SPACE_GB`, to centralize and standardize settings. (`config.ts`)\\r\\n\\r\\n### Export Structure Improvements\\r\\n* Updated the export structure in `index.ts` to include new components like `EnvPrompter`, `ContextAwareTestGenerator`, and configuration constants, ensuring better modularity and accessibility. (`index.ts`)<!-- Use this template by filling in information and copying and pasting relevant items out of the HTML comments. -->\\r\\n\\r\\n\",\n      \"repository\": \"elizaos/eliza\",\n      \"createdAt\": \"2025-06-11T18:02:27Z\",\n      \"mergedAt\": null,\n      \"additions\": 46293,\n      \"deletions\": 1326\n    },\n    {\n      \"id\": \"PR_kwDOMT5cIs6eZi5-\",\n      \"title\": \"Feat: Autocoder + e2b sandboxes\",\n      \"author\": \"lalalune\",\n      \"number\": 5520,\n      \"body\": \"This PR adds a refactored autocoder plugin as well as the new github and e2b plugins.\\r\\n\\r\\nInstead of merging this in, we should verify we're happy with this and then probably push it out to its own repo (along with plugin deps).\\r\\n\\r\\nHowever, for arch design reasons, nice to do it in the monorepo and work here while we polish it.\",\n      \"repository\": \"elizaos/eliza\",\n      \"createdAt\": \"2025-07-11T00:32:15Z\",\n      \"mergedAt\": null,\n      \"additions\": 44135,\n      \"deletions\": 0\n    },\n    {\n      \"id\": \"PR_kwDOMT5cIs6doDDm\",\n      \"title\": \"chore: 1.0.18\",\n      \"author\": \"wtfsayo\",\n      \"number\": 5419,\n      \"body\": \"## Summary\\n- Merging latest changes from develop branch into main\\n\\n## Changes included\\n- All commits from develop branch since last merge\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.ai/code)\",\n      \"repository\": \"elizaos/eliza\",\n      \"createdAt\": \"2025-07-06T11:19:58Z\",\n      \"mergedAt\": \"2025-07-07T04:35:03Z\",\n      \"additions\": 28125,\n      \"deletions\": 1569\n    },\n    {\n      \"id\": \"PR_kwDOMT5cIs6dn_9z\",\n      \"title\": \"chore: 1.0.18\",\n      \"author\": \"wtfsayo\",\n      \"number\": 5417,\n      \"body\": \"## Summary\\n\u2022 Merging latest changes from develop branch into main\\n\u2022 Includes all recent commits and updates\\n\\n## Changes\\nThis PR merges all changes from the develop branch into main.\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.ai/code)\",\n      \"repository\": \"elizaos/eliza\",\n      \"createdAt\": \"2025-07-06T11:06:53Z\",\n      \"mergedAt\": null,\n      \"additions\": 27799,\n      \"deletions\": 1420\n    }\n  ],\n  \"codeChanges\": {\n    \"additions\": 102785,\n    \"deletions\": 53758,\n    \"files\": 601,\n    \"commitCount\": 1257\n  },\n  \"completedItems\": [\n    {\n      \"title\": \"Feature: Add ELIZA_UI_ENABLE environment variable to toggle Web UI availability\",\n      \"prNumber\": 5304,\n      \"type\": \"feature\",\n      \"body\": \"# Add ELIZA_UI_ENABLE environment variable to control web UI in production\\r\\n\\r\\n## Problem\\r\\n\\r\\nelizaOS currently serves the web UI to anyone who can reach the server. While there's `ELIZA_SERVER_AUTH_TOKEN` for API endpoints, the web interface\",\n      \"files\": [\n        \".env.example\",\n        \"bun.lock\",\n        \"packages/plugin-sql/package.json\",\n        \"packages/server/src/__tests__/basic-functionality.test.ts\",\n        \"packages/server/src/__tests__/ui-disable-feature.test.ts\",\n        \"packages/server/src/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"feat: plugins upgrade with claude code\",\n      \"prNumber\": 5311,\n      \"type\": \"feature\",\n      \"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 an AI-powered migration tool for upgrading ElizaOS plugins from version 0.x to 1.x, featuring a stepwi\",\n      \"files\": [\n        \"bun.lock\",\n        \"packages/cli/package.json\",\n        \"packages/cli/src/commands/plugins/actions/upgrade.ts\",\n        \"packages/cli/src/commands/plugins/index.ts\",\n        \"packages/cli/src/commands/plugins/types.ts\",\n        \"packages/cli/src/utils/upgrade/gates/gate-0-branch.ts\",\n        \"packages/cli/src/utils/upgrade/gates/gate-1-analysis.ts\",\n        \"packages/cli/src/utils/upgrade/gates/gate-2-setup.ts\",\n        \"packages/cli/src/utils/upgrade/gates/gate-3-build.ts\",\n        \"packages/cli/src/utils/upgrade/gates/gate-4-typescript.ts\",\n        \"packages/cli/src/utils/upgrade/gates/gate-5-migration.ts\",\n        \"packages/cli/src/utils/upgrade/gates/gate-6-tests.ts\",\n        \"packages/cli/src/utils/upgrade/gates/gate-7-final.ts\",\n        \"packages/cli/src/utils/upgrade/gates/gate-8-verify.ts\",\n        \"packages/cli/src/utils/upgrade/gates/index.ts\",\n        \"packages/cli/src/utils/upgrade/migration-guide-loader.ts\",\n        \"packages/cli/src/utils/upgrade/progress-reporter.ts\",\n        \"packages/cli/src/utils/upgrade/sdk-migration-agent.ts\",\n        \"packages/cli/src/utils/upgrade/simple-migration-agent.ts\",\n        \"packages/cli/src/utils/upgrade/types.ts\",\n        \"packages/cli/src/utils/upgrade/utils/file-tracker.ts\",\n        \"packages/cli/src/utils/upgrade/utils/git-utils.ts\",\n        \"packages/cli/src/utils/upgrade/utils/validation.ts\",\n        \"packages/docs/docs/plugins/migration/claude-code/advanced-migration-guide.md\",\n        \"packages/docs/docs/plugins/migration/claude-code/completion-requirements.md\",\n        \"packages/docs/docs/plugins/migration/claude-code/integrated-migration-loop.md\",\n        \"packages/docs/docs/plugins/migration/claude-code/migration-guide.md\",\n        \"packages/docs/docs/plugins/migration/claude-code/prompt-and-generation-guide.md\",\n        \"packages/docs/docs/plugins/migration/claude-code/state-and-providers-guide.md\",\n        \"packages/docs/docs/plugins/migration/claude-code/testing-guide.md\",\n        \"packages/cli/src/utils/upgrade/CLAUDE.md\",\n        \"packages/cli/src/utils/upgrade/migrator.ts\",\n        \"packages/cli/tsup.config.ts\"\n      ]\n    },\n    {\n      \"title\": \"chore: update agent secrets when they are empty with local vars\",\n      \"prNumber\": 5329,\n      \"type\": \"other\",\n      \"body\": \"## Summary\\r\\n\\r\\nAdd automatic synchronization of secrets from local `.env` file for characters that don't have secrets configured.\\r\\n\\r\\n## Context\\r\\n\\r\\nWhen characters are stored in the database or loaded from files, they often lack secrets for s\",\n      \"files\": [\n        \"packages/cli/src/commands/start/actions/agent-start.ts\",\n        \"packages/cli/src/commands/start/utils/config-utils.ts\"\n      ]\n    },\n    {\n      \"title\": \"feat: clack env prompts cli, major refactor of cli envs\",\n      \"prNumber\": 5326,\n      \"type\": \"feature\",\n      \"body\": \"## \ud83d\udd27 CLI Environment System Improvements\\r\\n\\r\\nThis PR significantly improves the CLI environment variable system, making it more maintainable, user-friendly, and feature-rich.\\r\\n\\r\\n### \ud83c\udfaf Summary of Changes\\r\\n\\r\\n#### 1. **Enhanced Plugin Environ\",\n      \"files\": [\n        \"packages/cli/src/commands/env/utils/file-operations.ts\",\n        \"packages/cli/src/commands/plugins/actions/install.ts\",\n        \"packages/cli/src/commands/plugins/utils/env-vars.ts\",\n        \"packages/cli/src/commands/test/actions/e2e-tests.ts\",\n        \"packages/cli/src/services/env-file.service.ts\",\n        \"packages/cli/src/services/index.ts\",\n        \"packages/cli/src/types/index.ts\",\n        \"packages/cli/src/utils/config-manager.ts\",\n        \"packages/cli/src/utils/env-prompt.ts\",\n        \"packages/cli/src/utils/index.ts\",\n        \"packages/cli/tests/unit/commands/test/e2e-tests.test.ts\",\n        \"packages/client/src/lib/info.json\",\n        \"packages/cli/src/services/__tests__/env-file.service.test.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: cli create command directory display and cleanup on interruption\",\n      \"prNumber\": 5321,\n      \"type\": \"bugfix\",\n      \"body\": \"# Fix CLI create command directory display and cleanup on interruption\\r\\n\\r\\n## Problem\\r\\n\\r\\nTwo minor bugs with the `elizaos create` command:\\r\\n\\r\\n1. **Confusing directory display**: When creating a project/plugin, the confirmation prompt showed \",\n      \"files\": [\n        \"packages/cli/src/commands/create/actions/creators.ts\",\n        \"packages/cli/src/commands/create/actions/setup.ts\",\n        \"packages/cli/src/utils/build-project.ts\",\n        \"packages/cli/src/utils/helpers.ts\",\n        \"packages/cli/tests/commands/create.test.ts\",\n        \"packages/cli/src/commands/create/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: handle unwrapped server responses in BaseApiClient\",\n      \"prNumber\": 5343,\n      \"type\": \"bugfix\",\n      \"body\": \"## Fix: Handle unwrapped server responses in BaseApiClient\\r\\n\\r\\n### Problem\\r\\n- Calls to Server routes through api-client (`/api/server/health`, `/api/server/ping`, `/api/server/status`) were failing with \\\"Unknown error\\\"\\r\\n- Manual requests to \",\n      \"files\": [\n        \"packages/api-client/src/lib/base-client.ts\",\n        \"packages/api-client/src/__tests__/base-client.test.ts\"\n      ]\n    },\n    {\n      \"title\": \"feat(client): Restructure character form action buttons layout\",\n      \"prNumber\": 5342,\n      \"type\": \"feature\",\n      \"body\": \"## Description\\n\\nThis PR restructures the character form action buttons to improve the user experience and visual layout.\\n\\n## Changes Made\\n\\n### Layout Improvements\\n- **Horizontal Layout**: Replaced vertical stacked buttons with horizontal la\",\n      \"files\": [\n        \"bun.lock\",\n        \"packages/api-client/src/types/agents.ts\",\n        \"packages/client/src/components/agent-creator.tsx\",\n        \"packages/client/src/components/character-form.tsx\"\n      ]\n    },\n    {\n      \"title\": \"fix: simplify .env file creation to use template only\",\n      \"prNumber\": 5340,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n- Remove automatic merging of process.env variables into .env file\\n- Use clean template without runtime environment pollution\\n- Prevent .env file from becoming cluttered with unrelated variables\\n\\n## Problem\\nThe previous implement\",\n      \"files\": [\n        \"packages/cli/src/utils/get-config.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: gui version resolve\",\n      \"prNumber\": 5339,\n      \"type\": \"bugfix\",\n      \"body\": \"\\n\\n<!-- This is an auto-generated comment: release notes by coderabbit.ai -->\\n\\n## Summary by CodeRabbit\\n\\n* **New Features**\\n  * The app sidebar now displays the server version dynamically, fetched from the server.\\n  * Added a new server endp\",\n      \"files\": [\n        \"bun.lock\",\n        \"eliza.postman.json\",\n        \"lerna.json\",\n        \"package.json\",\n        \"packages/api-client/package.json\",\n        \"packages/app/package.json\",\n        \"packages/app/src-tauri/tauri.conf.json\",\n        \"packages/autodoc/package.json\",\n        \"packages/cli/package.json\",\n        \"packages/client/.gitignore\",\n        \"packages/client/package.json\",\n        \"packages/client/src/components/app-sidebar.tsx\",\n        \"packages/client/src/hooks/use-server-version.tsx\",\n        \"packages/client/src/hooks/use-version.tsx\",\n        \"packages/client/src/lib/info.json\",\n        \"packages/client/vite.config.ts\",\n        \"packages/core/package.json\",\n        \"packages/create-eliza/package.json\",\n        \"packages/docs/package.json\",\n        \"packages/plugin-bootstrap/package.json\",\n        \"packages/plugin-dummy-services/package.json\",\n        \"packages/plugin-sql/package.json\",\n        \"packages/plugin-starter/package.json\",\n        \"packages/project-starter/package.json\",\n        \"packages/project-tee-starter/package.json\",\n        \"packages/server/examples/package.json\",\n        \"packages/server/package.json\",\n        \"packages/server/src/api/system/__tests__/version.test.ts\",\n        \"packages/server/src/api/system/index.ts\",\n        \"packages/server/src/api/system/version.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: (cli) show correct type in create command messages\",\n      \"prNumber\": 5337,\n      \"type\": \"bugfix\",\n      \"body\": \"## Description\\r\\n\\r\\nUpdates the CLI create command to display the correct type (Plugin/Agent/TEE Project) in prompts instead of always showing \\\"Project\\\".\\r\\n\\r\\n## Changes\\r\\n\\r\\n- Dynamic intro message based on `--type` flag\\r\\n- Type-specific success\",\n      \"files\": [\n        \"packages/cli/src/commands/create/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: auto-install AI model plugins on project creation\",\n      \"prNumber\": 5335,\n      \"type\": \"bugfix\",\n      \"body\": \"## Problem\\r\\n\\r\\nWhen creating a new project with `elizaos create`, selecting an AI model (e.g., OpenAI, Claude) would:\\r\\n- \u2705 Store the API key in `.env`\\r\\n- \u2705 Report successful configuration\\r\\n- \u274c **NOT** install the corresponding plugin package\",\n      \"files\": [\n        \"packages/cli/src/commands/create/actions/setup.ts\"\n      ]\n    },\n    {\n      \"title\": \"feat: tweak agent card\",\n      \"prNumber\": 5351,\n      \"type\": \"feature\",\n      \"body\": \"This PR refines the Agent Card to match the Figma design more closely.\\r\\n\\r\\nbefore:\\r\\n\\r\\n\\r\\n<img width=\\\"807\\\" alt=\\\"Screenshot 2025-07-03 at 6 36 23\u202fAM\\\" src=\\\"https://github.com/user-attachments/assets/2aafc81c-4d1a-4f8e-87c2-a3811c47d500\\\" />\\r\\n\\r\\naf\",\n      \"files\": [\n        \"packages/client/src/components/agent-card.tsx\",\n        \"packages/client/src/components/ui/switch.tsx\",\n        \"packages/client/src/routes/home.tsx\"\n      ]\n    },\n    {\n      \"title\": \"fix: update eliza avatar\",\n      \"prNumber\": 5350,\n      \"type\": \"bugfix\",\n      \"body\": \"Currently, we are using a large image for the default Eliza avatar, which makes the app load slowly. Since we only need a reasonable resolution for avatars, this PR:\\r\\n\\r\\nResizes the default Eliza avatar to 512x512, which is sufficient for UI\",\n      \"files\": [\n        \"packages/client/public/elizaos-avatar.png\",\n        \"packages/client/src/components/avatar-panel.tsx\",\n        \"packages/client/src/constants.ts\"\n      ]\n    },\n    {\n      \"title\": \"feat: chat refactor\",\n      \"prNumber\": 5349,\n      \"type\": \"feature\",\n      \"body\": \"This PR refactors the Chat component, including the chat bubble and chat view, to align with the new Figma design. Please note that the group chat design is not finalized yet and will be refactored in a separate PR once the design is comple\",\n      \"files\": [\n        \"packages/client/src/components/ChatMessageListComponent.tsx\",\n        \"packages/client/src/components/chat.tsx\",\n        \"packages/client/src/components/retry-button.tsx\",\n        \"packages/client/src/components/ui/button.cy.tsx\",\n        \"packages/client/src/components/ui/button.tsx\",\n        \"packages/client/src/components/ui/chat/chat-bubble.tsx\",\n        \"packages/client/src/components/ui/chat/chat-message-list.tsx\",\n        \"packages/client/src/components/ui/chat/chat-tts-button.tsx\"\n      ]\n    },\n    {\n      \"title\": \"chore: improve logs\",\n      \"prNumber\": 5348,\n      \"type\": \"other\",\n      \"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 visual spinner animations to indicate progress during migrations.\\n  * Introduced real-time tracking and dis\",\n      \"files\": [\n        \"packages/cli/src/utils/upgrade/simple-migration-agent.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix(client): resolve all type issues in home.tsx for complete type safety\",\n      \"prNumber\": 5346,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n\\nThis PR fixes all TypeScript type issues in the home.tsx file to ensure complete type safety.\\n\\n## Changes\\n\\n- Use  enum instead of string literals for status comparison\\n- Add proper type imports for  and \\n- Add explicit type anno\",\n      \"files\": [\n        \"packages/client/src/components/add-agent-card.tsx\",\n        \"packages/client/src/components/agent-card.tsx\",\n        \"packages/client/src/routes/home.tsx\"\n      ]\n    },\n    {\n      \"title\": \"feat: update agent settings UI to match design specifications\",\n      \"prNumber\": 5345,\n      \"type\": \"feature\",\n      \"body\": \"## Summary\\n\\n- Updated dark theme colors for better contrast and visual consistency\\n- Fixed form field styling with proper border radius (4px) and increased spacing\\n- Restructured form element order to follow design pattern: label \u2192 input \u2192 \",\n      \"files\": [\n        \"packages/client/src/components/agent-settings.tsx\",\n        \"packages/client/src/components/array-input.tsx\",\n        \"packages/client/src/components/character-form.tsx\",\n        \"packages/client/src/components/plugins-panel.tsx\",\n        \"packages/client/src/components/secret-panel.tsx\",\n        \"packages/client/src/components/ui/input.tsx\",\n        \"packages/client/src/components/ui/label.cy.tsx\",\n        \"packages/client/src/components/ui/label.tsx\",\n        \"packages/client/src/components/ui/select.tsx\",\n        \"packages/client/src/components/ui/tabs.tsx\",\n        \"packages/client/src/components/ui/textarea.cy.tsx\",\n        \"packages/client/src/components/ui/textarea.tsx\",\n        \"packages/client/src/hooks/use-elevenlabs-voices.ts\",\n        \"packages/client/src/hooks/use-server-version.tsx\",\n        \"packages/client/src/index.css\",\n        \"packages/client/src/routes/agent-settings.tsx\"\n      ]\n    },\n    {\n      \"title\": \"feat: redesign Agent Cards Homepage Layout\",\n      \"prNumber\": 5344,\n      \"type\": \"feature\",\n      \"body\": \"## \ud83c\udfa8 UI Redesign: Agent Cards Homepage\\n\\nThis PR redesigns the agent cards on the client homepage to match the target design specification.\\n\\n### \ud83d\udccb Changes Made\\n\\n#### **AgentCard Component**\\n- \u2705 **Layout**: Changed from square/vertical to h\",\n      \"files\": [\n        \"bun.lock\",\n        \"packages/client/package.json\",\n        \"packages/client/src/components/add-agent-card.tsx\",\n        \"packages/client/src/components/agent-card.tsx\",\n        \"packages/client/src/components/ui/switch.tsx\",\n        \"packages/client/src/routes/home.tsx\"\n      ]\n    },\n    {\n      \"title\": \"chore: v1.0.17\",\n      \"prNumber\": 5385,\n      \"type\": \"other\",\n      \"body\": \"Version 1.0.17 release\",\n      \"files\": [\n        \".env.example\",\n        \"bun.lock\",\n        \"eliza.postman.json\",\n        \"lerna.json\",\n        \"package.json\",\n        \"packages/api-client/package.json\",\n        \"packages/app/package.json\",\n        \"packages/app/src-tauri/tauri.conf.json\",\n        \"packages/autodoc/package.json\",\n        \"packages/cli/package.json\",\n        \"packages/cli/src/utils/upgrade/simple-migration-agent.ts\",\n        \"packages/client/cypress/e2e/01-home-page.cy.ts\",\n        \"packages/client/cypress/e2e/02-chat-functionality.cy.ts\",\n        \"packages/client/package.json\",\n        \"packages/client/src/components/ChatMessageListComponent.tsx\",\n        \"packages/client/src/components/agent-card.tsx\",\n        \"packages/client/src/components/agent-creator.tsx\",\n        \"packages/client/src/components/agent-settings.tsx\",\n        \"packages/client/src/components/app-sidebar.tsx\",\n        \"packages/client/src/components/character-form.tsx\",\n        \"packages/client/src/components/chat.tsx\",\n        \"packages/client/src/components/group-card.tsx\",\n        \"packages/client/src/components/ui/switch.tsx\",\n        \"packages/client/src/routes/home.tsx\",\n        \"packages/core/package.json\",\n        \"packages/create-eliza/package.json\",\n        \"packages/docs/docs/rest/complete-message.api.mdx\",\n        \"packages/docs/docs/rest/ingest-external-message.api.mdx\",\n        \"packages/docs/docs/rest/send-message.api.mdx\",\n        \"packages/docs/docs/rest/submit-message.api.mdx\",\n        \"packages/docs/package.json\",\n        \"packages/plugin-bootstrap/package.json\",\n        \"packages/plugin-dummy-services/package.json\",\n        \"packages/plugin-sql/package.json\",\n        \"packages/plugin-starter/package.json\",\n        \"packages/project-starter/package.json\",\n        \"packages/project-tee-starter/package.json\",\n        \"packages/server/examples/package.json\",\n        \"packages/server/package.json\",\n        \"packages/server/src/api/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: remove duplicate express.json middleware in API router\",\n      \"prNumber\": 5384,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n- Removes redundant express.json middleware that was causing duplicate JSON parsing in the API router\\n- This was creating unnecessary overhead and potential conflicts in request processing\\n\\n## Test plan\\n- [x] Verify API endpoints\",\n      \"files\": [\n        \"packages/server/src/api/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"chore: bump version to 1.0.16\",\n      \"prNumber\": 5383,\n      \"type\": \"other\",\n      \"body\": \"This PR updates the version across all packages from 1.0.15 to 1.0.16.\",\n      \"files\": [\n        \"bun.lock\",\n        \"eliza.postman.json\",\n        \"lerna.json\",\n        \"package.json\",\n        \"packages/api-client/package.json\",\n        \"packages/app/package.json\",\n        \"packages/app/src-tauri/tauri.conf.json\",\n        \"packages/autodoc/package.json\",\n        \"packages/cli/package.json\",\n        \"packages/client/package.json\",\n        \"packages/core/package.json\",\n        \"packages/create-eliza/package.json\",\n        \"packages/docs/package.json\",\n        \"packages/plugin-bootstrap/package.json\",\n        \"packages/plugin-dummy-services/package.json\",\n        \"packages/plugin-sql/package.json\",\n        \"packages/plugin-starter/package.json\",\n        \"packages/project-starter/package.json\",\n        \"packages/project-tee-starter/package.json\",\n        \"packages/server/examples/package.json\",\n        \"packages/server/package.json\"\n      ]\n    },\n    {\n      \"title\": \"fix: cypress test\",\n      \"prNumber\": 5382,\n      \"type\": \"bugfix\",\n      \"body\": \"The test was failing because we removed the AddAgentCard component. This PR removes the related test checks for the add-agent-button to align with the updated UI, ensuring tests reflect the current state of the application.\",\n      \"files\": [\n        \"packages/client/cypress/e2e/01-home-page.cy.ts\",\n        \"packages/client/cypress/e2e/02-chat-functionality.cy.ts\",\n        \"packages/client/src/routes/home.tsx\"\n      ]\n    },\n    {\n      \"title\": \"fix: correct REST API documentation to match actual implementation\",\n      \"prNumber\": 5380,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n\\nThis PR fixes the REST API documentation to match the actual server implementation, addressing issue #5370 where the docs showed non-existent endpoints and incorrect request parameters.\\n\\n## Changes\\n\\n### Documentation Updates\\n- *\",\n      \"files\": [\n        \"bun.lock\",\n        \"eliza.postman.json\",\n        \"packages/docs/docs/rest/complete-message.api.mdx\",\n        \"packages/docs/docs/rest/ingest-external-message.api.mdx\",\n        \"packages/docs/docs/rest/send-message.api.mdx\",\n        \"packages/docs/docs/rest/submit-message.api.mdx\"\n      ]\n    },\n    {\n      \"title\": \"fix: tweak padding\",\n      \"prNumber\": 5379,\n      \"type\": \"bugfix\",\n      \"body\": \"\",\n      \"files\": [\n        \"packages/client/src/components/app-sidebar.tsx\"\n      ]\n    },\n    {\n      \"title\": \"fix: correct import/export icon\",\n      \"prNumber\": 5378,\n      \"type\": \"bugfix\",\n      \"body\": \"\",\n      \"files\": [\n        \"packages/client/src/components/character-form.tsx\"\n      ]\n    },\n    {\n      \"title\": \"Fix import/export button order and icons in character form\",\n      \"prNumber\": 5374,\n      \"type\": \"bugfix\",\n      \"body\": \"## Description\\n\\nThis PR fixes the reversed import/export buttons in the character form dropdown menu.\\n\\n## Changes Made\\n\\n1. **Fixed icon orientation**: \\n   - Export button now uses  (data flowing down from app to file)\\n   - Import button now\",\n      \"files\": [\n        \"packages/client/src/components/character-form.tsx\"\n      ]\n    },\n    {\n      \"title\": \"feat: side bar\",\n      \"prNumber\": 5373,\n      \"type\": \"feature\",\n      \"body\": \"This PR updates the Sidebar component to align with the new Figma design, improving structure, consistency, and visual clarity.\\r\\n\\r\\nUpdated Agent and Group list sections with consistent headers and new button placements.\\r\\n\\r\\nAdded \\\"Create New\",\n      \"files\": [\n        \"packages/client/src/components/app-sidebar.tsx\"\n      ]\n    },\n    {\n      \"title\": \"refactor: reorganize .env.example for better clarity\",\n      \"prNumber\": 5372,\n      \"type\": \"refactor\",\n      \"body\": \"## Summary\\n- Reorganized .env.example file for better clarity and maintainability\\n- Grouped related configuration sections together\\n- Simplified the file structure to focus on essential configuration\\n\\n## Changes\\n- Moved server configuration\",\n      \"files\": [\n        \".env.example\"\n      ]\n    },\n    {\n      \"title\": \"feat: tweak ui\",\n      \"prNumber\": 5371,\n      \"type\": \"feature\",\n      \"body\": \"This PR reduces the gap between the plus icon and the text as requested by @borisudovicic.\\r\\nIt also reduces the avatar size in group chats as requested by @wtfsayo.\",\n      \"files\": [\n        \"packages/client/src/components/ChatMessageListComponent.tsx\",\n        \"packages/client/src/routes/home.tsx\"\n      ]\n    },\n    {\n      \"title\": \"feat: Show correct create button label based on active tab\",\n      \"prNumber\": 5369,\n      \"type\": \"feature\",\n      \"body\": \"Update the create button on the Home page to display \u201cCreate New Agent\u201d when on the Agents tab and \u201cCreate New Group\u201d when on the Groups tab for clearer user guidance.\",\n      \"files\": [\n        \"packages/client/src/routes/home.tsx\"\n      ]\n    },\n    {\n      \"title\": \"feat: bun test:app base setup - issue 5367\",\n      \"prNumber\": 5368,\n      \"type\": \"feature\",\n      \"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\\nhttps://github.com/elizaOS/eliza/issues/5367\\r\\n\\r\\n<!-- This risks section must be filled out before the f\",\n      \"files\": [\n        \"packages/app/package.json\",\n        \"packages/app/src/__tests__/main.test.ts\",\n        \"packages/app/src/types/bun-test.d.ts\",\n        \"packages/app/tsconfig.json\"\n      ]\n    },\n    {\n      \"title\": \"fix: adding missing dependency Test issues #5366\",\n      \"prNumber\": 5366,\n      \"type\": \"bugfix\",\n      \"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\\nhttps://github.com/elizaOS/eliza/issues/5365\\r\\n\\r\\n<!-- This risks section must be filled out before the f\",\n      \"files\": [\n        \"packages/app/package.json\"\n      ]\n    },\n    {\n      \"title\": \"fix: small UI fix\",\n      \"prNumber\": 5363,\n      \"type\": \"bugfix\",\n      \"body\": \"This PR improves the hover color of the \u201cNew Chat\u201d button in the Agent/Group cards and also fixes a regression with the MoreVertical icon padding\",\n      \"files\": [\n        \"packages/client/src/components/agent-card.tsx\",\n        \"packages/client/src/components/character-form.tsx\",\n        \"packages/client/src/components/group-card.tsx\"\n      ]\n    },\n    {\n      \"title\": \"fix: Align '+' button on the same line as Agents/Groups tabs\",\n      \"prNumber\": 5362,\n      \"type\": \"bugfix\",\n      \"body\": \"Aligns the \u201c+\u201d create button to be on the same line as the Agents/Groups tabs, matching the intended layout for cleaner visual alignment.\\r\\n\\r\\n\\r\\nhttps://github.com/user-attachments/assets/ad2a610b-f1a9-44f6-84db-6eede99044b7\\r\\n\\r\\n\",\n      \"files\": [\n        \"packages/client/src/routes/home.tsx\"\n      ]\n    },\n    {\n      \"title\": \"feat: update group card\",\n      \"prNumber\": 5361,\n      \"type\": \"feature\",\n      \"body\": \"This PR updates the GroupCard component to align with the latest Figma design\\r\\n\\r\\nresult:\\r\\n\\r\\n![image](https://github.com/user-attachments/assets/6e04b179-eb3d-4aa6-b1d7-dbf332c6d8fc)\",\n      \"files\": [\n        \"packages/client/src/components/group-card.tsx\"\n      ]\n    },\n    {\n      \"title\": \"fix: tweak ui and fix agent card padding issue\",\n      \"prNumber\": 5360,\n      \"type\": \"bugfix\",\n      \"body\": \"This PR updates the UI based on @wtfsayo requirements:\\r\\n\\r\\n- Updates the switch off button to gray color.\\r\\n\\r\\n- Removes the message icon from the \u201cNew Chat\u201d button.\\r\\n\\r\\n- Adds background color to the tabs that switch between group chat and DM \",\n      \"files\": [\n        \"packages/client/src/components/agent-card.tsx\",\n        \"packages/client/src/routes/home.tsx\"\n      ]\n    },\n    {\n      \"title\": \"feat: migrate CLI to @clack/prompts for consistency\",\n      \"prNumber\": 5359,\n      \"type\": \"feature\",\n      \"body\": \"## Summary\\nMigrates remaining CLI input methods from inquirer and global prompt() to @clack/prompts for consistency and better UX.\\n\\n## Changes\\n- **Replace inquirer with @clack/prompts in plugin-creator.ts**\\n  - Migrated all 8 different inpu\",\n      \"files\": [\n        \"packages/cli/package.json\",\n        \"packages/cli/scripts/generate-unit-tests.ts\",\n        \"packages/cli/src/utils/plugin-creator.ts\"\n      ]\n    },\n    {\n      \"title\": \"feat: update tabs\",\n      \"prNumber\": 5357,\n      \"type\": \"feature\",\n      \"body\": \"This PR improves the visual styling of the tabs component used for switching between group and DM views.\\r\\n\\r\\nbefore:\\r\\n\\r\\n![image](https://github.com/user-attachments/assets/b7863bf1-2bda-4e5c-8c08-56103a69f144)\\r\\n\\r\\n\\r\\nafter:\\r\\n\\r\\n\\r\\nhttps://github\",\n      \"files\": [\n        \"packages/client/src/routes/home.tsx\"\n      ]\n    },\n    {\n      \"title\": \"feat: update agent card\",\n      \"prNumber\": 5355,\n      \"type\": \"feature\",\n      \"body\": \"\",\n      \"files\": [\n        \"packages/client/src/components/agent-card.tsx\",\n        \"packages/client/src/components/ui/switch.tsx\"\n      ]\n    },\n    {\n      \"title\": \"fix: remove chat bubble extra padding\",\n      \"prNumber\": 5354,\n      \"type\": \"bugfix\",\n      \"body\": \"\",\n      \"files\": [\n        \"packages/client/src/components/chat.tsx\"\n      ]\n    },\n    {\n      \"title\": \"fix: chat bubble padding\",\n      \"prNumber\": 5353,\n      \"type\": \"bugfix\",\n      \"body\": \"\",\n      \"files\": [\n        \"packages/client/src/components/chat.tsx\"\n      ]\n    },\n    {\n      \"title\": \"fix: gui\",\n      \"prNumber\": 5352,\n      \"type\": \"bugfix\",\n      \"body\": \"This PR fixes several small GUI issues:\\r\\n\\r\\n- Fix timestamp padding and alignment in chat bubbles.\\r\\n\\r\\n- Add cursor: pointer to relevant components for better UX.\\r\\n\\r\\n- Correct the import/export icon display.\\r\\n\\r\\n- Update the character form tit\",\n      \"files\": [\n        \"packages/client/src/components/agent-card.tsx\",\n        \"packages/client/src/components/agent-creator.tsx\",\n        \"packages/client/src/components/agent-settings.tsx\",\n        \"packages/client/src/components/character-form.tsx\",\n        \"packages/client/src/components/chat.tsx\",\n        \"packages/client/src/components/ui/switch.tsx\",\n        \"packages/client/src/routes/home.tsx\"\n      ]\n    },\n    {\n      \"title\": \"chore: update twitter plugin docs\",\n      \"prNumber\": 5408,\n      \"type\": \"other\",\n      \"body\": \"\",\n      \"files\": [\n        \"packages/docs/packages/plugins/twitter.md\"\n      ]\n    },\n    {\n      \"title\": \"fix: improve maxConnectionAttempts calculation in test-utils\",\n      \"prNumber\": 5406,\n      \"type\": \"bugfix\",\n      \"body\": \"## Problem\\n\\nThe current `maxConnectionAttempts` calculation in `waitForServerReady` function uses an arbitrary time division (`maxWaitTime / 1000`) that assumes each connection attempt takes exactly 1 second. This leads to:\\n\\n- Inconsistent \",\n      \"files\": [\n        \"packages/cli/tests/commands/test-utils.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix(ci): standardize memory allocation and test execution across platforms\",\n      \"prNumber\": 5405,\n      \"type\": \"bugfix\",\n      \"body\": \"## Problem\\n\\nUbuntu CLI tests have been failing consistently while macOS tests pass reliably. The failures include:\\n- 'No agents found' errors\\n- 'AGENT_NOT_FOUND:Ada' errors  \\n- Process cleanup issues\\n\\n## Root Cause Analysis\\n\\nThe Ubuntu CI c\",\n      \"files\": [\n        \".github/workflows/cli-tests.yml\",\n        \"bun.lock\",\n        \"packages/cli/tests/commands/test-utils.ts\",\n        \"packages/cli/tests/test-characters/ada.json\",\n        \"packages/cli/tests/test-characters/multi-chars.json\"\n      ]\n    },\n    {\n      \"title\": \"fix: Refactor agent-settings delete to use agentDelete hook for reusability\",\n      \"prNumber\": 5404,\n      \"type\": \"bugfix\",\n      \"body\": \"Replace the local delete function in agent-settings with the existing agentDelete hook.\\r\\n\\r\\nThis improves reusability and keeps the code DRY.\\r\\n\\r\\nNo functional changes; only internal cleanup.\",\n      \"files\": [\n        \"packages/client/src/components/agent-settings.tsx\"\n      ]\n    },\n    {\n      \"title\": \"feat: header dropdown\",\n      \"prNumber\": 5403,\n      \"type\": \"feature\",\n      \"body\": \"This PR updates the header avatar action to match the new Figma design. Clicking the avatar in the header now opens a dropdown with options to export, delete, or stop the agent directly.\\r\\n\\r\\nAdditionally, this PR adds a reusable useDeleteAge\",\n      \"files\": [\n        \"packages/client/src/components/chat.tsx\",\n        \"packages/client/src/hooks/use-delete-agent.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: resolve group chat crash and unify SplitButton corner radius\",\n      \"prNumber\": 5402,\n      \"type\": \"bugfix\",\n      \"body\": \"This PR fixes a group chat crash issue\\r\\n\\r\\nAdditionally, it unifies the corner radius for the SplitButton component across the app by:\\r\\n\\r\\nAdding mainButtonClassName and dropdownButtonClassName props to allow per-button styling control.\\r\\n\",\n      \"files\": [\n        \"packages/client/src/components/chat.tsx\",\n        \"packages/client/src/components/ui/split-button.tsx\"\n      ]\n    },\n    {\n      \"title\": \"feat: implement comprehensive documentation overhaul with two-track system\",\n      \"prNumber\": 5401,\n      \"type\": \"feature\",\n      \"body\": \"## Summary\\n\\nThis PR implements a comprehensive documentation overhaul addressing issue #5234, creating a two-track documentation system that serves both simple users (\\\"vibecoders\\\") and developers with distinct, focused experiences.\\n\\n## Key \",\n      \"files\": [\n        \"bun.lock\",\n        \"package.json\",\n        \"packages/core/src/specs/v2/database.ts\",\n        \"packages/core/src/specs/v2/runtime.ts\",\n        \"packages/docs/.env.example\",\n        \"packages/docs/AI_SETUP_README.md\",\n        \"packages/docs/babel.config.js\",\n        \"packages/docs/blog/plugin-ordering-guide.mdx\",\n        \"packages/docs/blog/tags.yml\",\n        \"packages/docs/docs/api/plugin-interface.md\",\n        \"packages/docs/docs/cli/stop.md\",\n        \"packages/docs/docs/cli/tee.md\",\n        \"packages/docs/docs/core/plugins.md\",\n        \"packages/docs/docs/customize/_validation-framework.md\",\n        \"packages/docs/docs/customize/analytics.md\",\n        \"packages/docs/docs/customize/character-builder.md\",\n        \"packages/docs/docs/customize/environment-builder.md\",\n        \"packages/docs/docs/customize/feature-workshop.md\",\n        \"packages/docs/docs/customize/overview.md\",\n        \"packages/docs/docs/customize/twitter-advanced.md\",\n        \"packages/docs/docs/customize/visual-lab.md\",\n        \"packages/docs/docs/design-system/accessibility.md\",\n        \"packages/docs/docs/design-system/animations.md\",\n        \"packages/docs/docs/design-system/components.md\",\n        \"packages/docs/docs/design-system/implementation.md\",\n        \"packages/docs/docs/design-system/index.md\",\n        \"packages/docs/docs/design-system/performance.md\",\n        \"packages/docs/docs/faq.md\",\n        \"packages/docs/docs/getting-started/ai-configuration.md\",\n        \"packages/docs/docs/intro.md\",\n        \"packages/docs/docs/intro.mdx\",\n        \"packages/docs/docs/overview/documentation-structure.md\",\n        \"packages/docs/docs/rest/socket-io-real-time-connection.api.mdx\",\n        \"packages/docs/docs/simple/faq.md\",\n        \"packages/docs/docs/simple/getting-started/quick-start.md\",\n        \"packages/docs/docs/simple/guides/character-creation.md\",\n        \"packages/docs/docs/simple/guides/cli-setup.md\",\n        \"packages/docs/docs/simple/guides/discord-setup.md\",\n        \"packages/docs/docs/simple/guides/telegram-setup.md\",\n        \"packages/docs/docs/simple/guides/twitter-setup.md\",\n        \"packages/docs/docs/simple/intro.md\",\n        \"packages/docs/docs/simple/templates/gallery.md\",\n        \"packages/docs/docs/technical/advanced/best-practices.md\",\n        \"packages/docs/docs/technical/advanced/performance.md\",\n        \"packages/docs/docs/technical/api-reference/actions-api.md\",\n        \"packages/docs/docs/technical/api-reference/core-api.md\",\n        \"packages/docs/docs/technical/architecture/core-concepts.md\",\n        \"packages/docs/docs/technical/architecture/memory-system.md\",\n        \"packages/docs/docs/technical/architecture/overview.md\",\n        \"packages/docs/docs/technical/architecture/plugin-system.md\",\n        \".env.example\",\n        \"packages/docs/.gitignore\",\n        \"packages/docs/AI_SEARCH_IMPLEMENTATION.md\",\n        \"packages/docs/docs/cli/agent.md\",\n        \"packages/docs/docs/cli/env.md\",\n        \"packages/docs/docs/cli/plugins.md\",\n        \"packages/docs/docs/cli/publish.md\",\n        \"packages/docs/docs/migration/plugin-migration-detailed.md\",\n        \"packages/docs/docs/migration/plugin-migration-tutorial.md\",\n        \"packages/docs/docs/plugins/migration/claude-code/completion-requirements.md\",\n        \"packages/docs/docs/simple/guides/deployment-railway.md\",\n        \"packages/docs/docs/simple/guides/deployment-render.md\",\n        \"packages/docs/docs/technical/architecture/state-management.md\",\n        \"packages/docs/docs/technical/development/plugin-development.md\",\n        \"packages/docs/docs/simple/guides/plugin-requirements.md\",\n        \"packages/docs/docs/simple/templates/discord-agent.md\",\n        \"packages/docs/docs/simple/templates/multi-platform-agent.md\",\n        \"packages/docs/docs/simple/templates/quick-start.md\",\n        \"packages/docs/docs/simple/templates/telegram-agent.md\",\n        \"packages/docs/docs/simple/templates/twitter-agent.md\",\n        \"packages/docs/docs/technical/architecture/room-world-abstraction.md\",\n        \"packages/docs/docs/technical/architecture/service-layer.md\",\n        \"packages/docs/docs/technical/architecture/socket-communication.md\"\n      ]\n    },\n    {\n      \"title\": \"fix: prevent duplicate new chat creation\",\n      \"prNumber\": 5400,\n      \"type\": \"bugfix\",\n      \"body\": \"\",\n      \"files\": [\n        \"packages/client/src/components/chat.tsx\"\n      ]\n    },\n    {\n      \"title\": \"fix: preserve avatar when updating secrets from SecretPanel\",\n      \"prNumber\": 5399,\n      \"type\": \"bugfix\",\n      \"body\": \"Fixes an issue where updating secrets via SecretPanel unintentionally reset agent.settings.avatar to an empty string.\\r\\n\\r\\nUpdates updateSettings logic in usePartialUpdate to:\\r\\n\\r\\nPreserve existing avatar unless explicitly provided.\\r\\n\\r\\nUpdate \",\n      \"files\": [\n        \"packages/client/src/hooks/use-partial-update.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: agent card new chat\",\n      \"prNumber\": 5398,\n      \"type\": \"bugfix\",\n      \"body\": \"This PR refactors Agent Card behavior to improve the chat initiation and navigation experience:\\r\\n\\r\\nNew Chat Button: Now correctly navigates to the chat page and creates a new chat with the agent.\\r\\n\\r\\nAgent Card Click Area: Clicking anywhere \",\n      \"files\": [\n        \"packages/client/src/components/agent-card.tsx\",\n        \"packages/client/src/components/chat.tsx\",\n        \"packages/client/src/components/group-card.tsx\",\n        \"packages/client/src/hooks/use-dm-channels.ts\",\n        \"packages/client/src/routes/home.tsx\"\n      ]\n    },\n    {\n      \"title\": \"feat: improve UI cursor pointer interactions\",\n      \"prNumber\": 5397,\n      \"type\": \"feature\",\n      \"body\": \"## Summary\\nThis PR improves the user experience by adding proper cursor pointer interactions to all interactive elements in the sidebar and updating the base button component.\\n\\n## Changes Made\\n- \u2728 Added `cursor-pointer` class to all interac\",\n      \"files\": [\n        \"packages/client/src/components/app-sidebar.tsx\",\n        \"packages/client/src/components/ui/button.tsx\"\n      ]\n    },\n    {\n      \"title\": \"fix(docs): update documentation version from 1.0.10 to 1.0.17\",\n      \"prNumber\": 5396,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n- Updated the current version label in docusaurus.config.ts from 1.0.10 to 1.0.17\\n- This fixes the incorrect version display that was showing as 1.10.0 instead of 1.0.17\\n\\n## Changes\\n- Modified `packages/docs/docusaurus.config.ts`\",\n      \"files\": [\n        \"packages/docs/docusaurus.config.ts\"\n      ]\n    },\n    {\n      \"title\": \"Fix non-null assertion in useImperativeHandle\",\n      \"prNumber\": 5395,\n      \"type\": \"bugfix\",\n      \"body\": \"```\\n# Relates to\\n\\n<!-- LINK TO ISSUE OR TICKET -->\\n\\n# Risks\\n\\nLow. This change removes a potential runtime error and improves type safety without altering the component's intended behavior.\\n\\n# Background\\n\\n## What does this PR do?\\n\\nThis PR re\",\n      \"files\": [\n        \"packages/client/src/components/ui/split-button.tsx\"\n      ]\n    },\n    {\n      \"title\": \"fix: cursor review\",\n      \"prNumber\": 5393,\n      \"type\": \"bugfix\",\n      \"body\": \"Fixes an issue noted in [review](https://github.com/elizaOS/eliza/pull/5392#pullrequestreview-2986620046)\",\n      \"files\": [\n        \"packages/client/src/components/chat.tsx\",\n        \"packages/client/src/components/ui/split-button.tsx\"\n      ]\n    },\n    {\n      \"title\": \"feat: dm chat header\",\n      \"prNumber\": 5392,\n      \"type\": \"feature\",\n      \"body\": \"This PR updates the DM chat header design to align with the new Figma designs.\\r\\n\\r\\nAdditional improvements:\\r\\nFixes an issue where creating a new chat would jump to the second-latest chat instead of the newly created one.\\r\\n\\r\\nAdds a mechanism \",\n      \"files\": [\n        \"packages/client/src/components/chat.tsx\",\n        \"packages/client/src/components/ui/dropdown-menu.tsx\",\n        \"packages/client/src/components/ui/split-button.tsx\"\n      ]\n    },\n    {\n      \"title\": \"feat: update actions tab label to 'Model Calls' in agent sidebar\",\n      \"prNumber\": 5391,\n      \"type\": \"feature\",\n      \"body\": \"## Summary\\n\\nThis PR updates the label for the actions tab in the agent sidebar from 'Actions' to 'Model Calls' for better clarity and user understanding.\\n\\n## Changes\\n\\n- Updated the tab label in \\n- Changed from 'Actions' to 'Model Calls' to \",\n      \"files\": [\n        \"packages/client/src/components/agent-sidebar.tsx\"\n      ]\n    },\n    {\n      \"title\": \"feat: improve UI avatar handling and styling consistency\",\n      \"prNumber\": 5390,\n      \"type\": \"feature\",\n      \"body\": \"## Summary\\n\\nThis PR improves the UI avatar handling and styling consistency across the client components.\\n\\n## Changes Made\\n\\n- **Agent Card Component**: Added  utility function for consistent avatar handling\\n- **App Sidebar Component**: \\n  -\",\n      \"files\": [\n        \"packages/client/src/components/agent-card.tsx\",\n        \"packages/client/src/components/app-sidebar.tsx\",\n        \"packages/client/src/components/connection-status.tsx\"\n      ]\n    },\n    {\n      \"title\": \"chore: Update select component border radius\",\n      \"prNumber\": 5389,\n      \"type\": \"other\",\n      \"body\": \"This PR updates the border radius of the select component from 'rounded' to 'rounded-xl' for a more modern appearance.\",\n      \"files\": [\n        \"packages/client/src/components/ui/select.tsx\"\n      ]\n    },\n    {\n      \"title\": \"fix: recording icon padding\",\n      \"prNumber\": 5388,\n      \"type\": \"bugfix\",\n      \"body\": \"Issue:\\r\\nThe recording icon has no padding, causing it to appear cramped.\\r\\n\\r\\n\\r\\n![image](https://github.com/user-attachments/assets/5c96b07f-b5e8-45f9-abb5-74c8b558c0a3)\\r\\n\\r\\nFix:\\r\\n\\r\\nAdded padding to the recording icon to improve visual balance\",\n      \"files\": [\n        \"packages/client/src/components/audio-recorder.tsx\"\n      ]\n    },\n    {\n      \"title\": \"fix: handle string and array types in bio for backward compatibility\",\n      \"prNumber\": 5387,\n      \"type\": \"bugfix\",\n      \"body\": \"Previously, the bio handling logic assumed `agent.bio` was always an array, causing existing agents with string-based bios to fallback to the default description, hiding their actual bio.\\r\\n\\r\\nThis fix adds type checks to gracefully handle bo\",\n      \"files\": [\n        \"packages/client/src/components/agent-card.tsx\"\n      ]\n    },\n    {\n      \"title\": \"feat: issue-5410 fixing JSDoc comments\",\n      \"prNumber\": 5414,\n      \"type\": \"feature\",\n      \"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://github.com/elizaOS/eliza/issues/5410\\r\\n[<!-- LINK TO ISSUE OR TICKET -->\\r\\n](https://github.com/eli\",\n      \"files\": [\n        \"packages/core/src/database.ts\",\n        \"packages/core/src/specs/v1/messages.ts\",\n        \"packages/core/src/specs/v2/settings.ts\"\n      ]\n    },\n    {\n      \"title\": \"ci: update GitHub Actions upload-artifact to v4\",\n      \"prNumber\": 5412,\n      \"type\": \"other\",\n      \"body\": \"Updated workflows to use actions/upload-artifact@v4 for better reliability and performance. See release notes at https://github.com/actions/upload-artifact/releases\",\n      \"files\": [\n        \"packages/cli/.github/workflows/cli-comprehensive-tests.yml\",\n        \"packages/client/.github/workflows/client-tests.yml\"\n      ]\n    },\n    {\n      \"title\": \"fix: Refactor DM channel creation logic to fetch live message count inste\u2026\",\n      \"prNumber\": 5411,\n      \"type\": \"bugfix\",\n      \"body\": \"# Context\\r\\n\\r\\nPreviously, we were relying on the stale `latestChannelMessages` state to determine if a DM channel was empty when deciding to reuse or create a new DM channel. However, `latestChannelMessages` could be stale, leading to incorr\",\n      \"files\": [\n        \"packages/client/src/components/chat.tsx\"\n      ]\n    },\n    {\n      \"title\": \"fix: issue 5425 - removing check if sender name includes DM\",\n      \"prNumber\": 5426,\n      \"type\": \"bugfix\",\n      \"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://github.com/elizaOS/eliza/issues/5425\\r\\n<!-- LINK TO ISSUE OR TICKET -->\\r\\n\\r\\n<!-- This risks section\",\n      \"files\": [\n        \"packages/server/src/socketio/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: downgrade vite-plugin-node-polyfills to resolve client build issues\",\n      \"prNumber\": 5424,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n- Downgraded vite-plugin-node-polyfills from 0.23.0 to 0.17.0 in the client package\\n- This resolves compatibility issues with the current Vite version and fixes build errors\\n\\n## Test plan\\n- [x] Run `bun install` to update depende\",\n      \"files\": [\n        \"bun.lock\",\n        \"packages/client/package.json\",\n        \"packages/client/vite.config.ts\"\n      ]\n    },\n    {\n      \"title\": \"test: extra windows ci install time\",\n      \"prNumber\": 5423,\n      \"type\": \"tests\",\n      \"body\": \"This pull request adjusts the timeout settings for multiple test cases in the `ElizaOS Plugin Commands` test suite to improve reliability, particularly in Windows CI environments.\\r\\n\\r\\nTest timeout adjustments:\\r\\n\\r\\n* [`packages/cli/tests/comma\",\n      \"files\": [\n        \"packages/cli/tests/commands/plugins.test.ts\"\n      ]\n    },\n    {\n      \"title\": \"chore: run linting on codebase\",\n      \"prNumber\": 5422,\n      \"type\": \"other\",\n      \"body\": \"## Summary\\n- Ran `bun run lint` across all packages to ensure code formatting consistency\\n- No actual changes were needed as all files were already properly formatted\\n- This PR ensures the codebase maintains consistent formatting standards\\n\",\n      \"files\": [\n        \".github/workflows/claude-code-review.yml\",\n        \".github/workflows/claude.yml\",\n        \"CLAUDE.md\",\n        \"packages/api-client/src/__tests__/integration/no-content-fix.test.ts\",\n        \"packages/api-client/src/services/system.ts\",\n        \"packages/cli/scripts/generate-unit-tests.ts\",\n        \"packages/cli/tests/commands/create.test.ts\",\n        \"packages/cli/tests/integration/version-display.test.ts\",\n        \"packages/cli/tests/unit/characters/README.md\",\n        \"packages/cli/tests/unit/utils/display-banner.test.ts\",\n        \"packages/docs/docs/intro.mdx\",\n        \"packages/docs/docs/rest/complete-message.api.mdx\",\n        \"packages/docs/docs/rest/ingest-external-message.api.mdx\",\n        \"packages/docs/docs/rest/submit-message.api.mdx\",\n        \"packages/docs/docs/simple/faq.md\",\n        \"packages/docs/docs/simple/getting-started/quick-start.md\",\n        \"packages/docs/docs/simple/guides/character-creation.md\",\n        \"packages/docs/docs/simple/guides/deployment-railway.md\",\n        \"packages/docs/docs/simple/guides/plugin-requirements.md\",\n        \"packages/docs/docs/simple/intro.md\",\n        \"packages/docs/docs/simple/templates/discord-agent.md\",\n        \"packages/docs/docs/simple/templates/multi-platform-agent.md\",\n        \"packages/docs/docs/simple/templates/quick-start.md\",\n        \"packages/docs/docs/simple/templates/telegram-agent.md\",\n        \"packages/docs/docs/simple/templates/twitter-agent.md\",\n        \"packages/docs/docs/technical/advanced/best-practices.md\",\n        \"packages/docs/docs/technical/api-reference/actions-api.md\",\n        \"packages/docs/docs/technical/api-reference/core-api.md\",\n        \"packages/docs/docs/technical/architecture/room-world-abstraction.md\",\n        \"packages/docs/docs/technical/architecture/service-layer.md\",\n        \"packages/docs/docs/technical/architecture/socket-communication.md\",\n        \"packages/docs/docs/technical/architecture/state-management.md\",\n        \"packages/docs/docs/technical/development/creating-plugins.md\",\n        \"packages/docs/docs/technical/development/plugin-development.md\",\n        \"packages/docs/docs/technical/faq.md\",\n        \"packages/docs/docs/technical/integrations/discord-technical.md\",\n        \"packages/docs/docs/technical/integrations/telegram-technical.md\",\n        \"packages/docs/docs/technical/intro.md\",\n        \"packages/docs/netlify/functions/predict.js\",\n        \"packages/docs/package.json\",\n        \"packages/docs/packages/plugins/twitter.md\",\n        \"packages/docs/sidebars.ts\",\n        \"packages/docs/src/components/ShowcaseComponent.tsx\",\n        \"packages/docs/src/components/SmartSearch/README.md\",\n        \"packages/docs/src/components/SmartSearch/index.tsx\",\n        \"packages/docs/src/css/custom.css\",\n        \"packages/docs/src/services/aiSearchService.js\",\n        \"packages/docs/src/theme/Root/index.js\",\n        \"packages/docs/vercel.json\"\n      ]\n    },\n    {\n      \"title\": \"chore: linting updates across multiple packages\",\n      \"prNumber\": 5420,\n      \"type\": \"other\",\n      \"body\": \"## Summary\\n- Apply linting fixes to test files and TypeScript definitions\\n- Update formatting in CLI utilities (load-plugin.ts, plugin-creator.ts)\\n- Fix linting issues in client components (agent-settings.tsx, chat.tsx, split-button.tsx)\\n\\n#\",\n      \"files\": [\n        \"packages/app/src/__tests__/main.test.ts\",\n        \"packages/app/src/types/bun-test.d.ts\",\n        \"packages/cli/src/utils/load-plugin.ts\",\n        \"packages/cli/src/utils/plugin-creator.ts\",\n        \"packages/client/src/components/agent-settings.tsx\",\n        \"packages/client/src/components/chat.tsx\",\n        \"packages/client/src/components/ui/split-button.tsx\"\n      ]\n    },\n    {\n      \"title\": \"chore: 1.0.18\",\n      \"prNumber\": 5419,\n      \"type\": \"other\",\n      \"body\": \"## Summary\\n- Merging latest changes from develop branch into main\\n\\n## Changes included\\n- All commits from develop branch since last merge\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.ai/code)\",\n      \"files\": [\n        \".env.example\",\n        \".github/workflows/claude-code-review.yml\",\n        \".github/workflows/claude.yml\",\n        \".github/workflows/cli-tests.yml\",\n        \"CLAUDE.md\",\n        \"bun.lock\",\n        \"package.json\",\n        \"packages/api-client/src/__tests__/base-client.test.ts\",\n        \"packages/api-client/src/__tests__/integration/no-content-fix.test.ts\",\n        \"packages/api-client/src/lib/base-client.ts\",\n        \"packages/api-client/src/services/system.ts\",\n        \"packages/app/package.json\",\n        \"packages/app/src/__tests__/main.test.ts\",\n        \"packages/app/src/types/bun-test.d.ts\",\n        \"packages/app/tsconfig.json\",\n        \"packages/cli/.github/workflows/cli-comprehensive-tests.yml\",\n        \"packages/cli/package.json\",\n        \"packages/cli/scripts/generate-unit-tests.ts\",\n        \"packages/cli/src/utils/load-plugin.ts\",\n        \"packages/cli/src/utils/plugin-creator.ts\",\n        \"packages/cli/tests/commands/create.test.ts\",\n        \"packages/cli/tests/commands/plugins.test.ts\",\n        \"packages/cli/tests/commands/test-utils.ts\",\n        \"packages/cli/tests/integration/version-display.test.ts\",\n        \"packages/cli/tests/test-characters/ada.json\",\n        \"packages/cli/tests/test-characters/multi-chars.json\",\n        \"packages/cli/tests/unit/characters/README.md\",\n        \"packages/cli/tests/unit/utils/display-banner.test.ts\",\n        \"packages/client/.github/workflows/client-tests.yml\",\n        \"packages/client/src/components/agent-card.tsx\",\n        \"packages/client/src/components/agent-settings.tsx\",\n        \"packages/client/src/components/agent-sidebar.tsx\",\n        \"packages/client/src/components/app-sidebar.tsx\",\n        \"packages/client/src/components/audio-recorder.tsx\",\n        \"packages/client/src/components/chat.tsx\",\n        \"packages/client/src/components/connection-status.tsx\",\n        \"packages/client/src/components/group-card.tsx\",\n        \"packages/client/src/components/ui/button.tsx\",\n        \"packages/client/src/components/ui/dropdown-menu.tsx\",\n        \"packages/client/src/components/ui/select.tsx\",\n        \"packages/client/src/components/ui/split-button.tsx\",\n        \"packages/client/src/hooks/use-delete-agent.ts\",\n        \"packages/client/src/hooks/use-dm-channels.ts\",\n        \"packages/client/src/hooks/use-partial-update.ts\",\n        \"packages/client/src/routes/home.tsx\",\n        \"packages/core/src/database.ts\",\n        \"packages/core/src/specs/v1/messages.ts\",\n        \"packages/core/src/specs/v2/database.ts\",\n        \"packages/core/src/specs/v2/runtime.ts\",\n        \"packages/core/src/specs/v2/settings.ts\",\n        \"packages/client/package.json\",\n        \"packages/client/vite.config.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix(docs): replace 'any' types with proper TypeScript interfaces\",\n      \"prNumber\": 5418,\n      \"type\": \"bugfix\",\n      \"body\": \"## Description\\n\\nThis PR fixes TypeScript type safety issues in the Docusaurus configuration by replacing generic `any` types with proper TypeScript interfaces.\\n\\n## Changes Made\\n\\n- **Added proper type definitions:**\\n  - `SidebarItem` interfa\",\n      \"files\": [\n        \"packages/docs/docusaurus.config.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: issue-5407, plugin loading bun on windows\",\n      \"prNumber\": 5416,\n      \"type\": \"bugfix\",\n      \"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://github.com/elizaOS/eliza/issues/5407\\r\\n<!-- LINK TO ISSUE OR TICKET -->\\r\\n\\r\\n<!-- This risks section\",\n      \"files\": [\n        \"packages/cli/src/utils/load-plugin.ts\",\n        \"packages/cli/src/utils/plugin-creator.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix textual inconsistencies in files\",\n      \"prNumber\": 5433,\n      \"type\": \"bugfix\",\n      \"body\": \"Standardized text formatting and corrected spelling inconsistencies\\r\\n`initital` - `initial`\\r\\n`enble` - `enable`\",\n      \"files\": [\n        \"packages/docs/versioned_docs/version-0.25.9/changelog.md\"\n      ]\n    },\n    {\n      \"title\": \"feat(cli): improve user experience with clean spinner flow and proper task sequencing\",\n      \"prNumber\": 5431,\n      \"type\": \"feature\",\n      \"body\": \"## Summary\\n\\nThis PR significantly improves the CLI user experience by replacing verbose console logs with clean clack spinners and restructuring the command flow to ensure proper task sequencing.\\n\\n## Key Changes\\n\\n### \ud83c\udfaf Core Improvements\\n- \",\n      \"files\": [\n        \"packages/cli/src/commands/create/actions/creators.ts\",\n        \"packages/cli/src/commands/create/actions/setup.ts\",\n        \"packages/cli/src/commands/plugins/actions/install.ts\",\n        \"packages/cli/src/index.ts\",\n        \"packages/cli/src/utils/build-project.ts\",\n        \"packages/cli/src/utils/copy-template.ts\",\n        \"packages/cli/src/utils/get-config.ts\",\n        \"packages/cli/src/utils/index.ts\",\n        \"packages/cli/src/utils/package-manager.ts\",\n        \"packages/cli/src/utils/run-bun.ts\",\n        \"packages/cli/src/utils/spinner-utils.ts\"\n      ]\n    },\n    {\n      \"title\": \"feat: add LOG_TIMESTAMPS environment variable to control log timestamps\",\n      \"prNumber\": 5430,\n      \"type\": \"feature\",\n      \"body\": \"## Summary\\n\\nThis PR introduces two improvements:\\n\\n1. **Configurable log timestamps**: Adds a `LOG_TIMESTAMPS` environment variable to control whether timestamps are displayed in logs. This addresses the issue of cluttered logs with timestam\",\n      \"files\": [\n        \".github/workflows/claude-code-review.yml\",\n        \"packages/core/src/logger.ts\",\n        \"packages/docs/docs/cli/env.md\"\n      ]\n    },\n    {\n      \"title\": \"chore: 1.0.19\",\n      \"prNumber\": 5429,\n      \"type\": \"other\",\n      \"body\": \"Prepare for release 1.0.19\",\n      \"files\": [\n        \"bun.lock\",\n        \"packages/cli/src/commands/update/actions/cli-update.ts\",\n        \"packages/cli/src/commands/update/index.ts\",\n        \"packages/cli/tests/commands/update.test.ts\",\n        \"packages/client/vite.config.cypress.ts\",\n        \"packages/client/vite.config.ts\",\n        \"packages/server/src/index.ts\",\n        \"packages/server/src/socketio/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: improve browser compatibility and update dependencies\",\n      \"prNumber\": 5428,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n\\nThis PR improves browser compatibility for the client package and updates several dependencies.\\n\\n## Changes\\n\\n### Client Package (Vite Config)\\n- Added CommonJS shims injection plugin for better browser compatibility\\n- Configured \",\n      \"files\": [\n        \"bun.lock\",\n        \"packages/client/vite.config.ts\",\n        \"packages/server/src/index.ts\",\n        \"packages/server/src/socketio/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: prevent CLI update from creating files in non-project directories\",\n      \"prNumber\": 5427,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n\\nFixes a critical bug where `elizaos update` creates unwanted project files (package.json, node_modules, etc.) when run outside of an ElizaOS project directory.\\n\\n## Problem\\n\\nWhen running `elizaos update` in a non-project director\",\n      \"files\": [\n        \"packages/cli/src/commands/update/actions/cli-update.ts\",\n        \"packages/cli/src/commands/update/index.ts\",\n        \"packages/cli/tests/commands/update.test.ts\"\n      ]\n    },\n    {\n      \"title\": \"chore: merge develop to main\",\n      \"prNumber\": 5480,\n      \"type\": \"other\",\n      \"body\": \"Merging develop branch to main with latest changes:\\n\\n## Changes included:\\n- fix: improve SPA routing for globally installed CLI (PR #5479)\\n\\nThis merge brings the latest fixes from develop to main.\",\n      \"files\": [\n        \"lerna.json\",\n        \"packages/cli/src/commands/start/actions/server-start.ts\",\n        \"packages/server/src/__tests__/client-path-resolution.test.ts\",\n        \"packages/server/src/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: improve SPA routing for globally installed CLI\",\n      \"prNumber\": 5479,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n- Enhanced server path resolution to support globally installed elizaos CLI\\n- Fixed SPA routing failures when refreshing non-home routes for global installations\\n- Added explicit clientPath option to ServerOptions interface\\n\\n## P\",\n      \"files\": [\n        \"lerna.json\",\n        \"packages/cli/src/commands/start/actions/server-start.ts\",\n        \"packages/server/src/__tests__/client-path-resolution.test.ts\",\n        \"packages/server/src/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"Merge develop into main\",\n      \"prNumber\": 5478,\n      \"type\": \"other\",\n      \"body\": \"This PR merges the latest changes from develop into main.\",\n      \"files\": [\n        \"lerna.json\",\n        \"packages/client/cypress/e2e/03-spa-routing.cy.ts\",\n        \"packages/server/src/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: resolve SPA routing for globally installed CLI\",\n      \"prNumber\": 5477,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n- Fixed SPA routing failures when refreshing non-home routes (e.g., `/chat/:agentId`, `/settings/`) for globally installed CLI\\n- Enhanced server path resolution to find client dist files in various installation scenarios\\n\\n## Prob\",\n      \"files\": [\n        \"packages/client/cypress/e2e/03-spa-routing.cy.ts\",\n        \"packages/server/src/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"Release v1.1.4: Merge develop to main\",\n      \"prNumber\": 5476,\n      \"type\": \"other\",\n      \"body\": \"## Release v1.1.3\\n\\nThis PR merges the latest changes from develop into main for the v1.1.3 release.\\n\\n### Changes included:\\n- Bump package versions to 1.1.3 and minor formatting\\n- Fix: SPA routing fallback and nested button hydration error\\n-\",\n      \"files\": [\n        \"bun.lock\",\n        \"lerna.json\",\n        \"packages/client/src/components/chat.tsx\",\n        \"packages/server/src/api/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: SPA routing fallback and nested button hydration error\",\n      \"prNumber\": 5475,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\r\\nThis PR fixes critical UI hydration errors and SPA routing issues that were preventing proper client-side navigation and causing React warnings in production.\\r\\n\\r\\n## Problems Fixed\\r\\n1. **React hydration error**: Invalid HTML stru\",\n      \"files\": [\n        \"packages/client/src/components/chat.tsx\",\n        \"packages/server/src/api/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"chore 1.1.3\",\n      \"prNumber\": 5474,\n      \"type\": \"other\",\n      \"body\": \"Merging latest changes from develop branch into main.\",\n      \"files\": [\n        \".gitignore\",\n        \"bun.lock\",\n        \"packages/server/src/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"chore: 1.1.3\",\n      \"prNumber\": 5473,\n      \"type\": \"other\",\n      \"body\": \"This PR merges the latest changes from develop into main.\\n\\n## Changes included:\\n- Fix: Add bun.lock to .gitignore\\n- Fix: Improve client path resolution for global installations\\n\\n## Type of Change\\n- [ ] Bug fix (non-breaking change which fix\",\n      \"files\": [\n        \".gitignore\",\n        \"lerna.json\",\n        \"packages/server/src/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: improve client path resolution for global CLI installations\",\n      \"prNumber\": 5472,\n      \"type\": \"bugfix\",\n      \"body\": \"## Description\\n\\nFixes 'Client application not found' error when running ElizaOS from global CLI installation.\\n\\n## Problem\\n\\nWhen ElizaOS is installed globally via `bun install -g @elizaos/cli`, the server cannot find the client dist files be\",\n      \"files\": [\n        \".gitignore\",\n        \"packages/server/src/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: add bun.lock to .gitignore\",\n      \"prNumber\": 5471,\n      \"type\": \"bugfix\",\n      \"body\": \"This PR adds `bun.lock` to the .gitignore file to prevent the Bun package manager lock file from being tracked in version control.\\n\\n## Changes\\n- Added `bun.lock` to .gitignore\\n\\n## Why?\\nLock files for package managers should typically be ign\",\n      \"files\": [\n        \".gitignore\",\n        \"packages/server/src/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"chore: 1.1.2\",\n      \"prNumber\": 5470,\n      \"type\": \"other\",\n      \"body\": \"Version bump to 1.1.2\",\n      \"files\": [\n        \".github/workflows/release.yaml\",\n        \"bun.lock\",\n        \"packages/server/src/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: handle SPA routing on refresh without NotFoundError\",\n      \"prNumber\": 5469,\n      \"type\": \"bugfix\",\n      \"body\": \"## Description\\n\\nFixes NotFoundError that occurs when refreshing on any route other than the home page (e.g., /chat).\\n\\n## Problem\\n\\nWhen users refresh the page on SPA routes like /chat, the server throws a NotFoundError because express.static\",\n      \"files\": [\n        \"packages/server/src/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"chore: merge main to develop\",\n      \"prNumber\": 5468,\n      \"type\": \"other\",\n      \"body\": \"\",\n      \"files\": [\n        \"bun.lock\",\n        \"lerna.json\",\n        \"packages/api-client/package.json\",\n        \"packages/app/package.json\",\n        \"packages/autodoc/package.json\",\n        \"packages/cli/package.json\",\n        \"packages/client/package.json\",\n        \"packages/core/package.json\",\n        \"packages/create-eliza/package.json\",\n        \"packages/docs/package.json\",\n        \"packages/plugin-bootstrap/package.json\",\n        \"packages/plugin-dummy-services/package.json\",\n        \"packages/plugin-sql/package.json\",\n        \"packages/plugin-starter/package.json\",\n        \"packages/project-starter/package.json\",\n        \"packages/project-tee-starter/package.json\",\n        \"packages/server/package.json\"\n      ]\n    },\n    {\n      \"title\": \"fix(ci): resolve release workflow failures and simplify post-publish steps\",\n      \"prNumber\": 5467,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\nThis PR fixes the failing release workflow and simplifies the post-publish process.\\n\\n## Problems Fixed\\n1. **Lerna publish failure**: The workflow was failing because Lerna detected uncommitted changes and refused to publish\\n2. **\",\n      \"files\": [\n        \".github/workflows/release.yaml\"\n      ]\n    },\n    {\n      \"title\": \"fix(ci): resolve Lerna publish failure in release workflow\",\n      \"prNumber\": 5466,\n      \"type\": \"bugfix\",\n      \"body\": \"## Problem\\nThe GitHub Actions release workflow is failing at the 'Publish Packages' step because Lerna detects uncommitted changes and refuses to publish.\\n\\n## Root Cause\\nThe workflow updates package versions using `lerna version` with the `\",\n      \"files\": [\n        \".github/workflows/release.yaml\"\n      ]\n    },\n    {\n      \"title\": \"fix: commit lerna changes\",\n      \"prNumber\": 5463,\n      \"type\": \"bugfix\",\n      \"body\": \"\",\n      \"files\": [\n        \".github/workflows/release.yaml\"\n      ]\n    },\n    {\n      \"title\": \"fix: bump versions in lerna before build\",\n      \"prNumber\": 5461,\n      \"type\": \"bugfix\",\n      \"body\": \"## Fix: Server displays outdated version after release\\r\\n\\r\\n### \ud83d\udc1b Problem\\r\\nWhen releasing v1.0.20 via the CLI, the client UI continued to display v1.0.19 in the top-left corner, even though the CLI correctly showed v1.0.20.\\r\\n\\r\\n### \ud83d\udd0d Root Ca\",\n      \"files\": [\n        \".github/workflows/release.yaml\"\n      ]\n    },\n    {\n      \"title\": \"fix: remove skip-verification flag from plugin test commands\",\n      \"prNumber\": 5460,\n      \"type\": \"bugfix\",\n      \"body\": \"This PR removes the --skip-verification flag from all plugin test commands in the plugins.test.ts file. The flag appears to be no longer needed or recognized in the current version of the CLI.\",\n      \"files\": [\n        \"packages/cli/tests/commands/plugins.test.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: add explicit boolean conversion for environment variable checks\",\n      \"prNumber\": 5459,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n\\nThis PR adds explicit boolean conversion using the `!!` operator for environment variable checks in the eliza character configuration.\\n\\n## Changes\\n\\n- Added `!!` operator to convert environment variables to boolean values explici\",\n      \"files\": [\n        \"packages/cli/src/characters/eliza.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: remove dup body parser, \\\"stream is not readable\\\"\",\n      \"prNumber\": 5458,\n      \"type\": \"bugfix\",\n      \"body\": \"## PR Summary: Fix \\\"stream is not readable\\\" error in client GUI\\r\\n\\r\\n### Problem\\r\\nWhen refreshing or creating new chats in the ElizaOS client GUI, the server was throwing an error:\\r\\n```\\r\\n(InternalServerError) stream is not readable\\r\\n```\\r\\n\\r\\n##\",\n      \"files\": [\n        \"packages/server/src/api/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"chore: refine chat opening toasts for clarity\",\n      \"prNumber\": 5457,\n      \"type\": \"other\",\n      \"body\": \"### Changes\\r\\n- Adds clear toast feedback when opening or reusing a fresh DM channel:\\r\\n  - Shows \\\"Already in a fresh chat\\\" if the user is already in the latest empty DM channel.\\r\\n  - Shows \\\"Chat opened\\\" if switching to a fresh empty DM chann\",\n      \"files\": [\n        \"packages/client/src/components/chat.tsx\"\n      ]\n    },\n    {\n      \"title\": \"fix: repeated DM creation on refresh by clearing forceNew state\",\n      \"prNumber\": 5455,\n      \"type\": \"bugfix\",\n      \"body\": \"Problem:\\r\\nNavigating to a chat with { state: { forceNew: true } } caused repeated DM channel creation on page refresh, as location.state persists across reloads in React Router.\\r\\n\\r\\nWhat this PR does:\\r\\n\\r\\nAdds navigate(location.pathname, { re\",\n      \"files\": [\n        \"packages/client/src/components/chat.tsx\"\n      ]\n    },\n    {\n      \"title\": \"fix: update create command helper text + warning msg\",\n      \"prNumber\": 5454,\n      \"type\": \"bugfix\",\n      \"body\": \"this updates the helper text to use elizaos commands and also gives more descript instructions about what to do after creating a plugin project or agent.\\r\\n\\r\\nit also flashes a warning in case the plugin name gets augmented so the user isnt s\",\n      \"files\": [\n        \"packages/cli/src/commands/create/actions/creators.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: merge duplicate model logging into a single adapter.log call\",\n      \"prNumber\": 5453,\n      \"type\": \"bugfix\",\n      \"body\": \"Summary\\r\\nCurrently, we have duplicated model logging during useModel runtime:\\r\\n\\r\\n![image](https://github.com/user-attachments/assets/1197f735-48db-48dc-a757-432fa61e0a6f)\\r\\n\\r\\nThe first log (prompt:${modelKey}) captures the prompt but lacks d\",\n      \"files\": [\n        \"packages/core/src/runtime.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: prevent global plugin installations\",\n      \"prNumber\": 5450,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n\\nThis PR fixes an issue where plugins could be installed globally when the CLI is running from a global installation, which could cause permission issues and conflicts between projects.\\n\\n## Changes\\n\\n- Renamed `getCliDirectory()` \",\n      \"files\": [\n        \"bun.lock\",\n        \"packages/cli/src/utils/install-plugin.ts\"\n      ]\n    },\n    {\n      \"title\": \"feat(cli): update dev instructions to include elizaos command option\",\n      \"prNumber\": 5448,\n      \"type\": \"feature\",\n      \"body\": \"This PR updates the CLI output messages when creating new projects to include the 'elizaos dev' command option alongside 'bun run dev'.\\n\\n## Changes\\n- Updated console output in createPlugin() to show 'elizaos dev or bun run dev'\\n- Updated co\",\n      \"files\": [\n        \"packages/cli/src/commands/create/actions/creators.ts\"\n      ]\n    },\n    {\n      \"title\": \"feat: image gen action\",\n      \"prNumber\": 5446,\n      \"type\": \"feature\",\n      \"body\": \"This PR adds a new generateImageAction to the agent pipeline, enabling the agent to generate images based on conversational context using ModelType.IMAGE.\\r\\n\\r\\nAdditionally, this PR removes crossOrigin=\\\"anonymous\\\" from the MediaContent compon\",\n      \"files\": [\n        \"packages/client/src/components/media-content.tsx\",\n        \"packages/plugin-bootstrap/src/actions/imageGeneration.ts\",\n        \"packages/plugin-bootstrap/src/actions/index.ts\",\n        \"packages/plugin-bootstrap/src/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: improve code formatting in client components\",\n      \"prNumber\": 5445,\n      \"type\": \"bugfix\",\n      \"body\": \"## Description\\n\\nThis PR improves code formatting consistency across several client components.\\n\\n## Changes\\n\\n- Fixed indentation in \\n- Fixed indentation in   \\n- Fixed indentation in \\n- Fixed indentation in \\n- Removed unnecessary blank lines\\n\",\n      \"files\": [\n        \"packages/client/src/components/agent-action-viewer.tsx\",\n        \"packages/client/src/components/agent-log-viewer.tsx\",\n        \"packages/client/src/components/agent-memory-edit-overlay.tsx\",\n        \"packages/client/src/components/group-panel.tsx\"\n      ]\n    },\n    {\n      \"title\": \"fix: replace all window.confirm usages with useConfirmation across GUI\",\n      \"prNumber\": 5444,\n      \"type\": \"bugfix\",\n      \"body\": \"This PR systematically replaces all window.confirm usage across the Eliza codebase with the global useConfirmation hook, ensuring:\\r\\n\\r\\n\u2705 Consistent, theme-aware modal confirmations (light/dark mode support).\\r\\n\u2705 Accessible, non-blocking UI al\",\n      \"files\": [\n        \"packages/client/src/components/agent-action-viewer.tsx\",\n        \"packages/client/src/components/agent-log-viewer.tsx\",\n        \"packages/client/src/components/agent-memory-edit-overlay.tsx\",\n        \"packages/client/src/components/group-panel.tsx\"\n      ]\n    },\n    {\n      \"title\": \"feat(cli): remove --dir flag from create command\",\n      \"prNumber\": 5443,\n      \"type\": \"feature\",\n      \"body\": \"## Description\\n\\nThis PR removes the `--dir` flag from the create command to simplify the command interface.\\n\\n## Changes\\n\\n- Remove `--dir` option from create command definition\\n- Update all create function calls to use current directory (`'.\",\n      \"files\": [\n        \"packages/cli/README.md\",\n        \"packages/cli/src/commands/create/index.ts\",\n        \"packages/cli/src/commands/create/types.ts\",\n        \"packages/cli/tests/commands/create.test.ts\",\n        \"packages/docs/docs/cli/create.md\"\n      ]\n    },\n    {\n      \"title\": \"fix: starter avatar\",\n      \"prNumber\": 5442,\n      \"type\": \"bugfix\",\n      \"body\": \"PR Description:\\r\\nThis PR fixes the starter project\u2019s missing Eliza avatar by replacing the previous local image bundling method with a direct hosted image approach.\\r\\n\\r\\n\u2705 Created a dedicated repo ([elizaOS/eliza-avatars](https://github.com/e\",\n      \"files\": [\n        \"packages/cli/src/characters/eliza.ts\",\n        \"packages/project-starter/src/character.ts\"\n      ]\n    },\n    {\n      \"title\": \"chore: bump version to 1.0.19\",\n      \"prNumber\": 5441,\n      \"type\": \"other\",\n      \"body\": \"This PR updates the version from 1.0.16 to 1.0.19 across all packages.\\n\\n## Changes\\n- Updated version in package.json files across all packages\\n- Updated lerna.json version\\n- Updated eliza.postman.json version\\n- Updated tauri.conf.json versi\",\n      \"files\": [\n        \"bun.lock\",\n        \"eliza.postman.json\",\n        \"lerna.json\",\n        \"package.json\",\n        \"packages/api-client/package.json\",\n        \"packages/app/package.json\",\n        \"packages/app/src-tauri/tauri.conf.json\",\n        \"packages/autodoc/package.json\",\n        \"packages/cli/package.json\",\n        \"packages/client/package.json\",\n        \"packages/core/package.json\",\n        \"packages/create-eliza/package.json\",\n        \"packages/docs/package.json\",\n        \"packages/plugin-bootstrap/package.json\",\n        \"packages/plugin-dummy-services/package.json\",\n        \"packages/plugin-sql/package.json\",\n        \"packages/plugin-starter/package.json\",\n        \"packages/project-starter/package.json\",\n        \"packages/project-tee-starter/package.json\",\n        \"packages/server/examples/package.json\",\n        \"packages/server/package.json\"\n      ]\n    },\n    {\n      \"title\": \"chore: 1.0.20\",\n      \"prNumber\": 5440,\n      \"type\": \"other\",\n      \"body\": \"Release version 1.0.20\",\n      \"files\": [\n        \".github/workflows/claude-code-review.yml\",\n        \"bun.lock\",\n        \"eliza.postman.json\",\n        \"lerna.json\",\n        \"package.json\",\n        \"packages/api-client/package.json\",\n        \"packages/app/package.json\",\n        \"packages/app/src-tauri/tauri.conf.json\",\n        \"packages/autodoc/package.json\",\n        \"packages/cli/README.md\",\n        \"packages/cli/package.json\",\n        \"packages/cli/src/characters/eliza.ts\",\n        \"packages/cli/src/commands/create/actions/creators.ts\",\n        \"packages/cli/src/commands/create/actions/setup.ts\",\n        \"packages/cli/src/commands/create/index.ts\",\n        \"packages/cli/src/commands/create/types.ts\",\n        \"packages/cli/src/commands/plugins/actions/install.ts\",\n        \"packages/cli/src/commands/start/actions/server-start.ts\",\n        \"packages/cli/src/index.ts\",\n        \"packages/cli/src/utils/build-project.ts\",\n        \"packages/cli/src/utils/copy-template.ts\",\n        \"packages/cli/src/utils/get-config.ts\",\n        \"packages/cli/src/utils/index.ts\",\n        \"packages/cli/src/utils/load-plugin.ts\",\n        \"packages/cli/src/utils/package-manager.ts\",\n        \"packages/cli/src/utils/run-bun.ts\",\n        \"packages/cli/src/utils/spinner-utils.ts\",\n        \"packages/cli/tests/commands/create.test.ts\",\n        \"packages/client/package.json\",\n        \"packages/client/src/components/agent-action-viewer.tsx\",\n        \"packages/client/src/components/agent-log-viewer.tsx\",\n        \"packages/client/src/components/agent-memory-edit-overlay.tsx\",\n        \"packages/client/src/components/env-settings.tsx\",\n        \"packages/client/src/components/group-panel.tsx\",\n        \"packages/client/vite.config.cypress.ts\",\n        \"packages/core/package.json\",\n        \"packages/core/src/logger.ts\",\n        \"packages/create-eliza/package.json\",\n        \"packages/docs/docs/cli/create.md\",\n        \"packages/docs/docs/cli/env.md\",\n        \"packages/docs/package.json\",\n        \"packages/docs/versioned_docs/version-0.25.9/changelog.md\",\n        \"packages/plugin-bootstrap/package.json\",\n        \"packages/plugin-dummy-services/package.json\",\n        \"packages/plugin-sql/package.json\",\n        \"packages/plugin-starter/package.json\",\n        \"packages/project-starter/package.json\",\n        \"packages/project-starter/src/character.ts\",\n        \"packages/project-tee-starter/package.json\",\n        \"packages/server/examples/package.json\"\n      ]\n    },\n    {\n      \"title\": \"fix: Windows plugin loading and dev command failures (#5407)\",\n      \"prNumber\": 5437,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\r\\nFixes plugin loading failures on Windows when using `elizaos dev` command by addressing path normalization and localhost resolution issues.\\r\\n\\r\\n## Problem\\r\\nUsers on Windows PowerShell experienced failures when running `elizaos de\",\n      \"files\": [\n        \".github/workflows/claude-code-review.yml\",\n        \"packages/cli/src/commands/start/actions/server-start.ts\",\n        \"packages/cli/src/utils/load-plugin.ts\",\n        \"packages/client/vite.config.cypress.ts\",\n        \"packages/core/src/logger.ts\",\n        \"packages/docs/docs/cli/env.md\",\n        \"packages/server/src/index.ts\",\n        \"packages/server/src/services/message.ts\"\n      ]\n    },\n    {\n      \"title\": \"feat: add action chaining\",\n      \"prNumber\": 5436,\n      \"type\": \"feature\",\n      \"body\": \"This PR adds action chaining\\r\\n\\r\\nAction state is stored on the State object which is passed down to actions\\r\\n\\r\\nAction return values are stored in the action state for the run\\r\\n\\r\\n\\\"callback\\\" is used to send a message to the user\\r\\n\\r\\nAction stat\",\n      \"files\": [\n        \"bun.lock\",\n        \"packages/cli/package.json\",\n        \"packages/core/src/__tests__/runtime.test.ts\",\n        \"packages/core/src/runtime.ts\",\n        \"packages/core/src/specs/v2/__tests__/runtime.test.ts\",\n        \"packages/core/src/types/components.ts\",\n        \"packages/core/src/types/index.ts\",\n        \"packages/plugin-bootstrap/src/__tests__/actions.test.ts\",\n        \"packages/plugin-bootstrap/src/actions/choice.ts\",\n        \"packages/plugin-bootstrap/src/actions/followRoom.ts\",\n        \"packages/plugin-bootstrap/src/actions/ignore.ts\",\n        \"packages/plugin-bootstrap/src/actions/muteRoom.ts\",\n        \"packages/plugin-bootstrap/src/actions/none.ts\",\n        \"packages/plugin-bootstrap/src/actions/reply.ts\",\n        \"packages/plugin-bootstrap/src/actions/roles.ts\",\n        \"packages/plugin-bootstrap/src/actions/sendMessage.ts\",\n        \"packages/plugin-bootstrap/src/actions/settings.ts\",\n        \"packages/plugin-bootstrap/src/actions/unfollowRoom.ts\",\n        \"packages/plugin-bootstrap/src/actions/unmuteRoom.ts\",\n        \"packages/plugin-bootstrap/src/actions/updateEntity.ts\",\n        \"packages/plugin-bootstrap/src/index.ts\",\n        \"packages/plugin-bootstrap/src/providers/actionState.ts\",\n        \"packages/plugin-bootstrap/src/providers/index.ts\",\n        \"packages/plugin-bootstrap/src/providers/recentMessages.ts\",\n        \"packages/project-starter/src/plugin.ts\",\n        \"packages/core/src/__tests__/action-chaining-simple.test.ts\",\n        \"packages/plugin-forms/.eslintrc.json\",\n        \"packages/plugin-forms/.gitignore\",\n        \"packages/plugin-forms/.npmignore\",\n        \"packages/plugin-forms/.prettierrc.js\",\n        \"packages/plugin-forms/README.md\",\n        \"packages/plugin-forms/build.config.ts\",\n        \"packages/plugin-forms/build.ts\",\n        \"packages/plugin-forms/bunfig.toml\",\n        \"packages/plugin-forms/character-test.json\",\n        \"packages/plugin-forms/character.json\",\n        \"packages/plugin-forms/cypress.config.ts\",\n        \"packages/plugin-forms/docs/e2e-test-fix.md\",\n        \"packages/plugin-forms/docs/scenario-demo.md\",\n        \"packages/plugin-forms/eslint.config.js\",\n        \"packages/plugin-forms/index.html\",\n        \"packages/plugin-forms/package.json\",\n        \"packages/plugin-forms/postcss.config.js\",\n        \"packages/plugin-forms/prettier.config.js\",\n        \"packages/plugin-forms/src/__tests__/e2e/forms-plugin.test.ts\",\n        \"packages/plugin-forms/src/__tests__/forms-service.test.ts\",\n        \"packages/plugin-forms/src/__tests__/integration.test.ts\",\n        \"packages/plugin-forms/src/__tests__/plugin.test.ts\",\n        \"packages/plugin-forms/src/__tests__/test-utils.ts\",\n        \"packages/plugin-forms/src/actions/cancel-form.ts\",\n        \"packages/plugin-forms/src/actions/create-form.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: auto-build project on 'elizaos start' command\",\n      \"prNumber\": 5504,\n      \"type\": \"bugfix\",\n      \"body\": \"## Description\\n\\nThis PR adds automatic building to the `elizaos start` command, similar to how the `dev` command works.\\n\\n## Changes\\n\\n- Add automatic build step before starting the server\\n- Skip build for monorepos (similar to dev command be\",\n      \"files\": [\n        \"packages/cli/src/commands/start/index.ts\",\n        \"packages/cli/tests/commands/start.test.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: correct Google Generative AI plugin installation\",\n      \"prNumber\": 5503,\n      \"type\": \"bugfix\",\n      \"body\": \"## Description\\n\\nThis PR fixes the Google Generative AI plugin installation during the `elizaos create` command.\\n\\n## Problem\\n\\nWhen users select \\\"Google Generative AI\\\" during project creation:\\n1. The system was trying to install `@elizaos/plu\",\n      \"files\": [\n        \"packages/cli/src/commands/create/actions/setup.ts\",\n        \"packages/cli/src/utils/spinner-utils.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: improve secret panel UX for global environment variables\",\n      \"prNumber\": 5501,\n      \"type\": \"bugfix\",\n      \"body\": \"## PR Description\\r\\n\\r\\n### Problem\\r\\n\\r\\nUsers were experiencing confusion when managing secrets in the ElizaOS GUI:\\r\\n- The secret panel showed \\\"missing required secrets\\\" warnings even when those secrets were configured in global environment var\",\n      \"files\": [\n        \"packages/client/src/components/character-form.tsx\",\n        \"packages/client/src/components/secret-panel.tsx\"\n      ]\n    },\n    {\n      \"title\": \"fix: Smooth progressive reveal with cap, remove AIWriter swap causing hiccups\",\n      \"prNumber\": 5495,\n      \"type\": \"bugfix\",\n      \"body\": \"Summary\\r\\nThis PR refactors AnimatedMarkdown to replace the previous AIWriter + Markdown swap-based animation with a smooth, consistent, progressive reveal using Markdown alone, while capping animation duration for long texts.\\r\\n\\r\\nPrevious Im\",\n      \"files\": [\n        \"packages/client/src/components/ui/chat/animated-markdown.tsx\"\n      ]\n    },\n    {\n      \"title\": \"feat: add embedded \\\"Add\\\" button inside input for better UX\",\n      \"prNumber\": 5493,\n      \"type\": \"feature\",\n      \"body\": \"This PR improves the ArrayInput component by adding an embedded \u201cAdd\u201d button inside the input that appears only when the user has typed a value.\\r\\n\\r\\nWhy:\\r\\nUsers previously needed to press Enter to add tags, which could lead to forgotten entr\",\n      \"files\": [\n        \"packages/client/src/components/array-input.tsx\"\n      ]\n    },\n    {\n      \"title\": \"fix: critical issues in action chaining implementation\",\n      \"prNumber\": 5490,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n\\nThis PR addresses all critical issues identified in the action chaining implementation (PR #5436) by both @coderabbitai and @claude reviewers, plus additional robustness improvements found during implementation.\\n\\n## Changes Made\",\n      \"files\": [\n        \"packages/core/src/__tests__/action-chaining-simple.test.ts\",\n        \"packages/core/src/runtime.ts\",\n        \"packages/core/src/specs/v2/__tests__/runtime.test.ts\",\n        \"packages/core/src/types/components.ts\",\n        \"packages/plugin-bootstrap/src/providers/actionState.ts\"\n      ]\n    },\n    {\n      \"title\": \"feat: add comprehensive test coverage for forms plugin\",\n      \"prNumber\": 5489,\n      \"type\": \"feature\",\n      \"body\": \"## Summary\\n\\nThis PR enhances the forms plugin with comprehensive test coverage including:\\n- Database persistence tests\\n- Zod validation tests\\n- Transaction safety tests\\n- Error handling improvements\\n\\n## Changes\\n\\n### \ud83e\uddea Test Coverage Enhance\",\n      \"files\": [\n        \"bun.lock\",\n        \"packages/plugin-forms/package.json\",\n        \"packages/plugin-forms/src/__tests__/forms-service.test.ts\",\n        \"packages/plugin-forms/src/__tests__/integration.test.ts\",\n        \"packages/plugin-forms/src/actions/cancel-form.ts\",\n        \"packages/plugin-forms/src/services/forms-service.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: address critical issues in forms plugin\",\n      \"prNumber\": 5488,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n\\nThis PR addresses all critical issues identified by Claude Code in PR #5487 and additional concerns from PR review:\\n\\n### \ud83d\udd34 Critical Bug Fixes\\n- \u2705 **Form value extraction bug** - Fixed logic to properly handle falsy values (fals\",\n      \"files\": [\n        \"packages/plugin-forms/src/actions/cancel-form.ts\",\n        \"packages/plugin-forms/src/actions/create-form.ts\",\n        \"packages/plugin-forms/src/actions/update-form.ts\",\n        \"packages/plugin-forms/src/services/forms-service.ts\"\n      ]\n    },\n    {\n      \"title\": \"feat: Form plugin\",\n      \"prNumber\": 5487,\n      \"type\": \"feature\",\n      \"body\": \"This PR adds a form plugin. The goal of this plugin is to be a dependent service which other plugins can use to build forms on. Once a form has been created (for example, in the autocoder \\\"create project\\\")\\r\\n\\r\\nForms can be updated and cancel\",\n      \"files\": [\n        \".github/workflows/release.yaml\",\n        \".gitignore\",\n        \"bun.lock\",\n        \"lerna.json\",\n        \"package.json\",\n        \"packages/api-client/package.json\",\n        \"packages/app/package.json\",\n        \"packages/autodoc/package.json\",\n        \"packages/cli/package.json\",\n        \"packages/cli/src/characters/eliza.ts\",\n        \"packages/cli/src/commands/start/actions/server-start.ts\",\n        \"packages/cli/src/scripts/copy-client-dist.ts\",\n        \"packages/cli/src/utils/copy-template.ts\",\n        \"packages/cli/src/utils/get-config.ts\",\n        \"packages/cli/src/utils/install-plugin.ts\",\n        \"packages/cli/src/utils/resolve-utils.ts\",\n        \"packages/cli/tests/commands/create.test.ts\",\n        \"packages/cli/tests/commands/plugins.test.ts\",\n        \"packages/cli/tsup.config.ts\",\n        \"packages/client/cypress/e2e/03-spa-routing.cy.ts\",\n        \"packages/client/package.json\",\n        \"packages/client/src/components/chat.tsx\",\n        \"packages/core/package.json\",\n        \"packages/create-eliza/package.json\",\n        \"packages/docs/package.json\",\n        \"packages/plugin-bootstrap/package.json\",\n        \"packages/plugin-dummy-services/package.json\",\n        \"packages/plugin-forms/.eslintrc.json\",\n        \"packages/plugin-forms/.gitignore\",\n        \"packages/plugin-forms/.npmignore\",\n        \"packages/plugin-forms/.prettierrc.js\",\n        \"packages/plugin-forms/README.md\",\n        \"packages/plugin-forms/build.config.ts\",\n        \"packages/plugin-forms/build.ts\",\n        \"packages/plugin-forms/bunfig.toml\",\n        \"packages/plugin-forms/character-test.json\",\n        \"packages/plugin-forms/character.json\",\n        \"packages/plugin-forms/cypress.config.ts\",\n        \"packages/plugin-forms/docs/e2e-test-fix.md\",\n        \"packages/plugin-forms/docs/scenario-demo.md\",\n        \"packages/plugin-forms/eslint.config.js\",\n        \"packages/plugin-forms/index.html\",\n        \"packages/plugin-forms/package.json\",\n        \"packages/plugin-forms/postcss.config.js\",\n        \"packages/plugin-forms/prettier.config.js\",\n        \"packages/plugin-forms/src/__tests__/e2e/forms-plugin.test.ts\",\n        \"packages/plugin-forms/src/__tests__/forms-service.test.ts\",\n        \"packages/plugin-forms/src/__tests__/integration.test.ts\",\n        \"packages/plugin-forms/src/__tests__/plugin.test.ts\",\n        \"packages/plugin-forms/src/__tests__/test-utils.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: prevent PGLITE database hoisting to parent .eliza directory\",\n      \"prNumber\": 5485,\n      \"type\": \"bugfix\",\n      \"body\": \"## Problem\\n\\nWhen running the `create` command inside an existing Eliza project directory (or any directory with a parent that has a `.eliza` directory), the PGLITE database directory was being hoisted to the parent's `.eliza` directory inst\",\n      \"files\": [\n        \"packages/cli/src/utils/get-config.ts\",\n        \"packages/cli/src/utils/resolve-utils.ts\",\n        \"packages/cli/tests/commands/create.test.ts\"\n      ]\n    },\n    {\n      \"title\": \"chore: merge develop to main\",\n      \"prNumber\": 5484,\n      \"type\": \"other\",\n      \"body\": \"fixes client issues\",\n      \"files\": [\n        \"bun.lock\",\n        \"lerna.json\",\n        \"package.json\",\n        \"packages/api-client/package.json\",\n        \"packages/cli/package.json\",\n        \"packages/cli/src/commands/start/actions/server-start.ts\",\n        \"packages/cli/src/scripts/copy-client-dist.ts\",\n        \"packages/cli/src/utils/copy-template.ts\",\n        \"packages/cli/tsup.config.ts\",\n        \"packages/core/package.json\",\n        \"packages/plugin-bootstrap/package.json\",\n        \"packages/plugin-dummy-services/package.json\",\n        \"packages/plugin-sql/package.json\",\n        \"packages/project-starter/package.json\",\n        \"packages/project-tee-starter/package.json\",\n        \"packages/server/README.md\",\n        \"packages/server/package.json\",\n        \"packages/server/src/__tests__/spa-routing-fix.test.ts\",\n        \"packages/server/src/index.ts\",\n        \"packages/server/src/scripts/copy-client-dist.ts\",\n        \"turbo.json\"\n      ]\n    },\n    {\n      \"title\": \"feat: move client distribution from CLI to server package\",\n      \"prNumber\": 5483,\n      \"type\": \"feature\",\n      \"body\": \"## Summary\\n\\nThis PR refactors how client distribution files are handled in the ElizaOS project. Instead of the CLI package managing the client web UI files, this responsibility is now moved to the server package.\\n\\n## Changes\\n\\n- **Server Pac\",\n      \"files\": [\n        \"bun.lock\",\n        \"lerna.json\",\n        \"package.json\",\n        \"packages/api-client/package.json\",\n        \"packages/cli/package.json\",\n        \"packages/cli/src/scripts/copy-client-dist.ts\",\n        \"packages/cli/src/utils/copy-template.ts\",\n        \"packages/cli/tsup.config.ts\",\n        \"packages/core/package.json\",\n        \"packages/plugin-bootstrap/package.json\",\n        \"packages/plugin-dummy-services/package.json\",\n        \"packages/plugin-sql/package.json\",\n        \"packages/project-starter/package.json\",\n        \"packages/project-tee-starter/package.json\",\n        \"packages/server/README.md\",\n        \"packages/server/package.json\",\n        \"packages/server/src/index.ts\",\n        \"packages/server/src/scripts/copy-client-dist.ts\",\n        \"turbo.json\"\n      ]\n    },\n    {\n      \"title\": \"fix: enhance SPA routing debugging and reliability\",\n      \"prNumber\": 5481,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n- Enhanced debugging for SPA routing issues\\n- Improved client path resolution with file existence checks\\n- Better error messages to help diagnose path resolution problems\\n\\n## Context\\nThis PR builds on #5479 which was already merg\",\n      \"files\": [\n        \"packages/cli/src/commands/start/actions/server-start.ts\",\n        \"packages/server/src/__tests__/spa-routing-fix.test.ts\",\n        \"packages/server/src/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"feat: enhance Claude code review workflow with ElizaOS-specific guidelines\",\n      \"prNumber\": 5519,\n      \"type\": \"feature\",\n      \"body\": \"## Summary\\n\\nThis PR enhances the Claude code review workflow to provide more comprehensive and ElizaOS-specific review guidelines.\\n\\n## Changes\\n\\n- **Security Review**: Added checks for exposed API keys, credentials, SQL injection, XSS, and o\",\n      \"files\": [\n        \".github/workflows/claude-code-review.yml\"\n      ]\n    },\n    {\n      \"title\": \"fix typo in prompts.ts\",\n      \"prNumber\": 5516,\n      \"type\": \"bugfix\",\n      \"body\": \"inlcuding - including\",\n      \"files\": [\n        \"packages/core/src/prompts.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: CLI tests failing due to version mismatch and ActionResult import\",\n      \"prNumber\": 5515,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n- Fixed CLI test expecting version 1.0 instead of 1.2.0\\n- Addressed ActionResult type import issue in project templates\\n\\n## Problem\\nThe CLI tests were failing in CI with two main issues:\\n1. `update.test.ts` was expecting version \",\n      \"files\": [\n        \"packages/cli/tests/commands/update.test.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: update plugin-starter dependencies to use workspace version\",\n      \"prNumber\": 5514,\n      \"type\": \"bugfix\",\n      \"body\": \"## Description\\n\\nThis PR updates the plugin-starter package dependencies:\\n- Changed @elizaos/core dependency from fixed version 1.1.6 to workspace:* to ensure it uses the local workspace version\\n- Updated package version format from 1.2.0 to\",\n      \"files\": [\n        \"bun.lock\",\n        \"packages/plugin-starter/package.json\"\n      ]\n    },\n    {\n      \"title\": \"fix: remove deleted directories from docs build config\",\n      \"prNumber\": 5513,\n      \"type\": \"bugfix\",\n      \"body\": \"## Description\\n\\nThis PR fixes the documentation build errors that occurred after removing the partners, community, and archive directories.\\n\\n## Changes\\n\\n- Remove  and  plugin configurations from \\n- Remove version  references from both  and \",\n      \"files\": [\n        \"packages/docs/archive/advanced/autonomous-trading.md\",\n        \"packages/docs/archive/advanced/eliza-in-tee.md\",\n        \"packages/docs/archive/advanced/eliza-with-fhe.md\",\n        \"packages/docs/archive/advanced/trust-engine.md\",\n        \"packages/docs/archive/advanced/verified-inference.md\",\n        \"packages/docs/archive/guides/configuration.md\",\n        \"packages/docs/archive/guides/memory-management.md\",\n        \"packages/docs/archive/guides/remote-deployment.md\",\n        \"packages/docs/archive/guides/secrets-management.md\",\n        \"packages/docs/archive/guides/template-configuration.md\",\n        \"packages/docs/archive/injection/example.md\",\n        \"packages/docs/archive/notes/adapters.md\",\n        \"packages/docs/archive/notes/advanced.md\",\n        \"packages/docs/archive/notes/agent.md\",\n        \"packages/docs/archive/notes/changelog.md\",\n        \"packages/docs/archive/notes/characters.md\",\n        \"packages/docs/archive/notes/clients.md\",\n        \"packages/docs/archive/notes/core.md\",\n        \"packages/docs/archive/notes/database-adapters.md\",\n        \"packages/docs/archive/notes/docker-setup.md\",\n        \"packages/docs/archive/notes/infrastructure.md\",\n        \"packages/docs/archive/notes/local-development.md\",\n        \"packages/docs/archive/notes/packages/clients.md\",\n        \"packages/docs/archive/notes/packages/database-adapters.md\",\n        \"packages/docs/archive/notes/packages/plugins.md\",\n        \"packages/docs/archive/notes/plugins.md\",\n        \"packages/docs/archive/notes/secrets-management.md\",\n        \"packages/docs/archive/notes/start-script.md\",\n        \"packages/docs/archive/tutorials/devschool/index.md\",\n        \"packages/docs/archive/tutorials/devschool/part1.md\",\n        \"packages/docs/archive/tutorials/devschool/part2.md\",\n        \"packages/docs/archive/tutorials/devschool/part3.md\",\n        \"packages/docs/archive/tutorials/nader_tutorial_10min.md\",\n        \"packages/docs/archive/tutorials/nader_tutorial_15min.md\",\n        \"packages/docs/archive/tutorials/nader_tutorial_35min.md\",\n        \"packages/docs/community/Analysis/20241021_20241027.md\",\n        \"packages/docs/community/Analysis/20241028_20241103.md\",\n        \"packages/docs/community/Analysis/20241104_20241110.md\",\n        \"packages/docs/community/Analysis/20241111_20241117.md\",\n        \"packages/docs/community/Analysis/20241118_20241124.md\",\n        \"packages/docs/community/Analysis/20241125_20241201.md\",\n        \"packages/docs/community/Analysis/20241202_20241208.md\",\n        \"packages/docs/community/Analysis/20241209_20241215.md\",\n        \"packages/docs/community/Analysis/20241216_20241222.md\",\n        \"packages/docs/community/Analysis/20241223_20241229.md\",\n        \"packages/docs/community/Analysis/20241230_20250105.md\",\n        \"packages/docs/community/Analysis/20250106_20250112.md\",\n        \"packages/docs/community/Analysis/20250113_20250119.md\",\n        \"packages/docs/community/Analysis/20250120_20250126.md\",\n        \"packages/docs/community/Analysis/20250127_20250202.md\"\n      ]\n    },\n    {\n      \"title\": \"fix: update TypeScript return types for strict compliance\",\n      \"prNumber\": 5512,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n- Update action handlers to return `Promise<ActionResult>` for proper type compliance\\n- Fix Express route handlers to have explicit `void` return type\\n- Add proper error handling with ActionResult type structure\\n\\n## Changes\\n- `pa\",\n      \"files\": [\n        \"packages/plugin-starter/src/plugin.ts\",\n        \"packages/server/src/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"Remove AGENTS.md file\",\n      \"prNumber\": 5511,\n      \"type\": \"other\",\n      \"body\": \"This PR removes the AGENTS.md file as requested.\",\n      \"files\": [\n        \"AGENTS.md\"\n      ]\n    },\n    {\n      \"title\": \"Add configs package\",\n      \"prNumber\": 5508,\n      \"type\": \"other\",\n      \"body\": \"This PR adds a \\\"configs\\\" package.\\r\\n\\r\\nThe goal of this package is to provide a unified eslint, tsconfig, prettier, etc for all plugins and projects.\\r\\n\\r\\nThis hides boilerplate, prevents vibe coders from destroying their projects and creates c\",\n      \"files\": [\n        \"packages/config/.gitignore\",\n        \"packages/config/.npmignore\",\n        \"packages/config/README.md\",\n        \"packages/config/bunfig.toml\",\n        \"packages/config/package.json\",\n        \"packages/config/src/eslint/eslint.config.base.js\",\n        \"packages/config/src/eslint/eslint.config.frontend.js\",\n        \"packages/config/src/eslint/eslint.config.plugin.js\",\n        \"packages/config/src/index.d.ts\",\n        \"packages/config/src/index.ts\",\n        \"packages/config/src/prettier/prettier.config.js\",\n        \"packages/config/src/typescript/tsconfig.base.json\",\n        \"packages/config/src/typescript/tsconfig.frontend.json\",\n        \"packages/config/src/typescript/tsconfig.plugin.json\",\n        \"packages/config/src/typescript/tsconfig.test.json\",\n        \"packages/config/tsconfig.build.json\",\n        \"packages/config/tsconfig.json\",\n        \"bun.lock\",\n        \"packages/config/tsup.config.ts\"\n      ]\n    },\n    {\n      \"title\": \"Add @elizaos/test-utils\",\n      \"prNumber\": 5507,\n      \"type\": \"tests\",\n      \"body\": \"This PR adds a new package which contains a pre-existing bun:test friendly MockRuntime which can be used inside tests, as well as some other types\\r\\n\\r\\nWe have maybe 10 createMockRuntime and MockAgentRuntime objects, each plugin has its own v\",\n      \"files\": [\n        \"packages/core/src/__tests__/database.test.ts\",\n        \"packages/core/src/database.ts\",\n        \"packages/core/src/runtime.ts\",\n        \"packages/core/src/specs/v2/__tests__/database.test.ts\",\n        \"packages/core/src/specs/v2/database.ts\",\n        \"packages/core/src/specs/v2/runtime.ts\",\n        \"packages/core/src/specs/v2/types.ts\",\n        \"packages/core/src/types/components.ts\",\n        \"packages/core/src/types/database.ts\",\n        \"packages/core/src/types/service.ts\",\n        \"packages/plugin-sql/src/__tests__/e2e/postgres.test.ts\",\n        \"packages/plugin-sql/src/__tests__/integration/agent.test.ts\",\n        \"packages/plugin-sql/src/__tests__/integration/base-comprehensive.test.ts\",\n        \"packages/plugin-sql/src/__tests__/integration/cascade-delete.test.ts\",\n        \"packages/plugin-sql/src/__tests__/integration/entity-crud.test.ts\",\n        \"packages/plugin-sql/src/__tests__/integration/entity-methods.test.ts\",\n        \"packages/plugin-sql/src/__tests__/integration/entity.test.ts\",\n        \"packages/plugin-sql/src/base.ts\",\n        \"packages/plugin-sql/src/pg/adapter.ts\",\n        \"packages/test-utils/.gitignore\",\n        \"packages/test-utils/.npmignore\",\n        \"packages/test-utils/README.md\",\n        \"packages/test-utils/bunfig.toml\",\n        \"packages/test-utils/package.json\",\n        \"packages/test-utils/src/DatabaseTestRegistry.ts\",\n        \"packages/test-utils/src/TestInfrastructure.ts\",\n        \"packages/test-utils/src/factories.ts\",\n        \"packages/test-utils/src/index.ts\",\n        \"packages/test-utils/src/mocks/character.ts\",\n        \"packages/test-utils/src/mocks/database.ts\",\n        \"packages/test-utils/src/mocks/memory.ts\",\n        \"packages/test-utils/src/mocks/mockUtils.ts\",\n        \"packages/test-utils/src/mocks/runtime.ts\",\n        \"packages/test-utils/src/mocks/services.ts\",\n        \"packages/test-utils/src/mocks/state.ts\",\n        \"packages/test-utils/src/realRuntime.ts\",\n        \"packages/test-utils/src/templates.ts\",\n        \"packages/test-utils/src/test-infrastructure.test.ts\",\n        \"packages/test-utils/src/testDatabase.ts\",\n        \"packages/test-utils/src/testModels.ts\",\n        \"packages/test-utils/src/unifiedTestSuite.ts\",\n        \"packages/test-utils/tsconfig.build.json\",\n        \"packages/test-utils/tsconfig.json\",\n        \"packages/test-utils/tsup.config.ts\"\n      ]\n    },\n    {\n      \"title\": \"Fix: tsup build wipes vite build\",\n      \"prNumber\": 5555,\n      \"type\": \"bugfix\",\n      \"body\": \"# Risks\\r\\n* Low risk, only changing 3 build config settings\\r\\n\\r\\n# Background\\r\\nThe build script in both `project-starter` and `plugin-starter` are: `tsc --noEmit && vite build && tsup`\\r\\n\\r\\nThe issue is that `tsup.config.ts` had `clean: true` wh\",\n      \"files\": [\n        \"packages/plugin-starter/src/__tests__/build-order.test.ts\",\n        \"packages/plugin-starter/tsup.config.ts\",\n        \"packages/plugin-starter/vite.config.ts\",\n        \"packages/project-starter/src/__tests__/build-order.test.ts\",\n        \"packages/project-starter/tsup.config.ts\",\n        \"packages/plugin-starter/src/__tests__/vite-config-utils.ts\",\n        \"packages/project-starter/src/__tests__/vite-config-utils.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: grant Claude workflow write permissions for issues\",\n      \"prNumber\": 5553,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n- Changes issues permission from 'read' to 'write' in Claude workflow\\n- Enables Claude to create GitHub issues using the gh CLI\\n\\n## Problem\\nClaude was unable to create GitHub issues despite having `allowed_tools` configured with \",\n      \"files\": [\n        \".github/workflows/claude.yml\"\n      ]\n    },\n    {\n      \"title\": \"fix: grant Claude workflow permissions for bun and GitHub CLI commands\",\n      \"prNumber\": 5550,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n- Enables Claude to use bun commands in GitHub Actions workflow\\n- Grants full GitHub CLI access for issue and PR management\\n- Fixes permission errors when Claude tries to create issues from code quality analysis\\n\\n## Changes\\n- Upd\",\n      \"files\": [\n        \".github/workflows/claude.yml\"\n      ]\n    },\n    {\n      \"title\": \"chore: Keep user on agent settings page after saving changes instead of redirecting to dashboard\",\n      \"prNumber\": 5548,\n      \"type\": \"other\",\n      \"body\": \"This PR keeps the user on the agent settings page after saving changes instead of redirecting to the dashboard. This improves UX by allowing users to continue adjusting settings without interruption, as requested by @borisudovicic.\",\n      \"files\": [\n        \"packages/client/src/routes/agent-settings.tsx\"\n      ]\n    },\n    {\n      \"title\": \"feat: Auto-resize ChatInput textarea with max height for improved UX\",\n      \"prNumber\": 5546,\n      \"type\": \"feature\",\n      \"body\": \"# PR: Add Auto-Resizing to ChatInput\\r\\n\\r\\n## What does this PR do?\\r\\n\\r\\n- Adds **auto-resizing functionality** to the `ChatInput` component using `internalRef` and `resizeTextarea`.\\r\\n- Dynamically adjusts the textarea height based on content wh\",\n      \"files\": [\n        \"packages/client/src/components/ChatInputArea.tsx\",\n        \"packages/client/src/components/ui/chat/chat-input.tsx\"\n      ]\n    },\n    {\n      \"title\": \"fix: critical fixes for code quality workflow\",\n      \"prNumber\": 5544,\n      \"type\": \"bugfix\",\n      \"body\": \"## Description\\n\\nThis PR contains critical fixes for the daily code quality analysis workflow that were discovered after the initial PR was merged.\\n\\n## Fixes\\n\\n### 1. File Redirection Bug\\n- Fixed missing file redirection for test framework ch\",\n      \"files\": [\n        \".github/workflows/daily-code-quality-analysis.yml\"\n      ]\n    },\n    {\n      \"title\": \"feat: enhance code quality workflow with Claude automation\",\n      \"prNumber\": 5543,\n      \"type\": \"feature\",\n      \"body\": \"## Description\\n\\nThis PR enhances the daily code quality analysis workflow to enable full automation with Claude, including verbose logging and specific instructions for issue creation.\\n\\n## Key Changes\\n\\n### 1. Claude Automation Fix\\n- Use `GH\",\n      \"files\": [\n        \".github/workflows/daily-code-quality-analysis.yml\"\n      ]\n    },\n    {\n      \"title\": \"fix: handle GitHub issue body character limit in code quality workflow\",\n      \"prNumber\": 5541,\n      \"type\": \"bugfix\",\n      \"body\": \"## Description\\n\\nThis PR fixes a critical issue that was discovered after the previous PR was merged. The daily code quality analysis workflow was failing because the generated issue body exceeded GitHub's 65,536 character limit.\\n\\n## Problem\",\n      \"files\": [\n        \".github/workflows/daily-code-quality-analysis.yml\"\n      ]\n    },\n    {\n      \"title\": \"fix: workaround Claude action limitations with issue-based approach\",\n      \"prNumber\": 5540,\n      \"type\": \"bugfix\",\n      \"body\": \"## Description\\n\\nThis PR implements a simple workaround for the Claude GitHub Action's limitation where it doesn't support `schedule` or `workflow_dispatch` events.\\n\\n## Problem\\n\\nThe Claude action fails with:\\n- `Unsupported event type: schedu\",\n      \"files\": [\n        \".github/workflows/daily-code-quality-analysis.yml\"\n      ]\n    },\n    {\n      \"title\": \"fix: parallelize code quality workflow and fix Claude action for scheduled runs\",\n      \"prNumber\": 5539,\n      \"type\": \"bugfix\",\n      \"body\": \"## Description\\n\\nThis PR fixes the failing Daily Code Quality Analysis workflow by addressing the Claude action's incompatibility with scheduled events.\\n\\n## Problem\\n\\nThe workflow was failing with error: `Unsupported event type: schedule` bec\",\n      \"files\": [\n        \".github/workflows/daily-code-quality-analysis.yml\"\n      ]\n    },\n    {\n      \"title\": \"fix: resolve daily code quality workflow failures\",\n      \"prNumber\": 5538,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n\\nThis PR fixes the failing Daily Code Quality Analysis workflow that was encountering errors during the Knip setup phase.\\n\\n## Problem\\n\\nThe workflow was failing with \\\"Process completed with exit code 2\\\" during the Knip configurati\",\n      \"files\": [\n        \".github/workflows/daily-code-quality-analysis.yml\",\n        \"knip.config.ts\"\n      ]\n    },\n    {\n      \"title\": \"Fix plugin inclusion in character configuration\",\n      \"prNumber\": 5537,\n      \"type\": \"bugfix\",\n      \"body\": \"```\\n<!-- Use this template by filling in information and copying and pasting relevant items out of the HTML comments. -->\\n\\n# Relates to\\n\\n<!-- LINK TO ISSUE OR TICKET -->\\n<!-- No specific issue provided -->\\n\\n# Risks\\n\\n<!--\\nLow, medium, large.\",\n      \"files\": [\n        \"packages/client/src/hooks/use-character-convert.test.ts\",\n        \"packages/client/src/hooks/use-character-convert.ts\"\n      ]\n    },\n    {\n      \"title\": \"feat: add V1 to V2 character conversion on import with plugin matching\",\n      \"prNumber\": 5536,\n      \"type\": \"feature\",\n      \"body\": \"# Character V1 \u2794 V2 Import Conversion\\r\\n\\r\\n## Summary\\r\\n\\r\\nImplements **automatic V1 \u2794 V2 character conversion during JSON import** for seamless backward compatibility\\r\\n\\r\\n## What\u2019s added\\r\\n\\r\\n- `useConvertCharacter` hook:\\r\\n  - Detects V1 characte\",\n      \"files\": [\n        \"packages/client/src/components/character-form.tsx\",\n        \"packages/client/src/hooks/__tests__/use-character-convert.test.ts\",\n        \"packages/client/src/hooks/use-agent-update.ts\",\n        \"packages/client/src/hooks/use-character-convert.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: awk script for accurate function detection\",\n      \"prNumber\": 5535,\n      \"type\": \"bugfix\",\n      \"body\": \"This pull request enhances the code quality and documentation analysis scripts by improving function detection logic and adding comprehensive test coverage. The changes include more robust `awk` patterns for identifying functions, better ha\",\n      \"files\": [\n        \".github/workflows/daily-code-quality-analysis.yml\",\n        \"scripts/analyze-code-quality.sh\",\n        \"test-function-detection.sh\"\n      ]\n    },\n    {\n      \"title\": \"fix: knip.json generation bug\",\n      \"prNumber\": 5534,\n      \"type\": \"bugfix\",\n      \"body\": \"This pull request enhances the Knip configuration handling in the GitHub Actions workflow for daily code quality analysis. It introduces smarter configuration detection, prioritization, safe backup and restore mechanisms, and improved clean\",\n      \"files\": [\n        \".github/workflows/daily-code-quality-analysis.yml\",\n        \"KNAP_WORKFLOW_FIX_SUMMARY.md\"\n      ]\n    },\n    {\n      \"title\": \"fix: undefined MAX_RESULTS variable bug\",\n      \"prNumber\": 5533,\n      \"type\": \"bugfix\",\n      \"body\": \"\",\n      \"files\": [\n        \"scripts/check-docs-consistency.sh\"\n      ]\n    },\n    {\n      \"title\": \"feat: add code quality analysis and documentation consistency tools\",\n      \"prNumber\": 5532,\n      \"type\": \"feature\",\n      \"body\": \"## Overview\\n\\nThis PR introduces comprehensive code quality analysis tools and documentation consistency checks to improve the maintainability and quality of the ElizaOS codebase.\\n\\n## Changes\\n\\n### Code Quality Analysis\\n- Added daily GitHub A\",\n      \"files\": [\n        \".github/workflows/daily-code-quality-analysis.yml\",\n        \"docs/code-quality-analysis.md\",\n        \"knip.config.ts\",\n        \"scripts/analyze-code-quality.sh\",\n        \"scripts/check-docs-consistency.sh\"\n      ]\n    },\n    {\n      \"title\": \"feat: remove execa for bun.Spawn and add more logging\",\n      \"prNumber\": 5531,\n      \"type\": \"feature\",\n      \"body\": \"If installs failed was silent, now will give details on why packages failing too:\\r\\n\\r\\n```\\r\\n[2025-07-11 06:54:53] DEBUG: Import failed using direct path ('@elizaos/plugin-local-ai'):\\r\\n    message: \\\"(TypeError) backend_2.listSupportedBackends \",\n      \"files\": [\n        \"bun.lock\",\n        \"packages/cli/package.json\",\n        \"packages/cli/src/utils/__tests__/bun-exec.test.ts\",\n        \"packages/cli/src/utils/auto-install-bun.ts\",\n        \"packages/cli/src/utils/build-project.ts\",\n        \"packages/cli/src/utils/bun-exec.ts\",\n        \"packages/cli/src/utils/bun-installation-helper.ts\",\n        \"packages/cli/src/utils/display-banner.ts\",\n        \"packages/cli/src/utils/package-manager.ts\",\n        \"packages/cli/src/utils/run-bun.ts\",\n        \"packages/cli/src/utils/user-environment.ts\"\n      ]\n    },\n    {\n      \"title\": \"Fix LLM ambiguity handling bugs\",\n      \"prNumber\": 5529,\n      \"type\": \"bugfix\",\n      \"body\": \"```\\n<!-- Use this template by filling in information and copying and pasting relevant items out of the HTML comments. -->\\n\\n# Relates to\\n\\n<!-- LINK TO ISSUE OR TICKET -->\\nN/A (Internal bug fix)\\n\\n# Risks\\n\\nLow. This PR fixes two bugs, making t\",\n      \"files\": [\n        \"packages/plugin-bootstrap/src/__tests__/ambiguity-handling.test.ts\",\n        \"packages/plugin-bootstrap/src/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: clarifying prompt exclusivity for IGNORE\",\n      \"prNumber\": 5528,\n      \"type\": \"bugfix\",\n      \"body\": \"Currently, the LLM sometimes outputs:\\r\\n\\r\\n```\\r\\n<response>\\r\\n    <thought>User acknowledged the code example with thanks - should close conversation politely</thought>\\r\\n    <actions>REPLY,IGNORE</actions>\\r\\n    <providers></providers>\\r\\n    <tex\",\n      \"files\": [\n        \"packages/core/src/prompts.ts\",\n        \"packages/plugin-bootstrap/src/__tests__/ambiguity-handling.test.ts\",\n        \"packages/plugin-bootstrap/src/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"chore: remove plugin-forms\",\n      \"prNumber\": 5527,\n      \"type\": \"other\",\n      \"body\": \"https://github.com/elizaos-plugins/plugin-forms\\r\\n\\r\\nMoved out to repo.\",\n      \"files\": [\n        \"bun.lock\",\n        \"packages/config/src/typescript/tsconfig.base.json\",\n        \"packages/plugin-forms/.eslintrc.json\",\n        \"packages/plugin-forms/.gitignore\",\n        \"packages/plugin-forms/.npmignore\",\n        \"packages/plugin-forms/.prettierrc.js\",\n        \"packages/plugin-forms/README.md\",\n        \"packages/plugin-forms/build.config.ts\",\n        \"packages/plugin-forms/build.ts\",\n        \"packages/plugin-forms/bunfig.toml\",\n        \"packages/plugin-forms/character-test.json\",\n        \"packages/plugin-forms/character.json\",\n        \"packages/plugin-forms/cypress.config.ts\",\n        \"packages/plugin-forms/docs/e2e-test-fix.md\",\n        \"packages/plugin-forms/docs/scenario-demo.md\",\n        \"packages/plugin-forms/eslint.config.js\",\n        \"packages/plugin-forms/index.html\",\n        \"packages/plugin-forms/package.json\",\n        \"packages/plugin-forms/postcss.config.js\",\n        \"packages/plugin-forms/prettier.config.js\",\n        \"packages/plugin-forms/src/__tests__/e2e/forms-plugin.test.ts\",\n        \"packages/plugin-forms/src/__tests__/forms-service.test.ts\",\n        \"packages/plugin-forms/src/__tests__/integration.test.ts\",\n        \"packages/plugin-forms/src/__tests__/plugin.test.ts\",\n        \"packages/plugin-forms/src/__tests__/test-utils.ts\",\n        \"packages/plugin-forms/src/actions/cancel-form.ts\",\n        \"packages/plugin-forms/src/actions/create-form.ts\",\n        \"packages/plugin-forms/src/actions/update-form.ts\",\n        \"packages/plugin-forms/src/index.ts\",\n        \"packages/plugin-forms/src/providers/forms-provider.ts\",\n        \"packages/plugin-forms/src/schema.ts\",\n        \"packages/plugin-forms/src/services/forms-service.ts\",\n        \"packages/plugin-forms/src/tests.ts\",\n        \"packages/plugin-forms/src/types.ts\",\n        \"packages/plugin-forms/tailwind.config.js\",\n        \"packages/plugin-forms/tsconfig.build.json\",\n        \"packages/plugin-forms/tsconfig.json\",\n        \"packages/plugin-forms/vite.config.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: Refine LLM provider selection prompt to reduce unnecessary provider use and improve reply speed\",\n      \"prNumber\": 5526,\n      \"type\": \"bugfix\",\n      \"body\": \"Currently, the LLM often selects the KNOWLEDGE provider by default, even though we do not include the knowledge plugin. This is because our prompt instructed the LLM to select KNOWLEDGE under broad conditions. We should instead handle KNOWL\",\n      \"files\": [\n        \"packages/core/src/__tests__/prompts.test.ts\",\n        \"packages/core/src/prompts.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: Improve prompt to enforce correct fenced code block formatting in LLM replies\",\n      \"prNumber\": 5525,\n      \"type\": \"bugfix\",\n      \"body\": \"What this PR does:\\r\\n\\r\\nUpdates prompt to explicitly instruct the LLM to:\\r\\n\\r\\nAlways use fenced ``` code blocks (with language if possible) for all and only actual code in replies.\\r\\n\\r\\nAvoid using fenced blocks for non-code or explanatory text.\",\n      \"files\": [\n        \"packages/core/src/__tests__/prompts.test.ts\",\n        \"packages/core/src/prompts.ts\",\n        \"packages/plugin-bootstrap/src/actions/reply.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: cleanup and fix configs package\",\n      \"prNumber\": 5524,\n      \"type\": \"bugfix\",\n      \"body\": \"## \ud83e\uddf9 Config Package Cleanup and Documentation Update\\r\\n\\r\\nThis PR addresses several issues found in the `@elizaos/config` package and brings it up to standard with proper documentation.\\r\\n\\r\\n### Changes Made:\\r\\n\\r\\n#### 1. **Fixed Missing Build E\",\n      \"files\": [\n        \"bun.lock\",\n        \"packages/config/README.md\",\n        \"packages/config/package.json\",\n        \"packages/config/src/index.d.ts\",\n        \"packages/config/src/index.ts\",\n        \"packages/config/src/typescript/tsconfig.base.json\",\n        \"packages/config/src/typescript/tsconfig.test.json\",\n        \"packages/config/tsup.config.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: duplicate # Available Actions sections by unifying action formatting using formatActions\",\n      \"prNumber\": 5523,\n      \"type\": \"bugfix\",\n      \"body\": \"Issue\\r\\nIn [commit 4d2ace4248ff28f93661c49defc808bae0e6506f](https://github.com/elizaOS/eliza/commit/4d2ace4248ff28f93661c49defc808bae0e6506f#diff-17b657571626e1483ed1f8cc8e5992c919ba0aa9a3ecb8426aadfb3b97cd86cb), there was an attempt to imp\",\n      \"files\": [\n        \"packages/core/src/__tests__/actions.test.ts\",\n        \"packages/core/src/actions.ts\",\n        \"packages/core/src/specs/v2/__tests__/actions.test.ts\",\n        \"packages/plugin-bootstrap/src/providers/actions.ts\"\n      ]\n    },\n    {\n      \"title\": \"Fix advisory lock acquisition bug\",\n      \"prNumber\": 5572,\n      \"type\": \"bugfix\",\n      \"body\": \"# Relates to\\n\\n<!-- No explicit issue/ticket provided -->\\n\\n# Risks\\n\\nLow. This is a targeted bug fix correcting data access, unlikely to introduce regressions.\\n\\n# Background\\n\\n## What does this PR do?\\n\\nThis PR fixes a bug in the `acquireAdviso\",\n      \"files\": [\n        \"packages/plugin-sql/src/migration-service.ts\"\n      ]\n    },\n    {\n      \"title\": \"feat: enhance Claude workflows with full command access and PR commit triggers\",\n      \"prNumber\": 5570,\n      \"type\": \"feature\",\n      \"body\": \"## Summary\\n- Enable Claude code review workflow to run on every commit to PRs (not just on open/ready)\\n- Grant full bash and GitHub CLI command access to both Claude workflows\\n- Closes #5564\\n\\n## Changes\\n1. **Claude Code Review Workflow (`cl\",\n      \"files\": [\n        \".github/workflows/claude-code-review.yml\",\n        \".github/workflows/claude.yml\"\n      ]\n    },\n    {\n      \"title\": \"fix: suppress update notification during update command execution\",\n      \"prNumber\": 5567,\n      \"type\": \"bugfix\",\n      \"body\": \"The update command was showing 'update available' messages during execution due to displayBanner() being called without skipUpdateCheck parameter. This fix passes true to skip the update check during update command execution.\\r\\n\\r\\nFixes #5447\",\n      \"files\": [\n        \"packages/cli/src/commands/update/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"feat: implement service types and standardized interfaces with getServicesByType() method\",\n      \"prNumber\": 5565,\n      \"type\": \"feature\",\n      \"body\": \"This PR implements the service types and test services system requested in issue #4914.\\r\\n\\r\\n## Key Features\\r\\n\\r\\n- **getServicesByType() method**: Returns all services of a specific type\\r\\n- **Multiple services per type**: Support for multiple \",\n      \"files\": [\n        \"bun.lock\",\n        \"packages/core/src/__tests__/services-by-type.test.ts\",\n        \"packages/core/src/runtime.ts\",\n        \"packages/core/src/types/browser.ts\",\n        \"packages/core/src/types/email.ts\",\n        \"packages/core/src/types/index.ts\",\n        \"packages/core/src/types/message.ts\",\n        \"packages/core/src/types/pdf.ts\",\n        \"packages/core/src/types/post.ts\",\n        \"packages/core/src/types/runtime.ts\",\n        \"packages/core/src/types/service.ts\",\n        \"packages/core/src/types/transcription.ts\",\n        \"packages/core/src/types/video.ts\",\n        \"packages/core/src/types/web-search.ts\",\n        \"packages/plugin-dummy-services/src/browser/service.ts\",\n        \"packages/plugin-dummy-services/src/email/service.ts\",\n        \"packages/plugin-dummy-services/src/index.ts\",\n        \"packages/plugin-dummy-services/src/pdf/service.ts\",\n        \"packages/plugin-dummy-services/src/transcription/service.ts\",\n        \"packages/plugin-dummy-services/src/video/service.ts\",\n        \"packages/plugin-dummy-services/src/web-search/service.ts\",\n        \".github/workflows/claude-code-review.yml\",\n        \".github/workflows/claude.yml\",\n        \"CLAUDE.md\",\n        \"packages/cli/src/commands/start/index.ts\",\n        \"packages/cli/src/index.ts\",\n        \"packages/cli/src/utils/user-environment.ts\",\n        \"packages/cli/tests/commands/agent.test.ts\",\n        \"packages/cli/tests/commands/create.test.ts\",\n        \"packages/cli/tests/commands/dev.test.ts\",\n        \"packages/cli/tests/commands/env.test.ts\",\n        \"packages/cli/tests/commands/monorepo.test.ts\",\n        \"packages/cli/tests/commands/plugins.test.ts\",\n        \"packages/cli/tests/commands/publish.test.ts\",\n        \"packages/cli/tests/commands/start.test.ts\",\n        \"packages/cli/tests/commands/tee.test.ts\",\n        \"packages/cli/tests/commands/test-utils.ts\",\n        \"packages/cli/tests/commands/test.test.ts\",\n        \"packages/cli/tests/commands/update.test.ts\",\n        \"packages/cli/tests/integration/plugin-test-isolation.test.ts\",\n        \"packages/cli/tests/integration/version-display.test.ts\",\n        \"packages/cli/tests/unit/index.test.ts\",\n        \"packages/cli/tests/utils/bun-test-helpers.ts\",\n        \"packages/client/src/hooks/use-character-convert.ts\",\n        \"packages/plugin-bootstrap/src/providers/capabilities.ts\",\n        \"packages/plugin-dummy-services/src/tokenData/service.ts\",\n        \"packages/plugin-dummy-services/src/wallet/service.ts\",\n        \"packages/plugin-starter/scripts/install-test-deps.js\",\n        \"packages/project-starter/scripts/install-test-deps.js\",\n        \"packages/server/src/index.ts\",\n        \"packages/cli/tests/test-timeouts.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: graceful shutdown for dev server on Cmd+C (SIGINT/SIGTERM)\",\n      \"prNumber\": 5562,\n      \"type\": \"bugfix\",\n      \"body\": \"Fixes issue where Cmd+C on 'elizaos dev' doesn't kill server process\\r\\n\\r\\n## Changes\\r\\n- Added proper signal handling to stop dev server before process exit\\r\\n- Imported stopServer from server manager for cleanup\\r\\n- Replaced immediate process.e\",\n      \"files\": [\n        \"packages/cli/src/index.ts\",\n        \"packages/cli/tests/unit/index.test.ts\",\n        \"packages/cli/src/commands/dev/utils/server-manager.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: update CLI test expectations for version 1.2.1\",\n      \"prNumber\": 5561,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n- Update version check in update.test.ts from 1.2.0 to 1.2.1\\n- Handle monorepo detection in update command tests  \\n- Tests now properly handle output when run from monorepo context\\n\\n## Test plan\\n- [x] Run tests locally with `bun \",\n      \"files\": [\n        \"CLAUDE.md\",\n        \"bun.lock\",\n        \"packages/app/package.json\",\n        \"packages/app/src-tauri/Cargo.lock\",\n        \"packages/app/src-tauri/Cargo.toml\",\n        \"packages/app/src-tauri/src/lib.rs\",\n        \"packages/app/src-tauri/tauri.conf.json\",\n        \"packages/cli/src/commands/create/actions/creators.ts\",\n        \"packages/cli/src/utils/get-config.ts\",\n        \"packages/cli/tests/commands/plugins.test.ts\",\n        \"packages/cli/tests/commands/update.test.ts\",\n        \"packages/cli/tests/unit/characters/character-plugin-ordering.test.ts\",\n        \"packages/cli/tests/unit/utils/build-project.test.ts\",\n        \"packages/core/src/__tests__/runtime.test.ts\",\n        \"packages/core/src/specs/v2/__tests__/runtime.test.ts\",\n        \"packages/docs/blog/plugin-ordering-guide.mdx\",\n        \"packages/project-starter/src/__tests__/character-plugin-ordering.test.ts\",\n        \"packages/project-starter/src/character.ts\",\n        \"packages/project-tee-starter/src/character.ts\"\n      ]\n    },\n    {\n      \"title\": \"\ud83d\udcdd CodeRabbit Chat: Add verification script and refactor plugin ordering tests for clarity and robustness\",\n      \"prNumber\": 5557,\n      \"type\": \"refactor\",\n      \"body\": \"Code changes was requested by @wtfsayo.\\n\\n* https://github.com/elizaOS/eliza/pull/5556#issuecomment-3066745260\\n\\nThe following files were modified:\\n\\n* `packages/cli/tests/unit/characters/character-plugin-ordering.test.ts`\",\n      \"files\": [\n        \"packages/cli/tests/unit/characters/character-plugin-ordering.test.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: core tests + replace execa + use bun runtime + replace local-ai + more\",\n      \"prNumber\": 5556,\n      \"type\": \"bugfix\",\n      \"body\": \"This pull request introduces significant updates to streamline workflows, improve configuration management, and enhance local AI support by emphasizing the use of Ollama. Key changes include simplifying review prompts, enforcing the use of \",\n      \"files\": [\n        \".github/workflows/claude-code-review.yml\",\n        \".github/workflows/claude.yml\",\n        \"CLAUDE.md\",\n        \"bun.lock\",\n        \"packages/cli/package.json\",\n        \"packages/cli/src/characters/eliza.ts\",\n        \"packages/cli/src/commands/create/actions/creators.ts\",\n        \"packages/cli/src/commands/create/actions/setup.ts\",\n        \"packages/cli/src/commands/create/utils/selection.ts\",\n        \"packages/cli/src/utils/get-config.ts\",\n        \"packages/cli/src/utils/registry/index.ts\",\n        \"packages/cli/src/utils/user-environment.ts\",\n        \"packages/cli/tests/unit/characters/README.md\",\n        \"packages/cli/tests/unit/characters/character-plugin-ordering.test.ts\",\n        \"packages/client/src/components/character-form.tsx\",\n        \"packages/client/src/components/plugins-panel.tsx\",\n        \"packages/client/src/config/voice-models.ts\",\n        \"packages/client/src/hooks/use-character-convert.ts\",\n        \"packages/core/src/__tests__/roles.test.ts\",\n        \"packages/core/src/__tests__/runtime.test.ts\",\n        \"packages/core/src/__tests__/settings.test.ts\",\n        \"packages/core/src/specs/v2/__tests__/actions.test.ts\",\n        \"packages/core/src/specs/v2/__tests__/runtime.test.ts\",\n        \"packages/core/tsconfig.json\",\n        \"packages/docs/blog/plugin-ordering-guide.mdx\",\n        \"packages/docs/docs/core/knowledge.md\",\n        \"packages/docs/static/llms-full.txt\",\n        \"packages/project-starter/src/__tests__/character-plugin-ordering.test.ts\",\n        \"packages/project-starter/src/character.ts\",\n        \"packages/project-tee-starter/src/character.ts\",\n        \"packages/test-utils/package.json\"\n      ]\n    },\n    {\n      \"title\": \"chore: provider mapping\",\n      \"prNumber\": 5582,\n      \"type\": \"other\",\n      \"body\": \"This PR maps the llama_local provider in v1 to @elizaos/plugin-ollama.\",\n      \"files\": [\n        \"packages/client/src/hooks/use-character-convert.ts\"\n      ]\n    },\n    {\n      \"title\": \"Fix auto-build test flag usage\",\n      \"prNumber\": 5581,\n      \"type\": \"bugfix\",\n      \"body\": \"```\\n<!-- Use this template by filling in information and copying and pasting relevant items out of the HTML comments. -->\\n\\n# Relates to\\n\\n<!-- LINK TO ISSUE OR TICKET -->\\nN/A\\n\\n# Risks\\n\\n<!--\\nLow, medium, large. List what kind of risks and wha\",\n      \"files\": [\n        \"packages/cli/tests/commands/start.test.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: address type safety and testing issues from PR #5505\",\n      \"prNumber\": 5580,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n\\nThis PR addresses all critical issues identified in the review of PR #5505 \\\"Add new types\\\".\\n\\n## Changes Made\\n\\n### \ud83e\uddea Test Coverage\\n- Added comprehensive tests for `asUUID()` function (19 test cases)\\n- Added tests for all plannin\",\n      \"files\": [\n        \"packages/core/src/__tests__/mockCharacter.ts\",\n        \"packages/core/src/specs/v2/__tests__/mockCharacter.ts\",\n        \"packages/core/src/test_resources/constants.ts\",\n        \"packages/core/src/types/__tests__/planning.test.ts\",\n        \"packages/core/src/types/__tests__/scenario.test.ts\",\n        \"packages/core/src/types/__tests__/uuid.test.ts\",\n        \"packages/core/src/types/errors.ts\",\n        \"packages/core/src/types/index.ts\",\n        \"packages/core/src/types/planning.ts\",\n        \"packages/core/src/types/scenario-validation.ts\",\n        \"packages/core/src/types/scenario.ts\",\n        \"packages/core/src/types/uuid.ts\"\n      ]\n    },\n    {\n      \"title\": \"Release v1.2.9\",\n      \"prNumber\": 5602,\n      \"type\": \"other\",\n      \"body\": \"## Summary\\n- Merging develop branch into main for v1.2.8 release\\n- Includes all recent fixes and improvements\\n\\n## Changes\\n- Fixed incorrect publish scripts in test-utils and plugin-starter packages that were causing CI failures\\n- All other \",\n      \"files\": [\n        \"packages/plugin-starter/package.json\",\n        \"packages/test-utils/package.json\"\n      ]\n    },\n    {\n      \"title\": \"Merge develop into main\",\n      \"prNumber\": 5601,\n      \"type\": \"other\",\n      \"body\": \"Merging latest changes from develop branch into main branch\",\n      \"files\": [\n        \"lerna.json\",\n        \"packages/api-client/package.json\",\n        \"packages/app/package.json\",\n        \"packages/autodoc/package.json\",\n        \"packages/cli/package.json\",\n        \"packages/client/package.json\",\n        \"packages/config/package.json\",\n        \"packages/core/package.json\",\n        \"packages/create-eliza/package.json\",\n        \"packages/docs/package.json\",\n        \"packages/plugin-bootstrap/package.json\",\n        \"packages/plugin-dummy-services/package.json\",\n        \"packages/plugin-quick-starter/package.json\",\n        \"packages/plugin-sql/package.json\",\n        \"packages/plugin-starter/package.json\",\n        \"packages/project-starter/package.json\",\n        \"packages/project-tee-starter/package.json\",\n        \"packages/server/package.json\",\n        \"packages/test-utils/package.json\"\n      ]\n    },\n    {\n      \"title\": \"fix: improve bunx detection and remove npm references in CLI\",\n      \"prNumber\": 5599,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n- Enhanced bunx detection logic to prevent false positives\\n- Removed all npm references in favor of bun-only approach\\n- Added comprehensive test coverage for bunx/npx scenarios\\n\\n## Changes\\n- Improved bunx detection by checking sc\",\n      \"files\": [\n        \".github/workflows/cli-prod-validation.yml\",\n        \"bun.lock\",\n        \"packages/cli/src/commands/update/index.ts\",\n        \"packages/cli/src/utils/user-environment.ts\",\n        \"packages/cli/tests/commands/create.test.ts\",\n        \"packages/cli/tests/commands/test-utils.ts\",\n        \"packages/cli/tests/commands/update.test.ts\",\n        \"packages/cli/tests/utils/bun-test-helpers.ts\",\n        \"packages/docs/netlify/functions/predict.js\",\n        \"packages/docs/static/llms-community.txt\",\n        \"packages/docs/static/llms-full.txt\"\n      ]\n    },\n    {\n      \"title\": \"fix: correct installModelPlugin calls for local model resolution\",\n      \"prNumber\": 5598,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n- Fixed incorrect plugin installation for local models\\n- Ensures proper resolution of 'local' to 'ollama' plugin\\n\\n## Problem\\nThe `installModelPlugin` function was being called with the hardcoded string `'local'` instead of passin\",\n      \"files\": [\n        \"packages/cli/src/commands/create/actions/setup.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: update GitHub workflow and remove plaintext passwords\",\n      \"prNumber\": 5597,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n- Updated GitHub Actions workflow to use latest versions\\n- Removed plaintext passwords from test constants for improved security\\n- Fixed important issues identified in code review\\n\\n## Changes Made\\n\\n### 1. GitHub Workflow Updates \",\n      \"files\": [\n        \".github/workflows/cli-tests.yml\",\n        \"packages/core/src/test_resources/constants.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: resolve CodeFactor TypeScript any type violations\",\n      \"prNumber\": 5596,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n- Fixed all TypeScript `any` type violations reported by CodeFactor in PR #5595\\n- Replaced `any` types with proper type definitions to improve type safety\\n- All changes are in test files and maintain existing functionality\\n\\n## Ch\",\n      \"files\": [\n        \"packages/cli/src/commands/create/actions/creators.ts\",\n        \"packages/cli/tests/commands/create.test.ts\",\n        \"packages/cli/tests/commands/test-utils.ts\",\n        \"packages/cli/tests/utils/bun-test-helpers.ts\"\n      ]\n    },\n    {\n      \"title\": \"chore: 1.2.6\",\n      \"prNumber\": 5595,\n      \"type\": \"other\",\n      \"body\": \"chore: 1.2.6\\r\\n\",\n      \"files\": [\n        \".github/workflows/claude-code-review.yml\",\n        \".github/workflows/claude.yml\",\n        \".github/workflows/cli-prod-validation.yml\",\n        \".github/workflows/cli-tests.yml\",\n        \"CLAUDE.md\",\n        \"bun.lock\",\n        \"package.json\",\n        \"packages/api-client/package.json\",\n        \"packages/app/package.json\",\n        \"packages/autodoc/package.json\",\n        \"packages/cli/package.json\",\n        \"packages/cli/scripts/copy-templates.js\",\n        \"packages/cli/src/characters/eliza.ts\",\n        \"packages/cli/src/commands/create/actions/creators.ts\",\n        \"packages/cli/src/commands/create/actions/setup.ts\",\n        \"packages/cli/src/commands/create/index.ts\",\n        \"packages/cli/src/commands/create/utils/selection.ts\",\n        \"packages/cli/src/commands/dev/actions/dev-server.ts\",\n        \"packages/cli/src/commands/dev/index.ts\",\n        \"packages/cli/src/commands/dev/utils/server-manager.ts\",\n        \"packages/cli/src/commands/start/index.ts\",\n        \"packages/cli/src/commands/update/index.ts\",\n        \"packages/cli/src/index.ts\",\n        \"packages/cli/src/scripts/copy-templates.ts\",\n        \"packages/cli/src/utils/bun-exec.ts\",\n        \"packages/cli/src/utils/copy-template.ts\",\n        \"packages/cli/src/utils/user-environment.ts\",\n        \"packages/cli/tests/commands/README.md\",\n        \"packages/cli/tests/commands/agent.test.ts\",\n        \"packages/cli/tests/commands/create.test.ts\",\n        \"packages/cli/tests/commands/dev.test.ts\",\n        \"packages/cli/tests/commands/env.test.ts\",\n        \"packages/cli/tests/commands/monorepo.test.ts\",\n        \"packages/cli/tests/commands/plugins.test.ts\",\n        \"packages/cli/tests/commands/publish.test.ts\",\n        \"packages/cli/tests/commands/start.test.ts\",\n        \"packages/cli/tests/commands/tee.test.ts\",\n        \"packages/cli/tests/commands/test-utils.ts\",\n        \"packages/cli/tests/commands/test.test.ts\",\n        \"packages/cli/tests/commands/update.test.ts\",\n        \"packages/cli/tests/integration/plugin-test-isolation.test.ts\",\n        \"packages/cli/tests/integration/version-display.test.ts\",\n        \"packages/cli/tests/test-timeouts.ts\",\n        \"packages/cli/tests/unit/index.test.ts\",\n        \"packages/cli/tests/unit/utils/selection.test.ts\",\n        \"packages/cli/tests/utils/bun-test-helpers.ts\",\n        \"packages/client/package.json\",\n        \"packages/client/src/hooks/use-character-convert.ts\",\n        \"packages/config/package.json\",\n        \"packages/core/package.json\"\n      ]\n    },\n    {\n      \"title\": \"fix: make Ollama plugin conditional based on OLLAMA_API_ENDPOINT\",\n      \"prNumber\": 5594,\n      \"type\": \"bugfix\",\n      \"body\": \"# PR: Make Ollama Plugin Conditional and Improve Model Selection Logic\\r\\n\\r\\n## Summary\\r\\n\\r\\nThis PR refactors the Ollama plugin integration to make it truly conditional based on configuration, rather than being always included as a universal fa\",\n      \"files\": [\n        \"bun.lock\",\n        \"packages/cli/src/commands/create/actions/creators.ts\",\n        \"packages/cli/src/commands/create/actions/setup.ts\",\n        \"packages/cli/src/commands/create/index.ts\",\n        \"packages/cli/src/commands/create/utils/selection.ts\",\n        \"packages/cli/tests/unit/utils/selection.test.ts\",\n        \"packages/project-starter/src/character.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: remove duplicate ActionResult interface definition\",\n      \"prNumber\": 5593,\n      \"type\": \"bugfix\",\n      \"body\": \"## Description\\n\\nThis PR fixes a TypeScript build error in the plugin-starter package by removing a duplicate interface definition.\\n\\n## Problem\\n\\nThe `ActionResult` interface was defined twice in `packages/core/src/types/components.ts`:\\n- Fir\",\n      \"files\": [\n        \"packages/core/src/types/components.ts\",\n        \"packages/plugin-starter/src/plugin.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: handle port conflicts in dev command\",\n      \"prNumber\": 5592,\n      \"type\": \"bugfix\",\n      \"body\": \"## Description\\n\\nThis PR fixes an issue where the `elizaos dev` command would fail when port 3000 was already in use. The dev command now behaves consistently with the start command by automatically finding the next available port.\\n\\n## Chang\",\n      \"files\": [\n        \"packages/cli/src/commands/dev/actions/dev-server.ts\",\n        \"packages/cli/src/commands/dev/index.ts\",\n        \"packages/cli/tests/commands/dev.test.ts\"\n      ]\n    },\n    {\n      \"title\": \"chore: 1.2.6\",\n      \"prNumber\": 5591,\n      \"type\": \"other\",\n      \"body\": \"Version bump to 1.2.6\",\n      \"files\": [\n        \"package.json\",\n        \"packages/api-client/package.json\",\n        \"packages/app/package.json\",\n        \"packages/autodoc/package.json\",\n        \"packages/cli/package.json\",\n        \"packages/client/package.json\",\n        \"packages/config/package.json\",\n        \"packages/core/package.json\",\n        \"packages/create-eliza/package.json\",\n        \"packages/docs/package.json\",\n        \"packages/plugin-bootstrap/package.json\",\n        \"packages/plugin-dummy-services/package.json\",\n        \"packages/plugin-sql/package.json\",\n        \"packages/plugin-starter/package.json\",\n        \"packages/project-starter/package.json\",\n        \"packages/project-tee-starter/package.json\",\n        \"packages/server/examples/package.json\",\n        \"packages/server/package.json\",\n        \"packages/test-utils/package.json\"\n      ]\n    },\n    {\n      \"title\": \"feat(cli): add plugin-quick-starter template for backend-only plugins\",\n      \"prNumber\": 5589,\n      \"type\": \"feature\",\n      \"body\": \"## \ud83c\udfaf Overview\\r\\n\\r\\nThis PR introduces a new `plugin-quick-starter` template alongside the existing `plugin-starter` template to provide developers with a streamlined option for creating backend-only plugins without frontend overhead.\\r\\n\\r\\n## \\ud83d\",\n      \"files\": [\n        \"bun.lock\",\n        \"packages/cli/scripts/copy-templates.js\",\n        \"packages/cli/src/commands/create/actions/creators.ts\",\n        \"packages/cli/src/commands/create/index.ts\",\n        \"packages/cli/src/scripts/copy-templates.ts\",\n        \"packages/cli/src/utils/copy-template.ts\",\n        \"packages/plugin-quick-starter/.gitignore\",\n        \"packages/plugin-quick-starter/.npmignore\",\n        \"packages/plugin-quick-starter/README.md\",\n        \"packages/plugin-quick-starter/bunfig.toml\",\n        \"packages/plugin-quick-starter/package.json\",\n        \"packages/plugin-quick-starter/scripts/install-test-deps.js\",\n        \"packages/plugin-quick-starter/src/__tests__/plugin.test.ts\",\n        \"packages/plugin-quick-starter/src/__tests__/test-utils.ts\",\n        \"packages/plugin-quick-starter/src/index.ts\",\n        \"packages/plugin-quick-starter/src/plugin.ts\",\n        \"packages/plugin-quick-starter/tsconfig.build.json\",\n        \"packages/plugin-quick-starter/tsconfig.json\",\n        \"packages/plugin-quick-starter/tsup.config.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: only fallback ollama if nothing else exists\",\n      \"prNumber\": 5587,\n      \"type\": \"bugfix\",\n      \"body\": \"This pull request updates the `getElizaCharacter` function in `eliza.ts` to improve plugin configuration logic. The change ensures that the `@elizaos/plugin-ollama` plugin is only included as a fallback if no other large language model (LLM\",\n      \"files\": [\n        \"packages/cli/src/characters/eliza.ts\"\n      ]\n    },\n    {\n      \"title\": \"feat: improve cli ci tests + migrate to bun native process spawn etc\",\n      \"prNumber\": 5586,\n      \"type\": \"feature\",\n      \"body\": \"## Description\\n\\nThis PR adds the Ollama plugin as a dependency to the ElizaOS CLI package and optimizes the CI/CD workflow for better performance.\\n\\n## Changes\\n\\n### \ud83c\udfaf New Feature: Ollama Plugin Integration\\n- Added `@elizaos/plugin-ollama@1.\",\n      \"files\": [\n        \".github/workflows/cli-tests.yml\",\n        \"bun.lock\",\n        \"packages/cli/src/utils/bun-exec.ts\",\n        \"packages/cli/tests/commands/README.md\",\n        \"packages/cli/tests/commands/agent.test.ts\",\n        \"packages/cli/tests/commands/create.test.ts\",\n        \"packages/cli/tests/commands/dev.test.ts\",\n        \"packages/cli/tests/commands/env.test.ts\",\n        \"packages/cli/tests/commands/monorepo.test.ts\",\n        \"packages/cli/tests/commands/plugins.test.ts\",\n        \"packages/cli/tests/commands/publish.test.ts\",\n        \"packages/cli/tests/commands/test-utils.ts\",\n        \"packages/cli/tests/commands/test.test.ts\",\n        \"packages/cli/tests/commands/update.test.ts\",\n        \"packages/cli/tests/utils/bun-test-helpers.ts\"\n      ]\n    },\n    {\n      \"title\": \" Fix: Plugin Actions Not Loading in NPM Deployed Version\",\n      \"prNumber\": 5624,\n      \"type\": \"bugfix\",\n      \"body\": \"# Fix: Plugin Actions Not Loading in NPM Deployed Version\\n\\n## \ud83d\udc1b Problem\\n\\nPlugin actions were not being received by the runtime when using the NPM deployed version of the ElizaOS CLI. This issue only occurred with the published NPM package \",\n      \"files\": [\n        \"bun.lock\",\n        \"lerna.json\",\n        \"package.json\",\n        \"packages/cli/package.json\",\n        \"packages/cli/src/commands/start/actions/agent-start.ts\",\n        \"packages/cli/src/commands/start/utils/plugin-utils.ts\",\n        \"packages/plugin-bootstrap/package.json\",\n        \"packages/plugin-bootstrap/src/index.ts\",\n        \"packages/plugin-bootstrap/tsup.config.ts\",\n        \"packages/plugin-sql/package.json\",\n        \"packages/server/package.json\",\n        \"scripts/install-cli-globally.sh\",\n        \"scripts/prepare-packages-for-testing.sh\"\n      ]\n    },\n    {\n      \"title\": \"refactor(plugin-bootstrap): migrate JSON prompts to XML format\",\n      \"prNumber\": 5623,\n      \"type\": \"refactor\",\n      \"body\": \"# Refactor: Complete Migration from JSON to XML Prompts\\r\\n\\r\\n## Summary\\r\\n\\r\\nThis PR completes a comprehensive refactoring of all prompts across the ElizaOS codebase to use XML format instead of JSON, significantly improving LLM response reliab\",\n      \"files\": [\n        \"packages/core/src/__tests__/entities.test.ts\",\n        \"packages/core/src/entities.ts\",\n        \"packages/plugin-bootstrap/src/__tests__/actions.test.ts\",\n        \"packages/plugin-bootstrap/src/__tests__/evaluators.test.ts\",\n        \"packages/plugin-bootstrap/src/actions/choice.ts\",\n        \"packages/plugin-bootstrap/src/actions/imageGeneration.ts\",\n        \"packages/plugin-bootstrap/src/actions/reply.ts\",\n        \"packages/plugin-bootstrap/src/actions/roles.ts\",\n        \"packages/plugin-bootstrap/src/actions/sendMessage.ts\",\n        \"packages/plugin-bootstrap/src/actions/settings.ts\",\n        \"packages/plugin-bootstrap/src/actions/updateEntity.ts\",\n        \"packages/plugin-bootstrap/src/evaluators/reflection.ts\"\n      ]\n    },\n    {\n      \"title\": \"chore: remove obsolete documentation files\",\n      \"prNumber\": 5621,\n      \"type\": \"docs\",\n      \"body\": \"## Description\\n\\nThis PR removes two obsolete documentation files that are no longer needed:\\n\\n- **KNAP_WORKFLOW_FIX_SUMMARY.md**: This was a summary of the Knip workflow fix that has already been implemented. The fix is complete and this doc\",\n      \"files\": [\n        \"KNAP_WORKFLOW_FIX_SUMMARY.md\",\n        \"docs/code-quality-analysis.md\"\n      ]\n    },\n    {\n      \"title\": \"fix: (cli) prevent .elizadb inheritance in nested project creation\",\n      \"prNumber\": 5618,\n      \"type\": \"bugfix\",\n      \"body\": \"## PR Description\\r\\n\\r\\n### Summary\\r\\nFixes a bug where creating a new ElizaOS project from within an existing project directory causes the child project to incorrectly inherit the parent's `PGLITE_DATA_DIR` environment variable, resulting in b\",\n      \"files\": [\n        \"packages/cli/src/commands/create/actions/creators.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: address EventTarget migration PR review issues\",\n      \"prNumber\": 5614,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\nThis PR addresses the critical and important issues identified in the EventTarget migration PR review.\\n\\n## Changes Made\\n\\n### Critical Issues Fixed\\n- \u2705 **Type safety in SimpleMigrationAgent**: Handler parameter already correctly t\",\n      \"files\": [\n        \"packages/cli/src/utils/upgrade/simple-migration-agent.ts\",\n        \"packages/server/src/bus.ts\"\n      ]\n    },\n    {\n      \"title\": \"test: add EventEmitter compatibility tests for EventTarget implementations\",\n      \"prNumber\": 5613,\n      \"type\": \"tests\",\n      \"body\": \"## Summary\\n- Adds comprehensive unit tests verifying EventEmitter compatibility for EventTarget-based implementations\\n- Tests both `bus.ts` in server package and `SimpleMigrationAgent` in CLI package\\n- Ensures backward compatibility while f\",\n      \"files\": [\n        \"packages/cli/tests/unit/utils/simple-migration-agent-eventemitter-compatibility.test.ts\",\n        \"packages/server/src/__tests__/EventEmitter-Compatibility-README.md\",\n        \"packages/server/src/__tests__/bus-eventemitter-compatibility.test.ts\",\n        \"packages/server/src/bus.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: add method chaining support to EventTarget-based on() methods\",\n      \"prNumber\": 5612,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n- Fixes broken method chaining in EventTarget migration\\n- Both SimpleMigrationAgent and InternalMessageBus now return 'this' from on() method\\n- Maintains backward compatibility with EventEmitter-style chaining pattern\\n\\n## Changes\",\n      \"files\": [\n        \"packages/cli/src/utils/upgrade/simple-migration-agent.ts\",\n        \"packages/server/src/bus.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: replace 'any' types with 'unknown' and explicit function types\",\n      \"prNumber\": 5611,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n- Replace all `any` types with `unknown` for better type safety\\n- Replace generic `Function` type with explicit function signatures\\n- Fixes CodeFactor maintainability issues reported in PR #5610\\n\\n## Changes\\n1. **packages/cli/src/\",\n      \"files\": [\n        \"packages/cli/src/utils/upgrade/simple-migration-agent.ts\",\n        \"packages/server/src/bus.ts\"\n      ]\n    },\n    {\n      \"title\": \"feat: migrate from EventEmitter to Bun native EventTarget API\",\n      \"prNumber\": 5609,\n      \"type\": \"feature\",\n      \"body\": \"## Summary\\n- Replaced Node.js EventEmitter with Bun's native EventTarget implementation\\n- Updated InternalMessageBus and SimpleMigrationAgent classes\\n- Added documentation to prevent future EventEmitter usage\\n\\n## Changes\\n1. **InternalMessag\",\n      \"files\": [\n        \"CLAUDE.md\",\n        \"bun.lock\",\n        \"package.json\",\n        \"packages/cli/src/utils/upgrade/simple-migration-agent.ts\",\n        \"packages/server/src/bus.ts\"\n      ]\n    },\n    {\n      \"title\": \"chore: 1.2.10\",\n      \"prNumber\": 5608,\n      \"type\": \"other\",\n      \"body\": \"\",\n      \"files\": [\n        \"bun.lock\",\n        \"lerna.json\",\n        \"packages/cli/src/utils/registry/index.ts\",\n        \"packages/plugin-bootstrap/src/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: remove node-fetch dependency for Bun compatibility\",\n      \"prNumber\": 5607,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n- Remove node-fetch import from bootstrap plugin to use Bun's native fetch\\n- Fix compatibility issue where messages weren't sent when using npm bootstrap in Bun environments\\n- Update deprecated node-fetch buffer() method to nativ\",\n      \"files\": [\n        \"packages/cli/src/utils/registry/index.ts\",\n        \"packages/plugin-bootstrap/src/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix typo in plugin.ts\",\n      \"prNumber\": 5632,\n      \"type\": \"bugfix\",\n      \"body\": \"Hi Devs, fixed typo in packages/plugin-quick-starter/src/plugin.ts\\r\\ndependecies - dependencies \",\n      \"files\": [\n        \"packages/plugin-quick-starter/src/plugin.ts\"\n      ]\n    },\n    {\n      \"title\": \"chore: v1.2.12\",\n      \"prNumber\": 5630,\n      \"type\": \"other\",\n      \"body\": \"\",\n      \"files\": [\n        \"CLAUDE.md\",\n        \"KNAP_WORKFLOW_FIX_SUMMARY.md\",\n        \"bun.lock\",\n        \"docs/code-quality-analysis.md\",\n        \"lerna.json\",\n        \"package.json\",\n        \"packages/api-client/package.json\",\n        \"packages/app/package.json\",\n        \"packages/autodoc/package.json\",\n        \"packages/cli/package.json\",\n        \"packages/cli/src/commands/create/actions/creators.ts\",\n        \"packages/cli/src/commands/dev/types.ts\",\n        \"packages/cli/src/commands/dev/utils/server-manager.ts\",\n        \"packages/cli/src/commands/start/actions/server-start.ts\",\n        \"packages/cli/src/commands/start/index.ts\",\n        \"packages/cli/src/commands/start/utils/__tests__/loader.test.ts\",\n        \"packages/cli/src/commands/start/utils/loader.ts\",\n        \"packages/cli/src/commands/test/actions/e2e-tests.ts\",\n        \"packages/cli/src/index.ts\",\n        \"packages/cli/src/utils/index.ts\",\n        \"packages/cli/src/utils/local-cli-delegation.ts\",\n        \"packages/cli/src/utils/module-loader.test.ts\",\n        \"packages/cli/src/utils/module-loader.ts\",\n        \"packages/cli/src/utils/upgrade/simple-migration-agent.ts\",\n        \"packages/cli/tests/commands/start.test.ts\",\n        \"packages/cli/tests/commands/test-utils.ts\",\n        \"packages/cli/tests/unit/utils/loader-integration.test.ts\",\n        \"packages/cli/tests/unit/utils/loader-sync-async.test.ts\",\n        \"packages/cli/tests/unit/utils/local-cli-delegation.test.ts\",\n        \"packages/cli/tests/unit/utils/server-manager.test.ts\",\n        \"packages/cli/tests/unit/utils/simple-migration-agent-eventemitter-compatibility.test.ts\",\n        \"packages/cli/tsup.config.ts\",\n        \"packages/client/package.json\",\n        \"packages/config/package.json\",\n        \"packages/core/package.json\",\n        \"packages/create-eliza/package.json\",\n        \"packages/docs/package.json\",\n        \"packages/plugin-bootstrap/package.json\",\n        \"packages/plugin-dummy-services/package.json\",\n        \"packages/plugin-quick-starter/package.json\",\n        \"packages/plugin-sql/package.json\",\n        \"packages/plugin-starter/package.json\",\n        \"packages/project-starter/package.json\",\n        \"packages/project-tee-starter/package.json\",\n        \"packages/server/package.json\",\n        \"packages/server/src/__tests__/EventEmitter-Compatibility-README.md\",\n        \"packages/server/src/__tests__/bus-eventemitter-compatibility.test.ts\",\n        \"packages/server/src/bus.ts\",\n        \"packages/test-utils/package.json\"\n      ]\n    },\n    {\n      \"title\": \"feat: enhance ModuleLoader with local-first guarantees for consistent module resolution\",\n      \"prNumber\": 5629,\n      \"type\": \"feature\",\n      \"body\": \"## \ud83d\udd27 Enhanced Module Resolution for Consistent Local-First Loading\\n\\nThis PR addresses critical module resolution issues by enhancing the existing ModuleLoader system to provide the same local-first guarantees as server-manager.ts, ensuring\",\n      \"files\": [\n        \"bun.lock\",\n        \"lerna.json\",\n        \"packages/api-client/package.json\",\n        \"packages/cli/package.json\",\n        \"packages/cli/src/commands/dev/types.ts\",\n        \"packages/cli/src/commands/dev/utils/server-manager.ts\",\n        \"packages/cli/src/commands/start/actions/server-start.ts\",\n        \"packages/cli/src/commands/start/index.ts\",\n        \"packages/cli/src/commands/start/utils/__tests__/loader.test.ts\",\n        \"packages/cli/src/commands/start/utils/loader.ts\",\n        \"packages/cli/src/commands/test/actions/e2e-tests.ts\",\n        \"packages/cli/src/index.ts\",\n        \"packages/cli/src/utils/index.ts\",\n        \"packages/cli/src/utils/local-cli-delegation.ts\",\n        \"packages/cli/src/utils/module-loader.test.ts\",\n        \"packages/cli/src/utils/module-loader.ts\",\n        \"packages/cli/tests/commands/start.test.ts\",\n        \"packages/cli/tests/commands/test-utils.ts\",\n        \"packages/cli/tests/unit/utils/loader-integration.test.ts\",\n        \"packages/cli/tests/unit/utils/loader-sync-async.test.ts\",\n        \"packages/cli/tests/unit/utils/local-cli-delegation.test.ts\",\n        \"packages/cli/tests/unit/utils/server-manager.test.ts\",\n        \"packages/cli/tsup.config.ts\",\n        \"packages/config/package.json\",\n        \"packages/core/package.json\",\n        \"packages/plugin-bootstrap/package.json\",\n        \"packages/plugin-dummy-services/package.json\",\n        \"packages/plugin-sql/package.json\",\n        \"packages/server/package.json\",\n        \"packages/test-utils/package.json\"\n      ]\n    },\n    {\n      \"title\": \"fix: JSON strings in sql base\",\n      \"prNumber\": 5628,\n      \"type\": \"bugfix\",\n      \"body\": \"### PR Review \u2013 JSON B insert failure fix in `plugin-sql`\\r\\n\\r\\nGreat catch!  \\r\\nThe change that stringifies `content` and `metadata` before passing them to\\r\\n\\r\\n```ts\\r\\nsql`${...}::jsonb`\\r\\n```\\r\\n\\r\\nsolves the root issue where raw objects were impli\",\n      \"files\": [\n        \"packages/plugin-sql/src/__tests__/integration/memory.test.ts\",\n        \"packages/plugin-sql/src/base.ts\"\n      ]\n    },\n    {\n      \"title\": \"Fix export in @elizaos/config\",\n      \"prNumber\": 5635,\n      \"type\": \"bugfix\",\n      \"body\": \"Plugins that rely on this package will fail because the files are actually in src and need to be imported. Adding src to file output includes them in the npm package export. Doesn't happen locally since the files get included, but when they\",\n      \"files\": [\n        \"packages/config/package.json\"\n      ]\n    },\n    {\n      \"title\": \"feat: add post examples to default eliza char\",\n      \"prNumber\": 5652,\n      \"type\": \"feature\",\n      \"body\": \"Without this, twitter posting doesn't run.\",\n      \"files\": [\n        \"packages/cli/src/characters/eliza.ts\",\n        \"packages/docs/packages/plugins/twitter.md\",\n        \"packages/docs/static/packages/plugins/twitter.md\"\n      ]\n    },\n    {\n      \"title\": \"cleanup: remove unused test-function-detection.sh script\",\n      \"prNumber\": 5651,\n      \"type\": \"refactor\",\n      \"body\": \"## Summary\\n\\nRemoves the unused `test-function-detection.sh` script from the root directory.\\n\\n## Context\\n\\nThis script was a development artifact used to validate AWK patterns for function detection during the development of the code quality \",\n      \"files\": [\n        \"test-function-detection.sh\"\n      ]\n    },\n    {\n      \"title\": \"docs: add critical ElizaOS component clarifications to CLAUDE.md\",\n      \"prNumber\": 5642,\n      \"type\": \"docs\",\n      \"body\": \"## Summary\\n\\nThis PR adds critical clarifications to CLAUDE.md to help developers understand the correct usage of ElizaOS components (Services, Providers, Actions, Evaluators).\\n\\n## Changes\\n\\n### 1. Main CLAUDE.md updates\\n- Added \\\"CRITICAL: El\",\n      \"files\": [\n        \"CLAUDE.md\",\n        \"packages/cli/tests/commands/create.test.ts\",\n        \"packages/plugin-starter/CLAUDE.md\",\n        \"packages/project-starter/CLAUDE.md\"\n      ]\n    },\n    {\n      \"title\": \"fix: CLI dev command test failures due to missing dependencies\",\n      \"prNumber\": 5641,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n- Fixed failing dev command tests in CI by addressing missing dependency issues\\n- Tests were failing with \\\"Cannot find module '@langchain/core/documents'\\\" error\\n- Server subprocess was not outputting to test process due to stdio \",\n      \"files\": [\n        \".gitignore\",\n        \"bun.lock\",\n        \"packages/cli/src/commands/dev/actions/dev-server.ts\",\n        \"packages/cli/src/commands/dev/utils/server-manager.ts\",\n        \"packages/cli/tests/commands/dev.test.ts\",\n        \"packages/core/package.json\",\n        \"packages/server/package.json\"\n      ]\n    },\n    {\n      \"title\": \"Validate model parameter for bunExec\",\n      \"prNumber\": 5663,\n      \"type\": \"other\",\n      \"body\": \"```\\n<!-- Use this template by filling in information and copying and pasting relevant items out of the HTML comments. -->\\n\\n# Relates to\\n\\n<!-- LINK TO ISSUE OR TICKET -->\\n\\n# Risks\\n\\nLow. This PR is a security fix that prevents potential comma\",\n      \"files\": [\n        \"packages/plugin-training/src/cli/commands/test-fine-tuned.ts\"\n      ]\n    },\n    {\n      \"title\": \"Correct dataset path for HuggingFace upload\",\n      \"prNumber\": 5662,\n      \"type\": \"other\",\n      \"body\": \"```\\n<!-- Use this template by filling in information and copying and pasting relevant items out of the HTML comments. -->\\n\\n# Relates to\\n\\n<!-- LINK TO ISSUE OR TICKET -->\\n\\n# Risks\\n\\nLow. This is a bug fix that corrects a variable assignment, \",\n      \"files\": [\n        \"packages/plugin-training/src/actions/start-training.ts\"\n      ]\n    },\n    {\n      \"title\": \"Remove double escaping from bunExec prompt\",\n      \"prNumber\": 5661,\n      \"type\": \"other\",\n      \"body\": \"```\\n<!-- Use this template by filling in information and copying and pasting relevant items out of the HTML comments. -->\\n\\n# Relates to\\n\\n<!-- LINK TO ISSUE OR TICKET -->\\n\\n<!-- This risks section must be filled out before the final review an\",\n      \"files\": [\n        \"packages/plugin-training/src/cli/commands/test-fine-tuned.ts\"\n      ]\n    },\n    {\n      \"title\": \"Prevent undefined model use restoration\",\n      \"prNumber\": 5660,\n      \"type\": \"other\",\n      \"body\": \"```\\n<!-- Use this template by filling in information and copying and pasting relevant items out of the HTML comments. -->\\n\\n# Relates to\\n\\n<!-- LINK TO ISSUE OR TICKET -->\\nNone\\n\\n# Risks\\n\\n<!--\\nLow, medium, large. List what kind of risks and wh\",\n      \"files\": [\n        \"packages/plugin-training/src/mvp/simple-reasoning-service.ts\"\n      ]\n    },\n    {\n      \"title\": \"docs: Add AGENT.md development guide\",\n      \"prNumber\": 5669,\n      \"type\": \"docs\",\n      \"body\": \"## Description\\n\\nThis PR adds a new AGENT.md file that serves as a quick reference guide for ElizaOS agent development.\\n\\n## Changes\\n- Added comprehensive build/test command reference\\n- Documented core architecture and dependencies\\n- Defined \",\n      \"files\": [\n        \"AGENT.md\"\n      ]\n    },\n    {\n      \"title\": \"fix: gitignores missing in plugin starter\",\n      \"prNumber\": 5675,\n      \"type\": \"bugfix\",\n      \"body\": \"   ## Problem\\r\\n   When creating plugins with `elizaos create`, the .gitignore file was not included in the published npm package. This could lead to accidentally committing and pushing sensitive files like .env to GitHub.\\r\\n\\r\\n   ## Solution\\r\",\n      \"files\": [\n        \"packages/cli/.npmignore\",\n        \"packages/cli/package.json\",\n        \"packages/cli/src/commands/create/actions/creators.ts\",\n        \"packages/plugin-quick-starter/package.json\",\n        \"packages/plugin-starter/package.json\"\n      ]\n    },\n    {\n      \"title\": \"fix spelling error\",\n      \"prNumber\": 5674,\n      \"type\": \"bugfix\",\n      \"body\": \"`dependecies` - `dependencies`\\r\\n\\r\\nfixed error in `packages/plugin-starter/src/plugin.ts`\",\n      \"files\": [\n        \"packages/plugin-starter/src/plugin.ts\"\n      ]\n    }\n  ],\n  \"topContributors\": [\n    {\n      \"username\": \"wtfsayo\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/82053242?u=98209a1f10456f42d4d2fa71db4d5bf4a672cbc3&v=4\",\n      \"totalScore\": 3813.3425167523274,\n      \"prScore\": 3750.4565167523274,\n      \"issueScore\": 26.2,\n      \"reviewScore\": 28.5,\n      \"commentScore\": 8.186,\n      \"summary\": \"wtfsayo: This month, wtfsayo drove substantial improvements across the `elizaos/eliza` repository, focusing on architectural modernization, developer tooling, and UI enhancements. They led several major refactors, including the implementation of standardized service interfaces (#5565), migrating from EventEmitter to the native EventTarget API (#5609), and enhancing the module loader for better core functionality (#5629). Additionally, wtfsayo fixed critical bugs in action chaining (#5490) and the forms plugin (#5488), redesigned key UI elements like the agent cards homepage (#5344), and automated code quality analysis workflows (#5532). Their work touched on all aspects of the codebase, with a primary focus on bug fixes, configuration, and testing to improve overall system reliability.\"\n    },\n    {\n      \"username\": \"tcm390\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/60634884?u=c6c41679b8322eaa0c81f72e0b4ed95e80f0ac16&v=4\",\n      \"totalScore\": 1219.5991530672056,\n      \"prScore\": 1214.3991530672056,\n      \"issueScore\": 0,\n      \"reviewScore\": 5,\n      \"commentScore\": 0.2,\n      \"summary\": \"tcm390: Drove significant product evolution in the elizaos/eliza repository, delivering a critical V1 to V2 character conversion feature to support user migration (#5536). They executed several large-scale refactors, including a major cleanup of prompt logic that removed over 5,700 lines of code (#5528) and a system-wide update to standardize confirmation dialogs (#5444). Additionally, tcm390 improved core functionality by enhancing prompt formatting (#5525) and implementing an auto-resizing chat input for better usability (#5546). This activity across 48 merged PRs demonstrates a strong focus on feature development, code health, and user experience enhancements.\"\n    },\n    {\n      \"username\": \"ChristopherTrimboli\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/27584221?u=0d816ce1dcdea8f925aba18bb710153d4a87a719&v=4\",\n      \"totalScore\": 801.0305198746062,\n      \"prScore\": 693.8145198746062,\n      \"issueScore\": 0,\n      \"reviewScore\": 106,\n      \"commentScore\": 1.2159999999999997,\n      \"summary\": \"ChristopherTrimboli: Spearheaded a significant technical modernization and refactoring effort across the `elizaos/eliza` monorepo, merging 11 pull requests. This work included replacing core dependencies like `execa` with `bun.Spawn` for improved performance (#5531) and overhauling the testing and runtime environment (#5556). Christopher also drove major cleanups, such as the removal of the `plugin-forms` package (#5527, -5.6k lines), and fixed a critical deployment issue preventing plugin actions from loading (#5624). His contributions show a primary focus on bug fixes and foundational improvements, with changes spanning core code, configuration, and test files.\"\n    },\n    {\n      \"username\": \"lalalune\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/18633264?u=e2e906c3712c2506ebfa98df01c2cfdc50050b30&v=4\",\n      \"totalScore\": 475.980660042897,\n      \"prScore\": 473.780660042897,\n      \"issueScore\": 2,\n      \"reviewScore\": 0,\n      \"commentScore\": 0.2,\n      \"summary\": \"lalalune: Focused on significant feature development and architectural enhancements within the `elizaos/eliza` repository this month. They merged four substantial pull requests, introducing action chaining (#5436) and creating new packages for configs (#5508) and test utilities (#5507), which involved large-scale code changes. Lalalune also has a strong pipeline of new capabilities underway with seven open pull requests for features like vision and planning plugins. Their work was primarily centered on new feature development, modifying a mix of code, test, and configuration files.\"\n    },\n    {\n      \"username\": \"0xbbjoker\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/54844437?u=90fe1762420de6ad493a1c1582f1f70c0d87d8e2&v=4\",\n      \"totalScore\": 370.76172960731407,\n      \"prScore\": 319.6817296073141,\n      \"issueScore\": 0,\n      \"reviewScore\": 50,\n      \"commentScore\": 1.08,\n      \"summary\": \"0xbbjoker focused on improving the developer and user experience within the ElizaOS ecosystem by shipping a mix of features and critical fixes. Their most impactful contribution was the addition of a new `plugin-quick-starter` template to the CLI (elizaos/eliza#5589), a significant feature that added over 1200 lines of code. They also resolved key issues, including improving the secret panel UX (#5501) and making the Ollama plugin conditional (#5594), while actively supporting peers with 10 PR reviews. This month's work shows a primary focus on bug fixes, complemented by significant feature development and refactoring efforts.\"\n    },\n    {\n      \"username\": \"ai16z-demirix\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/188117230?u=424cd5b834584b3799da288712b3c4158c8032a1&v=4\",\n      \"totalScore\": 318.3344090413869,\n      \"prScore\": 292.43440904138686,\n      \"issueScore\": 10,\n      \"reviewScore\": 14,\n      \"commentScore\": 1.9,\n      \"summary\": \"ai16z-demirix: Focused on modernizing the project's testing infrastructure by migrating to Bun, a significant effort highlighted by the large-scale refactor in elizaos/eliza#5368 (+1166/-1518 lines). They also addressed several bugs, including a key fix for plugin loading on Windows (#5416), and remained engaged through 11 PR comments and 3 reviews. Their contributions were concentrated on improving developer tooling and project stability, with work primarily touching documentation, tests, and configuration files.\"\n    },\n    {\n      \"username\": \"SYMBaiEX\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/192078165?u=a6e562521cc94448799ea50ebc1faeda3c3cef26&v=4\",\n      \"totalScore\": 312.7755564720922,\n      \"prScore\": 290.7375564720922,\n      \"issueScore\": 12,\n      \"reviewScore\": 9,\n      \"commentScore\": 1.038,\n      \"summary\": \"SYMBaiEX: This month, SYMBaiEX led a significant effort to improve documentation and address platform-specific bugs in the `elizaos/eliza` repository. Their most impactful contribution was a comprehensive documentation overhaul, merged via PR #5401, which introduced over 43,000 lines of new content. They also enhanced the developer experience by migrating the CLI to a new library for consistency (#5359) and fixing critical Windows plugin loading failures (#5437). Overall, their work was heavily concentrated on documentation, with additional focus on bug fixes and feature development.\"\n    },\n    {\n      \"username\": \"yungalgo\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/113615973?u=92e0f29f7e2fbb8ce46ed13c51f692ca803de02d&v=4\",\n      \"totalScore\": 230.80007887714953,\n      \"prScore\": 215.00407887714954,\n      \"issueScore\": 0,\n      \"reviewScore\": 13.5,\n      \"commentScore\": 2.296,\n      \"summary\": \"yungalgo focused on improving the command-line interface (CLI) and project creation experience in the elizaos/eliza repository. They merged four bug fixes, most impactfully automating the installation of AI model plugins during project creation (#5335) and preventing database inheritance issues in nested projects (#5618). In addition to their merged work, they have four more CLI fixes currently open and were active in code review, leaving 12 comments on other pull requests. This activity, primarily classified as bug fixes and refactors, shows a clear focus on improving the usability and robustness of the developer tooling.\"\n    },\n    {\n      \"username\": \"META-DREAMER\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/7143583?u=96f63f10e066a06d5ad592c8efc659e2b84a68fc&v=4\",\n      \"totalScore\": 229.5439390535457,\n      \"prScore\": 228.60393905354567,\n      \"issueScore\": 0,\n      \"reviewScore\": 0,\n      \"commentScore\": 0.94,\n      \"summary\": \"META-DREAMER: Drove a significant architectural update this month by implementing a multi-repository frontend in elizaos/elizaos.github.io via PR #143, a substantial effort adding over 11k lines of code. This work, which originated from their own issue #141, was followed by a massive cleanup initiative that removed over 258k lines of legacy scripts and data in PR #145. Their activity shows a primary focus on new feature development, testing, and large-scale refactoring, touching a mix of code, test, and configuration files.\"\n    },\n    {\n      \"username\": \"linear\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/in/20150?v=4\",\n      \"totalScore\": 112,\n      \"prScore\": 0,\n      \"issueScore\": 112,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": \"linear: Focused on product definition and quality assurance this month by creating 25 issues in the elizaos/eliza repository. This work involved identifying and documenting numerous bugs to improve CLI stability and user experience, such as #5434 and #5432. They also played a key role in planning future work by creating a series of detailed ticket specifications for a new 'scenarios' feature (#5573-#5579).\"\n    },\n    {\n      \"username\": \"reallesee\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/155267459?u=048a8021b60ccdd599d1389ec6bd3a07578a8cbf&v=4\",\n      \"totalScore\": 90.00654753827452,\n      \"prScore\": 90.00654753827452,\n      \"issueScore\": 0,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": \"reallesee: Focused on repository maintenance and correctness this month, merging four small pull requests in the elizaos/eliza repository. Their work included updating a GitHub Actions dependency (elizaos/eliza#5412) and addressing several minor typos and inconsistencies. These changes touched a mix of code, tests, and documentation, reflecting a focus on overall repository health.\"\n    },\n    {\n      \"username\": \"odilitime\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/16395496?u=c9bac48e632aae594a0d85aaf9e9c9c69b674d8b&v=4\",\n      \"totalScore\": 81.43239488210207,\n      \"prScore\": 67.63239488210208,\n      \"issueScore\": 4.1,\n      \"reviewScore\": 9.5,\n      \"commentScore\": 0.2,\n      \"summary\": \"odilitime: Focused on direct code contributions this month, primarily addressing bug fixes through 8 commits that modified 8 files (+745/-202 lines). Although no pull requests were merged, they also supported the team's efforts by providing one pull request approval.\"\n    },\n    {\n      \"username\": \"bealers\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/6403055?u=8c40778251e25b92cdee727056415b6c0d1bcdc5&v=4\",\n      \"totalScore\": 79.8210947252628,\n      \"prScore\": 79.1830947252628,\n      \"issueScore\": 0,\n      \"reviewScore\": 0,\n      \"commentScore\": 0.6379999999999999,\n      \"summary\": \"bealers: Focused on expanding the plugin ecosystem this month, making a significant contribution by adding the Mattermost plugin to the registry (elizaos-plugins/registry#188) with a substantial change of +2371/-6560 lines. They also showed forward-thinking by drafting a proposal for Docker infrastructure enhancements (elizaos/eliza#5583). In addition to their own code, they were active in discussions, leaving 5 PR comments and 2 issue comments. Their work was concentrated on documentation and configuration files, reflecting their focus on plugins and infrastructure.\"\n    },\n    {\n      \"username\": \"alex-nax\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/82507604?u=b3af75d82f80ed83007a77c351a64bdd9e5d67de&v=4\",\n      \"totalScore\": 67.0875477931522,\n      \"prScore\": 67.0875477931522,\n      \"issueScore\": 0,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": \"alex-nax: Focused on a significant refactoring effort within the elizaos/eliza repository this month. This work is captured in two open pull requests, #5491 and #5547, which propose substantial changes totaling +7645/-4191 lines across 180 files. The code changes indicate this refactor primarily impacted configuration files, tests, and documentation.\"\n    },\n    {\n      \"username\": \"standujar\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/16385918?u=718bdcd1585be8447bdfffb8c11ce249baa7532d&v=4\",\n      \"totalScore\": 63.53265363119013,\n      \"prScore\": 58.132653631190124,\n      \"issueScore\": 0,\n      \"reviewScore\": 5,\n      \"commentScore\": 0.4,\n      \"summary\": \"standujar: Focused on bug fixes this month, merging a key pull request in the elizaos/eliza repository. Their work in PR #5384 removed duplicate middleware from the API router, resulting in a significant code cleanup (+176/-416 lines). This contribution demonstrates a focus on improving the stability and efficiency of the API.\"\n    },\n    {\n      \"username\": \"wookosh\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/120273332?u=493e01d0863a55ed139425760447079b96ef931d&v=4\",\n      \"totalScore\": 51.39320153494498,\n      \"prScore\": 46.89320153494498,\n      \"issueScore\": 0,\n      \"reviewScore\": 4.5,\n      \"commentScore\": 0,\n      \"summary\": \"wookosh: Focused on resolving a critical build process issue this month by merging `elizaos/eliza#5555`. This key contribution fixed a bug where the `tsup` build was incorrectly wiping the `vite` build, ensuring the stability of the development pipeline. Their work consisted of 7 commits primarily modifying test and configuration files, showing a clear focus on bugfixes and testing.\"\n    },\n    {\n      \"username\": \"borisudovicic\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/31806472?u=27713fbe603baae91ef519990facbacd6c23e93d&v=4\",\n      \"totalScore\": 50,\n      \"prScore\": 0,\n      \"issueScore\": 50,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": \"borisudovicic: Focused on product definition and quality assurance within the elizaos/eliza repository by creating 14 issues to scope out new work and identify problems. Their efforts helped define key initiatives, including establishing security roles for wallets (#5386), setting up a rate-limited LLM endpoint (#5438), and creating a character data migrator (#5452). This activity demonstrates a focus on planning and improving the core `elizaos/eliza` application.\"\n    },\n    {\n      \"username\": \"0xtc23\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/129641996?v=4\",\n      \"totalScore\": 43.5437738965761,\n      \"prScore\": 43.5437738965761,\n      \"issueScore\": 0,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": \"0xtc23: This month, 0xtc23 initiated work to expand the project's AI model integrations by opening a pull request to add a new plugin for xAI Grok models (elizaos/eliza#5338). This contribution represents their primary focus on plugin development within the elizaos/eliza repository.\"\n    },\n    {\n      \"username\": \"krishvsoni\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/67964054?u=fc3dd00f7631af909a4fa3ee22461bb0c63e53f4&v=4\",\n      \"totalScore\": 41.2057738965761,\n      \"prScore\": 41.2057738965761,\n      \"issueScore\": 0,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": \"krishvsoni: Focused on feature development this month, opening a significant pull request to implement a new CLI documentation coverage validation system (elizaos/eliza#5492). This substantial contribution introduced over 1300 lines of code. The changes demonstrate a comprehensive approach, touching feature code, tests, and configuration files.\"\n    },\n    {\n      \"username\": \"bundinho\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/8318762?u=610af9286ca8d85b5d3e7be15fe069597b1beddf&v=4\",\n      \"totalScore\": 40.625773896576106,\n      \"prScore\": 40.4257738965761,\n      \"issueScore\": 0,\n      \"reviewScore\": 0,\n      \"commentScore\": 0.2,\n      \"summary\": \"bundinho: Focused on significant tooling and configuration enhancements this month, opening a major pull request in elizaos/eliza (#5517) to introduce pm2. This substantial effort is reflected in 17 commits and extensive modifications across over 1,000 files (+108072/-23942 lines). Their work was primarily concentrated on bugfixes and updating configuration files.\"\n    },\n    {\n      \"username\": \"Zatoryama\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/117825329?v=4\",\n      \"totalScore\": 40.4257738965761,\n      \"prScore\": 40.4257738965761,\n      \"issueScore\": 0,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": \"Zatoryama: No activity this month.\"\n    },\n    {\n      \"username\": \"xR0am\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/67987108?u=7bcf07efafb31c4804c54cf35d74ec3de7a1d330&v=4\",\n      \"totalScore\": 40.3387738965761,\n      \"prScore\": 40.3387738965761,\n      \"issueScore\": 0,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": null\n    },\n    {\n      \"username\": \"cuongpo\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/61429471?u=4ee322b81464e6380a46388ff471c9247bb4cbd7&v=4\",\n      \"totalScore\": 36.506248211863664,\n      \"prScore\": 36.506248211863664,\n      \"issueScore\": 0,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": null\n    },\n    {\n      \"username\": \"github-advanced-security\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/in/57789?v=4\",\n      \"totalScore\": 36,\n      \"prScore\": 0,\n      \"issueScore\": 0,\n      \"reviewScore\": 36,\n      \"commentScore\": 0,\n      \"summary\": \"github-advanced-security: No activity this month.\"\n    },\n    {\n      \"username\": \"Dangoz\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/71613713?u=1839f372422c7a5503a713dca22981490b4ea7da&v=4\",\n      \"totalScore\": 33.74239089914137,\n      \"prScore\": 33.74239089914137,\n      \"issueScore\": 0,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": \"Dangoz: This month, Dangoz's efforts were concentrated on a single, impactful bugfix in the `elizaos/eliza` repository. They merged a substantial pull request (#5343) to fix how the BaseApiClient handles unwrapped server responses, a change that involved +29872/-3864 lines of code. This work, which touched both code and test files, represented their entire focus for the period.\"\n    },\n    {\n      \"username\": \"superdevstar50\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/140016551?u=a28d6409e859583510c771e9ebcbcf72adea1e04&v=4\",\n      \"totalScore\": 28.420720770839914,\n      \"prScore\": 28.420720770839914,\n      \"issueScore\": 0,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": \"superdevstar50: Focused on expanding the plugin ecosystem this month by adding the 'plugin-desearch' to the registry via PR elizaos-plugins/registry#187. This contribution consisted of a targeted update to a configuration file.\"\n    },\n    {\n      \"username\": \"QuasiPlanets\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/196568543?u=e9348d1ce7224da005aa0cfd8cbc407cdfbe82ed&v=4\",\n      \"totalScore\": 27.539891235220416,\n      \"prScore\": 27.539891235220416,\n      \"issueScore\": 0,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": \"QuasiPlanets: This month's activity was focused on a large-scale branch synchronization, resulting in one open pull request, elizaos/eliza#5585. This sync contained a substantial volume of changes (+13052/-6712 lines across 205 files). The modifications were concentrated entirely within tests and documentation.\"\n    },\n    {\n      \"username\": \"david-dina\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/75289436?u=e17229d4e7d042ba3dac2414bccfd05caa004b28&v=4\",\n      \"totalScore\": 26.402535394802406,\n      \"prScore\": 21.764535394802408,\n      \"issueScore\": 4,\n      \"reviewScore\": 0,\n      \"commentScore\": 0.6379999999999999,\n      \"summary\": \"david-dina: Contributed to product stability by identifying and reporting a bug in the `elizaos/eliza` repository. They opened issue #5530 to document an infinite loop affecting Windows systems. This was their sole contribution this month.\"\n    },\n    {\n      \"username\": \"bowtiedbluefin\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/95500901?v=4\",\n      \"totalScore\": 24.105274778438428,\n      \"prScore\": 23.90527477843843,\n      \"issueScore\": 0,\n      \"reviewScore\": 0,\n      \"commentScore\": 0.2,\n      \"summary\": \"bowtiedbluefin: This month, bowtiedbluefin focused on feature work, opening a pull request to update the plugin installation logic in elizaos/eliza (#5464). They also contributed one comment to a pull request. The work on their open PR included modifications to both application code and tests.\"\n    },\n    {\n      \"username\": \"imthatcarlos\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/20136572?u=1c65c44403457a7870138f8f23fa0ef27487fb62&v=4\",\n      \"totalScore\": 23.404306144334054,\n      \"prScore\": 23.204306144334055,\n      \"issueScore\": 0,\n      \"reviewScore\": 0,\n      \"commentScore\": 0.2,\n      \"summary\": \"imthatcarlos: This month, imthatcarlos's activity was focused on plugin management within the ecosystem. They published the `plugin-bonsai` by merging a configuration update in `elizaos-plugins/registry#191`. Their work was concentrated entirely on modifying configuration files.\"\n    },\n    {\n      \"username\": \"sentdeed\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/158516648?u=0971b81093452af3b253c24a5f23e83d33322436&v=4\",\n      \"totalScore\": 20.813306144334053,\n      \"prScore\": 20.813306144334053,\n      \"issueScore\": 0,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": null\n    },\n    {\n      \"username\": \"germashevanton\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/28603211?v=4\",\n      \"totalScore\": 17.392751502819134,\n      \"prScore\": 17.392751502819134,\n      \"issueScore\": 0,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": null\n    },\n    {\n      \"username\": \"crStiv\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/189026468?u=8cb1c20025c00ee75f6587c86c309be0c904ba54&v=4\",\n      \"totalScore\": 11.431306144334057,\n      \"prScore\": 11.431306144334057,\n      \"issueScore\": 0,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": null\n    },\n    {\n      \"username\": \"shuhaib112\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/211030292?v=4\",\n      \"totalScore\": 11.428573590279973,\n      \"prScore\": 11.228573590279973,\n      \"issueScore\": 0,\n      \"reviewScore\": 0,\n      \"commentScore\": 0.2,\n      \"summary\": \"shuhaib112: This month, their activity was focused on initiating new work in the elizaos/eliza repository. They opened pull request #5421 (\\\"Create Os\\\") and also made one comment on a pull request. There were no merged contributions during this period.\"\n    },\n    {\n      \"username\": \"manuelbarbas\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/132930012?u=d5940aff33df08ec553161a27d386b67ab25f8dc&v=4\",\n      \"totalScore\": 6.119573590279972,\n      \"prScore\": 6.119573590279972,\n      \"issueScore\": 0,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": \"manuelbarbas: This month, their sole contribution was opening a pull request to add a new plugin to the registry (elizaos-plugins/registry#190), which involved a minor configuration change.\"\n    },\n    {\n      \"username\": \"samarth30\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/48334430?u=1fc119a6c2deb8cf60448b4c8961cb21dc69baeb&v=4\",\n      \"totalScore\": 6,\n      \"prScore\": 0,\n      \"issueScore\": 6,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": \"samarth30: Focused on planning and defining future work within the elizaos/eliza repository. They created two issues to outline potential projects: one for a hybrid plugin migration approach (#5376) and another for a \\\"Plugin-zapper\\\" (#5620).\"\n    },\n    {\n      \"username\": \"1BDO\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/210645034?v=4\",\n      \"totalScore\": 4.54,\n      \"prScore\": 0,\n      \"issueScore\": 4.2,\n      \"reviewScore\": 0,\n      \"commentScore\": 0.33999999999999997,\n      \"summary\": null\n    },\n    {\n      \"username\": \"iQiexie\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/63598014?v=4\",\n      \"totalScore\": 4.34,\n      \"prScore\": 0,\n      \"issueScore\": 4,\n      \"reviewScore\": 0,\n      \"commentScore\": 0.33999999999999997,\n      \"summary\": \"iQiexie: This month, iQiexie focused on improving documentation by identifying and reporting misleading information in the REST API documentation (elizaos/eliza#5370). While there were no code changes, they also engaged in project discussions through comments on one issue and one pull request. Their activity was centered on the developer experience of the elizaos/eliza repository.\"\n    },\n    {\n      \"username\": \"RolandOne\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/38446707?v=4\",\n      \"totalScore\": 4.3,\n      \"prScore\": 0,\n      \"issueScore\": 4.1,\n      \"reviewScore\": 0,\n      \"commentScore\": 0.2,\n      \"summary\": \"RolandOne: Focused on quality assurance this month by identifying and reporting a bug in the Twitter plugin where the client failed to create (elizaos-plugins/plugin-twitter#36). Their activity was centered on ensuring the stability of the plugin ecosystem.\"\n    },\n    {\n      \"username\": \"gcbsumid\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/909374?u=37f846cf6061061fd858eeca1210d5378a7bb65b&v=4\",\n      \"totalScore\": 4.1,\n      \"prScore\": 0,\n      \"issueScore\": 4.1,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": \"gcbsumid: Focused on bug triage within the `elizaos/eliza` repository this month. They identified, reported, and resolved an issue concerning plugin loading failures (elizaos/eliza#5407). This activity indicates a focus on the stability of the plugin ecosystem.\"\n    },\n    {\n      \"username\": \"Ovodo\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/107152769?u=875457368f5da28dd042a989613a3b38c9d008e2&v=4\",\n      \"totalScore\": 4.1,\n      \"prScore\": 0,\n      \"issueScore\": 4.1,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": \"Ovodo: This month, Ovodo focused on identifying and reporting issues in the `elizaos-plugins/plugin-twitter` repository. They created two issues to document observed failures: `elizaos-plugins/plugin-twitter#38` concerning timeline fetching and `elizaos-plugins/plugin-twitter#31` related to a client initialization error. Ovodo also contributed to one issue discussion.\"\n    },\n    {\n      \"username\": \"fuhaooo\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/65961439?u=159d211599f4eeba073594cb00c12b9a2b5d6351&v=4\",\n      \"totalScore\": 4,\n      \"prScore\": 0,\n      \"issueScore\": 4,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": \"fuhaooo: This month, fuhaooo's contribution was focused on product stability by identifying a potential bug in the `elizaos/eliza` repository. They opened issue #5617 to report that the agent was not responding to messages in the front-end GUI.\"\n    },\n    {\n      \"username\": \"0xFlicker\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/97764360?u=bb67e6690e171114f06a83fd0de9573efd0316b1&v=4\",\n      \"totalScore\": 4,\n      \"prScore\": 0,\n      \"issueScore\": 4,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": \"0xFlicker: This month, 0xFlicker contributed to project health by identifying and closing an issue in the elizaos/eliza repository (#5425). They also participated in a pull request discussion with a single comment.\"\n    },\n    {\n      \"username\": \"yasir23\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/46179498?u=89dcf261b397bb2930cbedce61e09b8df01998e6&v=4\",\n      \"totalScore\": 2.2,\n      \"prScore\": 0,\n      \"issueScore\": 2,\n      \"reviewScore\": 0,\n      \"commentScore\": 0.2,\n      \"summary\": \"yasir23: This month, yasir23 focused on identifying and reporting potential bugs. They opened an issue in elizaos-plugins/plugin-twitter#39 to flag an error with the SQL database integration. Their contributions also included participating in issue discussions with two comments, indicating a focus on the stability of the Twitter plugin.\"\n    },\n    {\n      \"username\": \"scottrepreneur\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/1778380?u=fede4269023b94283a66b98872ce7f971a7999e7&v=4\",\n      \"totalScore\": 2.2,\n      \"prScore\": 0,\n      \"issueScore\": 2,\n      \"reviewScore\": 0,\n      \"commentScore\": 0.2,\n      \"summary\": \"scottrepreneur: Focused on product quality and maintenance this month by identifying and reporting issues. They reported a web client versioning bug that has since been resolved (elizaos/eliza#4924). Additionally, they opened an issue to update a dependency in the Farcaster plugin (elizaos-plugins/plugin-farcaster#7).\"\n    },\n    {\n      \"username\": \"nccuong-vikki\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/207505492?u=fa65b4f312a59d9ad78fe77a84ef56a282fe8786&v=4\",\n      \"totalScore\": 2.2,\n      \"prScore\": 0,\n      \"issueScore\": 2,\n      \"reviewScore\": 0,\n      \"commentScore\": 0.2,\n      \"summary\": null\n    },\n    {\n      \"username\": \"myst4\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/86130282?u=2aee3ed374a6ecd7ba99178257ec95e8690f239b&v=4\",\n      \"totalScore\": 2,\n      \"prScore\": 0,\n      \"issueScore\": 2,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": null\n    },\n    {\n      \"username\": \"monilpat\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/15067321?v=4\",\n      \"totalScore\": 2,\n      \"prScore\": 0,\n      \"issueScore\": 2,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": null\n    },\n    {\n      \"username\": \"microgift\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/127183857?u=dd78a53a0ba96950405732e1f2d906b9f3e36b34&v=4\",\n      \"totalScore\": 2,\n      \"prScore\": 0,\n      \"issueScore\": 2,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": null\n    },\n    {\n      \"username\": \"XiongUp123\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/72595468?u=d5cee5d0668b9e06f0a065d05abc25b151290261&v=4\",\n      \"totalScore\": 2,\n      \"prScore\": 0,\n      \"issueScore\": 2,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": \"XiongUp123: This month, XiongUp123 contributed by identifying a potential build problem, opening issue #5482 in elizaos/eliza to report a dependency installation failure.\"\n    },\n    {\n      \"username\": \"Megamindmaster\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/31832268?u=d978dad8011f9cf56047430ba41aff01e4c1be66&v=4\",\n      \"totalScore\": 2,\n      \"prScore\": 0,\n      \"issueScore\": 2,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": \"Megamindmaster: No activity this month.\"\n    }\n  ],\n  \"newPRs\": 261,\n  \"mergedPRs\": 213,\n  \"newIssues\": 83,\n  \"closedIssues\": 67,\n  \"activeContributors\": 40\n}\n---\n[\"claude[bot]_day_2025-07-21\", \"claude[bot]\", \"day\", \"2025-07-21\", \"claude[bot]: No activity today.\", \"2025-07-24T18:46:44.990Z\"]\n[\"actions-user_day_2025-07-22\", \"actions-user\", \"day\", \"2025-07-22\", \"actions-user: No activity today.\", \"2025-07-24T18:46:45.054Z\"]\n[\"ai16z-demirix_day_2025-07-21\", \"ai16z-demirix\", \"day\", \"2025-07-21\", \"ai16z-demirix: No activity today.\", \"2025-07-24T18:46:45.097Z\"]\n[\"cursoragent_day_2025-07-23\", \"cursoragent\", \"day\", \"2025-07-23\", \"cursoragent: No activity today.\", \"2025-07-24T18:46:45.170Z\"]\n[\"github-advanced-security_day_2025-07-23\", \"github-advanced-security\", \"day\", \"2025-07-23\", \"github-advanced-security: No activity today.\", \"2025-07-24T18:46:45.227Z\"]\n[\"claude[bot]_day_2025-07-22\", \"claude[bot]\", \"day\", \"2025-07-22\", \"claude[bot]: Focused on bugfix and feature work, modifying 24 files across 3 commits with a net change of +2 lines.\", \"2025-07-24T18:46:45.252Z\"]\n[\"david-dina_day_2025-07-24\", \"david-dina\", \"day\", \"2025-07-24\", \"david-dina: Focused on expanding provider support, opening a PR in elizaos-plugins/plugin-knowledge (#34) to add Ollama as a supported provider, and provided 3 comments on PRs.\", \"2025-07-24T18:46:45.316Z\"]\n[\"bealers_day_2025-07-22\", \"bealers\", \"day\", \"2025-07-22\", \"bealers: Modified 24 files with a net addition of 1791 lines in a single commit, indicating significant progress on an ongoing task.\", \"2025-07-24T18:46:45.346Z\"]\n[\"ChristopherTrimboli_day_2025-07-23\", \"ChristopherTrimboli\", \"day\", \"2025-07-23\", \"ChristopherTrimboli: Focused on documentation improvements, opening two PRs (elizaos-plugins/plugin-solana#12, elizaos-plugins/plugin-solana#11) to update the README with comprehensive documentation, reflecting a primary focus on docs work.\", \"2025-07-24T18:46:45.368Z\"]\n[\"META-DREAMER_day_2025-07-22\", \"META-DREAMER\", \"day\", \"2025-07-22\", \"META-DREAMER: Focused on optimizing workflow configurations, merging two pull requests in elizaos/elizaos.github.io, including a significant update to workflows for multi-repository compatibility in PR #146 (+404/-243 lines). Their work primarily involved changes to configuration and code, with a secondary focus on documentation.\", \"2025-07-24T18:46:45.370Z\"]\n[\"1BDO_day_2025-07-22\", \"1BDO\", \"day\", \"2025-07-22\", \"1BDO: Focused on issue resolution and communication today, creating and closing one issue (elizaos/eliza#5664) and providing comments on two others, indicating engagement in problem-solving and discussion.\", \"2025-07-24T18:46:45.430Z\"]\n[\"ChristopherTrimboli_day_2025-07-21\", \"ChristopherTrimboli\", \"day\", \"2025-07-21\", \"ChristopherTrimboli: Focused on adding post examples to the default Eliza character, merging elizaos/eliza#5652 (+41/-14 lines) and providing 3 reviews. Their work primarily involved modifying 99 files (+5289/-2982 lines) with a focus on documentation and code changes, encompassing other work, bug fixes, and refactoring.\", \"2025-07-24T18:46:45.452Z\"]\n[\"borisudovicic_day_2025-07-24\", \"borisudovicic\", \"day\", \"2025-07-24\", \"borisudovicic: Focused on planning and initiating new work, evidenced by the creation of issue elizaos/eliza#5676, \\\"Eddy - Devrel Agent Notes.\\\"\", \"2025-07-24T18:46:45.479Z\"]\n[\"cuongpo_day_2025-07-21\", \"cuongpo\", \"day\", \"2025-07-21\", \"cuongpo: Focused on expanding the plugin registry, merging one PR to add `plugin-coti` to the registry and opening another for `plugin-my`, primarily modifying configuration files.\", \"2025-07-24T18:46:45.508Z\"]\n[\"cursoragent_day_2025-07-21\", \"cursoragent\", \"day\", \"2025-07-21\", \"cursoragent: While there were no merged pull requests or issue interactions, cursoragent made 12 commits, modifying 15 files with a net change of +120 lines, primarily focusing on other work and bug fixes.\", \"2025-07-24T18:46:45.530Z\"]\n[\"0xbbjoker_day_2025-07-24\", \"0xbbjoker\", \"day\", \"2025-07-24\", \"0xbbjoker: Focused on optimizing the knowledge graph, opening a new feature PR in elizaos-plugins/plugin-knowledge (#35) and providing a PR comment.\", \"2025-07-24T18:46:45.558Z\"]\n[\"borisudovicic_day_2025-07-23\", \"borisudovicic\", \"day\", \"2025-07-23\", \"borisudovicic: Created an issue to improve documentation accessibility, specifically requesting a download option for the entire documentation on the new docs site (elizaos/eliza#5672).\", \"2025-07-24T18:46:45.574Z\"]\n[\"lalalune_day_2025-07-24\", \"lalalune\", \"day\", \"2025-07-24\", \"lalalune: Focused on identifying and addressing build issues, specifically by creating issue elizaos/eliza#5673 to track errors related to `pino-pretty` in export builds from Bun.\", \"2025-07-24T18:46:45.599Z\"]\n[\"ChristopherTrimboli_day_2025-07-24\", \"ChristopherTrimboli\", \"day\", \"2025-07-24\", \"ChristopherTrimboli: Focused on bugfix work, merging a PR in elizaos/eliza (#5675) that addressed missing gitignores in the plugin starter, and also opened a PR to add a new plugin to the registry. Their code changes primarily involved configuration files.\", \"2025-07-24T18:46:45.601Z\"]\n[\"github-advanced-security_day_2025-07-21\", \"github-advanced-security\", \"day\", \"2025-07-21\", \"github-advanced-security: No activity today.\", \"2025-07-24T18:46:45.635Z\"]\n[\"bealers_day_2025-07-23\", \"bealers\", \"day\", \"2025-07-23\", \"bealers: Focused on feature work, docs, and bug fixes, opening a significant new feature PR, elizaos/eliza#5670 \\\"feature/docker starter\\\", which involved modifying 48 files with substantial code changes (+3044/-930 lines). Their work primarily touched code, tests, config, and documentation files.\", \"2025-07-24T18:46:45.696Z\"]\n[\"odilitime_day_2025-07-22\", \"odilitime\", \"day\", \"2025-07-22\", \"odilitime: No activity today.\", \"2025-07-24T18:46:46.005Z\"]\n[\"david-dina_day_2025-07-21\", \"david-dina\", \"day\", \"2025-07-21\", \"david-dina: No activity today.\", \"2025-07-24T18:46:46.013Z\"]\n[\"cursoragent_day_2025-07-22\", \"cursoragent\", \"day\", \"2025-07-22\", \"cursoragent: Focused on tests and bug fixes, making 4 commits that modified 4 files with a net addition of 53 lines of code. Their work primarily involved tests (50%) and bug fixes (25%).\", \"2025-07-24T18:46:46.043Z\"]\n[\"wtfsayo_day_2025-07-23\", \"wtfsayo\", \"day\", \"2025-07-23\", \"wtfsayo: Focused on improving documentation, merging PR elizaos/eliza#5669 which added a development guide for agents, and also initiated a project-wide synchronization of the Zod version. Their work primarily involved documentation and other general tasks.\", \"2025-07-24T18:46:46.139Z\"]\n[\"sentdeed_day_2025-07-24\", \"sentdeed\", \"day\", \"2025-07-24\", \"sentdeed: Focused on bugfix work, specifically addressing a spelling error in elizaos/eliza via PR #5674.\", \"2025-07-24T18:46:46.288Z\"]\n[\"yungalgo_day_2025-07-22\", \"yungalgo\", \"day\", \"2025-07-22\", \"yungalgo: Modified 4 files with 3 commits, resulting in 47 additions and 43 deletions, and provided 2 PR comments, indicating engagement in other work.\", \"2025-07-24T18:46:46.314Z\"]\n[\"odilitime_day_2025-07-21\", \"odilitime\", \"day\", \"2025-07-21\", \"odilitime: Focused on bugfix work, making 3 commits that modified 3 files with a net change of +720/-499 lines.\", \"2025-07-24T18:46:46.377Z\"]\n[\"microgift_day_2025-07-24\", \"microgift\", \"day\", \"2025-07-24\", \"microgift: Focused on foundational planning for a new smart contract, evidenced by the creation of issue elizaos/auto.fun#521 \\\"autofun smart contract\\\".\", \"2025-07-24T18:46:46.379Z\"]\n[\"linear_day_2025-07-21\", \"linear\", \"day\", \"2025-07-21\", \"linear: Focused on identifying and documenting potential work, creating 15 issues, including two closed issues related to `elizaos create` and `elizaos publish` commands, and 13 open issues primarily for documentation and plugin development.\", \"2025-07-24T18:46:46.434Z\"]\n[\"linear_day_2025-07-22\", \"linear\", \"day\", \"2025-07-22\", \"linear: Focused on strategic planning and documentation, creating five issues including a comprehensive documentation review (elizaos/eliza#5665) and three issues outlining video production for \\\"Your First Agent\\\" series (elizaos/eliza#5668, elizaos/eliza#5667, elizaos/eliza#5666), while also closing one issue.\", \"2025-07-24T18:46:46.461Z\"]\n[\"standujar_day_2025-07-21\", \"standujar\", \"day\", \"2025-07-21\", \"standujar: Focused on enhancing logging capabilities, opening PR elizaos/eliza#5659 \\\"feat: enhance-logging-rebased\\\" and modifying 80 files with 13 commits, primarily contributing to other work, bugfixes, tests, and refactoring across tests, code, and documentation.\", \"2025-07-24T18:46:46.641Z\"]\n[\"wtfsayo_day_2025-07-21\", \"wtfsayo\", \"day\", \"2025-07-21\", \"wtfsayo: Focused on critical documentation and development environment stability, merging a significant PR to clarify ElizaOS components in `CLAUDE.md` (elizaos/eliza#5642) and fixing CLI dev command test failures (elizaos/eliza#5641). Their work primarily involved other work, bug fixes, refactoring, and documentation.\", \"2025-07-24T18:46:46.675Z\"]\n[\"wtfsayo_day_2025-07-22\", \"wtfsayo\", \"day\", \"2025-07-22\", \"wtfsayo: Focused on foundational improvements within the `elizaos/eliza` repository, merging four PRs that addressed model parameter validation, dataset path correction, prompt escaping, and undefined model use restoration, demonstrating a commitment to core system stability. Their work involved substantial code changes across 250 files, with an even split between code and tests, indicating a thorough approach to development and quality assurance.\", \"2025-07-24T18:46:46.730Z\"]\n[\"yungalgo_day_2025-07-21\", \"yungalgo\", \"day\", \"2025-07-21\", \"yungalgo: Focused on an open PR, elizaos/eliza#5658, to update a dependency, contributing 6 commits with changes across 16 files, primarily in configuration and code.\", \"2025-07-24T18:46:47.032Z\"]"
  ]
}