Thread Keeper
by po4erk91
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| THREADKEEPER_DB | No | SQLite file path | ~/.threadkeeper/db.sqlite |
| THREADKEEPER_ACTIVE_CLI | No | Force host detection to a specific CLI (e.g., 'claude') | |
| THREADKEEPER_AUTO_REVIEW | No | Enable auto-review on close_thread | |
| THREADKEEPER_EMBED_MODEL | No | 384-dim cross-lingual embedding model | paraphrase-multilingual-MiniLM-L12-v2 |
| THREADKEEPER_EMBED_BACKEND | No | Embedding runtime: 'onnx' (fastembed) or 'sentence-transformers' | onnx |
| THREADKEEPER_NO_EMBEDDINGS | No | Force-disable the embedding model (FTS5 + delegate only) | |
| THREADKEEPER_SPAWNED_CHILD | No | Spawn-internal marker; disables autonomous daemons in children | |
| THREADKEEPER_SPAWN__DEFAULT | No | Default agent for spawn roles (e.g., 'claude', 'codex') | |
| THREADKEEPER_SPAWN_BUDGET_MB | No | Combined child RSS cap in MB (0 disables) | 3072 |
| THREADKEEPER_EXTRA_SKILLS_DIRS | No | Extra skills directories (colon-separated) for mirroring | |
| THREADKEEPER_INGEST_INTERVAL_S | No | Transcript ingest tick in seconds | 3 |
| THREADKEEPER_CURATOR_INTERVAL_S | No | Curator daemon tick in seconds (0=off) | 0 |
| THREADKEEPER_EXTRACT_INTERVAL_S | No | Extract daemon tick in seconds (0=off) | 0 |
| THREADKEEPER_EXTRACT_WINDOW_MIN | No | Sliding dialog window per extract pass in minutes | 30 |
| THREADKEEPER_CURATOR_DESTRUCTIVE | No | When '1': curator applies changes directly instead of advisory report | |
| THREADKEEPER_CURATOR_MIN_LESSONS | No | Minimum lessons before curator engages | 3 |
| THREADKEEPER_MEMORY_GUARD_NOTIFY | No | Send macOS desktop notification when possible | 1 |
| THREADKEEPER_MEMORY_GUARD_POLL_S | No | Server RSS guard tick in seconds (0 disables) | 30 |
| THREADKEEPER_CANDIDATE_REVIEW_MIN | No | Minimum pending candidates before reviewer engages | 3 |
| THREADKEEPER_MEMORY_GUARD_KILL_MB | No | SIGTERM server above this RSS (0 disables killing) | 3072 |
| THREADKEEPER_MEMORY_GUARD_WARN_MB | No | Notify/log when a server crosses this RSS | 1536 |
| THREADKEEPER_SKILL_NUDGE_INTERVAL | No | Events between skill_hint nudges | 10 |
| THREADKEEPER_DIALECTIC_VALIDATE_MIN | No | Minimum buffered observations before validator engages | 5 |
| THREADKEEPER_SHADOW_REVIEW_WINDOW_S | No | Sliding window for shadow scan in seconds | 900 |
| THREADKEEPER_EVOLVE_APPLY_INTERVAL_S | No | Evolve-applier daemon tick in seconds (0=off) | 0 |
| THREADKEEPER_MEMORY_GUARD_RECLAIM_MB | No | Local RSS floor before warn-triggered self trim | 1024 |
| THREADKEEPER_DIALECTIC_MAX_NEW_CLAIMS | No | Max new dialectic claims the validator may create per pass | 3 |
| THREADKEEPER_EVOLVE_REVIEW_INTERVAL_S | No | Evolve-reviewer daemon tick in seconds (0=off) | 0 |
| THREADKEEPER_MEMORY_GUARD_AGG_KILL_MB | No | Under aggregate pressure, retire stale idle servers | 3072 |
| THREADKEEPER_MEMORY_GUARD_AGG_WARN_MB | No | Notify/request trim when all server RSS crosses this | 2048 |
| THREADKEEPER_MEMORY_GUARD_RETIRE_LIVE | No | Allow retiring parent-alive MCP servers (off protects live clients) | |
| THREADKEEPER_SHADOW_REVIEW_INTERVAL_S | No | Shadow daemon tick in seconds (0=off) | 0 |
| THREADKEEPER_DIALECTIC_MINE_INTERVAL_S | No | Dialectic_miner daemon tick in seconds (0=off) | 0 |
| THREADKEEPER_MEMORY_GUARD_RETIRE_IDLE_S | No | Heartbeat age before a non-self server is retireable | 900 |
| THREADKEEPER_CANDIDATE_REVIEW_INTERVAL_S | No | Candidate-reviewer daemon tick in seconds (0=off) | 0 |
| THREADKEEPER_MEMORY_GUARD_TARGET_SERVERS | No | Aggregate-pressure target after retiring stale idle servers | 1 |
| THREADKEEPER_DIALECTIC_VALIDATE_INTERVAL_S | No | Dialectic_validator daemon tick in seconds (0=off) | 0 |
Capabilities
Server capabilities have not been inspected yet.
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
No tools | |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/po4erk91/thread-keeper'
If you have feedback or need assistance with the MCP directory API, please join our Discord server