소스 정보
- 저장소
- void2anything/qingagent
- 최근 소스 활동
- 2026년 7월 27일 17:54
- 감지된 SKILL.md 언어
- 중국어
- 스타
- 5
- 포크
- 1
설치 방법
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
소스 파일 검토
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
메뉴
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/void2anything/qingagent --skill cli-auth명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
SKILL.md 표시 중
| name | cli-auth |
| label | 命令行授权 |
| icon | terminal |
| summary | 安全处理阻塞等待扫码或网页授权的 CLI |
| description | 命令行扫码与网页授权等待规程。用于 init/login 等打印授权链接或字符画二维码后持续等待、不会自行退出的 CLI 命令。 |
| user-invocable | false |
| tools | ["mastra_workspace_execute_command","mastra_workspace_get_process_output","mastra_workspace_kill_process","show_qr"] |
| metadata | {"category":"capability"} |
当 CLI 首次使用需要扫码或网页授权时(init/login 类命令,打印授权链接或字符画二维码后停在“等待扫码/授权”不退出),严格执行本规程。
在决定接入方式前,必须先运行该 CLI 的 init/login 类命令的 --help(如 cli init --help、cli login --help),摸清它提供的全部接入方式。优先选择自动化程度最高、可由产品承接的扫码、device flow 或非交互方式(如 --noninteractive),由产品渲染二维码卡让用户扫码。
不要主动把用户推去第三方管理后台手动创建应用、复制 AppID/App Secret 等凭证;只有 --help 已确认该 CLI 完全没有任何自动授权方式时,才可引导手动配置,并明确说明为什么只能手动。
按帮助启动:运行这类命令前先查看该 CLI 的 --help;若帮助中提供“不自动打开浏览器”之类的选项(如 --no-open),启动命令必须带上,具体参数名以该 CLI 的帮助为准,禁止凭经验硬编码猜测。
后台启动:这类命令绝不能前台跑死等,否则会一直挂到超时,用户什么都看不到。用 background:true 后台启动并拿到 PID。
轮询输出:用 mastra_workspace_get_process_output(pid, tail) 轮询输出,严禁带 wait:true。wait 会阻塞等进程退出,而授权进程在用户扫码前不会退出,会把本轮拖到超时中止,后台授权进程也会被连带终止。
提取候选链接:从输出提取授权 URL,通常紧邻二维码字符画,形如 https://…。
出码前验真:CLI 打印的文字链接常常只是“桌面出码展示页”(打开又是一张二维码,扫了等于套娃,手机客户端还扫不了页面里的图),真正扫码直达的授权 URL 往往只编码在字符画二维码里。必须把候选链接的页面正文拉下来,搜索内嵌授权 URL:
curl -s "候选URL" | findstr /i "auth_url redirect_uri jump_url"findstr 换成 grep只查 HTTP 状态码(-o NUL -w 之类)不算验真,必须读取正文。搜到 auth_url / redirect_uri / jump_url 之类字段里嵌着 https 链接,就改用页面内嵌的那个 URL 出码;正文里没嵌链接(或链接本身就是授权/登录页)才用原链接。
展示二维码:调用 show_qr,把验真后的 URL 渲染成二维码卡给用户扫,配置 confirmQuery 收尾话术,并记住工具结果返回的 cardId。字符画二维码在聊天里渲染不出来,绝不要把它原样贴进回复,一律转成 show_qr 卡。
立即收尾:发出二维码卡后立刻收尾并结束本轮回复。等用户扫完码点确认,再在下一轮轮询输出确认授权完成。
验证并更新原卡:只有从 CLI/服务输出验证到成功标志后,才调用同一个 show_qr,传 {"completedCardId":"<首次返回的 cardId>","completionMessage":"授权已完成"} 把原卡更新为完成态;未验证成功时禁止更新。
mastra_workspace_kill_process 结束旧进程并重起。拿不准是哪种语义时,默认只轮询,不做不可逆动作。completionMessage 必须是“已完成”的终态陈述,不要以半角或全角省略号结尾,也不要写成“正在……”等进行中口吻。