原生桌面 · 本地优先 · 开源

让 API 调试,回归简单。

从一个请求,到整套接口。
轻快的原生工作台,让你专注每一次调用。

macOS · Windows · Linux

ApiFuck 桌面应用:集合导航、健康检查请求与 JSON 响应,点击查看完整截图
ApiFuck Playground · 真实桌面截图
Rust + GPUI Kit无需注册账号OpenCollection YAMLMIT 开源

一个工作台,完整的调试节奏

从发出请求,
到读懂每个响应。

常用协议、环境变量、脚本与测试,在同一个原生窗口里自然衔接。

01 / 04

日常接口,顺手就能调。

整理 Query、Headers 和 Body,粘贴 cURL 即可导入。状态码、响应内容和时间线,一眼看清。

使用文档
GET{{base_url}}/users?limit=10
{
  "users": [
    { "id": 1, "name": "Alex" },
    { "id": 2, "name": "Sam" }
  ]
}
HTTP 示例响应

你的文件,你的工作流

请求属于项目。
数据留在本地。

用可读的 OpenCollection YAML 保存请求、目录配置与环境。与代码一起提交、审查和协作,无需另建一套工作流。

对 Git 友好

保留未修改部分的注释与格式,让每次变更清楚可读。

草稿也值得保留

尚未完成的输入自动保存在本地,关闭标签后仍可恢复。

环境切换,有条不紊

项目、目录与请求作用域,配合变量预览与补全。

⌄   my-api/├─ opencollection.yml├─ environments/├─ users/get-users.yml└─ .apifuck/
get-users.yml YAML
info:
  name: Get users
  type: http
http:
  method: GET
  url: '{{base_url}}/users'
  params:
    - name: limit
      value: '10'
      type: query
+ 10   − 0main*

共享请求进入 Git,本机草稿留在 .apifuck/。

把重复的工作交给工具

调试之外,再多走一步。

test("status is 200", () => {
  expect(api.response.status)
    .to.equal(200);
});
01

脚本与断言

用 QuickJS 编写请求前后脚本,通过 Chai、AJV 和声明式断言验证响应。

cURL  →  ApiFuck
Bru   →  OpenCollection
      →  JavaScript / Python / Go
02

从现有请求开始

粘贴 cURL,导入 Bru 请求、环境与文件夹。也能预览、复制 JavaScript、Python、Go 等调用代码。

Rust + GPUI Kit
Light / Dark / System
English / 简体中文
03

专注原生体验

Rust 与 GPUI Kit 构建,内置离线编辑辅助。下载后运行无需 Node.js 或 Bun。

开始你的下一次请求

打开,即刻进入工作状态。

无需账号。选择你的平台,或从源码运行。

仅提供与当前原生架构匹配的文件。历史版本与当前产品可能不同。

你可能想知道

需要注册或登录吗?

不需要。ApiFuck 是本地桌面应用,你可以直接创建或打开项目并发送请求。

项目文件保存在哪里?

请求、环境与目录配置保存在项目中的 OpenCollection YAML;本机草稿、变量覆盖等放在 .apifuck/。请不要将该目录提交到 Git。

支持哪些协议?

当前支持 HTTP、GraphQL、SSE 和 WebSocket。gRPC、高级认证以及完整异步脚本尚未支持,完整边界请查看执行文档。

有 CLI 或 MCP 吗?

当前没有独立 CLI 产品。原生 MCP 集成仍在规划中,集合运行器已在核心库中实现,但尚无桌面入口。