SF Symbol generator — SF Symbol 生成器 — 从 SVG 生成 Xcode SF Symbol 资产目录
v1.0.0此技能从 SVG 文件生成 Xcode SF Symbol 资产目录 (.symbolset),用于添加自定义 SF Symbol。它创建 symbolset 文件夹、Contents.json 和 SVG 文件,支持原始和模板基于的工作流,确保 SVG 的 viewBox 和路径正确性,自动居中路径并注入推荐的 SF Symbol 模板。支持自定义资产目录输出位置。
1· 2,013·3 当前·3 累计
安全扫描
OpenClaw
安全
high confidence该技能内部一致于其声明目的:读取 SVG 文件,写入 Xcode .symbolset 到资产目录,无网络调用或凭证请求;主要风险是可能创建/覆盖项目目录中的文件。
评估建议
该技能似乎如其所言:解析 SVG 文件,创建 Xcode 资产目录中的 .symbolset。运行前:(1)审查包含的脚本(它们包含在捆绑包中,不进行网络调用),(2)在正确的项目目录中运行它们,或者设置 SFSYMBOL_ASSETS_DIR 避免意外写入,(3)如果您有同名的现有 symbolsets,请备份 Assets.xcassets/Symbols 文件夹,因为脚本将创建/覆盖文件夹和文件。没有证据表明使用凭证或数据外泄。...详细分析 ▾
✓ 用途与能力
名称/描述与实际行为匹配:脚本解析输入 SVG,可能注入模板 SVG,创建 <name>.symbolset 文件夹和 Contents.json 在 Assets.xcassets/Symbols 文件夹内。无不相关的凭证、二进制文件或服务请求。
ℹ 指令范围
运行时指令仅限执行包含的 shell/Node 脚本:验证和解析 SVG,定位或使用模板 SVG,并将文件写入指定资产目录。脚本读取您提供的文件系统路径(svg-path、可选模板和资产目录),可能读取 Assets.xcassets/Symbols 中的任何现有 .symbolset SVG。它们不执行网络请求或传输数据到其他地方。注意,脚本将在目标资产目录中创建/覆盖 <symbol-name>.symbolset,因此在预期的项目目录中运行或先备份现有资产。
✓ 安装机制
无安装规格;这是指令+脚本。包含的脚本是普通 Node.js 和 shell 脚本,不下载或提取远程代码。提供的文件中无包安装或外部 URL 获取。
✓ 凭证需求
该技能不请求任何秘密或凭证。它可选地尊重 SFSYMBOL_ASSETS_DIR 来定位资产目录;这与声明的目标合理成比例。没有其他环境变量或配置路径被引用。
✓ 持久化与权限
该技能不请求永久/始终启用的包含,并不修改其他技能或全局代理设置。其唯一的持久性是将文件(symbolset + Contents.json)写入目标资产目录,这对于构建时资产生成器是预期的。
安全有层次,运行前请审查代码。
运行时依赖
无特殊依赖
版本
latestv1.0.02026/1/19
SF Symbol 生成器技能初始发布。- 从 SVG 文件为 Xcode 生成 .symbolset 资产,创建必要的文件夹、Contents.json 和 SVG。- 支持原始和模板基于的工作流。- 验证和处理 SVG,确保正确的 viewBox 和路径使用。- 自动居中路径并注入推荐的 SF Symbol 模板。- 通过可选参数或环境变量允许自定义资产目录输出位置。
● 无害
安装命令 点击复制
官方npx clawhub@latest install sfsymbol-generator
镜像加速npx clawhub@latest install sfsymbol-generator --registry https://cn.clawhub-mirror.com
技能文档
SF Symbol 生成器
用法
您可以通过SFSYMBOL_ASSETS_DIR 覆盖默认的资产目录位置。
原始 symbolset (无模板注入)
./scripts/generate.sh [assets-dir]
:完整的符号名称(例如,custom.logo,brand.icon.fill)。:源 SVG 文件路径。(可选):Assets.xcassets/Symbols路径(默认为Assets.xcassets/Symbols或SFSYMBOL_ASSETS_DIR)。
模板基于的 symbolset (推荐)
./scripts/generate-from-template.js [template-svg] [assets-dir]
(可选):SF Symbols 模板 SVG 用于注入(默认为Assets.xcassets/Symbols中找到的第一个.symbolsetSVG,否则使用技能捆绑的模板)。
示例
./scripts/generate-from-template.js pi.logo /Users/admin/Desktop/pi-logo.svg
要求
- SVG 必须包含
viewBox。 - 使用 基于路径 的形状(路径是必需的;矩形受支持并转换为路径,但其他形状应转换为路径)。
- 优先使用 填充 形状(无笔画)以避免细线伪影。
工作流
- 验证 SVG 路径和 viewBox。
- 计算路径边界并在 SF Symbols 模板边距内居中。
- 将路径注入 SF Symbols 模板(超轻/常规/黑体)。
- 在资产目录的 Symbols 文件夹内创建
。.symbolset - 写入匹配的
Contents.json。
数据来源:ClawHub ↗ · 中文优化:龙虾技能库
OpenClaw 技能定制 / 插件定制 / 私有工作流定制
免费技能或插件可能存在安全风险,如需更匹配、更安全的方案,建议联系付费定制