Back to skills
SKILL.md
Patent Protection And Intellectual Property Management
ASecurity本 Skill 是受保护能力。**每次使用前必须先完成授权检查,授权通过后才能继续执行本 Skill 的任何工作流。**
- 9 stars
- 0 votes
- 0 copies
- 0 views
- Added September 25, 2026
Works with
Security analysis
100/100Pro scans all 7 files and shows the line behind each finding
npx -y skills add CSlawyer1985/legal-skillhub --skill patent-protection-and-intellectual-property-management --agent claude-codeAre you the author of Patent Protection And Intellectual Property Management?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/cslawyer1985-patent-protection-and-intellectual-property-manage)---
name: "专利保护与知识产权管理"
agent_created: true
---
# 专利保护与知识产权管理
## 授权要求
本 Skill 是受保护能力。**每次使用前必须先完成授权检查,授权通过后才能继续执行本 Skill 的任何工作流。**
授权逻辑全部由 `scripts/auth.py` 处理,包含本地凭证缓存、WorkBuddy 用户绑定、平台授权校验和错误信号输出。不要在 `SKILL.md` 中手动解析 JWT、拼接 AppKey/AppSecret 或调用绑定接口。
### 强制授权流程
授权脚本会优先读取包内 `_meta.json` 的 `slug` 作为服务端 `skillCode`。`slug` 必须是平台维护的技能编号,例如 `BT_F121C56F`,不是 Skill 展示名称。只有包内缺少 `_meta.json` 时,才需要手动传 `--skill-code`。
1. 先执行授权检查:
```bash
python3 scripts/auth.py --ensure
```
2. 如果输出 `AUTH_OK`,说明授权通过,可以继续执行本 Skill。
3. 如果输出 `AUTH_REQUIRED`、`AUTH_INVALID`、`CREDENTIALS_MISSING` 或 `CREDENTIALS_INVALID`:
- 调用 WorkBuddy 的 `connect_cloud_service` 工具获取当前登录用户 JWT。
- 将 JWT 交给授权脚本完成绑定:
```bash
python3 scripts/auth.py --bind-jwt "<WorkBuddy JWT>"
```
4. 绑定成功输出 `AUTH_BIND_OK` 后,重新执行授权检查:
```bash
python3 scripts/auth.py --ensure
```
5. 仍未输出 `AUTH_OK` 时停止使用本 Skill,并按下方 [鉴权失败时必须向用户报告](#鉴权失败时必须向用户报告强制) 章节输出明确报告。
6. 授权通过后,必须获取云端 protected 内容:
```bash
python3 scripts/protected.py
```
7. 只有当 `scripts/protected.py` 成功返回 protected instructions 时,才能严格按照返回内容继续执行本 Skill。未拿到 protected instructions 时必须停止,不得凭本地提示或历史上下文继续生成。
> 不要向用户展示或提及 AppKey / AppSecret 的具体内容。不要把 AppKey / AppSecret 明文拼接到业务命令、环境变量或回复中。
---
## 🗣️ 鉴权失败时必须向用户报告(强制)
当 `auth.py --ensure`、`auth.py --bind-jwt` 或 `protected.py` 返回任何非成功状态时,**严禁静默重试、静默降级、或继续业务推理**。必须立即停下手头工作,按下方模板向用户输出明确的中文提示,告知发生了什么、需要做什么。
### 实际信号与场景对照
`scripts/auth.py` 实际输出的信号只有 5 种,业务错误细节通过 **stderr** 给出,必须**同时观察 stdout 信号 + stderr 文本**:
| stdout 信号 | 含义 | 典型 stderr 关键字 |
| ----------- | ---- | ------------------ |
| `AUTH_OK` | 通过 | (无) |
| `AUTH_REQUIRED` + `CREDENTIALS_MISSING` | 本地无凭证缓存 | (无) |
| `AUTH_INVALID` + `CREDENTIALS_INVALID` | 凭证或远程校验失败 | `HTTP 401` / `authorization failed` / `network error` / `remote authorization check failed` |
| `AUTH_BIND_OK` | 绑定成功 | (无) |
| `AUTH_INVALID`(仅 --bind-jwt 失败) | 绑定流程异常 | `bind failed: code=..., msg=...` |
### 报告输出模板
```
⚠️ 鉴权未通过,无法继续执行业务。
【接口返回】
{命令名(auth.py --ensure / auth.py --bind-jwt / protected.py)}:{stdout 信号}
{stderr 关键行原样转述,不要改写}
【需要你完成以下步骤】
1. {第一步具体操作}
2. {第二步具体操作}
3. {第三步具体操作(如有)}
【在此之前】
本次的「{业务任务名}」无法继续,我不会基于猜测产出结果。完成上述步骤后请告诉我,我会重新执行 --ensure。
```
### 场景示例
#### 场景 A · `CREDENTIALS_MISSING`(首次使用,本地无凭证)
stdout:`AUTH_REQUIRED` + `CREDENTIALS_MISSING`
触发:`~/.workbuddy/skill_auth/BT_F121C56F.json` 不存在。
```
⚠️ 鉴权未通过,无法继续执行业务。
【接口返回】
auth.py --ensure:AUTH_REQUIRED / CREDENTIALS_MISSING
(本地未找到本 Skill 的凭证缓存:~/.workbuddy/skill_auth/BT_F121C56F.json)
【需要你完成以下步骤】
1. 调用 WorkBuddy 的 connect_cloud_service 工具获取当前登录用户 JWT
2. 我会自动执行 python3 scripts/auth.py --bind-jwt "<JWT>" 完成绑定
3. 绑定成功(AUTH_BIND_OK)后我会重新执行 --ensure
【在此之前】
本次的「{业务任务名}」无法继续,我不会基于猜测产出结果。
```
#### 场景 B · `CREDENTIALS_INVALID`(凭证存在但服务端拒绝)
stdout:`AUTH_INVALID` + `CREDENTIALS_INVALID`
stderr 包含:`HTTP 401` / `authorization failed: code=..., msg=签名已过期`。
```
⚠️ 鉴权未通过,无法继续执行业务。
【接口返回】
auth.py --ensure:AUTH_INVALID / CREDENTIALS_INVALID
stderr:[auth] remote authorization check failed: HTTP 401: {"code":401,"msg":"签名已过期"}
【需要你完成以下步骤】
1. 本地缓存的 AppKey/AppSecret 可能已被服务端重置或已过期
2. 在 WorkBuddy 中重新触发 connect_cloud_service 获取新 JWT
3. 我会自动用新 JWT 重新绑定(会覆盖旧缓存),随后重新执行 --ensure
【在此之前】
本次的「{业务任务名}」无法继续。
```
#### 场景 C · 绑定接口返回业务错误(手机号未注册 / skillCode 不存在 / 被禁用)
stdout:`AUTH_INVALID`(仅在 `--bind-jwt` 路径)
stderr 包含:`[auth] bind failed: code=500, msg=...`。
```
⚠️ 鉴权未通过,无法继续执行业务。
【接口返回】
auth.py --bind-jwt:AUTH_INVALID
stderr:[auth] bind failed: code=500, msg=该手机号未在百通服务平台注册
(这是百通服务平台 /api/skill/bind 返回的明确业务错误,不是网络问题;WorkBuddy 只负责提供登录 JWT,账号开通/skill 授权归属百通服务平台)
【需要你完成以下步骤】
1. 前往百通服务平台注册/开通账号:https://s.1100111.cn (手机号需与 WorkBuddy 登录手机号一致,例如 138****0000)
2. 或联系管理员核实 skillCode "BT_F121C56F" 是否对你的账号开放
3. 处理完成后告诉我,我会重新执行绑定流程
【在此之前】
本次任务无法继续。
```
#### 场景 D · 网络错误(服务端不可达)
stdout:`AUTH_INVALID` + `CREDENTIALS_INVALID`
stderr 包含:`network error: ...` 或 `non-JSON response: ...`。
```
⚠️ 鉴权未通过,无法继续执行业务。
【接口返回】
auth.py --ensure:AUTH_INVALID / CREDENTIALS_INVALID
stderr:[auth] remote authorization check failed: network error: <urlopen error timed out>
(连接 https://s.1100111.cn/baitong_ai/api/skill/verify 超时 / DNS 失败 / 连接被拒)
【需要你完成以下步骤】
1. 检查本机网络是否正常
2. 确认是否需要走 VPN / 公司内网
3. 服务端确认在线后,告诉我重试,我会重新执行 --ensure
【在此之前】
本次任务无法继续,已停止推理避免产出未经鉴权的结果。
```
#### 场景 E · 远程授权校验失败(VIP 过期 / 权限不足)
stdout:`AUTH_INVALID` + `CREDENTIALS_INVALID`
stderr 包含:`remote authorization check failed: authorization failed: code=..., msg=VIP_EXPIRED`。
```
⚠️ 鉴权未通过,无法继续执行业务。
【接口返回】
auth.py --ensure:AUTH_INVALID / CREDENTIALS_INVALID
stderr:[auth] remote authorization check failed: authorization failed: code=403, msg=VIP_EXPIRED
(凭证本身有效,但服务端判定当前账号无权使用本 Skill)
【需要你完成以下步骤】
1. 前往百通服务平台续费 VIP 或升级权限等级:https://s.1100111.cn
2. 续费完成后告诉我「已续费」,我会重新执行 --ensure
3. 若你认为不应出现此提示,请联系管理员核实 skillCode "BT_F121C56F" 的权限配置
【在此之前】
本次的「{业务任务名}」无法继续,本 Skill 需要有效 VIP 才能使用。
```
### 报告原则(必须遵守)
| ⛔ 禁止行为 | ✅ 必须行为 |
| ----------- | ----------- |
| 静默重试 / 不告知用户就反复尝试 | 第一次失败立即向用户输出报告模板 |
| 用"系统繁忙、稍后再试"等模糊提示糊弄 | 原样转述 stdout 信号与 stderr 关键行 |
| 跳过鉴权直接产出业务结果 | 鉴权失败立即停止业务推理 |
| 自行决定"用户应该重启 / 清缓存 / 重装" | 给出明确的 1/2/3 步操作清单 |
| 暴露 AppKey / AppSecret 明文 | 错误码与错误消息原样展示,密钥相关字段必须打码(如 `app_key=abc****`) |
| 把网络错误当成凭证错误处理 | 根据 stderr 关键字区分网络问题与鉴权问题,给出不同处理建议 |
> ⛔ **特别警告**:绝不允许出现「鉴权失败,但我仍按业务流程产出了一份结果,并在末尾轻描淡写地说一句『另外鉴权好像有点问题』」。鉴权门禁与业务输出是**互斥关系**:鉴权未通过 = 业务输出禁止。
### 鉴权错误重试上限
当 `--ensure` 或后续业务请求出现以下情况时,说明本地缓存凭证已失效或不存在,按上方流程重新走一次绑定,**完成后必须重新 `--ensure` 拿到 `AUTH_OK` 才能继续业务**:
| 触发条件 | 说明 |
| -------- | ---- |
| stdout 含 `CREDENTIALS_MISSING` | 本地无缓存凭证 |
| stdout 含 `CREDENTIALS_INVALID` | 凭证或远程校验失败 |
| stderr 含 `HTTP 401` / `HTTP 403` | 签名过期或权限不足 |
| stderr 含 `authorization failed` | 服务端鉴权拒绝 |
| stderr 含 `sign` / `签名` / `认证` / `鉴权` | 鉴权类错误关键字 |
| `protected.py` 退出码非 0 且 stderr 提示鉴权类错误 | 受保护内容拉取被拒 |
> 最多重试 **1 次**。两次失败说明是服务端问题,告知用户"数据服务暂时不可用",停止重试,**不得再次尝试任何业务推理**。
Files in this skill
- SKILL.md
- _meta.json
- references/ip-strategy.md
- references/patent-analysis-methodology.md
- references/report-template.md
- scripts/auth.py
- scripts/protected.py
Attribution
Comments
Loading comments…