Skip to content

feat: add Clicks Protocol action provider for USDC yield on Base#1107

Open
clicksprotocol wants to merge 7 commits intocoinbase:mainfrom
clicksprotocol:add-clicks-action-provider
Open

feat: add Clicks Protocol action provider for USDC yield on Base#1107
clicksprotocol wants to merge 7 commits intocoinbase:mainfrom
clicksprotocol:add-clicks-action-provider

Conversation

@clicksprotocol
Copy link
Copy Markdown

@clicksprotocol clicksprotocol commented Apr 14, 2026

Summary

Adds a new Clicks Protocol action provider that enables AI agents to earn yield on USDC deposits on Base.

What is Clicks Protocol?

Clicks Protocol is an on-chain revenue-sharing layer for AI agents on Base. It provides:

  • 80/20 yield split: 80% of generated yield goes to the agent, 20% is retained as a protocol fee
  • Battle-tested yield strategies: Deposited USDC is routed into Aave V3 and Morpho vaults on Base
  • One-transaction onboarding: The quickStart function registers an agent and deposits USDC in a single call

Deployed Contracts (Base Mainnet)

Contract Address
ClicksSplitterV3 0xF625e41D6e83Ca4FA890e0C73DAd65433a6ab5E3
ClicksYieldRouter 0x4DE206153c2C6888F394F8CEcCE15B818dFb51A8

Actions

Action Description
quick_start Register an agent and deposit USDC in one transaction
deposit Deposit additional USDC into the yield router
withdraw Withdraw USDC from yield
get_info Query agent registration status, total deposited, and earnings

Files Added

  • typescript/agentkit/src/action-providers/clicks/constants.ts - Contract addresses and ABIs
  • typescript/agentkit/src/action-providers/clicks/schemas.ts - Zod input schemas
  • typescript/agentkit/src/action-providers/clicks/clicksActionProvider.ts - Action provider implementation
  • typescript/agentkit/src/action-providers/clicks/clicksActionProvider.test.ts - Jest tests
  • typescript/agentkit/src/action-providers/clicks/index.ts - Barrel exports
  • typescript/agentkit/src/action-providers/clicks/README.md - Documentation

Files Modified

  • typescript/agentkit/src/action-providers/index.ts - Added export * from "./clicks"

Test plan

  • Unit tests pass (clicksActionProvider.test.ts covers all 4 actions + network support)
  • Verify quick_start approves USDC and calls ClicksSplitterV3.quickStart
  • Verify deposit approves USDC and calls ClicksYieldRouter.deposit
  • Verify withdraw calls ClicksYieldRouter.withdraw
  • Verify get_info reads from ClicksSplitterV3.getAgentInfo and formats output
  • Verify supportsNetwork returns true only for base-mainnet

@cb-heimdall
Copy link
Copy Markdown

cb-heimdall commented Apr 14, 2026

🟡 Heimdall Review Status

Requirement Status More Info
Reviews 🟡 0/1
Denominator calculation
Show calculation
1 if user is bot 0
1 if user is external 0
2 if repo is sensitive 0
From .codeflow.yml 1
Additional review requirements
Show calculation
Max 0
0
From CODEOWNERS 0
Global minimum 0
Max 1
1
1 if commit is unverified 1
Sum 2

@clicksprotocol
Copy link
Copy Markdown
Author

Hi @murrlincoln — friendly ping on this PR. Happy to address any feedback. All CI passing, Jest tests included for all 4 actions, docs and README complete. Let me know if there's anything I should adjust.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

action provider New action provider documentation Improvements or additions to documentation typescript

Development

Successfully merging this pull request may close these issues.

2 participants