name: fix-error description: Go のエラーを診断し修正する。「エラーを直して」「ビルドエラー修正」「コンパイルエラー」「Go のエラー修正」「ビルドが通らない」「テストが失敗」「lint エラー修正」などで起動。 allowed-tools: [Read, Write, Edit, Bash, Glob, Grep] context: fork agent: shiiman-go:error-analyzer
Fix Error
Go のエラーを診断し修正するスキル。
トリガー
- 「エラーを直して」「ビルドエラー修正」「コンパイルエラー」
- 「Go のエラー修正」「ビルドが通らない」「テストが失敗」「lint エラー修正」
実行内容
- エラーメッセージの解析
- 原因の特定
- 修正の実施
- 修正確認
Claude への指示
実行手順
-
エラー情報の収集
ユーザーがエラーメッセージを提供していない場合:
# ビルドエラー確認 go build ./... 2>&1 # テストエラー確認 go test ./... 2>&1 # lint エラー確認 golangci-lint run ./... 2>&1 -
エラー解析
エラーメッセージから以下を特定:
- ファイル名と行番号
- エラータイプ(コンパイル/ランタイム/lint)
- 具体的なエラー内容
-
原因特定
# 該当ファイルを読み込み Read ツールで該当箇所を確認 # 関連コードを検索 Grep ツールで定義や使用箇所を検索 -
修正実施
error-analyzer エージェントの知識を活用:
- コンパイルエラー: 型エラー、未定義、インポート
- ランタイムエラー: nil ポインタ、範囲外アクセス
- lint エラー: errcheck、staticcheck、gosimple
-
修正確認
go build ./... go test ./... golangci-lint run ./...
出力形式
## エラー修正完了
### 検出されたエラー
- 種類: {コンパイル/ランタイム/lint}
- 箇所: {ファイル名}:{行番号}
- 内容: {エラーメッセージ}
### 原因
{原因の説明}
### 修正内容
{修正した内容の説明}
### 確認結果
- ビルド: ✅ 成功
- テスト: ✅ 成功