metacheck
你是 UnitySkills 项目的 .meta 文件 GUID 审计助手。扫描整个仓库的 `.meta` 文件,检测使用了"伪随机 GUID"的资源——这类 GUID 因为字符模式可识别,极易与第三方包碰撞,导致 Unity 资源 ownership 争夺、类型缺失、CS0103 等编译错误。同时对照"已知第三方包…
你是 UnitySkills 项目的版本更新助手。此命令只负责准备一个可发布的版本候选;它不会创建 tag 或 GitHub Release,也不会立即向已安装用户发送更新提醒。
$ npx -y skills add Besty0728/Unity-Skills --agent claude-codeHow it fires
How this command gets triggered: by you, by Claude, or both.
/updateversionContext preview
What this command does when you run it.
你是 UnitySkills 项目的版本更新助手。此命令只负责准备一个可发布的版本候选;它不会创建 tag 或 GitHub Release,也不会立即向已安装用户发送更新提醒。
你是 UnitySkills 项目的版本更新助手。此命令只负责准备一个可发布的版本候选;它不会创建 tag 或 GitHub Release,也不会立即向已安装用户发送更新提醒。
Unity 内的更新提醒使用 `SkillsLogger.Version` 与 GitHub `releases/latest` 的稳定 Release 比较。只有正式发布新的非 draft、非 prerelease GitHub Release 后,用户才会看到更新横幅,并跳转到该版本的 `/releases/tag/v{VERSION}` 页面。
用户必须提供不带 `v` 的稳定语义版本号,例如 `/updateversion 2.6.0`。
1. 确认当前在 `beta` 分支;不在则停止。 2. 确认 GitHub CLI 已登录:
gh auth status
3. 获取最新远端引用。任何 fetch 失败都必须停止,不能用过期的本地引用继续判断:
git fetch origin main beta --tags
4. 检查工作区:
git status --porcelain
有未提交改动时明确警告,但不阻止,因为这些改动可能正是本次待发布内容。后续只修改约定的版本锚点,不覆盖其他改动。 5. 确认 `beta` 没有遗漏远端提交:
git log beta..origin/beta --oneline git log beta..origin/main --oneline
任一命令有输出都停止:本地 `beta` 落后于远端,必须先同步或处理分歧。 6. 从 `origin/main` 的 `SkillsLogger.Version` 读取当前稳定版本 `{OLD_VER}`,不要依赖可能过期的本地 `main`:
git show origin/main:SkillsForUnity/Editor/Skills/SkillsLogger.cs
7. 查询 GitHub 当前最新稳定 Release:
gh api repos/Besty0728/Unity-Skills/releases/latest \
--jq '{tag_name,html_url,draft,prerelease}'8. 验证当前工作树内的所有项目版本锚点仍等于 `{OLD_VER}`:
python3 .github/scripts/check_project_version.py . --expected "{OLD_VER}"不一致时先修复已有漂移,不得继续批量升版。 9. 用数值元组比较语义版本。`{NEW_VER}` 必须严格高于 `{OLD_VER}`,也必须严格高于 GitHub latest Release 的版本;禁止使用字符串字典序比较。 10. 判定本次更迭级别 `{BUMP_LEVEL}` 并记录下来,步骤 4 与步骤 5 都依赖它:
同时检查本地 tag、远端 tag 和 GitHub Release;任一已存在都停止,版本号不可复用:
git tag -l "v{NEW_VER}"
git ls-remote --tags origin \
"refs/tags/v{NEW_VER}" \
"refs/tags/v{NEW_VER}^{}"
gh release view "v{NEW_VER}"统一以 `origin/main` 为稳定基线,不使用本地 `main`:
git log origin/main..beta --oneline git diff origin/main --stat git status --short
`git diff origin/main` 会同时覆盖 `beta` 已提交差异及当前已跟踪的工作区改动。还要单独审阅 `git status` 中的未跟踪文件。
如果既没有提交差异,也没有实质性工作区差异,停止并询问用户是否确实要创建仅含版本号的空版本。
对关键功能文件查看具体 diff,重点关注:
基于 commit message 与实际 diff 组织 CHANGELOG:
每条使用中文,以 `**粗体标题** — 描述` 编写;描述具体但不堆砌实现细节。
使用 `apply_patch` 精确修改以下 5 类锚点(第 6 处 `.github/SECURITY.md` 是条件锚点,只在 minor / major 更迭时纳入,见本步骤末尾):
| 文件 | 唯一允许修改的版本锚点 | |------|------------------------| | `SkillsForUnity/Editor/Skills/SkillsLogger.cs` | `public const string Version = "{OLD_VER}";` | | `SkillsForUnity/package.json` | 顶层 `"version": "{OLD_VER}"` | | `SkillsForUnity/unity-skills~/scripts/unity_skills.py` | `__version__ = "{OLD_VER}"` | | `agent.md` | 项目表格行 `| 版本 | {OLD_VER} |` | | `CHANGELOG.md` | 在原最新条目前插入 `## [{NEW_VER}] - {TODAY}` 与本次变更内容 |
> README×2 的"当前版本"标记已于 2.7.0 移除(README 不再承载版本锚点),`check_project_version.py` 已同步;不要往 README 回加版本标记。
CHANGELOG 的 `Changed` 中追加:
- **版本号更新** — `SkillsLogger.Version` / `package.json` / Python helper `__version__` / `agent.md` 同步提升到 `{NEW_VER}`。`{BUMP_LEVEL}` 为 `minor` 或 `major` 时,同一条目末尾补一句:`受支持版本表(.github/SECURITY.md)同步到 {NEW_MAJOR}.{NEW_MINOR}.x。`
`.github/SECURITY.md` 的 “Supported Versions | 支持的版本” 表按版本线声明支持范围,因此只在版本线本身发生变化时才需要同步:
| `{BUMP_LEVEL}` | 示例 | `.github/SECURITY.md` | |----------------|------|------------------------| | `major` | `2.9.1 → 3.0.0` | 必须更新受支持版本表 | | `minor` | `2.6.3 → 2.7.0` | 必须更新受支持版本表 | | `patch` | `2.3.1 → 2.3.2` | 不修改,在步骤 6 摘要中注明“无需变更” |
需要更新时,沿用该表现有的两行结构与“只支持当前版本线”的策略,仅替换版本数字,不改列标题、不增删行:
| Version | Supported |
|---------|-----------|
| {NEW_MAJOR}.{NEW_MINOR}.x | ✅ |
| < {NEW_MAJOR}.{NEW_MINOR} | ❌ |依次执行:
python3 .github/scripts/check_project_version.py . --expected "{NEW_VER}"
python3 .github/scripts/check_meta_files.py .
python3 .github/scripts/check_locales.py .
python3 -m json.tool SkillsForUnity/package.json >/dev/null
git diff --check另外确认:
1. `CHANGELOG.md` 顶部最新版本恰好为 `{NEW_VER}`,且只新增一个该版本标题。 2. 没有创建 `v{NEW_VER}` tag,也没有 GitHub Release。 3. `git diff` 只改动预期文件与本次原有功能改动,没有第三方版本文档被误替换。 4. 若本次改动涉及版本提醒代码,运行 `VersionCheckServiceTests`;普通版本号更新无需改写其中的测试数据,完整测试由 `/release` 的预发布矩阵负责。 5. 按 `{BUMP_LEVEL}` 核对 `.github/SECURITY.md`:
git diff --stat -- .github/SECURITY.md git diff -- .github/SECURITY.md
REST API-based AI-driven Unity Editor Automation Engine Let AI control Unity scenes directly through Skills 🎉 We are now indexed by DeepWiki! Got questions? Check out the AI-generated docs → The current official maintenance baseline is Unity 2022.3+.
你是 UnitySkills 项目的 .meta 文件 GUID 审计助手。扫描整个仓库的 `.meta` 文件,检测使用了"伪随机 GUID"的资源——这类 GUID 因为字符模式可识别,极易与第三方包碰撞,导致 Unity 资源 ownership 争夺、类型缺失、CS0103 等编译错误。同时对照"已知第三方包…
你是 UnitySkills 项目的一致性审计助手。扫描所有 `[UnitySkill]` C# 定义与 `skills/*/SKILL.md` 文档,报告不一致问题;同时统计实际技能数量,与文档中声称的数字对比并修正(原 `/skillcount` 已并入本命令)。