Reverse-chronological log of what was built, what's working, what's not, and what's next. This file exists so that new Claude Code sessions can pick up exactly where we left off.
- Vercel deployment verified — After adding
FLY_ROUTER_URLenv var in previous session, confirmed deployment is live and projects API returns all 4 projects from Neon - Full end-to-end session flow tested and WORKING:
- Created test user via Clerk Backend API (
user_39f4fylVSAYPaJaoqo48HtFbULB) - Signed in using Clerk sign-in token (bypassed email verification in dev mode)
- Inserted test user into Neon DB manually (webhook not configured yet)
- Clicked "Launch Session" on Dify project detail page
- fly.io machine created successfully (nginx:alpine placeholder)
- Router cookie flow worked:
/init/{machineId}→ cookie → fly-replay → nginx in iframe - Session page displayed with countdown timer (30 min) and nginx welcome page in iframe
- "Stop Session" button destroyed the machine and redirected to dashboard
- Dashboard correctly showed: "1 of 3 free sessions used", session history with "Destroyed" status
- Created test user via Clerk Backend API (
- Landing page → Projects from Neon DB
- Clerk auth → Sign-in/sign-up with dev mode
- Project detail → "Launch Session" button
- Session launch → Creates fly.io machine → inserts session → redirects to session page
- Session page → iframe with router cookie flow → fly-replay to machine → content renders
- Stop session → Destroys machine → redirects to dashboard
- Dashboard → Shows plan, active sessions, history, trial usage tracking
- Clerk webhook — Not configured; test user was inserted manually. Need to set up svix webhook secret and configure endpoint in Clerk dashboard
- Real project Docker images — All 4 projects still use
nginx:alpineplaceholder. Need to build actual Dify, GPT Researcher, Bolt.new, OpenClaw images - Clerk production mode — Still in development mode
- Custom domain — Running on
agentropic-platform.vercel.app - Terms/Privacy pages — Return 404 (links in footer)
- LiteLLM proxy — Not deployed yet (needed for AI API budget enforcement)
- Billing/Stripe — Not implemented
- Vercel: 6 env vars set (Clerk keys, DATABASE_URL, FLY_API_TOKEN, FLY_APP_NAME, FLY_ROUTER_URL)
- fly.io:
agentropic-sessionsapp (machines),agentropic-routerapp (2 machines, HA) - Neon: Schema pushed, 4 projects seeded, 1 test user
- Git: 4 commits on main, all pushed to
github.com/roundone/agentropic-platform
- Neon DB confirmed working — schema already pushed (from Feb 12), connection string in
.envand.env.local - Seed script run successfully — all 4 projects (Dify, GPT Researcher, Bolt.new, OpenClaw) upserted into Neon
- Landing page wired to DB — replaced hardcoded
FEATURED_PROJECTSarray with live DB query;page.tsxnow an async server component - Verified API endpoint —
GET /api/projectsreturns all 4 projects from Neon - Verified local dev — homepage renders projects from DB, all 4 project cards visible
- Created CHANGELOG.md — this file, for cross-session continuity
- Updated
Agentropic/CLAUDE.md— current status now reflects "Phase 1 MVP scaffold deployed"
- fly.io billing —
flyctl apps createfails with "We need your payment information." Must add credit card at:https://fly.io/dashboard/nishant-837/billing
- Create
agentropic-sessionsfly.io app - Test machine creation with
nginx:alpine(simple smoke test) - Verify full session launch → iframe → stop flow
- Build real project Docker images (start with GPT Researcher — simplest Dockerfile)
- Deploy to Vercel with
DATABASE_URLenv var set (if not already) - Clerk production mode
- Custom domain
Full Phase 1 MVP scaffold — from zero to deployed on Vercel.
- Landing page (
src/app/page.tsx) — Hero section ("Try the AI tools everyone's talking about — instantly"), "How it works" 3-step section (Browse → Launch → Explore), Featured Projects grid, CTA - Projects page (
src/app/projects/page.tsx) — Grid of project cards with categories, star counts, descriptions, "Try It" buttons - Project detail page (
src/app/projects/[slug]/page.tsx) — Individual project view - Session page (
src/app/session/[id]/page.tsx) — Where users interact with running containers (iframe/xterm.js) - Dashboard (
src/app/dashboard/page.tsx) — User's sessions and usage - Sign-in / Sign-up — Clerk-powered auth pages
- Layout components — Header with nav (Agentropic logo, Projects, Sign In, Get Started), Footer
- Clerk integrated with development keys
- Google OAuth + email/password sign-in working
- Clerk webhook handler (
src/app/api/webhooks/clerk/route.ts) — syncs users to our DB - Middleware protecting dashboard routes (
src/middleware.ts)
- Schema defined (
src/db/schema.ts): users, projects, sessions, usage_records tables - Drizzle config + connection (
src/db/index.ts,drizzle.config.ts) - Seed script (
src/db/seed.ts) — 4 projects: Dify, GPT Researcher, Bolt.new, OpenClaw
GET /api/projects— List all active projectsGET /api/projects/[slug]— Get single project by slugPOST /api/sessions— Create a new session (starts fly.io machine)GET /api/sessions/[id]— Get session detailsPATCH /api/sessions/[id]— Update session (extend, stop)GET /api/sessions/launch?projectId=— Redirect-based session creation (for "Try It" buttons)POST /api/sessions/[id]/stop— Stop a running session
- fly.io client (
src/server/fly/client.ts) — Create, start, stop, destroy machines - Dockerfiles for all 4 projects:
containers/dify/Dockerfilecontainers/gpt-researcher/Dockerfilecontainers/bolt-new/Dockerfilecontainers/openclaw/Dockerfile
- Base Dockerfiles:
containers/_base/Dockerfile.node,containers/_base/Dockerfile.python
- GitHub Actions:
ci.yml(lint + build on PR),deploy-containers.yml(Docker build/push)
- Vercel: Deployed successfully under nishie's Vercel account
- GitHub: Repo at
github.com/roundone/agentropic-platform, branchmain, 2 commits - fly.io: API token configured,
agentropic-sessionsapp creation attempted
- Landing page, projects page, sign-in page all render correctly on Vercel
- Clerk auth flow works (Google + email, development mode)
- API routes exist and are structured
- Neon DB not connected — Need to create Neon project and add
DATABASE_URLto Vercel env vars - Seed script not run — Projects are hardcoded in the UI for now, not from DB
- fly.io machines not tested — Container launch flow is coded but untested end-to-end
- Dockerfiles not built/pushed — No container images exist on fly.io registry yet
- Session iframe/xterm.js — UI exists but no live container to connect to
- No custom domain — Running on Vercel's default
.vercel.appURL - Clerk in development mode — Need to switch to production for real deploys
- Clerk dev keys: configured in
.env.local(not committed) - fly.io API token: configured in
.env.local - Neon: connected (
DATABASE_URLin.envand.env.local), schema pushed, seed run - Vercel: deployed under nishie's account
- GitHub:
roundone/agentropic-platform