DBeaverやNavicatなどの接続情報を取り込むWASM拡張の実装から、マニフェスト設定、ホスト連携、表示やプレビューの不具合調査まで扱います。
- 新しい接続インポーターを作りたいとき
- WASM拡張が表示されない原因を調べたいとき
- 接続プレビューの停止を調査したいとき
Navopの変更内容を中国語と英語でまとめ、CHANGELOG.mdを基準にGitHub ReleasesやR2のリリースノートを準備・確認するスキルです。
Use when working in the Navop repository on CHANGELOG.md, version-tag preparation, GitHub Releases, or R2 updater release notes, especially when bilingual Chinese and English notes must be generated, reviewed, synchronized, published, or verified.
実行スコア 未検証
インストール方法を見るNavopのリリースノートを中国語と英語で作成・確認し、リポジトリ直下の CHANGELOG.md を利用者向け情報の基準として扱います。対象バージョン、前のバージョン、変更を含む参照先、リリース日を確認したうえで、コミット内容や変更ファイルから利用者に関係する変更をまとめます。通常のリリースでは、タグを作る前にノートを CHANGELOG.md に反映し、抽出結果が元の文章と一致するかを確認します。GitHub ReleaseとR2の更新マニフェストには、この同じ項目が使われる想定です。
Navopのリリース準備で、中国語と英語の説明をそろえたいときに向いています。変更を利用者向けの内容に整理したい場合や、既存のリリースノートを変更履歴から再同期する場合にも役立ちます。タグ作成や公開の前に、必要な見出し、ダウンロード案内、比較リンクを確認する作業にも使えます。
CHANGELOG.md の項目を検証し、抽出内容と一致するか確認してください」Navopリポジトリでの作業を対象とします。タグ作成、コミット、プッシュ、公開は明示的な依頼がある場合に限ります。通常の公開ではリリースワークフローがGitHub ReleaseとR2のノートを反映します。
この紹介文は、公開されている SKILL.md をもとに AI(OpenAI Codex)が作成しました。正確な仕様は下の原文を確認してください。
インストールする前に、エージェントに与えられる指示の中身を確認できます。
Maintain Navop's repository-root CHANGELOG.md as the single source of truth for user-facing release notes. Generate a bilingual entry before creating the version tag. The Release workflows extract that tagged entry to set both the GitHub Release body and the R2 updater manifest's release_notes.
Do not treat GitHub or R2 as the primary editing surface. For a normal release, update and review CHANGELOG.md, commit it, and only then create the tag. Only edit an existing GitHub Release directly when the user explicitly asks for a manual synchronization or repair.
Work from the Navop repo root and confirm the remote points to feigeCode/navop:
rtk git status --short --branch
rtk git remote -v
rtk git tag --sort=-creatordate
rtk gh release list --limit 8
Confirm all four release inputs:
v0.10.1.v0.10.0.HEAD before tagging, or the target tag after it exists.2026-08-01.If the user names versions, use those exact versions. Otherwise infer the previous tag from the newest stable version tag, but do not invent the target version. Never create a tag, commit, push, or publish unless the user explicitly requested that operation.
Before writing notes, inspect recent Release style. Read the target Release only if it already exists:
rtk gh release view <previous-tag> --json tagName,name,body,publishedAt,url
rtk gh release view <older-tag> --json tagName,name,body,publishedAt,url
rtk gh release view <target-tag> --json tagName,name,body,publishedAt,url # existing release/repair only
If Navop has no established Release style yet, use this bilingual shape. Entries carry no ## 中文 / ## English language headings; each entry must include the CNB mirror download line:
### 更新内容
- ...
### 修复与优化
- ...
国内下载:如果 GitHub 下载较慢,可从 [CNB 镜像](https://cnb.cool/navop-dev/navop/-/releases/tag/<target-tag>) 下载桌面端安装包
---
### What's New
- ...
### Fixes and Improvements
- ...
**Full Changelog**: https://github.com/feigeCode/navop/compare/<previous-tag>...<target-tag>
For larger releases, add short overview paragraphs and extra sections only when prior style or commit volume justifies it.
Read commits and changed files:
TARGET_REF=HEAD # or the existing target tag
rtk git log --reverse --format='%H%n%s%n%b%n---END---' <previous-tag>.."$TARGET_REF"
rtk git diff --stat <previous-tag>.."$TARGET_REF"
rtk git diff --name-status <previous-tag>.."$TARGET_REF"
For unclear commits, inspect targeted diffs:
rtk git show --stat --oneline --find-renames <commit>
rtk git show --format=medium --find-renames <commit> -- <path>
Summarize user-facing behavior, not implementation trivia. Use categories:
更新内容: features, UX improvements, performance, workflow improvements.修复与优化: bug fixes, compatibility, stability, maintenance with user impact.What's New: faithful English version of 更新内容.Fixes and Improvements: faithful English version of 修复与优化.Include maintenance bullets only when visible in commits and useful to release readers. Keep internal refactors out unless they explain a visible behavior change.
Save the generated body to a temporary Markdown file first. Prefer /private/tmp on this machine:
NOTES=/private/tmp/navop-<target-tag>-release-notes.md
Create the file with normal editing tools, then review it:
rtk sed -n '1,240p' /private/tmp/navop-<target-tag>-release-notes.md
The notes file is incomplete unless every one of these items is present. Check each one before continuing:
### 更新内容 or ### 修复与优化)### What's New or ### Fixes and Improvements)国内下载:如果 GitHub 下载较慢,可从 [CNB 镜像](https://cnb.cool/navop-dev/navop/-/releases/tag/<target-tag>) 下载桌面端安装包
**Full Changelog**: https://github.com/feigeCode/navop/compare/<previous-tag>...<target-tag>
Run grep -F "cnb.cool/navop-dev/navop/-/releases/tag/<target-tag>" "$NOTES" and fail the entry if it returns nothing.
**Full Changelog**: https://github.com/feigeCode/navop/compare/<previous-tag>...<target-tag>
Upsert the reviewed body into CHANGELOG.md:
python3 script/changelog.py upsert \
--tag <target-tag> \
--date <YYYY-MM-DD> \
--notes-file "$NOTES" \
--changelog CHANGELOG.md
The tool inserts the newest version after <!-- NAVOP_RELEASES -->, preserves older entries, and replaces an existing target entry idempotently.
Extract it back before approving the entry:
EXTRACTED=/private/tmp/navop-<target-tag>-release-notes-from-changelog.md
python3 script/changelog.py extract \
--tag <target-tag> \
--changelog CHANGELOG.md \
--output "$EXTRACTED"
diff -u "$NOTES" "$EXTRACTED"
rtk git diff -- CHANGELOG.md
The extracted file must match the generated body. Small newline-only differences can be normalized, but content, headings, ordering, and compare URL must be identical.
Commit the reviewed changelog before tagging. script/release-tag.sh and script/bump-version.sh validate the target entry and fail before tagging if it is missing or malformed.
For normal releases, do not run gh release edit yourself:
script/changelog.py extract produces the GitHub Release body.updates/latest.json as release_notes.release_notes, depending on the selected update source.Tags older than the changelog infrastructure are legacy-only. Repair workflows may preserve an already-existing GitHub Release body, but they must not create a new changelog-less Release.
Only when explicitly asked to synchronize an existing GitHub Release, extract from CHANGELOG.md first and use that file:
EXTRACTED=/private/tmp/navop-<target-tag>-release-notes-from-changelog.md
python3 script/changelog.py extract \
--tag <target-tag> \
--changelog CHANGELOG.md \
--output "$EXTRACTED"
rtk gh release edit <target-tag> \
--title "Navop <target-tag>" \
--notes-file "$EXTRACTED"
Do not compose a different body directly in GitHub. If the desired text changes, update CHANGELOG.md first.
Always validate the local entry:
python3 script/changelog.py validate \
--tag <target-tag> \
--changelog CHANGELOG.md
If a GitHub Release was published or synchronized, run a fresh read:
rtk gh release view <target-tag> --json tagName,name,body,publishedAt,url
Verify:
tagName is the intended target tag.body contains the Chinese 更新内容 and English What's New sections, the CNB mirror download line, and the expected compare URL.CHANGELOG.md.If R2 was published, read its public updater manifest and verify:
version matches the target tag without the leading v.release_notes contains the same Chinese and English Markdown.Also check the working tree so unrelated local edits are not mistaken for release-note work:
rtk git status --short --branch
Report the changed changelog entry, whether it was committed/tagged/published, and the verification result. Never claim GitHub or R2 was updated unless a fresh remote read confirms it.
| Mistake | Correct Action |
|---|---|
| Using only Chinese notes | Publish matching Chinese and English sections. |
| Omitting the CNB mirror download line | Every entry must include the 国内下载 / CNB mirror line pointing at the exact target tag; grep the notes file for it before continuing. |
| Creating the tag before the changelog | Generate, review, and commit the target CHANGELOG.md entry first. |
| Editing GitHub and changelog separately | Treat CHANGELOG.md as authoritative and extract the GitHub body from it. |
| Omitting R2 notes | Confirm latest.json.release_notes is populated from the same extracted entry. |
| Assuming legacy repository details | Confirm the remote is feigeCode/navop and use Navop URLs, titles, and temp-file names. |
| Comparing the wrong tags | Confirm newest two tags or use user-specified tags before writing. |
| Listing raw commits | Group commits into release-reader categories. |
| Replacing a legacy Release accidentally | Only use the legacy fallback for an already-existing pre-changelog Release. |
| Claiming saved without verification | Validate locally and re-read each remote destination that was actually published. |
まだレビューはありません。使ってみた感想をお寄せください。
ログインなしで書き込めます。使ってみた感想、質問、動かなかった環境などを気軽にどうぞ。
まだコメントはありません。最初のコメントを書いてみませんか。
DBeaverやNavicatなどの接続情報を取り込むWASM拡張の実装から、マニフェスト設定、ホスト連携、表示やプレビューの不具合調査まで扱います。
GPUIアプリの開発で、キー操作や画面レイアウト、状態管理、イベント、テストなどのAPIや実装パターンを調べ、必要な知識を参照できます。
GPUIアプリのUIをgpui-componentで組み立てる際に、コンポーネントの選び方や状態管理、テーマ、レイアウト、操作設計、実装規約を確認できます。
onetcliのIPCデータベースドライバーを、マニフェストやJSON-RPCの契約に沿って設計・実装・レビューし、メタデータ、DDL、入出力や配布まで扱うスキルです。
起動中のNavopデスクトップアプリが公開するリソースや操作を、CLIから確認して実行できます。利用可能なツールや権限を調べ、承認に沿って処理を進めます。
既存の実装やデザイン規則に沿って、GPUIの新しいUIコンポーネントを設計・実装し、関連ドキュメントとストーリーも用意するスキルです。