命令行界面
让你的 AI 代理管理你的图标字体。Bobcorn CLI 专为 AI 优先工作流设计 — 你的代理可以创建项目、导入图标、组织分组并导出字体,无需打开 GUI。
快速开始
Bobcorn CLI 让你可以完全通过终端管理图标字体项目。在 Bobcorn 应用的设置面板中安装——点击"命令行界面"部分的安装按钮。
安装后,打开一个新终端并验证:
验证安装bobcorn --version
提示
如果安装后找不到命令,请打开新的终端窗口。PATH 更改仅在新的 shell 会话中生效。
AI 代理用户
只需从 Bobcorn 的设置面板安装 CLI,然后告诉你的 AI 代理(Claude Code、Cursor、Copilot 等)运行 bobcorn --help --json 来发现所有可用命令。其余的交给代理处理。
项目自动发现
CLI 会自动检测当前目录中的 .icp 项目文件。你也可以显式指定路径。解析优先级为:
- 显式路径参数 — 直接传递给命令
--project标志 — 所有命令的全局选项- 自动发现 — 扫描当前目录中的
.icp文件
# 1. 显式路径参数
bobcorn project inspect my-icons.icp
# 2. 全局 --project 标志
bobcorn --project my-icons.icp icon list
# 3. 自动发现(从包含 .icp 文件的目录运行)
cd my-project/
bobcorn icon list
输出格式
默认情况下 CLI 输出人类可读的文本。添加 --json 可获得结构化 JSON 输出,非常适合脚本和 AI 代理集成。
JSON 信封结构
每个 JSON 响应都遵循一致的信封格式:
JSON 信封{
"ok": true,
"data": { ... },
"meta": {
"command": "icon list",
"projectPath": "/path/to/project.icp",
"duration_ms": 42,
"version": "1.0.0"
}
}
三种响应状态
| 状态 | ok | 说明 |
|---|---|---|
| 完全成功 | true |
操作完成。数据在 data 字段中。 |
| 部分失败 | true |
部分项目成功。检查 warnings 数组获取详情。 |
| 完全失败 | false |
操作失败。错误信息在 error 字段中,附带 code。 |
命令参考
项目
创建、查看和配置 .icp 项目文件。
# 创建新的空项目
bobcorn project create my-icons.icp --name "App Icons"
# 查看项目元数据(名称、前缀、图标/分组数量)
bobcorn project inspect
# 设置项目名称(同时设置字体前缀)
bobcorn project set-name "New Name"
# 设置字体前缀(set-name 的别名)
bobcorn project set-prefix "MyIcons"
# 将项目副本保存到新文件
bobcorn project save-as backup.icp
图标
导入、列出、重命名、移动、复制、删除和配置图标。所有图标引用使用 UUID——使用 icon list --json 来获取 ID。
# 导入 SVG 文件(自动分配 UUID 和 unicode 码位)
bobcorn icon import *.svg --group Navigation
# 列出所有图标(表格格式)
bobcorn icon list
# 以 JSON 格式列出分组中的图标
bobcorn icon list --group Navigation --json
# 重命名图标
bobcorn icon rename <id> new-name
# 移动图标到其他分组
bobcorn icon move <id1> <id2> --to "Other Group"
# 复制图标到另一个分组(分配新的 UUID)
bobcorn icon copy <id> --to "Backup"
# 删除图标(软删除,移至回收分组)
bobcorn icon delete <id>
# 设置 Unicode 码位(十六进制,PUA 范围 E000-F8FF)
bobcorn icon set-code <id> E100
# 用新文件替换图标 SVG 内容
bobcorn icon replace <id> new-icon.svg
# 将单个图标导出为 SVG 文件
bobcorn icon export-svg <id> --out ./exports
# 标记/取消标记图标为收藏
bobcorn icon set-favorite <id>
bobcorn icon set-favorite <id> --off
# 替换图标 SVG 内容中的颜色
bobcorn icon set-color <id> --from "#000" --to "#333"
# 输出原始 SVG 内容到标准输出
bobcorn icon get-content <id>
分组
将图标组织到命名分组中。分组控制侧边栏的显示顺序,可用于过滤导出。
分组命令# 列出所有分组
bobcorn group list
# 创建新分组
bobcorn group add "New Category"
# 重命名现有分组
bobcorn group rename "Old Name" "New Name"
# 删除分组(图标移至未分类)
bobcorn group delete "Empty Group"
# 设置显示顺序(按所需顺序列出分组)
bobcorn group reorder Navigation Actions Settings
# 设置分组描述(显示在侧边栏)
bobcorn group set-description Navigation "Main nav icons"
# 将图标移入分组(icon move 的替代方式)
bobcorn group move-icons Navigation <id1> <id2>
导出
生成字体文件和导出 SVG。字体导出支持 SVG、TTF、WOFF、WOFF2 和 EOT 格式,可选生成 CSS 和 JS 伴随文件。
导出命令# 导出指定格式的字体
bobcorn export font --out ./dist --formats woff2,ttf
# 使用自定义名称导出字体及伴随文件
bobcorn export font --out ./dist --font-name "MyIcons" --css --js
# 将所有图标导出为单独的 SVG 文件
bobcorn export svg --out ./svg-icons
# 仅导出特定分组的图标
bobcorn export svg --out ./svg-icons --group Navigation
注意
export icon 命令(栅格导出:PNG、JPG、WebP、PDF、ICO)支持平台预设(--preset ios、--preset android 等),但在 CLI 模式下尚未完全实现。
搜索和收藏
按名称搜索图标并管理收藏书签。
搜索和收藏# 按名称搜索图标
bobcorn search "arrow"
# 在分组内搜索并限制结果数量
bobcorn search "home" --group Navigation --limit 10
# 列出所有收藏图标
bobcorn favorite list
变体
管理图标的粗细和缩放变体(SF Symbols 风格)。变体生成需要 Bobcorn GUI,但你可以从 CLI 列出和删除变体。
变体命令# 列出图标的所有变体
bobcorn variant list <id>
# 删除图标的所有变体(保留基础图标)
bobcorn variant delete <id>
AI 代理集成
Bobcorn CLI 专为与 AI 编程代理(如 Claude Code、Codex、Cursor 等)无缝协作而设计。使用 --json 获取代理可以可靠解析的结构化输出。
核心原则
- 每个命令都支持
--json以获取机器可读的输出 - JSON 信封在所有命令中保持一致——代理可以依赖
ok/error/data结构 - 项目自动发现意味着代理只需
cd到项目目录即可运行命令,无需指定文件路径 - 错误码可预测:
ICON_NOT_FOUND、GROUP_NOT_FOUND、FILE_IO_ERROR等
代理工作流示例
AI 代理工作流# 代理创建项目
bobcorn project create app-icons.icp --name "MyApp" --json
# 代理导入 SVG
bobcorn icon import ./design/*.svg --json
# 代理组织分组
bobcorn group add "Navigation" --json
bobcorn group add "Actions" --json
# 代理搜索并移动图标
NAV_IDS=$(bobcorn search "nav" --json | jq -r '.data[].id')
bobcorn icon move $NAV_IDS --to "Navigation" --json
# 代理导出字体
bobcorn export font --out ./src/fonts --formats woff2 --json
完整工作流示例
以下是一个完整的端到端 bash 脚本,展示典型的图标字体工作流程:
完整工作流脚本#!/bin/bash
set -e
# 创建新项目
bobcorn project create my-app-icons.icp --name "MyApp"
# 从设计目录导入所有 SVG 图标
bobcorn icon import ./design/icons/*.svg
# 创建分组来组织图标
bobcorn group add "Navigation"
bobcorn group add "Actions"
bobcorn group add "Status"
# 搜索导航图标并移动它们
NAV_ICONS=$(bobcorn search "nav" --json | jq -r '.data[].id')
for id in $NAV_ICONS; do
bobcorn icon move "$id" --to "Navigation"
done
# 设置分组显示顺序
bobcorn group reorder Navigation Actions Status
# 导出生产用字体文件
bobcorn export font --out ./src/fonts --formats woff2 --css
# 也导出单独的 SVG 用于文档
bobcorn export svg --out ./docs/icons
echo "完成!字体文件在 ./src/fonts"
在 Bobcorn 中
CLI 使用与桌面应用相同的 .icp 项目文件。通过 CLI 所做的更改在 GUI 中打开项目时可见,反之亦然。这使得你可以轻松地使用 GUI 进行视觉设计工作,使用 CLI 进行自动化和 CI/CD 管道。