api-tester SKILL.md skillA
api-tester from chainlesschain/chainlesschain is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.
mdr add chainlesschain/chainlesschain/api-tester@v1.0.0Pins v1.0.0 in mdr.lock. Pin the fingerprint instead.
- Audit grade
- A, 17 of 17 checks passed
- Kind
- SKILL.md skill
- Repository
- chainlesschain/chainlesschain
- Path
desktop-app-vue/src/main/ai-engine/cowork/skills/builtin/api-tester/SKILL.md- Versions recorded
- 5
- Latest version
- v1.0.0, committed Sep 20, 2026
- First version recorded
- Jun 3, 2026
- Size
- 3,508 bytes
- Repository stars
- 11
- License
- a license file GitHub does not identify
API测试技能 - IPC处理器发现、测试生成、健康检查、回归测试.
Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.
What the file says
# API 测试技能
## 描述
自动发现和测试 IPC 处理器及 REST API 端点。扫描源代码中的 `ipcMain.handle()` 注册,生成测试用例,执行健康检查和回归测试。
## 使用方法
```
/api-tester [操作] [目标路径] [选项]
```
## 操作
### 发现 IPC 处理器
```
/api-tester --discover src/main/
```
扫描所有源文件,提取:
- `ipcMain.handle('channel', handler)` 注册
- `ipcMain.on('channel', handler)` 监听器
- 处理器的参数签名和返回类型推断
- 模块归属和依赖关系
### 生成测试
```
/api-tester --generate src/main/audit/audit-ipc.js
```
为每个发现的处理器生成:
- 正常路径测试(有效输入 → 期望输出)
- 参数验证测试(缺失/无效参数 → 错误响应)
- Mock 注入(数据库、文件系统、外部服务)
- 边界条件测试
- 超时和并发测试
### 健康检查
```
/api-tester --health-check all
```
对所有已注册的 IPC 通道执行:
- 可达性检查(通道是否注册)
- 参数验证检查(空参数调用)
- 响应格式验证
- 响应时间测量
### 回归测试
```
/api-tester --regression src/main/marketplace/marketplace-ipc.js
```
基于已有测试用例:
- 运行所有相关测试
- 对比响应与基线快照
- 报告变化和异常
## 输出格式
### 发现报告
```
IPC Handler Discovery Report
=============================
Total handlers: 200+
By module:
audit-ipc.js: 18 handlers
marketplace-ipc.js: 22 handlers
skills-ipc.js: 5 handlers
...
```
### 测试生成
生成可直接运行的 Vitest 测试文件:
```javascript
describe("audit-ipc handlers", () => {
it("audit:get-logs should return paginated logs", async () => {
// ...
});
});
```
## 示例
发现所有 IPC 处理器:
```
…Read the whole file at its exact version.
How to install
mdr add chainlesschain/chainlesschain/api-tester@sha256:8a1c51af71b1211dThe line at the top of this page pins the label v1.0.0, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.
[](https://markdownregistry.com/a/art_qc32xukbxyrxuzah)
4 badge image fetches in 30 days. What the badge shows.
Versions
The registry has recorded 5 versions of this file, between Jun 3, 2026 and Sep 20, 2026, about one every 27 days.
| version | committed | commit | size | audit | |
|---|---|---|---|---|---|
| v1.0.0 latest | 2026-09-20 | cd22167 | 3,508 B | A | view · diff |
| v1.0.0 | 2026-09-20 | cb427e3 | 3,509 B | A | view · diff |
| v1.0.0 | 2026-08-28 | 44248c7 | 3,510 B | A | view · diff |
| v1.0.0 | 2026-08-28 | c29953e | 3,493 B | A | view · diff |
| v1.0.0 | 2026-06-03 | 3b0b2dc | 3,401 B | A | view |
Audit of the latest version
- pass: Frontmatter block present
- pass: Frontmatter declares a name
- pass: Frontmatter declares a description
- pass: Size between 200 bytes and 200 KB (3508 bytes)
- pass: No zero-width or bidi control characters
- pass: No instruction hidden inside an HTML comment
- pass: No link to an exfiltration or paste host
- pass: No credential-shaped string
- pass: No instruction to send local credentials anywhere
- pass: No text hidden with inline styles
- pass: No prompt-injection phrasing
- pass: No curl or wget piped into a shell
- pass: No recursive delete of root, home or parent
- pass: No instruction to read or print local credentials
- pass: No base64 blob over 200 characters
- pass: No link to a raw IP address
- pass: No script tag
Source
chainlesschain/chainlesschain · 11 stars · license a license file GitHub does not identify · pushed 2026-11-02 · branch main
API
GET https://markdownregistry.com/api/v1/artifacts/art_qc32xukbxyrxuzah GET https://markdownregistry.com/api/v1/resolve?ref=chainlesschain/chainlesschain/api-tester GET https://markdownregistry.com/api/v1/blob/8a1c51af71b1211dcb31c32c2be1c2edfb8b29e71edbd38194f6e9d4e3c59d03
Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.
Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.
More from chainlesschain/chainlesschain
Every file in chainlesschain/chainlesschain