Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
68 commits
Select commit Hold shift + click to select a range
f0681de
feat(frontend): update landing page to matte brown and matte gold lux…
andreagnzz Feb 18, 2026
2cfced4
fix(frontend): match navbar background to page matte brown color
andreagnzz Feb 18, 2026
60edb60
feat(frontend): custom wallet connect button — ghost style, spinner o…
andreagnzz Feb 18, 2026
7b59de3
fix(frontend): repair broken styles — tailwind config, globals.css, m…
andreagnzz Feb 18, 2026
ff9f868
feat(frontend): add gold glitch text animation on Connect Wallet hover
andreagnzz Feb 18, 2026
5d1f75a
feat(frontend): add rotating logo carousel with CircularText spin — 0…
andreagnzz Feb 18, 2026
04c36bc
feat(frontend): 3 simultaneous spinning logo rings — each chain with …
andreagnzz Feb 19, 2026
fbee8b8
fix(frontend): remove CircularText from logos — show logos only
andreagnzz Feb 19, 2026
26c5fbc
feat(frontend): remove How It Works, agent cards, and footer sections…
andreagnzz Feb 19, 2026
bb7701b
fix(frontend): restore Tailwind CSS completely
andreagnzz Feb 19, 2026
4511343
feat(frontend): restore CircularText orbit around each chain logo
andreagnzz Feb 19, 2026
f0cd0a7
fix(frontend): remove card background from logos — floating logo insi…
andreagnzz Feb 19, 2026
4879d3a
fix(frontend): definitive Tailwind fix — clean config, globals, postc…
andreagnzz Feb 19, 2026
a1a953b
fix(frontend): definitive postcss + tailwind reinstall — force CSS pr…
andreagnzz Feb 19, 2026
0023b53
feat(frontend): restore carousel — no external CSS, all inline styles…
andreagnzz Feb 19, 2026
66395dc
fix(frontend): correct Hedera logo + center logos inside CircularText…
andreagnzz Feb 19, 2026
02e2111
fix(frontend): correct 0G and Hedera logos — accurate shapes, monochr…
andreagnzz Feb 19, 2026
3e3b03d
fix(frontend): correct 0G and Hedera SVG logos + clear Next.js cache
andreagnzz Feb 19, 2026
d32650b
feat(frontend): chain logos link to official websites on click
andreagnzz Feb 19, 2026
b2d8b8c
fix(frontend): Hedera logo gold on dark brown + remove prize pool bad…
andreagnzz Feb 19, 2026
ac89b89
fix(frontend): permanent Tailwind fix — nuke node_modules, rebuild co…
andreagnzz Feb 19, 2026
af41fb7
fix(frontend): Hedera H logo — two distinct vertical bars with center…
andreagnzz Feb 19, 2026
018f75a
fix(frontend): lock globals.css — add DO NOT MODIFY comment to preven…
andreagnzz Feb 19, 2026
a3c6b1b
fix(frontend): Hedera logo — thin H on white circle matching official…
andreagnzz Feb 19, 2026
211e944
fix(frontend): Hedera H — two clear vertical bars, gold on dark brown
andreagnzz Feb 19, 2026
46df62d
feat(frontend): replace Navbar with animated CardNav — GSAP dropdown …
andreagnzz Feb 19, 2026
9501ffc
feat(frontend): AgentFi logo links to homepage
andreagnzz Feb 19, 2026
10824da
wip: save progress before rebase
andreagnzz Feb 19, 2026
8838e1e
chore: update claude settings
andreagnzz Feb 19, 2026
ce72785
feat(frontend): SplitText on nav titles + FadeContent on nav links + …
andreagnzz Feb 19, 2026
1a8b243
fix(frontend): align nav card content to top — flex-start instead of …
andreagnzz Feb 19, 2026
e748cda
feat(frontend): replace hero badges with CurvedLoop marquee animation…
andreagnzz Feb 19, 2026
13712d3
fix(frontend): CurvedLoop — max curve, very slow speed for readability
andreagnzz Feb 19, 2026
01d0949
fix(frontend): Tailwind restored + CurvedLoop SSR fix with dynamic im…
andreagnzz Feb 19, 2026
ef43e0e
fix(frontend): CurvedLoop permanent infinite loop — fix offset wrappi…
andreagnzz Feb 19, 2026
8f05aba
feat(frontend): CurvedLoop arches upward — text sits on top of curve …
andreagnzz Feb 19, 2026
bf4b362
fix(frontend): CurvedLoop permanent infinite animation — bulletproof …
andreagnzz Feb 19, 2026
0770e67
fix(frontend): remove ETHDenver banner above hero title
andreagnzz Feb 19, 2026
4046864
fix(frontend): CurvedLoop non-interactive — auto-animate only, no drag
andreagnzz Feb 19, 2026
a1f1858
feat(frontend): DotGrid interactive background — caramel dots turn go…
andreagnzz Feb 19, 2026
a5480ef
fix(frontend): restore Tailwind again
andreagnzz Feb 19, 2026
291e8d8
fix(frontend): DotGrid background fixed — dynamic import, correct z-i…
andreagnzz Feb 19, 2026
e99544f
fix(frontend): restore layout — minimal safe version, add components …
andreagnzz Feb 19, 2026
64a8568
feat(frontend): PixelTransition on Enter Marketplace button — gold pi…
andreagnzz Feb 19, 2026
f6ef298
fix(frontend): PixelTransition button visible — fix container height …
andreagnzz Feb 19, 2026
4014db4
feat(frontend): GlareHover on Dashboard button — gold glare sweep, si…
andreagnzz Feb 19, 2026
27cfd6d
feat(frontend): terminal typewriter animation + Mac traffic light dots
andreagnzz Feb 19, 2026
7e77ce4
feat(frontend): DeFAI dashboard — portfolio stats, agent feed, alloca…
andreagnzz Feb 19, 2026
c3154bd
feat(frontend): agents dashboard — roster, live feed, performance sta…
andreagnzz Feb 19, 2026
e89aa4e
feat(frontend): agent marketplace — grid with filter, PixelTransition…
andreagnzz Feb 19, 2026
e7f9473
fix(frontend): Enter Marketplace button links to /marketplace
andreagnzz Feb 19, 2026
10d27c8
feat(frontend): my agents page — iNFT collection, metadata, timeline,…
andreagnzz Feb 19, 2026
1e9eb03
feat(frontend): replace hero buttons with shadcn Button — keep PixelT…
andreagnzz Feb 19, 2026
5a113d6
feat(frontend): replace CardNav with shadcn Sidebar — slide-in side m…
andreagnzz Feb 19, 2026
4b508fa
fix(frontend): AgentFi logo centered in TopBar — home link visible on…
andreagnzz Feb 19, 2026
d227700
docs: Dev B progress report — frontend/agents audit against PRD
andreagnzz Feb 19, 2026
4839411
fix(frontend): remove AgentFi text from sidebar header
andreagnzz Feb 19, 2026
0488ca5
docs: add Hedera integration plan for OpenClaw bounty
frytegg Feb 19, 2026
e09e0a4
feat(hedera): add HTS service module + create AFC token on testnet
frytegg Feb 19, 2026
37e214c
feat(hedera): register 3 agents on Hedera via HOL Standards SDK
frytegg Feb 19, 2026
64c0eca
feat(hedera): HCS-10 messaging, attestation hooks, and API endpoints
frytegg Feb 19, 2026
4bb83d6
fix(api): use override=True in load_dotenv so .env values take preced…
frytegg Feb 19, 2026
ba62e34
chore: update claude settings
andreagnzz Feb 19, 2026
b57a6c4
feat(frontend): CircularGallery for My Agents — 3D scrollable iNFT ga…
andreagnzz Feb 19, 2026
4afb9ee
feat(frontend): My Agents gallery — canvas-generated iNFT info cards …
andreagnzz Feb 19, 2026
b0680aa
fix(frontend): my agents — replace CircularGallery with clean readabl…
andreagnzz Feb 19, 2026
5536c4c
fix(frontend): add OGL type declaration to fix TS2307 CI error
andreagnzz Feb 19, 2026
2fb1e8a
feat(frontend): AnimatedContent on iNFT carousel — slides from arrow …
andreagnzz Feb 19, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions .claude/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"permissions": {
"allow": [
"Bash(git rebase:*)"
],
"additionalDirectories": [
"/Users/andreagonzalez/ETHDENVER/Main/agentfi/.claude"
]
}
}
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,9 @@ agents/**/*.pyc
agents/.mypy_cache/
agents/.pytest_cache/

# ─── Hedera ────────────────────────────────────────────────────────
agents/hedera_token.json

# ─── pnpm ───────────────────────────────────────────────────────────
node_modules/
.pnpm-store/
Expand Down
75 changes: 75 additions & 0 deletions STATUS_DEVB.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
# AgentFi — Dev B Progress Report
## Branch: feature/frontend
## Date: 2026-02-19

### Frontend Status

| Item | Status | Details |
|------|--------|---------|
| layout.tsx (WagmiProvider) | ✅ Done | `<Providers>` wraps WagmiProvider + RainbowKit + QueryClient. Chains configured: 0G (16600) + ADI (99999) via `chains.ts`. Sidebar + TopBar + DotGrid background. |
| page.tsx (Homepage) | ✅ Done | Rich hero with terminal typewriter animation (15 lines simulating agent execution), "Enter Marketplace" PixelTransition CTA, "View Dashboard" GlareHover CTA, CurvedLoop marquee, LogoCarousel multi-chain section. |
| marketplace/page.tsx | 🔧 Partial | Beautiful UI: search bar, category filters (All/DeFi/Risk/Yield), 6 agent cards (grid 3-col), iNFT banner. **But all data is hardcoded** (AGENTS array). Does NOT call `getListedAgents()` from contract. Hire buttons are PixelTransition visual only — no on-chain tx. |
| agent/[id]/page.tsx | ❌ Stub | Bare stub: shows "Agent #{id}" with 3 TODO comments. No metadata, no pricing, no HireButton integration. |
| my-agents/page.tsx | 🔧 Partial | Rich UI: wallet summary bar, 3 iNFT cards with metadata grid (model, capability, minted, owner, queries, earned), activity timeline (6 events), "Hire More" CTA. **All data hardcoded** — does NOT query user's tokens from contract. |
| dashboard/page.tsx | 🔧 Partial | Rich UI: agent roster (3 cards), live feed with typewriter animation, performance stats, allocation bars, quick actions. Uses `useAccount()` for address display. **All data hardcoded** — no real on-chain or backend queries. |
| AgentCard.tsx | ✅ Done | Component renders: name, description, pricePerHire, capabilities[], category badge. **However**, marketplace/page.tsx does NOT use this component — it has its own inline card rendering. AgentCard is unused in production. |
| HireButton.tsx | ❌ Stub | Has `agentId`, `price`, `onSuccess` props but `handleHire()` is a no-op. 3 TODO comments. No wagmi integration. |
| WalletConnect.tsx | ✅ Done | Full implementation: `useAccount`, `useConnect`, `useDisconnect`. Custom modal listing all connectors (MetaMask/Coinbase/WalletConnect). Loading spinner, address shortening, disconnect button. |
| useAgentData.ts | ❌ Stub | Returns `{ data: undefined, isLoading: false, isError: false }`. TODO comment to use `useReadContract` with AgentNFT ABI. |
| useHireAgent.ts | ❌ Stub | Returns `{ hireAgent: async () => {}, isPending: false, isSuccess: false }`. TODO comment to use `useWriteContract` with AgentMarketplace ABI. |
| useListedAgents.ts | ❌ Stub | Returns `{ agents: [], isLoading: false, isError: false }`. TODO comment to use `useReadContract` with AgentMarketplace ABI. |
| chains.ts | ✅ Done | `ogTestnet` (chainId 16600, RPC evmrpc-testnet.0g.ai) + `adiTestnet` (chainId 99999, RPC rpc.ab.testnet.adifoundation.ai). `wagmiConfig` via `getDefaultConfig` with both chains, SSR enabled. |
| contracts.ts | ✅ Done | Reads addresses from `deployments.json`. Exports `CONTRACT_ADDRESSES.AgentNFT` (0G), `CONTRACT_ADDRESSES.AgentMarketplace` (0G), `CONTRACT_ADDRESSES.AgentPayment` (ADI). |
| ABI files present | ✅ Done | All 3 ABIs present and valid: `AgentNFT.json` (766 lines, has `getAgentData`), `AgentMarketplace.json` (366 lines, has `hireAgent` + `getListedAgents`), `AgentPayment.json` (271 lines). |

### Agents Status

| Item | Status | Details |
|------|--------|---------|
| portfolio_analyzer.py | ✅ Done | `PortfolioAnalyzerAgent` extends `BaseAgent`. Calls `AsyncOpenAI` with gpt-4o-mini, system prompt for DeFi portfolio analysis, max_tokens=500. Error handling returns "Agent error: ...". Price: 0.5. |
| yield_optimizer.py | ✅ Done | `YieldOptimizerAgent` same pattern. System prompt for yield strategies with APY ranges. Price: 0.5. |
| risk_scorer.py | ✅ Done | `RiskScorerAgent` same pattern. System prompt for risk scoring 1-10. Price: 0.3. |
| orchestrator.py | ✅ Done | Full implementation: GPT-based routing (ROUTER_PROMPT generates JSON execution plan), `{step_N}` output injection between steps, agent registry, MockPaymentProvider integration (non-blocking). Max 4 steps. |
| api.py endpoints | ✅ Done | FastAPI with 5 endpoints: `GET /health`, `GET /agents` (list all), `POST /agents/{agent_id}/execute`, `POST /orchestrate`, `GET /payments/status`. CORS enabled for localhost:3000. Pydantic models for request/response. |
| mock_provider.py | ✅ Done | `MockPaymentProvider` extends `BasePaymentProvider`. Logs payments with from/to/amount/metadata. Returns success with mock transaction ID. Integrated into orchestrator flow. |

### Demo Flow Test (PRD Core Demo Flow)

| Step | Status | Blocker? |
|------|--------|----------|
| Step 1: Connect wallet | ✅ Works | RainbowKit modal, MetaMask/Coinbase/WalletConnect connectors. No blocker. |
| Step 2: Browse marketplace (3 agents) | 🔧 Visual only | Shows 6 hardcoded agents (not 3 from contract). `useListedAgents` is a stub. **Blocker: no on-chain data.** |
| Step 3: Hire agent (tx on-chain) | ❌ Not working | HireButton is a no-op stub. `useHireAgent` is a stub. No `hireAgent()` call on AgentMarketplace. **Blocker: no contract interaction.** |
| Step 4: Agent executes, result displayed | ❌ Not working | Backend agents work (OpenAI calls), but **frontend has zero connection to backend**. No fetch to localhost:8000. No API route. **Blocker: no frontend→backend integration.** |
| Step 5: My Agents shows owned iNFT | 🔧 Visual only | UI is polished but shows hardcoded iNFTs. `useAgentData` is a stub. **Blocker: no on-chain query for user's tokens.** |

### Summary

**What works well:**
- UI/UX is polished — homepage, marketplace, dashboard, my-agents all have cohesive gold/dark theme with animations (PixelTransition, GlareHover, typewriter, CurvedLoop)
- WagmiProvider + RainbowKit + chain config is correctly set up
- Contract addresses load from deployments.json
- ABIs are present and contain the expected functions
- Backend agents (Python) are fully functional with OpenAI integration
- Orchestrator chains agents with GPT-based planning
- Payment provider architecture is clean and extensible

**What's broken / missing:**
1. **Wagmi hooks are all stubs** — useAgentData, useHireAgent, useListedAgents return empty/no-op values
2. **No frontend→backend connection** — zero fetch calls to the FastAPI agents service
3. **Agent detail page is a bare stub** — no metadata display, no hire flow
4. **Marketplace uses hardcoded data** — not reading from contract
5. **HireButton does nothing** — no on-chain transaction
6. **AgentCard component is unused** — marketplace renders its own inline cards

### Blockers
- **Wagmi hooks need implementation** to connect UI to on-chain data (highest priority for demo)
- **Frontend→Backend bridge** needed to show agent execution results in the UI
- **Agent detail page** needs full build-out for the hire flow

### What I Need From Dev A
- Confirm deployed contract addresses are final (currently in deployments.json: AgentNFT `0x10e3...4e882`, AgentMarketplace `0x1a9e...4246` on 0G, AgentPayment `0x10e3...4e882` on ADI)
- Confirm `getListedAgents()` returns the 3 demo agents (portfolio_analyzer, yield_optimizer, risk_scorer) — are they listed on-chain?
- Confirm `hireAgent(tokenId)` payable value — what's the expected price in wei/OG?
- Confirm `getAgentData(tokenId)` return shape — what fields does the struct contain?
- Are there any events emitted on hire (e.g., `AgentHired`) we should listen for in the UI?
Loading