sidekick
Self-hosted, extensible AI agent platform with governed MCP tools, persistent project memory, durable workflows, capability packs, autonomous execution, and distributed local-model compute.
Install / Use
claude mcp add geoffmcc -- npx -y github:geoffmcc/sidekickIf the server publishes to npm under a different name, use that package instead — check the repo README.
MCP Server
Model Context Protocol server
Quality Score
Category
AutomationSupported Platforms
Tags
Our assessment of sidekick
sidekick scores 74/100 on our quality scale, 2611th of 2,857 Automation skills we index.
Its MCP Server is 60 KB long, well organised into 81 sections with 28 code examples: long enough that it reads more like full documentation than a focused instruction file, which agents can find harder to follow.
It has 3 GitHub stars, so there is little community track record yet; judge it on its content.
Maintenance, license and trust
- The repository was last updated 7 days ago, so sidekick is actively maintained.
- It is released under GPL-3.0, a copyleft license: you can use it, but modified versions you distribute must carry the same license.
- Its trust signals score 92/100, with 1 caution from licensing, adoption, age or documentation. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.
Safety scan
No issues foundOur scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands. An AI review of the same text found nothing harmful.
AI review by kimi-k2.7-code on 2026-11-01. Automated pattern scan on 2026-11-01. It catches known dangerous patterns, not every risk — read a skill before letting an agent act on it.
sidekick compared with similar skills
All 4 of these similar skills score higher than sidekick; compare them before choosing.
| Skill | Score | Stars | Updated | Format |
|---|---|---|---|---|
| sidekick (this skill)by geoffmcc | 74 | 3 | 7d ago | MCP Server |
| Agent-Reachby Panniantong | 100 | 107.3k | 7d ago | CLAUDE.md |
| headroomby headroomlabs-ai | 100 | 78.5k | 1d ago | CLAUDE.md |
| CowAgentby zhayujie | 100 | 47.7k | today | CLAUDE.md |
| Scraplingby D4Vinci | 100 | 91.2k | today | MCP Server |
Frequently asked questions
- How do I install sidekick?
- Run
claude mcp add geoffmcc -- npx -y github:geoffmcc/sidekick. The install tabs above show the steps for each supported agent. - Which AI agents does sidekick work with?
- It is written for Claude Code and Claude Desktop, as a MCP Server file. Other agents that read the same format can often use it too.
- Is sidekick safe to use?
- Our scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands. An AI review of the same text found nothing harmful. It is GPL-3.0-licensed and scores 92/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
- Is sidekick still maintained?
- The repository was last updated 7 days ago, so sidekick is actively maintained.
Skill content
View source on GitHubSidekick
Autonomous Agent Platform
Sidekick is a self-hosted platform that gives AI assistants and agents durable infrastructure: a remote machine they can operate, persistent project memory and knowledge that survive any single session, a governed and dynamically discoverable MCP tool catalog, an autonomous task runner, and distributed model compute. The connected assistant or agent is replaceable — you can switch clients, models, or vendors — while the projects, memory, tools, policy, and history stay on your machine, under your control.
See the privacy policy. A running HTTP instance also exposes it at /privacy for directory and integration review.
Why use it? Because most AI work loses everything between sessions. With Sidekick, one session's decisions, handoffs, and stored facts are retrievable by the next session — or by a completely different agent. Typical uses that the current implementation supports:
- keeping project continuity across AI sessions and across different agents/models;
- software development and project work on a persistent remote machine (shell, files, git, GitHub API, CI inspection, databases);
- durable autonomous tasks through the Agent Bridge (structured goals, bounded profiles, governed tools, checkpoints, verification, artifacts, follow-ups, and restart-aware recovery);
- self-hosted AI infrastructure and homelab/system administration (services, processes, networking, monitoring, incident capture);
- scheduled and event-driven automation (cron, one-shot delays, watches, runbooks);
- routing local/distributed model workloads (chat, generation, embeddings) across enrolled compute workers.
How? Connect a compatible MCP client to Sidekick, then optionally adapt the included AGENTS.md template so the client knows how to use its persistent tools and knowledge.
For a local installation, configure the client to launch the packaged runtime:
{
"mcpServers": {
"sidekick": {
"command": "npx",
"args": ["-y", "github:geoffmcc/sidekick"]
}
}
}
See docs/local-deployment.md for persistent
state locations, CLI commands, client notes, security, Compute, capability
packs, and troubleshooting. Dedicated HTTP/SSE deployment remains documented
in docs/installation.md.
Note: This project was developed using its own remote execution tools — the AI assistant used Sidekick's infrastructure to help build and test the very system it runs on.
Refactor Status and Compatibility Disclosure
Full disclosure: Sidekick's tool runtime uses a canonical descriptor registry, centralized dispatcher, request-scoped context, schema validation, source-aware policy, approval enforcement, redaction, and audit logging as its authoritative production path. All built-in handlers are owned by descriptor families, the
data-utilitiesmodule, or the Compute subsystem;src/tools-legacy.jsowns zero production handlers and is retained for policy/approval/audit compatibility machinery and re-exports.TOOL_DEFSandTOOLSare derived compatibility projections, not competing sources of truth. The broader platform convergence campaign remains in progress — seedocs/platform-roadmap.mdanddocs/tool-architecture.md.
Canonical MCP tool names are unprefixed, such as bash, knowledge, and compute_jobs. The runtime still recognizes older sidekick_-prefixed names as compatibility aliases, but new documentation, policies, and integrations should use the bare names.
Quick Start
What you need: Node.js 22+, a remote Ubuntu/Debian machine with SSH access (VPS, home server, Raspberry Pi), Git, ~15 minutes.
# Clone the repo
git clone https://github.com/geoffmcc/sidekick.git
cd sidekick
# Copy env template and edit
copy .env.example .env
# Edit .env with your API key and settings
# Deploy to your remote machine (Windows)
.\deploy.ps1 -IP "YOUR_REMOTE_IP"
# Or deploy (Linux/Mac)
./deploy.sh -IP YOUR_REMOTE_IP
First deploy to a fresh VM: The script will automatically:
- Prompt for the initial SSH user (e.g., ubuntu, admin, root)
- Prompt for the initial user's password (once)
- Create the sidekick user and install Node.js 22
- Configure sudo permissions for service management
- Install and enable systemd services
- Install your SSH key for passwordless access
- Open firewall ports (if UFW is active)
- Deploy the application as a Git checkout at
/home/sidekick/sidekickand start services
Optional: Install full infrastructure (Docker, databases, media tools, etc.):
# SSH into your remote machine
ssh sidekick@YOUR_REMOTE_IP
# Run the setup script
sudo bash scripts/setup-tools.sh
This installs PostgreSQL, Redis, Qdrant, InfluxDB, Grafana, and many other tools. See Optional Infrastructure for details.
Subsequent deploys are fully automated — no password required. Normal online deployments fetch origin/main from GitHub, fast-forward the remote main checkout, and verify that Git push is disabled with git remote set-url --push origin DISABLED.
For automation/CI, specify the initial user with -InitialUser:
# Windows
.\deploy.ps1 -IP "YOUR_REMOTE_IP" -InitialUser "ubuntu"
# Linux/Mac
./deploy.sh -IP YOUR_REMOTE_IP -InitialUser ubuntu
Airgap/Offline Deploy — If your remote server cannot reach GitHub (firewall, air-gapped network, etc.), explicitly use the --scp flag to sync files individually via SSH:
# Windows
.\deploy.ps1 -IP "YOUR_REMOTE_IP" -Scp
# Linux/Mac
./deploy.sh -IP YOUR_REMOTE_IP --scp
This copies files one-by-one from your local machine and does not create a Git working tree. No internet access is required on the remote server, but ops deploy_current_main requires the normal Git deployment model and will not silently fall back to SCP.
Open http://YOUR_REMOTE_IP:4098/ in a browser. That's it — Sidekick is live.
How It Works
Sidekick exposes its tool catalog through the Model Context Protocol and supports two deployment topologies:
Sidekick
├── Local deployment
└── Dedicated deployment
The intended local mode launches the full runtime through the packaged sidekick
executable and stdio, without a dedicated Sidekick server. The packaged stdio
entry point is under active maintenance, so run the local handshake tests before
depending on it. Dedicated server installations continue to expose Streamable
HTTP and legacy SSE with their existing authentication and service layout.
Both topologies use the same governed registry, dispatcher, persistence,
memory, workflows, capability packs, and Compute paths. The included
AGENTS.md file is an optional, portable bootstrap template for clients that
support persistent project or agent instructions.
- An MCP client connects — it authenticates to the Sidekick MCP server on port 4097.
- Sidekick publishes the available tool catalog — policy, risk, and approval rules are applied for the request source.
- The assistant or agent calls tools — it can operate the remote machine, query knowledge, store durable context, or submit work to the Agent Bridge.
- State persists — approved memories, project data, workflows, logs, and knowledge remain available after the client session ends.
Sidekick provides the persistent infrastructure; the connected assistant or agent decides when and how to use it. Exact prompting and automatic instruction-file loading depend on the MCP client.
Capability packs extend Sidekick with focused areas of competence without requiring every future feature to be part of Core. Packs can contribute modules, tools, workflows, knowledge, and configuration, and can be bundled with Sidekick or supplied by compatible third parties.
Usage
Exact invocation syntax varies by MCP client. At the protocol level, a direct call identifies a tool and supplies its arguments. For example:
{
"name": "knowledge",
"arguments": {
"action": "search",
"query": "debugging"
}
}
Complex Multi-Step Tasks
A connected agent can combine multiple Sidekick tools to complete longer tasks. For example, an agent updating a stored project roadmap could:
- Recall the current plan from persistent storage.
- Inspect recent commits and CI results.
- Update the plan with completion status and remaining work.
- Store a handoff or revised plan for the next session.
The same workflow can emit notifications, create durable task records, or run through the Agent Bridge when autonomous execution is appropriate.
Project Continuity Across Sessions and Agents
The core continuity workflow: one agent or session does the work and leaves a durable handoff; a later session — possibly a different client or model entirely — retrieves it and continues without rebuilding context by hand.
- Session A works on a project, storing durable facts with
store, tracking decisions withcontext, and optionally opening an explicit envelope withsession action="begin". - Before stopping, it leaves a handoff:
resume action="set" project="myproject"with the summary, next step, and branch (or a richerhandoff action="create"record). - Session B — hours or weeks later, on any compatible MCP client — starts with
resume action="check" project="myproject", recalls context withproject name="myproject"orcontext action="recall", and continues the work.
Retrieval is explicit: the connected agent has to ask for the handoff (the AGENTS.md template teaches it to check at session start). Sidekick stores and serves the state; it does not inject it automatically into a new client session.
Conversational Planning
Sidekick supports continuity across ordinary conversations because project facts, decisions, procedures, and handoffs can be retrieved in later sessions:
you: "We stored a plan, but it is now out of date."
agent: "I found the current project roadmap and recent implementation history. I can reconcile the completed work and revise the remaining steps."
you: "Update it."
agent: [reviews current evidence, updates the roadmap, and stores the revised handoff]
Debugging
Sidekick can combine source inspection, logs, database queries, service health, incident captures, and evidence-backed analysis to diagnose issues across the stack. Tool calls still pass through the same validation, policy, approval, redaction, and audit boundary.
Dashboard
Open http://YOUR_REMOTE_IP:4098/ for:
- System health monitoring
- Tool usage analytics and activity inspection
- Agent task submission and streaming
- Persistent data and structured memory management
- Approvals, tool catalog, Compute workers, jobs, and artifacts
What Makes Sidekick Different?
Most MCP servers are just tool wrappers—they give AI access to specific APIs or services. Sidekick is fundamentally different:
🧠 Persistent Memory Across Sessions
Sidekick provides durable project memory through SQLite-backed KV, context, and structured memory tables. Agents can explicitly store decisions, project facts, problems, patterns, and summaries, then retrieve them in later sessions by key, project, or context query. The Agent Bridge also records bounded, redacted structured memories for completed tasks and useful tool calls, then loads relevant remembered context before planning a new task.
📚 Knowledge Base
All documentation, best practices, and project context stored in a searchable database. The AI can query the knowledge base instead of re-reading files, saving tokens and improving accuracy.
📊 Built-in Metrics & Monitoring
Comprehensive metrics collection with Grafana dashboards:
- System health (CPU, memory, disk, load)
- Tool
Truncated for display — read the full file on GitHub.
Related Skills
Agent-Reach
107.3kGive your AI agent eyes to see the entire internet. Read & search Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu — one CLI, zero API fees.
headroom
78.5kCompress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.
CowAgent
47.7kOpen-source personal AI assistant & Agent Harness. Plans tasks, runs tools and skills, self-evolves with memory and knowledge. Multi-agent, multi-model, multi-channel. Lightweight, extensible, one-line install.
Scrapling
91.2k🕷️ The BEST Web Scraping framework that handles everything from a single request to a full-scale crawl! Don't be shy, join here: https://discord.gg/EMgGbDceNQ and follow here for daily tips and tricks: https://x.com/Scrapling_dev
Languages
Trust signals
From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.
