mcpField
P
pythia-comment

pythia-comment

github.com/thaildhe172591開発486 回インストール4 日前に更新
リポジトリ

pythia-comment について

pythia-commentは、pythiaでSQLファイルを編集する開発者向けのコメント規約です。日付・作者・変更内容をASCIIの1行で記し、説明はドキュメントやテストなど別の場所に置く方針です。

主な機能

  1. 01日付・作者・変更内容を1行で記載
  2. 02SQLとPL/SQLのコメントが対象
  3. 03ASCII文字を必須化
  4. 04説明を文書・テスト・コミットへ移動

活用シーン

  1. 01SQLの変更に短いコメントを追加
  2. 02保存コメントの文字化けを回避
  3. 03設計理由を仕様書やコミットに記録

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/thaildhe172591/pythia --skill pythia-comment

インストール後、Claude Code で/pythia-commentを入力して読み込まれたか確認します。

詳細

コメント — 1行で、または別の場所に

最初に宣言:「pythia-comment を使用します — 1行、日付 - 作成者 - 変更内容。」

**フェーズ:**実行 — ファイルに書き込む間、pythia apply がファイルを確認する前に適用されます

コメントは、コンパイラーによるチェックもテストによる確認も行われない変更の唯一の部分であり、 そのため、ここが最も劣化しやすい箇所です。1行なら次の書き換え後も残ります。段落は、次の読者が作業を始める前に反証しなければならない主張になってしまいます。

形式

-- 11/09/2026 - jdoe - source flag reads the mapping table, not the join

date - author - what changed の形式で、日付は DD/MM/YYYY とします。作成者には 開発者のハンドル名を使い、エージェントの名前は使いません。これを決めたのはエージェントではなく、 ツール名を記録した blame の履歴を追っても行き止まりになるためです。

PL/SQL と SQL では -- を使います。このスキルが扱うのはここまでです。pythia が適用する内容です。

ASCII のみを使用してください。 .sql ファイルを扱う一連の処理の一部は、今も ANSI として読み取ります。 その箇所にダイアクリティカルマークがあると、データベースに永続的に残るものが文字化けしてしまいます。 このため、ダイアクリティカルマークを使わないベトナム語表記は、まさにこの理由から定着したスタイルであり、 十分に適切なものです。

1行で

2行目が必要なら、そのコメントは入れる場所が違います。次の場所に移してください。

書こうとしていた内容置き場所
この形式にした理由と、そうしないと何が壊れるか.sql 成果物のヘッダーブロック
後戻りさせてはならないルールメッセージ付きのアサーションとして、テストまたは検証ツールに記述
決定内容と、採用しなかった選択肢仕様書またはチケット
変更内容とその理由を、履歴を読む人に伝える内容コミットメッセージ
ステートメントの動作どこにも書きません。ステートメントを見ればすでに分かります

コードから読み取れないことだけをコメントにします。落とし穴、決定事項、理由です。

してはいけないこと

  • 1つのステートメントの上に、複数行の説明ブロックを書くこと。
  • バナーや罫線、-- ==== section ====
  • 箇条書き、引用したエラーコード、インラインでの改訂履歴の調査。
  • ドキュメント代わりにコメントアウトしたコードを残すこと。削除してください。ジャーナルと VCS の両方が記録しており、どちらも現行のコードについて偽ることはありません。
  • 変更しないコードのコメントに手を入れること。それは別の差分であり、自分の変更を埋もれさせます。

完了する前に

追加したコメント行を数えてください。ステートメントあたり1行を超えるなら、削減ではなく書き換えです。

次に、コメントが実際にデータベースに反映されたことを確認してください。コメントは、2人目の書き手が気づかずに 削除しやすい種類の行です。確認には手間がかかりません。

select count(*) from all_source
 where owner = :owner and name = :name and text like :marker

プレビューに表示される pythia の外部で変更されました という警告も、この確認のもう半分です。pythia が最後に書き込んでからオブジェクトが変更されていると、この警告が表示されます。

コメント