Search K
Appearance
🍵 欢迎来到技术茶馆 🍵
这里是一个分享技术、交流学习的地方
技术札记 | 茶馆周刊 | 工具书签 | 作品展示
让我们一起品茗技术,共同成长
Appearance
在软件工程领域,我们一直在追求更快的交付速度和更高的代码质量。从敏捷开发到 DevOps,再到如今的云原生,每一次变革都极大地释放了生产力。
然而,在实际的迭代中,我们依然面临着诸多痛点:
最近,随着大模型(LLM)能力的爆发,特别是 MCP (Model Context Protocol) 概念的提出,以及各种 AI 编程助手(如 Cursor、TRAE)的成熟,我开始思考:我们是否能构建一个真正由 AI 深度赋能,且具备工业级健壮性的研发体系?
本文将详细阐述我构想的一个双周迭代 AI 辅助研发与自动化部署闭环。这是一个融合了最新 AI 技术与成熟工程实践的前沿方案。
这个体系的核心在于将 AI 的能力限制在可控的范围内,让它成为高效的"副驾驶",而不是失控的"司机"。我们通过以下三个关键支柱来实现这一目标:
利用 MCP 协议,将飞书文档(需求)和 Figma(设计)中的非结构化信息,转化为 AI 可以理解的结构化上下文。
关键价值:
引入 ApiFox 作为单一事实来源。所有的开发工作必须始于明确的 API 契约,强制前后端对齐,消灭歧义。
关键价值:
任何人工操作都是不可靠的。从代码提交、测试、数据库变更到多端发布,一切皆代码,一切皆自动化。
关键价值:
这个体系分为五个主要阶段,形成完整的 PDCA 循环:
为什么要冻结契约?
如何冻结?
这是研发的主战场。开发者使用支持 MCP 的 IDE(如 Cursor、TRAE)。
示例代码:
// AI 基于 ApiFox 契约自动生成
@Controller('auction')
export class AuctionController {
@Post('bid')
@ApiOperation({ summary: '用户出价' })
async createBid(@Body() dto: CreateBidDto) {
// Sentry 埋点(AI 自动生成)
const transaction = Sentry.startTransaction({ name: 'createBid' });
try {
// 开发者填充业务逻辑
return await this.auctionService.placeBid(dto);
} catch (error) {
Sentry.captureException(error);
throw error;
} finally {
transaction.finish();
}
}
}示例代码:
// AI 基于 Figma + ApiFox 自动生成
export const BidPanel: React.FC = () => {
const [loading, setLoading] = useState(false);
const { data, error } = useBidHistory(); // AI 生成的 Hook
const handleBid = async (amount: number) => {
setLoading(true);
try {
// AI 基于 ApiFox 契约生成的 API 调用
await auctionApi.createBid({ lotId: '123', amount });
toast.success('出价成功');
} catch (err) {
Sentry.captureException(err); // AI 自动添加
toast.error('出价失败');
} finally {
setLoading(false);
}
};
return (
<div className="bid-panel"> {/* AI 基于 Figma 生成的样式 */}
<BidButton onClick={handleBid} loading={loading} />
<BidHistory data={data} />
</div>
);
};在 AI 生成代码时,就预置了 Sentry 的监控埋点
当代码提交到 GitHub 后,真正的工业级自动化开始运转。我们利用 GitHub Actions 构建了复杂的并行流水线。
name: Backend CI/CD
on:
push:
branches: [main, staging]
jobs:
test:
runs-on: ubuntu-latest
steps:
- name: 代码质量检查
run: npm run lint
- name: 单元测试
run: npm run test
migrate:
needs: test
runs-on: ubuntu-latest
steps:
- name: 数据库迁移
run: npx prisma migrate deploy
deploy-staging:
needs: migrate
runs-on: ubuntu-latest
steps:
- name: 部署到 Staging
run: |
aliyun fc deploy --env staging
- name: ApiFox 契约测试
run: npm run test:contract
deploy-prod:
needs: deploy-staging
if: github.ref == 'refs/heads/main'
runs-on: ubuntu-latest
steps:
- name: 部署到生产环境
run: aliyun fc deploy --env productionname: Mobile CI/CD
on:
push:
branches: [main]
jobs:
build-ios:
runs-on: [self-hosted, macOS] # Mac mini 自托管 Runner
steps:
- name: 构建 iOS
run: |
cd ios
fastlane build
- name: 上传 TestFlight
run: fastlane upload_testflight
build-android:
runs-on: ubuntu-latest
steps:
- name: 构建 Android
run: ./gradlew assembleRelease
- name: 上传内测渠道
run: fastlane upload_pgyer使用 Prisma Migrate:
// schema.prisma
model Auction {
id String @id @default(uuid())
title String
startTime DateTime
endTime DateTime
createdAt DateTime @default(now())
bids Bid[]
}基于 ApiFox 契约自动生成测试用例:
解决的痛点:
解决方案:
部署在 阿里云函数计算(FC) 或 Serverless 应用引擎(SAE):
优势:
适用场景:
潜在挑战:
发布不是终点。我们在 AI 生成代码时,就预置了 Sentry 的监控埋点。
传统模式:
PRD → 开发 → 上线 → 数据分析 → (人工解读) → 新 PRDAI 赋能模式:
PRD → 开发 → 上线 → 数据分析 → AI 自动洞察 → AI 辅助 PRD → 新 PRDAI 的作用:
价值:
一次性投入:
月度成本:
| 挑战 | 应对策略 |
|---|---|
| MCP 生态不成熟 | 渐进式引入,先用成熟的 ApiFox MCP |
| AI 生成代码质量 | 强制 Code Review + 自动化测试 |
| Serverless 冷启动 | 预热机制 + 保持实例温暖 |
| 挑战 | 应对策略 |
|---|---|
| 学习曲线陡峭 | 分阶段培训,从简单工具开始 |
| 契约冻结执行难 | 建立变更评审机制,迭代内严格控制 |
| 跨部门协作 | 定期同步会,ApiFox 作为沟通语言 |
这个方案涉及的每一个组件——飞书、Figma、ApiFox、GitHub Actions、Serverless——在业界都已经有成熟的应用。
这个体系的真正价值在于连接。通过 MCP 和高度自动化的流程,我们将这些孤岛连接成了一个有机的整体,让 AI 的能力真正落地到了生产级的软件交付中。
核心价值:
最终目标:
更少的人工琐事,更多的创造性思考,以及一个永远在线、不断进化的数字产研工场。
这也许就是未来研发团队的雏形,也是软件工程的下一个十年。