CLI Reference

Every vektor command — from first-run setup to REM compression and morning briefings.

All Commands

vektor setupFirst-run wizard. Walks through licence activation, memory test, and integration configuration. Run this once on a new machine.
vektor activate <KEY>Activate your licence key on this machine and launch the setup wizard. Caches the result locally — you won't be prompted again.
vektor deactivateFree up this machine's activation slot. Use this before moving to a new machine if you've hit the 3-machine limit.
vektor statusFull system health check — Node version, licence cache, DB path, Playwright, ONNX runtime, Cloak vault.
vektor testQuick smoke test. Boots the memory engine, stores a test memory, recalls it, runs briefing, and cleans up. Confirms everything is working.
vektor mcpStart the Claude MCP server. Exposes vektor_recall, vektor_store, vektor_graph, vektor_delta tools to Claude Desktop.
vektor remRun the REM dream cycle on your memory database. Compresses fragments into core insights.
vektor briefingGenerate a morning briefing from the last 24 hours of memory. Inject into your agent's system prompt.
vektor search <q>Web search: Brave → DDG → SearXNG → Wikipedia fallback chain.
vektor fetch <url>Stealth page fetch via CLOAK browser. Result auto-stored to memory.
vektor research <topic>3-phase deep research agent. Searches, fetches, summarises, stores findings.
vektor image <prompt>Generate an image via HuggingFace or Cloudflare Workers AI (free tiers).
vektor speech <text>Text-to-speech → saves MP3. ElevenLabs or OpenAI provider.
vektor vision <url>Describe or analyse an image at a URL or local path.
vektor providersList all media providers and their API key status.
vektor modelsList all available models across all configured providers.
vektor db-mergeMerge a source .db file (or folder of .db files) into your main database.
vektor helpPrint the command reference with examples.

setup

Runs the full first-time configuration wizard. Activates your licence, tests the memory engine, and optionally configures Claude Desktop MCP integration.

bash
vektor setup

Run this once on each new machine. If you skip it, you can run individual commands manually (activate, test) instead.

activate · deactivate

Activates your licence key on this machine and launches the setup wizard. Pass your key directly as an argument — no environment variable needed:

bash
vektor activate YOUR-LICENCE-KEY-HERE

The wizard automatically runs after activation, prompting for your AI provider and API keys. Once complete, the key is cached locally — no internet required for subsequent runs.

output
  ⬡  Validating licence key...
  ✓  Licence activated!

  ⬡  VEKTOR SLIPSTREAM — Setup Wizard
  This takes about 60 seconds.
  Press Enter to accept defaults shown in [brackets].

Each licence supports 3 machine activations. Free up a slot before switching machines:

bash
vektor deactivate

Hit the 3-machine limit? Manage your activations directly at polar.sh → your customer portal. Enterprise licences (10 seats) available at [email protected].

status

Prints a full system health report. Run this first when troubleshooting.

bash
vektor status
output
  SYSTEM STATUS

  Node.js       ✓ v20.20.1
  Licence cache ✓ found  (~/.vektor/licence.json)
  Licence cache ✓ valid  (~/.vektor/licence.json)
  Memory DB     ✓ ~/vektor-slipstream-memory.db
  Cloak vault   ✓ found
  Playwright    ✓ installed
  ONNX runtime  ✓ installed

  vektor-slipstream v1.5.8

test

Runs a quick end-to-end smoke test. Confirms the engine boots, stores a memory, recalls it correctly, generates a briefing, and cleans up after itself.

bash
vektor test
output
  [##############################] 100% Done
  ✓ Memory engine booted
  ✓ Stored memory (id: 1)
  ✓ Recalled 1 result(s) — top score: 0.9741
  ✓ Briefing generated
  ✓ Test database cleaned up

  ✓ All tests passed. VEKTOR is working correctly.

If test fails with better-sqlite3 error: run npm rebuild better-sqlite3 in your project directory. This happens when Node.js is updated after installation.

mcp

Starts the Claude MCP server in stdio mode. Used by Claude Desktop to connect to your local memory database. See the DXT guide for the one-click install — use vektor mcp only if configuring manually via claude_desktop_config.json.

bash
vektor mcp
claude_desktop_config.json
{
  "mcpServers": {
    "vektor": {
      "command": "npx",
      "args": ["vektor", "mcp"],
      "env": {
        "VEKTOR_LICENCE_KEY": "YOUR-KEY-HERE",
        "VEKTOR_DB_PATH": "C:/Users/you/vektor-memory.db"
      }
    }
  }
}

rem

Runs the 7-phase REM dream cycle on your memory database. Compresses up to 50 raw fragments into 3 distilled core insights. Safe to run at any time — designed to run while your agent is idle.

bash
vektor rem

Schedule it as a nightly cron job:

cron
# Run REM every night at 3am
0 3 * * * cd /path/to/project && vektor rem >> ~/vektor-rem.log 2>&1

Or trigger programmatically:

javascript
const memory = await createMemory({ ... });
const result = await memory.dream();
console.log(result); // { compressed: 47, retained: 3, ratio: '15.7:1' }

briefing

Generates a morning briefing from the last 24 hours of memory. Structured output — inject directly into your agent's system prompt at session start.

bash
vektor briefing
output
  ── MEMORY BRIEFING ──────────────────────────────────

  Yesterday: 12 new memories stored across 3 topics.
  Key decisions: TypeScript migration approved, API rate
  limits increased to 1000/min, deploy blocked on staging.
  Active projects: data-pipeline, auth-refactor, docs-v2.
  User preferences updated: prefers async/await over .then()

  ─────────────────────────────────────────────────────

Inject into an agent system prompt:

javascript
const memory = await createMemory({ ... });
const brief = await memory.briefing();

const systemPrompt = `You are a helpful assistant.
${brief ? 'MEMORY BRIEFING:\n' + brief : ''}`;

chat

Persistent memory chat. Every conversation is automatically stored in your MAGMA graph and recalled in future sessions. Works with all major LLM providers — Ollama runs free and local with no API key.

vektor chat
# Use a specific provider
vektor chat --provider claude
vektor chat --provider groq
vektor chat --provider openai

# Use a specific model
vektor chat --provider ollama --model qwen3.5:4b

In-chat commands

── MEMORY ───────────────────────
/recall <q>Semantic search — shows scores and IDs
/remember <fact>Store a memory from within chat
/forget <q>Delete the best-matching memory
/pin <q>Pin memory to importance 5
/unpin <q>Remove pin from memory
/listList recent memories
/get <id>Fetch memory by ID
/update <id> <text>Update a stored memory
/import <file>Bulk import memories from JSON file
/briefingGenerate memory briefing inline
/statsMemory node and edge counts
/graphShow memory graph connections
/entitiesNamed entities extracted from memory
/inspect <q>Show full memory object as JSON
/deltaMemory changes this session
── CLOAK ────────────────────────
/fetch <url>Stealth fetch → auto-stored to memory
/search <q>Web search: Brave → DDG → SearXNG → Wikipedia
/diff <url>Page changes since last fetch
/cortex [path]Scan project files and token counts
/identity [cmd]CLOAK browser identities: list / create / use
── AGENT ────────────────────────
/agent <goal>Autonomous agent (10 steps)
/deep-research <q>DeepFlow deep research (20 steps)
/remREM dream cycle — compress memory
── MEDIA ────────────────────────
/image <prompt>Generate image → saves file
/speech <text>Text-to-speech → saves MP3
/vision <url>Describe or analyse an image
/providersList media providers + API key status
── KNOWLEDGE ────────────────────
/deskOpen workspace — notes + signals board
/jot <idea>Capture idea → MAGMA + auto-tag + thinking partner
/think <n>Open note n — session, connections, graph links
/scoutFetch arXiv / GitHub / HN → score against your memory
/scout <n>Target-scout: match signals to note n
/inboxView staged signal inbox
/sealDistil session → MAGMA (importance 5) + write .md
── SESSION ──────────────────────
/model [n]List models or switch: /model groq /model qwen
/ns <name>Switch active memory namespace
/sessionsList saved sessions
/forkFork current session to a new branch
/compactAI-compress old messages to save tokens
/exportExport conversation to Markdown
/historyShow stripped message history
/contextShow current token usage
/system <text>Override system prompt for this session
/dashboardOpen live memory graph in browser
/passport [cmd]AES-256 credential vault: list / get / set / delete
/steering-add <text>Add always-on steering instruction
/steering-listView active steering files
/hook-listList automation hooks
/hook-add <desc>Create a hook via AI
/copyCopy last response to clipboard
/clearClear display (memory kept)
/statusProvider / model / session / memory status
/exitQuit VEKTOR (Ctrl+C also works)

remember

Store a fact instantly from your terminal. Importance is auto-scored based on content — override with --importance.

vektor remember "I prefer TypeScript over JavaScript"
vektor remember "Client deadline is April 20th" --importance 5
vektor remember "Server IP is 153.12.43.174" --importance 4

# Pipe support — feed any content into memory
cat README.md | vektor remember
git log --oneline -20 | vektor remember "recent commits"
echo "Build failed on auth module" | vektor remember

ask

One-shot question against your memory graph. Recalls relevant context then generates an answer using your chosen LLM provider.

vektor ask "what stack am I using?"
vektor ask "what projects am I working on?"
vektor ask "what did I decide about authentication?"

# Use a specific provider
vektor ask "summarise my recent work" --provider claude

agent

Autonomous goal executor. Give it a goal, it works through it step by step using memory recall, web fetch, and storage tools. Persists between runs — run again on the same goal to continue where it left off.

vektor agent "research AI memory tools and summarise findings"
vektor agent "what have I been building this week?"
vektor agent "summarise everything I know about my projects"

# Control steps and provider
vektor agent "research X" --steps 15 --provider groq

Agent state is stored in MAGMA after each run. Running the same goal again picks up prior context automatically.

search runs a web query through a fallback chain — Brave Search (if configured) → DuckDuckGo → SearXNG → Wikipedia. Results are summarised by your LLM and optionally stored to memory.

bash
vektor search "latest developments in AI memory"
vektor search "rust async runtime comparison"

fetch retrieves a URL using the CLOAK stealth browser. The page content is cleaned, summarised, and auto-stored to your MAGMA graph.

bash
vektor fetch https://arxiv.org/abs/2401.00001
vektor fetch https://github.com/owner/repo

research runs a 3-phase deep research cycle: web search → fetch top sources → synthesise and store findings. Good for building a knowledge base on a topic.

bash
vektor research "transformer memory architectures"
vektor research "local-first software design patterns"

image · speech · vision · providers

Media generation tools. All free-tier providers are supported out of the box — no paid API required for basic use.

bash
# Image generation — HuggingFace (free) or Cloudflare Workers AI (free)
vektor image "a neon-lit memory graph"
vektor image "abstract data flow" --provider cf --out ./output

# Text-to-speech → MP3 (ElevenLabs free tier or OpenAI)
vektor speech "Meeting notes saved."
vektor speech "Weekly briefing ready" --provider openai

# Describe or analyse an image at a URL or local path
vektor vision https://example.com/diagram.png
vektor vision ./screenshot.png

# List configured providers and API key status
vektor providers

Configure providers with vektor config set hf-token YOUR-TOKEN (HuggingFace), vektor config set elevenlabs-api-key YOUR-KEY, etc. Run vektor providers to see what's active.

db-merge

Merge memories from one or more SQLite databases into your main database. Useful for combining memory from different machines, projects, or agent instances.

bash
# Merge a single database
vektor db-merge --source ./project-memory.db

# Merge all .db files in a folder
vektor db-merge --folder ./exports/ --target ~/vektor-slipstream-memory.db

Duplicate memories are detected and skipped — safe to run multiple times on the same source.

knowledge workspace — desk · jot · think · scout · seal

The knowledge workspace is a structured layer on top of MAGMA for capturing, connecting, and distilling ideas. Think of it as a Zettelkasten backed by your full memory graph.

desk

Opens your workspace — a live board showing your notes alongside recently scored signals from the web. Auto-loads on vektor chat startup.

bash
/desk

jot

Captures an idea instantly. Stores it to MAGMA with auto-tagging, finds related existing notes, and optionally opens a thinking-partner session to explore it further.

bash
/jot "local-first apps should treat sync as optional, not core"
/jot "speculative decoding could work for memory retrieval too"

think

Opens note n for a deep session — surfaces graph connections, related memories, and linked signals. Ends with the option to extract key insights back to MAGMA.

bash
/think 3         # open note 3
/think 7         # open note 7

scout

Fetches fresh signals from arXiv (cs.AI, cs.CL), GitHub trending, and Hacker News, then scores each one against your MAGMA graph for relevance. High-scoring signals are staged in your inbox.

bash
/scout            # global scout — scored against all your memories
/scout 4          # targeted: match signals specifically to note 4

Relevance threshold and max signals per run are configurable: vektor config set percept-threshold 0.6 · vektor config set percept-max-signals 12

inbox · dismiss

View the staged signal inbox — signals that scored above your relevance threshold but haven't been confirmed yet. Dismiss signals you don't want to keep.

bash
/inbox            # view all staged signals
/inbox d3         # dismiss signal 3

seal

Distils the current session into permanent knowledge. Extracts key insights, stores them at importance 5 in MAGMA, and writes a .md file to your notes directory.

bash
/seal

Good habit: run /seal at the end of any productive session to ensure nothing important is lost to context window expiry.

namespaces — ns

Namespaces partition your memory graph. Different projects, clients, or contexts can each have their own isolated memory space while sharing the same database file.

bash
/ns                   # show current namespace and list all
/ns project-alpha     # switch to project-alpha namespace
/ns personal          # switch to personal namespace

Start VEKTOR chat in a specific namespace from the CLI:

bash
vektor chat --ns project-alpha

steering

Steering instructions are always-on additions to your system prompt — permanent behavioural rules that persist across sessions without needing to re-type them.

bash
/steering-add "Always respond in British English"
/steering-add "Prioritise code examples over prose explanations"
/steering-list          # view all active steering rules

hooks

Hooks are automation triggers that fire when specific conditions are met in chat — for example, auto-storing a memory when you mention a deadline, or triggering a search when you ask about a topic.

bash
/hook-list              # view all hooks
/hook-add "when I mention a deadline, store it with importance 5"
/hook-add "when I ask about pricing, search the web first"

passport

An AES-256-GCM encrypted credential vault built into VEKTOR. Store API keys, tokens, and secrets safely — retrievable from chat or any CLOAK tool without exposing them in config files or shell history.

bash
/passport list              # list stored keys (names only, values hidden)
/passport set github-token ghp_xxxx
/passport get github-token
/passport delete github-token

The vault is stored locally at ~/.vektor/vault.enc. It is never transmitted or synced. CLOAK SSH tools use the vault automatically via keyName references.

session tools — compact · fork · export

compact runs an AI pass over older messages in your current session, compressing them into a concise summary. Recovers significant context window budget on long sessions without losing meaning.

bash
/compact

fork creates a new session branched from the current one — same memory context, fresh conversation. Useful for exploring a tangent without polluting your main thread.

bash
/fork

export writes the current conversation to a Markdown file in your working directory.

bash
/export

dashboard

Opens a live interactive memory graph in your browser — nodes are memories, edges are MAGMA connections (semantic, causal, temporal, entity). Useful for visualising how your knowledge is structured and finding unexpected links.

bash
/dashboard

The dashboard server starts on localhost:4242 by default. Leave it open — it updates live as you add memories.

Environment Variables

VEKTOR_LICENCE_KEYOptional. If set, used as a fallback key for SDK integrations (createMemory()). Not required for CLI activation — use vektor activate <KEY> instead.
VEKTOR_DB_PATHAbsolute path to your SQLite memory database. Defaults to ~/vektor-slipstream-memory.db. Use a project-relative path for per-project memory.
VEKTOR_AGENT_IDAgent identifier string. Used to namespace memories when multiple agents share a database. Defaults to default.