|
| 1 | +--- |
| 2 | +title: "No-Going-Zone (NGZ)" |
| 3 | +description: "AgentKit action provider for querying and interacting with NGZ, an onchain habit accountability tracker on Base" |
| 4 | +keywords: ["NGZ skill", "onchain habit tracker", "AgentKit action provider", "Base agent skill", "habit accountability agent"] |
| 5 | +--- |
| 6 | + |
| 7 | +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. |
| 8 | + |
| 9 | +The NGZ action provider lets any AgentKit-powered agent read leaderboard data, look up user stats, and send transactions on behalf of a user. |
| 10 | + |
| 11 | +## Install |
| 12 | + |
| 13 | +Add the NGZ action provider to your AgentKit instance: |
| 14 | + |
| 15 | +```bash Terminal |
| 16 | +npm install @coinbase/agentkit |
| 17 | +``` |
| 18 | + |
| 19 | +```typescript TypeScript |
| 20 | +import { AgentKit } from "@coinbase/agentkit"; |
| 21 | +import { ngzActionProvider } from "@coinbase/agentkit"; |
| 22 | + |
| 23 | +const agentKit = await AgentKit.from({ |
| 24 | + walletProvider, |
| 25 | + actionProviders: [ngzActionProvider()], |
| 26 | +}); |
| 27 | +``` |
| 28 | + |
| 29 | +## What the skill covers |
| 30 | + |
| 31 | +| Action | Wallet required | Description | |
| 32 | +|--------|-----------------|-------------| |
| 33 | +| `get_ngz_leaderboard` | No | Fetch top streak holders ranked by current streak | |
| 34 | +| `get_ngz_user` | No | Look up a user's full stats by wallet address | |
| 35 | +| `get_ngz_wall_of_shame` | No | Fetch recent relapse events from the Wall of Shame | |
| 36 | +| `check_in_ngz` | Yes | Record today's check-in to maintain your onchain streak | |
| 37 | +| `tip_ngz_user` | Yes | Send ETH respect directly to another user's wallet | |
| 38 | + |
| 39 | +## Example prompts |
| 40 | + |
| 41 | +```text |
| 42 | +Show me the top 10 users on the NGZ leaderboard |
| 43 | +
|
| 44 | +Look up the NGZ profile for 0x1234...abcd |
| 45 | +
|
| 46 | +Show me the latest relapses on the NGZ Wall of Shame |
| 47 | +
|
| 48 | +Check me in on NGZ to keep my streak going |
| 49 | +
|
| 50 | +Send 0.001 ETH tip to 0x1234...abcd on NGZ with the message "Keep going!" |
| 51 | +``` |
| 52 | + |
| 53 | +## Networks |
| 54 | + |
| 55 | +Supported on `base-mainnet` and `base-sepolia`. |
| 56 | + |
| 57 | +<Note> |
| 58 | + The NGZ contract is currently deployed on Base Sepolia testnet at `0x4D1b5da45a5D278900aedfc6c96F0EE0D4e28bF6`. Mainnet deployment is in progress. |
| 59 | +</Note> |
| 60 | + |
| 61 | +## Streak milestones |
| 62 | + |
| 63 | +NGZ mints a soulbound NFT each time a user hits a milestone. These NFTs cannot be transferred or burned. |
| 64 | + |
| 65 | +| Days clean | Tier | |
| 66 | +|------------|------| |
| 67 | +| 7 | Novice Resister | |
| 68 | +| 30 | Goon Slayer | |
| 69 | +| 90 | Monk Mode Activated | |
| 70 | +| 180 | Half-Year Warrior | |
| 71 | +| 365 | NGZ Legend | |
| 72 | + |
| 73 | +Relapsing mints a permanent **Fell Off** Wall of Shame NFT in addition to resetting the streak to zero. |
| 74 | + |
| 75 | +## Reference |
| 76 | + |
| 77 | +- [NGZ on Base Sepolia](https://sepolia.basescan.org/address/0x4D1b5da45a5D278900aedfc6c96F0EE0D4e28bF6#code) |
| 78 | +- [NGZ frontend](https://frontend-one-khaki-22.vercel.app) |
| 79 | +- [coinbase/agentkit PR #1126](https://github.com/coinbase/agentkit/pull/1126) |
| 80 | +- [@coinbase/agentkit documentation](https://docs.cdp.coinbase.com/agent-kit/docs/agentkit-overview) |
0 commit comments