The philosophy and practical benefits of agent fungibility in multi-agent software development. Why homogeneous, interchangeable agents outperform specialized role-based systems at scale.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Operate Next.js 16 SaaS on Vercel with Cloudflare DNS + Supabase. Use when deploying to Vercel, reducing build costs, managing secrets, or splitting traffic between Vercel and Cloudflare.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
설치 방법 보기설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.
Core Insight: Optimize three axes: operational control (CLI-first), cost control (avoid accidental builds), correctness (caching + auth without breaking SSR).
Set up [Next.js app / SaaS] on Vercel with:
1. Cloudflare DNS at: [domain.com]
2. Supabase project: [project-ref]
3. Build control: [manual deploys only / CI-triggered / default]
4. Cost offload: [R2 for assets / Cloudflare Pages for marketing / none]
Follow vercel-for-saas skill patterns.
Where should traffic go?
│
├─ Authenticated app (SSR/RSC) ─────► Vercel (app.example.com)
│ • DNS-only in Cloudflare (no proxy)
│ • Manual deploys, prebuilt artifacts
│
├─ Marketing/docs (static) ─────────► Cloudflare Pages (www.example.com)
│ • Direct Upload for deploy control
│ • Aggressive caching, cheap bandwidth
│
└─ Uploads/assets (storage) ────────► Cloudflare R2 (assets.example.com)
• Worker-signed URLs
• No egress fees
Why this split: Vercel does NOT recommend reverse-proxying. Hostname splitting gets Cloudflare benefits without breaking Vercel's edge.
# 1. Pull settings + env (creates .vercel/)
vercel pull --yes --token $VERCEL_TOKEN
# 2. Build locally (skips Vercel build minutes)
vercel build --prod
# 3. Upload prebuilt artifact
vercel deploy --prebuilt --prod --token $VERCEL_TOKEN
This is the highest-leverage pattern for cost control.
| Method | How | Effectiveness |
|---|---|---|
| Disable auto-deploys | vercel.json: "git": { "deploymentEnabled": false } | ★★★★★ |
| Prebuilt workflow | Build outside Vercel, upload with --prebuilt | ★★★★☆ |
| Ignored Build Step | Exit 0 = skip, Exit 1 = build (commonly reversed!) | ★★☆☆☆ |
| Deploy Hooks | HTTP-triggered deploys only | ★★★☆☆ |
Config-as-code (recommended):
{
"$schema": "https://openapi.vercel.sh/vercel.json",
"git": { "deploymentEnabled": false }
}
Details: BUILD-CONTROL.md
# List
vercel env ls
# Add secret (interactive)
vercel env add SECRET_NAME production
# Pull to local .env
vercel env pull .env.local
# Bulk sync via REST (for agents)
curl -X POST "https://api.vercel.com/v10/projects/$PROJECT/env?upsert=true" \
-H "Authorization: Bearer $VERCEL_TOKEN" \
-d '{"key":"VAR","value":"val","target":["production"]}'
For OIDC + Vault: TOKEN-AND-KEY-MANAGEMENT.md
# Add domain to Vercel
vercel domains add example.com --token $VERCEL_TOKEN
# Then in Cloudflare DNS (DNS-only, not proxied):
# A record → Vercel IP OR
# CNAME → cname.vercel-dns.com
vercel, supabase, wrangler, jqVERCEL_TOKEN, CLOUDFLARE_API_TOKENvercel link --yesvercel pull --yes"git": { "deploymentEnabled": false } to vercel.jsonvercel env add or REST APIsupabase migration newsupabase migration up (local) / supabase db push (CI)supabase gen types typescript# Marketing (Cloudflare Pages)
pnpm -C apps/marketing build
npx wrangler pages deploy apps/marketing/dist --branch=main
# App (Vercel prebuilt)
vercel pull --yes && vercel build --prod && vercel deploy --prebuilt --prod
| Gotcha | Fix |
|---|---|
| Ignored Build Step exits reversed | 0 = skip, 1 = build (not intuitive) |
| Ignored builds still count toward quotas | Use git.deploymentEnabled: false instead |
| Cloudflare proxy + Vercel = problems | Use DNS-only for Vercel domains |
.vercel/ folder committed | Add to .gitignore |
| Secrets in config files | Use vercel env or wrangler secret put |
Full list: FOOTGUNS.md
| Task | Command |
|---|---|
| Deploy preview | vercel |
| Deploy prod | vercel --prod |
| Pull settings | vercel pull |
| Build locally | vercel build |
| Deploy prebuilt | vercel deploy --prebuilt |
| List env vars | vercel env ls |
| Add env var | vercel env add NAME target |
| Pull env to file | vercel env pull |
Full CLI reference: CLI-COMMANDS.md
Copy this to your project's AGENTS.md:
### Vercel
Vercel CLI is installed and authenticated.
Project: `<PROJECT_NAME>`
Common commands:
\`\`\`bash
vercel pull --yes # Fetch settings + env
vercel build --prod # Build locally (saves build minutes)
vercel deploy --prebuilt --prod # Deploy prebuilt artifact
vercel env ls # List env vars
vercel env add SECRET production # Add secret
\`\`\`
**Cost tip:** Use prebuilt workflow to avoid burning build credits.
| Topic | Reference |
|---|---|
| Architecture & cost model | ARCHITECTURE.md |
| Stopping build burn | BUILD-CONTROL.md |
| API-based build control | API-BUILD-CONTROL.md |
| All CLI commands | CLI-COMMANDS.md |
| Secrets, env, OIDC, Vault | TOKEN-AND-KEY-MANAGEMENT.md |
| R2 + Pages cost offload | CLOUDFLARE-OFFLOAD.md |
| Full automation blueprint | AUTOMATION-BLUEPRINT.md |
| Common mistakes | FOOTGUNS.md |
# Vercel: https://vercel.com/account/tokens
export VERCEL_TOKEN=xxx
# Cloudflare: https://dash.cloudflare.com/profile/api-tokens
export CLOUDFLARE_API_TOKEN=xxx
# Supabase: project settings → API
export SUPABASE_ACCESS_TOKEN=xxx
All CLIs read these automatically. No interactive login needed.
아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.
로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.
아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.
The philosophy and practical benefits of agent fungibility in multi-agent software development. Why homogeneous, interchangeable agents outperform specialized role-based systems at scale.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
MCP Agent Mail for multi-agent coordination. Use when agents need file locks, messaging, inboxes, or conflict prevention. Handles macro_start_session, file_reservation_paths, send_message, threading, pre-commit guards.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Jeffrey Emanuel's multi-agent implementation workflow using NTM, Agent Mail, Beads, and BV. The execution phase that follows planning and bead creation. Includes exact prompts used.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Convert markdown plans into beads with dependencies using br CLI. Use when creating task graphs, polishing beads before implementation, or bridging planning to agent swarm execution.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Beads Viewer - Graph-aware triage engine for Beads projects. Computes PageRank, betweenness, critical path, and cycles. Use --robot-* flags for AI agents.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Manage AI coding CLI accounts with sub-100ms switching. Use when hitting rate limits on Claude Max, GPT Pro, or Gemini Ultra subscriptions and need instant account swapping without browser OAuth.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.