综合介绍
ACI.dev 是一个开源基础设施平台,专为 AI 智能体提供与 600 多种工具的快速集成。它通过多租户认证和细粒度权限管理,确保智能体安全访问工具,如 Google Calendar、Slack 和 Brave Search。开发者可通过直接函数调用或统一的 MCP 服务器使用工具,灵活适配任何大型语言模型框架。ACI.dev 提供 Python SDK 和详细文档,支持快速开发生产环境开箱即用的 AI 智能体。
功能列表
- 集成 600+ 工具,支持 Google Calendar、Slack、Brave Search 等服务。
- 支持多租户认证,管理开发者与用户权限,确保数据安全。
- 提供统一 MCP 服务器,简化工具搜索与执行流程。
- 支持直接函数调用,适配多种 AI 智能体框架。
- 提供 Python SDK,方便开发者调用 ACI API。
- 支持动态工具发现,智能体可根据任务意图自动选择工具。
- 提供 OAuth2 和 API 密钥认证,简化第三方工具授权流程。
- 支持自然语言权限边界,增强智能体可靠性。
- 开源社区支持,允许用户提交工具集成请求或贡献代码。
- 提供详细文档和示例代码,支持快速上手。
使用帮助
安装与配置
ACI.dev 是一个开源项目,托管在 GitHub 上。开发者可通过本地部署完整平台(包括后端服务器和前端门户)或使用 Python SDK 集成 ACI 功能。以下是详细的安装和使用步骤:
1. 本地部署 ACI.dev 平台
要运行 ACI.dev 的后端服务器和前端门户,需按照以下步骤操作:
- 克隆代码库:在终端运行以下命令,获取 ACI 源代码:
git clone https://github.com/aipotheosis-labs/aci.git cd aci
- 安装依赖:ACI 使用 Python 3.12+ 和 Docker。确保已安装 Docker 和 Docker Compose。进入
backend
目录,安装依赖:cd backend uv sync source .venv/bin/activate
使用
uv
包管理器安装依赖。如果未安装uv
,可运行:pip install uv
- 配置环境变量:复制示例环境变量文件并修改:
cp .env.example .env.local
在
.env.local
中设置以下关键变量:SERVER_OPENAI_API_KEY
:OpenAI API 密钥,用于智能体调用。CLI_OPENAI_API_KEY
:与服务器密钥相同或另设。- 如果使用 Stripe 计费功能,运行 Stripe CLI 获取 webhook 签名密钥:
stripe listen --forward-to localhost:8000/v1/billing/webhook
将输出的
SERVER_STRIPE_WEBHOOK_SIGNING_SECRET
添加到.env.local
。
- 启动服务:使用 Docker Compose 启动后端和前端:
docker-compose up
后端 API 默认运行在
localhost:8000
,前端门户运行在localhost:3000
。 - 访问前端门户:在浏览器打开
http://localhost:3000
,注册账户。注册后,系统自动创建测试项目和智能体,开发者可通过门户管理工具和权限。
2. 使用 Python SDK
如果只想通过代码调用 ACI 功能,可使用 Python SDK:
- 安装 SDK:
pip install aci-python-sdk
- 初始化 SDK:
from aci import ACI import os client = ACI(api_key=os.environ.get("ACI_API_KEY"))
ACI_API_KEY
可在 ACI.dev 平台(http://localhost:3000
)的项目设置中获取。 - 示例:搜索可用工具:
apps = client.apps.search(intent="搜索网页", allowed_apps_only=False) print(apps) # 返回与意图相关的工具列表
- 示例:执行工具功能:
result = client.functions.execute( function_name="BRAVE_SEARCH__WEB_SEARCH", function_parameters={"query": {"q": "北京天气"}}, linked_account_owner_id="user123" ) if result.success: print(result.data) else: print(result.error)
3. 使用 Unified MCP 服务器
MCP 服务器是 ACI.dev 的核心组件,提供两种模式:应用服务器和统一服务器:
- 应用服务器:直接访问指定工具。例如,启动 Brave Search 和 Gmail 的应用服务器:
uvx aci-mcp apps-server --apps "BRAVE_SEARCH,GMAIL" --linked-account-owner-id user123
- 统一服务器:动态发现和执行所有 ACI 工具:
uvx aci-mcp unified-server --linked-account-owner-id user123 --allowed-apps-only
统一服务器提供两个元功能:
ACI_SEARCH_FUNCTIONS
(搜索工具)和ACI_EXECUTE_FUNCTION
(执行工具),减少 LLM 上下文窗口占用。 - 配置账户链接:在使用工具前,需在 ACI.dev 平台链接账户。例如,链接 Brave Search:
result = client.linked_accounts.link( app_name="BRAVE_SEARCH", linked_account_owner_id="user123", security_scheme="API_KEY", api_key="your-brave-api-key" )
对于需要 OAuth2 的工具(如 Gmail),SDK 返回授权 URL,用户需在浏览器完成授权。
4. 特色功能操作
- 动态工具发现:统一 MCP 服务器支持智能体根据任务意图自动选择工具。示例代码:
from aci.meta_functions import ACISearchFunctions tools = [ACISearchFunctions.to_json_schema(format="OPENAI")]
智能体可通过
ACI_SEARCH_FUNCTIONS
查询与任务相关的工具。 - 多租户认证:开发者可为不同用户设置独立权限。例如,限制智能体仅使用特定用户的 Brave Search 账户:
client.functions.execute( function_name="BRAVE_SEARCH__WEB_SEARCH", linked_account_owner_id="user123", allowed_apps_only=True )
- 自然语言权限边界:ACI.dev 支持以自然语言定义权限。例如,限制智能体只能“读取日历”而不能“修改日历”,通过前端门户或 SDK 配置:
client.permissions.set( agent_id="agent123", boundaries={"calendar": ["read"]} )
- 社区贡献:开发者可通过 GitHub 提交新工具集成请求或直接贡献代码。参考
CONTRIBUTING.md
和Integration Request Template
:gh issue create --title "New Integration: Twitter API" --body-file integration_request.yml
5. 访问文档与示例
- 官方文档:访问
https://aci.dev/docs
获取详细 API 参考和教程。 - 工具列表:查看
https://aci.dev/tools
了解支持的 600+ 工具。 - 示例项目:参考
https://github.com/aipotheosis-labs/aci-agents
获取智能体开发示例。
注意事项
- 确保
.env.local
中的 API 密钥安全,避免泄露。 - 本地开发时,可使用 DBeaver 连接数据库(参数在
.env.local
),查看数据结构。 - Python SDK 为 Beta 版,可能有不兼容更新,建议关注 GitHub 仓库的发布说明。
- 部分工具(如 Brave Search)需要用户提供自己的 API 密钥,可能涉及第三方费用。
应用场景
- 个人助理聊天机器人
使用 ACI.dev 构建能搜索网页、管理日历、发送邮件的 AI 助手。多租户认证确保不同用户的账户数据隔离,适合个人生产力提升。 - 研究智能体
开发者可利用 ACI.dev 集成 Brave Search 和 Notion,构建自动搜索并整理研究资料的智能体,适合学术研究或市场分析。 - 销售自动化
ACI.dev 支持集成 CRM 和 Gmail,开发者可构建自动生成潜在客户名单并发送邮件的销售智能体,提升企业效率。 - 客户支持智能体
通过 ACI.dev 集成 Zendesk 和 Slack,构建能自动回复客户查询、管理工单的智能体,适合企业客户服务。 - 开源社区协作
ACI.dev 的开源特性鼓励开发者贡献新工具集成,共同完善平台生态。例如,添加 Twitter API 以扩展智能体功能。
QA
- ACI.dev 支持哪些编程语言?
主要支持 Python,通过 Python SDK 调用 API。其他语言可通过 REST API 访问,需自行实现 HTTP 请求。 - 如何添加新的工具集成?
访问 GitHub 仓库,参考CONTRIBUTING.md
和Integration Request Template
,提交工具集成请求或直接贡献代码。 - 统一 MCP 服务器的优势是什么?
通过ACI_SEARCH_FUNCTIONS
和ACI_EXECUTE_FUNCTION
两个元功能,统一管理 600+ 工具,减少 LLM 上下文窗口占用,提升智能体效率。 - 是否需要为每个工具单独配置认证?
不需要。ACI.dev 提供统一的多租户认证,开发者只需在平台链接账户,智能体即可安全访问工具。 - ACI.dev 是否收费?
ACI.dev 是开源平台,免费使用。部分工具可能需要用户提供自己的 API 密钥,可能涉及第三方费用。 - 如何确保智能体操作安全?
ACI.dev 提供细粒度权限管理和自然语言权限边界,开发者可通过前端门户或 SDK 设置智能体的操作范围。