create-snipara
One-command onboarding and maintenance for Snipara Hosted MCP Context + Memory. Run it once, choose your assistant, and Snipara generates the Hosted MCP config, rules, templates, checks, and workflow helpers that assistant needs. Existing root instruction files stay in place; fresh copies are kept under .snipara/templates for merge review. Advanced production orchestration remains opt-in. Install once with create-snipara; continue every session with snipara-companion.
create-snipara when the user wants the lowest-friction path to connect Claude Code, Codex, Cursor, VS Code, Gemini CLI, Mistral, ChatGPT Desktop, or another MCP client to Snipara Context + Memory.Use This When
create-snipara is useful when you want browser account onboarding, API key capture, generated config, doctor reports, GitHub repo automation, and optional snipara-sandbox.
If the user already has an account, reuse their API key. If not, choose the free signup path: the account includes Context Free and reviewed Memory Free.
What create-snipara is not for
Do not use create-snipara to manually select non-code source folders one by one. Keep the product boundary simple:
- create-snipara: account, auth, Hosted MCP config, GitHub repo setup
- Helvabase: RFPs, client dossiers, proposal workflows, and reviewed business sources
- Hosted MCP: the agent tool surface the LLM uses after setup
npx create-sniparaWhat It Does
- Handles auth onboarding — Reuse an existing API key, run browser device authorization for free Context + Memory, or leave a placeholder for later
- Writes hosted MCP config — Project-scoped configuration for supported MCP clients
- Installs optional snipara-companion — Git-style local continuity for status, briefs, timelines, phase commits, handoffs, resume, query, code impact, and task workflows
- Installs snipara-sandbox — Safe code execution with Docker isolation
- Can install snipara-orchestrator — Optional production gates, drift checks, and htask orchestration when requested with
--with-orchestrator - Configures hosted MCP — Client-specific HTTP MCP references for the selected assistant
- Generates AI agent templates — Merge-ready
AGENTS.md,CLAUDE.md,.cursor/rules/snipara.mdc,.codex/config.toml, Mistral Vibe/Le Chat/LangChain snippets, and ChatGPT/OpenAI MCP snippets - Preserves existing instructions — Existing
AGENTS.mdandCLAUDE.mdfiles are extended with a marked Snipara section instead of being overwritten - Opens GitHub automation — Detects
owner/repo, preserves branch/path defaults, and opens the Snipara GitHub App setup when requested - Sets up hooks when supported — Claude Code, Codex, Cursor, Gemini CLI, and legacy Windsurf bundles are generated only when the selected client has a compatible local hook surface
- Updates environment files — Adds project and auth configuration
- Adds maintenance commands —
doctor,repair,upgrade, andprint-config
This matrix is derived from the shared Snipara compatibility contract. It keeps docs, dashboard states, and generated automation bundles aligned around the configured agent.
| Agent | Generated by create-snipara | Hook install status | Caveat |
|---|---|---|---|
Claude Code Hosted MCP, project instructions, and verified lifecycle hooks. | AGENTS.md, CLAUDE.md, .mcp.json, .claude/settings.json, .claude/hooks/*.sh | Supported now | Claude 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/*.sh | Supported now | Codex 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/*.sh | Supported now | Cursor 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.md | Preview gated | VS 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/*.sh | Supported now | Gemini 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.ts | MCP only | Mistral 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.json | MCP only | MCP standardizes tools, resources, and prompts, not universal host lifecycle hooks. |
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-codenpx -y snipara-companion@latest automations diffnpx -y snipara-companion@latest automations updatenpx -y snipara-companion@latest automations statusUnsupported or preview-gated hook bundles remain disabled by default. Hosted MCP and generated instructions still work for every MCP-compatible client.
Install Profiles
| Profile | What it installs | Best for |
|---|---|---|
hosted-companion | Hosted MCP + snipara-companion | Default: hosted context plus managed local workflows |
hosted-only | Hosted MCP config only | Locked-down or minimal environments |
full-stack | Hosted MCP + snipara-companion + snipara-sandbox | Hosted context plus local execution. Orchestrator is not included unless --with-orchestrator is passed. |
runtime-only | snipara-sandbox only | Pure local execution without hosted API |
Hosted Core + Snipara Sandbox 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: 125-tool MCP surface, reviewed memory, orchestration, automation policies
- Snipara Sandbox edge: local hooks, compatibility CLI flows, and optional
snipara-sandbox - Optional orchestrator:
snipara-orchestratoris 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,onboard-folder,chunk,events recent,session-bootstrap,task-commit, and managed workflow commands - Generated companion pack:
.snipara/companionwith 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-sniparain your project directory. You'll be prompted for:
The default flow uses the recommended hosted-companion profile. Use --advanced 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. Use --with-orchestrator only when you want the advanced production validation package.
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, and resume points.
snipara-companion statussnipara-companion brief --task "ship auth hardening"snipara-companion workflow phase-commit build --summary "tests green"snipara-companion handoff --summary "ready for release checks"snipara-companion workflow resume --include-session-context| Prompt | Description |
|---|---|
| Project slug | Auto-detected from git remote or directory name |
| Project ID (advanced) | Optional, for advanced use cases |
| Snipara auth path | Existing API key, free Context + Memory signup flow, or skip Snipara auth for Snipara Sandbox only |
| API key | Your Snipara API key when you choose the manual key-based path |
| AI client | Claude 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.
- 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
GitHub repository
Use npx create-snipara --github when the current folder is a GitHub repo. The CLI detects the repo and opens the Snipara GitHub App flow with repo, branch, and optional path filter already carried through.
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 stays focused on agent setup, repository context, and Hosted MCP.
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 doctornpx create-snipara repairnpx create-snipara repair --with-orchestratorExecution 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:
| Environment | Description | Use Case |
|---|---|---|
sandbox | RestrictedPython, safe stdlib only | Default, most secure |
docker | Full Python in isolated container | Recommended for full features |
local | Full access, no isolation | Development 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.
| Tool | Snipara API Key | LLM API Key (OpenAI/Anthropic) |
|---|---|---|
execute_python MCP | Not needed | Not needed (your AI client is the LLM) |
snipara_context_query MCP | Required | Not needed |
snipara_remember/snipara_recall | Required | Not needed |
snipara-sandbox run / snipara-sandbox agent CLI | Optional (for context) | Required |
API Keys
| Type | Description |
|---|---|
| Existing API key | Use with --api-key; expected prefix is snp-, with legacy rlm_ keys still accepted |
| Browser signup key | Auto-provisioned by Snipara through the browser flow; returned prefix is snp- |
Command Line Options
Basic usagenpx create-sniparaWith existing API keynpx create-snipara --api-key snp-your-keySpecify project slugnpx create-snipara --slug my-projectAdvanced prompts for profiles, hooks, GitHub, and Snipara Sandboxnpx create-snipara --advancedSnipara Sandbox only - no Snipara API key needednpx create-snipara --runtime-onlyOpen GitHub automation for the detected reponpx create-snipara --githubnpx create-snipara --github-path docs/Skip local companion CLInpx create-snipara --skip-companionSkip specific installationsnpx create-snipara --skip-mcp # Skip local snipara-mcp packagenpx create-snipara --skip-runtime # Skip snipara-sandboxnpx create-snipara --skip-hooks # Skip local hooksnpx create-snipara --skip-test # Skip connection testnpx create-snipara --skip-github # Skip GitHub automation promptAccept all defaults (non-interactive)npx create-snipara -y --api-key snp-xxx --slug my-projectWhat 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 contextsnipara-session.sh— Auto-remembers commitssnipara-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 commandscommands.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_PRACTICESsnipara-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.mdsnipara-companion recall --query "What did we decide about auth retries?" --type decisionsnipara-companion events recent --limit 20snipara-companion session-bootstrap --include-session-context --max-context-tokens 1000snipara-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 ConfigurationSNIPARA_API_KEY=your_api_keySNIPARA_PROJECT_SLUG=your-projectSnipara Sandbox LLM Provider (if configured)OPENAI_API_KEY=sk-...orANTHROPIC_API_KEY=sk-ant-...After Installation
For Claude Code / Cursor
- Claude Code loads MCP from the generated project
.mcp.json;.claude/settings.jsonis used only when hooks are enabled. Cursor uses the generated project MCP config and rule files. - Restart your AI client or open a new agent session.
- Confirm Snipara appears in MCP settings or ToolSearch. If not, run
npx create-snipara doctor --client claude-code.
For Claude Desktop
- Restart Claude Desktop
- 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.jsonsnipara-companion onboard-folder ./client-export --source-provider local_folder --applyonboard-folder classifies folders as business, code, mixed, or unknown, but it is business-first. If it detects a source-code repository, use the GitHub OAuth/code 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.
npx create-snipara --githubnpx create-snipara --github-path docs/If you intentionally started with hosted-only, enable companion before using business-folder imports:
npx create-snipara repair --with-companionSnipara Sandbox Usage
MCP Tools (no LLM API key needed):
Your AI client (Claude, GPT, etc.) provides the LLM — no additional API key required.
| Tool | Description |
|---|---|
execute_python | Run Python in sandbox |
get_repl_context | Get session variables |
set_repl_context | Set session variables |
clear_repl_context | Clear 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 providerexport OPENAI_API_KEY=sk-...orexport ANTHROPIC_API_KEY=sk-ant-...Run commandssnipara-sandbox init # Initialize configurationsnipara-sandbox run --env docker # Run with Docker isolationsnipara-sandbox agent "task" # Autonomous agent modesnipara-sandbox visualize # Launch trajectory dashboardAvailable 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 125-tool MCP contract across context, memory, automation, analytics, and orchestration:
| Category | Tools |
|---|---|
| Context | snipara_context_query, snipara_ask, snipara_search, snipara_sections |
| Planning | snipara_plan, snipara_decompose, snipara_multi_query |
| Memory | snipara_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 |
| Execution | execute_python, get_repl_context (via Snipara Sandbox) |
| Swarms | snipara_swarm_create, snipara_claim, snipara_task_create |
Requirements
- Node.js 18+
- Python 3.10+ (for snipara-mcp and snipara-sandbox)
- Docker (optional, for Snipara Sandbox isolation)