Fulling 是一款由 AI 控制的全栈工程师代理。它基于 Next.js、Claude、shadcn/ui 和 PostgreSQL 打造。使用 Kubernetes 作为基础设施。
Fulling 是一款由 AI 控制的全栈工程师代理。它基于 Next.js、Claude、shadcn/ui 和 PostgreSQL 打造。使用 Kubernetes 作为基础设施。
Fulling is building dedicated AI workspaces: persistent environments that combine skills, files, memory, scripts, and runtime. The current v3 foundation provides the identity and Kubernetes credential boundary required for that product model.
SelfSubjectReviewThe repository intentionally contains no compatibility layer for the previous product model or authentication system.
Read docs/architecture.md for the target Workspace model. The user-level kubeconfig in this foundation is not the final Workspace Runtime ownership model.
The public application does not require PostgreSQL or an OAuth provider. The legacy authenticated workspace additionally requires PostgreSQL and a GitHub OAuth App.
Configure the GitHub OAuth callback as:
${BETTER_AUTH_URL}/api/auth/callback/github
npm ci
npm run dev
This starts the public application with sign-in disabled. To exercise the legacy authenticated workspace instead:
cp .env.template .env.local
# Fill in the database, Better Auth, and GitHub values.
npm run prisma:migrate
npm run dev
Open http://localhost:3000.
This release uses a new baseline schema. Run it against a new database or an explicitly reset database; it does not migrate v2 data.
npm run dev # Start the development server
npm run build # Generate Prisma client and build
npm run lint # Run ESLint
npm test # Run Vitest
npm run test:e2e # Run Playwright
npm run prisma:format # Format the Prisma schema
npm run prisma:validate # Validate the Prisma schema
npm run prisma:migrate # Deploy the baseline migration
Kubeconfigs are stored as plaintext in PostgreSQL. Database read access grants access to users' Kubernetes credentials. Browser-facing APIs never return saved content, and logs must not contain tokens, keys, certificates, or kubeconfig content.
Validation rejects executable credential plugins, auth-provider plugins, local file credential fields, proxy configuration, non-HTTPS API servers, redirects, and anonymous identities. Authenticated users may still configure an HTTPS API server on any network address. This authenticated outbound-request/SSRF boundary is an explicit deployment decision.
Before replacing a v2 deployment, follow docs/v2-resource-inventory.md. Resetting the Fulling database does not delete Kubernetes resources created by v2.
Use docs/github-oauth-verification.md to verify a real OAuth application before release.
Fulling can use Vercel's native Next.js deployment without a vercel.json file.
The public application builds and starts without environment variables. The
current GitHub sign-in, database-backed workspace, and kubeconfig flows remain
disabled until their complete legacy configuration is present.
Follow docs/vercel-deployment.md for the complete project setup, zero-configuration behavior, verification steps, and rollback procedure.
暂无开放 Issues,或尚未同步最近议题。