원클릭으로
release
通用发布助手 —— 分析仓库的发布规则,缓存到 .omk/RELEASE_RULE.md,然后引导你完成发布
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
通用发布助手 —— 分析仓库的发布规则,缓存到 .omk/RELEASE_RULE.md,然后引导你完成发布
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
oh-my-kimi 的目录入口,包含面向 Kimi CLI 的 agent、skill、hook 与 MCP 套件,衍生自 oh-my-* 谱系。
面向密钥、注入、authz/authn、不安全 IO、依赖与数据外泄风险的安全评审
证据驱动的追踪通道,在 Kimi 的 Agent 工具中编排互相竞争的 tracer 假设
LLM Wiki —— 跨会话持续累积的 markdown 知识库(Karpathy 模型)
面向作家的 agentic 记忆系统 —— 跟踪人物、关系、场景与主题
跑只读的深度仓库分析,返回一份带置信度排序的综合结论,附具体文件引用、清晰区分证据与推断。当用户说 'analyze'、'investigate'、'why does'、'what's causing',或在提任何改动方案之前需要跨文件的有据解释时使用。
| name | release |
| description | 通用发布助手 —— 分析仓库的发布规则,缓存到 .omk/RELEASE_RULE.md,然后引导你完成发布 |
| level | 3 |
一个轻量、感知仓库的发布助手。首次运行时会检视项目与 CI 推导出发布规则,存到 .omk/RELEASE_RULE.md 以备后用,然后按这些规则带你完成一次发布。
/oh-my-kimi:release [version]
version 可选。省略时由 skill 询问。接受 patch、minor、major,或显式 semver,如 2.4.0。--refresh 即便缓存规则文件存在也强制重新分析仓库。检查 .omk/RELEASE_RULE.md 是否存在。
如果不存在(或传了 --refresh): 跑下面的完整仓库分析并写入文件。
如果存在: 读取文件。然后做一次快速 delta 检查 —— 扫描 .github/workflows/(或等价的 CI 目录:.circleci/、.travis.yml、Jenkinsfile、bitbucket-pipelines.yml、gitlab-ci.yml),看是否有比规则文件里 last-analyzed 时间戳更新的修改。如果相关 workflow 文件变了,对相应章节重跑分析并更新文件。报告变更内容。
检视仓库并回答下列问题。把答案写入 .omk/RELEASE_RULE.md。
package.json / pyproject.toml / Cargo.toml / build.gradle / VERSION 文件等里当前版本字符串的文件。scripts/release.*、Makefile release 目标、bump2version、release-it、semantic-release、changesets、goreleaser)。package.json 含 publishConfig 或 CI 里有 npm publish)、PyPI(pyproject.toml + twine / flit)、Cargo(Cargo.toml)、Docker(Dockerfile + push 步骤)、GitHub Packages、其他。v*)、手动 dispatch(workflow_dispatch)、合并到 main/master、release 分支合并、commit message 模式。CHANGELOG.md 或 CHANGELOG.rst?.github/release-body.md)在 tag 前提交?.github/workflows/(或等价位置)里是否存在发布 workflow?若无,标出并提议脚手架。.gitignore 条目阻止构建产物被提交?若无,标出。git tag --list 检查。若没有 tag,标出并解释最佳实践。.omk/RELEASE_RULE.md按此结构创建或覆盖文件:
# Release Rules
<!-- last-analyzed: YYYY-MM-DDTHH:MM:SSZ -->
## 版本来源
<!-- 文件列表 + 模式 -->
## 发布触发
<!-- 触发发布的方式 -->
## 测试门禁
<!-- 命令 + CI job 名 -->
## 注册表 / 分发
<!-- npm、PyPI、Docker 等 + 负责发布的 CI job -->
## 发布说明策略
<!-- 约定 + 文件 -->
## CI 工作流文件
<!-- 相关 workflow 文件路径 -->
## 首次设置缺口
<!-- 分析中发现的缺失项,或 "none" -->
如果用户提供了 version 参数,用它。否则:
patch、minor、major 各自会产生什么版本。校验选择的版本是合法的 semver 字符串。
根据发布规则给出一份清单。至少包括:
让用户确认后再继续,或在用户说「go ahead」时逐条执行。
帮用户写出好的发布说明。沿用仓库使用的约定。在没有检测到约定时的默认指引:
好的发布说明该满足:
New Features、Bug Fixes、Breaking Changes、Deprecations、Internal / Chores。示例条目格式:
### Bug 修复
- Fix session drop on token expiry (#123) — @contributor
如果仓库使用 Conventional Commits,从 git log <prev-tag>..HEAD --no-merges --format="%s" 按 commit 类型分组生成 changelog 草稿。展示给用户编辑。
用前面发现的规则,逐步执行:
git add <version files> CHANGELOG.md 并以 chore(release): bump version to vX.Y.Z 提交。git tag -a vX.Y.Z -m "vX.Y.Z"(注释 tag 优于 lightweight tag)。git push origin <branch> && git push origin vX.Y.Z。npm publish --access public、twine upload dist/*)。如果第 1f 步发现了缺口,给出具体帮助:
没有发布 workflow:
你的仓库没有发布 CI workflow。最常见的最佳实践是用一个由
v*tag push 触发的 GitHub Actions workflow,它可以:
- 跑测试
- 发布到 npm / PyPI 等
- 用你的发布说明创建 GitHub Release
要我为你的技术栈生成一份
.github/workflows/release.yml吗?
没有 git tag:
这看起来是首次发布。git tag 让 GitHub、npm 与其他工具理解版本历史。第 6 步会创建你的第一个 tag。
构建产物没 gitignore:
构建产物出现在 git 历史或没被 gitignore。这会让仓库膨胀并制造合并冲突。要我加进
.gitignore吗?
push 之后:
gh run list --workflow=<release workflow> --limit=3(如有 gh)。gh release view vX.Y.Z。报告成功或标出任何失败。
.omk/RELEASE_RULE.md 是本地缓存。如果你想把推导出的规则分享给团队,把它提交到仓库;如果你想让它保留在本地,加进 .gitignore。