{
  "interval": {
    "intervalStart": "2026-02-10T00:00:00.000Z",
    "intervalEnd": "2026-02-11T00:00:00.000Z",
    "intervalType": "day"
  },
  "repository": "elizaos/eliza",
  "overview": "From 2026-02-10 to 2026-02-11, elizaos/eliza had 2 new PRs (0 merged), 1 new issues, and 6 active contributors.",
  "topIssues": [
    {
      "id": "I_kwDOMT5cIs7plYW-",
      "title": "Feature Request: Support custom OpenAI endpoint URL for OpenAI provider",
      "author": "coolRoger",
      "number": 6490,
      "repository": "elizaos/eliza",
      "body": "## Is your feature request related to a problem? Please describe.\nThe current OpenAI provider does **not support configuring a custom OpenAI endpoint URL**, which makes it impossible to use OpenAI-compatible third-party services (e.g., SiliconFlow). These services follow the OpenAI API format but require pointing to their own endpoint URLs instead of the official OpenAI endpoint.\n\n## Describe the solution you'd like\nAdd a **configurable `openai endpoint url` field/parameter** to the OpenAI provider, so users can manually specify the API endpoint URL when using OpenAI-compatible services.\n\n## Describe alternatives you've considered\n- Switching to a dedicated provider for SiliconFlow: Not ideal, as it breaks the unified OpenAI-compatible usage pattern.\n- Hardcoding the endpoint: Not flexible for different OpenAI-compatible providers.\n\n## Additional context\nMany cloud / inference providers (SiliconFlow, etc.) provide OpenAI-compatible APIs, only differing in the endpoint URL. Supporting custom endpoints will greatly improve the compatibility and flexibility of the OpenAI provider.",
      "createdAt": "2026-02-10T00:57:25Z",
      "closedAt": null,
      "state": "OPEN",
      "commentCount": 0
    }
  ],
  "topPRs": [
    {
      "id": "PR_kwDOMT5cIs7CpGeC",
      "title": "feat: add plugin-signet for onchain advertising via x402",
      "author": "h1-hunt",
      "number": 6491,
      "body": "## Summary\n\nAdd **plugin-signet** — enables ElizaOS agents to buy spotlight ads on [Signet](https://signet.sebayaki.com) with USDC via [x402](https://x402.org) micropayments on Base.\n\n## What is Signet?\n\nSignet is an onchain advertising platform on Base. Users pay USDC to place their URL in the spotlight section, where it gets thousands of views and clicks. Unlike auction-based alternatives (~$300+/day minimum), Signet uses fixed pricing — post instantly for ~$12 USDC.\n\n**Key stats:** 126 ads placed, average 400+ clicks per placement, 1000+ daily visitors.\n\n## Actions\n\n| Action | Description | Wallet Required |\n|--------|-------------|:---:|\n| `SIGNET_ESTIMATE` | Check current spotlight pricing and availability | No |\n| `SIGNET_POST_SPOTLIGHT` | Pay USDC to place a URL on the spotlight | Yes |\n\n## Provider\n\n| Provider | Description |\n|----------|-------------|\n| `SIGNET_SPOTLIGHT_STATUS` | Injects current pricing into agent context |\n\n## How it works\n\n1. Agent POSTs to `/api/x402/spotlight` → receives `402 Payment Required` with price\n2. Plugin signs EIP-3009 `transferWithAuthorization` for USDC on Base\n3. Plugin resends with `X-PAYMENT` header containing signed authorization\n4. Signet settles USDC transfer and executes onchain Zap\n5. URL appears in spotlight ✅\n\nAll payments onchain on Base. No API keys, no accounts — just a wallet with USDC.\n\n## Configuration\n\n```env\nSIGNET_PRIVATE_KEY=0x...  # Any EVM key with USDC on Base\n# Also accepts BASE_PRIVATE_KEY or EVM_PRIVATE_KEY\n```\n\n## Test plan\n\n- [x] Unit tests: plugin exports, action validation, config defaults\n- [x] Validate action rejects without private key\n- [x] Validate action accepts with private key\n- [x] All actions have examples\n\n## Links\n\n- [Signet](https://signet.sebayaki.com)\n- [x402 Protocol](https://x402.org)\n- [Hunt Town Co-op](https://hunt.town)\n- [CLI & SDK](https://github.com/h1-hunt/signet-client)\n- [npm: plugin-signet](https://www.npmjs.com/package/plugin-signet)\n\n<!-- greptile_comment -->\n\n<h2>Greptile Overview</h2>\n\n<h3>Greptile Summary</h3>\n\nThis PR adds a new `@elizaos/plugin-signet` package that lets agents estimate Signet “spotlight” pricing and purchase a placement on Base by paying USDC via an x402 (HTTP 402) flow. The plugin wires two actions (`SIGNET_ESTIMATE`, `SIGNET_POST_SPOTLIGHT`) plus a provider (`SIGNET_SPOTLIGHT_STATUS`), and includes a Bun build script, TS configs, package metadata/exports, and basic unit tests.\n\nKey issues to address before merge are runtime correctness problems in the payment posting action: it builds the `X-PAYMENT` header using `btoa(...)` (not reliably available in Node, despite `platform: \"node\"`) and it computes `costUSDC` via `Number(BigInt)` which can throw/lose precision. There’s also an error-path inconsistency in `SIGNET_ESTIMATE` where failures return no `text` (and don’t callback), making errors hard to surface in clients.\n\n<h3>Confidence Score: 3/5</h3>\n\n- Not safe to merge until runtime payment-posting issues are fixed.\n- The PR introduces a new plugin package with correct wiring and tests, but `SIGNET_POST_SPOTLIGHT` currently uses `btoa` to construct the `X-PAYMENT` header (not reliably present in Node) and converts a `BigInt` amount to `Number` for display (can throw/lose precision). These are likely to break the core feature path at runtime. The estimate action also drops `text` on error, reducing observability.\n- packages/plugin-signet/src/actions/post.ts, packages/plugin-signet/src/actions/estimate.ts\n\n<h3>Important Files Changed</h3>\n\n\n\n\n| Filename | Overview |\n|----------|----------|\n| packages/plugin-signet/README.md | Adds README documenting plugin-signet purpose, actions, configuration, and x402 payment flow. |\n| packages/plugin-signet/build.ts | Adds Bun-based build script bundling src/index.ts and generating d.ts; uses console emojis and runs tsc quietly with warnings on failure. |\n| packages/plugin-signet/package.json | Introduces new @elizaos/plugin-signet package metadata, exports, scripts, and dependencies (viem/zod/core) including agentConfig parameters. |\n| packages/plugin-signet/src/__tests__/plugin.test.ts | Adds Bun unit tests covering plugin shape, actions/providers presence, config defaults, and post action validation behavior. |\n| packages/plugin-signet/src/actions/estimate.ts | Adds SIGNET_ESTIMATE action calling Signet estimate endpoint; error ActionResult currently omits text/callback on failure. |\n| packages/plugin-signet/src/actions/post.ts | Adds SIGNET_POST_SPOTLIGHT action implementing x402 flow via EIP-3009 typed-data signature; uses btoa for header (may be undefined in Node) and computes cost via Number(BigInt) (can throw/lose precision). |\n| packages/plugin-signet/src/config.ts | Adds config schema plus helpers to resolve baseUrl/rpcUrl and private key from runtime settings with fallbacks. |\n| packages/plugin-signet/src/index.ts | Adds index entry that re-exports signetPlugin and provides default export for plugin loader. |\n| packages/plugin-signet/src/plugin.ts | Adds plugin definition with config defaults, zod validation in init(), actions, and provider wiring. |\n| packages/plugin-signet/src/providers/spotlight.ts | Adds provider fetching estimate (0h) with timeout and injecting price/availability into context. |\n| packages/plugin-signet/tsconfig.build.json | Adds build tsconfig enabling declaration emit to dist and excluding test files. |\n| packages/plugin-signet/tsconfig.json | Adds strict TS config for plugin sources with noEmit for normal builds (Bun bundling used). |\n\n</details>\n\n\n\n<h3>Sequence Diagram</h3>\n\n```mermaid\nsequenceDiagram\n  autonumber\n  participant Agent as Eliza Agent\n  participant Plugin as plugin-signet\n  participant Signet as Signet API\n  participant Wallet as Wallet (USDC Base)\n\n  Agent->>Plugin: SIGNET_POST_SPOTLIGHT(url, guaranteeHours)\n  Plugin->>Signet: POST /api/x402/spotlight {url, guaranteeHours}\n  alt Payment required\n    Signet-->>Plugin: 402 Payment Required + requirements\n    Plugin->>Wallet: signTypedData(EIP-3009 transferWithAuthorization)\n    Wallet-->>Plugin: signature\n    Plugin->>Signet: POST /api/x402/spotlight + X-PAYMENT(base64(payload))\n    Signet-->>Plugin: 200 OK {txHash, signatureIndex, ...}\n    Plugin-->>Agent: success text + txHash\n  else Unexpected free success\n    Signet-->>Plugin: 200 OK {txHash, ...}\n    Plugin-->>Agent: success text + txHash\n  else Other error\n    Signet-->>Plugin: non-402 error\n    Plugin-->>Agent: failure text\n  end\n\n  Agent->>Plugin: SIGNET_ESTIMATE(guaranteeHours?)\n  Plugin->>Signet: GET /api/x402/estimate?guaranteeHours=N\n  Signet-->>Plugin: 200 OK {estimatedUSDC, available, ...}\n  Plugin-->>Agent: estimate text\n\n  Note over Plugin,Signet: Provider SIGNET_SPOTLIGHT_STATUS periodically fetches 0h estimate\n```\n\n<!-- greptile_other_comments_section -->\n\n<sub>(2/5) Greptile learns from your feedback when you react with thumbs up/down!</sub>\n\n<!-- /greptile_comment -->",
      "repository": "elizaos/eliza",
      "createdAt": "2026-02-10T05:09:25Z",
      "mergedAt": null,
      "additions": 1012,
      "deletions": 0
    },
    {
      "id": "PR_kwDOMT5cIs7Cmuc_",
      "title": "docs: add ClawdTalk voice calling integration",
      "author": "a692570",
      "number": 6489,
      "body": "Adds [ClawdTalk](https://clawdtalk.com) to the Key Features section as a voice calling integration.\n\nClawdTalk is an open source skill that lets AI agents make and receive real phone calls, built on [Telnyx](https://telnyx.com) voice infrastructure. It works with OpenClaw today and could integrate natively with ElizaOS via the plugin system.\n\n- Website: https://clawdtalk.com\n- GitHub: https://github.com/team-telnyx/clawdtalk-client\n\n<!-- greptile_comment -->\n\n<h2>Greptile Overview</h2>\n\n<h3>Greptile Summary</h3>\n\nUpdates `README.md` to add ClawdTalk as a voice-calling item in the Key Features list.\n\nMain issue to address before merge: the new bullet is written as if ElizaOS already has a ClawdTalk integration that enables real phone calls, but there’s no corresponding code/plugin/docs in this repository (the README line is the only mention). Rewording to avoid implying shipped/native support would prevent misleading users.\n\n<h3>Confidence Score: 4/5</h3>\n\n- Safe to merge if the README wording is corrected to avoid implying an integration that isn’t shipped in this repo.\n- The change is docs-only and low impact, but the current wording is likely to mislead users about existing functionality because there is no corresponding ClawdTalk integration code or docs in the repository.\n- README.md (Key Features bullet wording)\n\n<h3>Important Files Changed</h3>\n\n\n\n\n| Filename | Overview |\n|----------|----------|\n| README.md | Adds a Key Features bullet for ClawdTalk voice calling; wording currently implies an existing integration that is not present elsewhere in the repo. |\n\n</details>\n\n\n\n<h3>Sequence Diagram</h3>\n\n```mermaid\nsequenceDiagram\n  participant User as Reader\n  participant README as README.md\n  participant Repo as elizaos/eliza repo\n\n  User->>README: Read Key Features section\n  README-->>User: Claims \"ClawdTalk integration\" enables voice calling\n  User->>Repo: Search for ClawdTalk/plugin/docs\n  Repo-->>User: No other references found\n  User-->>User: Assumes integration exists (misleading)\n```\n\n<!-- greptile_other_comments_section -->\n\n<sub>(5/5) You can turn off certain types of comments like style [here](https://app.greptile.com/review/github)!</sub>\n\n<!-- /greptile_comment -->",
      "repository": "elizaos/eliza",
      "createdAt": "2026-02-10T00:00:39Z",
      "mergedAt": null,
      "additions": 1,
      "deletions": 0
    }
  ],
  "codeChanges": {
    "additions": 0,
    "deletions": 0,
    "files": 0,
    "commitCount": 13
  },
  "completedItems": [],
  "topContributors": [
    {
      "username": "h1-hunt",
      "avatarUrl": "https://avatars.githubusercontent.com/u/260165794?u=73efc04d5c05a1af9903686d9bb90265cc06ab45&v=4",
      "totalScore": 57.0437738965761,
      "prScore": 43.5437738965761,
      "issueScore": 0,
      "reviewScore": 13.5,
      "commentScore": 0,
      "summary": null
    },
    {
      "username": "standujar",
      "avatarUrl": "https://avatars.githubusercontent.com/u/16385918?u=718bdcd1585be8447bdfffb8c11ce249baa7532d&v=4",
      "totalScore": 21.806306144334055,
      "prScore": 21.806306144334055,
      "issueScore": 0,
      "reviewScore": 0,
      "commentScore": 0,
      "summary": null
    },
    {
      "username": "a692570",
      "avatarUrl": "https://avatars.githubusercontent.com/u/182830946?u=fbc711137880cd843fea4b3b9f00013d07d40fd6&v=4",
      "totalScore": 10.997573590279972,
      "prScore": 10.997573590279972,
      "issueScore": 0,
      "reviewScore": 0,
      "commentScore": 0,
      "summary": null
    },
    {
      "username": "greptile-apps",
      "avatarUrl": "https://avatars.githubusercontent.com/in/867647?v=4",
      "totalScore": 9.2,
      "prScore": 0,
      "issueScore": 0,
      "reviewScore": 9,
      "commentScore": 0.2,
      "summary": null
    },
    {
      "username": "coolRoger",
      "avatarUrl": "https://avatars.githubusercontent.com/u/33861624?u=ae40d02de875befc512751127f1082a22b464264&v=4",
      "totalScore": 2,
      "prScore": 0,
      "issueScore": 2,
      "reviewScore": 0,
      "commentScore": 0,
      "summary": null
    }
  ],
  "newPRs": 2,
  "mergedPRs": 0,
  "newIssues": 1,
  "closedIssues": 0,
  "activeContributors": 6
}