Initial commit: Multi-repository role-based knowledge graphs

This commit is contained in:
Kimi Claw
2026-02-19 04:11:57 +08:00
commit 3720b9e325
19 changed files with 1218 additions and 0 deletions
+136
View File
@@ -0,0 +1,136 @@
# Multi-Repository Role-Based Knowledge Graphs
## Overview
Terraphim supports **role-specific knowledge graphs** for different repositories/projects.
## Role Configuration
Each role can have:
- **Unique thesaurus** - Domain-specific synonyms
- **Custom haystacks** - Repository-specific search paths
- **Different embeddings** - Controlled embedding strategies
- **Access control** - Public/private settings
## Example Roles
### 1. Terraphim AI Developer
```json
{
"name": "Terraphim AI Developer",
"kg": {
"knowledge_graph_local": {
"path": "terraphim-ai/kg"
}
},
"haystacks": [
{ "location": "terraphim-ai/crates", "service": "Ripgrep" },
{ "location": "terraphim-ai/docs", "service": "Ripgrep" }
],
"extra": {
"embeddings_model": "local",
"synonym_depth": "deep"
}
}
```
**Thesaurus Concepts:**
- Rust (rust, cargo, tokio, async)
- Knowledge Graph (kg, thesaurus, ontology)
- Agent (ai, assistant, claude, llm)
- Search (retrieval, query, find)
- Role (persona, expert, engineer)
### 2. OpenClaw Developer
```json
{
"name": "OpenClaw Developer",
"kg": {
"knowledge_graph_local": {
"path": "openclaw/kg"
}
},
"haystacks": [
{ "location": "openclaw/src", "service": "Ripgrep" },
{ "location": "openclaw/docs", "service": "Ripgrep" }
],
"extra": {
"embeddings_model": "local",
"synonym_depth": "standard"
}
}
```
**Thesaurus Concepts:**
- TypeScript (ts, js, node, npm)
- Gateway (server, api, websocket)
- Channel (telegram, discord, slack)
- Skill (tool, capability, extension)
- Config (configuration, settings, json)
### 3. Learning Capture
```json
{
"name": "Learning Capture System",
"kg": {
"knowledge_graph_local": {
"path": "~/.config/terraphim/docs/src/kg"
}
},
"haystacks": [
{ "location": "~/.local/share/terraphim/learnings", "service": "Ripgrep" },
{ "location": "~/.openclaw/workspace/memory", "service": "Ripgrep" }
],
"extra": {
"embeddings_model": "local",
"synonym_depth": "deep",
"synonym_expansion": true
}
}
```
**Thesaurus Concepts:** (20 groups)
- Knowledge, Configuration, Git, AI Assistant
- Tool, Storage, Context Management, Retrieval
- Failure, Documentation, Programming Languages
- Testing, Security, Performance, Build
- Execution, Debugging, Repair
## Embeddings Control
| Role | Model | Depth | Use Case |
|------|-------|-------|----------|
| Terraphim AI | local | deep | Complex reasoning |
| OpenClaw | local | standard | Balanced |
| Last30Days | none | basic | Simple lookup |
| System Operator | none | minimal | Log analysis |
| Learning Capture | local | deep | Semantic memory |
## Switching Roles
```bash
# List available roles
terraphim-agent roles list
# Switch to specific role
terraphim-agent roles select "LearningCapture"
# Search within current role
terraphim-agent learn query "setup"
```
## Benefits
1. **Isolation** - Each repo has its own KG
2. **Specialization** - Domain-specific synonyms
3. **Performance** - Controlled embedding scope
4. **Privacy** - Public/private KG settings
5. **Flexibility** - Different search strategies per role
## Files Created
- `~/.config/terraphim/multi_repo_roles.json` - Role definitions
- `~/.config/terraphim/kg/terraphim-ai/` - Terraphim AI KG
- `~/.config/terraphim/kg/openclaw/` - OpenClaw KG
- `~/.config/terraphim/kg/last30days/` - Last30Days KG
- `~/.config/terraphim/kg/system/` - System Operator KG
+179
View File
@@ -0,0 +1,179 @@
# Terraphim Knowledge Graph Configuration
Multi-repository role-based knowledge graphs with controlled embeddings.
## Overview
This repository contains knowledge graph configurations for different projects/roles, enabling:
- Repository-specific semantic search
- Domain-specific synonym expansion
- Controlled embedding strategies
- Isolated knowledge domains
## Structure
```
.
├── multi_repo_roles.json # Role definitions
├── KG_ROLES.md # Documentation
└── kg/ # Knowledge graphs per role
├── terraphim-ai/ # Terraphim AI (Rust)
├── openclaw/ # OpenClaw (TypeScript)
├── last30days/ # Last30Days skill
├── system/ # System Operator
└── terraphim-engineer/ # Default engineer role
```
## Roles
### 1. Terraphim AI Developer
- **Focus**: Rust-based AI assistant development
- **Thesaurus**: Rust, Knowledge Graph, Agent, Search, Role
- **Embeddings**: local (deep)
### 2. OpenClaw Developer
- **Focus**: TypeScript gateway and agent platform
- **Thesaurus**: TypeScript, Gateway, Channel, Skill, Config
- **Embeddings**: local (standard)
### 3. Last30Days Skill Developer
- **Focus**: Claude Code skill for web research
- **Thesaurus**: Research, Reddit, Twitter/X, Web, Claude
- **Embeddings**: none (basic)
### 4. System Operator
- **Focus**: System administration and operations
- **Thesaurus**: Logs, Config, Service, Network, Security
- **Embeddings**: none (minimal)
### 5. Learning Capture
- **Focus**: Personal knowledge and learning capture
- **Thesaurus**: 20 concept groups (knowledge, config, git, etc.)
- **Embeddings**: local (deep)
### 6. Terraphim Engineer (Default)
- **Focus**: General engineering tasks
- **Thesaurus**: Comprehensive 20-group thesaurus
- **Embeddings**: local (deep)
## Usage
### Installation
```bash
# Clone to Terraphim config directory
git clone https://git.terraphim.cloud/kimie05c34be198a20b9/terraphim-kg-config.git ~/.config/terraphim/kg-config
# Or copy files manually
cp -r kg/* ~/.config/terraphim/kg/
cp multi_repo_roles.json ~/.config/terraphim/
```
### Configuration
Update `~/.config/terraphim/settings.toml`:
```toml
role_config = "~/.config/terraphim/multi_repo_roles.json"
default_role = "LearningCapture"
```
### Switching Roles
```bash
# List roles
terraphim-agent roles list
# Select role
terraphim-agent roles select "Terraphim AI Developer"
# Query with synonym expansion
terraphim-agent learn query "rust"
```
## Thesaurus Format
Each thesaurus is a JSON file mapping terms to canonical concepts:
```json
{
"name": "Role Name",
"data": {
"term1": { "id": 1, "nterm": "concept" },
"term2": { "id": 1, "nterm": "concept" },
"term3": { "id": 2, "nterm": "concept2" }
}
}
```
## Embeddings Control
| Role | Model | Depth | Use Case |
|------|-------|-------|----------|
| Terraphim AI | local | deep | Complex reasoning |
| OpenClaw | local | standard | Balanced |
| Last30Days | none | basic | Simple lookup |
| System Operator | none | minimal | Log analysis |
| Learning Capture | local | deep | Semantic memory |
## Synonym Groups
### Knowledge (ID: 1)
learning, knowledge, lesson, insight, discovery
### Configuration (ID: 2)
setup, configuration, install, deployment, initialize
### Git (ID: 3)
gitea, git, github, repository, version control
### AI Assistant (ID: 4)
terraphim, ai assistant, agent, claude, kimi
### Tool (ID: 5)
skill, tool, capability, function, feature
### Storage (ID: 6)
memory, storage, persistence, database
### Context Management (ID: 7)
arscontexta, onecontext, context, progress
### Retrieval (ID: 8)
search, retrieval, query, find, lookup
### Failure (ID: 9)
error, failure, mistake, bug, issue, problem
### Documentation (ID: 10)
documentation, docs, guide, manual, readme
### Programming Languages (IDs: 11-13)
- Rust: rust, cargo
- JavaScript: javascript, js, node, npm
- Python: python, py, pip
### Testing (ID: 14)
test, testing, spec, verify, validation
### Security (ID: 15)
security, secure, safety, protect, guard, audit
### Performance (ID: 16)
performance, speed, fast, optimize, efficiency
### Build (ID: 17)
build, compile, make, package
### Execution (ID: 18)
run, execute, start, launch
### Debugging (ID: 19)
debug, debugging, troubleshoot, diagnose
### Repair (ID: 20)
fix, repair, correct, resolve, solve
## License
Apache-2.0
+81
View File
@@ -0,0 +1,81 @@
# Terraphim Engineer Knowledge Graph
## Role: Terraphim Engineer
This knowledge graph provides semantic search capabilities for the Terraphim Engineer role.
## Thesaurus
- **Source**: `Terraphim_Engineer_thesaurus.json`
- **Purpose**: Map synonyms for enhanced search
- **Coverage**: 20 concept groups with 100+ synonyms
## Key Concepts
### Knowledge (ID: 1)
learning, knowledge, lesson, insight, discovery
### Configuration (ID: 2)
setup, configuration, install, deployment, initialize
### Git (ID: 3)
gitea, git, github, repository, version control
### AI Assistant (ID: 4)
terraphim, ai assistant, agent, claude, kimi
### Tool (ID: 5)
skill, tool, capability, function, feature
### Storage (ID: 6)
memory, storage, persistence, database
### Context Management (ID: 7)
arscontexta, onecontext, context, progress
### Retrieval (ID: 8)
search, retrieval, query, find, lookup
### Failure (ID: 9)
error, failure, mistake, bug, issue, problem
### Documentation (ID: 10)
documentation, docs, guide, manual, readme
### Programming Languages (IDs: 11-13)
- Rust: rust, cargo
- JavaScript: javascript, js, node, npm
- Python: python, py, pip
### Testing (ID: 14)
test, testing, spec, verify, validation
### Security (ID: 15)
security, secure, safety, protect, guard, audit
### Performance (ID: 16)
performance, speed, fast, optimize, efficiency
### Build (ID: 17)
build, compile, make, package
### Execution (ID: 18)
run, execute, start, launch
### Debugging (ID: 19)
debug, debugging, troubleshoot, diagnose
### Repair (ID: 20)
fix, repair, correct, resolve, solve
## Usage
When querying learnings, the system will:
1. Normalize search terms using the thesaurus
2. Expand queries to include synonyms
3. Match against learning titles and content
## Sources
- Learnings: `~/.local/share/terraphim/learnings/`
- Memory: `~/.openclaw/workspace/memory/`
+113
View File
@@ -0,0 +1,113 @@
{
"name": "Terraphim Engineer",
"data": {
"learning": { "id": 1, "nterm": "knowledge" },
"knowledge": { "id": 1, "nterm": "knowledge" },
"lesson": { "id": 1, "nterm": "knowledge" },
"insight": { "id": 1, "nterm": "knowledge" },
"discovery": { "id": 1, "nterm": "knowledge" },
"setup": { "id": 2, "nterm": "configuration" },
"configuration": { "id": 2, "nterm": "configuration" },
"install": { "id": 2, "nterm": "configuration" },
"deployment": { "id": 2, "nterm": "configuration" },
"initialize": { "id": 2, "nterm": "configuration" },
"gitea": { "id": 3, "nterm": "git" },
"git": { "id": 3, "nterm": "git" },
"github": { "id": 3, "nterm": "git" },
"repository": { "id": 3, "nterm": "git" },
"version control": { "id": 3, "nterm": "git" },
"terraphim": { "id": 4, "nterm": "ai_assistant" },
"ai assistant": { "id": 4, "nterm": "ai_assistant" },
"agent": { "id": 4, "nterm": "ai_assistant" },
"claude": { "id": 4, "nterm": "ai_assistant" },
"kimi": { "id": 4, "nterm": "ai_assistant" },
"skill": { "id": 5, "nterm": "tool" },
"tool": { "id": 5, "nterm": "tool" },
"capability": { "id": 5, "nterm": "tool" },
"function": { "id": 5, "nterm": "tool" },
"feature": { "id": 5, "nterm": "tool" },
"memory": { "id": 6, "nterm": "storage" },
"storage": { "id": 6, "nterm": "storage" },
"persistence": { "id": 6, "nterm": "storage" },
"database": { "id": 6, "nterm": "storage" },
"arscontexta": { "id": 7, "nterm": "context_management" },
"onecontext": { "id": 7, "nterm": "context_management" },
"context": { "id": 7, "nterm": "context_management" },
"progress": { "id": 7, "nterm": "context_management" },
"search": { "id": 8, "nterm": "retrieval" },
"retrieval": { "id": 8, "nterm": "retrieval" },
"query": { "id": 8, "nterm": "retrieval" },
"find": { "id": 8, "nterm": "retrieval" },
"lookup": { "id": 8, "nterm": "retrieval" },
"error": { "id": 9, "nterm": "failure" },
"failure": { "id": 9, "nterm": "failure" },
"mistake": { "id": 9, "nterm": "failure" },
"bug": { "id": 9, "nterm": "failure" },
"issue": { "id": 9, "nterm": "failure" },
"problem": { "id": 9, "nterm": "failure" },
"documentation": { "id": 10, "nterm": "docs" },
"docs": { "id": 10, "nterm": "docs" },
"guide": { "id": 10, "nterm": "docs" },
"manual": { "id": 10, "nterm": "docs" },
"readme": { "id": 10, "nterm": "docs" },
"rust": { "id": 11, "nterm": "programming_language" },
"cargo": { "id": 11, "nterm": "programming_language" },
"javascript": { "id": 12, "nterm": "programming_language" },
"js": { "id": 12, "nterm": "programming_language" },
"node": { "id": 12, "nterm": "programming_language" },
"npm": { "id": 12, "nterm": "programming_language" },
"python": { "id": 13, "nterm": "programming_language" },
"py": { "id": 13, "nterm": "programming_language" },
"pip": { "id": 13, "nterm": "programming_language" },
"test": { "id": 14, "nterm": "testing" },
"testing": { "id": 14, "nterm": "testing" },
"spec": { "id": 14, "nterm": "testing" },
"verify": { "id": 14, "nterm": "testing" },
"validation": { "id": 14, "nterm": "testing" },
"security": { "id": 15, "nterm": "security" },
"secure": { "id": 15, "nterm": "security" },
"safety": { "id": 15, "nterm": "security" },
"protect": { "id": 15, "nterm": "security" },
"guard": { "id": 15, "nterm": "security" },
"audit": { "id": 15, "nterm": "security" },
"performance": { "id": 16, "nterm": "performance" },
"speed": { "id": 16, "nterm": "performance" },
"fast": { "id": 16, "nterm": "performance" },
"optimize": { "id": 16, "nterm": "performance" },
"efficiency": { "id": 16, "nterm": "performance" },
"build": { "id": 17, "nterm": "build" },
"compile": { "id": 17, "nterm": "build" },
"make": { "id": 17, "nterm": "build" },
"package": { "id": 17, "nterm": "build" },
"run": { "id": 18, "nterm": "execution" },
"execute": { "id": 18, "nterm": "execution" },
"start": { "id": 18, "nterm": "execution" },
"launch": { "id": 18, "nterm": "execution" },
"debug": { "id": 19, "nterm": "debugging" },
"debugging": { "id": 19, "nterm": "debugging" },
"troubleshoot": { "id": 19, "nterm": "debugging" },
"diagnose": { "id": 19, "nterm": "debugging" },
"fix": { "id": 20, "nterm": "repair" },
"repair": { "id": 20, "nterm": "repair" },
"correct": { "id": 20, "nterm": "repair" },
"resolve": { "id": 20, "nterm": "repair" },
"solve": { "id": 20, "nterm": "repair" }
}
}
+5
View File
@@ -0,0 +1,5 @@
# bun install
Install dependencies using Bun package manager.
synonyms:: npm install, yarn install, pnpm install, npm i
+5
View File
@@ -0,0 +1,5 @@
# bun run
Run scripts using Bun.
synonyms:: npm run, yarn run, pnpm run
+5
View File
@@ -0,0 +1,5 @@
# bunx
Execute packages using Bun.
synonyms:: npx, pnpx, yarn dlx
+31
View File
@@ -0,0 +1,31 @@
# Last30Days Knowledge Graph
## Role: Last30Days Skill Developer
Specialized knowledge for the Last30Days Claude Code skill.
## Thesaurus
- **Source**: `thesaurus.json`
- **Concepts**: Research, Reddit, Twitter/X, Web, Claude
## Key Functionality
### Research
- Multi-source information gathering
- Trend analysis
- Pattern recognition
### Sources
- Reddit discussions
- Twitter/X trends
- Web search results
### Claude Code Integration
- Skill definition
- Prompt engineering
- Tool usage
## Sources
- Skill files: `last30days/`
+30
View File
@@ -0,0 +1,30 @@
{
"name": "Last30Days",
"data": {
"research": { "id": 1, "nterm": "research" },
"search": { "id": 1, "nterm": "research" },
"investigate": { "id": 1, "nterm": "research" },
"explore": { "id": 1, "nterm": "research" },
"discover": { "id": 1, "nterm": "research" },
"reddit": { "id": 2, "nterm": "reddit" },
"subreddit": { "id": 2, "nterm": "reddit" },
"post": { "id": 2, "nterm": "reddit" },
"thread": { "id": 2, "nterm": "reddit" },
"twitter": { "id": 3, "nterm": "twitter" },
"x": { "id": 3, "nterm": "twitter" },
"tweet": { "id": 3, "nterm": "twitter" },
"trend": { "id": 3, "nterm": "twitter" },
"web": { "id": 4, "nterm": "web" },
"internet": { "id": 4, "nterm": "web" },
"online": { "id": 4, "nterm": "web" },
"site": { "id": 4, "nterm": "web" },
"claude": { "id": 5, "nterm": "claude" },
"code": { "id": 5, "nterm": "claude" },
"skill": { "id": 5, "nterm": "claude" },
"prompt": { "id": 5, "nterm": "claude" }
}
}
+54
View File
@@ -0,0 +1,54 @@
# Learning Capture Knowledge Graph
## Role: Learning Capture System
This knowledge graph provides semantic search capabilities for the learning capture system.
## Thesaurus
- **Source**: `learning_thesaurus.json`
- **Purpose**: Map synonyms for enhanced search
- **Coverage**: Learning, configuration, git, AI assistant, tools, storage, context, retrieval, failure, documentation
## Key Concepts
### Knowledge (ID: 1)
- learning, knowledge, lesson, insight, discovery
### Configuration (ID: 2)
- setup, configuration, install, deployment, initialize
### Git (ID: 3)
- gitea, git, github, repository, version control
### AI Assistant (ID: 4)
- terraphim, ai assistant, agent, claude, kimi
### Tool (ID: 5)
- skill, tool, capability, function, feature
### Storage (ID: 6)
- memory, storage, persistence, database
### Context Management (ID: 7)
- arscontexta, onecontext, context, progress
### Retrieval (ID: 8)
- search, retrieval, query, find, lookup
### Failure (ID: 9)
- error, failure, mistake, bug, issue, problem
### Documentation (ID: 10)
- documentation, docs, guide, manual, readme
## Usage
When querying learnings, the system will:
1. Normalize search terms using the thesaurus
2. Expand queries to include synonyms
3. Match against learning titles and content
Example:
- Query "setup" → Matches: setup, configuration, install, deployment
- Query "error" → Matches: error, failure, mistake, bug, issue, problem
+164
View File
@@ -0,0 +1,164 @@
{
"name": "Learning Capture",
"data": {
"learning": { "id": 1, "nterm": "knowledge" },
"knowledge": { "id": 1, "nterm": "knowledge" },
"lesson": { "id": 1, "nterm": "knowledge" },
"insight": { "id": 1, "nterm": "knowledge" },
"discovery": { "id": 1, "nterm": "knowledge" },
"understanding": { "id": 1, "nterm": "knowledge" },
"wisdom": { "id": 1, "nterm": "knowledge" },
"setup": { "id": 2, "nterm": "configuration" },
"configuration": { "id": 2, "nterm": "configuration" },
"install": { "id": 2, "nterm": "configuration" },
"installation": { "id": 2, "nterm": "configuration" },
"deployment": { "id": 2, "nterm": "configuration" },
"deploy": { "id": 2, "nterm": "configuration" },
"initialize": { "id": 2, "nterm": "configuration" },
"init": { "id": 2, "nterm": "configuration" },
"bootstrap": { "id": 2, "nterm": "configuration" },
"provision": { "id": 2, "nterm": "configuration" },
"gitea": { "id": 3, "nterm": "git" },
"git": { "id": 3, "nterm": "git" },
"github": { "id": 3, "nterm": "git" },
"gitlab": { "id": 3, "nterm": "git" },
"repository": { "id": 3, "nterm": "git" },
"repo": { "id": 3, "nterm": "git" },
"version control": { "id": 3, "nterm": "git" },
"vcs": { "id": 3, "nterm": "git" },
"commit": { "id": 3, "nterm": "git" },
"branch": { "id": 3, "nterm": "git" },
"merge": { "id": 3, "nterm": "git" },
"terraphim": { "id": 4, "nterm": "ai_assistant" },
"ai assistant": { "id": 4, "nterm": "ai_assistant" },
"agent": { "id": 4, "nterm": "ai_assistant" },
"claude": { "id": 4, "nterm": "ai_assistant" },
"kimi": { "id": 4, "nterm": "ai_assistant" },
"openclaw": { "id": 4, "nterm": "ai_assistant" },
"assistant": { "id": 4, "nterm": "ai_assistant" },
"bot": { "id": 4, "nterm": "ai_assistant" },
"skill": { "id": 5, "nterm": "tool" },
"tool": { "id": 5, "nterm": "tool" },
"capability": { "id": 5, "nterm": "tool" },
"function": { "id": 5, "nterm": "tool" },
"feature": { "id": 5, "nterm": "tool" },
"utility": { "id": 5, "nterm": "tool" },
"instrument": { "id": 5, "nterm": "tool" },
"resource": { "id": 5, "nterm": "tool" },
"memory": { "id": 6, "nterm": "storage" },
"storage": { "id": 6, "nterm": "storage" },
"persistence": { "id": 6, "nterm": "storage" },
"database": { "id": 6, "nterm": "storage" },
"db": { "id": 6, "nterm": "storage" },
"cache": { "id": 6, "nterm": "storage" },
"store": { "id": 6, "nterm": "storage" },
"save": { "id": 6, "nterm": "storage" },
"persist": { "id": 6, "nterm": "storage" },
"arscontexta": { "id": 7, "nterm": "context_management" },
"onecontext": { "id": 7, "nterm": "context_management" },
"context": { "id": 7, "nterm": "context_management" },
"progress": { "id": 7, "nterm": "context_management" },
"state": { "id": 7, "nterm": "context_management" },
"session": { "id": 7, "nterm": "context_management" },
"tracking": { "id": 7, "nterm": "context_management" },
"search": { "id": 8, "nterm": "retrieval" },
"retrieval": { "id": 8, "nterm": "retrieval" },
"query": { "id": 8, "nterm": "retrieval" },
"find": { "id": 8, "nterm": "retrieval" },
"lookup": { "id": 8, "nterm": "retrieval" },
"fetch": { "id": 8, "nterm": "retrieval" },
"get": { "id": 8, "nterm": "retrieval" },
"locate": { "id": 8, "nterm": "retrieval" },
"discover": { "id": 8, "nterm": "retrieval" },
"error": { "id": 9, "nterm": "failure" },
"failure": { "id": 9, "nterm": "failure" },
"mistake": { "id": 9, "nterm": "failure" },
"bug": { "id": 9, "nterm": "failure" },
"issue": { "id": 9, "nterm": "failure" },
"problem": { "id": 9, "nterm": "failure" },
"fault": { "id": 9, "nterm": "failure" },
"defect": { "id": 9, "nterm": "failure" },
"exception": { "id": 9, "nterm": "failure" },
"crash": { "id": 9, "nterm": "failure" },
"documentation": { "id": 10, "nterm": "docs" },
"docs": { "id": 10, "nterm": "docs" },
"guide": { "id": 10, "nterm": "docs" },
"manual": { "id": 10, "nterm": "docs" },
"readme": { "id": 10, "nterm": "docs" },
"reference": { "id": 10, "nterm": "docs" },
"wiki": { "id": 10, "nterm": "docs" },
"help": { "id": 10, "nterm": "docs" },
"rust": { "id": 11, "nterm": "programming_language" },
"cargo": { "id": 11, "nterm": "programming_language" },
"rustlang": { "id": 11, "nterm": "programming_language" },
"javascript": { "id": 12, "nterm": "programming_language" },
"js": { "id": 12, "nterm": "programming_language" },
"node": { "id": 12, "nterm": "programming_language" },
"npm": { "id": 12, "nterm": "programming_language" },
"python": { "id": 13, "nterm": "programming_language" },
"py": { "id": 13, "nterm": "programming_language" },
"pip": { "id": 13, "nterm": "programming_language" },
"test": { "id": 14, "nterm": "testing" },
"testing": { "id": 14, "nterm": "testing" },
"spec": { "id": 14, "nterm": "testing" },
"verify": { "id": 14, "nterm": "testing" },
"validation": { "id": 14, "nterm": "testing" },
"assert": { "id": 14, "nterm": "testing" },
"check": { "id": 14, "nterm": "testing" },
"security": { "id": 15, "nterm": "security" },
"secure": { "id": 15, "nterm": "security" },
"safety": { "id": 15, "nterm": "security" },
"protect": { "id": 15, "nterm": "security" },
"guard": { "id": 15, "nterm": "security" },
"audit": { "id": 15, "nterm": "security" },
"vulnerability": { "id": 15, "nterm": "security" },
"performance": { "id": 16, "nterm": "performance" },
"speed": { "id": 16, "nterm": "performance" },
"fast": { "id": 16, "nterm": "performance" },
"optimize": { "id": 16, "nterm": "performance" },
"efficiency": { "id": 16, "nterm": "performance" },
"benchmark": { "id": 16, "nterm": "performance" },
"build": { "id": 17, "nterm": "build" },
"compile": { "id": 17, "nterm": "build" },
"make": { "id": 17, "nterm": "build" },
"package": { "id": 17, "nterm": "build" },
"bundle": { "id": 17, "nterm": "build" },
"assemble": { "id": 17, "nterm": "build" },
"run": { "id": 18, "nterm": "execution" },
"execute": { "id": 18, "nterm": "execution" },
"start": { "id": 18, "nterm": "execution" },
"launch": { "id": 18, "nterm": "execution" },
"invoke": { "id": 18, "nterm": "execution" },
"call": { "id": 18, "nterm": "execution" },
"debug": { "id": 19, "nterm": "debugging" },
"debugging": { "id": 19, "nterm": "debugging" },
"troubleshoot": { "id": 19, "nterm": "debugging" },
"diagnose": { "id": 19, "nterm": "debugging" },
"investigate": { "id": 19, "nterm": "debugging" },
"analyze": { "id": 19, "nterm": "debugging" },
"fix": { "id": 20, "nterm": "repair" },
"repair": { "id": 20, "nterm": "repair" },
"correct": { "id": 20, "nterm": "repair" },
"resolve": { "id": 20, "nterm": "repair" },
"solve": { "id": 20, "nterm": "repair" },
"patch": { "id": 20, "nterm": "repair" },
"remedy": { "id": 20, "nterm": "repair" }
}
}
+38
View File
@@ -0,0 +1,38 @@
# OpenClaw Knowledge Graph
## Role: OpenClaw Developer
Specialized knowledge for developing the OpenClaw gateway and agent platform.
## Thesaurus
- **Source**: `thesaurus.json`
- **Concepts**: TypeScript, Gateway, Channel, Skill, Config
## Key Technologies
### TypeScript/JavaScript
- Node.js runtime
- NPM package management
- Modern JS/TS patterns
### Gateway
- WebSocket server
- API endpoints
- Real-time communication
### Channels
- Telegram integration
- Discord integration
- Slack integration
- Generic IM support
### Skills
- Extension system
- Tool capabilities
- Plugin architecture
## Sources
- Source: `openclaw/src/`
- Docs: `openclaw/docs/`
+35
View File
@@ -0,0 +1,35 @@
{
"name": "OpenClaw",
"data": {
"typescript": { "id": 1, "nterm": "typescript" },
"ts": { "id": 1, "nterm": "typescript" },
"javascript": { "id": 1, "nterm": "typescript" },
"js": { "id": 1, "nterm": "typescript" },
"node": { "id": 1, "nterm": "typescript" },
"npm": { "id": 1, "nterm": "typescript" },
"gateway": { "id": 2, "nterm": "gateway" },
"server": { "id": 2, "nterm": "gateway" },
"api": { "id": 2, "nterm": "gateway" },
"websocket": { "id": 2, "nterm": "gateway" },
"ws": { "id": 2, "nterm": "gateway" },
"channel": { "id": 3, "nterm": "channel" },
"telegram": { "id": 3, "nterm": "channel" },
"discord": { "id": 3, "nterm": "channel" },
"slack": { "id": 3, "nterm": "channel" },
"im": { "id": 3, "nterm": "channel" },
"skill": { "id": 4, "nterm": "skill" },
"tool": { "id": 4, "nterm": "skill" },
"capability": { "id": 4, "nterm": "skill" },
"extension": { "id": 4, "nterm": "skill" },
"plugin": { "id": 4, "nterm": "skill" },
"config": { "id": 5, "nterm": "config" },
"configuration": { "id": 5, "nterm": "config" },
"settings": { "id": 5, "nterm": "config" },
"json": { "id": 5, "nterm": "config" },
"yaml": { "id": 5, "nterm": "config" }
}
}
+42
View File
@@ -0,0 +1,42 @@
# System Operator Knowledge Graph
## Role: System Operator
Specialized knowledge for system administration and operations.
## Thesaurus
- **Source**: `thesaurus.json`
- **Concepts**: Logs, Config, Service, Network, Security
## Key Areas
### Logging
- System logs
- Application logs
- Log analysis
### Configuration
- System config files
- Service configuration
- Environment settings
### Services
- Systemd services
- Daemon management
- Process control
### Network
- IP configuration
- DNS settings
- Firewall rules
### Security
- Audit logs
- Permissions
- Authentication
## Sources
- Logs: `/var/log/`
- Config: `/etc/`
+33
View File
@@ -0,0 +1,33 @@
{
"name": "System Operator",
"data": {
"log": { "id": 1, "nterm": "log" },
"logs": { "id": 1, "nterm": "log" },
"logging": { "id": 1, "nterm": "log" },
"syslog": { "id": 1, "nterm": "log" },
"journal": { "id": 1, "nterm": "log" },
"config": { "id": 2, "nterm": "config" },
"configuration": { "id": 2, "nterm": "config" },
"conf": { "id": 2, "nterm": "config" },
"cfg": { "id": 2, "nterm": "config" },
"settings": { "id": 2, "nterm": "config" },
"service": { "id": 3, "nterm": "service" },
"daemon": { "id": 3, "nterm": "service" },
"systemd": { "id": 3, "nterm": "service" },
"process": { "id": 3, "nterm": "service" },
"network": { "id": 4, "nterm": "network" },
"net": { "id": 4, "nterm": "network" },
"ip": { "id": 4, "nterm": "network" },
"dns": { "id": 4, "nterm": "network" },
"firewall": { "id": 4, "nterm": "network" },
"security": { "id": 5, "nterm": "security" },
"secure": { "id": 5, "nterm": "security" },
"audit": { "id": 5, "nterm": "security" },
"permission": { "id": 5, "nterm": "security" },
"auth": { "id": 5, "nterm": "security" }
}
}
+32
View File
@@ -0,0 +1,32 @@
# Terraphim AI Knowledge Graph
## Role: Terraphim AI Developer
Specialized knowledge for developing the Terraphim AI assistant.
## Thesaurus
- **Source**: `thesaurus.json`
- **Concepts**: Rust, Knowledge Graph, Agent, Search, Role
## Key Technologies
### Rust Ecosystem
- Async programming with Tokio
- Type-safe systems programming
- Cargo package management
### Knowledge Graph
- Thesaurus-based synonym expansion
- Ontology and taxonomy
- Semantic search
### AI/Agent
- LLM integration
- Claude API
- Assistant patterns
## Sources
- Crates: `terraphim-ai/crates/`
- Docs: `terraphim-ai/docs/`
+33
View File
@@ -0,0 +1,33 @@
{
"name": "Terraphim AI",
"data": {
"rust": { "id": 1, "nterm": "rust" },
"cargo": { "id": 1, "nterm": "rust" },
"crate": { "id": 1, "nterm": "rust" },
"tokio": { "id": 1, "nterm": "rust" },
"async": { "id": 1, "nterm": "rust" },
"knowledge graph": { "id": 2, "nterm": "kg" },
"kg": { "id": 2, "nterm": "kg" },
"thesaurus": { "id": 2, "nterm": "kg" },
"ontology": { "id": 2, "nterm": "kg" },
"taxonomy": { "id": 2, "nterm": "kg" },
"agent": { "id": 3, "nterm": "agent" },
"ai": { "id": 3, "nterm": "agent" },
"assistant": { "id": 3, "nterm": "agent" },
"claude": { "id": 3, "nterm": "agent" },
"llm": { "id": 3, "nterm": "agent" },
"search": { "id": 4, "nterm": "search" },
"retrieval": { "id": 4, "nterm": "search" },
"query": { "id": 4, "nterm": "search" },
"find": { "id": 4, "nterm": "search" },
"lookup": { "id": 4, "nterm": "search" },
"role": { "id": 5, "nterm": "role" },
"persona": { "id": 5, "nterm": "role" },
"expert": { "id": 5, "nterm": "role" },
"engineer": { "id": 5, "nterm": "role" }
}
}
+5
View File
@@ -0,0 +1,5 @@
# Terraphim AI
Terraphim AI - Knowledge graph powered development.
synonyms:: Claude Code, Claude Opus 4.5
+197
View File
@@ -0,0 +1,197 @@
{
"id": "MultiRepo",
"global_shortcut": "Cmd+Shift+M",
"roles": {
"TerraphimAI": {
"shortname": "TerraAI",
"name": "Terraphim AI Developer",
"relevance_function": "terraphim-graph",
"terraphim_it": true,
"theme": "lumen",
"kg": {
"automata_path": null,
"knowledge_graph_local": {
"input_type": "markdown",
"path": "terraphim-ai/kg"
},
"public": true,
"publish": true
},
"haystacks": [
{
"location": "terraphim-ai/crates",
"service": "Ripgrep",
"read_only": true,
"extra_parameters": {
"file_types": ["rs", "toml"]
}
},
{
"location": "terraphim-ai/docs",
"service": "Ripgrep",
"read_only": true,
"extra_parameters": {
"file_types": ["md"]
}
}
],
"extra": {
"description": "Rust-based AI assistant with knowledge graph",
"embeddings_model": "local",
"synonym_depth": "deep"
}
},
"OpenClaw": {
"shortname": "Claw",
"name": "OpenClaw Developer",
"relevance_function": "title-scorer",
"terraphim_it": false,
"theme": "spacelab",
"kg": {
"automata_path": null,
"knowledge_graph_local": {
"input_type": "markdown",
"path": "openclaw/kg"
},
"public": false,
"publish": false
},
"haystacks": [
{
"location": "openclaw/src",
"service": "Ripgrep",
"read_only": true,
"extra_parameters": {
"file_types": ["ts", "js", "json"]
}
},
{
"location": "openclaw/docs",
"service": "Ripgrep",
"read_only": true,
"extra_parameters": {
"file_types": ["md"]
}
}
],
"extra": {
"description": "TypeScript-based AI gateway and agent platform",
"embeddings_model": "local",
"synonym_depth": "standard"
}
},
"Last30Days": {
"shortname": "L30D",
"name": "Last30Days Skill Developer",
"relevance_function": "title-scorer",
"terraphim_it": false,
"theme": "cosmo",
"kg": {
"automata_path": null,
"knowledge_graph_local": {
"input_type": "markdown",
"path": "last30days/kg"
},
"public": true,
"publish": true
},
"haystacks": [
{
"location": "last30days",
"service": "Ripgrep",
"read_only": true,
"extra_parameters": {
"file_types": ["md", "sh", "json"]
}
}
],
"extra": {
"description": "Claude Code skill for web research",
"embeddings_model": "none",
"synonym_depth": "basic"
}
},
"LearningCapture": {
"shortname": "LearnCap",
"name": "Learning Capture System",
"relevance_function": "terraphim-graph",
"terraphim_it": true,
"theme": "darkly",
"kg": {
"automata_path": null,
"knowledge_graph_local": {
"input_type": "markdown",
"path": "~/.config/terraphim/docs/src/kg"
},
"public": false,
"publish": false
},
"haystacks": [
{
"location": "~/.local/share/terraphim/learnings",
"service": "Ripgrep",
"read_only": true,
"extra_parameters": {
"file_types": ["md"]
}
},
{
"location": "~/.openclaw/workspace/memory",
"service": "Ripgrep",
"read_only": true,
"extra_parameters": {
"file_types": ["md", "json"]
}
}
],
"extra": {
"description": "Personal knowledge and learning capture",
"embeddings_model": "local",
"synonym_depth": "deep",
"synonym_expansion": true,
"thesaurus": "~/.config/terraphim/docs/src/kg/Terraphim_Engineer_thesaurus.json"
}
},
"SystemOperator": {
"shortname": "SysOp",
"name": "System Operator",
"relevance_function": "title-scorer",
"terraphim_it": false,
"theme": "slate",
"kg": {
"automata_path": null,
"knowledge_graph_local": {
"input_type": "markdown",
"path": "system/kg"
},
"public": false,
"publish": false
},
"haystacks": [
{
"location": "/var/log",
"service": "Ripgrep",
"read_only": true,
"extra_parameters": {
"file_types": ["log"]
}
},
{
"location": "/etc",
"service": "Ripgrep",
"read_only": true,
"extra_parameters": {
"file_types": ["conf", "cfg", "yaml", "yml", "json"]
}
}
],
"extra": {
"description": "System administration and operations",
"embeddings_model": "none",
"synonym_depth": "minimal"
}
}
},
"default_role": "LearningCapture",
"selected_role": "LearningCapture"
}