Skip to main content

tag-maintenance

タグの親子オントロジー(source/_data/tag_ontology.yml)の整合性チェック・増分追記と、タグの名寄せ・統合の手順。タグ整理、名寄せ、タグ統合、オントロジー更新を頼まれたときに使う。

소스 정보

저장소
future-architect/future-architect.github.io
최근 소스 활동
2026년 8월 12일 22:48
감지된 SKILL.md 언어
일본어
스타
26
포크
22

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

파일 탐색기
2 개 파일

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
tag-maintenance
description
タグの親子オントロジー(source/_data/tag_ontology.yml)の整合性チェック・増分追記と、タグの名寄せ・統合の手順。タグ整理、名寄せ、タグ統合、オントロジー更新を頼まれたときに使う。
# タグメンテナンス ## 前提となる運用方針 (#2292) - **執筆者は具体タグだけ付ける。** daisyUI の記事に CSS / UI/UX を、S3 の記事に AWS を、 React の記事に JavaScript を付けるかの判断は執筆者に求めない (筆者がそのタグでの直接検索に引っかかりたい場合を除く) - 抽象への接続は `source/_data/tag_ontology.yml` の `broader` が肩代わりし、 `scripts/related_posts.js` が展開して関連記事を計算する - **バージョンタグは語幹と同義**。`Go1.27` を書けば `Go` も書いたのと同じ扱いに なる(`scripts/version_tags.js` がデータ層で語幹タグを注入。タグページ・件数・ 関連記事すべてに効く)。語幹を併記してもしなくてもよい - **辺を書く基準**: 「A の記事に B タグを打つのは冗長で打ちたくない」と筆者が感じる 自明な包含だけ書く(TypeScript 記事に JavaScript を打ちたくない、の肩代わり)。 Swift と iOS のような文脈次第の関係は書かず、筆者が直接タグで表明する。 迷ったら書かない - 共起・名前の形(Go1.26/Go1.27 の兄弟)から機械的に導出できる関係は `scripts/related_tags.js` が担うので書き写さない ## データ形式 ```yaml DynamoDB: broader: [AWS, NoSQL] # 複数可 Go: broader: [] # 検討済みの根は [] で明示(未登録=未検討と区別) ``` - 値は実在するタグでなくてもよい(`イベント` / `OS` など照合にだけ使う概念で可)。 ただし broader に書いた名前は必ず同ファイルにノードとして登録する - 関係タイプ(is-a / part-of)は区別しない。「より広い」だけを表す ## バージョン同義(broader とは別の意味論) `broader` は弱い接続(関連記事で減衰あり)、バージョン同義は等価(両方書いたのと同じ)。 3層で決まる: 1. **名前規則(自動)**: 「既存タグ名 + 末尾数字(ドット付き or 2桁以上)」は語幹と同義 (`Go1.27` → `Go`、`インターン2026` → `インターン`)。1桁の数字は `Web3` のような 「数字込みで別概念の名前」と区別できないため対象外(`Python3` は語幹を直接書く) 2. **versionOf(手動追加)**: 表記が語幹と一致しないものを明示する ```yaml Vue3: versionOf: Vue.js # broader は書かない(同義先に吸収される) ``` 3. **notVersion(手動除外)**: 名前規則に誤爆する名前が現れたら `notVersion: true` を付ける check.mjs が導出中の全ペアを `[INFO] バージョン同義:` として列挙するので、 新しいタグを増やしたら誤爆が無いか目視する。 ## 整合性チェック ```sh node .claude/skills/tag-maintenance/check.mjs ``` - `[ERROR]`(exit 1): broader 先の未登録、循環。**push 前に必ず解消する** - `[INFO]`: 未使用ノード、10記事以上で未登録のタグ(増分追記の候補)、 統合候補(記事集合がほぼ重複するタグのペア。オントロジーに登録済みの親子は除外済み) 補助情報として `/doctor/` ページ(ローカルビルドで生成)にもタグ・カテゴリの 機械判定一覧がある。 ## 増分追記の手順 チェックの「未登録」や新しいタグを見つけたら: 1. そのタグの記事を数本読み、より広い既存概念があるか判断する 2. あれば `broader: [親]`、独立した概念なら `broader: []` で追記する 3. 迷ったら書かない([] にする)。誤った親は関連記事を汚すが、無い親は何も壊さない 4. `node .claude/skills/tag-maintenance/check.mjs` でエラーが無いことを確認する ## 名寄せ・統合の手順 チェックの「統合候補」やタグの表記ゆれ(例: 入門 / 初心者向け)を統合するとき: 1. **本当に同義か確認する。** 片方がもう片方の狭い概念なら、統合ではなく `tag_ontology.yml` に親子として登録する(Go1.27 ⊆ Go は統合しない) 2. 同義なら残す側の表記を決め、消す側のタグを持つ全記事の frontmatter を書き換える 3. 消したタグのURLが外部から参照されている可能性があるため、`_config.yml` の `alias:` に旧タグページ → 新タグページの転送を追記する(IaC の前例 #2291) 4. `tag_ontology.yml` に旧タグのノードが残っていれば消し、broader で参照していた 箇所を新タグに付け替える 5. 書き換えた記事は `node_modules/.bin/textlint --fix <path>` を通す
GitHub에서 보기