当前位置: 首页 > article >正文

Whiz:基于AI的终端命令生成工具,提升开发效率

1. 项目概述为你的终端装上“副驾驶”如果你和我一样每天有超过一半的工作时间是在终端Terminal里度过的那你一定也经历过这样的时刻面对一个复杂的命令需要反复查阅man手册或者想完成一个简单的任务却要在搜索引擎和 Stack Overflow 之间来回切换拼凑出最终的指令。这种上下文切换不仅打断心流也降低了效率。Whiz 这个工具的出现就是为了解决这个痛点。它本质上是一个终端命令行工具通过调用 OpenAI 的语言模型如 GPT-3.5 或 GPT-4将你用自然语言描述的任务直接翻译成可执行的终端命令。你可以把它理解为终端里的“Copilot”。就像在 IDE 里写代码时Copilot 能帮你补全代码片段一样Whiz 能在你输入wz “用 curl 下载 google 首页并保存为 html 文件”时直接生成并执行curl -o google.html https://www.google.com。它的核心价值在于“所想即所得”极大地降低了使用复杂命令或组合命令的门槛无论是对于刚接触命令行的新手还是想要提升效率的资深开发者都是一个非常实用的生产力工具。2. 核心设计思路与工作原理拆解Whiz 的设计哲学非常清晰最小化用户认知负担最大化命令生成效率。它不是要替代你对终端命令的学习而是作为一个强大的“翻译官”和“速查手册”在你需要的时候提供精准的助力。2.1 架构解析一个精巧的 CLI 代理从技术架构上看Whiz 是一个典型的 Node.js 命令行工具。它扮演了一个“智能代理”的角色其工作流程可以拆解为以下几个核心环节输入解析与上下文构建当你输入wz 你的请求时Whiz 首先会收集必要的系统上下文信息。根据其隐私声明它会收集你的操作系统平台、CPU 架构和当前使用的 Shell 路径。这些信息至关重要因为不同系统如 Linux 的apt和 macOS 的brew或不同 Shell如 Bash 和 Zsh的命令语法和工具可用性可能不同。收集这些信息是为了让生成的命令更具针对性和可执行性。提示词工程这是 Whiz 的“大脑”。它会将你的自然语言请求和收集到的系统上下文组合成一个精心设计的提示词Prompt发送给 OpenAI 的 API。这个提示词的大致结构可能是“用户的操作系统是darwinShell 是/bin/zsh他/她想完成的任务是‘curl google and store response in google.html’。请生成一个直接、安全、可在此环境下执行的终端命令。”LLM 调用与命令生成OpenAI 的模型接收到提示词后利用其强大的代码和自然语言理解能力生成最有可能正确的终端命令。模型的选择通过WHIZ_LLM_MODEL环境变量配置直接影响生成命令的准确性和复杂度。gpt-3.5-turbo速度快、成本低适合大多数常见任务而gpt-4在理解复杂意图、生成多步骤复合命令方面更胜一筹。交互确认与执行这是安全性的关键一环。Whiz 不会盲目执行生成的命令。它会通过一个交互式界面使用了enquirer库将生成的命令展示给你并询问是否执行、复制到剪贴板还是取消。这给了你最后的审查机会防止因模型误解或请求模糊而产生破坏性操作。2.2 为什么选择这样的设计轻量级与无状态Whiz 本身不维护复杂的知识库或状态所有“智能”都依赖于云端大模型。这使得工具本身非常轻量安装简单且能力能随着 OpenAI 模型的迭代而自动提升。上下文感知主动收集系统信息是让它区别于简单聊天机器人的关键。一个只知道生成“理论上”命令的工具是危险的而 Whiz 努力让命令“落地”。安全第一强制性的交互确认步骤是任何此类工具必须遵守的底线。它确保了用户始终拥有最终控制权。隐私边界明确项目文档明确说明了发送给 OpenAI 的数据范围请求内容、平台、架构、Shell不发送文件名、文件内容等敏感信息。这种透明度对于建立用户信任至关重要。3. 从安装到上手详细配置与核心使用3.1 环境准备与安装Whiz 的安装过程非常标准但有几个细节需要注意。首先确保你的系统已经安装了Node.js版本建议在 14 以上和npm。你可以通过node -v和npm -v来检查。安装命令很简单npm install -g whiz_cli这里使用-g参数进行全局安装是为了让wz命令可以在任何终端目录下使用。安装完成后最关键的一步是配置API 密钥。Whiz 本身是免费的但它需要调用 OpenAI 的 API而这会产生费用虽然个人轻度使用成本极低。你需要一个 OpenAI 的账户并在其平台创建 API Key。配置环境变量对于 macOS/Linux 用户通常将配置添加到 Shell 的配置文件中# 如果你使用 Bash默认 echo export OPENAI_API_KEY你的实际API密钥 ~/.bashrc # 然后重新加载配置 source ~/.bashrc # 如果你使用 ZshmacOS Catalina 后默认 echo export OPENAI_API_KEY你的实际API密钥 ~/.zshrc source ~/.zshrc对于 Windows 用户可以通过系统属性设置环境变量或者在 PowerShell 中临时设置$env:OPENAI_API_KEY你的实际API密钥但临时设置只对当前会话有效重启后会消失。建议通过“系统属性 - 高级 - 环境变量”进行永久设置。重要提示请务必妥善保管你的OPENAI_API_KEY不要将其提交到任何公开的代码仓库如 GitHub。泄露密钥可能导致他人滥用造成经济损失。3.2 模型选择与高级配置默认情况下Whiz 使用gpt-3.5-turbo模型它在速度和成本之间取得了很好的平衡。如果你需要处理更复杂、逻辑性更强的任务可以切换到gpt-4模型。只需设置另一个环境变量# 在 .bashrc 或 .zshrc 中添加 export WHIZ_LLM_MODELgpt-4然后同样执行source ~/.bashrc或重启终端生效。选择模型时的考量gpt-3.5-turbo响应速度快通常 2-5 秒成本约为每百万 tokens 0.5 美元。适合日常的文件操作、简单的文本处理、查询系统信息等。gpt-4理解能力和推理能力更强能处理“分析日志文件并找出错误最多的前三个服务”这类复杂请求。但速度较慢可能 10-30 秒成本也高得多每百万 tokens 约 30 美元。建议仅在处理复杂任务时启用。3.3 基础与进阶使用示例安装配置好后就可以开始体验了。基本语法是wz “你的自然语言描述”。基础示例# 1. 简单的网络请求 wz curl google and store response in google.html # Whiz 可能会生成curl -s -o google.html https://www.google.com # 注意它加上了 -s (静默模式) 参数让输出更简洁。 # 2. 打开网页跨平台兼容 wz open google.com in chrome # 在 macOS 上可能生成open -a Google Chrome https://google.com # 在 Linux 上可能生成xdg-open https://google.com 或指定浏览器命令。 # 3. Git 操作 wz list recent github branches sorted by activity # 这可能生成一个复杂的 git log 与格式组合命令例如 # git for-each-ref --sort-committerdate refs/heads/ --format%(committerdate:short) %(refname:short)进阶使用心得描述越具体结果越精准与其说“处理这个文件”不如说“用 awk 提取这个 CSV 文件的第二列按数值降序排序输出前10行”。可以指定工具如果你明确想用某个工具可以在请求中提及。例如“用 ffmpeg 将这个 mp4 视频转换为 gif宽度设为 500px”。处理多步骤任务Whiz 可以生成组合命令。例如“监控日志文件app.log实时显示包含 ‘ERROR’ 的行并同时将输出重定向到errors.txt”。它可能会生成tail -f app.log | grep --line-buffered ERROR | tee errors.txt。安全审查习惯无论命令看起来多简单养成在 Whiz 提示确认时快速扫一眼生成命令的习惯。特别是涉及rm、dd、chmod、重定向或管道符|的命令。4. 实战场景深度解析与技巧让我们通过几个更贴近真实工作流的场景来深入感受 Whiz 的能力边界和使用技巧。4.1 场景一日常系统管理与文件操作任务你刚刚下载了一个包含数百个图片的文件夹它们命名混乱如IMG_1234.JPG,DSC_5678.jpeg你希望将它们统一转换为小写的.jpg扩展名并按拍摄日期批量重命名为vacation_001.jpg,vacation_002.jpg的格式。传统做法你需要回忆或搜索rename、mv、convert命令的语法结合find、xargs、stat等编写一个复杂的 Shell 脚本。这个过程可能需要多次试错。使用 Whizwz find all image files (jpg, jpeg, png) in the current directory recursively, convert their extensions to lowercase .jpg, and rename them sequentially like vacation_001.jpg based on creation dateWhiz 可能会生成一个结合了find、bash循环和exiftool用于读取创建日期的复杂命令链。它会提醒你先安装必要的工具如exiftool并可能将任务分解为几个安全的步骤避免直接覆盖文件。实操技巧对于这类高风险操作Whiz 生成的命令往往会包含echo或-n干跑选项先预览结果。一定要先运行这个预览版本。可以分步进行。先让 Whiz 完成“查找所有图片并统一扩展名”确认无误后再执行“按日期排序并重命名”。4.2 场景二开发与调试工作流任务你在开发一个 Node.js 应用应用突然变慢。你想快速检查是哪个进程占用了过高 CPU并查看该进程最近一分钟的日志。使用 Whizwz find the node process with highest CPU usage, show its PID and command, then tail its log file from the last minuteWhiz 可能会生成如下组合命令# 第一步找出高CPU的Node进程 ps aux | grep node | sort -rk 3 | head -5 # 假设我们发现 PID 是 12345 # 第二步假设我们知道日志路径或者通过 lsof 查找 # 让 Whiz 继续wz show open files for PID 12345 and find the log file # 然后tail -f /path/to/app.log --pid12345 | grep -A 5 -B 5 $(date -d 1 minute ago %Y-%m-%d %H:%M)这个例子展示了如何将复杂问题拆解通过多次与 Whiz 交互来达成目标。4.3 场景三数据处理与快速分析任务你有一个巨大的access.logNginx 日志文件想快速找出访问量最高的前 5 个 IP 地址以及它们对应的总请求字节数。使用 Whizwz analyze access.log, count requests by IP address, sort by count descending, show top 5 IPs and their total bytes sent一个可能生成的、非常经典的 AWK 单行命令awk { ip$1; bytes$10; if(bytes ~ /^[0-9]$/) total[ip]bytes; count[ip] } END { for(ip in count) print count[ip], total[ip], ip } access.log | sort -nr | head -5这个命令展示了 Whiz 在生成复杂文本处理流水线方面的强大能力。对于不常写 AWK 的人来说这节省了大量查阅手册的时间。5. 常见问题、局限性与排查指南即使工具再强大理解其局限性和可能遇到的问题才能更好地驾驭它。5.1 常见错误与解决方案问题现象可能原因解决方案执行wz命令报command not found1. npm 全局安装路径未加入PATH。2. 安装失败。1. 检查 Node.js 和 npm 安装node -v,npm -v。2. 查找全局包路径npm list -g --depth0确认whiz_cli存在。3. 将 npm 全局路径加入PATHecho export PATH$PATH:$(npm get prefix)/bin ~/.zshrc source ~/.zshrc。Whiz 提示OPENAI_API_KEY is not set环境变量未正确设置或未生效。1. 检查是否已设置echo $OPENAI_API_KEY。2. 确认修改了正确的 Shell 配置文件.bashrc或.zshrc。3. 执行source命令或重启终端。4. Windows 用户检查系统环境变量是否包含空格或特殊字符。命令生成时间过长或超时1. 网络问题。2. 使用了gpt-4等慢速模型。3. OpenAI API 服务波动。1. 检查网络连接。2. 切换回gpt-3.5-turbo模型测试速度。3. 稍后重试或查看 OpenAI 状态页。生成的命令执行后报错或结果不对1. 你的请求描述有歧义。2. 模型误解了上下文如系统特定工具。3. 生成了不存在的命令标志。1.最重要的习惯永远先审查生成的命令2. 尝试更精确、更技术化的描述。3. 将错误信息反馈给 Whiz让它尝试修正。例如wz The command xxx failed with error ..., suggest a fix。API 调用返回认证错误API Key 无效、过期或额度不足。1. 登录 OpenAI 平台检查 API Key 是否有效、是否有余额。2. 重新生成一个 API Key 并更新环境变量。5.2 理解 Whiz 的局限性非实时系统感知Whiz 在生成命令时只知道你的 OS、Arch 和 Shell 类型并不知道你当前目录的具体文件、已安装的软件包、网络状态等实时信息。因此它可能生成一个需要特定工具如jq,ffmpeg的命令而你的系统并未安装。安全依赖用户交互确认是唯一的防线。Whiz 无法 100% 保证生成的命令绝对安全。像rm -rf /some/path或覆写重要文件的操作最终执行权在你手中。对涉及删除、移动、覆盖的命令要保持最高警惕。复杂逻辑的局限对于需要多轮交互、状态保持或复杂条件判断的任务例如一个需要根据前一步输出决定下一步操作的交互式脚本Whiz 难以通过单次请求完美生成。这类任务更适合拆解或手动编写脚本。成本与延迟依赖云端 API 意味着需要网络并会产生费用。虽然单次请求成本极低但高频使用仍需关注。此外网络延迟和模型响应时间使得它不适合用于需要极低延迟的自动化脚本中。5.3 提升使用效果的技巧迭代式交互不要期望一句话解决一个非常宏大的问题。采用“分步提问逐步推进”的策略。先让 Whiz 帮你完成第一步看到结果后再基于结果进行下一步提问。提供错误反馈当生成的命令报错时将错误信息复制下来作为新的请求的一部分输入给 Whiz它经常能给出有效的修正方案。学习命令而非依赖将 Whiz 视为一个高级学习工具。仔细看它生成的命令理解每个参数的含义。久而久之你会发现自己记住并掌握了更多命令这才是工具的终极价值。组合其他工具Whiz 可以和你已有的 Shell 别名、函数完美结合。你可以让 Whiz 生成一个复杂但常用的命令序列然后将其保存为别名或脚本方便日后一键执行。Whiz 为我打开了一扇新的大门它让我从记忆命令语法的负担中解脱出来更专注于想要达成的目标本身。它并非万能但在正确的使用方式和安全意识的护航下无疑是终端用户工具箱里一件极具威力的“杠杆”。它最大的意义或许在于降低了命令行世界的入门和精通门槛让更多人可以享受用文本和命令高效操控计算机的乐趣。

相关文章:

Whiz:基于AI的终端命令生成工具,提升开发效率

1. 项目概述:为你的终端装上“副驾驶”如果你和我一样,每天有超过一半的工作时间是在终端(Terminal)里度过的,那你一定也经历过这样的时刻:面对一个复杂的命令,需要反复查阅man手册;…...

如何快速部署开源实验室管理系统:面向中小型实验室的完整指南

如何快速部署开源实验室管理系统:面向中小型实验室的完整指南 【免费下载链接】senaite.lims SENAITE Meta Package 项目地址: https://gitcode.com/gh_mirrors/se/senaite.lims 在当今数字化时代,实验室管理面临着前所未有的挑战:如何…...

Loopi:本地优先的AI智能体自动化平台,打通大模型与真实世界操作

1. 项目概述:当AI拥有“双手”与“眼睛”如果你曾尝试将AI的能力与真实世界的操作结合起来,比如让AI自动帮你整理邮件、抓取网页数据并生成报告,或者搭建一个能自主处理客服工单的智能助手,你可能会发现一个巨大的鸿沟。一边是强大…...

Mesa 3.0:Python多智能体建模的架构革命与工程实践

Mesa 3.0:Python多智能体建模的架构革命与工程实践 【免费下载链接】mesa Mesa is an open-source Python library for agent-based modeling, ideal for simulating complex systems and exploring emergent behaviors. 项目地址: https://gitcode.com/gh_mirror…...

csp信奥赛C++高频考点专项训练之贪心算法 --【删数问题】:删数问题

csp信奥赛C高频考点专项训练之贪心算法 --【删数问题】:删数问题 题目描述 键盘输入一个高精度的正整数 nnn(不超过 250250250 位),去掉其中任意 kkk 个数字后剩下的数字按原左右次序将组成一个新的非负整数。编程对给定的 nnn 和…...

神经网络联合建模:分类与回归任务的高效解决方案

1. 神经网络在分类与回归联合任务中的应用价值在真实业务场景中,我们常常遇到需要同时预测离散类别和连续数值的问题。比如电商平台既要判断用户是否会点击商品(分类),又要预估点击后的停留时长(回归)&…...

深度解析:wxauto微信自动化框架的架构设计与实现原理

深度解析:wxauto微信自动化框架的架构设计与实现原理 【免费下载链接】wxauto Windows版本微信客户端(非网页版)自动化,可实现简单的发送、接收微信消息,简单微信机器人 项目地址: https://gitcode.com/gh_mirrors/w…...

DXVK 2.7.1:如何实现Linux游戏性能的终极突破与Vulkan图形转换技术

DXVK 2.7.1:如何实现Linux游戏性能的终极突破与Vulkan图形转换技术 【免费下载链接】dxvk Vulkan-based implementation of D3D8, 9, 10 and 11 for Linux / Wine 项目地址: https://gitcode.com/gh_mirrors/dx/dxvk 在Linux平台上运行Windows游戏一直面临着…...

游戏服务器分布式架构实战:cellmesh框架核心原理与应用

1. 项目概述:一个为游戏而生的分布式服务框架如果你在游戏服务器开发领域摸爬滚打过几年,大概率会对“服务拆分”和“通信治理”这两个词又爱又恨。爱的是,当你的在线玩家从几百人增长到几十万、上百万时,单体服务器架构必然崩溃&…...

SDF 文件深度解析

从格式解读到反标注实战,一文搞懂时序仿真的灵魂文件| 数字后端工程师必读 | STA & GLS 实战 | 避坑指南 |01 你的门级仿真,有没有踩过这些坑?做了几年芯片,最怕的不是综合报warning,也不是PR跑不完——而是门级仿…...

VSCode 2026远程文件同步提速412%:实测SSHFS+Rsync+DeltaFS三引擎协同优化方案

更多请点击: https://intelliparadigm.com 第一章:VSCode 2026远程文件同步提速412%:核心突破与技术背景 VSCode 2026 引入全新自适应增量同步引擎(AISE),彻底重构 Remote-SSH 和 Dev Containers 的文件同…...

nodejs 下国内最流行的框架

在国内企业、互联网公司、中小项目中,Node.js 最主流、使用最广泛的框架是:Express 和 NestJS,二者分属不同场景,占据绝对主导地位。一、按场景划分的主流排名1. 老牌通用王者:Express地位:国内最普及、生态…...

VCAM虚拟摄像头:安卓Xposed框架下的终极摄像头替换解决方案

VCAM虚拟摄像头:安卓Xposed框架下的终极摄像头替换解决方案 【免费下载链接】com.example.vcam 虚拟摄像头 virtual camera 项目地址: https://gitcode.com/gh_mirrors/co/com.example.vcam 在移动应用开发和内容创作领域,摄像头功能的重要性不言…...

缠论量化分析终极秘籍:从理论到实战的完整智能化解决方案

缠论量化分析终极秘籍:从理论到实战的完整智能化解决方案 【免费下载链接】Indicator 通达信缠论可视化分析插件 项目地址: https://gitcode.com/gh_mirrors/ind/Indicator 在金融市场的波动中,技术分析工具的质量直接影响着交易决策的精准度。今…...

字节开源trae-agent:Rust构建的高性能服务网格数据平面解析

1. 项目概述:一个现代服务网格数据平面的诞生最近在梳理服务网格生态时,我注意到了字节跳动开源的trae-agent。这个名字乍一看有点陌生,不像Envoy、Linkerd-proxy那样如雷贯耳,但深入了解后,我发现它代表了一种非常务实…...

AI老照片修复:Stable Diffusion技术实践与伦理考量

1. 老照片修复的艺术与技术挑战老照片承载着历史的记忆,但时间的流逝往往让这些珍贵的影像变得模糊、褪色甚至破损。作为一名长期从事数字影像修复的从业者,我深知传统修复方法需要耗费大量时间精力——在Photoshop中手动修复一张严重破损的照片可能需要…...

[嵌入式系统-267]:同一个型号的舵机如何支持Teacher模式和Student模式?如何设置?

在机械臂的“主从控制”(Teacher-Student)系统中,同一个型号的舵机完全可以同时支持两种模式。核心原理在于:模式不是由舵机硬件决定的,而是由控制器(主控板)赋予它的“角色”决定的。这就好比同…...

[嵌入式系统-266]:嵌入式系统软件常见十大难题与排查方法

在嵌入式开发中,我们常说“硬件是躯体,软件是灵魂”,但当灵魂出窍(程序跑飞)或者躯体僵硬(死机)时,排查工作往往令人头秃。结合最新的行业实战经验和经典理论,为你梳理了…...

[嵌入式系统-265]:什么是函数的可重入、什么是线程安全函数、什么是中断安全,举例说明

这三个概念是嵌入式和多线程编程中的基石,它们之间存在着严格的包含和递进关系。简单来说,它们的核心区别在于“在什么环境下被意外打断”以及“如何保护共享资源”。我们可以用一个形象的比喻来开场:可重入函数:像一个独行侠。他…...

从零实现C/C++内存管理库:轻量级内存泄漏检测与调试实践

1. 项目概述:一个极简内存管理库的诞生最近在整理一些C/C的老项目,发现很多代码里都散落着各种malloc和free,偶尔夹杂着new和delete。调试内存泄漏、野指针问题简直是一场噩梦,尤其是当项目规模稍大,或者多人协作时&am…...

深入解析Nuxt 3中的图标使用

在使用Nuxt 3开发应用时,图标的管理和使用是一个常见且关键的问题。本文将通过一个实际的例子,深入探讨如何在Nuxt 3应用中有效地管理和使用图标。 背景介绍 我们假设有一个Nuxt 3应用,采用了NuxtUI作为UI框架。为了避免图标名称的拼写错误和重复引用,我们创建了一个工具…...

基于PPO与CNN的DoomNet:从像素输入到游戏AI的深度强化学习实战

1. 项目概述:DoomNet,一个基于像素的强化学习智能体如果你对游戏AI或者深度强化学习感兴趣,那你大概率听说过DeepMind的Atari游戏AI,或者OpenAI的Dota 2智能体。这些项目通常需要庞大的计算资源和复杂的工程架构。今天我想分享一个…...

量子开发者的VSCode生死线,2026语法高亮失效?立即检测这4个隐藏配置项,错过将影响QPU编译精度!

更多请点击: https://intelliparadigm.com 第一章:量子开发者的VSCode生死线,2026语法高亮失效?立即检测这4个隐藏配置项,错过将影响QPU编译精度! 量子编程环境正经历一场静默崩溃:自2026年QDK…...

【VSCode 2026农业可视化插件首发指南】:5大核心能力+3类真实农田数据落地案例,仅限首批内测开发者获取

更多请点击: https://kaifayun.com 第一章:VSCode 2026农业可视化插件发布背景与核心定位 随着智慧农业加速落地,田间传感器、无人机遥感、气象站及IoT边缘设备每日产生TB级时空数据,但开发者长期受限于专业GIS工具门槛高、轻量级…...

机器学习算法核心六问:从原理到实战

1. 算法认知的六个黄金问题第一次接触机器学习算法时,我常被各种数学符号和术语淹没。直到导师告诉我:"任何算法本质上都是在回答六个核心问题。"这套方法帮我节省了数百小时的学习时间,现在我把这套方法论拆解给你。这六个问题就像…...

字节面试被问“Claude Code怎么做搜索”?答RAG后就没后续了

最近和在社区看到,有个求职者面试字节的时候,聊到了一些rag相关问题,正好这个求职者就说自己用过claude写代码,面试官就问他:那你知道Claude Code检索代码用的是什么方式吗?他说是RAG吧,现在不都…...

基于MCP协议的EVM区块链交互服务器:为AI智能体赋能Web3操作

1. 项目概述:为AI智能体打开区块链世界的大门 如果你正在构建一个AI智能体,并且希望它能像人类开发者一样,自由地查询以太坊上的余额、读取智能合约的状态,甚至帮你执行一笔代币转账,那么你很可能需要一个桥梁来连接A…...

RAG 实战:给 AI 接上私有知识库的完整方案

上一篇我们聊了 Agent 动态路由——任务交接时怎么把控流向。这次换个方向,聊一个大家问得最多的问题:怎么让 AI 能回答你自己公司的文档、产品手册、内部 Wiki? 你可能试过直接把文档塞进 System Prompt,结果 token 超限了。你也…...

ARM CP15协处理器架构与缓存控制技术详解

1. ARM CP15协处理器架构解析在ARMv7架构中,CP15协处理器承担着系统控制的核心职能。作为特权模式下才能访问的硬件模块,它通过一组专用寄存器实现对内存管理单元(MMU)、缓存子系统、TLB等关键组件的精细控制。与通用寄存器不同&a…...

小米手表表盘设计终极指南:用Mi-Create打造你的专属表盘

小米手表表盘设计终极指南:用Mi-Create打造你的专属表盘 【免费下载链接】Mi-Create Unofficial watchface creator for Xiaomi wearables ~2021 and above 项目地址: https://gitcode.com/gh_mirrors/mi/Mi-Create 还在为小米手表找不到心仪的表盘而烦恼吗&…...