用途:为 James 的个人软件项目提供技术选型默认值,覆盖语言、前端、API、数据库、部署、测试与依赖管理。使用前先检查仓库状态、AGENTS.md 与已记录决策;已有技术是证据而非永久架构决定。新项目按默认执行,既有项目应尽早指出重大偏离并建议对齐,迁移前须询问,不得顺带迁移。若保留偏离,需在仓库文档记录理由,除被要求或有新证据外不再重开。
主要能力与默认:后端、CLI 与开发工具首选 Go,标准库优先;维护型 Go CLI 用 Cobra,并以 cobra-cli init 与 cobra-cli add 生成结构,仅在配置复杂时加 Viper。前端首选 React + TypeScript + Vite、npm、ESLint、Prettier,共享状态用 Zustand;可接受 Tailwind CSS;强烈避免 Next.js,避免 Redux、Java、C#/.NET、PHP 与重型企业框架。脚本用 Just 作任务运行器,Bash 仅限极小胶水,Python 主要用于机器学习。
架构与数据:每个项目一个 monorepo,前后端不合并为单体;API 默认 gRPC + Protobuf,浏览器/外部客户端走 REST/JSON 网关,前端 TS 客户端由 OpenAPI 生成;数据库默认 PostgreSQL,小规模可用 SQLite,MongoDB 可接受,避免存储过程;身份用托管 OIDC/OAuth。
基础设施与质量:仅用现有 Rackspace Spot Kubernetes;GitOps 用 Argo CD + Kustomize,第三方用 Helm,避免 Terraform;开发用 Devcontainers、Just、Docker/Compose;CI/CD 用 GitHub Actions,构建一次并提升同一不可变制品;遥测用 OpenTelemetry 与 Grafana 生态。TDD 为默认,Go 用 testing + Testcontainers,前端用 Vitest、React Testing Library、Playwright。依赖小版本自动更新,大版本与不熟悉依赖需审批。
限制:资料未提供具体价格、平台支持范围或效果数据;探索不等于批准采用,已记录决策与明确排除优先于通用偏好。