> For the complete documentation index, see [llms.txt](https://help.aikido.dev/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.aikido.dev/docs/docs-ja/kdo/add-extra-code-context.md).

# 追加のコードコンテキストを追加する

コードコンテキストは、Aikido があなたのチーム特有のコーディング慣行や例外を理解するのを助けます。コードベースに関するコンテキストを提供することで、Code Quality がプルリクエストをどのように分析するかを細かく調整でき、ノイズを減らして、レビューをチームの基準により関連性の高いものにできます。

### コードコンテキストとは？

コードコンテキストを使うと、チーム固有のコーディング規約、アーキテクチャ上の判断、一般的なベストプラクティスに対する許容される例外を Aikido に教えられます。これにより、Code Quality のコメントが一般的なものではなく、関連性が高く実行可能なものになります。

コードコンテキストは、チームの「暗黙知」— つまり、全員が知っているものの従来のリンティングルールには反映されない、文書化されていないルールや例外—を記録する方法だと考えてください。

### 一般的なコードコンテキストの例

#### パフォーマンスとアーキテクチャ上の判断

{% code overflow="wrap" %}

```
data-export-service リポジトリは、アーカイブ済みデータを処理する夜間バッチプロセッサです。ここでは意図的にデータベースインデックスを避けています。テーブルが追記専用であり、インデックスが一括挿入処理を遅くするためです。
```

{% endcode %}

#### ツール固有の例外

{% code overflow="wrap" %}

```
デバッグ用ログ出力や console.log ステートメントは、本番環境の問題をデバッグするために設計された CLI ツールである troubleshooting-utils リポジトリでは許容されます。
```

{% endcode %}

#### 内部ツール向けの緩和された基準

{% code overflow="wrap" %}

```
migrations/ フォルダ内のデータ移行スクリプトでは、行数制限を何度も超えています。これらは一度きりのスクリプトなので、これは許容されます。また、チームが使い方を知っているため、外部向けではないスクリプトでは厳格なエラー処理も適用しません。
```

{% endcode %}

#### インポート規約

{% code overflow="wrap" %}

```
@company/ui-components ライブラリからインポートする場合、ワイルドカードインポート（import * as）は許容されます。これは、すべてのコンポーネントを単一の名前空間として意図的にエクスポートしているためです。
```

{% endcode %}

#### ドキュメント要件

{% code overflow="wrap" %}

```
utils/ フォルダ内の内部ヘルパー関数には、緩和された JSDoc 要件が適用されます。完全なドキュメントが必要なのは、エクスポートされる公開 API のみです。
```

{% endcode %}

#### パフォーマンス最適化

{% code overflow="wrap" %}

```
リアルタイム処理モジュールのパフォーマンスが重要な関数は、@performance-critical と適切にコメントされていれば、特定の TypeScript の厳格チェックを省略できます。
```

{% endcode %}

### 追加のコードコンテキストを追加する方法

**手順 1.** その後、Splunk Cloud と Splunk Enterprise の両方でトークンを作成します: [Code Quality チェック](https://app.aikido.dev/code-quality/checks) ページを開き、Code Context をクリック

<figure><img src="https://715870456-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyKbzcQGrx7UtrG0nPZZ7%2Fuploads%2Fgit-blob-e135c6fab9fb2be2339429489e6166d9b0d1b02f%2Fimage.png?alt=media" alt=""><figcaption></figcaption></figure>

**手順 2.** クリック **Code Context を追加** 新しいコードコンテキストを追加するには。

**手順 3.** コードコンテキストを定義する

* チームの慣行や例外を説明する明確な説明を書いてください
* 適用範囲を選択：
  * **すべてのリポジトリ** - 組織全体に適用されます
  * **選択したリポジトリ** - 特定のリポジトリにのみ適用されます

<figure><img src="https://715870456-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyKbzcQGrx7UtrG0nPZZ7%2Fuploads%2Fgit-blob-86ab00ae720c2d6b99c6ce94b378d1235a6113c3%2Fimage.png?alt=media" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
**効果的なコンテキストの書き方のヒント**

**やること：**

* 例外がいつ、なぜ適用されるのかを具体的に説明する
* 特定のフォルダ、ファイルパターン、またはリポジトリを参照する
* アーキテクチャ上の判断の理由を説明する
* 明確で簡潔な表現を使う

**やらないこと：**

* 品質チェックの目的を損なう、範囲が広すぎる例外を作成する
* チェックのオン/オフで既に対応されている内容を重複して書く
* 適用範囲が明確でない曖昧な記述を書く
  {% endhint %}

### Code Context とカスタムコードルールの違い

どの機能をいつ使うべきかを理解するための簡単なガイドラインです

#### Code Context を使うとき：

* あなたは **許容される例外** 特定の領域におけるベストプラクティスに対して
* 〜する必要があるときは **既存のルールを調整する** 特定の状況に対して
* 〜したいときは **説明を提供する** アーキテクチャ上の判断について

#### カスタムコードルールを使うとき：

* 〜する必要があるときは **新しい基準を適用する** デフォルトのチェックではカバーされない
* 〜したいときは **特定のパターンを検出する** コードベース固有の
* 必要なのは **厳格な適用** 一貫した検出で
* 〜したいときは **PR をブロックする** 特定の違反に対して

## フィードバックを使って Code Context を生成する

プルリクエストから直接、追加のコードコンテキストを追加できます。@AikidoSec にフィードバックや説明をコメントするだけで、Aikido が自動的に処理し、今後のレビューの精度向上に役立てます。


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://help.aikido.dev/docs/docs-ja/kdo/add-extra-code-context.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
