zeelin-text-analysis-skill

文本分析技能,支持本地文件直接上传分析。当用户说'分析文本'、'文本处理'、'分析这个文档'等并上传文本文件时使用此技能。

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "zeelin-text-analysis-skill" with this command: npx skills add liyayong000-sketch/zeelin-text-analysis

文本分析技能

技能说明

这个技能帮助用户分析文本文件,自动提取实体、生成关系图谱和角色档案。

功能:将小说、文档等文本内容转换为结构化的分析结果。


使用方法

注意:以下示例使用 curl 展示请求格式,实际由 OpenClaw 工具调用执行,无需手动执行命令。

第一步:首次使用配置

使用本技能前,需要配置智灵平台的 App-Key。

步骤 1:注册智灵账号

步骤 2:创建应用

  • 登录后进入控制台 → 应用管理
  • 点击"创建应用",填写应用名称
  • 复制生成的 App-Key

步骤 3:配置到技能

  • 打开本 Skill 的配置文件:templates/config.json
  • 将复制的 App-Key 粘贴到 Zeelin_App_Key 字段
  • 保存文件,重新触发本技能即可使用

配置示例:

{
  "Zeelin_App_Key": "xxxxxxxxxxxxxxxxxx",
  "Zeelin_Api_Url": "https://skills.zeelin.cn",
  "Zeelin_Website_Url": "https://skills.zeelin.cn"
}

第二步:上传文件到 OSS

接口: POST {service_url}/api/skill/upload

请求格式: multipart/form-data (不是 JSON!)

参数:

参数名位置类型必填说明
appKeyform-datastring用户的 Zeelin_App_Key
fileform-datafile本地文件二进制数据

示例请求:

curl -X POST "http://47.98.180.113:8083/api/skill/upload" \
  -F "appKey=YOUR_APP_KEY" \
  -F "file=@/path/to/local/file.txt"

成功响应:

{
  "code": 200,
  "data": {
    "oss_url": "https://jumuai.oss-cn-hangzhou.aliyuncs.com/...",
    "filename": "file.txt",
    "size": 12345
  }
}

第三步:提交文本分析任务

接口: POST {service_url}/api/skill/text

请求格式: application/json

参数:

参数名位置类型必填说明
appKeyJSON bodystring用户的 Zeelin_App_Key
ossJSON bodystring上一步返回的 oss_url

示例请求:

curl -X POST "http://47.98.180.113:8083/api/skill/text" \
  -H "Content-Type: application/json" \
  -d '{
    "appKey": "YOUR_APP_KEY",
    "oss": "https://jumuai.oss-cn-hangzhou.aliyuncs.com/..."
  }'

成功响应:

{
  "code": 200,
  "data": {
    "task_id": "analysis_xxx",
    "status": "pending",
    "word_count": 3760,
    "cost": 1
  }
}

第四步:轮询查询任务状态(必须执行)

⚠️ 重要:提交任务后,必须通过工具调用查询接口获取结果,不能直接回复用户!

接口: GET {service_url}/api/skill/status/{task_id}

轮询策略(根据进度动态调整,节省额度):

当前进度查询间隔说明
≤ 60%(25%, 50%, 60%)每 3 分钟处理初期和中期,耐心等待
≥ 70%(70%, 100%)每 1 分钟接近完成,加密查询及时获取结果

你必须这样做

  1. 提交任务后,立即告诉用户"任务已提交,预计处理 10-20 分钟,请稍候..."
  2. 根据返回的 progress 决定等待时间
    • progress ≤ 60%等待 3 分钟后查询
    • progress ≥ 70%等待 1 分钟后查询
  3. 根据 status 判断:
    • status: "pending" → 继续轮询
    • status: "succeeded"展示 result 结果(结束)
    • status: "failed"展示错误信息(结束)
  4. 最多轮询 30 分钟,超时告诉用户"任务还在处理中,请稍后自行查询"

示例指令(模型执行)

# 第一次查询(提交后立即)
curl "http://47.98.180.113:8083/api/skill/status/analysis_xxx"
→ 返回 progress=25
→ 告诉用户:"当前进度 25%,处理中..."
→ 必须sleep 180  # 等待 3 分钟

# 第二次查询
curl "http://47.98.180.113:8083/api/skill/status/analysis_xxx"
→ 返回 progress=50
→ 告诉用户:"当前进度 50%,继续处理中..."
→ 必须sleep 180  # 等待 3 分钟

# 第三次查询
curl "http://47.98.180.113:8083/api/skill/status/analysis_xxx"
→ 返回 progress=70
→ 告诉用户:"即将完成,请稍候..."
→ 必须sleep 60   # 等待 1 分钟

# 第四次查询
curl "http://47.98.180.113:8083/api/skill/status/analysis_xxx"
→ 返回 progress=100, status=succeeded
  生成一个md文件来让用户进行查看

示例请求:

curl "http://47.98.180.113:8083/api/skill/status/analysis_xxx"

响应字段说明:

字段类型说明
statusstringpending(处理中) / succeeded(成功) / failed(失败)
progressint进度百分比: 0, 25, 50, 60, 70, 100
resultobject分析结果(只有 status=succeeded 时才有)
word_countint文档字数
costint实际扣除额度

轮询示例流程

提交任务 → 收到 25%
  ↓
告诉用户:"任务已提交,预计处理 10-20 分钟,请稍候..."
  ↓
等待 3 分钟 → 查询 → 50%
  ↓
告诉用户:"当前进度 50%,继续处理中..."
  ↓
等待 3 分钟 → 查询 → 60%
  ↓
告诉用户:"即将完成,加密查询中..."
  ↓
等待 1 分钟 → 查询 → 70%
  ↓
等待 1 分钟 → 查询 → 100%(完成)
  ↓
告诉用户:"分析完成!"生成一个md文件来让用户进行查看

结果展示格式(Markdown)

⚠️ 重要:获取到 result 后,必须将结果格式化为 Markdown 展示给用户,不要直接返回原始 JSON!

格式化要求

  • 使用 Markdown 标题层级(# ## ###)组织内容
  • 使用表格展示关系数据
  • 添加适当的 emoji 图标增强可读性
  • 根据实际返回的数据结构灵活调整格式
  • 如果某些字段为空,可以省略对应章节
  • 不要编造数据,只展示 result 中实际存在的内容
  • 最后给用户呈现结果时生成一个md文件来让用户进行查看

完整调用流程

用户: "分析这个文档" + 上传文件
  ↓
OpenClaw: 读取本地文件
  ↓
OpenClaw: 1️⃣ POST {service_url}/api/skill/upload
          Content-Type: multipart/form-data
          Body: appKey=xxx&file=文件二进制
  ↓
Skill服务: 接收文件 → 上传OSS → 返回 oss_url
  ↓
OpenClaw: 2️⃣ POST {service_url}/api/skill/text
          Content-Type: application/json
          Body: {"appKey": "xxx", "oss": "oss_url"}
  ↓
Skill服务: 验证额度 → 扣费 → 提交AI任务 → 返回 task_id
  ↓
OpenClaw: 3️⃣ 轮询 GET {service_url}/api/skill/status/{task_id}
          根据进度动态间隔查询(3分钟/1分钟)
  ↓
OpenClaw: 生成md文件展示结果给用户

费用说明

服务类型计费标准示例
文本分析120额度/万字3760字=120额度

计费规则:

  • 文本按字数向上取整到万字
  • 提交任务时扣除额度,任务失败自动返还

常见问题

Q: App-Key 格式是什么?
A: 任意字符串,从 config.json 的 Zeelin_App_Key 字段读取。

Q: 上传接口的 appKey 放哪里?
A: 放在 form-data 里(appKey=xxx),不是 Header!

Q: 分析接口的 appKey 放哪里?
A: 放在 JSON body 里({"appKey": "xxx"})。

Q: 支持多大的文件?
A: 单文件最大 500MB。

Q: 为什么查询任务状态也会产生扣费记录?
A: 使用智灵提供的模型时,每次调用(包括查询)都会经过智灵平台。查询虽然不扣技能额度,但会产生平台调用记录。建议按 SKILL.md 的轮询间隔查询,避免频繁调用。


技术支持

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

Img2img

Generate images from text descriptions using DALL-E 3 while adhering to usage policies and avoiding realistic human faces.

Registry SourceRecently Updated
General

Habitat-GS-Navigator

Navigate and interact with photo-realistic 3DGS environments via the Habitat-GS Bridge. Use when: user asks to explore a 3D scene, perform embodied navigatio...

Registry SourceRecently Updated
General

Memory Palace

持久化记忆管理。Use when: 用户告诉你个人信息/偏好/习惯、需要记住项目状态/技术决策、完成任务后有可复用经验、用户说"记住""别忘了""下次注意"、需要回忆之前的对话内容。支持语义搜索和时间推理。

Registry SourceRecently Updated
General

Podcast Transcript Mining Authority Positioning

Extract guest appearances, speaking topics, and soundbites from podcast transcripts to build authority portfolios and generate podcast pitch templates. Use w...

Registry SourceRecently Updated