Configuration
Configure SkillKit at project and user levels
Configuration
SkillKit uses a layered configuration system with five priority levels (lowest to highest):
- Default values in code
- Global user preferences (
~/.skillkit/preferences.json) - Project settings (
skillkit.yaml) - Environment variables
- CLI flags
Project Configuration
Create skillkit.yaml in your project root:
version: 1
agent: cursor # Override auto-detection
autoSync: true # Sync on changes
enabledSkills:
- pdf
- xlsx
- react-patterns
disabledSkills:
- deprecated-skill
skillsDir: ./custom-skills # Custom directory
sources: # Default sources
- anthropics/skills
- vercel-labs/agent-skillsManifest File
The .skills file enables Git-based team sharing:
version: 1
skills:
- source: anthropics/skills
skills: [pdf, xlsx]
- source: vercel-labs/agent-skills
skills: [react-patterns]Commands:
skillkit manifest init # Create .skills
skillkit manifest add <skill> # Add skill
skillkit manifest install # Install allUser Preferences
Global preferences in ~/.skillkit/preferences.json:
{
"lastAgents": ["claude-code", "cursor"],
"defaultAgent": "claude-code",
"theme": "dark"
}Environment Variables
| Variable | Purpose |
|---|---|
SKILLKIT_AGENT | Override default agent |
SKILLKIT_DIR | Custom SkillKit directory |
SKILLKIT_DEBUG | Enable debug logging |
CLI Settings
skillkit settings --set agent=cursor
skillkit settings --set autoSync=true
skillkit settings --get agentAdvanced Configuration
Memory System
# skillkit.yaml
memory:
enabled: true
tier: personal # personal, project, global
compression:
minObservations: 10 # Compress after N observations
autoExport: true # Auto-export as skills
storage:
backend: cozodb # cozodb, sqlite, memory
path: ~/.skillkit/memoryMesh Network
# skillkit.yaml
mesh:
enabled: true
hostId: my-workstation
discovery:
method: local # local, tailscale, manual
port: 9876
security:
mode: secure # development, signed, secure, strict
keyPath: ~/.skillkit/mesh/keys
peers:
- id: laptop-dev
address: 192.168.1.100
trusted: trueMessaging
# skillkit.yaml
messaging:
enabled: true
storagePath: ~/.skillkit/messages
notifications: true
autoArchive:
enabled: true
afterDays: 30Primer
# skillkit.yaml
primer:
autoGenerate: true # Generate on changes
agents:
priority: [claude, cursor, windsurf]
customize:
tone: detailed # concise, detailed, technical
includeExamples: true
exclude:
- node_modules
- dist
- .nextDirectory Structure
~/.skillkit/
├── preferences.json # User preferences
├── cache/ # Marketplace cache
├── memory/ # Learning storage
│ ├── observations/
│ ├── learnings/
│ └── index.json
├── mesh/ # Mesh network
│ ├── keys/ # Encryption keys
│ ├── peers.json # Known peers
│ └── config.json
└── messages/ # Inter-agent messages
├── inbox/
├── sent/
└── archived/
./project/
├── skillkit.yaml # Project config
├── .skills # Team manifest
├── skills/ # Local skills
└── .skillkit/ # Project-specific
├── cache/
├── primer-config.json
└── memory/Configuration Profiles
Create different profiles for different environments:
# skillkit.yaml
profiles:
development:
agent: claude
autoSync: true
mesh:
security:
mode: development
production:
agent: universal
autoSync: false
mesh:
security:
mode: strictUse profiles:
skillkit --profile production syncNext Steps
- Primer - Auto-generate instructions
- Memory System - Persistent learning
- Mesh Network - Multi-machine setup
- Team Collaboration - Team configuration