grepai-init について
`grepai init` を使ってプロジェクトに GrepAI を初期設定するためのスキルガイドです。生成される設定やインデックス用ディレクトリ、既定値、プロジェクトや monorepo に合わせたカスタマイズ方法を説明します。
主な機能
- 01`.grepai/` ディレクトリと設定ファイルの作成
- 02既定の埋め込み・ストレージ設定の確認
- 03チャンク分割、監視、除外パターンの調整
- 04プロジェクトや monorepo のワークスペース設定
- 05初期化の検証またはリセット
活用シーン
- 01新規プロジェクトでの GrepAI セットアップ
- 02埋め込みまたはストレージ設定の変更
- 03生成物やベンダーコードの除外
- 04monorepo の初期化やプロジェクト設定のリセット
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ yoanbernabeu/ grepai-skills --skill grepai-initインストール後、Claude Code で/grepai-initを入力して読み込まれたか確認します。
詳細
GrepAI の初期化
このスキルでは、grepai init コマンドとプロジェクトの初期化について説明します。
このスキルを使う場面
- 新しいプロジェクトで GrepAI をセットアップするとき
grepai initによって作成されるものを確認するとき- 初期設定をカスタマイズするとき
- 初期化の問題をトラブルシューティングするとき
基本的な使い方
cd /path/to/your/project
grepai init
初期化によって作成されるもの
grepai init を実行すると、以下を含む .grepai/ ディレクトリが作成されます。
.grepai/
├── config.yaml # Configuration file
├── index.gob # Vector index (created by watch)
└── symbols.gob # Symbol index for trace (created by watch)
デフォルト設定
生成される config.yaml:
version: 1
embedder:
provider: ollama
model: nomic-embed-text
endpoint: http://localhost:11434
store:
backend: gob
chunking:
size: 512
overlap: 50
watch:
debounce_ms: 500
trace:
mode: fast
enabled_languages:
- .go
- .js
- .ts
- .jsx
- .tsx
- .py
- .php
- .c
- .h
- .cpp
- .hpp
- .cc
- .cxx
- .rs
- .zig
- .cs
- .pas
- .dpr
ignore:
- .git
- .grepai
- node_modules
- vendor
- target
- __pycache__
- dist
- build
デフォルト設定について
エンベッダーの設定
| 設定 | デフォルト | 用途 |
|---|---|---|
provider | ollama | ローカルでの埋め込み生成 |
model | nomic-embed-text | 768 次元のモデル |
endpoint | http://localhost:11434 | Ollama API の URL |
ストアの設定
| 設定 | デフォルト | 用途 |
|---|---|---|
backend | gob | ローカルファイルストレージ |
チャンク分割の設定
| 設定 | デフォルト | 用途 |
|---|---|---|
size | 512 | チャンクあたりのトークン数 |
overlap | 50 | コンテキストの重複分 |
監視の設定
| 設定 | デフォルト | 用途 |
|---|---|---|
debounce_ms | 500 | 再インデックス作成までの待機時間 |
除外パターン
デフォルトのパターンでは、以下が除外されます。
- バージョン管理:
.git - GrepAI のデータ:
.grepai - 依存関係:
node_modules、vendor - ビルド出力:
target、dist、build - キャッシュ:
__pycache__
初期化後のカスタマイズ
.grepai/config.yaml を編集してカスタマイズします。
埋め込みプロバイダーの変更
embedder:
provider: openai
model: text-embedding-3-small
api_key: ${OPENAI_API_KEY}
ストレージバックエンドの変更
store:
backend: postgres
postgres:
dsn: postgres://user:pass@localhost:5432/grepai
カスタム除外パターンの追加
ignore:
- .git
- .grepai
- node_modules
- "*.min.js"
- "*.bundle.js"
- coverage/
- .nyc_output/
モノレポでの初期化
モノレポでは、ルートで初期化します。
cd /path/to/monorepo
grepai init
または、ワークスペースを使って個別のインデックスを作成します。
grepai workspace create my-workspace
grepai workspace add my-workspace /path/to/project1
grepai workspace add my-workspace /path/to/project2
再初期化
リセットする必要がある場合:
# Remove existing config
rm -rf .grepai
# Re-initialize
grepai init
警告: これによりインデックスが削除されます。grepai watch を再実行する必要があります。
初期化の確認
初期化後、次のコマンドで確認します。
# Check config exists
cat .grepai/config.yaml
# Check status (will show no index yet)
grepai status
よくある問題
❌ 問題: .grepai がすでに存在する
✅ 解決策: 先に削除するか、既存の設定を編集します。
rm -rf .grepai && grepai init
❌ 問題: 設定は作成されたが、Ollama が実行されていない
✅ 解決策: grepai watch を実行する前に Ollama を起動します。
ollama serve
❌ 問題: 間違ったディレクトリで初期化した
✅ 解決策: .grepai を削除し、正しいディレクトリで初期化します。
ベストプラクティス
- プロジェクトのルートで初期化する: メインのコードがある場所で実行します
.grepai/を.gitignoreに追加する: インデックスはマシンごとに異なります- 除外パターンをカスタマイズする: 生成されたコードやベンダーコードを除外します
- 初期化後に設定を確認する: 使用する技術スタックに合わせて調整します
.gitignore への追加例
# GrepAI
.grepai/
出力形式
初期化が成功すると、次のように表示されます。
✅ GrepAI Initialized
Config: .grepai/config.yaml
Default settings:
- Embedder: Ollama (nomic-embed-text)
- Storage: GOB (local file)
- Chunking: 512 tokens, 50 overlap
Next steps:
1. Ensure Ollama is running: ollama serve
2. Start indexing: grepai watch
コメント
Markdown 対応