Git 集成
Cascade 深度集成 Git,不只是生成 Commit Message,还能理解代码变更的语义:
AI 生成 Commit Message
请根据以下 git diff 生成一个符合 Conventional Commits 规范的 commit message:
- 格式:type(scope): description
- type:feat/fix/refactor/test/docs/chore 之一
- description 用中文,不超过 50 字
- 如果变更涉及多个关注点,添加 body 说明
[粘贴 git diff 输出]
在终端直接使用(配合 shell 别名):
# 在 ~/.zshrc 或 ~/.bashrc 中添加:
alias gcai='git diff --cached | windsurf-cascade "生成 commit message"'
# 使用方式:
git add src/auth/
gcai
# Cascade 分析 staged 的变更,生成:
# feat(auth): 添加 JWT 刷新 token 机制
#
# - 新增 refreshToken API 端点
# - Token 有效期从 1 小时延长到 7 天(refresh)
# - 自动检测 token 过期并静默刷新
理解 git diff 和分支差异
请分析这个 PR 的代码变更(git diff main...feature/payment),
告诉我:
1. 这个 PR 做了什么(用产品语言,不是技术语言)
2. 主要的风险点是什么
3. 需要特别 review 的关键代码行
[粘贴 git diff 输出]
MCP(Model Context Protocol)集成
MCP 是 Anthropic 发布的开放协议,让 Cascade 能连接任意外部工具。Windsurf 从 1.0 版本起支持 MCP,配置位于 Settings → MCP Servers。
MCP(Model Context Protocol)
Anthropic 2024 年 11 月发布的开放标准,定义了 AI 模型与外部工具/数据源之间的通信协议。类比:就像 USB-C 接口统一了各种设备连接,MCP 统一了 AI 工具集成的接口。任何人都可以写 MCP Server(工具提供方),任何支持 MCP 的 AI 客户端(如 Windsurf、Claude Desktop)都可以直接使用,无需为每个 AI 单独适配。
配置 MCP Server
// Settings → MCP Servers → 添加以下配置
{
"mcpServers": {
// PostgreSQL 数据库工具
"postgres": {
"command": "npx",
"args": ["@modelcontextprotocol/server-postgres"],
"env": {
"POSTGRES_URL": "postgresql://user:pass@localhost/mydb"
}
},
// 文件系统工具(允许读取项目外的文件)
"filesystem": {
"command": "npx",
"args": ["@modelcontextprotocol/server-filesystem", "/Users/me/projects"]
},
// Playwright 浏览器自动化
"playwright": {
"command": "npx",
"args": ["@playwright/mcp"]
},
// GitHub 集成
"github": {
"command": "npx",
"args": ["@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_..."
}
}
}
}
Playwright MCP:浏览器调试 UI
配置 Playwright MCP 后,Cascade 可以直接控制浏览器,截图、点击、填表单——让 UI 调试从"猜测"变成"实时验证":
使用 Playwright 打开 http://localhost:3000/checkout
截图当前状态,然后:
1. 点击"进入结算"按钮
2. 填写表单(姓名: 张三,地址: 北京市朝阳区)
3. 截图填写后的状态
4. 检查控制台是否有 JS 错误
5. 告诉我 UI 是否与设计稿(@design/checkout.png)吻合
Playwright MCP 工作流:
Cascade Prompt
│
▼
MCP 工具调用 → playwright.navigate(url)
│
▼
playwright.screenshot() → 截图返回给 Cascade
│
▼
Cascade 分析截图内容
│
▼
playwright.click(selector) → 执行操作
│
▼
playwright.screenshot() → 验证结果
│
▼
Cascade 报告发现的问题
数据库工具:分析 Schema 并生成查询
配置 PostgreSQL MCP Server 后,Cascade 可以直接查询数据库 Schema 并生成优化查询:
连接数据库,查看 orders 表和 order_items 表的 Schema,
然后:
1. 找出最近7天销售额 TOP 10 的商品
2. 分析这个查询是否需要添加索引(查看执行计划)
3. 如果需要索引,生成对应的 Prisma migration 文件
不要实际修改数据库,只生成 migration 文件。
-- Cascade 生成的查询(基于实际 Schema):
SELECT
p.id,
p.name,
SUM(oi.quantity * oi.unit_price) AS total_revenue,
COUNT(DISTINCT o.id) AS order_count,
SUM(oi.quantity) AS units_sold
FROM products p
JOIN order_items oi ON p.id = oi.product_id
JOIN orders o ON oi.order_id = o.id
WHERE
o.status = 'completed'
AND o.created_at >= NOW() - INTERVAL '7 days'
GROUP BY p.id, p.name
ORDER BY total_revenue DESC
LIMIT 10;
-- 建议添加的复合索引(基于查询执行计划分析):
CREATE INDEX idx_orders_status_created
ON orders(status, created_at)
WHERE status = 'completed';
Jira / Linear 集成
通过 MCP,Cascade 可以读取 Issue 内容,直接根据需求描述生成代码:
读取 Linear Issue ENG-247 的完整描述,
然后:
1. 分析需求,列出需要修改的文件
2. 预估开发工作量(小时)
3. 开始实现(如果我确认)
实现时遵循 .windsurfrules 中的规范。
MCP 安全注意事项
MCP Server 配置中包含数据库连接字符串、API Token 等敏感信息,务必注意:① MCP 配置文件不要提交到 Git(添加到 .gitignore)② 数据库 MCP 使用只读账号(SELECT 权限,无写权限)③ 生产数据库不接入 MCP,只用于开发/测试环境 ④ 定期 rotate 访问 Token。
本章小结
MCP 是 Windsurf 扩展能力的关键协议,让 Cascade 从"代码编辑器"升级为"开发工具链控制中心"。最实用的集成:Playwright MCP(UI 调试)、PostgreSQL MCP(数据库分析)、GitHub MCP(PR 和 Issue 管理)。所有 MCP 配置中的凭据都应视为密钥级别的敏感信息妥善保管。