二维码登录 skill

SKILL商业运营
商业运营 未标注权限 许可证不明确
安装这个技能

当用户需要登录天翼账号时,发起二维码登录并在完成后查询结果。

一句话选型结论

按资料字段整理

二维码登录 skill是商业运营类的 Agent Skill,安装方式未标注,权限级别未标注,许可证不明确,有可直接复制的安装命令。技能本质是给模型读的说明书,效果取决于模型与客户端;装完先用一个小任务验证,再放进正式流程。

分类商业运营 安装方式未标注 权限级别未标注权限 许可证许可证不明确
累计安装 未标注 本周 未标注
GitHub 星标 未标注 仓库 未标注
下载量 未标注 技能市场下载数
权限级别 未标注权限 安装前请确认风险范围
许可证 许可证不明确 未说明

安装

未标注
在支持 Skills 的客户端里执行,装完问一句「你有哪些技能」验证
skillhub install user_990a4550/tyzh-zp-qr-login-skill
  1. 1
    确认客户端支持

    确认你的客户端支持 Skills(Claude、Codex、Cursor 等),并升级到较新的版本。

  2. 2
    拿到技能文件

    执行上面的命令安装;也可以把仓库里的 SKILL.md 手动放进客户端的 skills 目录。

  3. 3
    刷新技能列表

    重新打开客户端,或刷新技能列表,让新放进来的技能被加载。

  4. 4
    验证是否生效

    问一句「你有哪些技能」,确认列表里出现它,再拿一个小任务试跑。

技能档案

商业运营
字段来自技能仓库与公开索引,中文说明由本站标注
作者 / 维护方user_990a4550仓库 未标注 · 版本 未标注
宿主客户端未标注技能可被这些客户端加载
安装方式未标注安装包 community
权限级别未标注权限安装前请确认风险范围
许可证未说明许可证不明确,商用前请自行确认条款
仓库可用性available技能仓库当前是否可访问
最近核验未标注上游最后核验时间 · 数据更新 1791622045
正文体量14.2 KBSKILL.md 原文大小,越大说明说明书写得越细

典型使用场景

3 类
按分类整理的常见用法,具体以 SKILL.md 为准
写运营方案

按目标产出活动方案与执行清单。

分析数据与指标

从报表里找问题、给结论。

整理客户与销售材料

把客户信息与话术整理成可直接用的材料。

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有标注权限级别,实际能做什么要装好后确认。
  • 许可证不明确,商用或二次分发前先到仓库确认条款。
  • 没有做站内核验,内容以作者仓库为准。
  • 技能只是说明书,实际效果取决于模型与客户端,装完先用小任务试一遍。

更适合

  • 需要在商业运营场景里给模型补一套做法的人。
  • 愿意先读一遍 SKILL.md、确认它会让模型做什么的人。

不太适合

  • 对许可证要求很严、必须明确可商用的人。
  • 只想装完就自动变强、不打算看说明书的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
技能权限级别安装方式累计安装宿主客户端安装命令
二维码登录 skill当前 未标注权限 未标注 未标注 未标注 有
MX 股票筛选器 联网访问 ClawHub 市场 79.9 万 OpenClaw 有
交易 未标注权限 ClawHub 市场 58.1 万 OpenClaw 有
营销技巧 只读 ClawHub 市场 54.0 万 OpenClaw 有
百灵鸟好 联网访问 GitHub 仓库 52.6 万 Codex、Claude、Cursor 有
股票信息浏览器 接触敏感数据 ClawHub 市场 40.5 万 OpenClaw 有

SKILL.md 全文

14.2 KB
模型实际读到的说明书原文,来自技能仓库

Tianyi QR Login Skill V6.1

能力说明

本 Skill 用于天翼账号二维码扫码登录,提供完整的登录流程引导。

技术特性:
- 直接调用后端 HTTP 接口,无需启动额外服务
- 初始化配置为可选增强,未配置时自动使用默认设备标识
- 登录成功后将结果持久化到本地文件
- 面向终端用户提供简洁清晰的交互体验


触发场景

场景1:启动登录

当用户表达以下任一意图时触发:
- 登录天翼账号
- 登录
- 登录账号
- 天翼账号登录
- 帮我登录天翼账号
- 重新登录天翼账号

场景2:查询登录状态

当用户表达以下任一意图时触发:
- 已登录
- ok
- 完成
- 我登录好了
- 查登录状态
- 查询登录结果
- 我已经完成登录

前提:当前上下文中已存在 ticket


启动登录内部步骤

  1. 尝试读取设备配置(可选增强)
    - 读取本地文件 ~/.openclaw/workspace/tyzh_account/login_init.json
    - 文件存在且包含 appId → 使用文件中的 appId;context 有值时使用原值,缺失时按空字符串处理
    - 文件不存在或 appId 缺失 → 不阻断流程,由服务端使用默认 appId
    - 若文件存在但 appId 缺失,不得使用文件中的 context;context 按空字符串处理

  2. 发起登录请求
    - 调用 POST https://open.e.189.cn/api/agent/skill/login/qr/start
    - 参数:以 Query String 形式传递;根据步骤1结果传递参数:

    • appId 可用时传入;appId 不可用时省略该参数
    • context 有值时传入原值;无值时传空字符串
    • 从响应中提取 data.ticket、data.image_url
    • 若请求失败,或未返回有效 data.ticket,必须立即短路:提示用户“登录能力暂时不可用,请稍后重试”,且不得保存启动流程上下文
  3. 获取二维码图片
    - 调用 GET https://open.e.189.cn/api/agent/skill/qr/generate?ticket={ticket}
    - 从响应中提取 data.qr_image(base64 编码的二维码图片)
    - 若请求失败,或未返回有效二维码数据(data.qr_image),必须立即短路:提示用户“登录能力暂时不可用,请稍后重试”,且不得保存启动流程上下文

  4. 保存上下文
    - ticket:登录票据,用于后续查询状态
    - image_url:天翼登录页面链接
    - pending_skill = "tianyi-qr-login-v6":标记当前等待操作的 Skill
    - pending_action = "wait_user_confirm_login":标记当前等待的用户动作

  5. 返回用户引导
    - 在步骤4保存完成后,再向用户返回引导信息
    - 在同一条回复中展示登录链接和二维码图片
    - 使用简洁的操作引导语,不暴露技术实现细节


查询状态内部步骤

  1. 获取已保存的 ticket
    - 从上下文中读取之前保存的 ticket
    - 如果 ticket 不存在 → 提示用户先发起登录

  2. 查询登录状态
    - 调用 GET https://open.e.189.cn/api/agent/skill/login/qr/status/{ticket}
    - 从响应中提取 data.status 和相关信息

  3. 根据状态处理

    • success:
      a. 将 data 对象完整 JSON 写入本地文件 ~/.openclaw/workspace/tyzh_account/login_success.json
      b. 如果文件写入失败 → 本次登录视为未成功完成,按“查询结果为 success(结果写入失败)”模板提示用户稍后重试;此时不得清理启动流程上下文,需保留 ticket、image_url、pending_skill、pending_action,便于后续重试查询状态;且不得保存本次成功凭据(如 loginData)
      c. 文件写入成功 → 保存 loginData 到上下文,清理启动流程上下文(pending_action、pending_skill、ticket、image_url),再向用户返回登录成功提示
    • pending:引导用户继续完成登录操作;由于 qr_image 不会持久化,重试引导时仅使用已保存的 image_url 链接
    • expired:清理启动流程上下文(pending_action、pending_skill、ticket、image_url),并提示登录链接已过期,明确要求用户重新发起登录
    • failed:清理启动流程上下文(pending_action、pending_skill、ticket、image_url),并提示登录未成功,明确要求用户重试或重新发起登录
    • 其他未知状态:必须按 failed 处理(包含相同内部处理与相同回复模板)

标准回复模板

启动登录成功

请使用天翼账号完成登录。

📱 扫描二维码:
{qr_image}

🔗 或点击链接:
{image_url}

完成后回复"已登录"即可。

启动阶段失败(接口不可用)

登录能力暂时不可用,请稍后重试。

查询结果为 success

登录成功,访问凭证已准备就绪。

查询结果为 success(结果写入失败)

登录结果已确认,但凭证保存失败,请稍后重试查询状态(可回复“查登录状态”重试)。

查询结果为 pending

还未检测到登录完成,请继续通过以下方式完成登录:

🔗 点击链接:
{image_url}

完成后回复"已登录"。

查询结果为 expired

登录链接已过期,请重新发起登录。

查询结果为 failed

登录未成功,请重试或重新发起登录。

上下文缺失 ticket

请先发起登录。


文件规则

初始化文件(可选)

路径:~/.openclaw/workspace/tyzh_account/login_init.json

用途:可选的设备配置增强,用于指定特定的 appId 和 context

格式:

{
  "appId": "your-app-id",
  "context": "your-context"
}

处理规则:
- 文件存在且包含有效 appId → 使用文件中的 appId;context 有值时使用原值,缺失时按空字符串处理
- 文件不存在或 appId 缺失 → 不阻断登录流程,由服务端从系统配置中读取默认 appId
- 文件存在但 appId 缺失时,不得使用文件中的 context;context 按空字符串处理

重要:本文件属于可选增强,不是登录的强制前提。Skill 不主动提示用户创建此文件。

结果文件(必须)

路径:~/.openclaw/workspace/tyzh_account/login_success.json

用途:保存登录成功后的完整认证信息

生成时机:登录状态为 success 时

内容:完整的 data 对象 JSON,包含:
- status:登录状态
- loginData:AES-256-CBC 加密的 {appId, tokenCode, timestamp, status, context} JSON,十六进制编码,供下游业务系统使用
- time:登录完成时间
- 其他响应字段

写入规则:
- 目录不存在则自动创建
- 文件已存在则覆盖
- 写入失败时,本次登录视为未成功完成,按“查询结果为 success(结果写入失败)”模板回复,并保留 ticket 与待处理上下文用于后续重试查询状态

重要:本文件是登录交付契约的一部分,写入失败必须按失败处理。


上下文记忆要求

启动登录后保存

  • ticket:登录票据
  • image_url:登录链接
  • pending_skill = "tianyi-qr-login-v6"
  • pending_action = "wait_user_confirm_login"

登录成功后追加保存(仅 login_success.json 写入成功时)

  • loginData:将 {appId, tokenCode, timestamp, status, context} 进行 AES-256-CBC 加密后得到的十六进制字符串

清理规则

  • 查询结果为 success 且 login_success.json 写入成功后,必须清理启动流程上下文:pending_action、pending_skill、ticket、image_url
  • 查询结果为 success 但 login_success.json 写入失败时,不得清理启动流程上下文,需保留 ticket、image_url、pending_skill、pending_action 以支持后续重试查询状态
  • 查询结果为 failed 或 expired 后,必须清理启动流程上下文:pending_action、pending_skill、ticket、image_url
  • 查询结果为未知状态时,清理规则与 failed 完全一致
  • 查询结果为 pending 时继续保留所有上下文

注意事项

技术实现

  • 本 Skill 不启动任何服务,所有调用为标准 HTTP 请求
  • image_url 是天翼开放平台的登录授权页面链接
  • qr_image 是该链接对应的 base64 编码二维码图片
  • 标准回复模板中的 {qr_image} 来自 GET /skill/qr/generate?ticket={ticket} 的 data.qr_image,仅用于该次“启动登录成功”回复渲染,不写入上下文持久化
  • loginData 是将 {appId, tokenCode, timestamp, status, context} 进行 AES-256-CBC 加密后得到的十六进制字符串,供下游业务系统使用

配置与降级

  • 初始化文件 login_init.json 为可选配置
  • 未配置时,服务端自动使用预配置的默认 appId 作为设备标识
  • 不应在用户交互中主动要求用户创建配置文件

结果持久化

  • 登录成功后必须将完整 data JSON 持久化到 login_success.json
  • 文件写入失败时,本次登录视为未完成,需提示用户重试,且保留 ticket 与待处理上下文用于后续重试查询状态
  • Agent 仅应基于响应中实际返回字段保存上下文,不得要求保存未返回的明文字段(如独立 tokenCode)

用户交互原则

  • 面向终端用户的回复应简洁清晰,聚焦操作引导
  • 不在用户回复中暴露接口地址、文件路径、持久化细节等技术实现
  • 技术说明仅保留在本文档的能力说明、注意事项等合作方接入段落中

触发限制

以下场景不应触发本技能:
- 用户只是普通闲聊,没有明确的登录意图
- 上下文中没有 ticket 时用户直接输入"已登录" → 提示"请先发起登录"


示例对话

示例1:标准登录流程(已配置初始化文件)

用户:登录天翼账号

Agent(内部执行):
1. 读取 ~/.openclaw/workspace/tyzh_account/login_init.json → { "context": "abc123", "appId": "zhpt_inner_test" }
2. POST /skill/login/qr/start?appId=zhpt_inner_test&context=abc123
3. GET /skill/qr/generate?ticket={ticket}
4. 保存启动流程上下文:ticket、image_url、pending_skill、pending_action

Agent 回复:
请使用天翼账号完成登录。

📱 扫描二维码:
[二维码图片]

🔗 或点击链接:
https://open.e.189.cn/...

完成后回复"已登录"即可。


用户:已登录

Agent(内部执行):
1. GET /skill/login/qr/status/{ticket}
2. 收到 status: "success"
3. 将 data JSON 写入 ~/.openclaw/workspace/tyzh_account/login_success.json
4. 写入成功后,保存 loginData 到上下文
5. 清理启动流程上下文:pending_action、pending_skill、ticket、image_url

Agent 回复:
登录成功,访问凭证已准备就绪。


示例2:未配置初始化文件(降级模式)

用户:登录天翼账号

Agent(内部执行):
1. 尝试读取 ~/.openclaw/workspace/tyzh_account/login_init.json → 文件不存在
2. 不阻断流程,继续发起登录(服务端将使用默认 appId)
3. POST /skill/login/qr/start(省略 appId 与 context 参数,由服务端自动回退默认值)
4. GET /skill/qr/generate?ticket={ticket}
5. 保存启动流程上下文:ticket、image_url、pending_skill、pending_action

Agent 回复:
请使用天翼账号完成登录。

📱 扫描二维码:
[二维码图片]

🔗 或点击链接:
https://open.e.189.cn/...

完成后回复"已登录"即可。


示例3:登录状态为 pending

用户:查登录状态

Agent(内部执行):
1. GET /skill/login/qr/status/{ticket}
2. 收到 status: "pending"

Agent 回复:
还未检测到登录完成,请继续通过以下方式完成登录:

🔗 点击链接:
https://open.e.189.cn/...

完成后回复"已登录"。


示例4:登录链接过期

用户:查登录状态

Agent(内部执行):
1. GET /skill/login/qr/status/{ticket}
2. 收到 status: "expired"
3. 清理启动流程上下文:pending_action、pending_skill、ticket、image_url

Agent 回复:
登录链接已过期,请重新发起登录。


示例5:登录状态为 failed

用户:查登录状态

Agent(内部执行):
1. GET /skill/login/qr/status/{ticket}
2. 收到 status: "failed"
3. 清理启动流程上下文:pending_action、pending_skill、ticket、image_url

Agent 回复:
登录未成功,请重试或重新发起登录。


示例6:上下文缺失 ticket

用户:已登录

Agent(内部判断):
- 当前上下文中没有 ticket

Agent 回复:
请先发起登录。


示例7:启动阶段接口失败(短路)

用户:登录天翼账号

Agent(内部执行):
- 情况A:POST /skill/login/qr/start 失败或未返回有效 ticket
- 或情况B:GET /skill/qr/generate?ticket={ticket} 失败或未返回有效 qr_image
- 立即短路,不保存启动流程上下文(ticket、image_url、pending_skill、pending_action 均不得写入)

Agent 回复:
登录能力暂时不可用,请稍后重试。


示例8:查询为 success 但结果写入失败

用户:查登录状态

Agent(内部执行):

  1. GET /skill/login/qr/status/{ticket}
  2. 收到 status: "success"
  3. 将 data JSON 写入 ~/.openclaw/workspace/tyzh_account/login_success.json 失败
  4. 保留启动流程上下文:ticket、image_url、pending_skill、pending_action(不清理,便于后续重试)
  5. 按“查询结果为 success(结果写入失败)”模板回复用户

Agent 回复:
登录结果已确认,但凭证保存失败,请稍后重试查询状态(可回复“查登录状态”重试)。

常见问题

5 问
答案由本站依据条目字段整理
二维码登录 skill怎么安装?

在支持 Skills 的客户端里执行:skillhub install user_990a4550/tyzh-zp-qr-login-skill。安装方式为未标注。装完刷新技能列表或重开客户端。

二维码登录 skill支持哪些客户端?

资料没有标注宿主客户端,但只要客户端支持 Skills(Claude、Codex、Cursor 等),一般都能加载。

二维码登录 skill权限高吗,安全吗?

权限级别为未标注权限。安装前先看它会读取或写入哪些内容。

二维码登录 skill收费吗?

本站不代收费用,也没有标注具体价格。是否收费取决于技能本身和所用的模型或客户端,正式使用前按作者说明确认。

二维码登录 skill用什么许可证?

许可证标注为 未说明(许可证不明确)。商用或二次分发前请到仓库确认条款原文。

热门专题

按场景挑技能
全部专题 →

技能内容以作者仓库为准;分类、权限级别与许可证状态的中文说明为中文整理,最近核验 未标注。