Skip to content

Commit f149bb2

Browse files
committed
feat(skills): add agent skill
1 parent ab45232 commit f149bb2

4 files changed

Lines changed: 158 additions & 0 deletions

File tree

README.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -133,6 +133,12 @@ engraph serve
133133

134134
Now Claude can search your vault, read notes, build context bundles, and create new notes — all through structured tool calls.
135135

136+
**AI Agent Skills** — Install the Engraph skills using the skills CLI (recommended):
137+
138+
```bash
139+
npx skills add devwhodevs/engraph
140+
```
141+
136142
**Enable HTTP REST API:**
137143

138144
```bash

skills/engraph/SKILL.md

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
---
2+
name: engraph
3+
description: Index and search document collections using hybrid semantic + graph + full-text search. Use when users need to search knowledge bases, find connections between documents, discover related content via link graphs, or query indexed markdown collections.
4+
license: MIT
5+
compatibility: Requires engraph CLI. Install via `brew install devwhodevs/tap/engraph` or from GitHub releases.
6+
metadata:
7+
author: jsynowiec
8+
version: "1.0.0"
9+
allowed-tools: Bash(engraph:*), mcp__engraph__*
10+
---
11+
12+
# Engraph — Hybrid Semantic & Graph Search for Document Collections
13+
14+
Local knowledge engine for markdown document collections. Combines semantic embeddings, full-text search (BM25), wikilink graph traversal, temporal scoring, and cross-encoder reranking.
15+
16+
## Status
17+
18+
!`engraph status 2>/dev/null || echo "Not installed: brew install devwhodevs/tap/engraph"`
19+
20+
## Indexing
21+
22+
```bash
23+
engraph index /path/to/documents # Incremental; only changed files re-embedded
24+
engraph index /path/to/documents --rebuild
25+
engraph status # File count, health, stats
26+
engraph clear # Drop cached data and models
27+
```
28+
29+
## Search
30+
31+
```bash
32+
engraph search "how does the auth flow work"
33+
engraph search "performance regressions last month" --explain
34+
engraph search "architecture decisions" -n 5 --json
35+
```
36+
37+
| Flag | Description |
38+
| ----------------- | ---------------------------------------------- |
39+
| `-n, --top-n <N>` | Number of results (default: from config or 10) |
40+
| `--explain` | Show per-lane RRF score breakdown |
41+
| `--json` | Machine-readable JSON output |
42+
43+
### Query Tips
44+
45+
- **Conceptual / vague**: Use natural language. The orchestrator classifies intent and boosts semantic weight automatically.
46+
- **Keyword-heavy**: Exact terms, identifiers, and names work well via the BM25 lane.
47+
- **Temporal**: "last week", "yesterday", "March 2026" — the temporal lane activates automatically.
48+
49+
## Graph Inspection
50+
51+
```bash
52+
engraph graph show "path/to/note.md" # Connections for a document
53+
engraph graph show "#docid" # By document ID
54+
engraph graph stats # Nodes, edges, density
55+
```
56+
57+
## Context Queries
58+
59+
```bash
60+
engraph context topic "authentication" --budget 8000
61+
engraph context who "Person Name"
62+
engraph context project "Project Name"
63+
engraph context vault-map # Collection structure overview
64+
engraph context health # Orphans, broken links, stale content, tag hygiene
65+
engraph context read "path/to/note.md" # Full content + metadata
66+
engraph context list --tag architecture # Filter by tag, folder, created_by, etc.
67+
```
68+
69+
## Setup
70+
71+
```bash
72+
engraph index /path/to/documents
73+
engraph search "your query"
74+
```
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
# Engraph HTTP REST API
2+
3+
Enable alongside MCP for web agents, scripts, and integrations:
4+
5+
```bash
6+
engraph serve --http # Default port 3000
7+
engraph serve --http --port 8080 --host 0.0.0.0
8+
engraph serve --http --no-auth # Local dev only (127.0.0.1)
9+
```
10+
11+
## Key Endpoints
12+
13+
| Method | Endpoint | Description |
14+
| ------ | ----------------------- | ---------------------------------------------------------------- |
15+
| POST | `/api/search` | Hybrid search with semantic + FTS5 + graph + reranker + temporal |
16+
| GET | `/api/read/{file}` | Read full document content + metadata |
17+
| GET | `/api/read-section` | Read specific section by heading |
18+
| GET | `/api/list` | List documents with tag/folder filters |
19+
| GET | `/api/vault-map` | Collection structure overview |
20+
| POST | `/api/context` | Rich topic context with token budget |
21+
| GET | `/api/health` | Collection health diagnostics |
22+
| POST | `/api/create` | Create new document |
23+
| POST | `/api/edit` | Section-level editing |
24+
| POST | `/api/rewrite` | Full body rewrite (preserves frontmatter) |
25+
| POST | `/api/edit-frontmatter` | Granular frontmatter mutations |
26+
27+
## Authentication
28+
29+
All HTTP requests require an API key via the `Authorization` header:
30+
31+
```bash
32+
curl -H "Authorization: Bearer eg_abc123..." http://localhost:3000/api/search \
33+
-H "Content-Type: application/json" -d '{"query": "architecture", "top_n": 5}'
34+
```
35+
36+
Generate keys:
37+
38+
```bash
39+
engraph configure --add-api-key # Interactive
40+
engraph configure --list-api-keys # List existing
41+
engraph configure --revoke-api-key # Revoke
42+
```
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
# Engraph MCP Server Setup
2+
3+
## Install
4+
5+
```bash
6+
brew install devwhodevs/tap/engraph
7+
engraph index /path/to/documents
8+
```
9+
10+
## Configure MCP Client
11+
12+
**Claude Code** (`~/.claude/settings.json`):
13+
14+
```json
15+
{
16+
"mcpServers": {
17+
"engraph": { "command": "engraph", "args": ["serve"] }
18+
}
19+
}
20+
```
21+
22+
**Claude Desktop** (`~/Library/Application Support/Claude/claude_desktop_config.json`):
23+
24+
```json
25+
{
26+
"mcpServers": {
27+
"engraph": { "command": "engraph", "args": ["serve"] }
28+
}
29+
}
30+
```
31+
32+
## HTTP Mode
33+
34+
```bash
35+
engraph serve --http # Port 3030
36+
```

0 commit comments

Comments
 (0)