用Tauri开发轻量桌面工具需手动配置:初始化项目、修改window_url为http://localhost:1420、声明带权限的Rust命令、前端用invoke调用;构建时运行npm run tauri build,注意系统运行库和macOS Gatekeeper限制。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

用Tauri开发轻量桌面工具需要绕过Codex的默认Web容器限制,直接接入Rust后端与前端HTML/JS协同工作。Codex本身不提供Tauri集成模板,必须手动配置Cargo.toml依赖、tauri.conf.json权限和构建脚本,否则打包后应用无法启动或系统托盘、文件读写等功能全部失效。
初始化Tauri项目并替换Codex默认结构
在Codex项目根目录执行 npm run tauri init(需先全局安装 @tauri-apps/cli),选择 Rust 1.75+ 版本,接受默认的src-tauri路径;这一步会生成 【src-tauri】 文件夹并覆盖原有 Cargo.toml 的构建配置,若跳过将导致后续所有Tauri API调用返回 undefined。
删除 Codex 原有的 public/index.html 和 src/main.ts,把 Tauri 生成的 src-tauri/src/main.rs 中的 window_url 改为 "http://localhost:1420"(Codex dev server 默认端口),确保开发时热重载可用。
声明并调用自定义Tauri命令
在 src-tauri/src/main.rs 里添加命令函数:
#[tauri::command]async fn read_config_file(app_handle: tauri::AppHandle) -> Result<string string> {</string> let path = app_handle.path_resolver().app_data_dir().unwrap(); std::fs::read_to_string(path.join("config.json")).map_err(|e| e.to_string())}
通过 Codex CLI 生成图片,支持尺寸控制和批量模式。依赖:codex (npm)。代理默认启用。用 generate.sh 生成单张,batch_generate.sh 批量生成游戏 UI 素材,gen_size.sh 指定尺寸。所有输出保存至 ~/.codex/generated_images/。
然后在 tauri.conf.json 的 "allowlist" → "fs" 下设 【"all": true】,否则 read_config_file 会因权限拒绝而静默失败;不设此项时控制台无报错,但 Promise 永远 pending。
前端调用:invoke('read_config_file'),注意该函数返回的是 Promise,不能直接赋值给变量。
构建可分发的跨平台二进制
第一步:运行 npm run tauri build,此命令会自动触发 cargo build --release 并打包前端资源到 src-tauri/target/release/bundle。
第二步:检查输出路径下是否生成了 darwin/x64、win32/x64 或 linux/x64 子目录,每个目录内必须包含可执行文件 + Resources/app.asar(Codex前端代码)。
第三步:在 Windows 上双击 .exe 前,先确认系统已安装 Visual C++ 2015–2022 运行库,缺失会导致白屏且无任何错误提示;macOS 用户需手动右键→“显示简介”→勾选“仍要打开”,绕过 Gatekeeper 阻断。

















