> 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).

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

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

### Code Context とは何ですか？

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

Code Context は、チームの「暗黙知」を記録する方法だと考えてください。つまり、チームメンバーなら誰でも知っているものの、従来の lint ルールには反映されていない、あの文書化されていないルールや例外です。

### Code Context の一般的な例

#### パフォーマンスとアーキテクチャに関する判断

{% code overflow="wrap" %}

```
私たちの data-export-service リポジトリは、アーカイブデータの夜間バッチ処理を行うものです。テーブルが追記専用であり、インデックスは一括挿入処理を遅くしてしまうため、ここでは意図的にデータベースのインデックスを使っていません。
```

{% endcode %}

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

{% code overflow="wrap" %}

```
デバッグ用に設計された CLI ツールである troubleshooting-utils リポジトリでは、デバッグログや console.log の記述は許容されます。
```

{% 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 %}

### 追加の Code Context を追加する方法

**手順 1.** 次へ移動します: [Code Quality Checks](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 を追加** 新しい code context を追加します。

**手順 3.** Code Context を定義する

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

<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 を生成する

プルリクエストから直接、追加の 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.
