by gaixianggeng
Open-source native iPhone/iPad client for OpenAI Codex CLI and Claude Code — review diffs, approve actions, steer sessions, and manage Git remotely.
# Add to your Claude Code skills
git clone https://github.com/gaixianggeng/mimi-remoteLast scanned: 9/3/2026
{
"issues": [],
"status": "PASSED",
"scannedAt": "2026-09-03T08:34:38.789Z",
"npmAuditRan": true,
"pipAuditRan": true,
"promptInjectionRan": true
}mimi-remote is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by gaixianggeng. Open-source native iPhone/iPad client for OpenAI Codex CLI and Claude Code — review diffs, approve actions, steer sessions, and manage Git remotely. It has 100 GitHub stars.
Yes. mimi-remote passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.
Clone the repository with "git clone https://github.com/gaixianggeng/mimi-remote" and add it to your Claude Code skills directory (see the Installation section above). mimi-remote ships a SKILL.md manifest, so compatible agents can discover and load it automatically.
mimi-remote is primarily written in Swift. It is open-source under gaixianggeng on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh mimi-remote against similar tools.
No comments yet. Be the first to share your thoughts!
⚠️ Third-Party Software Notice
This skill is third-party open-source software developed and hosted independently on GitHub. SkillsLLM is an informational directory and does not control or maintain the underlying repository.
Any security checks, ratings, or warnings displayed by SkillsLLM are automated and limited in scope. They do not constitute a security certification or guarantee that the software is safe, error-free, or free from malicious code, vulnerabilities, compromised dependencies, or prompt-injection risks.
Review the source code, permissions, dependencies, and configuration before installing or running any third-party skill. Use is at your own risk. To the maximum extent permitted by applicable law, SkillsLLM is not liable for losses arising from third-party software.
把 Mimi Remote 安装成一个可验证、可恢复、权限最小化的本地闭环:
agentd 的 Mimi Remote Mac 菜单栏 App。Mimi Remote 是第三方开源客户端,不是 OpenAI、Anthropic 或 Tailscale 的官方产品。项目代码、Codex / Claude 凭证和完整会话继续留在用户自己的设备上。
devel 二进制当作稳定版本。Mimi-Remote-Mac.dmg;Homebrew 只用于命令行、服务器、自动化、旧安装维护或故障恢复。https://github.com/gaixianggeng/mimi-remote 获取。agentd setup --force,除非用户明确要求轮换凭据并接受现有配对失效。agentd 暴露到公网,不自动配置端口转发、反向代理或公网 Tunnel。danger-full-access、启用 CLAUDE_BRIDGE_BYPASS_PERMISSIONS 或自动重试写操作来解决 Runtime 问题。tccutil reset。macOS 文件权限、登录项审批和签名信任必须由用户在系统界面确认。sudo 运行安装脚本。选择能完成用户目标的最小路径:
agentd,用于服务器、自动化、旧安装或恢复。agentd 和 user-systemd service。只询问会改变结果的信息:
先执行不修改系统的检查:
uname -s
uname -m
id -u
command -v git
command -v codex
codex --version
codex app-server --help
确认 Codex CLI 已安装并登录。不要读取、复制或展示 Codex 凭证。若缺失,使用 OpenAI 当前官方安装说明,不凭记忆拼接安装命令。
确认 Mac 与移动设备位于同一私有网络。跨网络优先使用同一 Tailnet;同一局域网可以不安装 Tailscale。tailscale CLI 不在 PATH 时,允许用户通过 Tailscale App 确认状态。
macOS App 路径只要求 macOS 26 或更高版本和 Codex CLI;不要求 Homebrew、Go、Rust、Xcode 或 XcodeGen。仅在源码构建时检查相应工具链。
用户明确要求 Claude Code 时再检查:
command -v claude
claude --version
让用户在 Mac 本机确认 Claude Code 已登录。不要读取、复制或展示 Claude 凭证文件、Keychain 内容或 OAuth Token。
使用 gaixianggeng/mimi-remote 的最新正式 Release;用户指定版本时固定到对应 tag。下载:
Mimi-Remote-Mac.dmg
Mimi-Remote-Mac.dmg.sha256
在同一目录严格校验:
shasum -a 256 -c Mimi-Remote-Mac.dmg.sha256
校验失败时停止,不打开 DMG。让用户完成必须的人机操作:
App 内已包含 agentd 和兼容的 alleycat-claude-bridge,普通安装不需要 Homebrew 或单独 cargo install。
若检测到 homebrew.mxcl.mimi-remote:
macOS App 安装成功必须满足:
Mimi Remote Mac。仅在用户选择 CLI、服务器、自动化、旧安装维护或恢复时使用:
brew update
brew install gaixianggeng/tap/mimi-remote
agentd version
普通修复不要无条件升级。首次初始化通过 Agent 或自动化执行时必须隐藏配对信息,并使用用户确认的最小目录:
agentd up --no-pair \
--scan-root "/absolute/path/to/projects" \
--browse-root "/absolute/path/to/projects"
agentd status --json | grep -E '"(process_ok|service_ok|doctor_ok)"'
agentd doctor
只以 service_ok=true 作为成功条件。process_ok=true 只表示 HTTP 进程存活。
从当前 agentd 托管的远程任务重启时使用:
agentd restart --no-pair
不要执行 brew services restart mimi-remote,避免旧服务退出后无法完成启动步骤。
使用 gaixianggeng/mimi-remote 的正式 Release,不从开发工作树安装 devel 二进制。根据架构选择归档:
mimi-remote_VERSION_linux_amd64.tar.gz
mimi-remote_VERSION_linux_arm64.tar.gz
下载目标归档和同一 Release 的 checksums.txt,严格校验 SHA-256 后解压。在 Release 根目录执行:
bash ./scripts/install-linux.sh install
安装器会原子维护:
~/.local/bin/agentd
~/.config/systemd/user/mimi-remote.service
~/.local/share/mimi-remote/install-linux.sh
~/.config/mimi-remote/
不设置非默认 AGENTD_CONFIG,不在自定义 XDG_CONFIG_HOME 下套用固定模板。使用绝对路径验收:
"$HOME/.local/bin/agentd" status --json | grep -E '"(process_ok|service_ok|doctor_ok)"'
"$HOME/.local/bin/agentd" doctor
仅在 macOS、Xcode 26 或更高版本、iOS 26 SDK 和 XcodeGen 可用时继续。确认当前目录是完整且干净的源码仓库;否则克隆到用户确认的新目录,并优先检出与后端匹配的正式 tag。
xcodegen generate \
--spec ios/MimiRemote/project.yml \
--project ios/MimiRemote
bash ./scripts/ios-dev.sh build-for-testing
open ios/MimiRemote/MimiRemote.xcodeproj
测试构建始终使用统一脚本固定的 M5 Simulator。需要人工安装到真机时,让用户在 Xcode 中选择自己的 Development Team、已信任真机和 MimiRemote scheme;不要替用户选择未知 Team,不导出或上传签名证书,不关闭代码签名。日常命令行部署必须使用 bash ./scripts/ios-dev.sh run。
Mac App 安装从菜单栏选择“配对设备…”。CLI/Linux 安装让用户在不会进入 Agent 日志的本机 Terminal 执行:
agentd pair --qr-only
Linux 使用 "$HOME/.local/bin/agentd" pair --qr-only。
短期 Pair 链接是单次兑换票据,不直接包含长期 Token。失败、过期或已使用时重新生成;扫码不可用时才使用高级手动连接,不让用户把 Token 粘贴到模型对话中。
至少验证:
agentd 版本。前三项完成后才判定基础安装成功;Claude 验收失败不能推翻已通过的 Codex 主通道。
Codex 是默认 Runtime。不要写死模型版本;未显式选择模型时交给本机 Codex rollout。保持现有 Codex 登录态、app-server Token 和审批策略。
Claude Code 属于实验通道。Mimi Remote Mac 启动时会在本机检测随包 bridge、Claude CLI 和登录态:三项都通过且用户没有明确关闭时自动启用,否则保持关闭;设置页中的明确开关会覆盖后续自动检测。Homebrew / Linux 不执行这项 App 启动策略。它使用一个由 agentd 监督的 resident bridge;每个 Claude thread 对应一个 headless 进程。移动端断线不会自动重试 turn/start,重连使用 sequence replay 或 thread/read,避免重复写文件或执行命令。
启用 Claude 前确认用户接受以下边界:
goal、archive 和 fork。CLAUDE_BRIDGE_BYPASS_PERMISSIONS=false,Claude 只声明 read-only 和 workspace-write。按安装形态处理 bridge:
cargo install,不写入其他机器的 bridge 绝对路径。App 通过 agentd runtime --claude=auto|enabled|disabled 原子更新 claude.enabled、claude.activation 和检测到的本机 Claude CLI 路径,保留其他字段与 0600 权限;不要打印完整配置文件。alleycat-claude-bridge >= 0.2.1,把实际绝对路径写入 claude.bridge_bin。CLI 外置 bridge 安装命令:
cargo install --git https://github.com/gaixianggeng/mimi-remote.git \
--locked --force --bin alleycat-claude-bridge alleycat-claude-bridge
command -v alleycat-claude-bridge
配置文件含长期 Token。修改前创建权限为用户私有的本地备份,使用 JSON 解析器原子修改,只更新 claude 字段,保持文件权限为 0600;不要用 cat、日志或聊天展示完整内容。Mac App 优先使用设置页开关;用户明确关闭后,不得在后续启动中重新自动启用。
修改后从当前 service owner 的入口重启:
agentd restart --no-pair。systemctl --user restart mimi-remote.service。然后执行 Doctor,并在移动端确认 Claude channel、bridge 版本和模型列表可用。不要因为 Claude bridge 失败而修改 Codex 配置或轮换 Token。
先从当前 service owner 收集最小、去敏的诊断,不要一开始就重装:
agentd status --json | grep -E '"(process_ok|service_ok|doctor_ok)"'
agentd doctor
agentd logs -n 200
brew services list
"$HOME/.local/bin/agentd" status --json | grep -E '"(process_ok|service_ok|doctor_ok)"'
"$HOME/.local/bin/agentd" doctor
journalctl --user -u mimi-remote.service -n 200 --no-pager
重点区分:
process_ok=false:服务未运行、端口不可达或 service manager 失败。process_ok=true 且 service_ok=false:配置、鉴权、版本或真实 Codex app-server 握手失败。file-access-preflight warning:服务可能已连接,但部分 macOS 目录权限尚未确认。claude.enabled、Claude CLI 登录和 bridge probe,不破坏 Codex。只在 Doctor 明确给出安全可修复项时运行 doctor --fix。先对日志去敏,再引用到聊天或 Issue。
升级前备份配置和 Token,备份目录保持用户私有,不上传到云盘、Issue、PR 或任务附件。
首个 DMG 没有自动更新。不要把 snapshot 或未公证构建作为稳定回滚版本。
执行 brew upgrade mimi-remote 后使用 agentd restart --no-pair,验证 service_ok=true。失败时优先恢复旧 keg,不默认回滚配置。
在校验后的新 Release 根目录执行 bash ./scripts/install-linux.sh upgrade。需要主动回滚时执行:
bash "$HOME/.local/share/mimi-remote/install-linux.sh" rollback
"$HOME/.local/bin/agentd" status --json | grep -E '"(process_ok|service_ok|doctor_ok)"'
默认只卸载程序并保留配置和 Token。永久删除凭据是独立破坏性操作,只有用户明确确认“接受现有配对永久失效”后才能执行。
agentd stop 和 brew uninstall mimi-remote。bash "$HOME/.local/share/mimi-remote/install-linux.sh" uninstall。不要自动删除:
~/Library/Application Support/mimi-remote
~/.config/mimi-remote
不要因为卸载后端而删除 iOS Keychain 数据、Xcode 工程、源码仓库或用户项目。
最终只报告:
service_ok、Doctor 和仍需用户处理的 warning。不要报告 Token、二维码内容、完整 Endpoint、Tailscale IP、私有项目路径或未去敏日志。
Mimi Remote connects directly to your macOS, Windows, or Linux computer through Tailscale or the same local network. The project does not operate a relay, account system, or hosted session service. Your computer remains the control plane; data you intentionally send to Codex, Claude Code, GitHub, voice transcription, or MCP is still handled by those services under their own terms.
Mimi Remote is an independent third-party project. It is not affiliated with, endorsed by, or a product of OpenAI, Anthropic, or Tailscale. Codex is the primary supported runtime; the optional Claude Code bridge is experimental.
Install the public release from the App Store where available. TestFlight remains available for beta builds, and developers can build from source.
Both devices share the complete session, approval, and task-control surface; only the layout, information density, and input ergonomics change. The native SwiftUI interface tunes compact navigation, wide-screen columns, touch feedback, and transitions for each device. With Reduce Motion enabled, movement falls back to restrained fades or static feedback. These images reuse the current web/assets capture set and come from Debug-only seeded UI with demo hosts, projects, sessions, paths, and usage values—never a maintainer's live workspace or credentials. The interface uses the Simplified Chinese localization; the app also supports English.
The common need is rarely “open a terminal on a phone.” It is to leave your computer and keep the same agent session moving without explaining the context again.
When you need to finish deeper development work, advanced tools can inspect diffs, manage Worktrees, stage a file or hunk, commit, push, and open a draft pull request. None of those tools is required to use Mimi Remote.
Mimi Remote keeps the same project and session model across devices, but each surface follows the way that device is actually used. iPhone keeps one-handed navigation compact, iPad opens the same capabilities into a context-preserving multi-column workbench, and the host computer continues running the agents. The device changes the presentation, not the available capabilities.
The hierarchy is intentional:
The mobile images above are the same current assets used by the Mimi Remote website and come exclusively from Debug-only seeded UI. The Mac menu image uses the same source tree and the public mimi-demo.local hostname; capturing it did not restart or replace the installed Mac service. None of these public screenshots contains a real token, private address, personal path, or live project content.
flowchart LR
Mobile["iPhone / iPad<br/>Mimi Remote"]
Gateway["Your computer<br/>agentd secure gateway"]
Codex["Codex<br/>App Server"]
Desktop["Codex Desktop<br/>local or SSH"]
Claude["Claude Code<br/>experimental bridge"]
Mobile <-->|"LAN or Tailscale<br/>live sessions and approvals"| Gateway
Gateway <--> Codex
Desktop <-->|"SSH app-server proxy"| Codex
Gateway <--> Claude
This repository ships the complete link: the native iPhone/iPad app, the Go agentd gateway for macOS, Windows, and Linux, the Mac menu bar app, the Windows tray app, and the Claude Code compatibility bridge. The mobile app connects only to your own host computer, so project files, session history, and runtime credentials stay on that computer.