爱意满满的作品展示区。
BlackHole1

[开源] open-connector:自托管的 AI Agent 认证网关

  •  7
     
  •   BlackHole1 ·
    PRO
    ·
    BlackHole1 · 11 days ago · 8308 views

    前段时间在 V2EX 介绍过 OOMOL connector 的云端托管版:AI Agent 授权一次,就能安全地调用你自己的第三方账号,凭证托管在我们云端。

    现在我们将核心的认证网关也开源了:open-connector

    这样一来,你可以完全自托管的 AI Agent 连接层,凭证的数据将仅存在自己的服务器中。

    内置 1000+ 个 provider 、9600+ 个 action( GitHub 、Gmail 、Notion 、Slack 、BigQuery 等等),将和我们的云端托管版共用同一套支持能力。

    和 Nango 的区别

    Nango 开源项目仅提供了 Proxy 层,没有更细粒度到 Action 层,同时 Nango 仅支持 800+ 的 Provider

    和 Composio / Pipedream 的区别

    我们的 open-connector 项目,更像是开源的 Composio(for you)。

    我们不止开源了相配套的 SDKCLI。现在我们将网关本身也开源了。

    • 对个人,我们提供 CLI 可以在 AI Agent 中使用自己的凭证。
    • 对团队,我们提供权限管理,可以将凭证共享给团队内的其他人。
    • 对公司,我们提供和 composio / pipedream 一样的 Sass 能力。

    主要特性

    • 两种部署方案:本地 Docker / Node.js ,或原生部署到 Cloudflare Workers 做边缘部署。
    • 可检查的契约:每个 action 都带请求 / 响应 schema 和所需 scope ,每次调用都可追溯。
    • 凭证留在自己 runtime:API Key 、OAuth2 、自定义凭证、no-auth 都支持。
    • 多种接入:MCP 、HTTP 、OpenAPI 、TypeScript SDK ,以及一个可视化的 Web Console 。

    快速开始

    docker compose up --build
    

    跑起来后打开 http://localhost:3000 就是 Web Console 。

    把 MCP 挂到 Claude Code / Codex 等支持 MCP 的 agent ,就能直接调这 1000+ 个服务。

    也可以安装 CLI 来体验最完整的服务(我们已经做了相关的适配,CLI 也可以连接自部署的 open-connector 上)。

    开源与社区

    项目刚开源,还在快速迭代,难免有 provider 缺失或偶尔调用失败,欢迎提出任何的意见。

    觉得有用的话,欢迎点个 star ⭐

    24 replies    2026-07-14 23:20:50 +08:00
    illuz
        1
    illuz  
       11 days ago
    支持
    getadoggie
        2
    getadoggie  
       11 days ago via iPhone
    支持
    xzl
        3
    xzl  
       11 days ago
    牛逼
    tanxiaoluo
        4
    tanxiaoluo  
    PRO
       11 days ago
    刚好在即刻刷到这个项目
    adamwang
        5
    adamwang  
       11 days ago
    已 Star ,早上在 X 上刷到了项目,确实是未曾设想过的方向。支持一下。
    sampdoria
        6
    sampdoria  
       11 days ago
    支持一下

    有个小问题,价格页面显示的 pro 和 max 价格都是$,意思是美元吗?
    FakerLeung
        7
    FakerLeung  
       11 days ago
    完了,我没能看懂这是干嘛用的,有没有大佬讲解一下
    BlackHole1
        8
    BlackHole1  
    OP
    PRO
       11 days ago
    @sampdoria 是的,不过价格我们还在调整中
    lanweizhujiao
        9
    lanweizhujiao  
       11 days ago   ❤️ 1
    @FakerLeung 以前都是直连。它中间包装了一成连接器, 统一管理 我理解是这样的
    licsber
        10
    licsber  
       10 days ago
    有点像 ifttt 了
    三方服务抽象为一个个的 action
    但感觉这种项目看多了之后 就会想 有没有不那么 domain-specific 的方案
    lenzhang
        11
    lenzhang  
       10 days ago
    太强了,如果自己部署的话,对你们的服务还有依赖吗?
    BlackHole1
        12
    BlackHole1  
    OP
    PRO
       10 days ago
    @lenzhang 不会有任何的依赖
    mooyo
        13
    mooyo  
       8 days ago
    这里面的 connector 是你们维护的么,会不会有的网站本来不支持,然后你们自己做一个第三方的,导致违反 TOS 封号?(无恶意,只是想确认一下)
    BlackHole1
        14
    BlackHole1  
    OP
    PRO
       8 days ago
    @mooyo

    > connector 是你们维护的么?
    绝大部分是,有一些是官方人员提交的 PR 进行接入的。

    我们只会去接入支持 API 的,不会对一些不提供 API 的 provider ,通过抓包去进行硬接入
    mooyo
        15
    mooyo  
       8 days ago
    @BlackHole1 #14 get 很有意思的项目
    eryajf
        16
    eryajf  
       7 days ago
    是否考虑构建官方镜像,可直接使用的
    BlackHole1
        17
    BlackHole1  
    OP
    PRO
       6 days ago
    @eryajf 现在已经有了
    xiaoheicat
        18
    xiaoheicat  
       4 days ago
    总感觉少些东西,虽然很多 provider ,但是实际又做不了太多什么事
    xiaoheicat
        19
    xiaoheicat  
       4 days ago
    1.action 模块太少,推荐搞社区插件机制
    2.proxy 这块现实几乎不会这么去用的,不通用且改造成本巨大。可以看到前端 dev 代理的机制,不改变结构体的情况下做转发
    3. OAuth 建议加上定时刷新的机制,可以给每个 OAuth2 搞个默认值 2 小时,也支持自定义的
    BlackHole1
        20
    BlackHole1  
    OP
    PRO
       4 days ago
    1. 目前我们的 action 截止当前,已经有 10,581 个
    2. proxy 主要是让 AI Agent 调用,或者通过 SDK 去调用,成本在预期内
    3. 我们会在调用之前,检查 access_token 是否过期,如果过期会使用 refresh_token 进行刷新
    musi
        21
    musi  
       4 days ago
    @BlackHole1 “我们会在调用之前,检查 access_token 是否过期,如果过期会使用 refresh_token 进行刷新”

    要是太久没用连 refresh_token 也过期了咋办?
    cccn
        22
    cccn  
       3 days ago
    我都是将各种凭证写在 obsidian 里面,让 ai 直接读的
    BlackHole1
        23
    BlackHole1  
    OP
    PRO
       3 days ago via iPhone
    @musi 会引导重新授权
    xiaoheicat
        24
    xiaoheicat  
       3 days ago
    @BlackHole1 #23 现在很多类似系统都是被动式刷新 refresh_token ,几乎都存在这个使用问题。

    既然都托管凭证了,肯定是希望能一直自动刷新不过期的,除非是手动释放了

    被动式刷新凭证是省事省资源
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3085 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 62ms · UTC 06:20 · PVG 14:20 · LAX 23:20 · JFK 02:20
    ♥ Do have faith in what you're doing.