Skill は、AI クライアントが参照する手順書です。パッケージ内に置いたままでは読み込まれないため、プロジェクトへインストールします(ウィンドウでインストールした Skill は、パッケージを更新したときに自動で新しい版へ書き直されます)。
Unity のメニューの TsukimiCode から Tsukimi MCP を開き、主ボタンを押すとインストールされます(クライアントの設定と一緒に書き込まれ、ウィンドウの全体は MCP サーバ で扱っています)。

| 場所 | 何をするか |
|---|
| Skill の行 | インストールの状態。どのクライアントからも同じ Skill を読む |
| 主ボタン | 同梱の Skill を .agents/skills/ と .claude/skills/ の 2 か所へインストールする。クライアントのチェックに関係なくインストールされる |
| More の Note in AGENTS.md の Add | タスクの内容にかかわらず常に読み込まれるファイルへ、短い注意書きを追加する |
| 文言 | 意味 |
|---|
up to date · shared by every client | 今の版の Skill がインストールされている |
out of date · shared by every client | 前の版の Skill がインストールされている。0.9.0 より前のウィンドウでインストールした物もこう出る |
out of date (changed by hand) · shared by every client | 前の版の Skill がインストールされていて、インストール後に手で変えたファイルがある |
not installed · shared by every client | インストールされていない |
source not found | パッケージの中に Skill の元のファイルが無い |
| |
|---|
| ファイル数 | 同梱の 19 ファイルを 2 か所へコピーするため 38 ファイル |
| 同名のファイルが既にあるとき | 前にインストールしたときのままなら、そのまま上書きします。インストール後に変わっている物は、一覧を表示して確認してから上書きします |
| 記録 | インストール先ごとに .tsukimi-installed.json を置き、インストールした版とファイルごとの中身の指紋を残します。パッケージを更新したときの書き直しは、この記録を見て決まります |
| 有効になる時点 | クライアントは起動時にしか読みません。押したあとに再起動します |
| 場合 | どうなるか |
|---|
| 時機 | Unity がスクリプトを読み込むとき(起動やパッケージの更新の後)。インストール先の記録の版が今の版と違うときだけで、同じ版では何もしない |
| インストールしたときのままのファイル | 新しい版の中身に書き直す |
| 新しい版で無くなったファイル | インストールしたときのままなら消す。手で変えてあれば残す |
| インストール後に手で変えたファイル | 書き直さずに残し、Console の警告で名指しする。置き換えるにはウィンドウの主ボタンを押す |
| 記録の無いインストール | 自動では書き直さない。0.9.0 より前のウィンドウでインストールした Skill には記録が無いので、最初の 1 回だけ主ボタンでインストールし直す(中身が今の版と同じなら、記録だけが作られる) |
| 書き直した後 | Console に 1 行出る。クライアントを再起動する |
AGENTS.md は、タスクの内容にかかわらず常に読み込まれるファイルです。追加されるのは「この言語は学習データに含まれないので、エラーを不具合と判断する前に inspect を実行すること」と、次の 3 つの Skill をいつ参照するか、の 2 点です。
| |
|---|
| 追記の操作 | ウィンドウの More を開き、Note in AGENTS.md の Add を押します |
| 変更範囲 | マーカーで囲まれた区間だけです。同じファイルに自分で書いた内容は保持されます |
| Skill との違い | Skill は該当するタスクのときだけ読み込まれ、AGENTS.md は常に読み込まれます |
| パッケージを更新したとき | 自動では書き直されません。Add を押し直すと、マーカーの間だけが今の版の文面になります |
| Skill | いつ読まれるか |
|---|
tsukimi | T# のコードを書く・直す・レビューするとき。TUKI の診断やコンパイルエラーが出たとき。「この書き方はできますか」に答える前と、「その書き方は無理」「コンパイラ側の不具合では」と結論しようとしたとき |
tsukimi-porting | UdonSharp 向けに書かれた既存のコードを T# へ移すとき。ワールド全体でも、Behaviour 1 つでも、解説記事から引用したコード片でも |
mochi | MoCHI のファイル(.mochi.xml)を書く・直す・レビューするとき。MoCHI の診断が出たとき。「MoCHI ではこう置けない」と言う前 |
| |
|---|
| 前提 | この言語は学習データに含まれないため、既知の知識で書かせず inspect の結果に従わせます |
| 求めること | 書いたコードを inspect に渡し、test が成功するまで完了と報告しないこと |
| 診断の読み方 | 原因の区分(origin)で分けます。subset は意図したエラーで、書き方を変えればコンパイルできます(MCP サーバ) |
| 報告の条件 | 「コンパイラ側の不具合では」と報告する前に確認する手順が定めてあります |
| 利用者が確認する点 | 完了の報告に inspect と test の結果が添えられているか |
付属の参照ファイルは 6 つです。
| ファイル | 中身 |
|---|
before-writing.md | 書き始める前に決めること。誤ると書き直しになる決定事項だけ |
beyond-csharp.md | 標準の C# に相当物が無い機能。知らなければ使うことを思いつけない機能 |
synchronization.md | 同期の各手段と、いずれも保証しないこと |
testing.md | compiles が真であることと、意図どおり動くことの違い |
reporting.md | コンパイラ側の不具合として報告してよい条件と、その書き方 |
reference-index.md | このリファレンスの全ページの索引(ページごとに 1 行の説明)。パッケージのビルド時点の索引をそのまま収録したもの |
| |
|---|
| 扱う範囲 | 移行前に何を測定するか、診断をどの順で解消するか、そして意味が変わってしまう修正 |
| 最初にすること | 変更を始める前に inspect で測ること |
| 修正の分類 | 修正が必要な構文と、不要な構文を区別します |
| 最もコストの大きい判断 | データを何に持たせるか(配列か、複数の Behaviour か) |
付属の参照ファイルは 2 つです。
| ファイル | 中身 |
|---|
already-works.md | そのまま動作する構文。使うのを避けた構文は診断を出さないため、「できない」という誤解は自然には解消されない |
rewrites.md | 修正が必要な構文。いずれも記載前に実際にコンパイルして確認してある |
| |
|---|
| 前提 | MoCHI は学習データに含まれないため、記憶で書かせず inspect の結果に従わせます |
| 確認の方法 | T# と同じ inspect に mochi の引数を渡します。ディスクのファイルを読むので、先に保存させます。保存していない本文は text と files で渡させます(MoCHI のリファレンス(試験中)) |
| 診断の読み方 | T# と同じく、原因の区分(origin)で分けます |
inspect で分からないこと | 見た目・光の当たり方・歩いたときの感じ。Unity で確認するよう求めます |
付属の参照ファイルは 8 つです。
| ファイル | 中身 |
|---|
markup.md | 受け付ける要素・属性・値。ここに無い物は、代わりに受け付ける物を挙げた診断でエラーになる |
components-audio.md | オーディオのコンポーネントの属性・型・書かなかったときの値 |
components-other.md | ほかの分類に入らないコンポーネントの、同じ内容 |
components-physics.md | 物理のコンポーネントの、同じ内容 |
components-rendering.md | 描画のコンポーネントの、同じ内容 |
components-textmeshpro.md | TextMeshPro のコンポーネントの、同じ内容 |
components-ui.md | UI のコンポーネントの、同じ内容 |
components-vrchat.md | VRChat のコンポーネントの、同じ内容 |