コンテンツにスキップ

AutoFix用のカスタムコンテキスト

Aikidoでは、SASTルールに追加のカスタムコンテキストや指示を加えることで、AutoFixを好みに合わせて拡張できます。

一般的なユースケースは以下の通りです。

  • 特定のエラーハンドリングやログ出力ロジックの導入
  • カスタムコメントスタイルの追加
  • AutoFixへの単体テストの組み込み
  • コードリポジトリにない追加コンテキストの提供
  • AutoFixの適用範囲の絞り込み

SASTルールレベルのカスタムコンテキスト

Section titled “SASTルールレベルのカスタムコンテキスト”

SASTルール向けのCustom Code Contextに関する詳細なドキュメントはこちらをご覧ください。Aikidoは、課題のスキャン(AutoTriage)と修正(AutoFix)の両方でCustom Code Contextを使用します。

Custom Code Contextは、すべてのコードリポジトリに対して、またはリポジトリの一部に絞って設定できます。

グローバルカスタムコンテキスト

Section titled “グローバルカスタムコンテキスト”

リポジトリごとのカスタムコンテキスト

コードリポジトリ内のすべてのAutoFixルールにカスタムコンテキストを提供したい場合は、コードリポジトリの .aikido ファイルに以下を追加します(.aikido ファイルの詳細はこちらを参照)

autofix:
  fix_context:
    - path: aikido-autofix-all.md

この例が機能するには、aikido-autofix-all.md がリポジトリのルートに存在し、コンテキストの内容が含まれている必要があります。

言語ごとのカスタムコンテキスト

設定を特定の言語に絞り込むには、以下のようにします。

autofix:
fix_context:
- path: aikido-autofix-javascript.md
language: javascript

languageに指定できる値は以下の通りです。

  • .net
  • android
  • c
  • clojure
  • dart
  • elixir
  • go
  • ios
  • java
  • javascript
  • kotlin
  • php
  • python
  • ruby
  • rust
  • scala
  • swift
  • terraform
  • typescript
  • vb
  • yaml