Skip to main content
Glama

English · 简体中文

Unfour

一个面向后端开发者的本地优先桌面工作区,集成了 API 调试、SSH 终端和数据库管理——并通过本地 MCP 服务器将这些能力暴露给你的 AI 代理。

License CI Release Built with Tauri

Unfour overview

使用 Codex 与 GPT-5.6 构建

Codex 被用于审查 Rust 和 TypeScript 架构、实现和重构 Tauri 命令、添加测试,以及调查构建失败和 MCP 进程生命周期问题。

GPT-5.6 帮助设计了 AI 辅助的后端故障排查工作流,分析了 SSH 和数据库的权限边界,完善了 MCP 工具设计,并规划了项目架构和发布流程。

Codex 对 Unfour 而言也不仅仅是一个开发工具:通过 Unfour MCP 服务器,它可以使用 API、SSH 和数据库能力来复现 API 问题、检查服务日志、查询数据库、关联证据并定位根本原因。

敏感操作仍由开发者控制。工作区范围、凭据处理、主机信任、确认机制和工具权限限制了 Codex 可以访问和执行的内容;连接 Codex 默认不会授予无限制的访问权限。

[!WARNING] 源码树正在准备 Community Stable v0.5.0 版本。该版本未签名,仍需进行发布验证;安装程序可能触发 SmartScreen 或其他操作系统安全警告。

Related MCP server: devpulse-mcp

下载

GitHub Releases 下载已发布的构建版本。最新的稳定版本是 v0.4.0v0.5.0 将在发布后出现在那里。

  • Windows:NSIS .exe 安装程序。

  • macOS 和 Linux 包是实验性的,在记录真实设备冒烟检查之前未经验证;暂时不要将其视为受支持或已验证。

  • 使用发布附带的 SHA256SUMS.txt 资产验证下载的安装程序。

什么是 Unfour?

Unfour 是一个面向后端和运维工作的本地优先桌面工作区。它将 API 请求、SSH 连接、数据库连接、本地活动和工作区布局保存在一个本地优先的应用程序中,并通过本地 MCP 服务器将这些能力暴露给你的 AI 代理。这一基础支持跨这些工具的 AI 辅助故障排查工作流。

该应用使用 Tauri 2、React、TypeScript 和 Rust 构建。前端负责工作台 UI,而 HTTP、SSH、数据库驱动、本地存储和凭据引用等安全敏感的执行则位于 Rust 能力 crate 和命令总线之后。

模块

  • API Client - 编写并发送 HTTP 请求,将保存的请求组织到集合和文件夹中,解析共享的工作区变量,检查响应体/请求头/Cookie/计时,运行保存的请求前和响应后脚本,查看脚本测试和控制台输出,并保留脱敏历史记录。

  • SSH Terminal - 管理 SSH 连接和终端会话(分屏、搜索、剪贴板上下文菜单、持久的脱敏命令历史和输入建议、主机密钥信任、脱敏日志),通过 SFTP 浏览和传输远程文件,并从 Connections / Files / Tasks 侧边栏自动化多步骤 SSH 任务(命令、上传、下载)。

  • Database - 管理数据库连接,浏览模式,运行带有确认感知安全检查的 SQL(包括多语句的 Run Current / Run All),预览和编辑表行,并查看查询输出。

  • Workspace - 将保存的请求、共享环境/变量、连接、活动、标签页和布局状态限定在本地工作区范围内,并支持标题栏中的活动环境切换。

  • 面向 Codex 驱动的 API、SSH 和数据库调试的 MCP 集成 - 通过桌面应用使用的同一命令总线,将安全的本地诊断工具暴露给 MCP 客户端(如 Codex、Claude Code 或 Cursor),让你的 AI 代理能够使用相同的 API、SSH 和数据库上下文进行工作。

截图

应用概览 — 带有模块切换器的侧边栏和 API Client 工作区

Unfour overview

API Client — 带有参数、认证、请求头、请求体和响应的请求构建器

API Client

SSH Terminal — 连接、会话、远程文件和任务

SSH Terminal

Database — 模式浏览和 SQL 查询输出

Database

本地开发

要求:

  • Node.js 和 pnpm。

  • 稳定的 Rust 工具链。

  • 适用于你的操作系统的 Tauri 2 前置要求。

安装并运行:

pnpm install
pnpm tauri dev

pnpm install 还会通过 lefthook 安装 Git 钩子。提交时会使用 cargo fmt 格式化暂存的 Rust 文件,并使用 ESLint 自动修复暂存的 TypeScript。可以使用 LEFTHOOK=0 git commit 跳过一次。

常用命令:

pnpm tauri build        # create local Stable-channel Tauri bundles
pnpm tauri build:test   # create isolated Test-channel Tauri bundles
pnpm run build          # build the desktop frontend only
pnpm run check          # frontend build + Rust check + large-file check
pnpm run lint           # ESLint
pnpm run test           # frontend unit tests (Vitest)
pnpm run test:e2e       # Playwright smoke tests
pnpm run check:rust     # cargo check --workspace
pnpm run check:rust:ssh # cargo check with the ssh-native feature
pnpm run test:rust      # cargo test --workspace
pnpm run test:release-env # release/channel contract unit tests

除非包文档另有说明,否则请从仓库根目录运行命令。pnpm tauri dev 默认使用 Test 发布渠道,而本地 pnpm tauri build 默认使用 Stable。使用 pnpm tauri build:test 生成隔离的 Test 渠道包。当开发数据应使用 ~/.unfour-dev 时,设置 UNFOUR_STORAGE_PROFILE=dev;此存储覆盖与发布身份无关。只有 CI 应使用 UNFOUR_RELEASE_CHANNEL=stable 和精确的 UNFOUR_BUILD_COMMIT 创建正式可发布的 Stable 工件。

项目结构

路径

说明

apps/desktop

Tauri/Vite 桌面应用入口和 Tauri 适配层。

packages/app-shell

全局外壳组合和模块挂载槽。

packages/api-client

API Client 前端模块。

packages/ssh-terminal

SSH Terminal 前端模块。

packages/database

Database 前端模块。

packages/workspace-core

共享的前端工作区状态。

packages/workspace-environments

工作区环境和变量管理 UI。

packages/workspace-local

保留的本地工作区生命周期边界。

packages/ui

共享 UI 原语和无状态布局辅助工具。

packages/command-client

类型化的 Tauri 命令包装器和前端命令类型。

crates/*

Rust 后端能力 crate 和适配器。

完整的包和 crate 映射请参阅 docs/architecture/project-structure.md

发布状态

源码树正在准备 Community Stable v0.5.0;最新发布的稳定版本是 v0.4.0。发布就绪状态记录在以下文档中:

  • docs/testing/release-verification.md

  • docs/testing/manual-test-cases.md

  • docs/release/release-checklist.md

  • docs/release/distribution.md

  • docs/release/signing.md

Windows 分发 NSIS .exe 安装程序。安装程序未签名,可能触发 SmartScreen。在真实设备冒烟检查完成之前,macOS 和 Linux 仍处于实验性/未验证状态。除非针对目标平台成功运行了发布检查,或有当前仓库证据支持,否则不要声称发布检查已通过。

文档

  • AGENTS.md - 编码代理的仓库规则。

  • docs/agents/START_HERE.md - AI 代理的限定范围入门路径。

  • docs/architecture/package-boundaries.md - 包所有权和禁止的依赖方向。

  • docs/architecture/project-structure.md - 仓库、包、crate 和调用链映射。

  • docs/architecture/data-storage.md - 工作区数据、SQLite、凭据引用和本地活动规则。

  • docs/architecture/diagnostics.md - 本地结构化日志、脱敏、保留、诊断包和开发者日志记录指南。

  • docs/architecture/security-model.md - 安全态势、脱敏、主机密钥策略和危险操作规则。

  • docs/mcp/overview.mddocs/mcp/tools.md - 本地 MCP 服务器行为。

  • docs/testing/release-verification.md - 发布验证矩阵。

  • docs/release/release-checklist.md - 公开发布检查清单。

  • docs/user/USER_GUIDE.md - 面向用户的工作流指南。

贡献

在提交 pull request 之前,请阅读 CONTRIBUTING.mdCODE_OF_CONDUCT.md 以及 AGENTS.md 中的包边界规则。

安全问题应通过 SECURITY.md 报告,而不是公开 issue。

许可证

根据 Apache License 2.0 许可。

A
license - permissive license
-
quality - not tested
A
maintenance

Maintenance

Maintainers
Response time
6dRelease cycle
9Releases (12mo)
Commit activity

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Zero-config MCP server that gives AI coding assistants a real-time diagnostic snapshot of your local dev environment. Detects framework, running services, recent errors, git state, and provides a health diagnosis in one call.
    3
    26
    1
    MIT
  • A
    license
    -
    quality
    B
    maintenance
    An MCP server that gives your AI assistant full awareness of your local dev environment — running processes, Docker containers, git state, open ports, log files, and more.
    137
    1
    MIT
  • F
    license
    -
    quality
    C
    maintenance
    Secure local development platform that exposes controlled developer capabilities (FS, Git, search, command execution) to AI assistants via MCP with deny-by-default security and audit logging.

View all related MCP servers

Related MCP Connectors

  • Private-by-default, local-first memory/context/task orchestrator for MCP apps and agents.

  • MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.

  • Self-hosted MCP gateway: turn any API, database or MCP server into AI connectors — no code.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/zyqzyq/Unfour'

If you have feedback or need assistance with the MCP directory API, please join our Discord server