Go Taskfile Workflow
このskillは、Taskfile.yamlを使ったGoプロジェクトの標準開発ワークフローを提供します。
対象プロジェクト
- •Go言語プロジェクト
- •Taskfile.yamlでビルド・テスト・Lintを管理
- •aquaで開発ツールを管理(オプション)
提供機能
ビルド
プロジェクトをビルドします。
bash
task build
出力先: bin/ディレクトリ(Taskfile定義に依存)
代替方法: 直接Go CLIを使用
bash
go build -o <output> .
テスト
全パッケージのテストを実行します。
bash
task test
代替方法: 直接Go CLIを使用
bash
go test ./...
コード品質管理
Lint(静的解析):
bash
task lint
通常、以下のツールを実行:
- •yamllint: YAML設定ファイル検証
- •golangci-lint: Go静的解析
Format(コードフォーマット):
bash
task format
gofmtを使用してGoコードを自動フォーマットします。
開発ツールのインストール
aqua管理のプロジェクトの場合:
bash
aqua install
タスク一覧
bash
task --list
使用方法
ユーザーから「ビルドして」「テストを実行」などの依頼があった場合:
- •
task buildまたはtask testを実行 - •エラーがあれば内容を報告
- •必要に応じてコードを修正
ワークフロー例
新機能開発時の標準フロー
- •コードを編集
- •
task format- コードフォーマット - •
task lint- 静的解析チェック - •
task test- テスト実行 - •
task build- ビルド確認
エラー修正時のフロー
- •
task testでテスト実行し、失敗箇所を特定 - •コードを修正
- •
task testで再テスト - •
task lintで静的解析チェック
トラブルシューティング
Task not found
bash
# Taskがインストールされていない場合 aqua install # またはTaskfileが存在しない場合 ls Taskfile.yaml
ビルドエラー
bash
# 依存関係の更新 go mod tidy go mod download # ビルドを再試行 task build
Lintエラー
bash
# 自動修正可能なものを修正 task format # 再度Lint実行 task lint
関連ドキュメント
- •プロジェクトのTaskfile.yaml: タスク定義の詳細
- •プロジェクトのCLAUDE.md: アーキテクチャと実装詳細