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

mocklabmocklab 文档

Agent Skill

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

总安装

4,672

周安装

189

GitHub Stars

1

下载量

1,467
OpenClaw

安装说明

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

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

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

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

命令行安装

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

ClawHubOpenClaw
openclaw skills install mocklab

简介

智能接口工具箱,支持 Mock 数据生成与请求转发调试。

  • 适用于前后端联调或接口文档自动生成场景。mocklab 属于效率类 Skill,可作为该场景下的辅助能力补充。
  • 可解析多种格式文档并驱动 Mock 服务全流程。
  • 使用前请准备好接口定义文件与预期数据结构。
  • 建议查看示例项目掌握典型配置与调用方式。

SKILL.md

name
mocklab
description
|

MockLab

核心流程

用户说"启动 MockLab"并提供接口文档后,执行以下步骤:

1. 获取文档内容
   - 本地文件路径 → Read 工具读取
   - URL 链接 → web_fetch 抓取
   - 直接粘贴内容 → 直接使用

2. 模型自主解析文档
   - 提取所有接口:路径、方法、请求/响应字段
   - 推断每个字段的 Mock 生成规则
   - 整理 inner_schemas(嵌套子结构)
   - 整理 partner 信息(渠道号、签名格式等)
   - 判断跨接口状态关联(ref 字段)

3. 保存 Schema 到 schema_store/
   - 文件名:schema_store/{project_name}.json
   - project_name 由模型根据文档内容生成(如"平安银行"、"微信支付")

4. 启动 Mock Server
   python {skill_path}/mock_server.py --port 18080 --project {project_name}

5. 自动打开浏览器
   http://localhost:18080

6. 告知用户服务已启动,介绍如何使用

Schema 生成规则

模型根据字段语义自动推断 rule,写入 Schema:

字段特征rule生成结果
渠道/合作方 IDfixed:{值}固定值
随机数random:66位随机数字
时间戳timestamp:ms毫秒时间戳
手机号phone11位真实号段手机号
身份证idcard18位合法身份证
姓名name中文姓名
车牌号plate合规车牌号
金额amount:lo-hi指定范围金额
利率rate:lo-hi指定范围利率
Tokentoken:3232位随机字符串
枚举enum:a,b,cenum:k=v,k=v枚举值
自增序列sequence:{key}自增序列号
国标码province:code省市国标码+名称
日期date:format格式化日期
嵌套对象nested:{schema_name}引用 inner_schemas
对象数组array:{schema_name}数组,元素引用 inner_schemas
子对象object:{schema_name}引用 inner_schemas
跳过skip不生成(sign 等)
请求镜像mirror取请求 body 中同名字段的值,原样返回
动态取 bodybody:data.order_id取请求 body 中嵌套字段
动态取路径path:order_id取 URL 路径参数
动态取参数query:page取 URL query string 参数
动态取头header:Authorization取请求头
动态取状态state:token取跨次调用状态(ref 字段)
条件包含when:{"field":"status","eq":"1"}满足条件时才返回该字段

字段语义智能判断

模型根据字段名和中文含义自主判断,无需用户指定:

  • phonemobile手机phone
  • idcard身份证证件号idcard
  • name姓名cust_namename
  • platelicense车牌plate
  • amountamt金额loanamount
  • rate利率rate
  • province省份province:code
  • city城市city:province_code
  • sign签名skip
  • ciphertext加密skip(标注加密占位)
  • seqno编号订单sequence:{field_name}

reqData / data 加密字段处理

  • 模型从文档提取加密明文结构
  • 写入 rule: "nested:{schema_name}" 引用 inner_schemas
  • UI 上点击可展开看到完整明文
  • 响应中字段值显示 "[SM4加密占位]"

ref 跨接口状态关联

  • 响应字段标记 "is_ref": true → 自动存入状态表
  • 后续接口请求中引用该字段时,自动填充上一次的值
  • 状态持久化到 state_store.json,服务重启不丢失
  • UI 上显示"引用自 X.X"标识

示例(accessToken 跨接口传递):

// applyAccessToken 响应字段
{ "name": "accessToken", "rule": "token:32", "is_ref": true }

// 后续接口请求字段
{ "name": "accessToken", "rule": "state:accessToken" }

① 延迟模拟(interface.delay)

推荐在 UI 上直接配置(http://localhost:18080 选中接口后顶部设置栏)。

勾选"延迟" → 输入最小值和最大值(ms)。也可以在 Schema JSON 里写:

{ "delay": "200-500" }
写法效果
"delay": "300"固定 300ms
"delay": "200-500"随机 200~500ms
"delay": "1000-3000"大压力测试 1~3s

② 错误注入(interface.error)

推荐在 UI 上直接配置,清晰分隔每个参数。

勾选"错误" → 选择错误类型 → 填概率/错误码/消息。也可以在 Schema JSON 里写:

{ "error": "500@0.05:ERR001:自定义错误消息" }

格式:错误类型[@概率[:错误码[:消息]]]

字段说明
错误类型HTTP状态码(500/400/401/403/404/429)或 timeout / network_error / rate_limit
概率0.0~1.0,1.0 = 100% 触发
错误码自定义业务错误码(如 ERR001)
消息自定义错误消息内容

③ 请求镜像(mirror / body:xxx)

把请求参数原样反射回响应,让接口"更逼真":

{
  "name": "下单",
  "path": "/order/create",
  "req_fields": [
    { "name": "order_id", "type": "string" },
    { "name": "amount", "type": "number" }
  ],
  "resp_fields": [
    { "name": "order_id", "rule": "mirror" },
    { "name": "amount", "rule": "mirror" },
    { "name": "status", "rule": "fixed:PAID" }
  ]
}

请求 {"order_id": "A123", "amount": 100} → 响应 {"order_id": "A123", "amount": 100, "status": "PAID"}

④ 动态响应(path:xxx / query:xxx / header:xxx / state:xxx / when)

根据请求内容动态生成响应,不只是返回假数据:

路径参数

{ "name": "order_id", "rule": "path:order_id" }

GET /order/{order_id} → 响应中 order_id 引用 URL 里实际的值

查询参数

{ "name": "page", "rule": "query:page" }

GET /list?page=2 → 响应中 page 取 query 参数值

嵌套 body 字段

{ "name": "user_phone", "rule": "body:user.phone" }

请求 {"user": {"phone": "13800138000"}} → 响应 {"user_phone": "13800138000"}

跨次状态引用

{ "name": "token", "rule": "state:access_token" }

取上一次登录接口存入的 access_token 状态

条件字段(when)

{ "name": "vip_discount", "rule": "amount:0-0.5", "when": {"field": "body.is_vip", "op": "eq", "value": true} }
{ "name": "discount", "rule": "fixed:0", "when": {"field": "body.is_vip", "op": "exists"} }

只有满足条件时才返回该字段,支持 eq / ne / gt / lt / contains / exists / not_exists

启动命令

python {skill_path}/mock_server.py --port 18080 --project {project_name}

运行时文件结构

{skill_path}/
├── SKILL.md
├── mock_server.py          # FastAPI 服务(内嵌 HTML UI)
└── schema_store/           # 由服务器自动创建
    ├── {project_1}.json
    └── {project_2}.json

服务器运行后创建:

  • schema_store/ 目录
  • state_store.json 状态文件

多项目支持

  • 每个第三方为独立项目
  • 运行中调用 POST /mock/load 实时加载新项目(无需重启)
  • UI 右上角项目下拉框切换

错误处理

  • 文档格式无法解析 → 向用户询问更多信息
  • 缺少关键字段 → 模型根据语义合理推断,标注"推测"
  • 端口被占用 → 自动尝试下一个端口(18081, 18082...)
  • Schema 加载失败 → 报错并展示具体错误位置

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

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

04

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

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

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

能力 4

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

能力 5

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

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

平台分布

OpenClaw

72.91%
按下载量换算1,070

安全审计

VirusTotal

通过

ClawScan

通过

Static analysis

通过

权限和风险

需要联网

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

安装前确认

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

来源信息

继续浏览同类 Skills