Token导航 LogoToken导航TokenDH.com
效率需要联网clawhub未标认证来源可访问clear审计通过

ts-interface-minerts 接口矿工

Agent Skill

ts-interface-miner 用于整理文档、README、Markdown 和说明材料,适合在 OpenClaw 中需要把零散信息整理成结构清晰的文档时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

9,033

周安装

369

GitHub Stars

公开资料未说明

下载量

2,922
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:ts-interface-miner(ts 接口矿工)
来源仓库:https://github.com/9talk/ts-interface-miner
安装命令:
openclaw skills install ts-interface-miner
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install ts-interface-miner

简介

ts-interface-miner 用于分析 TypeScript 文件,提取接口定义并生成结构化 Markdown 文档。

  • 适合在 OpenClaw 中整理代码注释、API 路径和函数参数等零散信息时使用。
  • 通过关键词定位相关接口,深度解析 JSDoc 和单行注释,输出请求方法、路径和响应结构。
  • 安装命令为 openclaw skills install ts-interface-miner,需确认权限范围和文件读写能力。
  • 建议结合来源仓库和原始 README 核验具体用法及维护状态。

SKILL.md

name
ts-interface-miner
description
一个专门用于分析 TypeScript (.ts/.tsx) 文件的智能助手。它能够根据用户提供的关键词(功能描述、函数名、API 路径),精准定位相关接口定义。该技能深度解析代码结构与注释(JSDoc/单行注释),提取请求方法、路径、参数细节、响应结构及状态码,最终生成结构清晰、信息完整的 Markdown 表格文档。

SKILL: ts-api-miner

1. 技能概述 (Overview)

名称: ts-api-miner 描述: 一个专门用于分析 TypeScript (.ts/.tsx) 文件的智能助手。它能够根据用户提供的关键词(功能描述、函数名、API路径),精准定位相关接口定义。该技能深度解析代码结构与注释(JSDoc/单行注释),提取请求方法、路径、参数细节、响应结构及状态码,最终生成结构清晰、信息完整的Markdown 表格文档核心特点:

  • 🎯 多维搜索: 支持通过功能描述、函数名称、URL 路径三种方式定位接口。
  • 📝 注释优先: 优先提取 JSDoc (@param, @returns, @description) 和行内注释作为字段说明;若注释与类型定义冲突,以注释为准并标记警告。
  • 🔗 类型追踪: 自动展开引用的 Interface/Type,递归提取嵌套类型的注释信息。
  • 📊 标准化输出: 强制使用 Markdown 表格展示请求参数与响应信息,便于阅读和复制。

2. 触发条件 (Trigger Conditions)

当用户输入满足以下任一场景时,激活此技能:

  1. 用户提供了一段 TypeScript 代码片段或文件路径,并要求“查找接口”、“生成文档”或“分析 API"。
  2. 用户提供了关键词(如 "登录", getUserInfo, /api/order),要求寻找相关接口详情。
  3. 用户询问特定功能的请求参数、响应结构或状态码。

3. 工作流程 (Workflow)

步骤 1: 定位与上下文识别 (Locate & Context)

  • 扫描: 在提供的代码上下文中搜索关键词。

- 匹配 URL 字符串 (e.g., '/api/v1/user')。 - 匹配函数/常量名 (e.g., fetchUserInfo)。 - 匹配注释中的功能描述 (e.g., // 获取用户详细信息)。

  • 锁定: 确定目标函数体及其调用的 HTTP 客户端方法 (axios, fetch, request 等)。

步骤 2: 深度解析与提取 (Parse & Extract)

  • 基础信息: 提取 Method (GET/POST...), Path, Source Location
  • 请求参数提取:

- Query/Path Params: 从 URL 模板或配置对象中提取。 - Body: 识别 POST/PUT/PATCH 请求的数据载荷。 - 类型展开: 如果参数类型是自定义 Interface (如 LoginReq),深入其定义提取字段列表。

  • 注释融合策略 (关键):

1. 检查函数上方的 JSDoc /** ... */。 2. 检查参数旁的 @param name - description。 3. 检查字段定义旁的行内注释 // ...。 4. 规则: 若 TS 类型为 optional (?) 但注释注明“必填”,则在输出中标记为 ✅ (注释强调) 并添加警告图标 ⚠️。

  • 响应信息提取:

- 分析返回类型的泛型 (e.g., Promise<ApiResponse<T>>)。 - 提取 @returns@throws 中的状态码和错误描述。 - 若无显式状态码定义,根据 HTTP 规范推断常见状态 (200, 400, 500) 并结合注释补充说明。

步骤 3: 格式化输出 (Format Output)

  • 将提取的数据填入预定义的 Markdown 表格模板
  • 附带关键代码片段以供参考。
  • 若存在信息缺失(如无注释),明确标注“暂无文档说明”。

4. 输出规范 (Output Schema)

所有输出必须严格遵循以下 Markdown 结构。每个匹配的接口生成一个独立板块。

模板结构

### 🔍 接口分析:[接口功能简述]

| 属性分类 | 详细信息 |
| :--- | :--- |
| **🏷️ 接口名称** | `[函数名/标识符]` |
| **📝 功能描述** | [来自 JSDoc @description 或首行注释] |
| **🔗 请求路径** | `[完整路径,动态参数用 :id 表示]` |
| **⚡ 请求方法** | `[GET/POST/PUT/DELETE/PATCH]` |
| **📂 源文件位置** | `[文件名]:[行号]` (若已知) |

#### 📥 请求参数 (Request)

| 参数位置 | 字段名 | 类型 | 必填 | 默认值 | 说明 (来自注释) |
| :--- | :--- | :--- | :---: | :---: | :--- |
| [Body/Query/Header/Path] | `[key]` | `[type]` | [✅/❌] | `[value]` | [详细描述,若无则填"暂无说明"] |
| ... | ... | ... | ... | ... | ... |

#### 📤 响应信息 (Response)

| 状态码 | 含义 | 响应体结构摘要 | 说明 (来自注释) |
| :---: | :--- | :--- | :--- |
| **[Code]** | [Text] | `{ key: type, ... }` | [成功/失败的具体描述] |
| ... | ... | ... | ... |

#### 💡 关键代码片段

// [相关代码片段,包含函数定义及关键调用]

5. 处理规则与约束 (Rules & Constraints)

  1. 注释权威性:

- 必须优先展示注释中的业务含义。 - 如果代码类型是 string 但注释说是 "ISO8601 时间格式",说明列必须写明 "ISO8601 时间格式"。

  1. 类型展开:

- 禁止直接输出 data: CreateUserDTO 而不解释内容。必须展开 CreateUserDTO 的内部字段到表格中。 - 对于泛型 (如 List<Item>),需简要说明 Item 的核心结构。

  1. 不确定性处理:

- 如果无法确定请求方法(代码未显式指定),根据 URL 动词习惯推断,并在方法后标注 (推断)。 - 如果找不到任何注释,说明列统一填写 ⚪ 暂无文档说明

  1. 冲突标记:

- 当代码逻辑(如可选参数 ?)与注释描述(如“此项必填”)不一致时,在“必填”列显示 ⚠️ 冲突,并在说明列解释差异。

  1. 语言一致性:

- 输出的文档语言应与用户提问语言或代码注释主要语言保持一致(通常为中文)。

6. 示例 (Examples)

用户输入

文件内容: ``typescript /** * 更新用户个人资料 * @param userId - 用户唯一标识,必填 * @param bio - 个人简介,可选,最大 200 字 */ export async function updateUserProfile(userId: string, bio?: string) { return api.put(/users/${userId}, { bio }); } ``
指令: 分析 updateUserProfile 接口。

技能输出

🔍 接口分析:更新用户个人资料

属性分类详细信息
🏷️ 接口名称updateUserProfile
📝 功能描述更新用户个人资料
🔗 请求路径/users/:userId
⚡ 请求方法PUT
📂 源文件位置当前文件

📥 请求参数 (Request)

| 参数位置 | 字段名 | 类型 | 必填 | 默认值 | 说明 (来自注释) | |:---------|:---------|:---------|:--:|:-----------:|:-----------------| | Path | userId | string | ✅ | - | 用户唯一标识,必填 | | Body | bio | string | ❌ | undefined | 个人简介,可选,最大 200 字 |

📤 响应信息 (Response)

状态码含义响应体结构摘要说明 (来自注释)
200OK{ success: boolean }更新成功 (推断)
404Not Found-用户不存在 (推断)

💡 关键代码片段

/**
 * 更新用户个人资料
 * @param userId - 用户唯一标识,必填
 * @param bio - 个人简介,可选,最大 200 字
 */
export async function updateUserProfile(userId: string, bio?: string) {
    return api.put(`/users/${userId}`, {bio});
}

7. 异常处理 (Error Handling)

  • 无匹配结果: 如果未在代码中找到任何与关键词相关的接口,回复:“未在提供的代码中找到与关键词 '[关键词]'

相关的接口定义。请检查关键词拼写或提供更多上下文。”

  • 代码不完整: 如果类型定义引用了外部文件但未提供,回复:“检测到类型 [TypeName] 引用自外部文件,无法展开详细结构。仅显示基础类型信息。”

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

77.93%
按下载量换算2,277

安全审计

VirusTotal

通过

ClawScan

通过

Static analysis

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills