{
  "prompt_name": "discord-announcement",
  "category": "comms",
  "date": "2025-12-12",
  "generated_text": "# \ud83d\ude80 ElizaOS Weekly Update (Dec 6-12, 2025)\n\n**Stan just fixed critical monorepo issues while the team tackles token migration challenges for Korean users!**\n\n## \ud83d\udee0\ufe0f Technical Highlights\n\u2022 **Core Development Progress** - Stan unblocked the team by fixing critical issues in the monorepo (PR #6218) that restored build functionality after Shaw's code cleanup work broke types and tests \n\u2022 **Performance Optimization** - The team is investigating PGLite performance degradation in swarm environments, with response times jumping from 10ms to 900ms\n\u2022 **Database Integration** - PostgreSQL is now recommended over PGLite for stable connections, with automatic table creation during migration\n\u2022 **Security Attention** - Recent fixes for exposing secrets in settings were implemented, alongside React security vulnerability patches\n\n## \ud83d\udcac Community Highlights\n\u2022 The TypeScript fix PR resolves build issues and SQL errors with the Twitter plugin\n\u2022 Users can now use DeepSeek API keys with the OpenAI plugin by replacing endpoint URLs\n\u2022 Several community members have helped others navigate token migration from various wallets\n\n## \ud83e\ude99 Token & Project Updates\n\u2022 Korean users on Bithumb exchange are experiencing significant migration issues, with the team working to find solutions\n\u2022 The Babylon project will be launching as a web browser game rather than requiring local installation\n\u2022 The Babylon repository has moved to a new GitHub location: https://github.com/BabylonSocial/babylon\n\n## \ud83d\udd2e Coming Next\nWe're continuing to prioritize cloud-side streaming work and 402x integration with Odi's PRs. The team is also working to resolve the token migration issues for Korean users and improve documentation for wallet migration processes.\n\nHappy building, ElizaOS community! \ud83c\udf31",
  "source_references": [
    "2025-12-12\n---\n2025-12-11.md\n---\n# elizaOS Discord - 2025-12-11\n\n## Overall Discussion Highlights\n\n### Token Migration Issues\n- Korean users are experiencing significant problems with the ELIZA token migration on Bithumb exchange\n- Team members (jasyn_bjorn and Odilitime) acknowledged the issue but indicated they're waiting on Bithumb\n- Users expressed frustration about the continuous price decline of ELIZA\n- Some users questioned whether migrated AI16Z tokens were sold instead of burned\n- Team shared the migrator wallet link to demonstrate transparency\n\n### Development Progress\n- Stan fixed critical issues in the monorepo (PR #6218) after Shaw's cleanup work broke types, tests, and try/catch blocks\n- Log retrieval over WebSocket was fixed after it was falling back to HTTP following pino removal\n- Odilitime reported performance issues with pglite in their swarm environment (response times increasing from 10ms to 900ms)\n- The Babylon repository has moved to a new GitHub location: https://github.com/BabylonSocial/babylon\n- Babylon will be launching as a web browser game rather than requiring local installation\n\n### Technical Integrations\n- Users discussed connecting ElizaOS to different databases (PGLite vs PostgreSQL)\n- A fix for TypeScript build issues in the latest ElizaOS version resolves SQL errors with the Twitter plugin\n- Guidance was provided on using DeepSeek API keys with OpenRouter and the OpenAI plugin\n- Database migration was clarified - tables are created automatically during migration\n- The ElizaOS client build size was discussed, with large JavaScript files for syntax highlighting and mermaid charts (2.6MB minified)\n\n## Key Questions & Answers\n\n**Q: Is Babylon launching as a web browser game or requiring local installation?**  \nA: Web browser game (answered by Odilitime)\n\n**Q: Are there plans to support migration for Bithumb users who held tokens before the snapshot?**  \nA: We're working on a solution with them; if you had tokens before November 11th you'll be fine (answered by jasyn_bjorn)\n\n**Q: How can I migrate my AI16Z tokens from SafePal wallet?**  \nA: Just import your Safepal into phantom or any Solana wallet and migrate (answered by Hexx \ud83c\udf10)\n\n**Q: What would be the correct way to declare the deepsek key in my.env file so that it can be detected?**  \nA: OpenRouter provides DeepSeek as a model; you need an OpenRouter key, not a DeepSeek key (answered by sayonara)\n\n**Q: I don't have tokens in OpenRouter, but I do have tokens in DeepSeek, is it possible to connect?**  \nA: If you have a DeepSeek key, you can use that with the OpenAI plugin by replacing the endpoint URL. Check here: https://github.com/elizaos-plugins/plugin-openai (answered by sayonara)\n\n**Q: Or is it that when you do the migrations, the tables are already created by default?**  \nA: Yes (answered by sayonara)\n\n**Q: Did Babylon repo move?**  \nA: Yes, it's now at: https://github.com/BabylonSocial/babylon (answered by Odilitime)\n\n## Community Help & Collaboration\n\n- **Hexx \ud83c\udf10** helped **StillLait** migrate AI16Z tokens from SafePal wallet by advising them to import SafePal into Phantom or any Solana wallet\n- **Hexx \ud83c\udf10** identified scammers targeting **StillLait** and warned them to block and report the scammers\n- **Redvoid** informed the community about a TypeScript fix PR that resolves build issues and SQL errors with the Twitter plugin\n- **sayonara** helped **FenrirFawks** with database connection issues by suggesting PostgreSQL instead of PGLite\n- **sayonara** guided **LordWeb3** on using DeepSeek API keys with the OpenAI plugin\n- **sayonara** alerted **LordWeb3** about exposing database secrets in a screenshot and helped delete it\n- **Stan \u26a1** fixed broken monorepo issues after Shaw's cleanup work, restoring build functionality for the team\n\n## Action Items\n\n### Technical\n- Merge PR #6218 to fix broken monorepo issues (mentioned by Stan \u26a1)\n- Rebase all open PRs after merging #6218 (mentioned by Stan \u26a1)\n- Continue cloud-side streaming work (mentioned by Stan \u26a1)\n- Work on 402x with Odi's PRs (mentioned by Stan \u26a1)\n- Verify alignment with updated test architecture (mentioned by Stan \u26a1)\n- Consider optimization for mermaid charts (2.6MB minified) (mentioned by Odilitime)\n- Investigate pglite performance issues (900ms vs normal 10ms) (mentioned by Odilitime)\n- Update React due to new security vulnerabilities (mentioned by jin)\n- Resolve migration issues with Bithumb exchange for Korean users (mentioned by syanel4859)\n- Check TypeScript fix PR to resolve build issues in latest ElizaOS version (mentioned by Redvoid)\n- Fix SQL errors users were facing with plugin-twitter (mentioned by Redvoid)\n- Try PostgreSQL instead of PGLite when experiencing database connection issues (mentioned by sayonara)\n- Use DeepSeek API key with OpenAI plugin by replacing endpoint URL (mentioned by sayonara)\n- Improve verification process for migration support to prevent scams (mentioned by StillLait)\n\n### Documentation\n- Provide clear updates on Bithumb migration progress for Korean users (mentioned by syanel4859)\n- Clarify what happened to the 1.1 billion AI16Z token supply during migration (mentioned by averma)\n- Create clearer instructions for migrating from SafePal and other wallets (mentioned by StillLait)\n---\n2025-12-10.md\n---\n# elizaOS Discord - 2025-12-10\n\n## Overall Discussion Highlights\n\n### Security Vulnerabilities\n- **Critical security issue discovered**: Jin conducted a security audit using Claude skills and found that the server doesn't require ELIZA_SERVER_AUTH_TOKEN, allowing attackers to extract secrets via API endpoints.\n- The vulnerability stems from process.env being dumped into unencrypted settings instead of encrypted settings.secrets.\n- Stan identified that the issue was introduced in version 1.6.4 and fixed in 1.6.5-alpha.8 via commit a1941c6.\n- Additional vulnerabilities were found in the current monorepo that still need fixing.\n- The team discussed making authentication mandatory by default with explicit opt-out for development environments.\n\n### Plugin Issues\n- Multiple users reported foreign key constraint errors with plugin-sql and plugin-twitter components, particularly when creating memories.\n- Stan is working on a fix and migration guide for these database issues.\n- A user reported issues with the Twitter plugin not processing replies properly, showing \"No text content in response, skipping tweet reply\" for every reply.\n\n### Cross-Chain Development\n- Shaw mentioned deploying Jeju testnet with cross-chain liquidity pools (xlp) that allow using elizaOS tokens as gas across multiple chains (Base, BSC, OP, Arb, ETH) without bridging.\n\n### LLM Integration\n- Discussion about integrating Perplexity's Sonar-Pro LLM through plugin-openai or plugin-openrouter by adjusting environment variables.\n\n### Cryptocurrency APIs\n- Users discussed API options for cryptocurrency data, including Dexscreener, CoinGecko, DeFiLlama, and Codex.\n\n### Marketing & Partnerships\n- Analysis of Polymarket's marketing strategy using a 50 Cent song, targeting sports bettors and users who might identify with government scrutiny.\n\n## Key Questions & Answers\n\n### Security\n**Q**: How can the security vulnerability in elizaOS be exploited?  \n**A**: By accessing API endpoints without authentication to extract secrets - curl commands can dump all agent secrets (answered by jin)\n\n**Q**: When was the security bug introduced and fixed?  \n**A**: Introduced in 1.6.4 and fixed in 1.6.5-alpha.8 (answered by Stan \u26a1)\n\n**Q**: Should SECRET_SALT and AUTH_TOKEN be mandatory at startup?  \n**A**: In production, if salt is blank, it should throw an error (answered by Odilitime)\n\n### Development\n**Q**: Are there good API alternatives to Dexscreener for cryptocurrency data?  \n**A**: CoinGecko, DeFiLlama, and Codex are options depending on budget, with many having public endpoints (answered by jin)\n\n**Q**: How can I fix the foreign key constraint error with plugin-sql and plugin-twitter?  \n**A**: Stan is working on a fix and migration guide (answered by sayonara)\n\n**Q**: Where can I find the plugin-sql implementation?  \n**A**: It's available at https://github.com/elizaOS/eliza/tree/develop/packages/plugin-sql (answered by Stan \u26a1)\n\n**Q**: How can I use Perplexity Sonar-Pro as my LLM?  \n**A**: Use plugin-openai or plugin-openrouter and change the environment variables to point to Perplexity's server (answered by Odilitime)\n\n### Token Migration\n**Q**: How to officially exchange the ai16z token purchased before the 11th?  \n**A**: Check <#1425417640071139358> (answered by MDMnvest)\n\n## Community Help & Collaboration\n\n### Security Audit Collaboration\n- Jin provided reproduction steps for the security vulnerability and recommended making authentication mandatory by default\n- Stan identified when/where encryption of secrets was broken, pinpointing the issue to commit a1941c6 and version 1.6.5-alpha.8\n- Jin suggested using Claude for code security reviews and shared his approach with shaw\n\n### Plugin Troubleshooting\n- sayonara informed soyrubio that Stan is working on a fix and migration guide for foreign key constraint errors\n- Stan provided GitHub link to the plugin-sql repository when soyrubio was looking for the source code\n- Odilitime explained how to use plugin-openai or plugin-openrouter with modified environment variables to integrate Perplexity Sonar-Pro\n- sayonara advised Redvoid to take a database backup before attempting fixes and mentioned reverting to v1.6.4 with SQL fixes\n\n### Token Migration Support\n- MDMnvest directed \uac70\ubd81\uc54c to the appropriate channel for migration support after Bithumb delisting notice\n- Kenk suggested asking in the dedicated migration support channel when roly22389 mentioned an unspecified migration issue\n\n## Action Items\n\n### Technical\n- Fix security vulnerability where process.env is exposed in unencrypted settings (mentioned by sayonara)\n- Make ELIZA_SERVER_AUTH_TOKEN mandatory by default with explicit opt-out for development (mentioned by jin)\n- Remove sensitive data from /agent/ endpoint and move to system environment (mentioned by Stan \u26a1)\n- Conduct security audit of Babylon (mentioned by jin)\n- Implement 24/7 red team application for network security (mentioned by shaw)\n- Fix vulnerability in current monorepo where secrets are still exposed (mentioned by sayonara)\n- Fix foreign key constraint issues in plugin-sql affecting memories table (mentioned by Stan \u26a1)\n- Create migration guide for plugin-sql database issues (mentioned by Stan \u26a1)\n- Fix Twitter plugin issue with reply processing (mentioned by Nico)\n- Implement fix for plugin-sql (mentioned by Redvoid)\n\n### Feature\n- Implement cross-chain liquidity pools (xlp) that work without bridging tokens (mentioned by shaw)\n- Benchmark analytics dashboard for crypto AI infrastructure and agents (mentioned by satsbased)\n\n### Documentation\n- Document security best practices for elizaOS deployment (mentioned by jin)\n- Update documentation for plugin-sql fixes (mentioned by Stan \u26a1)\n---\n2025-12-09.md\n---\n# elizaOS Discord - 2025-12-09\n\n## Overall Discussion Highlights\n\n### Token Migration & Ecosystem\n- The migration from AI16Z to ElizaOS token has caused significant community frustration\n- Users expressed concerns about the sudden snapshot that caught many holders off-guard\n- Token price has been declining despite broader crypto market strength\n- Supply increased from 6.6B to 11B tokens (~40% increase), with 13% immediately entering circulation and 27% on a 3-year unlock schedule\n- Kraken exchange migration status remains unclear, with users requesting updates\n\n### Project Development Status\n- **ElizaOS Cloud**: Originally promised for November, still in development with no specific launch date\n- **Babylon**: Project focused on autonomous agents with 275K registrations, but no launch date announced\n- **Jeju**: Upcoming integration of cloud services with payment infrastructure and Ethereum interoperability\n- Home automation technology for elizaOS has been developed by Neo\n\n### Technical Discussions\n- Large PR (#6213) submitted to clean up code quality issues, including type fixes, test additions, and removing unnecessary try/catch blocks\n- Claude Opus 4.5 being used for code cleanup tasks despite higher costs\n- Discussion about alternative data formats (TOON and POML) vs. traditional formats like JSON/XML\n- Technical issue identified where calling composeState from within an action's validator causes infinite loops\n- Monetization options for private LLM models using x402 and Ollama\n- ROFL (Rust Optimized Fast Ledger) mentioned as potential technology for payment verification\n- Alchemy.com recommended as a fast solution for off-chain data with a generous free tier\n\n### Agent Limitations\n- Current agent system lacks composability\n- No guaranteed 24/7 uptime (unlike smart contracts)\n- Uncertain long-term accessibility of agents\n- Twitter posting functionality described as \"convoluted\" with unclear settings\n\n### Philosophical Discussion\n- AI governance compared to Hobbes' Leviathan concept\n- Discussion of AI as a potential alternative to state power for community governance\n- Concept of an AI agent that monitors food consumption through fridge cameras and smart scales\n\n## Key Questions & Answers\n\n**Q: What about ElizaOS cloud launch - it was supposed to launch by EOD November - we are in December?**  \nA: \"We're busy working on it, I think devs will really like it\" (Odilitime)\n\n**Q: Using Eliza for Twitter now is so convoluted... like I have all these settings and it's still not posting, what's preventing it?**  \nA: \"I'll fix right now\" (jin)\n\n**Q: When is Babylon launching? Already 275K registered and still no signs.**  \nA: \"It's going really well - you saw it introduced about two weeks ago. If we had announced when it will be launching, you'd know about it\" (Kenk)\n\n**Q: How can I get airdrops of $BABYLON token? I'm holding $ElizaOS on exchange**  \nA: \"Probably better to move to your own wallet tbh\" (DorianD)\n\n**Q: Where can I see the plugins? Is there a Telegram plugin?**  \nA: \"Yes, there is a Telegram plugin at github.com/elizaos-plugins/plugin-telegram\" (0xbbjoker)\n\n**Q: What's wrong with try/catches?**  \nA: \"They're 'a very common slop' - cursor is overzealous with them\" (shaw)\n\n**Q: Do you think you just waste time if you're not using opus?**  \nA: \"Now that opus 4.5 costs the same as sonnet 4.5, yes. Shaw uses composer for easy fast stuff\" (shaw)\n\n**Q: Payment infra? We doing a moonpay clone?**  \nA: \"x402 and ethereum interop layer\" (shaw)\n\n## Community Help & Collaboration\n\n1. **Twitter Functionality Fix**\n   - User SecretRecipe complained about Twitter posting functionality being convoluted\n   - Jin offered to fix the issue immediately\n\n2. **Token Migration Support**\n   - User Garush needed help importing AI16z tokens\n   - MDMnvest directed them to the migration support channel\n\n3. **Wallet Security Advice**\n   - User \ud835\udde3\ud835\udde5\ud835\udddc\ud835\udde1\ud835\uddd6\ud835\uddd8 asked about getting BABYLON airdrops while holding ELIZAOS on an exchange\n   - DorianD suggested moving tokens to a personal wallet and recommended hardware wallets like Ledger or Keystone\n\n4. **Plugin Information**\n   - User H\u25b3RDSHELL was looking for the Telegram plugin for ElizaOS\n   - 0xbbjoker provided the GitHub repository link for the Telegram plugin\n\n5. **Code Quality Improvement**\n   - Shaw created PR #6213 with type fixes, tests, comment improvements, and try/catch removals to address codebase quality issues\n\n## Action Items\n\n### Technical\n- Fix Twitter posting functionality in Eliza (mentioned by SecretRecipe)\n- Complete ElizaOS Cloud platform development (mentioned by averma)\n- Improve agent composability (mentioned by DorianD)\n- Address uptime guarantees for agents (mentioned by DorianD)\n- Ensure agent accessibility/availability (mentioned by DorianD)\n- Review and potentially merge PR #6213 for codebase cleanup (mentioned by shaw)\n- Be careful when calling composeState from inside an action's validator to avoid infinite loops (mentioned by Odilitime)\n- Transition to \"jeju\" with cloud integration, payment infrastructure, and Ethereum interoperability (mentioned by shaw)\n- Consider JSON5 over JSON for better flexibility (mentioned by Odilitime)\n- Consider implementing a payment verification system for ElizaOS inference processing using x402 (mentioned by DorianD)\n- Review and respond to pull request #240 in the ElizaOS plugins registry (mentioned by Stepz)\n\n### Documentation\n- Publish documentation on the ecosystem (mentioned by DorianD)\n- Provide clear communication on Kraken migration status (mentioned by Will123)\n- Document the plugin-memory upgrade suggestion (mentioned by Odilitime)\n\n### Feature\n- Launch Babylon project (mentioned by joaz0502)\n- Implement \"clean-my-wallet\" functionality to sell all meme coins in one transaction (mentioned by cjft)\n- Home automation AI system with camera and smart scale integration for monitoring food consumption (mentioned by DorianD)\n---\n2025-12-11.json\n---\nFile not found\n---\n2025-12-11.md\n---\nFile not found\n---\n2025-12-11.json\n---\nelizaOS\n---\nelizaOS Discord - 2025-12-11\n---\n1253563209462448241\n---\n\ud83d\udcac-discussion\n---\n# Discord Chat Analysis\n\n## 1. Summary\nThe chat primarily revolves around issues with the ELIZA token migration, particularly focusing on problems with the Bithumb exchange in Korea. Korean users express frustration about being unable to migrate their AI16Z tokens to ELIZA, with Bithumb apparently delaying the process. Team members (jasyn_bjorn and Odilitime) respond that they're working on a solution but that \"hands are tied\" as they wait for Bithumb. There's significant concern about the continuous price decline of ELIZA, with some users questioning whether the team sold migrated AI16Z tokens instead of burning them. The team defends their migration process, sharing a link to the migrator wallet, but some users remain skeptical about the handling of the 1.1 billion token supply. Several users also ask about how to migrate their tokens from various wallets, with concerns about scammers sending DMs pretending to offer migration support. The overall sentiment shows frustration with the migration process, price decline, and perceived lack of transparency.\n\n## 2. FAQ\nQ: Is Babylon launching as a web browser game or requiring local installation? (asked by Omid Sa) A: Web browser game (answered by Odilitime)\nQ: Are there plans to support migration for Bithumb users who held tokens before the snapshot? (asked by \uac70\ubd81\uc54c) A: We're working on a solution with them; if you had tokens before November 11th you'll be fine (answered by jasyn_bjorn)\nQ: How long do Koreans have to wait for the Bithumb migration? (asked by syanel4859) A: I wish I knew (answered by Odilitime)\nQ: Does this mean only the quantity before the 11th will be swapped and Bithumb is refusing? (asked by syanel4859) A: I don't know (answered by Odilitime)\nQ: When is the migration going to end? (asked by Alexei) A: Unanswered\nQ: How can I migrate my AI16Z tokens from SafePal wallet? (asked by StillLait) A: Just import your Safepal into phantom or any Solana wallet and migrate (answered by Hexx \ud83c\udf10)\nQ: Why were the old tokens not burned? (asked by averma) A: Unanswered\nQ: Why does ELIZA keep dumping every day? (asked by \uac70\ubd81\uc54c) A: Unanswered\n\n## 3. Help Interactions\nHelper: Hexx \ud83c\udf10 | Helpee: StillLait | Context: User asking how to migrate AI16Z tokens from SafePal wallet | Resolution: Advised to import SafePal into Phantom or any Solana wallet and then migrate\nHelper: Hexx \ud83c\udf10 | Helpee: StillLait | Context: User being targeted by scammers posing as support | Resolution: Identified scammers and warned user to block and report them\nHelper: Kenk | Helpee: Ejczenes71 | Context: User unable to post in migration channel | Resolution: Directed user to verify first\nHelper: jasyn_bjorn | Helpee: StillLait | Context: User repeatedly asking how to swap AI16Z from SafePal | Resolution: Directed user to appropriate migration channels\n\n## 4. Action Items\nType: Technical | Description: Resolve migration issues with Bithumb exchange for Korean users | Mentioned By: syanel4859\nType: Documentation | Description: Provide clear updates on Bithumb migration progress for Korean users | Mentioned By: syanel4859\nType: Documentation | Description: Clarify what happened to the 1.1 billion AI16Z token supply during migration | Mentioned By: averma\nType: Technical | Description: Improve verification process for migration support to prevent scams | Mentioned By: StillLait\nType: Documentation | Description: Create clearer instructions for migrating from SafePal and other wallets | Mentioned By: StillLait\n---\n1300025221834739744\n---\n\ud83d\udcac-coders\n---\n# Discord Chat Analysis for \ud83d\udcac-coders\n\n## 1. Summary:\nThe chat primarily focused on ElizaOS deployment issues and integrations. Users discussed connecting ElizaOS to different databases (PGLite vs PostgreSQL), with several experiencing connection problems. There was significant discussion about API integrations, particularly with Twitter and language models like DeepSeek. A user mentioned a fix for TypeScript build issues in the latest ElizaOS version that resolves SQL errors with the Twitter plugin. Database migration was also discussed, with clarification that tables are created automatically during migration. Additionally, there was discussion about using DeepSeek API keys with OpenRouter, with guidance provided on how to use DeepSeek keys with the OpenAI plugin by modifying endpoint URLs.\n\n## 2. FAQ:\nQ: Is there anyway to access agent runtime after agent created through /api/agents api endpoint? (asked by velsaria) A: Unanswered\nQ: What would be the correct way to declare the deepsek key in my.env file so that it can be detected? (asked by LordWeb3) A: openrouter provides deepseek as model; you need open router key not deep seek key (answered by sayonara)\nQ: I don't have tokens in openrouter, but I do have tokens in deepsek, is it possible to connect? (asked by LordWeb3) A: but if you have deepseek key you can use that with openai plugin by replacing endpoint url on openai plugin check here https://github.com/elizaos-plugins/plugin-openai (answered by sayonara)\nQ: Or is it that when you do the migrations, the tables are already created by default (asked by LordWeb3) A: yea (answered by sayonara)\nQ: Once the database is connected, what are the tables I have to create? (asked by LordWeb3) A: Unanswered\n\n## 3. Help Interactions:\nHelper: Redvoid | Helpee: Community | Context: Users facing build issues with latest ElizaOS version | Resolution: Mentioned TypeScript fix PR that resolves build issues and SQL errors with plugin-twitter\nHelper: sayonara | Helpee: FenrirFawks | Context: Issues connecting to database in ElizaOS | Resolution: Suggested using PostgreSQL instead of PGLite and provided instructions for adding PostgreSQL URL to .env file\nHelper: sayonara | Helpee: LordWeb3 | Context: Using DeepSeek API key with ElizaOS | Resolution: Explained how to use DeepSeek key with OpenAI plugin by replacing endpoint URL\nHelper: sayonara | Helpee: LordWeb3 | Context: Exposed database secret in screenshot | Resolution: Alerted user and deleted screenshot to protect sensitive information\n\n## 4. Action Items:\nType: Technical | Description: Check TypeScript fix PR to resolve build issues in latest ElizaOS version | Mentioned By: Redvoid\nType: Technical | Description: Fix SQL errors users were facing with plugin-twitter | Mentioned By: Redvoid\nType: Technical | Description: Try PostgreSQL instead of PGLite when experiencing database connection issues | Mentioned By: sayonara\nType: Technical | Description: Use DeepSeek API key with OpenAI plugin by replacing endpoint URL | Mentioned By: sayonara\nType: Technical | Description: Update React based on new release announcement | Mentioned By: jin\n---\n1377726087789940836\n---\ncore-devs\n---\n# Discord Chat Analysis for \"core-devs\" Channel\n\n## 1. Summary:\nThe chat primarily revolves around ongoing development work on the ElizaOS project. Stan reported fixing critical issues in the monorepo following Shaw's cleanup work, which had broken types, tests, and missing try/catch blocks. Stan's PR #6218 was ready to merge, which would unblock other PRs. Stan also fixed log retrieval over WebSocket that was falling back to HTTP after pino removal. There was discussion about the size of the ElizaOS client build, with Odilitime noting large JavaScript files for syntax highlighting and mermaid charts (2.6MB minified). Odilitime reported performance issues with pglite in their swarm environment, with response times increasing from 10ms to 900ms, potentially due to data volume or I/O contention. Jin shared information about the Strix project and noted React security vulnerabilities. The Babylon repository location was confirmed to have moved to a new GitHub location.\n\n## 2. FAQ:\nQ: How complete is elizaos client? (asked by Odilitime) A: \"a bit too complete actually\" (answered by Stan \u26a1)\nQ: Did babylon repo move? (asked by jin) A: \"yea looks like it's here now: https://github.com/BabylonSocial/babylon\" (answered by Odilitime)\n\n## 3. Help Interactions:\nHelper: Stan \u26a1 | Helpee: Team | Context: Broken monorepo after Shaw's cleanup | Resolution: Fixed types, tests, and missing try/catch blocks, restored build functionality\nHelper: Odilitime | Helpee: jin | Context: Looking for Babylon repository's new location | Resolution: Provided the new GitHub URL\n\n## 4. Action Items:\nType: Technical | Description: Merge PR #6218 to fix broken monorepo issues | Mentioned By: Stan \u26a1\nType: Technical | Description: Rebase all open PRs after merging #6218 | Mentioned By: Stan \u26a1\nType: Technical | Description: Continue cloud-side streaming work | Mentioned By: Stan \u26a1\nType: Technical | Description: Work on 402x with Odi's PRs | Mentioned By: Stan \u26a1\nType: Technical | Description: Verify alignment with updated test architecture | Mentioned By: Stan \u26a1\nType: Technical | Description: Consider optimization for mermaid charts (2.6MB minified) | Mentioned By: Odilitime\nType: Technical | Description: Investigate pglite performance issues (900ms vs normal 10ms) | Mentioned By: Odilitime\nType: Technical | Description: Update React due to new security vulnerabilities | Mentioned By: jin\n---\n2025-12-11.md\n---\n# elizaOS Discord - 2025-12-11\n\n## Overall Discussion Highlights\n\n### Token Migration Issues\n- Korean users are experiencing significant problems with the ELIZA token migration on Bithumb exchange\n- Team members (jasyn_bjorn and Odilitime) acknowledged the issue but indicated they're waiting on Bithumb\n- Users expressed frustration about the continuous price decline of ELIZA\n- Some users questioned whether migrated AI16Z tokens were sold instead of burned\n- Team shared the migrator wallet link to demonstrate transparency\n\n### Development Progress\n- Stan fixed critical issues in the monorepo (PR #6218) after Shaw's cleanup work broke types, tests, and try/catch blocks\n- Log retrieval over WebSocket was fixed after it was falling back to HTTP following pino removal\n- Odilitime reported performance issues with pglite in their swarm environment (response times increasing from 10ms to 900ms)\n- The Babylon repository has moved to a new GitHub location: https://github.com/BabylonSocial/babylon\n- Babylon will be launching as a web browser game rather than requiring local installation\n\n### Technical Integrations\n- Users discussed connecting ElizaOS to different databases (PGLite vs PostgreSQL)\n- A fix for TypeScript build issues in the latest ElizaOS version resolves SQL errors with the Twitter plugin\n- Guidance was provided on using DeepSeek API keys with OpenRouter and the OpenAI plugin\n- Database migration was clarified - tables are created automatically during migration\n- The ElizaOS client build size was discussed, with large JavaScript files for syntax highlighting and mermaid charts (2.6MB minified)\n\n## Key Questions & Answers\n\n**Q: Is Babylon launching as a web browser game or requiring local installation?**  \nA: Web browser game (answered by Odilitime)\n\n**Q: Are there plans to support migration for Bithumb users who held tokens before the snapshot?**  \nA: We're working on a solution with them; if you had tokens before November 11th you'll be fine (answered by jasyn_bjorn)\n\n**Q: How can I migrate my AI16Z tokens from SafePal wallet?**  \nA: Just import your Safepal into phantom or any Solana wallet and migrate (answered by Hexx \ud83c\udf10)\n\n**Q: What would be the correct way to declare the deepsek key in my.env file so that it can be detected?**  \nA: OpenRouter provides DeepSeek as a model; you need an OpenRouter key, not a DeepSeek key (answered by sayonara)\n\n**Q: I don't have tokens in OpenRouter, but I do have tokens in DeepSeek, is it possible to connect?**  \nA: If you have a DeepSeek key, you can use that with the OpenAI plugin by replacing the endpoint URL. Check here: https://github.com/elizaos-plugins/plugin-openai (answered by sayonara)\n\n**Q: Or is it that when you do the migrations, the tables are already created by default?**  \nA: Yes (answered by sayonara)\n\n**Q: Did Babylon repo move?**  \nA: Yes, it's now at: https://github.com/BabylonSocial/babylon (answered by Odilitime)\n\n## Community Help & Collaboration\n\n- **Hexx \ud83c\udf10** helped **StillLait** migrate AI16Z tokens from SafePal wallet by advising them to import SafePal into Phantom or any Solana wallet\n- **Hexx \ud83c\udf10** identified scammers targeting **StillLait** and warned them to block and report the scammers\n- **Redvoid** informed the community about a TypeScript fix PR that resolves build issues and SQL errors with the Twitter plugin\n- **sayonara** helped **FenrirFawks** with database connection issues by suggesting PostgreSQL instead of PGLite\n- **sayonara** guided **LordWeb3** on using DeepSeek API keys with the OpenAI plugin\n- **sayonara** alerted **LordWeb3** about exposing database secrets in a screenshot and helped delete it\n- **Stan \u26a1** fixed broken monorepo issues after Shaw's cleanup work, restoring build functionality for the team\n\n## Action Items\n\n### Technical\n- Merge PR #6218 to fix broken monorepo issues (mentioned by Stan \u26a1)\n- Rebase all open PRs after merging #6218 (mentioned by Stan \u26a1)\n- Continue cloud-side streaming work (mentioned by Stan \u26a1)\n- Work on 402x with Odi's PRs (mentioned by Stan \u26a1)\n- Verify alignment with updated test architecture (mentioned by Stan \u26a1)\n- Consider optimization for mermaid charts (2.6MB minified) (mentioned by Odilitime)\n- Investigate pglite performance issues (900ms vs normal 10ms) (mentioned by Odilitime)\n- Update React due to new security vulnerabilities (mentioned by jin)\n- Resolve migration issues with Bithumb exchange for Korean users (mentioned by syanel4859)\n- Check TypeScript fix PR to resolve build issues in latest ElizaOS version (mentioned by Redvoid)\n- Fix SQL errors users were facing with plugin-twitter (mentioned by Redvoid)\n- Try PostgreSQL instead of PGLite when experiencing database connection issues (mentioned by sayonara)\n- Use DeepSeek API key with OpenAI plugin by replacing endpoint URL (mentioned by sayonara)\n- Improve verification process for migration support to prevent scams (mentioned by StillLait)\n\n### Documentation\n- Provide clear updates on Bithumb migration progress for Korean users (mentioned by syanel4859)\n- Clarify what happened to the 1.1 billion AI16Z token supply during migration (mentioned by averma)\n- Create clearer instructions for migrating from SafePal and other wallets (mentioned by StillLait)\n---\n2025-12-12.md\n---\nFile not found\n---\n2025-11-30.md\n---\n# elizaos/eliza Weekly Report (Nov 30 - 6, 2025)\n\n## \ud83d\ude80 Highlights\nThis week was characterized by a significant push for stabilization and code quality, followed by the introduction of new foundational features. Development focused on major refactoring efforts to standardize logging and optimize the server architecture. A large number of UI/UX issues were resolved, leading to a cleaner and more reliable user experience. The week concluded with proposals for a unified serverless API and robust JWT authentication, signaling a shift towards building out the next layer of core services.\n\n## \ud83d\udee0\ufe0f Key Developments\nWork this week centered on improving the existing codebase through refactoring, bug fixes, and stabilization.\n\n- **Core Component Refactoring & Stabilization**\n  - A major refactor was completed to standardize logging across the Core, CLI, and Server components, improving observability and resolving technical debt ([#6169]).\n  - The server underwent a significant optimization and reorganization effort to improve its structure and performance ([#6199]).\n  - A necessary rollback was performed on the `plugin-sql` package to revert problematic build configuration changes ([#6194]).\n\n- **Client UI Bug Fixes**\n  - The user-facing client was improved with fixes to markdown rendering. These changes addressed excessive vertical spacing in AI-generated responses, particularly around headings and blockquotes, for better visual consistency ([#6159], [#6197]).\n\n- **New Foundational Features (In Progress)**\n  - Work began on two significant backend features with new pull requests for a unified serverless API ([#6201]) and a comprehensive JWT authentication and user management system ([#6200]).\n\n## \ud83d\udc1b Issues & Triage\nIssue management focused on closing out a wide range of bugs and UI/UX improvements, while new issues point toward future platform expansion.\n\n- **Closed Issues:**\n  - **UI/UX & Stability:** A large batch of issues was closed to enhance the user experience and platform stability. This included simplifying the UI by cleaning up the sidebar and removing \"Quick Presets\" ([#6174], [#6176], [#6179]), improving server reliability by addressing connection timeouts ([#6198]), and fixing a container deployment bug ([#6187]).\n  - **Technical Debt & Logging:** The long-standing effort to standardize logging and clean up the CLI/server was officially closed ([#6073], [#5932]).\n  - **Community Questions:** Issues regarding OpenAI-compatible API support ([#6168]) and the location of documentation ([#6122]) were closed with clarifications, demonstrating responsiveness to user queries.\n\n- **New & Active Issues:**\n  - **Future Platform Expansion:** New discussions were opened around significant future capabilities, including proposals for native Voice Support ([#6196]) and a dedicated Mobile App ([#6195]).\n  - **Scope Clarification:** An active discussion on Farcaster + Base app support ([#6161]) was clarified; the feature is intended for the related Otaku agent platform, not the core Eliza framework, and an initial scope for contribution was offered.\n\n## \ud83d\udcac Community & Collaboration\nThe week's activity shows a pattern of focused, collaborative effort. The large number of UI/UX and stability issues closed in a single day suggests a coordinated push to clear a backlog and polish the platform. The prompt closure of user-submitted questions about API compatibility and documentation location highlights the team's commitment to community support. Finally, the emergence of new pull requests for major architectural features and new issues proposing mobile and voice support indicates that contributors are actively thinking about the project's long-term trajectory.\n---\n2025-11-01.md\n---\n# elizaos/eliza Monthly Report (November 2025)\n\n## \ud83d\ude80 Highlights\nNovember kicked off with a dual focus on enhancing system stability and laying the groundwork for significant new capabilities. A critical bug affecting agent settings persistence was resolved, directly improving the framework's reliability. Concurrently, new development was initiated to introduce entity-level security and enhance the core runtime. The opening of several strategic issues signals a forward-looking push towards improved performance through parallel actions and background tasks, as well as new user engagement features.\n\n## \ud83d\udee0\ufe0f Key Developments\nWork this month balanced immediate fixes with the introduction of new features.\n\n- **Agent Stability Improvement**\n  A significant bug was fixed that prevented agent settings from persisting across restarts, ensuring that runtime-generated configurations are now correctly retained. This change, made to the core runtime initialization logic, enhances the overall reliability of agent operations ([#6106](https://github.com/elizaos/eliza/pull/6106)).\n\n- **New Feature Initiatives**\n  Development began on several new fronts with the opening of new pull requests:\n  - **Security:** A proposal was made to implement entity-level row-level security, aiming to add more granular data access controls ([#6107](https://github.com/elizaos/eliza/pull/6107)).\n  - **Runtime Enhancements:** Work started on adding an ElizaOS reference directly to the runtime, likely to streamline framework interactions ([#6111](https://github.com/elizaos/eliza/pull/6111)).\n\n## \ud83d\udc1b Issues & Triage\nIssue tracking this month was focused on defining the next wave of development priorities.\n\n- **Closed Issues:** No issues were closed during this period.\n\n- **New & Active Issues:** Several key issues were opened, outlining major areas for future work:\n  - **Core Functionality & Performance:** Discussions were initiated around implementing \"Parallel actions\" ([#6108](https://github.com/elizaos/eliza/issues/6108)) and \"Background tasks\" ([#6109](https://github.com/elizaos/eliza/issues/6109)), indicating a focus on scaling the system's operational capacity.\n  - **Security & User Engagement:** New issues were created for \"Entity-level RLS\" ([#6112](https://github.com/elizaos/eliza/issues/6112)), which complements the ongoing PR, and a \"Points / Leaderboard\" system ([#6110](https://github.com/elizaos/eliza/issues/6110)) to enhance user interaction.\n  - According to the reports, none of the active issues have generated more than three comments, suggesting discussions are still in their early stages.\n\n## \ud83d\udcac Community & Collaboration\nThe provided reports indicate a period of focused, heads-down development. While new pull requests and issues were opened, the data does not show any high-volume discussions or specific collaborative events. The alignment between the new pull request for RLS ([#6107](https://github.com/elizaos/eliza/pull/6107)) and the corresponding new issue ([#6112](https://github.com/elizaos/eliza/issues/6112)) suggests coordinated planning around new features.\n---\n{\n  \"interval\": {\n    \"intervalStart\": \"2025-12-01T00:00:00.000Z\",\n    \"intervalEnd\": \"2026-01-01T00:00:00.000Z\",\n    \"intervalType\": \"month\"\n  },\n  \"repository\": \"elizaos/eliza\",\n  \"overview\": \"From 2025-12-01 to 2026-01-01, elizaos/eliza had 18 new PRs (11 merged), 4 new issues, and 14 active contributors.\",\n  \"topIssues\": [\n    {\n      \"id\": \"I_kwDOMT5cIs7V2Buf\",\n      \"title\": \"Where did packages/docs/ go?\",\n      \"author\": \"LinuxIsCool\",\n      \"number\": 6122,\n      \"repository\": \"elizaos/eliza\",\n      \"body\": \"There was always packages/docs/ where did it get moved to?\",\n      \"createdAt\": \"2025-11-04T18:08:54Z\",\n      \"closedAt\": \"2025-12-01T14:35:46Z\",\n      \"state\": \"CLOSED\",\n      \"commentCount\": 2\n    },\n    {\n      \"id\": \"I_kwDOMT5cIs7cPNBC\",\n      \"title\": \".eliza needed or plugin-sql crashes, should autocreate\",\n      \"author\": \"lalalune\",\n      \"number\": 6204,\n      \"repository\": \"elizaos/eliza\",\n      \"body\": \"You can see here, I am building an Eliza agent from scratch\\n\\n```\\nimport { AgentRuntime, type Character, type Plugin } from \\\"@elizaos/core\\\";\\nimport { plugin } from \\\"@elizaos/plugin-sql\\\"\\nimport { openaiPlugin } from \\\"@elizaos/plugin-openai\\\"\\nimport fs from \\\"fs\\\";\\n\\n// if .eliza directory does not exist, create it\\nif (!fs.existsSync(\\\".eliza\\\")) {\\n    fs.mkdirSync(\\\".eliza\\\");\\n}\\n\\nconst character: Character = {\\n    name: \\\"Eliza\\\",\\n    bio: \\\"You are a helpful assistant\\\",\\n};\\n\\nconst plugins: Plugin[] = [\\n    plugin,\\n    openaiPlugin,\\n];\\n\\nconst agent = new AgentRuntime({\\n    character, // need a character to start the agent\\n    plugins // bare minimum is db plugin and inference plugin\\n});\\n\\nagent.initialize().then(() => {\\n    console.log(\\\"Agent initialized\\\");\\n\\n\\n});\\n```\\n\\nIn order to get it to work I have to add\\n```\\nimport fs from \\\"fs\\\";\\n\\n// if .eliza directory does not exist, create it\\nif (!fs.existsSync(\\\".eliza\\\")) {\\n    fs.mkdirSync(\\\".eliza\\\");\\n}\\n```\\n\\nBut this should happen automatically\",\n      \"createdAt\": \"2025-12-04T14:37:44Z\",\n      \"closedAt\": \"2025-12-08T13:17:08Z\",\n      \"state\": \"CLOSED\",\n      \"commentCount\": 1\n    },\n    {\n      \"id\": \"I_kwDOMT5cIs7V2Gw0\",\n      \"title\": \"Docs\",\n      \"author\": \"borisudovicic\",\n      \"number\": 6128,\n      \"repository\": \"elizaos/eliza\",\n      \"body\": \"* Build new /docs UI (public, not auth-locked).\\n* Include:\\n  * OpenAI-style API explorer.\\n  * Character setup & API key usage examples.\\n  * Overview of Cloud architecture.\",\n      \"createdAt\": \"2025-11-04T18:15:26Z\",\n      \"closedAt\": \"2025-12-10T14:27:42Z\",\n      \"state\": \"CLOSED\",\n      \"commentCount\": 0\n    },\n    {\n      \"id\": \"I_kwDOMT5cIs7YjZ7G\",\n      \"title\": \"can i use deepseek api?\",\n      \"author\": \"870171594\",\n      \"number\": 6156,\n      \"repository\": \"elizaos/eliza\",\n      \"body\": \"**Is your feature request related to a problem? Please describe.**\\n\\n<!-- A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] -->\\n\\n**Describe the solution you'd like**\\n\\n<!-- A clear and concise description of what you want to happen. -->\\n\\n**Describe alternatives you've considered**\\n\\n<!-- A clear and concise description of any alternative solutions or features you've considered. -->\\n\\n**Additional context**\\n\\n<!-- Add any other context or screenshots about the feature request here. -->\\n\",\n      \"createdAt\": \"2025-11-17T12:36:09Z\",\n      \"closedAt\": \"2025-12-08T13:17:30Z\",\n      \"state\": \"CLOSED\",\n      \"commentCount\": 0\n    },\n    {\n      \"id\": \"I_kwDOMT5cIs7aq1FH\",\n      \"title\": \"Fix \\\"Dashboard\\\" Button Pointer Event\",\n      \"author\": \"borisudovicic\",\n      \"number\": 6188,\n      \"repository\": \"elizaos/eliza\",\n      \"body\": \"\",\n      \"createdAt\": \"2025-11-26T18:43:21Z\",\n      \"closedAt\": \"2025-12-02T16:15:51Z\",\n      \"state\": \"CLOSED\",\n      \"commentCount\": 0\n    }\n  ],\n  \"topPRs\": [\n    {\n      \"id\": \"PR_kwDOMT5cIs64E0uE\",\n      \"title\": \"Eliza Cloud Integration, add MCP + A2A service starter, integrate CLI and starter projects tight\",\n      \"author\": \"lalalune\",\n      \"number\": 6216,\n      \"body\": \"The goal of this PR is to tightly integrate the elizaos cloud plugin, which now can use cloud as a db and storage provider, and encourage users through the CLI to get up and running with elizaos cloud. CLI should auto log them in, provision API key and make sure project is set up.\\r\\n\\r\\nPlease thoroughly review and understand the create -> deploy -> publish and monetize flow, may still need some work\",\n      \"repository\": \"elizaos/eliza\",\n      \"createdAt\": \"2025-12-10T07:26:45Z\",\n      \"mergedAt\": null,\n      \"additions\": 9989,\n      \"deletions\": 101\n    },\n    {\n      \"id\": \"PR_kwDOMT5cIs630tVJ\",\n      \"title\": \"Shaw/chore/deslop\",\n      \"author\": \"lalalune\",\n      \"number\": 6213,\n      \"body\": \"This PR removes a lot of slop\\r\\n\\r\\n- Fixes any and unknown and cast types with real types\\r\\n- Removes try catch\\r\\n- Removes sloppy comments\\r\\n- Removes dead files and code\",\n      \"repository\": \"elizaos/eliza\",\n      \"createdAt\": \"2025-12-09T03:59:26Z\",\n      \"mergedAt\": \"2025-12-09T06:22:34Z\",\n      \"additions\": 9246,\n      \"deletions\": 7105\n    },\n    {\n      \"id\": \"PR_kwDOMT5cIs620Si3\",\n      \"title\": \"feat(auth): implement JWT authentication and user management\",\n      \"author\": \"standujar\",\n      \"number\": 6200,\n      \"body\": \"## Relates to\\r\\n\\r\\n- Data isolation / multi-entity support\\r\\n- External JWT provider integration (Privy, Auth0, Clerk, Supabase, Google, Embbeded)\\r\\n\\r\\n## Risks\\r\\n\\r\\n**Low**\\r\\n\\r\\n- Requires `ENABLE_DATA_ISOLATION=true` to activate JWT auth mode\\r\\n\\r\\n## Background\\r\\n\\r\\n### What does this PR do?\\r\\n\\r\\nImplements a complete JWT authentication system for ElizaOS with support for multiple verification strategies:\\r\\n\\r\\n1. **JWT Verifier Factory** - Priority-based verifier selection:\\r\\n   - Ed25519 (highest priority) - For self-signed JWTs with Ed25519 keys\\r\\n   - JWKS (medium priority) - For external providers (Auth0, Clerk, Privy, Supabase, Google)\\r\\n   - Secret (lowest priority) - For simple HS256 symmetric key verification\\r\\n\\r\\n2. **Entity ID derivation from JWT `sub` claim**:\\r\\n   - `entityId = stringToUuid(payload.sub)`\\r\\n   - Compatible with ANY JWT provider since `sub` is a standard claim\\r\\n   - No custom claims needed in external JWTs\\r\\n\\r\\n3. **Dual authentication modes**:\\r\\n   - `ENABLE_DATA_ISOLATION=true` \u2192 JWT authentication required\\r\\n   - `ENABLE_DATA_ISOLATION=false` \u2192 X-Entity-Id header (legacy mode)\\r\\n\\r\\n4. **Internal service bypass** - Process-local UUID secret for service-to-service calls\\r\\n\\r\\n5. **Credentials-based auth endpoints** (`/api/auth/*`) - only in custom - JWT-SECRET mode:\\r\\n   - `POST /register` - User registration with bcrypt password hashing\\r\\n   - `POST /login` - User login with JWT generation\\r\\n   - `POST /refresh` - Token refresh\\r\\n   - `GET /me` - Current user info\\r\\n\\r\\n6. **Client UI default implementation using self mode (Secret)\\r\\n\\r\\n### What kind of change is this?\\r\\n\\r\\n**Features** (non-breaking change which adds functionality)\\r\\n\\r\\n## Architecture\\r\\n\\r\\n```\\r\\n\u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\\r\\n\u2502                    JWT Verification Flow                         \u2502\\r\\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\\r\\n\u2502  Request with Bearer token                                       \u2502\\r\\n\u2502       \u2193                                                          \u2502\\r\\n\u2502  JWTVerifierFactory.create()                                     \u2502\\r\\n\u2502       \u2193                                                          \u2502\\r\\n\u2502  Priority: Ed25519 > JWKS > Secret > Disabled                   \u2502\\r\\n\u2502       \u2193                                                          \u2502\\r\\n\u2502  verifier.verify(token)                                          \u2502\\r\\n\u2502       \u2193                                                          \u2502\\r\\n\u2502  Extract payload.sub                                             \u2502\\r\\n\u2502       \u2193                                                          \u2502\\r\\n\u2502  entityId = stringToUuid(sub)  \u2190 Derived, NOT stored in JWT     \u2502\\r\\n\u2502       \u2193                                                          \u2502\\r\\n\u2502  req.entityId = entityId                                         \u2502\\r\\n\u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\\r\\n```\\r\\n\\r\\n## Environment Variables\\r\\n\\r\\n| Variable | Description | Example |\\r\\n|----------|-------------|---------|\\r\\n| `ENABLE_DATA_ISOLATION` | Enable JWT auth mode | `true` |\\r\\n| `JWT_SECRET` (optional) | HS256 symmetric secret | `your-secret-key` |\\r\\n| `JWT_PUBLIC_KEY_ED25519` (optional) | Ed25519 public key (base64) | `MCowBQYDK2Vw...` |\\r\\n| `JWT_JWKS_URI` (optional) | JWKS endpoint URL | `https://auth0.com/.well-known/jwks.json` |\\r\\n| `JWT_ISSUER_WHITELIST` (optional) | Allowed issuers (comma-separated) | `https://auth0.com/,https://clerk.dev` |\\r\\n\\r\\n## Documentation changes needed?\\r\\n\\r\\nYes - Documentation should be added for:\\r\\n- Environment variable configuration\\r\\n- External provider setup (Auth0, Clerk, Privy examples)\\r\\n\\r\\n## Testing\\r\\n\\r\\n### Where should a reviewer start?\\r\\n\\r\\n1. `packages/server/src/services/jwt-verifiers/factory.ts` - Core factory logic\\r\\n2. `packages/server/src/middleware/jwtMiddleware.ts` - HTTP middleware\\r\\n3. `packages/server/src/socketio/index.ts` - SocketIO authentication\\r\\n\\r\\n### Detailed testing steps\\r\\n\\r\\n**Unit Tests:**\\r\\n```bash\\r\\ncd packages/server\\r\\nbun run test:unit\\r\\n```\\r\\n\\r\\n**Integration Tests:**\\r\\n```bash\\r\\ncd packages/server\\r\\nbun run test:integration\\r\\n```\\r\\n\\r\\n**Results:** 489 unit tests pass, 6 integration test files pass\\r\\n\\r\\n### Manual Testing\\r\\n\\r\\n1. **Test with JWT_SECRET (HS256):**\\r\\n```bash\\r\\nENABLE_DATA_ISOLATION=true JWT_SECRET=test-secret bun run dev\\r\\n```\\r\\n\\r\\n2. **Register a user:**\\r\\n```bash\\r\\ncurl -X POST http://localhost:3000/api/auth/register \\\\\\r\\n  -H \\\"Content-Type: application/json\\\" \\\\\\r\\n  -d '{\\\"email\\\":\\\"test@example.com\\\",\\\"username\\\":\\\"testuser\\\",\\\"password\\\":\\\"password123\\\"}'\\r\\n```\\r\\n\\r\\n3. **Use returned token:**\\r\\n```bash\\r\\ncurl http://localhost:3000/api/agents \\\\\\r\\n  -H \\\"Authorization: Bearer <token>\\\"\\r\\n```\\r\\n\\r\\n## External Provider Compatibility\\r\\n\\r\\nTested JWT formats:\\r\\n- **Auth0**: `sub: \\\"auth0|1234567890\\\"`\\r\\n- **Clerk**: `sub: \\\"user_2abcdefgh123456\\\"`\\r\\n- **Google**: `sub: \\\"1234567890\\\"` with `email`, `email_verified`\\r\\n- **Supabase**: `sub: \\\"uuid\\\"` with `role: \\\"authenticated\\\"`\\r\\n- **Privy**: `sub: \\\"did:privy:...\\\"`\\r\\n\\r\\nAll providers work because we only require the standard `sub` claim.\\r\\n\\r\\n## Next Idea Steps: Access Control Layer (ACL)\\r\\n\\r\\nThe next phase will add access control on agents and rooms: \\r\\n\\r\\nAgents:\\r\\n- Each user can create their own agents (ownerId = entityId)\\r\\n- Visibility: public or private\\r\\n- Private = only the owner can chat with it\\r\\n- Public = everyone can chat, but only the owner can modify/delete\\r\\n\\r\\nRooms:\\r\\n- Each room has an owner\\r\\nOnly the owner can:\\r\\n- Delete the room (DELETE /rooms/:id)\\r\\n- Clear message history (DELETE /rooms/:id/messages)\\r\\n- Change visibility\\r\\n\\r\\nThis will enable true multi-tenant mode where each user manages their resources in isolation.\",\n      \"repository\": \"elizaos/eliza\",\n      \"createdAt\": \"2025-12-03T11:55:47Z\",\n      \"mergedAt\": null,\n      \"additions\": 6072,\n      \"deletions\": 354\n    },\n    {\n      \"id\": \"PR_kwDOMT5cIs64CTg1\",\n      \"title\": \"fix(plugin-sql): optimize pre-1.6.5 migration, RLS handling and SQL organisation\",\n      \"author\": \"standujar\",\n      \"number\": 6215,\n      \"body\": \"# Risks\\r\\n\\r\\n**Low** - All changes are backwards compatible and idempotent. Comprehensive test coverage added. Nothing is destructive\\r\\n\\r\\n# Background\\r\\n\\r\\n## What does this PR do?\\r\\n\\r\\n- Adds smooth migration from pre-1.6.5 (camelCase) to 1.6.5+ (snake_case) schema\\r\\n- Optimizes RLS handling: skips disable/re-enable cycle when `ENABLE_DATA_ISOLATION=true`\\r\\n- Cleans up RuntimeMigrator: removes dead code, improves table filtering\\r\\n- Fixes schema indexes and foreign key definitions\\r\\n- Adds 20+ comprehensive migration tests\\r\\n\\r\\n## What kind of change is this?\\r\\n\\r\\nBug fixes (non-breaking change which fixes an issue)\\r\\n\\r\\n# Documentation changes needed?\\r\\n\\r\\nMy changes do not require a change to the project documentation.\\r\\n\\r\\n# Testing\\r\\n\\r\\n## Where should a reviewer start?\\r\\n\\r\\n`src/migrations.ts` - Main migration logic\\r\\n\\r\\n## Detailed testing steps\\r\\n\\r\\n```bash\\r\\ncd packages/plugin-sql\\r\\nbun test src/__tests__/migration/\\r\\n```\\r\\n\\r\\n**179 pass, 0 fail**\\r\\n\",\n      \"repository\": \"elizaos/eliza\",\n      \"createdAt\": \"2025-12-10T01:17:43Z\",\n      \"mergedAt\": null,\n      \"additions\": 2751,\n      \"deletions\": 475\n    },\n    {\n      \"id\": \"PR_kwDOMT5cIs63dqrL\",\n      \"title\": \"[DRAFT] feat(core): Implement parallel action execution in processActions\",\n      \"author\": \"wtfsayo\",\n      \"number\": 6209,\n      \"body\": \"## Summary\\n\\nThis PR implements parallel action execution within the `processActions()` method to improve performance for multi-action responses.\\n\\n## Changes\\n\\n### Core Runtime (`packages/core/src/runtime.ts`)\\n- Execute actions within a single response batch **in parallel** using `Promise.allSettled()`\\n- All actions in a batch receive the **same initial state snapshot**\\n- State accumulates **sequentially between response batches**\\n- Merge all `ActionResult.values` after parallel batch completes\\n- Preserve fault tolerance: if one action fails, others still complete\\n\\n### Prompts (`packages/core/src/prompts.ts`)\\n- Updated `messageHandlerTemplate` to reflect parallel execution model\\n- Changed \\\"IMPORTANT ACTION ORDERING RULES\\\" to \\\"IMPORTANT ACTION EXECUTION RULES\\\"\\n- Clarified that actions listed in a single response execute in parallel\\n- Added guidance to use multi-step workflow for sequential dependencies\\n\\n### Action State Provider (`packages/plugin-bootstrap/src/providers/actionState.ts`)\\n- Updated JSDoc and description to clarify \\\"previous results\\\" refers to prior response batches, not sibling parallel actions\\n\\n### Tests\\n- Updated `runtime.test.ts` to match new state initialization behavior\\n- Updated `prompts.test.ts` to match new prompt text\\n\\n## Key Data Flow\\n\\n```\\nResponse 1: [action1, action2, action3]\\n  \u251c\u2500> Execute ALL in parallel with initialState\\n  \u251c\u2500> Wait for all to complete\\n  \u2514\u2500> Merge results \u2192 accumulatedState\\n\\nResponse 2: [action4, action5]\\n  \u251c\u2500> Execute ALL in parallel with accumulatedState from Response 1\\n  \u251c\u2500> Wait for all to complete\\n  \u2514\u2500> Merge results \u2192 new accumulatedState\\n```\\n\\n## Testing\\n\\n- All existing runtime tests pass\\n- All prompt tests pass\\n- All multi-step workflow tests pass\\n- Action chaining tests pass\\n\\n## Breaking Changes\\n\\nNone - backward compatible. Actions that previously assumed sequential execution within a batch will now run in parallel, but since they all receive the same state snapshot, behavior should be equivalent for independent actions.\\n\\n<!-- CURSOR_SUMMARY -->\\n---\\n\\n> [!NOTE]\\n> Execute actions in a response batch in parallel with a shared state snapshot, accumulate results across batches, and introduce AsyncLocalStorage-based prompt tracking with prompt/provider/test updates.\\n> \\n> - **Core (runtime.ts)**:\\n>   - Parallelize `processActions` per response using `Promise.allSettled()`; each batch shares a composed state snapshot; accumulate `ActionResult.values` and plan state between batches.\\n>   - Add robust action resolution (exact/fuzzy/similes), error paths for missing action/handler, and consistent action memory/logging.\\n>   - Preserve legacy returns (void/boolean) as completed; treat `{ success:false }` (including minimal/error-only) as failed.\\n>   - Merge working memory with size cap; cache `action_results`; update action plan immutably per step.\\n>   - Introduce AsyncLocalStorage context: `ActionContextStore`, `getCurrentActionContext`, and browser fallback `createBrowserFallback` for prompt collection; include action context in `useModel` logs; skip collecting `TEXT_EMBEDDING` prompts.\\n> - **Prompts (prompts.ts)**:\\n>   - Update `messageHandlerTemplate` for parallel execution model and guidance on multi-step dependencies.\\n> - **Provider (plugin-bootstrap/actionState.ts)**:\\n>   - Clarify description/docs: \\\"previous results\\\" are from prior response batches; parallel actions share the same snapshot.\\n> - **Tests**:\\n>   - Expand `runtime.test.ts`: parallel execution behavior, action result status semantics, prompt collection/isolation via AsyncLocalStorage, browser fallback behavior, exact vs fuzzy action matching.\\n>   - Update `prompts.test.ts` for new execution rules and wording.\\n> \\n> <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit 55765fc289c965232d5d690c363f73c7ea1b81f6. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup>\\n<!-- /CURSOR_SUMMARY -->\",\n      \"repository\": \"elizaos/eliza\",\n      \"createdAt\": \"2025-12-06T19:03:17Z\",\n      \"mergedAt\": null,\n      \"additions\": 1467,\n      \"deletions\": 292\n    }\n  ],\n  \"codeChanges\": {\n    \"additions\": 5397,\n    \"deletions\": 4289,\n    \"files\": 195,\n    \"commitCount\": 128\n  },\n  \"completedItems\": [\n    {\n      \"title\": \"fix: markdown spacing compact\",\n      \"prNumber\": 6159,\n      \"type\": \"bugfix\",\n      \"body\": \"# Relates to\\r\\n\\r\\nFixes excessive vertical spacing in AI-generated markdown responses in the ElizaOS client UI.\\r\\n\\r\\n# Risks\\r\\n\\r\\n**Low Risk**\\r\\n\\r\\n- Only CSS changes affecting markdown content rendering\\r\\n- Uses well-supported CSS features (Chrome \",\n      \"files\": [\n        \"packages/client/src/components/ai-elements/response.tsx\",\n        \"packages/client/src/index.css\"\n      ]\n    },\n    {\n      \"title\": \"refactor(server): optimization and reorganization\",\n      \"prNumber\": 6199,\n      \"type\": \"refactor\",\n      \"body\": \"# Risks\\r\\n\\r\\n**Low to Medium**\\r\\n\\r\\n- Socket.IO configuration changes may affect existing client connections (tested with multiple browsers)\\r\\n- Code reorganization changes import paths - all imports have been updated and verified\\r\\n\\r\\n# Backgroun\",\n      \"files\": [\n        \"bun.lock\",\n        \"packages/server/src/__tests__/builders/channel.builder.ts\",\n        \"packages/server/src/__tests__/builders/message.builder.ts\",\n        \"packages/server/src/__tests__/integration/agent-server-interaction.test.ts\",\n        \"packages/server/src/__tests__/integration/database-operations.test.ts\",\n        \"packages/server/src/__tests__/integration/message-bus-service.test.ts\",\n        \"packages/server/src/__tests__/unit/api/crud-uuid.test.ts\",\n        \"packages/server/src/__tests__/unit/api/jobs.test.ts\",\n        \"packages/server/src/__tests__/unit/features/socketio-router.test.ts\",\n        \"packages/server/src/__tests__/unit/services/message-bus-compatibility.test.ts\",\n        \"packages/server/src/__tests__/unit/utils/loader-uuid.test.ts\",\n        \"packages/server/src/__tests__/unit/utils/loader.test.ts\",\n        \"packages/server/src/api/index.ts\",\n        \"packages/server/src/api/messaging/channels.ts\",\n        \"packages/server/src/api/messaging/core.ts\",\n        \"packages/server/src/api/messaging/jobs.ts\",\n        \"packages/server/src/api/messaging/messageServers.ts\",\n        \"packages/server/src/api/messaging/sessions.ts\",\n        \"packages/server/src/api/shared/uploads/index.ts\",\n        \"packages/server/src/index.ts\",\n        \"packages/server/src/services/index.ts\",\n        \"packages/server/src/services/loader.ts\",\n        \"packages/server/src/services/message-bus.ts\",\n        \"packages/server/src/services/message.ts\",\n        \"packages/server/src/socketio/index.ts\",\n        \"packages/server/src/types/server.ts\",\n        \"packages/server/src/utils/config.ts\",\n        \"packages/server/src/utils/index.ts\",\n        \"packages/server/src/utils/media-transformer.ts\",\n        \"packages/server/src/utils/upload.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix(client): improve markdown content spacing\",\n      \"prNumber\": 6197,\n      \"type\": \"bugfix\",\n      \"body\": \"This PR includes two fixes for markdown content spacing in the client:\\n\\n1. Add missing heading and separator spacing to markdown-content\\n2. Reduce blockquote vertical spacing for more compact display\\n\\nThese changes improve the visual consis\",\n      \"files\": [\n        \"packages/client/src/index.css\"\n      ]\n    },\n    {\n      \"title\": \"feat: Unified API - serverless - nodejs\",\n      \"prNumber\": 6201,\n      \"type\": \"feature\",\n      \"body\": \"\",\n      \"files\": [\n        \"bun.lock\",\n        \"packages/core/src/__tests__/elizaos-sendmessage.test.ts\",\n        \"packages/core/src/__tests__/elizaos.test.ts\",\n        \"packages/core/src/elizaos.ts\",\n        \"packages/core/src/types/elizaos.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix(examples): respect user LOG_LEVEL in standalone-cli-chat\",\n      \"prNumber\": 6203,\n      \"type\": \"bugfix\",\n      \"body\": \"\",\n      \"files\": [\n        \"examples/standalone-cli-chat.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix(plugin-sql): migrate to messageService API and auto-create PGLite directories\",\n      \"prNumber\": 6202,\n      \"type\": \"bugfix\",\n      \"body\": \"## Summary\\n\\nThis PR modernizes the standalone example files and improves the SQL plugin's directory handling by:\\n1. Migrating examples from the deprecated `MESSAGE_RECEIVED` event system to the new `messageService.handleMessage()` API\\n2. Ad\",\n      \"files\": [\n        \"examples/standalone-cli-chat.ts\",\n        \"examples/standalone.ts\",\n        \"packages/plugin-sql/src/__tests__/unit/directory-creation.test.ts\",\n        \"packages/plugin-sql/src/index.node.ts\",\n        \"packages/plugin-sql/src/index.ts\"\n      ]\n    },\n    {\n      \"title\": \"feat: Add ElizaOS Cloud as Default AI Provider in CLI\",\n      \"prNumber\": 6208,\n      \"type\": \"feature\",\n      \"body\": \"## Add ElizaOS Cloud as Default AI Provider in CLI\\n\\n### Summary\\n- Add **ElizaOS Cloud** as the first/recommended option in `elizaos create` AI model selection\\n- Integrate browser-based login flow for seamless API key setup\\n- Fix env variabl\",\n      \"files\": [\n        \"bun.lock\",\n        \"packages/cli/src/commands/create/actions/setup.ts\",\n        \"packages/cli/src/commands/create/utils/selection.ts\",\n        \"packages/cli/src/commands/deploy/utils/api-client.ts\",\n        \"packages/cli/src/commands/login/README.md\",\n        \"packages/cli/src/commands/login/actions/login.ts\",\n        \"packages/cli/src/utils/get-config.ts\",\n        \"packages/cli/tests/commands/create.test.ts\",\n        \"packages/cli/tests/unit/utils/elizacloud-config.test.ts\",\n        \"packages/cli/tests/unit/utils/selection.test.ts\"\n      ]\n    },\n    {\n      \"title\": \"feat: bump deps, fix drizzle-kit across ecosystem\",\n      \"prNumber\": 6210,\n      \"type\": \"feature\",\n      \"body\": \"## \ud83d\udd04 Update All Dependencies to Latest Versions\\n\\n### Problem\\n\\nFound conflicting `drizzle-orm` versions across the monorepo causing compatibility issues:\\n\\n- `drizzle-orm@0.45.0` (root)\\n- `drizzle-orm@0.44.7` (from `@elizaos/plugin-sql`)\\n- `\",\n      \"files\": [\n        \".github/workflows/cli-tests.yml\",\n        \".github/workflows/client-cypress-tests.yml\",\n        \".github/workflows/jsdoc-automation.yml\",\n        \".github/workflows/release.yaml\",\n        \".github/workflows/tauri-ci.yml\",\n        \".github/workflows/update-news.yml\",\n        \"bun.lock\",\n        \"package.json\",\n        \"packages/api-client/package.json\",\n        \"packages/app/package.json\",\n        \"packages/cli/package.json\",\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.test.ts\",\n        \"packages/cli/tests/commands/update.test.ts\",\n        \"packages/cli/tests/unit/utils/elizacloud-config.test.ts\",\n        \"packages/client/package.json\",\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-quick-starter/package.json\",\n        \"packages/plugin-sql/build.ts\",\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/service-interfaces/package.json\",\n        \"packages/test-utils/package.json\"\n      ]\n    },\n    {\n      \"title\": \"Shaw/chore/deslop\",\n      \"prNumber\": 6213,\n      \"type\": \"other\",\n      \"body\": \"This PR removes a lot of slop\\r\\n\\r\\n- Fixes any and unknown and cast types with real types\\r\\n- Removes try catch\\r\\n- Removes sloppy comments\\r\\n- Removes dead files and code\",\n      \"files\": [\n        \"build-utils.ts\",\n        \"bun.lock\",\n        \"packages/api-client/src/__tests__/integration/no-content-fix.test.ts\",\n        \"packages/api-client/src/__tests__/services/agents.test.ts\",\n        \"packages/api-client/src/__tests__/services/audio.test.ts\",\n        \"packages/api-client/src/__tests__/services/jobs.test.ts\",\n        \"packages/api-client/src/__tests__/services/media.test.ts\",\n        \"packages/api-client/src/__tests__/services/memory.test.ts\",\n        \"packages/api-client/src/__tests__/services/messaging.test.ts\",\n        \"packages/api-client/src/__tests__/services/server.test.ts\",\n        \"packages/api-client/src/__tests__/services/system.test.ts\",\n        \"packages/api-client/src/lib/base-client.ts\",\n        \"packages/api-client/src/services/agents.ts\",\n        \"packages/api-client/src/services/audio.ts\",\n        \"packages/api-client/src/services/jobs.ts\",\n        \"packages/api-client/src/services/media.ts\",\n        \"packages/api-client/src/services/memory.ts\",\n        \"packages/api-client/src/services/messaging.ts\",\n        \"packages/api-client/src/services/sessions.ts\",\n        \"packages/api-client/src/services/system.ts\",\n        \"packages/api-client/src/types/agents.ts\",\n        \"packages/api-client/src/types/jobs.ts\",\n        \"packages/api-client/src/types/media.ts\",\n        \"packages/api-client/src/types/memory.ts\",\n        \"packages/api-client/src/types/server.ts\",\n        \"packages/api-client/src/types/system.ts\",\n        \"packages/app/README.md\",\n        \"packages/app/eslint.config.js\",\n        \"packages/app/index.html\",\n        \"packages/app/package.json\",\n        \"packages/app/src-tauri/Cargo.toml\",\n        \"packages/app/src-tauri/src/lib.rs\",\n        \"packages/app/src/__tests__/main.test.ts\",\n        \"packages/app/src/main.tsx\",\n        \"packages/app/src/types/bun-test.d.ts\",\n        \"packages/app/vite.config.ts\",\n        \"packages/cli/src/commands/agent/actions/crud.ts\",\n        \"packages/cli/src/commands/agent/actions/lifecycle.ts\",\n        \"packages/cli/src/commands/create/actions/creators.ts\",\n        \"packages/cli/src/commands/create/index.ts\",\n        \"packages/cli/src/commands/create/utils/validation.ts\",\n        \"packages/cli/src/commands/deploy/actions/deploy-ecs.ts\",\n        \"packages/cli/src/commands/deploy/types.ts\",\n        \"packages/cli/src/commands/dev/actions/dev-server.ts\",\n        \"packages/cli/src/commands/publish/types.ts\",\n        \"packages/cli/src/commands/report/generate.ts\",\n        \"packages/cli/src/commands/report/src/analysis-engine.ts\",\n        \"packages/cli/src/commands/scenario/docs/README.md\",\n        \"packages/cli/src/commands/scenario/docs/file-format-spec.md\",\n        \"packages/cli/src/commands/scenario/docs/matrix-testing.md\"\n      ]\n    },\n    {\n      \"title\": \"fix: resolve TypeScript build errors in every packages - first step\",\n      \"prNumber\": 6218,\n      \"type\": \"bugfix\",\n      \"body\": \"\",\n      \"files\": [\n        \"packages/api-client/src/lib/base-client.ts\",\n        \"packages/api-client/src/services/audio.ts\",\n        \"packages/api-client/src/types/agents.ts\",\n        \"packages/client/src/components/agent-action-viewer.tsx\",\n        \"packages/client/src/components/chat.tsx\",\n        \"packages/client/src/config/agent-templates.ts\",\n        \"packages/client/src/hooks/__tests__/use-agent-update.test.tsx\",\n        \"packages/client/src/hooks/use-character-convert.ts\",\n        \"packages/client/src/hooks/use-partial-update.ts\",\n        \"packages/client/src/hooks/use-query-hooks.ts\",\n        \"packages/client/src/hooks/use-socket-chat.ts\",\n        \"packages/client/src/lib/api-type-mappers.ts\",\n        \"packages/client/src/lib/socketio-manager.ts\",\n        \"packages/core/src/entities.ts\",\n        \"packages/core/src/logger.ts\",\n        \"packages/core/src/runtime.ts\",\n        \"packages/core/src/types/events.ts\",\n        \"packages/core/src/types/index.ts\",\n        \"packages/core/src/types/plugin.ts\",\n        \"packages/core/src/types/runtime.ts\",\n        \"packages/core/src/types/state.ts\",\n        \"packages/core/src/utils.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/imageGeneration.ts\",\n        \"packages/plugin-bootstrap/src/actions/muteRoom.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/unfollowRoom.ts\",\n        \"packages/plugin-bootstrap/src/actions/unmuteRoom.ts\",\n        \"packages/plugin-bootstrap/src/actions/updateEntity.ts\",\n        \"packages/plugin-bootstrap/src/evaluators/reflection.ts\",\n        \"packages/plugin-bootstrap/src/index.ts\",\n        \"packages/plugin-bootstrap/src/providers/actionState.ts\",\n        \"packages/plugin-dummy-services/src/browser/service.ts\",\n        \"packages/plugin-dummy-services/src/e2e/test-utils.ts\",\n        \"packages/plugin-sql/src/base.ts\",\n        \"packages/plugin-sql/src/index.node.ts\",\n        \"packages/plugin-sql/src/index.ts\",\n        \"packages/plugin-sql/src/migrations.ts\",\n        \"packages/plugin-sql/src/pg/adapter.ts\",\n        \"packages/plugin-sql/src/rls.ts\",\n        \"packages/plugin-sql/src/runtime-migrator/runtime-migrator.ts\",\n        \"packages/plugin-sql/src/runtime-migrator/storage/journal-storage.ts\",\n        \"packages/plugin-sql/src/runtime-migrator/storage/migration-tracker.ts\",\n        \"packages/plugin-sql/src/types.ts\",\n        \"packages/server/src/api/agents/runs.ts\",\n        \"packages/server/src/api/audio/conversation.ts\",\n        \"packages/cli/src/commands/scenario/src/EvaluationEngine.ts\",\n        \"packages/cli/src/commands/scenario/src/LocalEnvironmentProvider.ts\",\n        \"packages/cli/src/commands/scenario/src/TrajectoryReconstructor.ts\",\n        \"packages/cli/src/commands/scenario/src/UserSimulator.ts\",\n        \"packages/cli/src/commands/scenario/src/matrix-orchestrator.ts\",\n        \"packages/cli/src/commands/scenario/src/matrix-runner.ts\",\n        \"packages/cli/src/commands/scenario/src/matrix-schema.ts\",\n        \"packages/cli/src/commands/scenario/src/parameter-override.ts\",\n        \"packages/cli/src/commands/scenario/src/run-isolation.ts\",\n        \"packages/cli/src/commands/scenario/src/runtime-factory.ts\",\n        \"packages/cli/src/commands/test/actions/e2e-tests.ts\",\n        \"packages/cli/src/utils/spinner-utils.ts\",\n        \"packages/core/src/__tests__/settings.test.ts\",\n        \"packages/core/src/__tests__/utils.test.ts\",\n        \"packages/core/src/elizaos.ts\",\n        \"packages/core/src/schemas/character.ts\",\n        \"packages/core/src/settings.ts\",\n        \"packages/plugin-bootstrap/src/__tests__/logic.test.ts\"\n      ]\n    },\n    {\n      \"title\": \"fix: encryption for character secrets in correct order\",\n      \"prNumber\": 6217,\n      \"type\": \"bugfix\",\n      \"body\": \"\",\n      \"files\": [\n        \"packages/core/src/__tests__/elizaos.test.ts\",\n        \"packages/core/src/elizaos.ts\",\n        \"packages/server/src/api/agents/crud.ts\",\n        \"packages/server/src/index.ts\"\n      ]\n    }\n  ],\n  \"topContributors\": [\n    {\n      \"username\": \"standujar\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/16385918?u=718bdcd1585be8447bdfffb8c11ce249baa7532d&v=4\",\n      \"totalScore\": 395.2727443857232,\n      \"prScore\": 376.1967443857232,\n      \"issueScore\": 0,\n      \"reviewScore\": 18,\n      \"commentScore\": 1.0759999999999998,\n      \"summary\": null\n    },\n    {\n      \"username\": \"ChristopherTrimboli\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/27584221?u=0d816ce1dcdea8f925aba18bb710153d4a87a719&v=4\",\n      \"totalScore\": 114.67356870848266,\n      \"prScore\": 95.17356870848266,\n      \"issueScore\": 0,\n      \"reviewScore\": 19.5,\n      \"commentScore\": 0,\n      \"summary\": null\n    },\n    {\n      \"username\": \"wtfsayo\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/82053242?u=98209a1f10456f42d4d2fa71db4d5bf4a672cbc3&v=4\",\n      \"totalScore\": 106.43812183926335,\n      \"prScore\": 106.03812183926334,\n      \"issueScore\": 0,\n      \"reviewScore\": 0,\n      \"commentScore\": 0.4,\n      \"summary\": null\n    },\n    {\n      \"username\": \"lalalune\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/18633264?u=e2e906c3712c2506ebfa98df01c2cfdc50050b30&v=4\",\n      \"totalScore\": 86.7855477931522,\n      \"prScore\": 84.7855477931522,\n      \"issueScore\": 2,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": null\n    },\n    {\n      \"username\": \"0xbbjoker\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/54844437?u=90fe1762420de6ad493a1c1582f1f70c0d87d8e2&v=4\",\n      \"totalScore\": 48.31247180559945,\n      \"prScore\": 33.31247180559945,\n      \"issueScore\": 0,\n      \"reviewScore\": 15,\n      \"commentScore\": 0,\n      \"summary\": null\n    },\n    {\n      \"username\": \"todoencadena\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/198127898?u=4c012fe538dffffc28d03890eda7d63746ae1ff2&v=4\",\n      \"totalScore\": 24.27972435596375,\n      \"prScore\": 24.27972435596375,\n      \"issueScore\": 0,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": null\n    },\n    {\n      \"username\": \"Tonyflam\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/150600391?u=0c905a5f627ff99389fc79e9978f1dc47546456e&v=4\",\n      \"totalScore\": 6.218573590279973,\n      \"prScore\": 6.218573590279973,\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\": 4.5,\n      \"prScore\": 0,\n      \"issueScore\": 0,\n      \"reviewScore\": 4.5,\n      \"commentScore\": 0,\n      \"summary\": null\n    },\n    {\n      \"username\": \"pereslavlland\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/247946180?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\": \"linear\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/in/20150?v=4\",\n      \"totalScore\": 2,\n      \"prScore\": 0,\n      \"issueScore\": 2,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": null\n    },\n    {\n      \"username\": \"borisudovicic\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/31806472?u=8935f4d43fd7e4eb9bf5ff92d54d4d2f8ac8a786&v=4\",\n      \"totalScore\": 2,\n      \"prScore\": 0,\n      \"issueScore\": 2,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": null\n    },\n    {\n      \"username\": \"otaku-x402\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/242004857?u=1325b26d380eec4a0b8d84e8e249c523eebd28dc&v=4\",\n      \"totalScore\": 0.2,\n      \"prScore\": 0,\n      \"issueScore\": 0,\n      \"reviewScore\": 0,\n      \"commentScore\": 0.2,\n      \"summary\": null\n    }\n  ],\n  \"newPRs\": 18,\n  \"mergedPRs\": 11,\n  \"newIssues\": 4,\n  \"closedIssues\": 21,\n  \"activeContributors\": 14\n}\n---\n2025-12-12T02:42:04.499960Z\n---\n2025-12-12\n---\nai_news_elizaos_discord_md_2025-12-11\n---\nai_news_elizaos_discord_md_2025-12-10\n---\nai_news_elizaos_discord_md_2025-12-09\n---\nai_news_elizaos_daily_discord_json_2025-12-11\n---\nai_news_elizaos_daily_discord_md_2025-12-11\n---\ngithub_summaries_week_latest_2025-11-30.md\n---\ngithub_summaries_month_latest_2025-11-01.md\n---\nai_news_elizaos_daily_json_2025-12-11\n---\nai_news_elizaos_daily_md_2025-12-11\n---\ngithub_summaries_daily_2025-12-12"
  ]
}