From 5c4c45e5fc81310a591a72881459f52c63776d3b Mon Sep 17 00:00:00 2001 From: Bennytimz Date: Thu, 16 Apr 2026 20:04:52 +0100 Subject: [PATCH 1/2] docs(apps): add Builder Code attribution to migration quickstart config --- .../apps/quickstart/migrate-to-standard-web-app.mdx | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/docs/apps/quickstart/migrate-to-standard-web-app.mdx b/docs/apps/quickstart/migrate-to-standard-web-app.mdx index e4796ea30..d28d460b4 100644 --- a/docs/apps/quickstart/migrate-to-standard-web-app.mdx +++ b/docs/apps/quickstart/migrate-to-standard-web-app.mdx @@ -44,15 +44,21 @@ Your app uses the Farcaster SDK. The migration replaces Farcaster-specific auth, Install wagmi, viem, and React Query if you don't have them already: ```bash Terminal - npm install wagmi viem @tanstack/react-query @base-org/account + npm install wagmi viem ox @tanstack/react-query @base-org/account ``` Create a wagmi config for Base and wrap your app with `WagmiProvider` and `QueryClientProvider`: - ```tsx config.ts lines expandable wrap + ```tsx config.ts lines expandable wrap highlight={4,6-9,24} import { http, createConfig, createStorage, cookieStorage } from 'wagmi'; import { base } from 'wagmi/chains'; import { baseAccount, injected } from 'wagmi/connectors'; + import { Attribution } from 'ox/erc8021'; + + // Get your Builder Code from base.dev > Settings > Builder Code + const DATA_SUFFIX = Attribution.toDataSuffix({ + codes: ['YOUR-BUILDER-CODE'], + }); export const config = createConfig({ chains: [base], @@ -67,6 +73,7 @@ Your app uses the Farcaster SDK. The migration replaces Farcaster-specific auth, transports: { [base.id]: http(), }, + dataSuffix: DATA_SUFFIX, }); declare module 'wagmi' { @@ -173,7 +180,7 @@ Your app uses the Farcaster SDK. The migration replaces Farcaster-specific auth, - If you haven't registered yet, create a project at [Base.dev](https://www.base.dev) and complete your app metadata: name, icon, tagline, description, screenshots, category, primary URL, and [builder code](/apps/builder-codes/builder-codes). Already registered apps do not need to re-register or update metadata. + If you haven't registered yet, create a project at [Base.dev](https://www.base.dev) and complete your app metadata: name, icon, tagline, description, screenshots, category, primary URL, and [builder code](/apps/builder-codes/builder-codes). Already registered apps do not need to re-register or update metadata. To attribute transactions from web users outside the Base App browser, also add your Builder Code as a `dataSuffix` to your wagmi config. See [Builder Codes for App Developers](/apps/builder-codes/app-developers). From c17ed278a921f22d27cb86a19e0b1d414a1e8385 Mon Sep 17 00:00:00 2001 From: Bennytimz Date: Sat, 18 Apr 2026 23:58:35 +0100 Subject: [PATCH 2/2] docs(ai-agents): add NGZ AgentKit skill page for onchain habit accountability --- docs/ai-agents/skills/agentkit/ngz.mdx | 80 ++++++++++++++++++++++++++ docs/ai-agents/skills/index.mdx | 4 ++ docs/docs.json | 6 ++ 3 files changed, 90 insertions(+) create mode 100644 docs/ai-agents/skills/agentkit/ngz.mdx diff --git a/docs/ai-agents/skills/agentkit/ngz.mdx b/docs/ai-agents/skills/agentkit/ngz.mdx new file mode 100644 index 000000000..3d6b32bbb --- /dev/null +++ b/docs/ai-agents/skills/agentkit/ngz.mdx @@ -0,0 +1,80 @@ +--- +title: "No-Going-Zone (NGZ)" +description: "AgentKit action provider for querying and interacting with NGZ, an onchain habit accountability tracker on Base" +keywords: ["NGZ skill", "onchain habit tracker", "AgentKit action provider", "Base agent skill", "habit accountability agent"] +--- + +No-Going-Zone (NGZ) is an onchain habit accountability tracker on Base. Users declare a habit, check in daily to build a streak, earn soulbound milestone NFTs at 7, 30, 90, 180, and 365 days, and face permanent onchain consequences — a Wall of Shame NFT — when they relapse. All data lives onchain with no backend or database. + +The NGZ action provider lets any AgentKit-powered agent read leaderboard data, look up user stats, and send transactions on behalf of a user. + +## Install + +Add the NGZ action provider to your AgentKit instance: + +```bash Terminal +npm install @coinbase/agentkit +``` + +```typescript TypeScript +import { AgentKit } from "@coinbase/agentkit"; +import { ngzActionProvider } from "@coinbase/agentkit"; + +const agentKit = await AgentKit.from({ + walletProvider, + actionProviders: [ngzActionProvider()], +}); +``` + +## What the skill covers + +| Action | Wallet required | Description | +|--------|-----------------|-------------| +| `get_ngz_leaderboard` | No | Fetch top streak holders ranked by current streak | +| `get_ngz_user` | No | Look up a user's full stats by wallet address | +| `get_ngz_wall_of_shame` | No | Fetch recent relapse events from the Wall of Shame | +| `check_in_ngz` | Yes | Record today's check-in to maintain your onchain streak | +| `tip_ngz_user` | Yes | Send ETH respect directly to another user's wallet | + +## Example prompts + +```text +Show me the top 10 users on the NGZ leaderboard + +Look up the NGZ profile for 0x1234...abcd + +Show me the latest relapses on the NGZ Wall of Shame + +Check me in on NGZ to keep my streak going + +Send 0.001 ETH tip to 0x1234...abcd on NGZ with the message "Keep going!" +``` + +## Networks + +Supported on `base-mainnet` and `base-sepolia`. + + + The NGZ contract is currently deployed on Base Sepolia testnet at `0x4D1b5da45a5D278900aedfc6c96F0EE0D4e28bF6`. Mainnet deployment is in progress. + + +## Streak milestones + +NGZ mints a soulbound NFT each time a user hits a milestone. These NFTs cannot be transferred or burned. + +| Days clean | Tier | +|------------|------| +| 7 | Novice Resister | +| 30 | Goon Slayer | +| 90 | Monk Mode Activated | +| 180 | Half-Year Warrior | +| 365 | NGZ Legend | + +Relapsing mints a permanent **Fell Off** Wall of Shame NFT in addition to resetting the streak to zero. + +## Reference + +- [NGZ on Base Sepolia](https://sepolia.basescan.org/address/0x4D1b5da45a5D278900aedfc6c96F0EE0D4e28bF6#code) +- [NGZ frontend](https://frontend-one-khaki-22.vercel.app) +- [coinbase/agentkit PR #1126](https://github.com/coinbase/agentkit/pull/1126) +- [@coinbase/agentkit documentation](https://docs.cdp.coinbase.com/agent-kit/docs/agentkit-overview) diff --git a/docs/ai-agents/skills/index.mdx b/docs/ai-agents/skills/index.mdx index 6ffde202c..3b8fdc931 100644 --- a/docs/ai-agents/skills/index.mdx +++ b/docs/ai-agents/skills/index.mdx @@ -38,4 +38,8 @@ Skills are installable knowledge packs that give your AI agent specific onchain Execute token swaps using wallet-native skills across Bankr, CDP, and Sponge. + + + Onchain habit accountability on Base — leaderboard, user stats, check-ins, and tips via AgentKit. + diff --git a/docs/docs.json b/docs/docs.json index c4d6813b8..c968b5d7f 100644 --- a/docs/docs.json +++ b/docs/docs.json @@ -539,6 +539,12 @@ "ai-agents/skills/trading/alchemy-agentic-gateway", "ai-agents/skills/trading/swap-execution" ] + }, + { + "group": "AgentKit", + "pages": [ + "ai-agents/skills/agentkit/ngz" + ] } ] }