Signet — 通用认证 CLI,一行命令搞定各种系统的登录问题,专为 AI Agent 时代设计

4 月 8 日
 gbin

最近开源了一个自己写的工具,解决一个我被折磨了很久的问题:AI 编程助手( Claude Code 、Cursor 等)怎么访问需要登录的内部系统?

比如你让 AI 帮你查个 Jira ticket 、搜个 Wiki 页面、发个 Teams 消息——它需要认证,但它没有浏览器,不能走 SSO 。

之前的做法要么是手动复制 cookie 粘到环境变量里,要么写一堆胶水脚本,每次 session 过期又得重来一遍。

所以我写了 Signet:一个通用的认证 CLI ,人类在浏览器里完成一次 SSO ,AI Agent 通过命令行直接复用凭据。

GitHub: https://github.com/signet-auth/signet

它做什么

npm install -g signet-auth

sig init                              # 自动检测浏览器,生成配置
sig login https://jira.example.com    # 打开浏览器完成 SSO ,凭据自动存储
sig request https://jira.example.com/rest/api/2/myself   # 带认证发请求
sig get jira                          # 取出凭据给脚本用

一句话:sig login 一次,后面所有请求自动注入认证信息。

核心特性

AI Agent 集成示例

这是我最想分享的部分。在 Claude Code 里,Agent 这样用 Signet:

Agent 直接发认证请求

sig request "https://jira.example.com/rest/api/2/issue/PROJ-123" --format body

或者取出凭据传给脚本

CRED=$(sig get https://wiki.example.com/ --format value)
python scripts/wiki_search.py --cookie "$CRED" --keyword "deployment guide"

Session 过期了? Agent 检测到 401 ,自动调 sig login 弹浏览器让人类重新登录,然后继续干活。人机协作,各司其职。

远程机器怎么办

本地机器(有浏览器)

sig remote add dev-server dev.example.com
sig sync push dev-server              # 把凭据通过 SSH 推到远程

远程机器(没浏览器)

sig sync pull laptop                  # 或者从本地拉取

技术栈

TypeScript + Playwright (浏览器自动化),凭据以 JSON 存储在 ~/.signet/ 下,配置是单文件 YAML ,没有环境变量地狱。

为什么不用现有工具

项目状态

目前已经在日常工作中稳定使用,支持 Chrome / Edge / Chromium 。MIT 协议。

欢迎试用、提 issue 、Star ⭐

GitHub: https://github.com/signet-auth/signet

1560 次点击
所在节点    分享创造
2 条回复
nomansky
4 月 8 日
不是有 playwright mcp 插件吗? 我 cusor 也可以 ai 调用 headless browser 啊。这额外的注入的感觉通用性不行,且多余了
gbin
4 月 8 日
我虽然也在用 Playwright ,但是我觉得两者定位不同,不冲突。Playwright MCP 是让 AI 操作浏览器,Signet 是让 AI 调 API ,场景不同。
比如,查个 Jira ticket ,Playwright 要启动浏览器、渲染页面、解析 DOM ; Signet 一行 sig request 直接拿结构化 JSON ,快一个量级还省 token 。

大部分内部工具都有 REST API ,没必要让 AI 绕道操作网页。Signet 做的就是把 SSO 登录的结果桥接给 CLI ,让 AI 走 API 而不是模拟点击。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1204373

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX