IntuRank is a web client for exploring and interacting with the Intuition trust graph: markets, portfolio, claims, stats, and tooling built with React, Vite, wagmi/viem, and the Intuition GraphQL API.
npm install
npm run devOpen the URL Vite prints (usually http://localhost:5173). The app uses a HashRouter, so routes look like /#/markets, /#/skill-playground, etc.
Copy .env.example to .env.local and set values as needed:
| Variable | Purpose |
|---|---|
VITE_GEMINI_API_KEY |
Powers the Intuition Skill Playground chat (Gemini). Comma-separated keys are supported; one is chosen at random per request. |
VITE_WALLETCONNECT_PROJECT_ID |
WalletConnect (mobile / QR). |
VITE_GRAPHQL_URL |
Production GraphQL endpoint. In dev, leave unset so /v1/graphql is proxied by Vite. |
Others in .env.example |
IPFS uploads, email hooks, maintenance mode, etc. |
docs/demo.md— scripted walkthrough aligned withPRODUCT_PHASESinservices/intuRankProductSpec.tsdocs/presenter-runbook.md— one-pager for whoever demos when you’re not in the room (talk track + failure mode)CONTRIBUTING.md— release-style demo checklist (paste into PRs or issues)
Intuition Skill Playground: With a connected wallet on Intuition Mainnet (chain 1155) and VITE_GEMINI_API_KEY set, open Intel → Skill Playground or go to /#/skill-playground. The in-app agent proposes unsigned transactions (to, data, value); you review and Sign & Broadcast through your wallet—the same pattern as the CLI Skill workflow below.
Phased priorities (outcomes × metrics) and the Arena UX checklist live in services/intuRankProductSpec.ts. Trust picks open in the Arena at /#/climb?list=trust-your-tools&onboard=1 (/hub/trust-tools redirects there so the flow stays on one page). Arena share URLs use /#/climb?list=<id> (listId still accepted as an alias). Optional return nudge: ref=graph on the same URL.
What syncs where (today): positions, atoms, triples, and TRUST you put through the protocol live on-chain / in the indexer. Some IntuRank UX (Arena batch queue before submit, starred list IDs, skill chat history, activity XP ledger) still uses browser storage so it does not follow the user across devices until we add a backend or move more state on-chain.
Arena card pools (be precise in demos):
- Curated contests (
trust-your-tools, …) use in-repo names for the daily-life lane only. They are intentionally not pretending to be an on-chain roster. - GraphQL contests load only from the Intuition indexer: claim lanes →
getTopClaims; identity / vault lanes →getAllAgentsviafetchArenaLiveAtomsFromGraph. If the indexer returns nothing, the deck is empty (no placeholder companies or “Nexora”-style fillers). - Portal contests (e.g. Built on Intuition) load list members with
getListMemberSubjectsForObject/countListMembersForObject, matching indexed list triples on the graph.
Give your AI agent shared, verifiable onchain memory in ~10 minutes.
This tutorial explains how to use the Intuition Skill to generate correct-by-construction transaction parameters for the Intuition Protocol, then execute them (e.g. with viem or the IntuRank wallet flow).
- How to install and use the Intuition Skill in your AI coding agent (Cursor, Claude Code, etc.)
- How to create Atoms (identities/concepts) on Intuition
- How to create Triples (structured claims) linking Atoms
- How to deposit TRUST into vaults to stake on claims
- How to bridge: Skill output → viem → blockchain (or Skill output → IntuRank Sign & Broadcast)
- Node.js 20+ installed
- A funded demo wallet on Intuition Mainnet (get TRUST from faucet or bridge)
- An AI coding agent that supports
npx skills:- Cursor (recommended)
- Claude Code
- Codex
- Or any agent compatible with the Skills protocol
npm installThis teaches your agent the correct Intuition Protocol ABIs, calldata encoding, and msg.value calculations:
npx skills add 0xintuition/agent-skills --skill intuitionWhat this does: Your agent understands:
- Correct contract addresses (MultiVault, FeeProxy)
- Proper calldata encoding for
createAtoms,createTriples,deposit,redeem - Exact
msg.valuecalculations (deposit + fees) - GraphQL query patterns
- IPFS metadata flows
cp .env.example .env.localFor local scripts or tools that sign with a private key (not used by the default IntuRank UI), you may set:
INTUITION_RPC_URL=https://rpc.intuition.systems/http
INTUITION_CHAIN_ID=1155
PRIVATE_KEY=0xYOUR_PRIVATE_KEY_HERESecurity: Never commit
.env.localor real keys. Use a test wallet with minimal funds.
For IntuRank in the browser, configure VITE_GEMINI_API_KEY and connect a wallet; broadcasting uses the wallet, not PRIVATE_KEY.
npm run devUse the Skill Playground in the sidebar (Intel menu) for a ready-made agent UI, or integrate the same { to, data, value, chainId } pattern in your own code.
The standalone tutorial repo uses small TypeScript files under src/examples/. IntuRank implements the same contract pattern in-app: the Skill Agent outputs JSON; Sign & Broadcast sends it via viem through your connected wallet.
What it does: Creates a new identity/concept on Intuition (e.g., "Ethereum", "Alice", "Design").
Workflow:
-
Ask the Skill (in your AI agent chat):
/intuition --write createAtoms "My First Atom" --deposit 0.01 --network mainnet -
Copy the Skill's output (JSON like):
{ "to": "0xCbFe767E67d04fBD58f8e3b721b8d07a73D16c93", "data": "0x1234abcd...", "value": "10000000000000000", "chainId": "1155" } -
In IntuRank: paste the same intent into the Skill Playground chat, or paste parameters into your own viem
sendTransactioncall. -
In a script: set
unsignedTxfrom the Skill output and broadcast with your wallet client.
Expected result: a transaction hash on Intuition Explorer.
What it does: Creates a structured claim linking three Atoms (Subject → Predicate → Object).
Example: "Alice is skilled in Design"
- Subject:
Alice(Atom ID) - Predicate:
is skilled in(Atom ID) - Object:
Design(Atom ID)
Workflow:
-
Create or resolve the three Atom IDs (Example 1 or GraphQL).
-
Ask the Skill:
/intuition --write createTriples <subjectId> <predicateId> <objectId> --deposit 0.1 --network mainnet -
Execute via Skill output + viem, or use the Skill Playground with a natural-language request that includes the three term IDs.
What it does: Stakes TRUST into an Atom or Triple vault.
-
Get a
termId(Atom or Triple ID). -
Ask the Skill:
/intuition --write deposit <termId> 0.1 --network mainnet -
Paste Skill output into your executor or confirm in the Playground when the agent proposes the transaction.
┌─────────────────┐
│ AI Agent │
│ (Cursor/Claude)│
└────────┬────────┘
│
│ /intuition --write createAtoms ...
│
▼
┌─────────────────┐
│ Intuition Skill│
│ (generates tx) │
└────────┬────────┘
│
│ Returns: { to, data, value, chainId }
│
▼
┌─────────────────┐
│ Your Code or │
│ IntuRank UI │
└────────┬────────┘
│
▼
┌─────────────────┐
│ viem / wallet │
│ (signs & sends)│
└────────┬────────┘
│
▼
┌─────────────────┐
│ Intuition L3 │
└─────────────────┘
In IntuRank, review the Proposed Transaction block before clicking Sign & Broadcast. You can also ask the agent to explain parameters without sending.
For scripts, keep broadcast lines commented until you are ready to spend gas.
The Skill returns unsigned transaction parameters:
to: Contract address (MultiVault or FeeProxy)data: Encoded calldata (function selector + args)value: TRUST amount in wei (as base-10 string)chainId: Intuition chain ID (1155 for mainnet)
Why this design?
- The agent handles correctness (ABI, calldata, values)
- Your code or wallet handles execution (signing, broadcasting)
- Separation of concerns supports safer autonomous agents
- Set
VITE_GEMINI_API_KEYin.env.localand restartnpm run dev.
- Verify the wallet is on Intuition Mainnet (1155).
- Use the in-app network switch if prompted.
- You need TRUST on Intuition Mainnet for gas and deposits.
- Run:
npx skills add 0xintuition/agent-skills --skill intuition - Restart the editor.
- Explore GraphQL:
https://mainnet.intuition.sh/v1/graphql - Batch operations: combine multiple atoms/triples where the protocol allows
- Share feedback as a Dev Ambassador
- Intuition Protocol Docs: https://docs.intuition.systems
- Intuition Skill Repo: https://github.com/0xIntuition/agent-skills
- Intuition Explorer: https://explorer.intuition.systems
- GraphQL Endpoint: https://mainnet.intuition.sh/v1/graphql
Built by Intuition Dev Ambassadors