Google Antigravity SDK
用 Python 构建基于 Google Antigravity 与 Gemini 的有状态智能体。
- Star 数
- ★ 4k
- 最近更新
- 9 天前
- License
- Apache-2.0
- 主语言
- Python
- FA 评分
- 52/100 · 缺口较多
30 秒速览
- 运行形态
- 可在哪里用
- 平台专用
- 费用
- 软件免费,模型调用费用自付
- 上手难度
- 中 · 需要几步配置
- 开始前需要
- 典型场景
- Python 开发者需要快速创建一个能调用已注册 Python 函数的 Gemini 智能体,例如向模型提供 get_weather(city) 工具。
- 不适合
- 不愿绑定 Google Antigravity 与 Gemini 的团队
- 只想克隆仓库直接运行、不安装 PyPI 平台轮子的用户
这个 Agent 能做什么,适合哪些场景?
Google Antigravity SDK 是一个 Python SDK,用于构建由 Antigravity 和 Gemini 驱动的智能体。高层的 Agent 通过异步上下文管理器处理二进制发现、工具接线、Hook 注册和默认策略;默认以只读模式运行。需要自行管理会话时,可使用 Conversation、ConnectionStrategy 和 ToolRunner,查看历史、轮次及最后一次响应。ChatResponse 支持异步流式文本,也可分别流式读取 thoughts 与强类型 ToolCall 事件。SDK 可接收文本、图片、视频、音频和文档,并支持 Python 函数工具、MCP 服务器、策略、Hook 与定时触发器。
应用先用 LocalAgentConfig 配置系统指令、工具、MCP 服务器、策略或触发器,再在 async with Agent(config) 中调用 await agent.chat(...)。chat 可接收文本或包含 Image、from_file(...) 等内容对象的列表,返回 ChatResponse;调用 await response.text() 获取完整文本,或用 async for token in response 流式处理文本。需要更细粒度控制时,Conversation.create(strategy) 建立有状态会话,send(...) 发送消息,receive_steps() 逐步接收 Step,并累积 history、turn_count 和 last_response。Python 函数可通过 tools 注册,McpStdioServer 可启动外部 MCP 工具;CapabilitiesConfig() 会启用全部工具(包括写入),而 deny、allow、ask_user、enforce 等策略可限制或拦截工具调用。
- Python 开发者需要快速创建一个能调用已注册 Python 函数的 Gemini 智能体,例如向模型提供 get_weather(city) 工具。
- 构建命令行或界面程序的团队需要逐 token 显示回复,并在界面中分别展示 response.thoughts 和 response.tool_calls。
- 需要让智能体结合 PDF、图片、视频、音频或文档完成分析的应用开发者,可将 from_file(...) 或 Image 数据与文字提示一并发送。
- 已有 MCP stdio 工具服务的工程团队,需要用 McpStdioServer 将其暴露给智能体调用。
- 需要保存多轮上下文、检查步骤历史或直接消费流式 Step 的开发者,可使用 Conversation 和 LocalConnectionStrategy。
- 在 Google Cloud 项目中使用 Gemini Enterprise Agent Platform 的团队,可通过 vertex=True、project 与 location 配置,并使用 ADC 认证。
如何安装或部署这个 Agent?
从 PyPI 安装:
pip install google-antigravity不要只克隆仓库:SDK 所需的编译运行时二进制包含在 PyPI 发布的平台特定 wheel 中。使用 Gemini API 时,先设置 GEMINI_API_KEY="your_api_key_here";使用 Gemini Enterprise Agent Platform(原 Vertex AI)时,可在 LocalAgentConfig 中设置 vertex=True、project 和 location,或设置 GOOGLE_GENAI_USE_VERTEXAI=True、GOOGLE_CLOUD_PROJECT 与 GOOGLE_CLOUD_LOCATION,然后执行 gcloud auth application-default login。
如何使用这个 Agent?
最小调用:
from google.antigravity import Agent, LocalAgentConfigasync with Agent(LocalAgentConfig()) as agent:
response = await agent.chat("Hello!")
print(await response.text())也可先设置 GEMINI_API_KEY 后运行示例:python ./examples/getting_started/hello_world.py。若使用 Enterprise 配置,显式传入 LocalAgentConfig 的参数优先于环境变量。
这个 Agent 有哪些优点和局限?
- Agent 将二进制发现、工具接线、Hook 注册和默认策略封装在单个异步上下文管理器中,适合从简单调用起步。
- Conversation 提供 history、turn_count、last_response、send 和 receive_steps,支持需要会话状态和步骤级处理的实现。
- 同一 chat 接口可处理文本与图片、视频、音频、文档等内容对象,并提供 from_file(...) 文件快捷方式。
- 既能注册 Python 函数工具,也能通过 McpStdioServer 接入外部 MCP 服务,并可用声明式策略控制工具调用。
- 核心能力明确依赖 Google Antigravity 与 Gemini,未提供其他模型或提供商适配路径。
- 必须通过 PyPI 安装平台特定 wheel 才能获得编译运行时;仅克隆仓库不能运行 SDK。
- 默认只读;若传入 CapabilitiesConfig() 会启用包括写入在内的全部工具,采用前需要自行设计权限与策略。
- Enterprise 路径需要 GCP 项目、区域以及 Application Default Credentials 或相应环境变量。
这个 Agent 与同类方案有什么区别?
Agent 适合采用高层封装:它在异步上下文中管理生命周期并直接提供 chat。Conversation 搭配 ConnectionStrategy 和 ToolRunner 面向需要控制连接生命周期、累积步骤历史或消费 Step 流的实现。
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| Google Antigravity SDK 当前 | 52 · 缺口较多 | 代码库 / SDK免费 + 模型费 | ★ 4k | 9 天前 | Python | — |
| AgenticX 多智能体平台 | 64 · 存在缺口 | 命令行工具免费 + 模型费 | ★ 997 | 今天 | Python | Claude Code · OpenAI API · Claude API |
| Gemini CLI | 54 · 缺口较多 | 命令行工具免费 + 模型费 | ★ 109k | 今天 | TypeScript | — |
| Qwen Code | 54 · 缺口较多 | 命令行工具免费 + 模型费 | ★ 29k | 今天 | TypeScript | OpenAI API · Claude API |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
证据显示默认只读模式,且提供策略系统(deny/allow/ask_user)以限制工具权限,但未明确说明权限最小化的具体实现细节。用户确认机制存在(ask_user策略),但未展示默认启用或强制要求。数据流透明度不足,未详细说明数据如何被处理、存储或传输。敏感数据处理仅提及API密钥和ADC,但未说明加密或保护措施。依赖安全未提供漏洞扫描或锁定版本,仅列出依赖范围。外部影响方面,默认只读模式限制了副作用,但未说明如何防止意外写入。回滚机制未提及。来源归属仅通过版权声明和作者信息,但发布者未验证。
自一致性较好,README中的示例与代码结构一致,但未验证实际运行。依赖可用性方面,依赖列表明确,但未提供锁定版本或兼容性矩阵。失败消息未提供具体错误处理或用户提示示例。
目标受众明确为开发者,场景包括简单代理、流式响应、工具调用、MCP集成等。能力边界通过CapabilitiesConfig和策略系统定义,但未详细说明默认能力。触发精度通过triggers示例展示,但未说明触发条件的具体配置。环境适配支持Vertex AI和本地模式,但未说明所有平台支持情况。
信息架构清晰,README有目录和组件文档链接。安装说明明确,强调从PyPI安装。命名稳定性未提供版本历史或API稳定性说明。示例丰富,但缺少FAQ。已知限制未明确列出。许可证为Apache-2.0,完整。版本和变更日志未提供。维护责任未明确,但存在SECURITY.md和GitHub Actions。
输出可用性良好,提供流式响应和文本提取。边际价值高,提供多模态、工具、MCP等高级功能。成本效益未提供性能或资源消耗数据。
声明可追溯性一般,README中的功能描述未与代码直接对应。跨来源佐证不足,仅依赖单一仓库。事实与推断分离不明确,未区分文档声明和实际实现。
- 源码中未见:回滚或恢复路径运行前先备份,或在 git 分支、快照上操作,确保改动可以撤销。
- 发布者身份未验证,需谨慎对待来源。
- 依赖未锁定版本,存在供应链风险。
- 默认只读模式虽好,但启用全部工具后需注意权限控制。
- 未提供回滚机制,操作不可逆时需谨慎。
- 数据流透明度不足,敏感数据处理细节缺失。