1. Agent Client Protocol 架构设计解析
在现代化开发工具链中,Antigravity 框架采用的 Agent Client Protocol 展现了一种优雅的"能力复用"架构。这套协议最精妙之处在于将技能实现(Skills)与调用规范(Workflows)进行了清晰分离,就像专业厨房中食材储备与菜谱的关系。
1.1 核心架构分层
**全局技能库(Skills)**相当于中央食材仓库:
- 存储路径:
~/.gemini/antigravity/skills - 包含内容:可执行脚本、模板代码、设计规范等原子能力
- 典型示例:
ui-ux-pro-max-skill:专业级设计系统生成器anthropics/skills:基础开发能力集合
**项目工作流(Workflows)**则如同项目专属菜谱:
- 存储路径:
项目根目录/.agent/workflows/*.md - 核心作用:定义如何组合全局技能解决当前项目问题
- 文件示例:
markdown复制--- description: Generate professional design system --- # UI UX Pro Max Workflow ## 1. Identify Requirements - Query: "SaaS landing page" - Stack: vue
这种分离带来三个显著优势:
- 空间效率:避免每个项目重复安装技能包
- 版本控制友好:项目目录仅保留轻量级配置文件
- 能力标准化:确保不同项目使用相同质量的技能实现
关键实践:建议将
.agent/目录加入.gitignore,因为其中只包含对全局技能的引用配置,而非实际能力代码。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 全局技能库部署实战
2.1 基础环境准备
首先需要建立技能库的存储结构。不同于传统包管理器将依赖安装在node_modules或vendor目录,Antigravity采用集中式管理:
bash复制# 创建技能库目录树
mkdir -p ~/.gemini/antigravity/skills
cd $_ # 使用$_引用上一个命令的最后一个参数
目录结构设计遵循Unix哲学:
- 每个技能独立子目录
- 技能内部保持自包含(包含文档、脚本、资源)
- 版本控制通过Git子模块管理
2.2 核心技能安装
以安装UI-UX-Pro-Max技能为例:
bash复制git clone https://github.com/nextlevelbuilder/ui-ux-pro-max-skill.git
安装后目录结构应如下:
code复制~/.gemini/antigravity/skills/
├── skills/ # 基础技能库
│ ├── frontend-design/
│ └── documentation/
└── ui-ux-pro-max-skill/ # 专业设计技能
├── src/
│ └── ui-ux-pro-max/
│ └── scripts/search.py
└── SKILL.md
版本控制技巧:
- 对技能库目录初始化Git仓库
- 使用
git submodule管理第三方技能 - 定期执行
git pull --rebase更新技能
2.3 技能依赖管理
某些高级技能可能依赖特定环境:
bash复制# 示例:UI-UX-Pro-Max的Python依赖
pip install -r ~/.gemini/antigravity/skills/ui-ux-pro-max-skill/requirements.txt
常见问题排查:
ModuleNotFoundError→ 检查Python路径是否包含技能目录- 权限问题 → 使用
chmod +x给脚本添加执行权限 - 网络隔离 → 配置Git的SSH认证或HTTP代理
3. 项目级工作流配置
3.1 工作流文件规范
每个.md文件代表一个可调用的技能组合。文件结构包含:
-
Front Matter(元数据):
markdown复制--- description: Apply frontend-design skill priority: 0 # 执行优先级 --- -
执行步骤(Markdown格式):
markdown复制## 1. Analyze Requirements - Context: ${用户输入} - Output: requirements.json -
脚本调用(代码块):
bash复制python3 ${skill_path}/script.py --input requirements.json
3.2 典型工作流示例
前端设计增强工作流(frontend-design.md):
markdown复制## 2. Adopt Design Persona
### 视觉风格选择
- Brutalist: 使用高对比色块
- Glassmorphism: 背景模糊+半透明
- 禁忌:避免默认的Tailwind颜色
### 动效规范
```bash
# 生成CSS动画代码
python3 ~/.gemini/antigravity/skills/ui-ux-pro-max-skill/src/generate_animation.py \
--type=fade-in \
--duration=300ms
技能查询工作流(list-skills.md):
markdown复制## Available Skills
1. 前端设计
- 路径: ~/.gemini/antigravity/skills/skills/frontend-design
- 命令: /frontend-design [需求描述]
2. 文档生成
- 路径: ../skills/documentation
- 示例: /generate-docs --format=vitepress
3.3 动态参数传递
工作流支持变量替换:
${project_root}: 项目根目录${user_input}: 自然语言指令${skill_output}: 上一步骤的输出
示例智能替换:
bash复制# 会自动替换为实际项目路径
python3 ${ui_ux_skill}/search.py "${user_input}"
4. 技能调用与交互模式
4.1 自然语言指令处理
当用户输入:
code复制设计一个科技感强的数据看板,使用深色主题
Agent执行流程:
- 匹配到
ui-ux-pro-max工作流 - 提取关键词:"科技感"、"深色主题"
- 生成设计参数:
json复制{ "palette": "dark_tech", "typography": "monospace" } - 调用技能脚本生成代码
4.2 命令行交互示例
直接调用技能:
bash复制agent run ui-ux-pro-max --prompt "金融数据仪表盘"
分步调试:
bash复制# 查看执行计划
agent explain frontend-design --input "优化登录表单"
# 实际执行
agent execute frontend-design --step=2 # 只执行第二步
4.3 输出结果处理
技能通常生成三种产物:
- 代码文件:直接写入项目目录
- 设计规范:Markdown格式报告
- 配置更新:自动修改tailwind.config.js等
重要约定:所有生成文件必须包含技能签名注释,例如:
js复制// @generated by ui-ux-pro-max-skill v1.2.3 // DO NOT EDIT MANUALLY
5. 高级技巧与故障排查
5.1 技能组合模式
通过管道符组合多个技能:
code复制agent run frontend-design --input "按钮样式" | \
agent run animation --type=hover-effect
5.2 版本冲突解决
当多个项目需要不同技能版本时:
bash复制# 创建版本隔离目录
mkdir ~/.gemini/antigravity/skills/v2
export ANTIGRAVITY_SKILLS_ROOT=$HOME/.gemini/antigravity/skills/v2
5.3 常见错误处理
技能未找到:
- 检查
ls ~/.gemini/antigravity/skills - 确认环境变量
ANTIGRAVITY_SKILLS_ROOT设置正确
权限问题:
bash复制# 批量添加执行权限
find ~/.gemini/antigravity/skills -name "*.py" -exec chmod +x {} \;
网络隔离:
bash复制# 使用本地技能镜像
git config --global url."file:///mnt/skills-mirror/".insteadOf "https://github.com/"
6. 效能优化实践
6.1 技能缓存机制
在.agent/config.yaml中配置:
yaml复制cache:
enabled: true
ttl: 3600 # 1小时缓存
paths:
- /tmp/agent-cache
6.2 预编译技能
对Python技能:
bash复制cd ~/.gemini/antigravity/skills/ui-ux-pro-max-skill
python -m compileall . # 生成.pyc文件
6.3 并行执行
在workflow文件中声明:
markdown复制## Parallel Tasks
- task1: |
python skill1.py
- task2: |
python skill2.py
parallel: true
经过多年实践验证,这套协议特别适合需要频繁复用复杂能力的场景。我在多个大型项目中采用这种架构后,团队效率提升显著——新成员只需配置标准技能库,就能立即获得资深开发者级别的工具链支持。最关键的是,当发现某个技能存在改进空间时,只需更新中央仓库,所有项目都能立即受益。
