{
  "interval": {
    "intervalStart": "2025-10-14T00:00:00.000Z",
    "intervalEnd": "2025-10-15T00:00:00.000Z",
    "intervalType": "day"
  },
  "repository": "elizaos/eliza",
  "overview": "From 2025-10-14 to 2025-10-15, elizaos/eliza had 1 new PRs (1 merged), 1 new issues, and 5 active contributors.",
  "topIssues": [
    {
      "id": "I_kwDOMT5cIs7Ki91T",
      "title": "Direct API Calls",
      "author": "borisudovicic",
      "number": 5923,
      "repository": "elizaos/eliza",
      "body": "* Implement agent.generate(input) as a Promise-based API.\n* Add variants that include/exclude character personality.",
      "createdAt": "2025-09-09T12:14:52Z",
      "closedAt": "2025-10-14T15:24:02Z",
      "state": "CLOSED",
      "commentCount": 0
    },
    {
      "id": "I_kwDOMT5cIs7RGLr3",
      "title": "[DOCS] Every plugin link in docs leads to a 404",
      "author": "douglasg14b",
      "number": 6061,
      "repository": "elizaos/eliza",
      "body": "https://docs.elizaos.ai/plugin-registry/overview#core-plugins\n\nClicking on plugins goes to: https://docs.elizaos.ai/plugins/bootstrap\n\n<img width=\"1608\" height=\"1013\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/857c53a2-7491-4308-b2e6-1fe40b3b7af8\" />",
      "createdAt": "2025-10-13T00:01:19Z",
      "closedAt": "2025-10-14T13:11:35Z",
      "state": "CLOSED",
      "commentCount": 0
    },
    {
      "id": "I_kwDOMT5cIs7Rfu3S",
      "title": "Add n1n.ai API as a model provider",
      "author": "n1n-api",
      "number": 6064,
      "repository": "elizaos/eliza",
      "body": "Hi Eliza team,\n\nWe're n1n API, and we offer a robust API that provides access to 400+ large language models (LLMs), as well as multimodal generation capabilities (text, images, video, audio, etc.). Our platform makes it easy to integrate these advanced features into your project, empowering developers with powerful AI tools.\n\nWith n1n API, you can quickly leverage a comprehensive suite of AI models for diverse applications—everything from text generation to media synthesis—through simple, easy-to-use endpoints.\n\nAdding n1n API would benefit Eliza users by:\n\n- Providing access to 400+ models through a single API key configuration\n- Supporting all major models (OpenAI, Anthropic, Gemini, Llama, and many more)\n- Offering competitive pricing with unified billing (some are lowest to 1/10 of the official price)\n- Enabling easy model switching for different assistants without managing multiple API keys\n\n### Describe the solution you'd like\n\nIntegrate n1n API as an additional AI model provider in Eliza. n1n API is OpenAI-compatible (base URL: https://n1n.ai/v1/) and offers extended multimodal generation capabilities beyond standard text completion, including image, video, and audio generation endpoints.\n\n### Resources\n\nWebsite: https://n1n.ai/\nAPI Documentation: https://docs.n1n.ai/\nDashboard: https://n1n.ai/console\nSupport: [help@n1n.ai](mailto:help@n1n.ai)\n\nWe are excited to contribute to the Eliza ecosystem and provide users with access to the latest AI models through our robust API platform. We look forward to collaborating with the Eliza maintainers and community to make this integration successful.",
      "createdAt": "2025-10-14T16:54:32Z",
      "closedAt": null,
      "state": "OPEN",
      "commentCount": 0
    }
  ],
  "topPRs": [
    {
      "id": "PR_kwDOMT5cIs6tmLW9",
      "title": "Refactor/icon button prop",
      "author": "5c0",
      "number": 6063,
      "body": "# Relates to\r\n\r\nThis PR addresses a `TODO` comment found in `packages/client/src/components/agent-prism/IconButton.tsx`. No issue is formally associated with this change.\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\nLow. This change is a refactoring of a single UI component and all of its usages have been updated. The change is localized to the client-side presentation layer.\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nThis PR refactors the `IconButton` component to make its API more explicit and type-safe. It replaces the use of the generic `children` prop for passing icons with a dedicated and mandatory `icon` prop. This ensures that every `IconButton` is always instantiated with an icon component.\r\n\r\nAll existing usages of `IconButton` have been updated to conform to the new API, passing the appropriate `lucide-react` icon component to the new prop.\r\n\r\n## What kind of change is this?\r\n\r\nImprovements (misc. changes to existing features)\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\nA good starting point is reviewing the changes in `packages/client/src/components/agent-prism/IconButton.tsx` to see the new component API.\r\n\r\nAfter that, the modified call sites can be reviewed to see how the new API is used:\r\n*   `packages/client/src/components/agent-prism/CollapseAndExpandControls.tsx`\r\n*   `packages/client/src/components/agent-prism/DetailsView/DetailsViewHeader.tsx`\r\n*   `packages/client/src/components/agent-prism/DetailsView/DetailsViewInputOutputTab.tsx`\r\n\r\n## Detailed testing steps\r\n\r\nAutomated tests are acceptable. The component tests for the `client` package should cover these changes.\r\n\r\nA manual verification can also be done by running the client and navigating to pages where the `IconButton` is used (e.g., the agent details view) to ensure the copy and expand/collapse icons render and function correctly.\r\n",
      "repository": "elizaos/eliza",
      "createdAt": "2025-10-14T06:43:16Z",
      "mergedAt": null,
      "additions": 421,
      "deletions": 21
    },
    {
      "id": "PR_kwDOMT5cIs6tbn-u",
      "title": "feat(core): implement generateText() API",
      "author": "tylermcwilliams",
      "number": 6062,
      "body": "## Overview\r\nImplements the `generateText()` Promise-based API for simple text generation as discussed in #5923.\r\n\r\n## Discussion Context\r\nPer conversation with @0xbbjoker in #5923:\r\n- Named `generateText()` (not `generate()`) to clarify it's text-only generation\r\n- Supports optional character personality injection via `includeCharacter` flag  \r\n- Returns structured `{ text: string }` for future extensibility\r\n\r\n## Implementation Details\r\n\r\n### API Surface\r\n```typescript\r\nasync generateText(\r\n  input: string,\r\n  options?: GenerateTextOptions\r\n): Promise<GenerateTextResult>\r\n```\r\n\r\n### Key Features\r\n- **Character personality injection** - Defaults to including character bio/system/style in prompt (opt-out with `includeCharacter: false`)\r\n- **Model selection** - Defaults to `TEXT_LARGE`, supports all text generation model types\r\n- **Parameter pass-through** - Temperature, maxTokens, etc. from `GenerateTextParams`\r\n- **Structured return** - `{ text: string }` format allows future additions without breaking changes\r\n\r\n### Implementation\r\n- Added `GenerateTextOptions` and `GenerateTextResult` types to `model.ts`\r\n- Added `generateText()` method signature to `IAgentRuntime` interface in `runtime.ts`\r\n- Implemented method in `AgentRuntime` class - builds character context from bio/system/style, calls `useModel()` with constructed prompt\r\n- No breaking changes to existing APIs\r\n\r\n## Testing\r\n- ✅ Full example demonstrating usage patterns (`examples/generate-text.ts`)\r\n- ✅ All builds passing locally\r\n\r\n## Example Usage\r\n\r\nSee `examples/generate-text.ts` for a complete working example with Shakespeare character.\r\n\r\n### With Character Personality (Default)\r\n```typescript\r\nconst result = await runtime.generateText(\r\n  \"What do you think about artificial intelligence?\"\r\n);\r\n// Response will be with personality\r\n```\r\n\r\n### Without Character (Utility Mode)\r\n```typescript\r\nconst result = await runtime.generateText(\r\n  \"Translate to Spanish: Hello, how are you?\", \r\n  { includeCharacter: false }\r\n);\r\n// Raw translation without personality\r\n```\r\n\r\n### Custom Parameters\r\n```typescript\r\nconst result = await runtime.generateText(\r\n  \"Write a haiku about coding\",\r\n  { \r\n    temperature: 0.9,\r\n    maxTokens: 100\r\n  }\r\n);\r\n// More creative output with temperature bump\r\n```\r\n\r\n## Related\r\n- Closes #5923\r\n\r\n## Checklist\r\n- [x] Example provided and tested\r\n- [x] Builds without errors\r\n- [x] No breaking changes",
      "repository": "elizaos/eliza",
      "createdAt": "2025-10-13T10:36:49Z",
      "mergedAt": "2025-10-14T15:24:01Z",
      "additions": 398,
      "deletions": 1
    }
  ],
  "codeChanges": {
    "additions": 398,
    "deletions": 1,
    "files": 5,
    "commitCount": 14
  },
  "completedItems": [
    {
      "title": "feat(core): implement generateText() API",
      "prNumber": 6062,
      "type": "feature",
      "body": "## Overview\r\nImplements the `generateText()` Promise-based API for simple text generation as discussed in #5923.\r\n\r\n## Discussion Context\r\nPer conversation with @0xbbjoker in #5923:\r\n- Named `generateText()` (not `generate()`) to clarify it",
      "files": [
        "examples/generate-text.ts",
        "packages/core/src/__tests__/runtime-generation.test.ts",
        "packages/core/src/runtime.ts",
        "packages/core/src/types/model.ts",
        "packages/core/src/types/runtime.ts"
      ]
    }
  ],
  "topContributors": [
    {
      "username": "5c0",
      "avatarUrl": "https://avatars.githubusercontent.com/u/93293719?u=8ccc6529b05747344b11a1a1fd4597a111be441b&v=4",
      "totalScore": 45.50684885022568,
      "prScore": 45.50684885022568,
      "issueScore": 0,
      "reviewScore": 0,
      "commentScore": 0,
      "summary": "5c0: Focused on refactoring efforts, as evidenced by an open PR in elizaos/eliza#6063 \"Refactor/icon button prop\" and significant code changes across 111 files (+5529/-2027 lines) in 3 commits, indicating a primary focus on code restructuring."
    },
    {
      "username": "yungalgo",
      "avatarUrl": "https://avatars.githubusercontent.com/u/113615973?u=92e0f29f7e2fbb8ce46ed13c51f692ca803de02d&v=4",
      "totalScore": 21.962918433002166,
      "prScore": 21.962918433002166,
      "issueScore": 0,
      "reviewScore": 0,
      "commentScore": 0,
      "summary": "yungalgo: Focused on documentation improvements, merging a PR in elizaos/docs (#74) that fixed broken plugin links, demonstrating a commitment to maintaining accurate and accessible documentation."
    },
    {
      "username": "matteo-brandolino",
      "avatarUrl": "https://avatars.githubusercontent.com/u/49117857?u=28be1833532b4c849d42f50867bd960807756272&v=4",
      "totalScore": 7.001573590279973,
      "prScore": 7.001573590279973,
      "issueScore": 0,
      "reviewScore": 0,
      "commentScore": 0,
      "summary": "matteo-brandolino: Today, matteo-brandolino focused on expanding the plugin registry by opening a pull request to add `@pyboom/plugin-moralis-v2` to `elizaos-plugins/registry` (#235), involving a single file modification."
    },
    {
      "username": "0xbbjoker",
      "avatarUrl": "https://avatars.githubusercontent.com/u/54844437?u=90fe1762420de6ad493a1c1582f1f70c0d87d8e2&v=4",
      "totalScore": 5.2,
      "prScore": 0,
      "issueScore": 0,
      "reviewScore": 5,
      "commentScore": 0.2,
      "summary": "0xbbjoker: Provided one approval review and one PR comment, while modifying 54 files with 6 commits (+3855/-211 lines) across various file types, primarily focusing on other work and bug fixes."
    },
    {
      "username": "n1n-api",
      "avatarUrl": "https://avatars.githubusercontent.com/u/227003775?u=0230fac354b6d67db954e33b17282018cca32ee9&v=4",
      "totalScore": 2,
      "prScore": 0,
      "issueScore": 2,
      "reviewScore": 0,
      "commentScore": 0,
      "summary": "n1n-api: Initiated a new feature by creating an issue to \"Add n1n.ai API as a model provider\" in elizaos/eliza (#6064), indicating a focus on expanding model provider integrations."
    },
    {
      "username": "standujar",
      "avatarUrl": "https://avatars.githubusercontent.com/u/16385918?u=718bdcd1585be8447bdfffb8c11ce249baa7532d&v=4",
      "totalScore": 0.2,
      "prScore": 0,
      "issueScore": 0,
      "reviewScore": 0,
      "commentScore": 0.2,
      "summary": "standujar: Focused on significant refactoring efforts, alongside feature work and bug fixes, modifying 61 files across 5 commits with a balanced change of +789/-775 lines, and provided one PR comment."
    }
  ],
  "newPRs": 1,
  "mergedPRs": 1,
  "newIssues": 1,
  "closedIssues": 2,
  "activeContributors": 5
}