メインコンテンツまでスキップ

AI アシスタント

自然言語でコードベースについて質問できます。

概要

ArchiCore AI アシスタントはコードベースを理解し、次のような質問に答えられます:

  • 「認証システムはどのように機能しますか?」
  • 「UserService を変更したら何が壊れますか?」
  • 「決済処理ロジックはどこにありますか?」
  • 「注文作成のデータフローを説明してください」

アシスタントの使用

Web インターフェース

  1. プロジェクトを選択
  2. チャットパネルに質問を入力
  3. コード参照付きの回答を取得

CLI

インタラクティブモードで質問を入力するだけです:

> ユーザー認証はどのように機能しますか?

このプロジェクトの認証システムは JWT トークンを使用しています。
仕組みは以下の通りです:

1. **ログインフロー** (src/auth/login.ts)
- ユーザーがメール/パスワードを送信
- データベースに対して認証情報を検証
- ユーザー ID 付きの JWT トークンを生成

2. **トークン検証** (src/middleware/auth.ts)
- authMiddleware() がヘッダーからトークンを抽出
- JWT_SECRET を使用してトークンを検証
- ユーザーをリクエストオブジェクトに付与

3. **セッション管理** (src/services/session.ts)
- セッションは Redis に保存
- デフォルトで 7 日間の有効期限
- リフレッシュトークンのサポート

主要ファイル:
- src/auth/login.ts:45-78
- src/middleware/auth.ts:12-34
- src/services/session.ts:23-56

API

curl -X POST https://api.archicore.io/api/v1/projects/:id/ask \
-H "Authorization: Bearer あなたの_API_KEY" \
-d '{"question": "認証はどのように機能しますか?"}'

質問の種類

アーキテクチャの質問

> このプロジェクトの全体的なアーキテクチャは?
> モジュールはどのように整理されていますか?
> どのデザインパターンが使用されていますか?

コードフローの質問

> ユーザーが注文するとどうなりますか?
> データは API からデータベースへどのように流れますか?
> /api/users のリクエストライフサイクルを追跡してください

影響の質問

> UserService を変更したら何が壊れますか?
> データベースモジュールに依存しているファイルは?
> 決済ロジックをカバーしているテストは?

場所の質問

> メール送信ロジックはどこですか?
> ユーザー登録を処理するファイルは?
> レート制限ミドルウェアを見つけてください

説明の質問

> processOrder() が何をするか説明してください
> なぜこの関数は再帰を使用していますか?
> キャッシュレイヤーの目的は何ですか?

より良い回答を得るためのヒント

具体的に

❌ 「どう動きますか?」
✓ 「ユーザー登録プロセスはどう動きますか?」

コンテキストを提供

❌ 「なぜ遅いですか?」
✓ 「src/api/products.ts の getProducts() 関数はなぜ遅い可能性がありますか?」

フォローアップを尋ねる

> 認証はどのように機能しますか?
[JWT トークンについての回答...]

> トークン検証のコードを見せてもらえますか?
[具体的なコードを表示...]

> トークンが期限切れの場合はどうなりますか?
[リフレッシュトークンフローを説明...]

言語サポート

アシスタントは質問と同じ言語で回答します:

> 認証はどのように機能しますか?

認証システムは JWT トークンを使用しています...

制限事項

AI アシスタントは:

  • インデックス済みのコードのみ知っている - まず /index を実行してください
  • コードを実行できない - 静的コードの分析のみ
  • 情報が古い可能性がある - 変更後に再インデックスしてください
  • プロジェクトに焦点を当てる - 外部ライブラリについては詳しく議論しません

プライバシー

  • 質問は AI モデルによって処理されます
  • コードのコンテキストは分析のために送信されます
  • コードは永続的に保存されません
  • 詳細はプライバシーポリシーをご覧ください