mcpField
G
grepai-init

grepai-init

github.com/yoanbernabeuDevelopment20703 installsUpdated 38w ago
Repository

About grepai-init

A skill guide to initializing GrepAI in a project with `grepai init`. It explains the generated configuration and index directory, default settings, and ways developers can customize setup for a project or monorepo.

Key features

  1. 01Create the `.grepai/` directory and configuration
  2. 02Review default embedding and storage settings
  3. 03Adjust chunking, watching, and ignore patterns
  4. 04Set up a project or monorepo workspace
  5. 05Verify or reset initialization

Use cases

  1. 01Set up GrepAI in a new project
  2. 02Customize embedding or storage configuration
  3. 03Exclude generated and vendored files
  4. 04Initialize a monorepo or reset project setup

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/yoanbernabeu/grepai-skills --skill grepai-init

After installing, type/grepai-initin Claude Code to confirm it loaded.

Details

From the project README

GrepAI Init

This skill covers the grepai init command and project initialization.

When to Use This Skill

  • Setting up GrepAI in a new project
  • Understanding what grepai init creates
  • Customizing initial configuration
  • Troubleshooting initialization issues

Basic Usage

cd /path/to/your/project
grepai init

What Init Creates

Running grepai init creates the .grepai/ directory with:

.grepai/
├── config.yaml    # Configuration file
├── index.gob      # Vector index (created by watch)
└── symbols.gob    # Symbol index for trace (created by watch)

Default Configuration

The generated 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

Understanding Default Settings

Embedder Settings
SettingDefaultPurpose
providerollamaLocal embedding generation
modelnomic-embed-text768-dimension model
endpointhttp://localhost:11434Ollama API URL
Store Settings
SettingDefaultPurpose
backendgobLocal file storage
Chunking Settings
SettingDefaultPurpose
size512Tokens per chunk
overlap50Overlap for context
Watch Settings
SettingDefaultPurpose
debounce_ms500Wait time before re-indexing
Ignore Patterns

Default patterns exclude:

  • Version control: .git
  • GrepAI data: .grepai
  • Dependencies: node_modules, vendor
  • Build outputs: target, dist, build
  • Cache: __pycache__

Customizing After Init

Edit .grepai/config.yaml to customize:

Change Embedding Provider
embedder:
  provider: openai
  model: text-embedding-3-small
  api_key: ${OPENAI_API_KEY}
Change Storage Backend
store:
  backend: postgres
  postgres:
    dsn: postgres://user:pass@localhost:5432/grepai
Add Custom Ignore Patterns
ignore:
  - .git
  - .grepai
  - node_modules
  - "*.min.js"
  - "*.bundle.js"
  - coverage/
  - .nyc_output/

Init in Monorepos

For monorepos, init at the root:

cd /path/to/monorepo
grepai init

Or use workspaces for separate indices:

grepai workspace create my-workspace
grepai workspace add my-workspace /path/to/project1
grepai workspace add my-workspace /path/to/project2

Re-Initialization

If you need to reset:

# Remove existing config
rm -rf .grepai

# Re-initialize
grepai init

Warning: This deletes your index. You'll need to re-run grepai watch.

Verifying Initialization

After init, verify with:

# Check config exists
cat .grepai/config.yaml

# Check status (will show no index yet)
grepai status

Common Issues

❌ Problem: .grepai already exists ✅ Solution: Delete it first or edit existing config:

rm -rf .grepai && grepai init

❌ Problem: Config created but Ollama not running ✅ Solution: Start Ollama before running grepai watch:

ollama serve

❌ Problem: Wrong directory initialized ✅ Solution: Remove .grepai and init in correct directory

Best Practices

  1. Init at project root: Where your main code lives
  2. Add .grepai/ to .gitignore: Index is machine-specific
  3. Customize ignore patterns: Exclude generated/vendored code
  4. Review config after init: Adjust for your stack

Example .gitignore Addition

# GrepAI
.grepai/

Output Format

After successful initialization:

✅ 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

Comments

Markdown supported