Grepai Workspaces

yoanbernabeu/grepai-skills/skills/advanced/grepai-workspaces

作者 yoanbernabeu382d40261c0d41109c6e11872574ba0be9b064d0無授權條款收錄於 2026年10月9日更新於 2026年10月9日

Configure multi-project workspaces in GrepAI. Use this skill for monorepos and multiple related projects.

AI 產生的概覽

指導設定 GrepAI 工作區,將多個專案歸入同一個可搜尋索引。

功能
說明如何建立、加入專案、檢視、建立索引、搜尋與刪除用來歸組多個相關專案的 GrepAI 工作區。文件涵蓋工作區指令、workspace.yaml 設定檔、依專案篩選搜尋,以及為工作區設定 MCP 伺服器。也列出 monorepo、微服務與全端儲存庫等使用情境,以及常見問題與最佳實務。
適用情境
適用於處理 monorepo、微服務或多個需要一起搜尋的相關儲存庫時。也適合為某一組專案設定限定範圍的 GrepAI MCP 伺服器。
執行需求
需要 GrepAI 命令列工具及其 workspace、watch、search 與 mcp-serve 指令;需在 workspace.yaml 中設定嵌入模型供應者(例如 Ollama)。此技能不附帶指令碼。

GrepAI Workspaces

This skill covers using GrepAI workspaces to manage multiple related projects with a unified search index.

When to Use This Skill

  • Working with monorepos
  • Searching across multiple related projects
  • Managing microservices architecture
  • Organizing large codebases

What are Workspaces?

Workspaces allow you to:

  • Group multiple projects together
  • Search across all projects at once
  • Or search specific projects within the workspace
  • Share configuration across projects

Creating a Workspace

bash
grepai workspace create my-workspace

Output:

✅ Workspace 'my-workspace' created   Location: ~/.grepai/workspaces/my-workspace/
   Next: Add projects with 'grepai workspace add'

Adding Projects

bash
# Add first projectgrepai workspace add my-workspace /path/to/frontend
# Add more projectsgrepai workspace add my-workspace /path/to/backendgrepai workspace add my-workspace /path/to/shared-lib

Output:

✅ Added '/path/to/frontend' to workspace 'my-workspace'
   Projects in workspace:   1. frontend (/path/to/frontend)
   Run 'grepai watch --workspace my-workspace' to index all projects.

Listing Workspaces

bash
grepai workspace list

Output:

📁 Workspaces
1. my-workspace   - Projects: 3   - Status: Not indexed
2. work-projects   - Projects: 5   - Status: Indexed (updated 2h ago)

Viewing Workspace Details

bash
grepai workspace show my-workspace

Output:

📁 Workspace: my-workspace
Projects:1. frontend   Path: /path/to/frontend   Files: 450   Last indexed: 2025-01-28 10:30
2. backend   Path: /path/to/backend   Files: 320   Last indexed: 2025-01-28 10:30
3. shared-lib   Path: /path/to/shared-lib   Files: 85   Last indexed: 2025-01-28 10:30
Total: 855 files, 4,200 chunks

Indexing a Workspace

bash
# Index all projects in workspacegrepai watch --workspace my-workspace

Output:

🔍 Indexing workspace 'my-workspace'
   [1/3] frontend...         Found 450 files, 2,100 chunks   [2/3] backend...         Found 320 files, 1,500 chunks   [3/3] shared-lib...         Found 85 files, 600 chunks
   Total: 855 files, 4,200 chunks indexed   Watching for changes...

Background Indexing

bash
grepai watch --workspace my-workspace --background

Searching Workspaces

Search All Projects

bash
grepai search --workspace my-workspace "user authentication"

Results include project context:

Score: 0.89 | [backend] src/auth/middleware.go:15-45──────────────────────────────────────────func AuthMiddleware() ...
Score: 0.85 | [frontend] src/hooks/useAuth.ts:10-30──────────────────────────────────────────export function useAuth() ...
Score: 0.78 | [shared-lib] src/types/auth.ts:5-25──────────────────────────────────────────export interface AuthState ...

Search Specific Project

bash
grepai search --workspace my-workspace --project frontend "form validation"

Only searches the frontend project.

Workspace Status

bash
grepai workspace status my-workspace

Output:

📊 Workspace Status: my-workspace
Projects: 3Total files: 855Total chunks: 4,200Index size: 45 MB
Per-project breakdown:┌─────────────┬───────┬────────┬──────────┐│ Project     │ Files │ Chunks │ Updated  │├─────────────┼───────┼────────┼──────────┤│ frontend    │ 450   │ 2,100  │ 2h ago   ││ backend     │ 320   │ 1,500  │ 2h ago   ││ shared-lib  │ 85    │ 600    │ 2h ago   │└─────────────┴───────┴────────┴──────────┘
Daemon: Running (PID 12345)

Removing Projects from Workspace

bash
grepai workspace remove my-workspace /path/to/old-project

Deleting a Workspace

bash
grepai workspace delete my-workspace

This removes the workspace configuration but NOT the project files.

Workspace Configuration

Workspaces store config in ~/.grepai/workspaces/<name>/:

~/.grepai/workspaces/my-workspace/├── workspace.yaml    # Workspace config├── index.gob         # Combined index└── symbols.gob       # Combined symbols

workspace.yaml

yaml
name: my-workspacecreated: 2025-01-28T10:00:00Z
projects:  - name: frontend    path: /path/to/frontend  - name: backend    path: /path/to/backend  - name: shared-lib    path: /path/to/shared-lib
# Optional: override global config per workspaceembedder:  provider: ollama  model: nomic-embed-text
ignore:  - node_modules  - dist

MCP with Workspaces

Use workspaces with MCP servers:

json
{  "mcpServers": {    "grepai": {      "command": "grepai",      "args": ["mcp-serve", "--workspace", "my-workspace"]    }  }}

Use Cases

Monorepo

bash
# Full monorepogrepai workspace create monorepogrepai workspace add monorepo /path/to/monorepo/apps/webgrepai workspace add monorepo /path/to/monorepo/apps/mobilegrepai workspace add monorepo /path/to/monorepo/packages/uigrepai workspace add monorepo /path/to/monorepo/packages/core

Microservices

bash
# Related microservicesgrepai workspace create servicesgrepai workspace add services /path/to/user-servicegrepai workspace add services /path/to/order-servicegrepai workspace add services /path/to/payment-servicegrepai workspace add services /path/to/notification-service

Frontend + Backend

bash
# Full stackgrepai workspace create fullstackgrepai workspace add fullstack /path/to/frontendgrepai workspace add fullstack /path/to/backendgrepai workspace add fullstack /path/to/shared-types

Cross-Project Search Examples

Find All API Endpoints

bash
grepai search --workspace services "REST API endpoint handler"

Find Shared Type Usage

bash
grepai search --workspace fullstack "User interface definition"

Find Cross-Project Dependencies

bash
# What calls the shared auth library?grepai trace callers --workspace fullstack "validateToken"

Best Practices

  1. Name descriptively: ecommerce-stack not ws1
  2. Group related projects: Only projects that you'd search together
  3. One daemon per workspace: Run grepai watch --workspace
  4. Use project filter: When you know which project to search
  5. Update after major changes: Re-index after adding/removing files

Common Issues

❌ Problem: Workspace not found ✅ Solution: Check workspace exists: grepai workspace list

❌ Problem: Project paths changed ✅ Solution: Remove old path, add new path:

bash
grepai workspace remove my-workspace /old/pathgrepai workspace add my-workspace /new/path

❌ Problem: Search returns mixed results ✅ Solution: Use --project flag to filter:

bash
grepai search --workspace ws --project backend "query"

Output Format

Workspace overview:

📁 Workspace: my-workspace
Configuration:- Location: ~/.grepai/workspaces/my-workspace/- Created: 2025-01-28
Projects (3):┌─────────────┬──────────────────────────┬───────┐│ Name        │ Path                      │ Files │├─────────────┼──────────────────────────┼───────┤│ frontend    │ /path/to/frontend        │ 450   ││ backend     │ /path/to/backend         │ 320   ││ shared-lib  │ /path/to/shared-lib      │ 85    │└─────────────┴──────────────────────────┴───────┘
Commands:- Index: grepai watch --workspace my-workspace- Search: grepai search --workspace my-workspace "query"- Status: grepai workspace status my-workspace

來源與署名

來源:yoanbernabeu/grepai-skills位於skills/advanced/grepai-workspaces提交382d402

授權條款: 無授權條款

內容歸原作者所有。SourceWeft 從公開儲存庫中收錄這些內容。

檢舉或申請下架