Menu

Activate Project Intelligence for your repo

Run one command from your repo, choose Claude Code, Codex, Cursor, VS Code, Gemini CLI, Mistral, ChatGPT Desktop, or any MCP client, then start with a briefed agent instead of a blank agent.

Primary path
Onboarding package for Hosted MCP
create-snipara is the fast path: Hosted MCP first, existing instruction files preserved, optional local workflows available when the project needs them.

Shared activation engine

create-snipara is the canonical activation engine behind the public editor story. VS Code can expose it as Snipara: Activate Workspace; Cursor can pair its OpenVSX extension with the same Hosted MCP bootstrap. The outcome should stay the same across Marketplace copy, docs, and README setup: connect the project, index local context, and start the next agent session with a First Work Brief.

See editor install alignment

Activation contract

Every run writes the same contract into .snipara/activation/activation-manifest.json, keeps the legacy manifest.json alias, and generates the client pack. That contract records the canonical engine, the editor entry point, the client role, and the parts an extension must not duplicate.

create-snipara scans the local workspace and writes the First Work Brief.
Editor surfaces expose the right entry point and handoff, not a second engine.
Companion continues the work with source sync, session-bootstrap, impact, and commits.

Editor Activation Contract V1

Native editor integrations should launch the same engine and consume the machine-readable contract instead of parsing terminal prose.

npx create-snipara@latest init --client vscode --starter --json
.snipara/activation/activation-manifest.json
.snipara/activation/first-brief.md
.snipara/activation/handoff.md

Required fields are schemaVersion, consumerContract.version, surfaceContract, artifacts.firstBriefPath, lanes.*.status, and nextActions. VS Code should store the API key in SecretStorage and pass it through the child-process environment.

Get started in under 60 seconds

  1. Run npx create-snipara from the repository root.
  2. Choose the AI client you use for coding.
  3. Sign in or paste an existing Snipara API key.
  4. Read the first Work Brief while indexing continues.
npx create-snipara

Expected result

Connected to Snipara
AI client configured
Repository analyzed
Context index started
Code Graph indexing started
Memory candidates ready for review
First Work Brief generated

The agent keeps doing the reasoning and edits. Snipara supplies local context, reviewed project memory when accepted, active work, impact hints, proof, and handoffs through Hosted MCP.

No GitHub integration required

First value comes from the local repository: docs, instruction files, package scripts, Git status, source snapshot, memory candidates, initial handoff, and a First Work Brief. GitHub or GitLab can be connected later for PR/MR Answer Packs, reviews, team sync, and continuous repository sync.

npx create-snipara --starter
npx create-snipara demo

What the default setup does

Writes Hosted MCP config

Project-scoped config for the selected AI client, using Snipara as the project intelligence layer.

Preserves existing instructions

Existing AGENTS.md, CLAUDE.md, and client rules are extended or copied for review instead of being overwritten.

Creates a local companion pack

Adds activation manifest, handoff, memory-candidate review, briefs, source activation, resume, and workflow continuity when you need them.

Keeps advanced pieces optional

GitHub automation, hooks, Snipara Sandbox, and orchestrator are available, but they do not block the first connection.

What create-snipara generates

This matrix is derived from the shared Snipara compatibility contract. It keeps docs, dashboard states, and generated automation bundles aligned around the configured agent.

AgentGenerated by create-sniparaHook install statusCaveat
Claude Code
Hosted MCP, project instructions, and verified lifecycle hooks.
AGENTS.md, CLAUDE.md, .mcp.json, .claude/settings.json, .claude/hooks/*.shSupported nowClaude Code is the verified full-hook baseline for Snipara automation.
OpenAI Codex
Hosted MCP, AGENTS.md, Codex config, and native hook automation.
AGENTS.md, .codex/config.toml, .codex/hooks.json, .codex/hooks/*.shSupported nowCodex documents native hooks and Snipara ships a bundle for supported lifecycle events; compaction-specific hooks remain unavailable.
Cursor
Hosted MCP, project rules, and native hook automation.
AGENTS.md, .cursor/mcp.json, .cursor/rules/snipara.mdc, .cursor/hooks.json, .cursor/hooks/*.shSupported nowCursor documents project hooks and Snipara ships a bundle for supported lifecycle events; blocking/enforce decisions remain adapter-limited.
VS Code / Copilot
Hosted MCP and Copilot instructions; hook support is preview-gated.
.vscode/mcp.json, .github/copilot-instructions.mdPreview gatedVS Code agent hooks are preview and can be organization-disabled; Snipara does not install them by default.
Gemini CLI
Hosted MCP, GEMINI.md, and native hook automation.
GEMINI.md, .gemini/settings.json, .gemini/hooks/*.shSupported nowGemini CLI documents native hooks and Snipara ships a supported bundle; review scripts and enable only in trusted repositories.
Mistral Le Chat / Vibe
Hosted MCP for Le Chat and Vibe plus ChatMistralAI tool calling templates.
AGENTS.md, MISTRAL.md, .vibe/config.toml, mistral-le-chat-mcp.json, mistral-langchain-tools.tsMCP onlyMistral request hooks wrap model HTTP requests; they are not local agent lifecycle hooks, so Snipara installs MCP and instruction files only.
MCP-only / Custom
Hosted MCP tools and explicit commands only.
mcp-config.jsonMCP onlyMCP standardizes tools, resources, and prompts, not universal host lifecycle hooks.
Kimi Code CLI
Hosted MCP, project instructions, and a reviewable Kimi plugin hook bundle.
AGENTS.md, .kimi-code/mcp.json, .kimi-code/snipara-plugin/kimi.plugin.json, .kimi-code/snipara-plugin/hooks/*.mjs, .kimi-code/snipara-plugin/skills/snipara-workflow/SKILL.mdSupported nowKimi Code CLI documents project MCP configuration and lifecycle hooks; Snipara generates a plugin bundle so user-level hook config is never overwritten silently. SessionStart is observation-only, so resume context is loaded through the session-start skill and an explicit Companion command.

Advanced: hook selection model

Hooks are selected in Snipara project automation settings, not through a separate per-client installer. Local materialization uses the companion command surface:

npx -y snipara-companion@latest automations install --client claude-code
npx -y snipara-companion@latest automations diff
npx -y snipara-companion@latest automations update
npx -y snipara-companion@latest automations status

Unsupported or preview-gated hook bundles remain disabled by default. Hosted MCP and generated instructions still work for every MCP-compatible client.

Advanced install profiles

ProfileWhat it installsBest for
hosted-companionHosted MCP + snipara-companionDefault: hosted context plus managed local workflows
hosted-onlyHosted MCP config onlyLocked-down or minimal environments
full-stackHosted MCP + snipara-companion + snipara-sandboxHosted context plus local execution. Orchestrator is not included unless --with-orchestrator is passed.
runtime-onlysnipara-sandbox onlyPure local execution without hosted API

Architecture: hosted core and local edge

create-snipara installs a hosted-first setup. Snipara stays the source of truth for memory, review, policy, and orchestration. The local install only adds a Snipara Sandbox edge layer for hook capture, context restore, optional safe execution, and explicit production orchestration when requested.

  • Hosted core: 128-tool MCP surface, reviewed memory, orchestration, automation policies
  • Snipara Sandbox edge: local hooks, compatibility CLI flows, and optional snipara-sandbox
  • Optional orchestrator: snipara-orchestrator is installed only for production validation, proof gates, drift checks, or htask coordination.
  • Companion workflows: snipara-companion query, status, brief, timeline, handoff, plan, multi-query, orchestrate, load-document, upload, source init, onboard-folder, chunk, events recent, session-bootstrap, task-commit, code impact, memory invalidate, memory supersede, and managed workflow commands
  • Generated companion pack: .snipara/companion with client-aware command presets, local usage guidance, and a doctor report
  • GitHub code path: source repositories go through the GitHub App flow, which creates or reuses the repository project and enables push sync
  • Design rule: local adapters capture and forward signals; they do not own durable memory policy

Interactive Setup

Run npx create-snipara in your project directory. The default flow uses the recommended hosted-companion profile and asks only for the local choices needed to connect this repo.

Use --advanced only when you want profile selection, project IDs, hooks, GitHub prompts, orchestrator opt-in, or Snipara Sandbox provider prompts. Use --profile hosted-only or --skip-companion for minimal locked-down installs.

After install: continue the work

create-snipara gets the project connected. snipara-companion becomes the day-two command surface for agents that need status, briefs, timelines, phase commits, handoffs, source-selected code impact, memory lifecycle correction, and resume points.

snipara-companion session-bootstrap --include-session-context --max-context-tokens 1000
snipara-companion status
snipara-companion source init .
snipara-companion source sync --json
snipara-companion brief --task "ship auth hardening"
snipara-companion code impact --changed-files src/auth.ts --diff-summary "auth hardening"
snipara-companion memory supersede mem_old mem_new --reason "corrected decision"
snipara-companion workflow phase-commit build --summary "tests green"
snipara-companion handoff --summary "ready for release checks"
snipara-companion workflow resume --include-session-context
PromptDescription
Project slugAuto-detected from git remote or directory name
Project ID (advanced)Optional, for advanced use cases
Snipara auth pathExisting API key, free Project Intelligence signup flow, or skip Snipara auth for Snipara Sandbox only
API keyYour Snipara API key when you choose the manual key-based path
AI clientClaude Code, Codex, Cursor, VS Code, Gemini CLI, Mistral, ChatGPT, or custom MCP
Install profile (advanced)Hosted only, hosted + companion, full stack, or Snipara Sandbox only
Orchestrator (advanced or --with-orchestrator)Optional snipara-orchestrator install for proof-based production validation, drift checks, and htask workflows
Hooks (advanced)Whether compatible local hooks should be generated when supported
GitHub automation (advanced or --github)When a GitHub remote is detected, whether to open the Snipara GitHub App setup with repo and branch already carried through
LLM provider (Snipara Sandbox profiles)OpenAI, Anthropic, or None (for snipara-sandbox run/snipara-sandbox agent CLI)
Run snipara-sandbox init (Snipara Sandbox profiles)Optional, configure execution environment (sandbox/docker/local)

Browser Approval

create-snipara uses the terminal for local setup and the browser for identity or source approval.

  • The terminal writes config, doctor reports, hooks, and local project wiring.
  • The browser handles Snipara login and GitHub approval.
  • Local source activation does not need provider approval; it writes local snapshots and overlay caches from the current folder.
  • GitHub approval stays in the browser because the user must explicitly choose which account, organization, and repositories Snipara can read.

That keeps repository sync explicit and revocable. The Hosted MCP server is for agent usage after setup, not for the initial source-permission choice.

Choose Sources

Local folder first

Use snipara-companion source init . immediately after setup when the user has not installed the GitHub App, when the folder has no Git metadata, or when they want a private local fallback. It creates .snipara/source/latest.json, previews supported document sync, and refreshes the local code overlay. Add source sync --json to refresh that state after file changes.

GitHub repository

Use npx create-snipara --github when the current folder is a GitHub repo and the team wants canonical hosted repository sync, shared CODE graph freshness, and PR Answer Packs. The CLI detects the repo and opens the Snipara GitHub App flow with repo, branch, and optional path filter already carried through.

GitLab repository

For GitLab repositories, connect GitLab from the dashboard, choose the repository, branch, and path filter, then enable repository sync. Push webhooks refresh docs and CODE graph files, while merge request events queue MR Answer Packs and publish ready packs back to a sticky GitLab merge request note.

Business workflows

Use Helvabase when the user wants to work from local folders, mounted Drive or SharePoint exports, old offers, PowerPoints, templates, or RFP files. Snipara source is for local project activation; Helvabase is for controlled business dossier workflows.

Maintenance Commands

doctor

Validates local wiring and writes .snipara/companion/doctor.json.

repair

Rebuilds local configuration, companion pack, hooks, and optional add-ons such as Sandbox or Orchestrator when requested.

upgrade

Upgrades installed local pieces and refreshes generated assets.

print-config

Shows the inferred local setup and install profile.

npx create-snipara doctor
npx create-snipara repair
npx create-snipara repair --with-orchestrator

Execution Environments

When you select Snipara Sandbox during setup, you'll be asked if you want to run snipara-sandbox init to configure the execution environment:

EnvironmentDescriptionUse Case
sandboxRestrictedPython, safe stdlib onlyDefault, most secure
dockerFull Python in isolated containerRecommended for full features
localFull access, no isolationDevelopment only

Security Recommendation

Use docker mode for production and untrusted code. local mode is only recommended for development and AI-generated code.

You can also configure the environment later by running snipara-sandbox init manually.

API Key Requirements

Positioning Note

This page documents the automated installer and its manual key-based options.

Snipara itself is not API-key-only. Hosted MCP remains the primary agent path. Use local snipara-mcp login only for stdio compatibility, client development, or advanced testing.

ToolSnipara API KeyLLM API Key (OpenAI/Anthropic)
execute_python MCPNot neededNot needed (your AI client is the LLM)
snipara_context_query MCPRequiredNot needed
snipara_remember/snipara_recallRequiredNot needed
snipara-sandbox run / snipara-sandbox agent CLIOptional (for context)Required

API Keys

TypeDescription
Existing API keyUse with --api-key; expected prefix is snp-, with legacy rlm_ keys still accepted
Browser signup keyAuto-provisioned by Snipara through the browser flow; returned prefix is snp-

Command Line Options

Basic usage
npx create-snipara
With existing API key
npx create-snipara --api-key snp-your-key
Specify project slug
npx create-snipara --slug my-project
Starter activation mode
npx create-snipara --starter
Open the guided activation demo without changing this repo
npx create-snipara demo
npx create-snipara demo --no-open
Advanced prompts for profiles, hooks, GitHub, and Snipara Sandbox
npx create-snipara --advanced
Snipara Sandbox only - no Snipara API key needed
npx create-snipara --runtime-only
Open GitHub automation for the detected repo
npx create-snipara --github
npx create-snipara --github-path docs/
Skip local companion CLI
npx create-snipara --skip-companion
Skip specific installations
npx create-snipara --skip-mcp # Skip local snipara-mcp package
npx create-snipara --skip-runtime # Skip snipara-sandbox
npx create-snipara --skip-hooks # Skip local hooks
npx create-snipara --skip-test # Skip connection test
npx create-snipara --skip-github # Skip GitHub automation prompt
Accept all defaults (non-interactive)
npx create-snipara -y --api-key snp-xxx --slug my-project

What Gets Created

.mcp.json

{
  "mcpServers": {
    "snipara": {
      "type": "http",
      "url": "https://api.snipara.com/mcp/your-project",
      "headers": {
        "X-API-Key": "snp-your-key"
      }
    },
    "snipara-sandbox": {
      "type": "http",
      "url": "http://localhost:8765/mcp",
      "headers": {}
    }
  }
}

Claude Code Hooks (if selected)

  • snipara-startup.sh - Restores session context
  • snipara-session.sh, auto-remembers commits
  • snipara-compact.sh, saves context before compaction

Local Companion Pack

create-snipara also generates a small project-local starter pack under .snipara/companion. The default hosted-companion mode uses it for managed workflow commands; hosted-only keeps the same pack as an upgrade path.

  • README.md - client-aware usage guidance and starter commands
  • commands.json - machine-readable command presets for local workflows

Companion Workflows

The companion CLI is a thin local facade over hosted Snipara workflows. It is useful when you want repeatable local commands in addition to MCP access.

Operating Rule

Use context commands first for source truth (query, shared-context, load-document). Use memory commands second for durable state (session-bootstrap, task-commit).

snipara-companion query --query "how does auth middleware work?"
snipara-companion shared-context --categories MANDATORY BEST_PRACTICES
snipara-companion plan --query "implement webhook retry hardening"
snipara-companion multi-query --queries "recent incidents" "rate limit headers"
snipara-companion orchestrate --query "map auth architecture"
snipara-companion load-document --path docs/architecture/auth.md
snipara-companion recall --query "What did we decide about auth retries?" --type decision
snipara-companion events recent --limit 20
snipara-companion session-bootstrap --include-session-context --max-context-tokens 1000
snipara-companion task-commit --summary "Shipped retry hardening"

These commands print human-readable output by default. Add --json when you need the raw hosted response.

Environment Files

Updates .env.example and .env.local with:

Snipara Configuration
SNIPARA_API_KEY=your_api_key
SNIPARA_PROJECT_SLUG=your-project
Snipara Sandbox LLM Provider (if configured)
OPENAI_API_KEY=sk-...
or
ANTHROPIC_API_KEY=sk-ant-...

After Installation

For Claude Code / Cursor

  1. Claude Code loads MCP from the generated project .mcp.json; .claude/settings.json is used only when hooks are enabled. Cursor uses the generated project MCP config and rule files.
  2. Restart your AI client or open a new agent session.
  3. Confirm Snipara appears in MCP settings or ToolSearch. If not, run npx create-snipara doctor --client claude-code.

For Claude Desktop

  1. Restart Claude Desktop
  2. Config is at ~/Library/Application Support/Claude/claude_desktop_config.json

Business Folder Onboarding

For dashboardless business-context imports, let Claude, ChatGPT, Codex, or another LLM client use its own Drive, Gmail, Notion, or local-file access to materialize a folder, then use snipara-companion to preview and apply the import.

snipara-companion onboard-folder ./client-export --source-provider local_folder --write-manifest ./snipara-onboard.json
snipara-companion onboard-folder ./client-export --source-provider local_folder --apply

onboard-folder classifies folders as business, code, mixed, or unknown, but it is business-first. If it detects a source-code repository, use the GitHub or GitLab onboarding path instead.

GitHub Repository Automation

When create-snipara detects a GitHub remote, it can open the Snipara GitHub App flow with owner/repo, branch, and optional path filter already carried through. The browser flow installs or updates the GitHub App, lets the user connect the detected repository, creates or reuses the matching Snipara project, enables push sync, and starts the first documentation sync.

GitLab Repository Automation

GitLab automation is configured from the dashboard rather than the --github CLI flag. Connect the GitLab account, select the project, enable sync, and keep the managed webhook active. Snipara then treats GitLab pushes and merge requests as first-class repository evidence for docs, CODE graph freshness, and MR Answer Packs.

npx create-snipara --github
npx create-snipara --github-path docs/

If you intentionally started with hosted-only, enable companion before using business-folder imports:

npx create-snipara repair --with-companion

Snipara Sandbox Usage

MCP Tools (no LLM API key needed):

Your AI client (Claude, GPT, etc.) provides the LLM, no additional API key required.

ToolDescription
execute_pythonRun Python in sandbox
get_repl_contextGet session variables
set_repl_contextSet session variables
clear_repl_contextClear session

CLI Commands (requires LLM API key):

For snipara-sandbox run and snipara-sandbox agent, you need an LLM provider API key:

Set your LLM provider
export OPENAI_API_KEY=sk-...
or
export ANTHROPIC_API_KEY=sk-ant-...
Run commands
snipara-sandbox init # Initialize configuration
snipara-sandbox run --env docker # Run with Docker isolation
snipara-sandbox agent "task" # Autonomous agent mode
snipara-sandbox visualize # Launch trajectory dashboard

Available MCP Tools

If you enable hook-compatible local tooling, the install can also forward canonical lifecycle events into Snipara's automation API. That lets local adapters feel closer to a local-memory workflow while keeping review and persistence centralized.

After setup, you have access to the current 128-tool MCP contract across context, memory, automation, analytics, and orchestration:

CategoryTools
Contextsnipara_context_query, snipara_ask, snipara_search, snipara_sections
Planningsnipara_plan, snipara_decompose, snipara_multi_query
Memorysnipara_remember, snipara_recall, snipara_memories, snipara_forget, snipara_memory_attach_source, snipara_memory_verify, snipara_memory_invalidate, snipara_memory_supersede, snipara_memory_review_queue, snipara_memory_resolve_queue_item
Executionexecute_python, get_repl_context (via Snipara Sandbox)
Swarmssnipara_swarm_create, snipara_claim, snipara_htask_create

Requirements

  • Node.js 18+
  • Python 3.10+ (for snipara-mcp and snipara-sandbox)
  • Docker (optional, for Snipara Sandbox isolation)

Links

Next Steps