Agent Skills by ALSEL
Anthropic Claudeドキュメント⭐ リポ 0品質スコア 50/100

go-documentation

Goのパッケージ・型・関数・メソッドのドキュメントを作成またはレビューする際に使用します。新しいエクスポートされた型・関数・パッケージを作成するときは、ユーザーが明示的に依頼しなくても積極的に適用してください。非エクスポートシンボルのコードコメントは対象外です(go-style-coreを参照)。

description の原文を見る

Use when writing or reviewing documentation for Go packages, types, functions, or methods. Also use proactively when creating new exported types, functions, or packages, even if the user doesn't explicitly ask about documentation. Does not cover code comments for non-exported symbols (see go-style-core).

SKILL.md 本文

Go ドキュメンテーション

利用可能なスクリプト

  • scripts/check-docs.sh — ドキュメントコメントが欠けている exported な関数、型、メソッド、定数、パッケージをレポートします。オプションについては bash scripts/check-docs.sh --help を実行してください。

新しいパッケージまたは exported 型のドキュメントコメントを書くときに、すべてのドキュメンテーション規約の完全なリファレンスが必要な場合は assets/doc-template.go を参照してください。


ドキュメントコメント

規範的: すべてのトップレベルの exported 名にはドキュメントコメントが必須です。

基本ルール

  1. 説明対象のオブジェクト名で始める
  2. 名前の前に冠詞("a", "an", "the")が続く場合もあります
  3. 完全な文を使用する(大文字で始まり、句読点で終わる)
// A Request represents a request to run a command.
type Request struct { ...

// Encode writes the JSON encoding of req to w.
func Encode(w io.Writer, req *Request) { ...

動作が自明でない unexported な型や関数にもドキュメントコメントを付けるべきです。

検証: ドキュメントコメントを追加した後、bash scripts/check-docs.sh を実行して exported シンボルがドキュメント欠けていないか確認してください。進める前にすべてのギャップを修正してください。


コメント文

規範的: ドキュメンテーションコメントは完全な文である必要があります。

  • 最初の単語を大文字で始め、句読点で終わる
  • 例外:識別子で明確な場合は小文字で始められます
  • 構造体フィールドの行末コメントはフレーズでも構いません

コメント行の長さ

勧告的: 約80文字を目安にしてください。ただし厳密な上限はありません。

句読点に基づいて改行してください。長い URL は分割しないでください。


構造体ドキュメンテーション

フィールドをセクションコメントでグループ化します。オプショナルフィールドはデフォルト値を示します:

type Options struct {
    // General setup:
    Name  string
    Group *FooGroup

    // Customization:
    LargeGroupThreshold int // optional; default: 10
}

パッケージコメント

規範的: すべてのパッケージは正確に1つのパッケージコメントを持つ必要があります。

// Package math provides basic constants and mathematical functions.
package math
  • main パッケージの場合はバイナリ名を使用してください:// The seed_generator command ...
  • 長いパッケージコメントの場合は doc.go ファイルを使用してください

パッケージレベルのドキュメント、main パッケージコメント、doc.go ファイル、または実行可能な例を書くときは references/EXAMPLES.md を参照してください。


ドキュメント化するもの

勧告的: 自明でない動作をドキュメント化し、自明な動作はスキップしてください。

トピックドキュメント化する場合...スキップする場合...
パラメータ自明でない動作、エッジケース型シグネチャの再述
コンテキスト標準的なキャンセル動作と異なる標準的な ctx.Err() 返却
並行処理あいまいなスレッド安全性(例:読み取りで変更)読み取り専用は安全、変更は安全でない
クリーンアップリソース解放を常にドキュメント化
エラーセンチネル値、エラー型(*PathError を使用)
名前付き戻り値同じ型の複数パラメータ、アクション指向の名前型だけで十分に明確

重要な原則:

  • コンテキストキャンセルが ctx.Err() を返すことは暗黙的です — 再述しないでください
  • 読み取り専用の操作はスレッド安全と想定;変更は安全でないと想定 — 再述しないでください
  • クリーンアップ要件を常にドキュメント化してください(例:Call Stop to release resources
  • エラー型ドキュメントではポインタを使用してください(*PathError)。正しい errors.Is/errors.As のため
  • ネイキッドリターンを有効にするためだけに結果を名前付けしないでください — 明確さ > 簡潔さ

関数ドキュメントコメント内でパラメータ動作、コンテキストキャンセル、並行処理安全性、クリーンアップ要件、エラー返却、または名前付き戻り値パラメータをドキュメント化するときは references/CONVENTIONS.md を参照してください。


実行可能な例

勧告的: テストファイル(*_test.go)で実行可能な例を提供してください。

func ExampleConfig_WriteTo() {
    cfg := &Config{Name: "example"}
    cfg.WriteTo(os.Stdout)
    // Output:
    // {"name": "example"}
}

例は Godoc でドキュメント化要素に添付して表示されます。

実行可能な Example 関数を書く場合、例の命名規約(Example vs ExampleType_Method)を選択する場合、またはパッケージレベルの doc.go ファイルを追加する場合は references/EXAMPLES.md を参照してください。


Godoc フォーマット

Godoc の見出し、リンク、リスト、またはコードブロックのフォーマット、非推奨通知のためのシグナルブースティング、またはローカルでのドキュメント出力プレビューをする場合は references/FORMATTING.md を参照してください。


クイックリファレンス

トピック重要なルール
ドキュメントコメント名前で始まり、完全な文を使用
行の長さ約80文字、可読性を優先
パッケージコメントパッケージあたり1つ、package 句の上
パラメータ自明でない動作のみドキュメント化
コンテキスト暗黙的な動作の例外をドキュメント化
並行処理あいまいなスレッド安全性をドキュメント化
クリーンアップリソース解放を常にドキュメント化
エラーセンチネルと型をドキュメント化(ポインタに注意)
テストファイルで実行可能な例を使用
フォーマット段落は空行、コードはインデント

関連スキル

  • 命名規約: ドキュメントコメントが説明する識別子の名前を選択する場合は go-naming を参照してください
  • テスト例: godoc に表示される実行可能な Example テスト関数を書く場合は go-testing を参照してください
  • リント強制: revive または他のリントを使用してドキュメントコメントの存在を強制する場合は go-linting を参照してください
  • スタイル原則: ドキュメンテーション冗長性と明確さ・簡潔さのバランスを取る場合は go-style-core を参照してください

ライセンス: Apache-2.0(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
cxuu
リポジトリ
cxuu/golang-skills
ライセンス
Apache-2.0
最終更新
不明

Source: https://github.com/cxuu/golang-skills / ライセンス: Apache-2.0

関連スキル

汎用ドキュメント⭐ リポ 4,820

nature-response

Nature系ジャーナルの原稿修正に対する査読者への回答文について、下書き、チェック、または修正を行うことができます。査読者からのコメント、編集者の決定文、修正指示、回答案の作成、または大幅修正・軽微修正の対応方法に関するご相談があれば、対応いたします。査読報告書や回答文作成のサポートが必要な場合にご利用ください。

by Yuan1z0825
OpenAIドキュメント⭐ リポ 61,249

microsoft-docs

公式のMicrosoft文書を参照して、Azure、.NET、Agent Framework、Aspire、VS Code、GitHubなど様々な分野の概念、チュートリアル、コード例を検索します。デフォルトではMicrosoft Learn MCPを使用し、learn.microsoft.com外のコンテンツについてはContext7およびAspire MCPを使用します。

by microsoft
Anthropic Claudeドキュメント⭐ リポ 299

API Documentation Lookup

このスキルは、ユーザーが「Effect APIを調べる」「Effectドキュメントを確認する」「Effect関数のシグネチャを探す」「Effect.Xは何をするのか」「Effect.Xの使い方」「Effect APIリファレンス」「Effectドキュメントを取得する」といった質問をした場合や、公式のEffect-TS APIドキュメントから特定の関数シグネチャ、パラメータ、使用例を調べる必要がある場合に使用します。

by majiayu000
汎用ドキュメント⭐ リポ 308

knowledge-base

このスキルは、ヘルプセンターのアーキテクチャ設計、サポート記事の執筆、検索とセルフサービスの最適化が必要な場合に活用できます。ナレッジベース、ヘルプセンター、サポート記事、セルフサービス、記事テンプレート、検索最適化、コンテンツ分類、ヘルプドキュメントの設計・管理に関するあらゆるタスクで動作します。

by mkurman
OpenAIドキュメント⭐ リポ 1,202

markdown

GitHub Flavored Markdown標準に従ったMarkdownファイルのフォーマットと検証ができます。自動的なlinting処理と手動による意味的なレビューを組み合わせることで、ファイルの品質を確保します。

by DaveSkender
Anthropic Claudeドキュメント⭐ リポ 363

claude-md-enhancer

CLAUDE.mdファイルをプロジェクトタイプに合わせて分析・生成・改善します。ベストプラクティス、モジュール設計対応、技術スタックのカスタマイズに対応しています。新規プロジェクトの立ち上げ、既存のCLAUDE.mdファイルの改善、またはAI支援開発の標準化を図る際にご活用ください。

by alirezarezvani
本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: cxuu · cxuu/golang-skills · ライセンス: Apache-2.0