{
  "prompt_name": "developer-update",
  "category": "dev",
  "date": "2025-07-05",
  "generated_text": "# ElizaOS Developer Update (June 29 - July 5, 2025)\n\n## 1. Core Framework\n\nThe ElizaOS framework received significant enhancements this week, with a major focus on improving environment handling and streamlining the developer experience. The CLI environment variable system has been completely refactored to provide better maintainability and usability ([#5326](https://github.com/elizaos/eliza/pull/5326)). This overhaul now intelligently detects required environment variables for model plugins and improves the project creation workflow.\n\nThe platform also saw improvements in the agent runtime with automatic synchronization of secrets from local `.env` files for characters that don't have secrets configured ([#5329](https://github.com/elizaos/eliza/pull/5329)). This ensures a smoother development workflow when testing characters that depend on external API services.\n\nAdditionally, ElizaOS v1.0.16 and v1.0.17 were released this week, bringing stability improvements and bug fixes to the core platform.\n\n## 2. New Features\n\n### AI-Powered Migration Tool\nA standout feature this week is the introduction of an AI-powered plugin migration tool ([#5311](https://github.com/elizaos/eliza/pull/5311)). Leveraging Claude's capabilities, this tool streamlines the process of upgrading plugins from v0.x to v1.x through a stepwise, gated approach with detailed progress reporting and validation.\n\n```typescript\n// Example usage of the new plugin migration tool\nimport { migratePlugin } from '@elizaos/plugin-upgrade';\n\nawait migratePlugin({\n  pluginPath: './my-legacy-plugin',\n  verbose: true,\n  skipConfirmation: false\n});\n```\n\n### CLI Improvements\nThe CLI now uses `@clack/prompts` consistently across all input methods ([#5359](https://github.com/elizaos/eliza/pull/5359)), replacing the previous mix of `inquirer` and Bun's global `prompt()`. This change provides a more consistent, visually appealing, and error-resistant user experience.\n\n```typescript\n// Previous approach with inquirer\nconst answers = await inquirer.prompt([{\n  type: 'input',\n  name: 'name',\n  message: 'Plugin name:',\n  validate: (input) => input.length > 0 || 'Name required'\n}]);\n\n// New approach with clack\nconst name = await clack.text({\n  message: 'Plugin name:',\n  validate: (input) => input.length > 0 ? undefined : 'Name required'\n});\n\nif (clack.isCancel(name)) {\n  clack.cancel('Operation cancelled.');\n  process.exit(0);\n}\n```\n\n### UI Redesign\nThe client UI has undergone a significant redesign to align with the new Figma specifications. Major components like the Agent Card ([#5344](https://github.com/elizaos/eliza/pull/5344), [#5351](https://github.com/elizaos/eliza/pull/5351)), Chat interface ([#5349](https://github.com/elizaos/eliza/pull/5349)), and Sidebar ([#5373](https://github.com/elizaos/eliza/pull/5373)) now feature improved layouts, better spacing, and more intuitive interactions.\n\n## 3. Bug Fixes\n\nSeveral critical bugs were addressed this week:\n\n1. **Environment File Creation**: The `.env` file creation process was simplified to use clean templates without runtime environment pollution, preventing clutter with unrelated variables ([#5340](https://github.com/elizaos/eliza/pull/5340)).\n\n2. **Plugin Installation**: Fixed an issue where AI model plugins weren't being automatically installed during project creation despite being selected and configured ([#5335](https://github.com/elizaos/eliza/pull/5335)).\n\n3. **REST API Performance**: Removed redundant `express.json` middleware in the API router that was causing duplicate JSON parsing and creating unnecessary overhead ([#5384](https://github.com/elizaos/eliza/pull/5384)).\n\n4. **CLI Project Creation**: Corrected the directory display in the `elizaos create` command and ensured proper cleanup on interruption, improving the developer experience ([#5321](https://github.com/elizaos/eliza/pull/5321)).\n\n5. **Type Safety**: Resolved several TypeScript issues across the codebase, particularly in the client components, ensuring better type safety and reducing potential runtime errors ([#5346](https://github.com/elizaos/eliza/pull/5346), [#5395](https://github.com/elizaos/eliza/pull/5395)).\n\n## 4. API Changes\n\nThe REST API documentation has been updated to match the actual implementation ([#5380](https://github.com/elizaos/eliza/pull/5380)), fixing discrepancies where the docs showed non-existent endpoints and incorrect request parameters. Developers should review the updated documentation to ensure their integrations are using the correct API patterns.\n\nKey changes include clarification of the message endpoint structure:\n\n```typescript\n// Correct message posting endpoint\nPOST /messages\n{\n  \"agentId\": \"your-agent-id\",\n  \"text\": \"your message\",\n  \"userId\": \"some-user-id\"\n}\n\n// NOT the incorrect version that was documented\nPOST /message\n```\n\nAdditionally, knowledge plugin APIs are now clearly documented as internal only, not exposed through the REST API.\n\n## 5. Social Media Integrations\n\nThe team is working to restore suspended X/Twitter accounts, with positive dialogue with X support and restoration expected within the next week. In the meantime, the team has been active on Farcaster.\n\nThe Twitter plugin has seen improvements to its documentation ([#5408](https://github.com/elizaos/eliza/pull/5408)), providing clearer guidance for developers integrating with the Twitter API. Additionally, there's ongoing work to address the 403 response issue when fetching Twitter/X timelines, as mentioned in Discord discussions.\n\n## 6. Model Provider Updates\n\nA new Grok language model integration ([#5338](https://github.com/elizaos/eliza/pull/5338)) has been proposed to enable using xAI's Grok models with ElizaOS. This plugin leverages Grok's OpenAI-compatible API and allows users with an XAI API key to access these models within the ElizaOS ecosystem.\n\n```typescript\n// Example configuration for Grok plugin\n// In .env file:\nXAI_API_KEY=your_xai_api_key\n\n// In character file:\n{\n  \"id\": \"gork\",\n  \"settings\": {\n    \"name\": \"Gork\",\n    \"description\": \"A character powered by Grok\",\n    \"systemPrompt\": \"You are Gork, a helpful assistant.\",\n    \"provider\": \"grok\"\n  }\n}\n```\n\nAdditionally, Discord discussions highlighted successful configurations with different model combinations, including SQLite + OpenRouter + Ollama for embeddings.\n\n## 7. Breaking Changes\n\nFor developers upgrading from V1 to V2, several important changes should be noted:\n\n1. **V2 Beta Status**: According to Discord discussions, V2 has been in beta since March with hackathons and production agents already using it. The team is currently focused on stabilizing V2 before wider release.\n\n2. **ElizaOS Cloud**: This has been released and is in production according to team members, with ongoing enhancements visible in Shaw's Farcaster posts.\n\n3. **Plugin Compatibility**: The plugin-image-generation is outdated and doesn't work with ElizaOS 1.x versions. Developers should use LLM providers in 1.x that support image generation instead.\n\n4. **Character File Configuration**: System prompts in character files now require specific formatting for consistent behavior. When migrating, ensure your character files follow the updated structure to avoid unexpected results.\n\nA key migration consideration is that V2 is usable now but still undergoing stabilization, with marketing initiatives planned once the X/Twitter account is restored. If you're experiencing issues with V2, comprehensive support is available through the GitHub knowledge repository and builder updates channel on Discord.\n\n---\n\nFor detailed guidance on implementing these changes or troubleshooting issues, visit our [documentation](https://docs.elizaos.com) or join our [Discord community](https://discord.gg/ai16z).",
  "source_references": [
    "2025-07-05\n---\n2025-07-04.md\n---\nFile not found\n---\n2025-07-03.md\n---\n# elizaOS Discord - 2025-07-03\n\n## Overall Discussion Highlights\n\n### Project Status and Communication\n- The team is working to restore suspended X/Twitter accounts, expected to regain access within a week\n- A new builder updates announcement channel has been created to separate technical updates from general announcements\n- The team has been active on Farcaster while X accounts are suspended\n- Community members expressed concerns about difficulty finding clear updates on project status\n- A GitHub knowledge repository is available with daily/weekly/monthly summaries\n\n### Technical Development\n- **ElizaOS V2**: Development is underway with improved agent capabilities\n- **ElizaOS Cloud**: Implementation in progress as shown in Shaw's Farcaster posts\n- **Plugin Compatibility**: The plugin-image-generation is outdated and doesn't work with ElizaOS 1.x versions\n- **New Releases**: ElizaOS v1.0.16 and v1.0.17 were announced\n- **Agentic Systems**: Progress on founding father agents for July 4th and an agentic hackathon platform to test V2\n- **Content Generation**: Fully automated news show capabilities with source gathering, summarization, translation, animation, voice, and publishing\n- **Speech Technology**: Significant progress in low-latency open-source TTS and STT, enabling human+AI podcast possibilities\n\n### Tokenomics Discussion\n- Community members discussed burning JIMMY tokens to create deflationary tokenomics\n- Debate about whether burning or adding to liquidity pools is more beneficial\n- Reference to JIMMY with a 3.3% burn rate\n- Discussion about implementing an \"incinerator\" feature on autofun for token burning\n\n### Configuration and Troubleshooting\n- Users shared successful configurations with different model combinations (SQLite + OpenRouter + Ollama for embeddings)\n- Discussion about blockchain integration with different EVM chains like Avalanche and Sepolia\n- Character file configuration issues with system prompts were addressed\n\n## Key Questions & Answers\n\n**Q: Is the ElizaOS project still active despite X/Twitter accounts being suspended?**  \nA: Yes, the team is working to restore the accounts and has been active on Farcaster, with positive dialogue with X support.\n\n**Q: Where can one find updates on ElizaOS development?**  \nA: Updates are available in the builder updates channel, Farcaster, and a new knowledge repository with daily/weekly/monthly summaries.\n\n**Q: Is there any image gen plugin that is supported in current version?**  \nA: Some LLM providers in 1.x support image generation, so just omit plugin-image-generation.\n\n**Q: Where in the character file can I put a prompt to ensure my agent always returns in all caps?**  \nA: In system prompt add instruction if you always want it.\n\n**Q: When will ElizaOS regain access to their X account?**  \nA: Within the next week or so.\n\n**Q: How is the news show content created?**  \nA: Everything from source gathering, summarizing, translations, animation, voice, automation, publishing.\n\n**Q: Is the ElizaV2 rumor real?**  \nA: Not directly answered, though V2 is referenced throughout multiple discussions.\n\n**Q: Are there plans to change the AI16z token name?**  \nA: It's in the works but not something they'll provide granular updates about.\n\n## Community Help & Collaboration\n\n1. **Plugin Compatibility Issue**\n   - Helper: Odilitime\n   - Helpee: Chief\n   - Context: Error with plugin-image-generation\n   - Resolution: Identified it's an outdated plugin not compatible with ElizaOS 1.x, suggested using LLM providers that support image generation instead\n\n2. **Network Configuration**\n   - Helper: 0xbbjoker\n   - Helpee: Uro\u0161 Ognjenovi\u0107\n   - Context: Adding networks to character file\n   - Resolution: Suggested removing sepolia from config and using elizaos dev to trigger the build after changing the character\n\n3. **Project Information Access**\n   - Helper: Kenk\n   - Helpee: Sky\n   - Context: Finding information about project status and updates\n   - Resolution: Shared a Notion workspace with project information and mentioned the creation of a separate announcements channel\n\n4. **Content Resources**\n   - Helper: jin\n   - Helpee: Community\n   - Context: Need for content resources to create updates\n   - Resolution: Shared the ElizaOS knowledge repository on GitHub with comprehensive resources\n\n5. **Hyperfy Integration**\n   - Helper: jin\n   - Helpee: Bealers\n   - Context: Scripting deployments for Hyperfy and ElizaOS agents\n   - Resolution: Shared a GitHub repository with ElizaOS 3D Hyperfy starter code\n\n## Action Items\n\n### Technical\n- Fix compatibility issues with plugin-image-generation for ElizaOS 1.x (Mentioned by Odilitime)\n- Add support for image generation in Discord responses (Mentioned by 0xbbjoker)\n- Resolve 403 response issue when fetching Twitter/X timeline (Mentioned by elle)\n- Fix network configuration for character files to support multiple EVM chains (Mentioned by Uro\u0161 Ognjenovi\u0107)\n- Implement ElizaOS Cloud as shown in Shaw's Farcaster post (Mentioned by Kenk)\n- Develop V2 of ElizaOS with improved agent capabilities (Mentioned by Multiple users)\n- Development of agentic hackathon platform to test V2 (Mentioned by jin)\n- Low latency open source TTS and STT implementation (Mentioned by jin)\n\n### Documentation\n- Create clearer, non-technical announcements for investors and general community (Mentioned by Sky)\n- Update website to remove mentions of non-existent partnerships and fix dead links (Mentioned by hildi)\n- Make Shaw's Farcaster activity more discoverable for community members (Mentioned by Sky)\n- V2 communications overview with breakdown of features and benefits (Mentioned by Kenk)\n- Content resources in GitHub repository for newsletters and updates (Mentioned by jin)\n\n### Feature\n- Create an Eliza radio with AI-generated music and crypto news (Mentioned by Dr. Neuro)\n- Implement deflationary tokenomics for JIMMY token through burning (Mentioned by 33coded)\n- Implement an \"incinerator\" feature on autofun for token burning (Mentioned by 33coded)\n- Add Solana integration plugin (Mentioned by Chief)\n- Founding father agents for July 4th with agentic governance systems (Mentioned by jin)\n- Builder updates announcement channel for higher signal updates (Mentioned by Kenk)\n---\n2025-07-02.md\n---\n# elizaOS Discord - 2025-07-02\n\n## Overall Discussion Highlights\n\n### ElizaOS V2 Status\n- **V2 Beta Status**: Kenk clarified that V2 has been in beta since March with hackathons and production agents already using it\n- **Current Focus**: The team is working on stabilizing V2 before wider release\n- **Community Sentiment**: Mixed reactions with some users expressing frustration about perceived delays while others defending the development timeline\n- **Availability**: jin confirmed that V2 is usable now, with ongoing stabilization efforts\n\n### Platform & Infrastructure\n- **ElizaOS Cloud**: Has been released according to pangolink\n- **auto.fun Platform**: Receiving updates with a tweet shared about its refresh\n- **Template Build Issues**: Dev_Danhiel created a PR to fix template build problems in the framework\n- **X/Twitter Account**: Currently suspended, but Kenk mentioned they're in \"active conversations with X\" with positive outlook for resolution\n- **Marketing Plans**: Marketing initiatives are planned once the X account is restored\n\n### Technical Challenges\n- **API Integration**: Users experienced difficulties with message endpoints (/message vs /messages)\n- **OpenRouter Configuration**: Multiple users encountered issues with model selection and environment variable conflicts\n- **Knowledge Plugin API**: Clarified as being internal-only, not exposed through REST API\n- **Twitter Plugin**: Development challenges with 403 errors in interactions.ts\n- **EVM Chain Configuration**: Issues with blockchain interactions requiring proper environment variables\n\n### Token & Community\n- **Token Utility Discussions**: Debates about whether the token has meaningful use cases beyond funding development\n- **Tokenomics Speculation**: Some users discussing potential use cases like AI compute credits\n- **Community Groups**: Dr. Neuro mentioned a group exists for holders with 1M+ tokens via auto.fun\n- **Market Sentiment**: Some concern about a whale selling ELI5 tokens, though others maintained confidence\n\n## Key Questions & Answers\n\n**Q: What is the status of the V2 that was promised for Q1?**  \nA: Kenk clarified that V2 Beta has been running since March with hackathons and production agents already using it.\n\n**Q: What's happening with the suspended X/Twitter account?**  \nA: Kenk stated they're in active conversations with X and resolution should come soon, looking positive.\n\n**Q: Can the knowledge plugin be used via API?**  \nA: No, knowledge plugin APIs aren't exposed through REST API - they're internal only. You'd need to use CLI commands or send files/text directly to the agent through messages.\n\n**Q: What is the correct endpoint to send a message to an agent?**  \nA: POST to `/messages` with body like `{\"agentId\": \"your-agent-id\", \"text\": \"your message\", \"userId\": \"some-user-id\"}`.\n\n**Q: Why does OpenRouter default to Gemini models even when configured for other models?**  \nA: Having OpenAI environment variables set can cause conflicts. Commenting out OpenAI-related variables helps resolve this issue.\n\n**Q: Where are character files stored in ElizaOS 1.0.15?**  \nA: Check `packages/core/src/defaultCharacters/` or look for a `characters/` folder in your project root. GUI-created characters might be stored in a database or config directory.\n\n**Q: Why am I getting 403 errors with the Twitter plugin fork?**  \nA: The interactions.ts mentions handling is causing authentication issues with Twitter's API.\n\n**Q: Why am I getting errors for base and mainnet chains?**  \nA: EVM_PRIVATE_KEY environment variable is required for the plugin to work properly.\n\n## Community Help & Collaboration\n\n1. **OpenRouter Configuration Help**\n   - Helper: jintern\n   - Helpee: anunnaki_reborn\n   - Issue: OpenRouter defaulting to Gemini models despite configuration\n   - Resolution: Suggested commenting out OpenAI-related environment variables, which resolved the issue\n\n2. **API Endpoint Clarification**\n   - Helper: jintern and sayonara\n   - Helpee: thanhnt\n   - Issue: User couldn't find correct API endpoint to send messages to agents\n   - Resolution: Directed to documentation with messaging API details\n\n3. **EVM Chain Configuration**\n   - Helper: 0xbbjoker\n   - Helpee: Uro\u0161 Ognjenovi\u0107\n   - Issue: EVM chain configuration errors\n   - Resolution: Identified missing EVM_PRIVATE_KEY environment variable requirement\n\n4. **Template Build Fix**\n   - Helper: jintern\n   - Helpee: Dev_Danhiel\n   - Issue: Template build issues in the framework\n   - Resolution: jintern offered to help test the fix Dev_Danhiel was creating\n\n5. **Project Status Clarification**\n   - Helper: jin\n   - Helpee: Skullcross\n   - Issue: Concerns about project development timeline\n   - Resolution: Explained that v2 is usable now, being stabilized, and marketing will come with X restoration\n\n## Action Items\n\n### Technical Tasks\n1. **Fix template build issues in the framework** (Mentioned by Dev_Danhiel)\n2. **Resolve X/Twitter account suspension** (Mentioned by Kenk)\n3. **Fix Twitter plugin fork to resolve 403 errors in interactions.ts** (Mentioned by Gnomon\ud83e\udeb2)\n4. **Improve error handling for OpenRouter model selection** to prevent defaulting to other providers (Mentioned by anunnaki_reborn)\n5. **Improve handling of free tier model timeouts** that cause UI to hang on \"thinking...\" (Mentioned by anunnaki_reborn)\n6. **Add support for more EVM chains** including Base (Mentioned by Uro\u0161 Ognjenovi\u0107)\n\n### Documentation Needs\n1. **Provide clear documentation on token utility and tokenomics** (Mentioned by hildi)\n2. **Update API documentation** to clarify knowledge plugin APIs are not exposed through REST API (Mentioned by jintern)\n3. **Create clear guide for configuring environment variables** to avoid conflicts between model providers (Mentioned by sayonara)\n4. **Document character file locations and storage methods** in v1.0.15 (Mentioned by anunnaki_reborn)\n\n### Feature Requests\n1. **Add custom LP functionality to auto.fun** (Mentioned by Dr. Neuro)\n2. **Consider adding an \"ORG feature\" to auto.fun** (Mentioned by Dr. Neuro)\n3. **Implement token burning functionality** (\"incinerator integration\") in auto.fun (Mentioned by 33coded)\n4. **Expose knowledge plugin APIs through REST API** (Mentioned by thanhnt)\n5. **Marketing initiatives** needed for project/token (Mentioned by Matt Degen)\n---\n2025-07-04.md\n---\nFile not found\n---\n2025-07-03.md\n---\nFile not found\n---\n2025-07-02.md\n---\nFile not found\n---\n2025-07-04.json\n---\nFile not found\n---\n2025-07-04.md\n---\nFile not found\n---\n2025-07-04.json\n---\nFile not found\n---\n2025-07-04.md\n---\nFile not found\n---\n2025-07-04.json\n---\nFile not found\n---\n2025-07-04.md\n---\nFile not found\n---\n2025-07-04.json\n---\nFile not found\n---\n2025-07-04.md\n---\nFile not found\n---\n2025-07-05.md\n---\nFile not found\n---\n2025-06-29.md\n---\n# ElizaOS Weekly Update (Jun 29 - 5, 2025)\n\n## OVERVIEW\n\nThis week saw a major push to enhance the developer experience, with significant refactoring and new features for the CLI to improve usability and project setup. The team also focused on UI/UX refinements, including layout improvements and bug fixes, alongside introducing an AI-powered tool for upgrading plugins.\n\n## KEY TECHNICAL DEVELOPMENTS\n\n### Command-Line Interface (CLI) Overhaul\n\nThe CLI received substantial upgrades to improve user-friendliness and functionality. This includes a major refactor of the environment variable system, prompts for easier configuration, and smarter project creation that now auto-installs required AI model plugins ([#5326](https://github.com/elizaos/eliza/pull/5326), [#5335](https://github.com/elizaos/eliza/pull/5335)). The CLI now also displays more accurate version information and provides clearer messaging during project setup ([#5322](https://github.com/elizaos/eliza/pull/5322), [#5337](https://github.com/elizaos/eliza/pull/5337)).\n\n### UI/UX and Character Management Refinements\n\nSeveral updates were made to improve the web interface and character handling. The character form buttons were redesigned for a better layout, and a default avatar was set for Eliza ([#5342](https://github.com/elizaos/eliza/pull/5342), [#5324](https://github.com/elizaos/eliza/pull/5324)). Key bug fixes addressed the character file size limit, increasing it to 2MB, and removed misleading UI text to clarify the save process ([#5308](https://github.com/elizaos/eliza/pull/5308), [#5314](https://github.com/elizaos/eliza/pull/5314)).\n\n### Plugin System Enhancements\n\nThe plugin ecosystem was improved with the introduction of an AI-powered migration tool to help developers upgrade plugins from v0.x to v1.x ([#5311](https://github.com/elizaos/eliza/pull/5311)). The essential `plugin-bootstrap` is now clearly marked in the UI, and its documentation was enhanced to clarify its importance for agent functionality ([#5313](https://github.com/elizaos/eliza/pull/5313), [#5309](https://github.com/elizaos/eliza/pull/5309)). Additionally, a critical bug causing infinite loops in `plugin-sql` integration tests was resolved ([#5327](https://github.com/elizaos/eliza/pull/5327)).\n\n## CLOSED ISSUES\n\n### User-Reported Bugs and Setup Issues\n\nSeveral issues reported by the community were addressed and closed. This includes a critical fix for users unable to\n---\n2025-07-01.md\n---\n# ElizaOS Monthly Update (July 2025)\n\n## OVERVIEW\n\nJuly was a month of significant enhancements focused on developer experience and usability. Key achievements include a major overhaul of the CLI for improved maintainability, the introduction of an AI-powered tool to streamline plugin upgrades, and numerous fixes to refine the project creation workflow and user interface.\n\n## KEY TECHNICAL DEVELOPMENTS\n\n*   **Major CLI Overhaul for Enhanced Usability**\n    *   The CLI environment variable system was significantly refactored to be more maintainable and user-friendly ([#5326](https://github.com/elizaos/eliza/pull/5326)).\n    *   Fixed bugs in the `elizaos create` command to show the correct directory and ensure proper cleanup on interruption ([#5321](https://github.com/elizaos/eliza/pull/5321)).\n    *   Updated command messages to dynamically display the correct component type (Plugin, Agent, etc.) being created ([#5337](https://github.com/elizaos/eliza/pull/5337)).\n\n*   **AI-Powered Plugin Migration Tool**\n    *   A new migration tool powered by Claude was introduced to assist developers in upgrading ElizaOS plugins from v0.x to\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 65 new PRs (60 merged), 10 new issues, and 17 active contributors.\",\n  \"topIssues\": [\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      \"id\": \"I_kwDOMT5cIs68jIbD\",\n      \"title\": \"fix: ensure `bun run test` works consistently across all packages\",\n      \"author\": \"wtfsayo\",\n      \"number\": 5218,\n      \"repository\": \"elizaos/eliza\",\n      \"body\": \"## Problem\\n\\nCurrently, `bun run test` does not work consistently across all packages in the ElizaOS monorepo. This creates several issues:\\n\\n1. **Inconsistent Developer Experience**: Developers cannot reliably run tests in individual packages\\n2. **CI/CD Fragility**: The root `bun test` command fails, making it difficult to validate changes\\n3. **Low Test Coverage**: Only 28% of source files have tests (excluding dist files)\\n4. **Missing Test Infrastructure**: 29% of packages have no test scripts defined\\n\\n### Current State Analysis\\n\\n**Test Coverage by Package:**\\n- \u2705 **10/14 packages (71%)** have test scripts defined\\n- \u274c **4/14 packages (29%)** have no test infrastructure\\n- \ud83d\udd34 Root `bun test` fails due to `@elizaos/plugin-bootstrap` mock initialization errors\\n\\n**Packages with Issues:**\\n1. **No Tests At All:**\\n   - `@elizaos/app` - Tauri application\\n   - `@elizaos/autodoc` - Documentation generator\\n   - `create-eliza` - Scaffolding tool\\n   - `@elizaos/docs` - Docusaurus site (expected)\\n\\n2. **Failing Tests:**\\n   - `@elizaos/plugin-bootstrap` - Mock initialization errors\\n   - `@elizaos/project-tee-starter` - Environment setup issues\\n\\n3. **Excluded from Root Tests:**\\n   - `@elizaos/plugin-starter` (template)\\n   - `@elizaos/docs` (documentation)\\n   - `@elizaos/plugin-sql` (has tests but excluded)\\n\\n## Proposed Solution\\n\\nImplement a phased approach to ensure all packages have working tests:\\n\\n### Phase 1: Fix Failing Tests (Priority: High)\\n- [ ] Fix `@elizaos/plugin-bootstrap` mock initialization errors\\n- [ ] Fix `@elizaos/project-tee-starter` environment setup issues\\n- [ ] Ensure root `bun test` command passes\\n\\n### Phase 2: Add Missing Test Infrastructure (Priority: High)\\n- [ ] Add test setup to `@elizaos/app` (Tauri app testing)\\n- [ ] Add test setup to `@elizaos/autodoc`\\n- [ ] Add test setup to `create-eliza`\\n- [ ] Create minimal test files to validate setup\\n\\n### Phase 3: Standardize Test Configuration (Priority: Medium)\\n- [ ] Create shared test configuration for consistency\\n- [ ] Standardize coverage reporting (exclude dist/, build/, node_modules/)\\n- [ ] Add coverage thresholds per package\\n- [ ] Ensure all packages use Bun test runner consistently\\n\\n### Phase 4: Documentation & CI Updates (Priority: Medium)\\n- [ ] Update contributing guide with testing requirements\\n- [ ] Add pre-commit hooks for test validation\\n- [ ] Update CI workflows to run package-specific tests\\n- [ ] Create testing best practices documentation\\n\\n## Implementation Details\\n\\n### 1. Shared Test Configuration\\nCreate a base test configuration that all packages can extend:\\n\\n```typescript\\n// packages/test-config/base.config.ts\\nexport default {\\n  testMatch: [\\\"**/*.test.ts\\\", \\\"**/*.spec.ts\\\"],\\n  coverage: {\\n    exclude: [\\n      \\\"**/dist/**\\\",\\n      \\\"**/build/**\\\",\\n      \\\"**/node_modules/**\\\",\\n      \\\"**/*.d.ts\\\",\\n      \\\"**/coverage/**\\\"\\n    ],\\n    threshold: {\\n      statements: 60,\\n      branches: 60,\\n      functions: 60,\\n      lines: 60\\n    }\\n  }\\n}\\n```\\n\\n### 2. Package Test Script Standardization\\nEnsure every package.json has:\\n```json\\n{\\n  \\\"scripts\\\": {\\n    \\\"test\\\": \\\"bun test\\\",\\n    \\\"test:coverage\\\": \\\"bun test --coverage\\\"\\n  }\\n}\\n```\\n\\n### 3. Fix Root Test Command\\nUpdate root package.json to handle package-specific test requirements:\\n```json\\n{\\n  \\\"scripts\\\": {\\n    \\\"test\\\": \\\"turbo run test --filter=\\\\!@elizaos/docs --filter=\\\\!@elizaos/plugin-starter\\\"\\n  }\\n}\\n```\\n\\n## Success Criteria\\n\\n- [ ] `bun run test` works in every package directory\\n- [ ] Root `bun test` command passes without errors\\n- [ ] All packages have at least minimal test coverage\\n- [ ] Test coverage reporting excludes dist/build artifacts\\n- [ ] CI/CD pipeline runs all tests successfully\\n- [ ] Developer documentation updated with testing guidelines\\n\\n## Benefits\\n\\n1. **Improved Developer Experience**: Consistent testing commands across all packages\\n2. **Better Code Quality**: Increased test coverage from 28% to target 60%+\\n3. **Reliable CI/CD**: All PRs validated with comprehensive test suite\\n4. **Easier Onboarding**: New contributors can confidently run tests\\n5. **Reduced Bugs**: Catch issues early with standardized testing\\n\\n## Alternatives Considered\\n\\n1. **Using Different Test Runners**: Considered Jest/Vitest but Bun test is already established\\n2. **Monorepo-level Testing Only**: Would miss package-specific issues\\n3. **Excluding Packages from Testing**: Would leave gaps in coverage\\n\\n## Additional Context\\n\\n- Current test coverage is ~28% (excluding dist files)\\n- The monorepo uses Turbo for orchestration\\n- Bun test runner is the standard across the project\\n- Some packages have E2E tests (client) that need special handling\\n\\nThis improvement will significantly enhance the development workflow and code quality across the ElizaOS project.\",\n      \"createdAt\": \"2025-06-20T13:18:54Z\",\n      \"closedAt\": \"2025-07-02T11:54:24Z\",\n      \"state\": \"CLOSED\",\n      \"commentCount\": 2\n    },\n    {\n      \"id\": \"I_kwDOMT5cIs6-uqs2\",\n      \"title\": \"Review actions tab in GUI\",\n      \"author\": \"borisudovicic\",\n      \"number\": 5377,\n      \"repository\": \"elizaos/eliza\",\n      \"body\": \"\",\n      \"createdAt\": \"2025-07-03T16:09:48Z\",\n      \"closedAt\": null,\n      \"state\": \"OPEN\",\n      \"commentCount\": 2\n    },\n    {\n      \"id\": \"I_kwDOMT5cIs65Y6DK\",\n      \"title\": \"Client hot reloads in dev\",\n      \"author\": \"lalalune\",\n      \"number\": 4889,\n      \"repository\": \"elizaos/eliza\",\n      \"body\": \"Right now we have to rebuild and restart to see any UI changes, would be really nice to have hot reload\",\n      \"createdAt\": \"2025-06-02T13:56:56Z\",\n      \"closedAt\": \"2025-07-03T15:22:43Z\",\n      \"state\": \"CLOSED\",\n      \"commentCount\": 1\n    },\n    {\n      \"id\": \"I_kwDOMT5cIs65uMCa\",\n      \"title\": \"Dependency Loop in local ai plugin\",\n      \"author\": \"omariosman\",\n      \"number\": 4912,\n      \"repository\": \"elizaos/eliza\",\n      \"body\": \"After `elizaos create` I chose to use local ai.\\nHowever when I do `elizaos start` I encounter this error:\\n```\\nerror: Package \\\"@elizaos/plugin-local-ai@github:elizaos-plugins/plugin-local-ai#2dad17e\\\" has a dependency loop\\n  Resolution: \\\"@elizaos/plugin-local-ai@1.0.0\\\"\\n  Dependency: \\\"@elizaos/plugin-local-ai@github:elizaos-plugins/plugin-local-ai#v1.0.0\\\"\\nerror: An internal error occurred (DependencyLoop)\\n\\nERROR: Failed to install plugin @elizaos/plugin-local-ai\\nWARN: Failed to load plugin module '@elizaos/plugin-local-ai' using all available strategies\\n``` \",\n      \"createdAt\": \"2025-06-04T01:00:29Z\",\n      \"closedAt\": \"2025-07-03T15:22:27Z\",\n      \"state\": \"CLOSED\",\n      \"commentCount\": 0\n    }\n  ],\n  \"topPRs\": [\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_kwDOMT5cIs6ddQIv\",\n      \"title\": \"feat: implement comprehensive documentation overhaul with two-track system\",\n      \"author\": \"SYMBaiEX\",\n      \"number\": 5401,\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 Features Implemented\\n\\n### \ud83c\udfaf Two-Track Documentation Architecture\\n- **Simple Track**: Streamlined quick-start guides for non-technical users\\n- **Technical Track**: Deep technical documentation for developers\\n- **Customize Track**: Advanced customization and plugin development guides\\n\\n### \ud83d\ude80 Enhanced User Experience\\n- **Glass Morphism Design System**: Modern, polished UI with smooth animations\\n- **Smart Search**: AI-powered search with contextual suggestions\\n- **Improved Navigation**: Clear separation between user types and content tracks\\n- **RSS Integration**: Fixed RSS button styling to match GitHub button design\\n\\n### \ud83d\udcda Content Improvements\\n- **Restructured FAQ**: Comprehensive answers addressing common issues\\n- **Updated Configuration**: Environment variable standardization and examples\\n- **Better API Documentation**: Enhanced REST API docs with Socket.IO examples\\n- **Visual Design**: Consistent theming with #f2f2f2 light theme background\\n\\n### \ud83d\udd27 Technical Enhancements\\n- **Performance Optimizations**: Reduced transitions and improved theme switching\\n- **Component Architecture**: Modular search components with AI integration\\n- **Layout Fixes**: Resolved gaps, sticky positioning, and responsive design issues\\n- **Build Warnings**: Fixed missing documentation files and broken links\\n\\n## Addresses Issue #5234 Requirements\\n\\n\u2705 **Clear Audience Separation**: Distinct tracks for different user types\\n\u2705 **Progressive Disclosure**: Simple \u2192 Technical \u2192 Advanced progression\\n\u2705 **Visual Learning**: Enhanced UI with glassmorphic design elements\\n\u2705 **Better Navigation**: Streamlined sidebar and navbar organization\\n\u2705 **Technical Deep Dives**: Architecture explanations and development guides\\n\u2705 **Quick Start Experience**: Simplified onboarding for non-technical users\\n\\n## Technical Changes\\n\\n### Documentation Structure\\n- Implemented three-track architecture (Simple, Technical, Customize)\\n- Updated sidebar configuration with collapsed states\\n- Enhanced DocItem components with AI assistant integration\\n\\n### Design System\\n- Glass morphism effects with proper backdrop blur and transparency\\n- Optimized color scheme using #f2f2f2 for light theme consistency\\n- Fixed RSS button styling to match existing GitHub button design\\n- Improved theme switching performance with reduced transition durations\\n\\n### Search & Navigation\\n- Smart search component with AI-powered suggestions\\n- Enhanced semantic search capabilities using Lunr.js\\n- Fixed navigation redirects and removed redundant components\\n- Improved accessibility and keyboard navigation\\n\\n### Performance & UX\\n- Reduced motion for users with accessibility preferences\\n- CSS containment for better rendering performance\\n- Optimized theme switching with minimal layout shift\\n- Fixed sidebar gaps and sticky positioning issues\\n\\n## Files Changed\\n\\n### Core Documentation Files\\n- `packages/docs/docs/faq.md` - Comprehensive FAQ updates\\n- `packages/docs/docs/intro.mdx` - Updated introduction with track navigation\\n- `packages/docs/docs/simple/intro.md` - New simple track entry point\\n\\n### Configuration & Structure\\n- `packages/docs/docusaurus.config.ts` - RSS, AI, and plugin configuration\\n- `packages/docs/sidebars.ts` - Three-track sidebar architecture\\n- `packages/docs/package.json` - Updated dependencies and scripts\\n\\n### Design & Components\\n- `packages/docs/src/css/custom.css` - Complete design system overhaul\\n- `packages/docs/src/components/SmartSearch/index.tsx` - AI-powered search\\n- `packages/docs/src/theme/DocItem/Content/index.js` - AI assistant integration\\n- `packages/docs/src/theme/Root/index.js` - Optimized navigation and redirects\\n\\n### API Documentation\\n- `packages/docs/docs/rest/socket-io-real-time-connection.api.mdx` - Enhanced Socket.IO docs\\n\\n## Testing\\n\\n- \u2705 All build processes complete successfully\\n- \u2705 Documentation renders correctly across all tracks\\n- \u2705 Search functionality works with both regular and AI-enhanced modes\\n- \u2705 Theme switching performs smoothly without layout shifts\\n- \u2705 RSS feeds and external links function properly\\n- \u2705 Mobile and desktop responsive design verified\\n\\n## Breaking Changes\\n\\nNone. All changes are additive and maintain backward compatibility with existing documentation links and structure.\\n\\n## Next Steps\\n\\nThis foundation enables:\\n1. **Content Migration**: Moving existing docs into appropriate tracks\\n2. **Template Gallery**: Adding pre-built agent templates\\n3. **Video Tutorials**: Integration points for multimedia content\\n4. **Interactive Examples**: Framework for hands-on documentation\\n5. **Community Contributions**: Clear structure for community-generated content\\n\\n## Impact\\n\\n- **Simple Users**: Can now get started in under 5 minutes with clear, focused guidance\\n- **Developers**: Have access to deep technical documentation and architecture explanations\\n- **Contributors**: Benefit from improved development workflows and clearer project structure\\n- **Overall Project**: Professional, polished documentation that matches ElizaOS product quality\\n\\nThis PR represents the foundation for a world-class documentation experience that serves all ElizaOS users effectively.\\n\\n<!-- This is an auto-generated comment: release notes by coderabbit.ai -->\\n\\n## Summary by CodeRabbit\\n\\n* **New Features**\\n  * Introduced extensive new documentation for ElizaOS, including quick start guides, agent customization tools, platform integration setup (Discord, Telegram, Twitter), plugin development interfaces, and advanced configuration options.\\n  * Added guides and UI documentation for analytics, validation frameworks, visual customization, feature workshops, and accessibility within the design system.\\n  * Expanded documentation structure with separate tracks for simple and technical users, and detailed FAQs.\\n\\n* **Documentation**\\n  * Added comprehensive API, CLI, and customization documentation, including markdown and MDX files for setup, usage, best practices, and troubleshooting.\\n  * Enhanced design system docs with guidelines on accessibility, performance, components, implementation, and animation.\\n  * Updated and improved documentation formatting, structure, and navigation.\\n  * Added new tags for blog posts and improved environment configuration examples.\\n\\n* **Style**\\n  * Improved formatting and consistency across documentation files, including whitespace, headings, and code snippets.\\n\\n* **Chores**\\n  * Added new scripts for documentation development and startup.\\n  * Removed deprecated or redundant configuration and documentation files.\\n\\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->\",\n      \"repository\": \"elizaos/eliza\",\n      \"createdAt\": \"2025-07-04T14:30:08Z\",\n      \"mergedAt\": null,\n      \"additions\": 37058,\n      \"deletions\": 365\n    },\n    {\n      \"id\": \"PR_kwDOMT5cIs6clTBC\",\n      \"title\": \"feat: plugins upgrade with claude code\",\n      \"author\": \"0xbbjoker\",\n      \"number\": 5311,\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 stepwise, gated process with detailed progress reporting and validation at each stage.\\n  * Added advanced migration guides and comprehensive documentation covering configuration, state management, providers, prompt generation, and testing.\\n  * Extended CLI options for the upgrade command, including verbosity controls and confirmation skipping.\\n\\n* **Bug Fixes**\\n  * Improved error handling and user messaging during the migration process.\\n\\n* **Documentation**\\n  * Added detailed migration, prompt, state, provider, and testing guides to assist plugin developers with the upgrade process.\\n\\n* **Chores**\\n  * Updated dependencies to support the new migration workflow.\\n\\n<!-- end of auto-generated comment: release notes by coderabbit.ai -->\",\n      \"repository\": \"elizaos/eliza\",\n      \"createdAt\": \"2025-06-29T15:07:06Z\",\n      \"mergedAt\": \"2025-07-01T12:49:28Z\",\n      \"additions\": 6050,\n      \"deletions\": 1089\n    },\n    {\n      \"id\": \"PR_kwDOMT5cIs6dPK9c\",\n      \"title\": \"feat: Add comprehensive CLI testing infrastructure\",\n      \"author\": \"SYMBaiEX\",\n      \"number\": 5364,\n      \"body\": \"## Summary\\n\\nThis PR implements a comprehensive testing infrastructure for the ElizaOS CLI, addressing issue #5325. The new testing framework provides automated validation of CLI commands, documentation consistency checks, performance monitoring, and integration testing capabilities.\\n\\n**Key Features:**\\n- Automated CLI command validation against documentation\\n- Performance testing for CLI responsiveness\\n- Error handling validation for graceful failures\\n- Integration with existing Bun test framework\\n- Documentation parsing and consistency validation\\n\\n## Changes\\n\\n### New Testing Infrastructure\\n\\n#### Test Utilities (`tests/utils/`)\\n- **`cli-test-runner.ts`**: Core test runner with command execution, timeout handling, and output validation\\n- **`documentation-parser.ts`**: Parses and validates CLI documentation from multiple sources (Markdown, TypeScript, JSON)\\n\\n#### Test Suites\\n- **`tests/commands/cli-validation.test.ts`**: \\n  - CLI infrastructure tests (version, help, executable validation)\\n  - Core command validation (create, test, start, plugins)\\n  - Documentation consistency checks\\n  - Error handling tests\\n  - Performance benchmarks\\n\\n- **`tests/integration/cli-integration.test.ts`**:\\n  - Project creation scenarios\\n  - Plugin management workflows\\n  - Agent runtime validation\\n  - Complex multi-command sequences\\n\\n#### Test Setup & Execution\\n- **`tests/setup/test-setup.ts`**: Environment setup utilities for CI/CD integration\\n- **`tests/cli-test-runner.ts`**: Custom test execution framework\\n- **`tests/run-cli-tests.sh`**: Shell script for comprehensive test execution\\n\\n### Documentation\\n- **`CLI-COMMANDS.md`**: Comprehensive CLI command documentation for validation\\n\\n### Package Updates\\n- Added new test scripts to `package.json`:\\n  - `test:cli-validation`: Run CLI validation tests\\n  - `test:cli-integration`: Run integration tests\\n  - `test:cli-runner`: Execute custom test runner\\n  - `test:cli-all`: Run complete CLI test suite\\n\\n## Test Results\\n\\nAll tests are passing with 100% success rate:\\n\\n```\\n\u2705 CLI Validation Tests: 18/18 passing\\n\u2705 Core Infrastructure: Validated\\n\u2705 Documentation Consistency: Verified\\n\u2705 Error Handling: Graceful failures confirmed\\n\u2705 Performance: Sub-5 second response times\\n```\\n\\n## Benefits\\n\\n1. **Automated Validation**: Ensures CLI commands work as expected\\n2. **Documentation Accuracy**: Validates help text matches available commands\\n3. **Regression Prevention**: Catches CLI breakages before deployment\\n4. **Performance Monitoring**: Tracks CLI response times\\n5. **CI/CD Ready**: Integrates with existing testing pipelines\\n\\n## Testing\\n\\nTo run the new CLI tests:\\n\\n```bash\\n# Run CLI validation tests\\nbun run test:cli-validation\\n\\n# Run integration tests\\nbun run test:cli-integration\\n\\n# Run all CLI tests\\nbun run test:cli-all\\n```\\n\\n## Related Issues\\n\\nResolves #5325: CLI testing infrastructure for automated validation\\n\\n## Checklist\\n\\n- [x] Tests pass locally\\n- [x] Code follows project style guidelines\\n- [x] Documentation updated\\n- [x] No breaking changes\\n- [x] Ready for review\",\n      \"repository\": \"elizaos/eliza\",\n      \"createdAt\": \"2025-07-03T09:51:41Z\",\n      \"mergedAt\": null,\n      \"additions\": 1763,\n      \"deletions\": 61\n    },\n    {\n      \"id\": \"PR_kwDOMT5cIs6c1Ksr\",\n      \"title\": \"feat: Add @elizaos/plugin-grok for xAI Grok models\",\n      \"author\": \"0xtc23\",\n      \"number\": 5338,\n      \"body\": \"Implements a new plugin `@elizaos/plugin-grok` to integrate with xAI's Grok language models. This plugin leverages Grok's OpenAI-compatible API.\\r\\n\\r\\nKey changes:\\r\\n- Created `packages/plugin-grok/`:\\r\\n    - `package.json`: Defines the new plugin package.\\r\\n    - `tsconfig.json`, `tsup.config.ts`: Build configuration.\\r\\n    - `src/index.ts`: Implements `GrokLanguageModel` (extending `ChatLanguageModel` from core) using the OpenAI SDK configured for Grok's API endpoint (`https://api.x.ai/v1`) and `XAI_API_KEY`. Includes `generate` and `stream` methods with preliminary tool use support. Registers `GrokService` with service type \\\"grok\\\".\\r\\n    - `src/__tests__/index.test.ts`: Basic unit tests for `GrokLanguageModel`.\\r\\n    - `README.md`: Documentation for setting up and using the plugin.\\r\\n- Updated `packages/cli/src/server/loader.ts` to import `@elizaos/plugin-grok`, ensuring the service is registered.\\r\\n- Updated `packages/cli/tsconfig.json` to include path mapping for the new local plugin.\\r\\n- Updated `packages/cli/src/characters/gork.ts` to demonstrate how a character can conditionally use `@elizaos/plugin-grok` if `XAI_API_KEY` is set.\\r\\n\\r\\nThis allows users with an XAI API key to use Grok models within the ElizaOS ecosystem.\\r\\n\\r\\n<!-- Use this template by filling in information and copying and pasting relevant items out of the HTML comments. -->\\r\\n\\r\\n# Relates to\\r\\n\\r\\n<!-- LINK TO ISSUE OR TICKET -->\\r\\n\\r\\n<!-- This risks section must be filled out before the final review and merge. -->\\r\\n\\r\\n# Risks\\r\\n\\r\\n<!--\\r\\nLow, medium, large. List what kind of risks and what could be affected.\\r\\n-->\\r\\n\\r\\n# Background\\r\\n\\r\\n## What does this PR do?\\r\\n\\r\\n## What kind of change is this?\\r\\n\\r\\n<!--\\r\\nBug fixes (non-breaking change which fixes an issue)\\r\\nImprovements (misc. changes to existing features)\\r\\nFeatures (non-breaking change which adds functionality)\\r\\nUpdates (new versions of included code)\\r\\n-->\\r\\n\\r\\n<!-- This \\\"Why\\\" section is most relevant if there are no linked issues explaining why. If there is a related issue, it might make sense to skip this why section. -->\\r\\n<!--\\r\\n## Why are we doing this? Any context or related work?\\r\\n-->\\r\\n\\r\\n# Documentation changes needed?\\r\\n\\r\\n<!--\\r\\nMy changes do not require a change to the project documentation.\\r\\nMy changes require a change to the project documentation.\\r\\nIf documentation change is needed: I have updated the documentation accordingly.\\r\\n-->\\r\\n\\r\\n<!-- Please show how you tested the PR. This will really help if the PR needs to be retested and probably help the PR get merged quicker. -->\\r\\n\\r\\n# Testing\\r\\n\\r\\n## Where should a reviewer start?\\r\\n\\r\\n## Detailed testing steps\\r\\n\\r\\n<!--\\r\\nNone: Automated tests are acceptable.\\r\\n-->\\r\\n\\r\\n<!--\\r\\n- As [anon/admin], go to [link]\\r\\n\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-01T07:08:57Z\",\n      \"mergedAt\": null,\n      \"additions\": 1731,\n      \"deletions\": 2143\n    }\n  ],\n  \"codeChanges\": {\n    \"additions\": 14114,\n    \"deletions\": 6419,\n    \"files\": 145,\n    \"commitCount\": 261\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    },\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    },\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    },\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    },\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    },\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    },\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    },\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    },\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    },\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    },\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    },\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    },\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    },\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    },\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    },\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    },\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    },\n    {\n      \"title\": \"chore: v1.0.17\",\n      \"prNumber\": 5385,\n      \"type\": \"other\",\n      \"body\": \"Version 1.0.17 release\"\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    },\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    },\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    },\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    },\n    {\n      \"title\": \"fix: tweak padding\",\n      \"prNumber\": 5379,\n      \"type\": \"bugfix\",\n      \"body\": \"\"\n    },\n    {\n      \"title\": \"fix: correct import/export icon\",\n      \"prNumber\": 5378,\n      \"type\": \"bugfix\",\n      \"body\": \"\"\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    },\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    },\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    },\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    },\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    },\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    },\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    },\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    },\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    },\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    },\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    },\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    },\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    },\n    {\n      \"title\": \"feat: update agent card\",\n      \"prNumber\": 5355,\n      \"type\": \"feature\",\n      \"body\": \"\"\n    },\n    {\n      \"title\": \"fix: remove chat bubble extra padding\",\n      \"prNumber\": 5354,\n      \"type\": \"bugfix\",\n      \"body\": \"\"\n    },\n    {\n      \"title\": \"fix: chat bubble padding\",\n      \"prNumber\": 5353,\n      \"type\": \"bugfix\",\n      \"body\": \"\"\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    },\n    {\n      \"title\": \"chore: update twitter plugin docs\",\n      \"prNumber\": 5408,\n      \"type\": \"other\",\n      \"body\": \"\"\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    },\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    },\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    },\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    },\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    },\n    {\n      \"title\": \"fix: prevent duplicate new chat creation\",\n      \"prNumber\": 5400,\n      \"type\": \"bugfix\",\n      \"body\": \"\"\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    },\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    },\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    },\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    },\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    },\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    },\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    },\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    },\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    },\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    },\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    },\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    }\n  ],\n  \"topContributors\": [\n    {\n      \"username\": \"wtfsayo\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/82053242?u=98209a1f10456f42d4d2fa71db4d5bf4a672cbc3&v=4\",\n      \"totalScore\": 697.7538372065732,\n      \"prScore\": 691.5018372065732,\n      \"issueScore\": 0,\n      \"reviewScore\": 4.5,\n      \"commentScore\": 1.7519999999999998,\n      \"summary\": null\n    },\n    {\n      \"username\": \"tcm390\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/60634884?u=c6c41679b8322eaa0c81f72e0b4ed95e80f0ac16&v=4\",\n      \"totalScore\": 621.0600075092666,\n      \"prScore\": 621.0600075092666,\n      \"issueScore\": 0,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": null\n    },\n    {\n      \"username\": \"SYMBaiEX\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/192078165?u=a6e562521cc94448799ea50ebc1faeda3c3cef26&v=4\",\n      \"totalScore\": 175.48288562287127,\n      \"prScore\": 166.04488562287128,\n      \"issueScore\": 0,\n      \"reviewScore\": 9,\n      \"commentScore\": 0.43799999999999994,\n      \"summary\": null\n    },\n    {\n      \"username\": \"yungalgo\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/113615973?u=92e0f29f7e2fbb8ce46ed13c51f692ca803de02d&v=4\",\n      \"totalScore\": 74.45627142571591,\n      \"prScore\": 73.8182714257159,\n      \"issueScore\": 0,\n      \"reviewScore\": 0,\n      \"commentScore\": 0.6379999999999999,\n      \"summary\": null\n    },\n    {\n      \"username\": \"ai16z-demirix\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/188117230?u=424cd5b834584b3799da288712b3c4158c8032a1&v=4\",\n      \"totalScore\": 68.39522770548251,\n      \"prScore\": 55.2152277054825,\n      \"issueScore\": 8,\n      \"reviewScore\": 4.5,\n      \"commentScore\": 0.6799999999999999,\n      \"summary\": null\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\": null\n    },\n    {\n      \"username\": \"ChristopherTrimboli\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/27584221?u=0d816ce1dcdea8f925aba18bb710153d4a87a719&v=4\",\n      \"totalScore\": 37.87787110679346,\n      \"prScore\": 27.877871106793457,\n      \"issueScore\": 0,\n      \"reviewScore\": 10,\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\": 29.967751502819134,\n      \"prScore\": 14.287751502819134,\n      \"issueScore\": 0,\n      \"reviewScore\": 15,\n      \"commentScore\": 0.6799999999999999,\n      \"summary\": null\n    },\n    {\n      \"username\": \"standujar\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/16385918?u=718bdcd1585be8447bdfffb8c11ce249baa7532d&v=4\",\n      \"totalScore\": 22.556879734614025,\n      \"prScore\": 22.356879734614026,\n      \"issueScore\": 0,\n      \"reviewScore\": 0,\n      \"commentScore\": 0.2,\n      \"summary\": null\n    },\n    {\n      \"username\": \"Dangoz\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/71613713?u=1839f372422c7a5503a713dca22981490b4ea7da&v=4\",\n      \"totalScore\": 10.263366670143164,\n      \"prScore\": 10.263366670143164,\n      \"issueScore\": 0,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": null\n    },\n    {\n      \"username\": \"borisudovicic\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/31806472?u=27713fbe603baae91ef519990facbacd6c23e93d&v=4\",\n      \"totalScore\": 8,\n      \"prScore\": 0,\n      \"issueScore\": 8,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\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\": null\n    },\n    {\n      \"username\": \"linear\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/in/20150?v=4\",\n      \"totalScore\": 4,\n      \"prScore\": 0,\n      \"issueScore\": 4,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": null\n    },\n    {\n      \"username\": \"samarth30\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/48334430?u=1fc119a6c2deb8cf60448b4c8961cb21dc69baeb&v=4\",\n      \"totalScore\": 2,\n      \"prScore\": 0,\n      \"issueScore\": 2,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": null\n    },\n    {\n      \"username\": \"gcbsumid\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/909374?u=37f846cf6061061fd858eeca1210d5378a7bb65b&v=4\",\n      \"totalScore\": 2,\n      \"prScore\": 0,\n      \"issueScore\": 2,\n      \"reviewScore\": 0,\n      \"commentScore\": 0,\n      \"summary\": null\n    },\n    {\n      \"username\": \"bealers\",\n      \"avatarUrl\": \"https://avatars.githubusercontent.com/u/6403055?u=8c40778251e25b92cdee727056415b6c0d1bcdc5&v=4\",\n      \"totalScore\": 0.43799999999999994,\n      \"prScore\": 0,\n      \"issueScore\": 0,\n      \"reviewScore\": 0,\n      \"commentScore\": 0.43799999999999994,\n      \"summary\": null\n    }\n  ],\n  \"newPRs\": 65,\n  \"mergedPRs\": 60,\n  \"newIssues\": 10,\n  \"closedIssues\": 9,\n  \"activeContributors\": 17\n}\n---\n[\"0xbbjoker_week_2025-06-29\", \"0xbbjoker\", \"week\", \"2025-06-29\", \"0xbbjoker focused on a significant feature upgrade, opening elizaos/eliza#5311 with substantial code and documentation changes (+7552/-143 lines) across 36 files. This work, which included one pull request comment, occurred during a single day of activity this week.\", \"2025-06-29T23:12:34.198Z\"]\n[\"wtfsayo_week_2025-06-29\", \"wtfsayo\", \"week\", \"2025-06-29\", \"wtfsayo: Pushed one commit that modified 2 files (+108/-2 lines).\", \"2025-06-29T23:12:31.689Z\"]\n[\"wtfsayo_day_2025-06-29\", \"wtfsayo\", \"day\", \"2025-06-29\", \"wtfsayo: Modified 2 files with 1 commit (+108/-2 lines), focusing on other work. wtfsayo has been consistently active.\", \"2025-06-29T23:13:42.045Z\"]\n[\"0xbbjoker_day_2025-06-29\", \"0xbbjoker\", \"day\", \"2025-06-29\", \"0xbbjoker: Opened elizaos/eliza#5311 and modified 36 files (+7552/-143 lines) in 2 commits, with a focus on feature work and other contributions, also commented on a pull request. The changes included code and documentation updates.\", \"2025-06-29T23:13:42.190Z\"]"
  ]
}