Skip to main content

Active Skill Listener & Trainer — structured memory layer for AI coding assistants

Project description

SkillMind

SkillMind

Version License: MIT Python 3.10+ MCP Integration Website

Active Skill Listener & Trainer — the structured memory layer for AI coding assistants.

Replace flat markdown memory files with a vector-database-backed system that listens, learns, and surfaces only relevant context per conversation.

🌐 Visit skill-mind.com — Documentation, setup guides, and live demos.


The Problem

Current state SkillMind
15+ flat markdown memory files One vector DB with semantic search
Everything loaded into context Only relevant memories surfaced
Manual save/forget Auto-listen, auto-classify, auto-expire
No deduplication Automatic dedup + consolidation
No protection Sanitizer redacts API keys, PII before storing

Quick Start (3 Commands)

# 1. Install
pip install skillmind[pinecone]

# 2. Initialize
skillmind init --backend pinecone

# 3. Import your existing Claude Code memories
skillmind import ~/.claude/projects/*/memory/

That's it. Your memories are now in a vector DB with semantic search.

How It Works

┌────────────┐    ┌────────────┐    ┌─────────────────┐
│  LISTENER   │───▶│  TRAINER    │───▶│  VECTOR STORE    │
│             │    │             │    │                  │
│ • Git hooks │    │ • Classify  │    │ • Chroma (local) │
│ • File watch│    │ • Sanitize  │    │ • Pinecone       │
│ • Convos    │    │ • Dedup     │    │ • Supabase       │
│ • YouTube   │    │ • Merge     │    │ • Qdrant         │
│ • Screen    │    │ • Expire    │    │ • FAISS          │
└────────────┘    └────────────┘    └─────────────────┘
                                            │
                                            ▼
                                    ┌─────────────────┐
                                    │  CLAUDE CODE     │
                                    │  (MCP Server)    │
                                    │  14 tools        │
                                    └─────────────────┘

5 Vector Store Backends

Backend Best for Requires
ChromaDB Solo dev, local, default pip install skillmind[chroma]
Pinecone Multi-device cloud sync API key
Supabase SQL + vectors, team sharing Supabase project
Qdrant Self-hosted or cloud, great filtering Qdrant server
FAISS Offline, air-gapped, fastest pip install skillmind[faiss]

All backends implement the same interface — switch anytime with zero data loss.

14 MCP Tools for Claude Code

Once installed, Claude Code gets these tools:

Tool What it does
remember Store memory (auto-classified, sanitized, deduped)
recall Semantic search across all memories
forget Delete a memory
update_memory Edit existing memory
context Generate focused context for current file/topic
consolidate Merge duplicates, expire stale, cleanup
memory_stats Counts by type, backend info
list_memories Filter by type/topic
import_markdown_memories Bulk import from Claude Code markdown files
learn_youtube Extract knowledge from YouTube video
learn_youtube_channel Learn from channel's latest videos
learn_video Learn from local video/screen recording
record_screen Record screen to MP4
screenshot Capture screenshot

MCP Setup (Claude Code settings.json)

{
  "mcpServers": {
    "skillmind": {
      "command": "python",
      "args": ["-m", "skillmind.mcp.server"],
      "env": {
        "PINECONE_API_KEY": "your-key",
        "SKILLMIND_BACKEND": "pinecone"
      }
    }
  }
}

Memory Types

Type What Auto-expires
user Role, preferences, expertise No
feedback Corrections, confirmed approaches No
project Deadlines, client context, status 90 days
reference External URLs, dashboards, wikis No
skill Patterns, workflows, how-tos No

Learn From Video

# YouTube
skillmind learn-youtube "https://youtube.com/watch?v=..."

# YouTube channel (latest 5 videos)
skillmind learn-youtube-channel "UCxxxxx" --limit 5

# Local video file
skillmind learn-video recording.mp4

# Screen recording
skillmind record-screen --duration 60 --fps 15

Built-in Sanitizer

API keys, emails, phone numbers, IBANs, and PII are automatically redacted before storing:

Input:  "My Pinecone key is pcsk_2mrRyA_9BSbdn5i..."
Stored: "My Pinecone key is [REDACTED:PINECONE_KEY]"

Configurable allowlists, custom patterns, and name anonymization.

CLI Reference

skillmind init --backend chroma     # Initialize with backend
skillmind remember "content"        # Store a memory
skillmind recall "query"            # Semantic search
skillmind list                      # List all memories
skillmind list --type feedback      # Filter by type
skillmind forget <id>               # Delete
skillmind import                    # Import Claude Code memories
skillmind consolidate               # Cleanup & deduplicate
skillmind context                   # Generate context for current dir
skillmind stats                     # Show statistics
skillmind serve                     # Start MCP server

Installation

# Core + one backend
pip install skillmind[chroma]       # Local (default)
pip install skillmind[pinecone]     # Cloud sync
pip install skillmind[supabase]     # SQL + vectors
pip install skillmind[qdrant]       # Self-hosted
pip install skillmind[faiss]        # Offline

# Add-ons
pip install skillmind[youtube]      # YouTube learning
pip install skillmind[video]        # Screen recording + OCR
pip install skillmind[mcp]          # MCP server for Claude Code

# Everything
pip install skillmind[all]

Architecture

src/skillmind/
├── models.py          # Memory, QueryFilter, QueryResult (Pydantic)
├── config.py          # SkillMindConfig (YAML-based)
├── embeddings.py      # EmbeddingEngine (sentence-transformers | OpenAI)
├── trainer.py         # Auto-classify, dedup, merge, consolidate
├── sanitizer.py       # Redact API keys, PII before storage
├── listener.py        # GitListener, FileListener, ConversationListener
├── context.py         # ContextGenerator — dynamic context injection
├── migration.py       # Import existing Claude Code markdown memories
├── store/
│   ├── base.py            # Abstract MemoryStore interface
│   ├── chroma_store.py    # ChromaDB backend
│   ├── pinecone_store.py  # Pinecone backend
│   ├── supabase_store.py  # Supabase/pgvector backend
│   ├── qdrant_store.py    # Qdrant backend
│   └── faiss_store.py     # FAISS + JSON backend
├── video/
│   ├── youtube_learner.py     # YouTube transcript extraction
│   ├── video_learner.py       # Local video learning
│   └── screen_recorder.py     # Screen capture
├── mcp/
│   └── server.py      # FastMCP server (14 tools)
└── cli/
    └── main.py        # CLI (click-based)

Contributing

PRs welcome! See CONTRIBUTING.md.

License

MIT — see LICENSE.


Built by Antonio Blago | skill-mind.com

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

skillmind-0.1.0.tar.gz (55.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

skillmind-0.1.0-py3-none-any.whl (61.9 kB view details)

Uploaded Python 3

File details

Details for the file skillmind-0.1.0.tar.gz.

File metadata

  • Download URL: skillmind-0.1.0.tar.gz
  • Upload date:
  • Size: 55.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.8

File hashes

Hashes for skillmind-0.1.0.tar.gz
Algorithm Hash digest
SHA256 392a81c508d9bd887996b0edf5c92ceaeef144dce69f817d53e152628a4bd480
MD5 d49fe247a250070f45f13a4f0ef41f6b
BLAKE2b-256 ae9038160e6ef6e148e8071052167ef07f70d0d624becb22871c2eb6516a432d

See more details on using hashes here.

File details

Details for the file skillmind-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: skillmind-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 61.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.8

File hashes

Hashes for skillmind-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 584a805b795b8c3be8f8456c23cc03c74e808f9d6ea83e5f6911b68fa9372a99
MD5 4fe630c4d16ca8e1051a77066c77626d
BLAKE2b-256 b164e1d22c20bbd20f087bb3977834e64663b67d16f5ea1307bba65aa963e9d3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page