Full Memory CLI command reference with all subcommands and flags. Use when you need exact command syntax, flag names, or usage examples for any `memory` CLI command.
التثبيت
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
ملف SKILL.md هذا كبير جدا، لذلك يعرض SkillsMP القسم الاول فقط هنا.عرض على GitHub
name
memory-cli-reference
description
Full Memory CLI command reference with all subcommands and flags. Use when you need exact command syntax, flag names, or usage examples for any `memory` CLI command.
metadata
{"author":"emergent","version":"1.0"}
This skill contains the complete memory CLI command reference, auto-generated from the binary.
Requires --message with the user's input text. The --mode flag controls
execution mode:
sync (default) — blocks until the run completes, prints output
async — returns immediately with the run ID and status
stream — streams the agent's output to stdout in real-time
If a sync run pauses for human input (status: input-required), the CLI
will prompt you interactively and automatically resume the run.
Use --session to link the run to an existing ACP session.
memory acp runs create <agent-name> [flags]
Options
-h, --help help for create
--message string Input message for the agent (required)
--mode string Execution mode: sync, async, stream (default "sync")
--session string Link run to an existing ACP session ID
memory acp runs get
Get an ACP run by ID
Synopsis
Get the state of a specific ACP run.
Displays run status, output messages, and timing. If the run is paused
(input-required), shows the pending question. Use --json for raw JSON output.
memory acp runs get <agent-name> <run-id> [flags]
Options
-h, --help help for get
memory acp runs resume
Resume a paused ACP run
Synopsis
Resume an ACP run that is waiting for human input (status: input-required).
Requires --message with the response to the agent's question.
Use --mode to control execution mode (sync, async, stream).
-h, --help help for resume
--message string Response message (required)
--mode string Execution mode: sync, async, stream (default "sync")
memory acp sessions
Manage ACP sessions
Synopsis
Create and inspect ACP sessions for grouping related agent runs.
Options
-h, --help help for sessions
memory acp sessions create
Create a new ACP session
Synopsis
Create a new ACP session.
Sessions group related agent runs together. Use --agent to scope the
session to a specific agent.
memory acp sessions create [flags]
Options
--agent string Scope session to a specific agent
-h, --help help for create
memory acp sessions get
Get an ACP session
Synopsis
Get details of an ACP session including its run history.
Use --json for raw JSON output.
memory acp sessions get <session-id> [flags]
Options
-h, --help help for get
memory adk-sessions
Manage and inspect ADK sessions
Synopsis
Manage and inspect Google ADK (Agent Development Kit) sessions.
ADK sessions represent individual agent conversation threads, including the full
event history of messages and tool calls. Use the list subcommand to browse
sessions for a project, and the get subcommand to inspect a specific session in
detail.
Options
-h, --help help for adk-sessions
--project string Project name or ID
memory adk-sessions get
Get details and event history for a specific ADK session
Synopsis
Get full details and the complete event history for a specific ADK session.
Outputs the entire session record as indented JSON, including all events (user
messages, agent responses, and tool calls) in the session history.
memory adk-sessions get [id] [flags]
Options
-h, --help help for get
memory adk-sessions list
List ADK sessions for the active project
Synopsis
List all ADK sessions for the active (or specified) project.
Each session is printed on one line with its session ID, App name, User ID, and
last Updated timestamp in the format:
ID: | App: | User: | Updated:
memory adk-sessions list [flags]
Options
-h, --help help for list
memory agent-definitions
Manage agent definitions
Synopsis
Commands for managing agent definitions (system prompts, tools, model config, flow type, visibility)
Options
-h, --help help for agent-definitions
memory agent-definitions create
Create a new agent definition
Synopsis
Create a new agent definition.
Examples:
memory agent-definitions create --name "my-def" --system-prompt "You are a helpful agent"
memory defs create --name "extractor" --flow-type single --tools "search,graph_query" --visibility project
memory agent-definitions create [flags]
Options
--default-timeout int Default timeout in seconds
--description string Description
--flow-type string Flow type (single, multi, coordinator)
-h, --help help for create
--is-default string Set as default definition (true/false)
--max-steps int Maximum steps per run
--model string Model name (e.g., gemini-2.0-flash)
--name string Definition name (required)
--skills string Comma-separated skill names (e.g. "code-review,*")
--system-prompt string System prompt
--tools string Comma-separated tool names
--visibility string Visibility (external, project, internal)
memory agent-definitions delete
Delete an agent definition
Synopsis
Delete an agent definition by ID
memory agent-definitions delete [id] [flags]
Options
-h, --help help for delete
memory agent-definitions get
Get agent definition details
Synopsis
Get full details for a specific agent definition by ID.
Prints Name, ID, ProjectID, FlowType, Visibility, IsDefault, Description (if
set), System Prompt (truncated to 200 characters), Model configuration (Name,
Temperature, MaxTokens), Tools list, MaxSteps, DefaultTimeout, ACP Config
(DisplayName, Description, Capabilities), CreatedAt and UpdatedAt timestamps,
and any extra Config JSON.
memory agent-definitions get [id] [flags]
Options
-h, --help help for get
--json Output as JSON
memory agent-definitions list
List all agent definitions
Synopsis
List all agent definitions for the current project.
Prints a numbered list with each definition's Name, ID, FlowType, Visibility,
IsDefault flag, Tool count, and Description (if set).
memory agent-definitions list [flags]
Options
-h, --help help for list
--json Output as JSON
--limit int Maximum number of definitions to show (0 = all)
--page int Page number (1-based, used with --limit) (default 1)
memory agent-definitions override
View or set per-project agent overrides
Synopsis
View or set per-project configuration overrides for an agent definition.
Without flags, shows the current override for the agent. With flags, sets
or updates the override. Overrides are merged on top of canonical defaults
each time the agent runs — non-overridden fields always get the latest code defaults.
--clear Remove override — revert to canonical defaults
-h, --help help for override
--max-steps int Override max steps
--model string Override model name (e.g., gemini-2.5-pro)
--sandbox-enabled string Override sandbox enabled state (true/false)
--system-prompt string Override system prompt
--system-prompt-file string Read system prompt from file
--temperature float32 Override temperature (0.0-2.0) (default -1)
--tools string Override tools (comma-separated)
memory agent-definitions overrides
List all agent overrides for the project
Synopsis
List all per-project agent configuration overrides.
memory agent-definitions overrides [flags]
Options
-h, --help help for overrides
memory agent-definitions update
Update an agent definition
Synopsis
Update an existing agent definition (partial update)
memory agent-definitions update [id] [flags]
Options
--default-timeout int New default timeout
--description string New description
--flow-type string New flow type
-h, --help help for update
--is-default string Set as default (true/false)
--max-steps int New max steps
--model string New model name
--name string New name
--skills string New comma-separated skill names
--system-prompt string New system prompt
--tools string New comma-separated tool names
--visibility string New visibility
memory agents
Manage runtime agents
Synopsis
Commands for managing runtime agents (scheduling, triggers, execution state)
Options
-h, --help help for agents
--project string Project name or ID (auto-detected from config/env if not specified)
memory agents builtin-tools
Manage built-in tools
Synopsis
Commands for managing built-in (Go-native) tools in the Memory platform.
Built-in tools are implemented directly in the server and are available to all
agents without requiring an external MCP server connection. Examples include
query_entities, brave_web_search, webfetch, and create_document.
Use 'memory agents mcp-servers' to manage externally-connected MCP servers.
Options
-h, --help help for builtin-tools
memory agents builtin-tools configure
Set runtime config for a built-in tool
Synopsis
Set runtime configuration key/value pairs for a named built-in tool.
Looks up the tool by name and patches its config. Only the provided keys are
updated; existing keys not mentioned are left unchanged.
List all built-in tools registered for the current project.
Prints each tool's enabled/disabled state, name, and description. Tools that
require runtime configuration (e.g. API keys) are shown with their config status.
The 'Source' column shows where the effective settings come from: project, org,
or global (server default).
memory agents builtin-tools list [flags]
Options
-h, --help help for list
--limit int Maximum number of tools to show (0 = all)
--page int Page number (1-based, used with --limit) (default 1)
memory agents builtin-tools toggle
Enable or disable a built-in tool
Synopsis
Enable or disable a built-in tool for the current project.
The tool-id is the UUID shown in 'memory agents builtin-tools list'.
Examples:
memory agents builtin-tools toggle off
memory agents builtin-tools toggle on
Get full details for a specific agent run by its run ID. Output includes:
Run ID, agent ID, status, start/end times
Token usage: total input tokens, total output tokens
Estimated cost in USD
Root run ID (for sub-runs triggered by a parent run)
Any output or error message from the run
No --project flag is required — run IDs are globally unique.
This is the primary command to check the cost of a specific agent run.
memory agents get-run [run-id] [flags]
Options
-h, --help help for get-run
--json Output result as JSON
memory agents get
Get agent details
Synopsis
Get full details for a specific agent by its ID.
Prints Name, ID, Project ID, Strategy Type, Enabled status, Trigger Type,
Execution Mode, Cron Schedule (if set), Description (if set), Prompt (if set),
Reaction Config (Object Types and Events), Last Run At, Last Run Status,
Created At, Updated At, and any extra Config JSON.
memory agents get [id] [flags]
Options
-h, --help help for get
--json Output as JSON
memory agents hooks
Manage agent webhook hooks
Synopsis
Commands for managing webhook hooks on agents (create, list, delete)
Options
-h, --help help for hooks
memory agents hooks create
Create a webhook hook
Synopsis
Create a new webhook hook for an agent. The plaintext token is only shown once.
--burst-size int Burst size for rate limiting (0 = server default)
-h, --help help for create
--label string Hook label (required)
--rate-limit int Rate limit in requests per minute (0 = server default)
Prints a numbered list with each hook's Label, ID, Enabled status, Rate Limit
configuration (requests/minute and burst size, if set), and Created timestamp.
memory agents hooks list [agent-id] [flags]
Options
-h, --help help for list
memory agents list
List all agents
Synopsis
List all agents configured for the current project.
Prints a numbered list with each agent's Name, ID, Enabled status, Trigger
Type, Cron schedule (if any), Description (if set), Last Run timestamp, and
Last Run Status. Use --project to specify a project other than the active one.
memory agents list [flags]
Options
-h, --help help for list
--json Output as JSON
--limit int Maximum number of agents to show (0 = all)
--page int Page number (1-based, used with --limit) (default 1)
memory agents mcp-servers
Manage MCP servers
Synopsis
Commands for managing Model Context Protocol (MCP) servers in the Memory platform
Options
-h, --help help for mcp-servers
memory agents mcp-servers configure
Configure a tool's runtime settings
Synopsis
Set runtime configuration key/value pairs for a named MCP tool.
The command searches all MCP servers in the current project to find the tool
by name, then patches its config with the provided key=value pairs.
--args string Comma-separated arguments (for stdio type)
--command string Command to run (for stdio type)
--description string Server description
--enabled string Enable server (true/false, default: true)
--env strings Environment variables (KEY=VALUE format, can be specified multiple times)
-h, --help help for create
--name string Server name (required)
--type string Server type: 'sse', 'stdio', or 'http' (required)
--url string Server URL (for sse/http types)
memory agents mcp-servers delete
Delete an MCP server
Synopsis
Remove an MCP server and all its tools from your project configuration
Get full details for a specific MCP server, including its registered tools.
Prints Name (enabled/disabled), ID, Project ID, Description (if set), Type,
URL (for sse/http), Command and Args (for stdio), Env Vars count, Headers count,
Created, and Updated timestamps. Also lists all registered tools with their
enabled/disabled state and description (truncated to 60 characters).
memory agents mcp-servers get [server-id] [flags]
Options
-h, --help help for get
memory agents mcp-servers inspect
Inspect an MCP server
Synopsis
Test connection to an MCP server and display its capabilities, tools, prompts, and resources
List all MCP servers configured for the current project.
Prints a numbered list with each server's Name (enabled/disabled), Description
(if set), ID, Type (sse/http/stdio), URL or Command, Tool count, and Created
timestamp.
memory agents mcp-servers list [flags]
Options
-h, --help help for list
memory agents mcp-servers sync
Sync tools from an MCP server
Synopsis
Connect to the MCP server and refresh the list of available tools
List all tools registered for a specific MCP server.
Each tool entry shows its enabled/disabled state and tool name. Use
'memory agents mcp-servers sync ' first to discover available tools if the list
is empty.
List recent runs for an agent. Each run entry shows:
Run ID and status (running, completed, failed)
Start time and duration
Token usage: input tokens / output tokens
Estimated cost in USD (e.g. "Cost: $0.001234")
Use --limit to control how many runs are returned (default 10).
Use "memory agents get-run [run-id]" to get the full breakdown for a specific run.
memory agents runs [id] [flags]
Options
-h, --help help for runs
--json Output as JSON
--limit int Maximum number of runs to return (default 10)
memory agents trigger
Trigger an agent run
Synopsis
Trigger an immediate run of an agent.
Prints "Agent triggered successfully!" with an optional message on success, or
"Agent trigger failed." with an error message on failure.
memory agents trigger [id] [flags]
Options
--env stringArray Environment variable to inject into sandbox (KEY=VALUE, repeatable)
-h, --help help for trigger
--input string Initial message to pass to the agent at trigger time
--model string Override the model for this single run (e.g. claude-sonnet-4.7)
memory agents update
Update an agent
Synopsis
Update an existing agent (partial update)
memory agents update [id] [flags]
Options
--cron string New cron schedule
--description string New description
--enabled string Enable/disable (true/false)
--execution-mode string New execution mode
-h, --help help for update
--name string New agent name
--prompt string New agent prompt
--trigger-type string New trigger type
memory ask
Ask the Memory CLI assistant a question or request a task
Synopsis
Ask the Memory CLI assistant a question or request a task.
The assistant is context-aware — it adapts its responses based on whether you
are authenticated and whether a project is configured:
• Not authenticated → documentation answers; explains how to log in
• Auth, no project → account-level tasks + documentation answers
• Auth + project active → full task execution + documentation answers
The assistant fetches live documentation from the Memory docs site to answer
questions about the CLI, SDK, REST API, agents, and knowledge graph features.
It can also execute tasks on your behalf (list agents, query the graph, etc.).
Words after "ask" are joined into the question — quotes are optional.
Examples:
memory ask what are native tools?
memory ask what agents do I have configured?
memory ask how do I create a schema?
memory ask --project abc123 list all agent runs from today
memory ask what commands are available for managing API tokens?
memory ask <question...> [flags]
Options
-h, --help help for ask
--json Output result as JSON {question, response, tools, elapsedMs}
--project string Project ID (optional — uses default project if configured)
--runtime string Sandbox runtime for scripting tasks: python (default) or go
--show-time Show elapsed time at the end of the response
--show-tools Show tool calls made by the assistant during reasoning
--v2 Use the v2 code-generation agent (fewer round-trips, faster)
memory blueprints
Install or export Blueprints (schemas, agents, skills, seed data)
Synopsis
Blueprints are structured directories (or GitHub repos) containing schemas,
agent definitions, skills, and seed data to apply to a project.
Subcommands:
memory blueprints install Apply blueprints from a directory or GitHub URL
memory blueprints inspect List contents of a blueprint without installing
memory blueprints validate Validate a blueprint offline (no API calls)
memory blueprints dump Export project graph data as JSONL seed files
--dry-run Preview actions without making any API calls
-h, --help help for blueprints
--project string Project ID or name (overrides config/env)
--token string GitHub personal access token (for private repos); also read from MEMORY_GITHUB_TOKEN
--upgrade Update existing resources instead of skipping them
memory blueprints dump
Export project graph objects and relationships as JSONL seed files
Synopsis
Export the current project's graph objects and relationships as per-type JSONL
seed files that can be re-applied with "memory blueprints install
-h, --help help for dump
--types string Comma-separated list of object/relationship types to export (default: all types)
memory blueprints inspect
List the contents of a Blueprint directory or GitHub URL
Synopsis
Inspect a Blueprint directory (or GitHub repository) and display a detailed
listing of its contents without making any API calls or modifying the project.
Shows all discovered packs (with object and relationship type listings), agents,
skills, and seed data counts. Useful for reviewing what a blueprint contains
before installing it.
-h, --help help for inspect
--token string GitHub personal access token (for private repos); also read from MEMORY_GITHUB_TOKEN
memory blueprints install
Apply Blueprints from a directory or GitHub URL
Synopsis
Apply Blueprints — schemas, agent definitions, skills, and seed data — to the
current project from a structured directory or a GitHub repository URL.
The source directory (or GitHub repo root) may contain:
schemas/ — one file per memory schema (.json, .yaml, .yml)
agents/ — one file per agent definition (.json, .yaml, .yml)
skills/ — one subdirectory per skill, each containing a SKILL.md file
seed/objects/ — per-type JSONL files with graph objects to seed
seed/relationships/ — per-type JSONL files with graph relationships to seed
Skills follow the agentskills.io open standard: each skill is a directory with a
SKILL.md file containing YAML frontmatter (name, description) and Markdown content.
By default the command is additive-only: existing resources are skipped.
Use --upgrade to update resources that already exist.
--dry-run Preview actions without making any API calls
-h, --help help for install
--token string GitHub personal access token (for private repos); also read from MEMORY_GITHUB_TOKEN
--upgrade Update existing resources instead of skipping them
memory blueprints validate
Validate a Blueprint directory or GitHub URL without applying it
Synopsis
Validate a Blueprint directory (or GitHub repository) without making any API
calls or modifying the project.
Checks performed:
Packs — required fields, object/relationship type definitions, internal
cross-references (sourceType/targetType must name an objectType
in the same pack), duplicate names within and across files.
Agents — required fields, enum values (flowType, visibility, dispatchMode),
model.name required when model block is present, duplicate names.
Skills — required fields, non-empty content body, duplicate names.
Seed data — required fields, key presence (warning when missing), type
cross-referenced against loaded pack definitions, srcKey/dstKey
cross-referenced against seed object keys.
Exits 0 when only warnings are found, exits 1 when any error is found.
Natural language query (Ctrl+Q) to ask questions about your project
Vim-style keybindings (j/k for up/down, Enter to select)
Search functionality (press / to search)
Help panel (press ? to toggle)
Minimum terminal size: 80x24
The Traces tab connects to the Grafana Tempo instance that runs alongside the configured
server. The Tempo URL is derived automatically from the server URL (same host, port 3200).
Override with --tempo-url or MEMORY_TEMPO_URL if Tempo runs elsewhere.
memory browse [flags]
Options
-h, --help help for browse
--tempo-url string Override Tempo URL (auto-derived from server URL by default)
memory changelog
Show what's new since your current version
Synopsis
Display the aggregated changelog between your installed version and the latest release.
For dev builds, shows the latest release changelog only.
If you are already on the latest version, a message is shown instead.
memory changelog [flags]
Options
-h, --help help for changelog
memory completion
Generate shell completion scripts
Synopsis
Generate shell completion scripts for Memory CLI.
The completion script provides:
Command and subcommand completion
Flag name completion
Flag value completion for enum flags (e.g., --output)
and source this file from your PowerShell profile.
Notes:
Dynamic completions (project names, document IDs) are cached locally for 5 minutes
Cache location: ~/.memory/cache/
Completion timeout: 2 seconds (configurable via ~/.memory/config.yaml)
memory completion [bash|zsh|fish|powershell]
Options
-h, --help help for completion
memory config
Manage CLI configuration
Synopsis
Configure server URL, credentials, and other settings for the Memory CLI
Options
-h, --help help for config
memory config set-credentials
Set the email for authentication
Synopsis
Set the email address used for authentication in the CLI configuration file.
Prints the email that was set and the path to the configuration file where
the setting was saved.
memory config set-credentials [email] [flags]
Options
--config string config file path
-h, --help help for set-credentials
memory config set-server
Set the Memory server URL
Synopsis
Set the Memory server URL in the CLI configuration file.
Prints the new server URL and the path to the configuration file where the
setting was saved. Use this to point the CLI at a different server environment
(e.g. local dev vs production).
memory config set-server [url] [flags]
Options
--config string config file path
-h, --help help for set-server
memory config set
Set a configuration value
Synopsis
Set a configuration value by key.
Supported keys:
server_url Server URL (e.g., http://localhost:3002)
api_key API key for authentication
email Email for authentication
org_id Organization ID
project_id Project ID
auto_update_enabled Enable/disable automatic update checks (true/false)
auto_update_mode Update mode: notify (default) or auto
auto_update_check_interval How often to check for updates (e.g., 24h, 12h)
google_api_key Google AI API key (for LLM features)
openai_base_url OpenAI-compatible base URL (e.g., http://localhost:11434/v1)
openai_api_key OpenAI-compatible API key (optional for local servers)
llm_model LLM model name (e.g., llama3, mistral)
For standalone installations, google_api_key is saved to .env.local.
All other keys are saved to config.yaml.
memory config set <key> <value> [flags]
Options
--config string config file path
-h, --help help for set
memory config show
Display current configuration
Synopsis
Display the current CLI configuration as a table.
Prints a Setting/Value table with: Server URL, API Key (masked, showing only
the first 8 and last 4 characters), Email, Organization ID, Project ID, Debug
mode, and the Config File path. Values are merged from the config file and any
overriding environment variables.
memory config show [flags]
Options
--config string config file path
-h, --help help for show
memory documents
Manage project documents
Synopsis
Commands for managing documents in the Memory platform
Options
-h, --help help for documents
--output string Output format: table or json (default "table")
--project string Project ID (overrides config/env)
memory documents delete
Delete a document
Synopsis
Delete a document and all related entities.
Prints the deletion status and a summary of removed entities: Chunks,
Extraction jobs, Graph objects, and Graph relationships. Use --output json
for a machine-readable response.
memory documents delete <id> [flags]
Options
-h, --help help for delete
memory documents extraction-summary
Show extraction summary for a document
Synopsis
Show the extraction summary for the most recently completed extraction
job on a document.
Displays counts of objects created (broken down by type), relationships
created, chunks processed, and the completion timestamp. Use --output json
for a machine-readable response.
memory documents extraction-summary <id> [flags]
Options
-h, --help help for extraction-summary
memory documents get
Get a document by ID
Synopsis
Get details for a specific document by its ID.
Prints ID, Filename, MIME Type, Size (bytes), Conversion Status, total Chunks,
Embedded Chunks, and Created/Updated timestamps. Use --output json to receive
the full document record as JSON instead.
memory documents get <id> [flags]
Options
-h, --help help for get
memory documents list
List documents
Synopsis
List documents in the current project.
Output is a table with columns: ID, Filename, MIME Type, Size (bytes), and
Created date. Use --limit to control how many records are returned. Use
--output json to receive the full document list as JSON.
memory documents list [flags]
Options
-h, --help help for list
--limit int Maximum number of results (default 50)
memory documents upload
Upload a file as a document
Synopsis
Upload a local file and create a document record. Use --auto-extract to trigger extraction after upload.
memory documents upload <file> [flags]
Options
--auto-extract Trigger extraction after upload
-h, --help help for upload
memory embeddings
Manage embedding workers
Synopsis
Inspect and control the embedding workers running in the Memory server.
Useful for benchmarking: pause all workers before a bench run so embeddings
don't interfere with write throughput, then resume afterwards.
Examples:
memory embeddings status Show current worker state
memory embeddings pause Pause all embedding workers
memory embeddings resume Resume all embedding workers
memory embeddings pause --server http://your-server:3002
Options
--config-path string path to Memory config.yaml
-h, --help help for embeddings
--server string Memory server URL (overrides config)
memory embeddings clear
Delete all pending and processing embedding jobs from both queues
Synopsis
Delete all pending and processing jobs from the object and relationship
embedding queues. Useful when the queue is stuck or polluted.
Get or set embedding worker config (batch, concurrency, stale-minutes)
Synopsis
Get or update embedding worker configuration at runtime without restarting.
All flags are optional — omit a flag to leave that value unchanged.
With no flags, shows the current configuration.
Examples:
memory embeddings config Show current config
memory embeddings config --batch 200 --concurrency 200 Max throughput
memory embeddings config --stale-minutes 60 Raise stale threshold
memory embeddings config --batch 10 --concurrency 10 Throttle down
memory embeddings config [flags]
Options
--batch int Number of jobs to dequeue per poll (0 = no change)
--concurrency int Number of jobs processed concurrently per poll (0 = no change)
-h, --help help for config
--interval-ms int Polling interval in milliseconds (0 = no change)
--stale-minutes int Minutes before a processing job is marked stale (0 = no change)
memory embeddings pause
Pause all embedding workers (object, relationship, sweep)
Synopsis
Pause all embedding workers (objects, relationships, and sweep).
Prints a confirmation message from the server, then displays the updated worker
state table showing each worker's status symbol (running ●, paused ⏸, stopped ○)
and the current Config (batch_size, concurrency, interval_ms, stale_minutes).
memory embeddings pause [flags]
Options
-h, --help help for pause
memory embeddings progress
Show embedding job queue progress (pending, processing, completed, failed)
Synopsis
Show embedding job queue statistics for all queues.
Displays counts of pending, processing, completed, failed, and dead-letter jobs
for both the graph object and graph relationship embedding queues.
Resume all paused embedding workers (objects, relationships, and sweep).
Prints a confirmation message from the server, then displays the updated worker
state table showing each worker's status symbol (running ●, paused ⏸, stopped ○)
and the current Config (batch_size, concurrency, interval_ms, stale_minutes).
memory embeddings resume [flags]
Options
-h, --help help for resume
memory embeddings status
Show pause/run state of all embedding workers
Synopsis
Show the current state of all embedding workers.
Prints a worker state table for the objects, relationships, and sweep workers.
Each worker is shown with a symbol indicating its state: running (●), paused (⏸),
or stopped (○). Also displays the current worker Config: batch_size, concurrency,
interval_ms, and stale_minutes.
memory embeddings status [flags]
Options
-h, --help help for status
memory extraction
Manage extraction operations
Synopsis
Commands for managing extraction jobs and related operations in the Memory platform
Options
-h, --help help for extraction
--output string Output format: table or json (default "table")
--project string Project ID (overrides config/env)
memory extraction jobs
Manage extraction jobs
Synopsis
Create, monitor, and manage extraction jobs that extract structured entities from documents
Options
-h, --help help for jobs
memory extraction jobs cancel
Cancel an extraction job
Synopsis
Cancel a running or queued extraction job.
Completed or failed jobs cannot be cancelled.
Requires an API key with admin:write scope.
memory extraction jobs cancel <job-id> [flags]
Options
-h, --help help for cancel
memory extraction jobs create
Create a new extraction job
Synopsis
Create a new extraction job for a document.
Requires --project and --document flags. The extraction job will process the
document and extract structured entities based on any installed schemas.
Requires an API key with admin:write scope.
memory extraction jobs create [flags]
Options
--document string Document ID to extract from (required)
-h, --help help for create
memory extraction jobs get
Get extraction job details
Synopsis
Get detailed information about an extraction job by its ID.
Shows the job status, progress, created/updated timestamps, and any error messages.
Requires an API key with admin:read scope.
memory extraction jobs get <job-id> [flags]
Options
-h, --help help for get
--interval duration Poll interval (minimum 1s) (default 3s)
--quiet Suppress progress updates
--timeout duration Maximum watch duration (default 10m0s)
--watch Poll until terminal state (completed/failed/cancelled)
memory extraction jobs list
List extraction jobs
Synopsis
List extraction jobs for a project.
Use --status to filter by job status (queued, running, completed, failed, cancelled).
Use --document to filter by source document ID.
Use --limit to control the number of results (default 50).
Requires an API key with admin:read scope.
memory extraction jobs list [flags]
Options
--document string Filter by document ID
-h, --help help for list
--limit int Maximum number of results (default 50)
--status string Filter by status (queued, running, completed, failed, cancelled)
memory extraction jobs logs
Get logs for an extraction job
Synopsis
Get execution logs for an extraction job.
Shows processing steps, entity discoveries, and any errors encountered during extraction.
Requires an API key with admin:read scope.
memory extraction jobs logs <job-id> [flags]
Options
-h, --help help for logs
memory extraction jobs retry
Retry a failed extraction job
Synopsis
Retry a failed extraction job.
The job will be re-queued for processing with the same configuration.
Requires an API key with admin:write scope.
memory extraction jobs retry <job-id> [flags]
Options
-h, --help help for retry
memory extraction jobs stats
Get extraction job statistics for a project
Synopsis
Get aggregated statistics for extraction jobs in a project.
Shows counts by status (queued, running, completed, failed, cancelled) and other metrics.
Requires an API key with admin:read scope.
memory extraction jobs stats [flags]
Options
-h, --help help for stats
memory forget
Soft-delete knowledge graph objects matching a natural-language query
Synopsis
Find and soft-delete graph objects that match a natural-language query.
Deletes are REVERSIBLE — use 'memory graph restore ' to undo any deletion.
Strategy controls confirmation behaviour:
confirm Ask for approval before executing a batch of deletes (default)
auto Delete automatically without asking
ask Require per-delete confirmation (interactive terminals only)
Cascade depth controls how many hops of neighbors are also deleted:
1 Direct matches only
2 Direct matches + 1-hop neighbors (default)
3 Direct matches + 2-hop neighbors
Examples:
memory forget "all auth related nodes"
memory forget --strategy auto "temporary test objects"
memory forget --cascade 1 "the node named foo"
memory forget --dry-run "everything tagged deprecated"
memory forget --project abc123 "old migration objects"
memory forget [text] [flags]
Options
--cascade int Cascade depth: 1 (direct only), 2 (1-hop), 3 (2-hop) (default 2)
--dry-run Report what would be deleted without performing any deletes
-h, --help help for forget
--json Output results as JSON
--project string Project ID (uses default project if not specified)
--session string Continue a previous forget session
--show-time Show elapsed time
--show-tools Show tool calls made by the agent
--strategy string Deletion strategy: auto, confirm, ask (default "confirm")
memory graph
Manage graph objects and relationships
Synopsis
Commands for managing graph objects and relationships in the Memory knowledge graph
Options
-h, --help help for graph
--output string Output format: table or json (default "table")
--project string Project ID (overrides config/env)
memory graph branches
Manage graph branches
Synopsis
Manage isolated workspaces (branches) for the knowledge graph.
A branch is a copy of the graph where you can create, update, and delete
objects and relationships without affecting the main graph. Changes stay
isolated until you explicitly merge them.
The main graph has no branch ID. All graph write commands (objects create,
relationships create, etc.) accept --branch to target a branch instead
of the main graph. Without --branch, writes go to the main graph.
Typical workflow:
Create a branch
Write objects/relationships with --branch
Preview the merge (dry run)
Execute the merge into a target branch
Delete the branch
Options
-h, --help help for branches
memory graph branches create
Create a new branch
Synopsis
Create a new branch — an isolated workspace for the knowledge graph.
Objects and relationships written with --branch are visible only on
that branch until merged. The main graph is unaffected until you run
"memory graph branches merge".
--parent is optional metadata recording which branch this was forked from.
It does not affect merge behavior — it is lineage information only.
After creating a branch, capture its ID immediately:
--description string Branch description (optional)
-h, --help help for create
--name string Branch name (required)
--parent string Parent branch ID
memory graph branches delete
Delete a branch
Synopsis
Delete a branch and all objects that exist only on that branch.
Objects that have already been merged into another branch are unaffected.
This operation is irreversible.
Examples:
memory graph branches delete
memory graph branches delete <id> [flags]
Options
-h, --help help for delete
memory graph branches fork
Fork a branch with object copies
Synopsis
Fork a branch — create a new branch and copy all HEAD objects and
relationships from the source into it.
SOURCE: use a branch UUID from "memory graph branches list", or the special
keyword "main" to fork from the main graph (branch_id IS NULL).
Copied objects preserve their canonical IDs so a subsequent merge back
into the source is aware of shared identity. Only HEAD versions are
copied (not full version history).
Use --filter-type to selectively copy only certain object types. When
a filter is applied, relationships where one endpoint was excluded are
silently skipped (the response reports the skipped count).
Examples:
memory graph branches fork main --name "what-if-scenario"
memory graph branches fork main --name "subset" --filter-type Service --filter-type API
memory graph branches fork --name "child" --description "child branch"
--description string Branch description (optional)
--filter-type strings Only copy objects of these types (repeatable)
-h, --help help for fork
--name string New branch name (required)
memory graph branches get
Get a branch by ID
Synopsis
Get details for a branch by its ID.
Use --output json to receive the full object as JSON.
Examples:
memory graph branches get
memory graph branches get --output json
memory graph branches get <id> [flags]
Options
-h, --help help for get
memory graph branches list
List graph branches
Synopsis
List all branches for the current project.
The main graph is not a branch and does not appear in this list. Every
branch shown here has an ID you can pass to --branch on graph write commands,
or as the target/source of a merge.
Use --output json to get full branch details including parent_branch_id and
created_at, which is useful for scripting.
Examples:
memory graph branches list
memory graph branches list --project
memory graph branches list --output json
memory graph branches list [flags]
Options
-h, --help help for list
memory graph branches merge
Merge a source branch into a target branch (or main)
Synopsis
Merge changes from a source branch into a target branch.
DIRECTION: source → target. The source branch is read; the target branch
receives the changes.
TARGET: use a branch UUID from "memory graph branches list", or the special
keyword "main" to merge into the main graph (branch_id IS NULL).
By default this is a DRY RUN — no changes are made. Pass --execute only
when you are ready to apply.
MERGE CLASSIFICATIONS:
added — object exists on source only; will be created on target
fast_forward — object changed on source only; target will be updated
conflict — object changed on BOTH branches; merge is BLOCKED
unchanged — identical on both branches; nothing to do
If any conflicts exist, --execute is blocked. Resolve conflicts manually
(update the source or target so they agree) then re-run.
The merge runs in a single database transaction — all-or-nothing.
WORKFLOW:
1. Dry run first — always
memory graph branches merge main --source
2. Inspect conflicts in detail
memory graph branches merge main --source --output json
3. Execute when clean
memory graph branches merge main --source --execute
--description string New branch description
-h, --help help for update
--name string New branch name
memory graph events
Stream real-time graph object events via SSE
Synopsis
Opens a Server-Sent Events stream and prints graph object create/update/delete events as they occur.
memory graph events [flags]
Options
-h, --help help for events
memory graph explore
Explore the knowledge graph visually in the browser
Synopsis
Start a local web server and open an interactive graph visualizer in your browser.
The visualizer lets you search for nodes, click to expand neighbors, and follow
paths through the knowledge graph. All API calls are proxied through the CLI
process — no credentials are ever sent to the browser.
--branch string Branch name or ID to explore (default: main graph)
-h, --help help for explore
--host string Host/IP to bind (use 0.0.0.0 to listen on all interfaces) (default "127.0.0.1")
--port int Local port to listen on (default 7734)
--project string Project ID (overrides config/env)
memory graph objects
Manage graph objects
Options
-h, --help help for objects
memory graph objects bulk-delete
Bulk delete graph objects matching a filter
Synopsis
Permanently delete all graph objects matching the given filter.
This is a shorthand for bulk-update --action hard_delete. Use --dry-run to
preview the number of matching objects without deleting any.
--dry-run Preview matched count without deleting
--filter stringArray Property filter key=value (repeatable)
--filter-op string Operator for --filter: eq, neq, gt, gte, lt, lte, contains, in, exists (default "eq")
-h, --help help for bulk-delete
--limit int Maximum number of objects to delete (default 1000, max 100000; 0 = server default)
--type string Filter by object type (comma-separated)
memory graph objects bulk-update
Bulk update graph objects matching a filter
Synopsis
Execute a bulk action on all graph objects matching the given filter.
The --action flag controls what operation is performed. Use --dry-run to preview
the number of matching objects without making any changes.
Supported actions:
update_status Set status field (requires --value)
soft_delete Set deleted_at timestamp
hard_delete Permanently remove objects
merge_properties Deep-merge --properties into existing JSONB properties
replace_properties Replace the entire properties object
add_labels Add labels (--labels)
remove_labels Remove labels (--labels)
set_labels Replace all labels (--labels)
--action string Action to perform: update_status, soft_delete, hard_delete, merge_properties, replace_properties, add_labels, remove_labels, set_labels (required)
--dry-run Preview matched count without making changes
--filter stringArray Property filter key=value (repeatable)
--filter-op string Operator for --filter: eq, neq, gt, gte, lt, lte, contains, in, exists (default "eq")
-h, --help help for bulk-update
--labels stringArray Labels for add_labels/remove_labels/set_labels actions
--limit int Maximum number of objects to affect (default 1000, max 100000; 0 = server default)
--properties string JSON properties for merge_properties/replace_properties actions
--type string Filter by object type (comma-separated)
--value string Value for update_status action
memory graph objects create-batch
Batch-create graph objects (and optionally relationships) from a JSON file
Synopsis
Create multiple graph objects in one API call. Accepts two input formats:
FLAT ARRAY FORMAT (objects only):
A JSON array of objects, each with:
type (string, required)
name (string, optional) — placed in properties.name
description (string, optional) — placed in properties.description
properties (object, optional) — arbitrary additional properties
SUBGRAPH FORMAT (objects + relationships, preferred when wiring is needed):
A JSON object with "objects" and "relationships" arrays. Objects carry an
optional "_ref" placeholder; relationships reference objects via "src_ref"/"dst_ref"
for new objects in the same call, or "src_id"/"dst_id" for pre-existing UUIDs.
Both can be mixed freely. Max 500 objects, 500 relationships per call — larger
inputs are auto-chunked with a warning.
Example (mixed: new objects wired to existing UUIDs):
{
"objects": [
{"_ref": "svc", "type": "Service", "name": "auth-service"}
],
"relationships": [
{"type": "calls_service", "src_id": "", "dst_ref": "svc"}
]
}
Output (text): one line per object, then "Created N objects, M relationships"
Output (--output json): full response including ref_map (placeholder → UUID)
memory graph objects create-batch [flags]
Options
--file string Path to JSON file containing array of objects (required)
-h, --help help for create-batch
memory graph objects create
Create a graph object
Synopsis
Create a new graph object with the given type and optional properties.
When --key is given, the object is keyed for idempotent operations:
By default (skip): if an object with that key already exists, the command
exits successfully without modifying it.
With --upsert: if an object with that key already exists, it is updated
(create-or-update semantics matching blueprint behavior).
memory graph objects create [flags]
Options
--branch string Branch ID to create the object on (omit for main branch)
--description string Shorthand for --properties '{"description": "..."}' (subject to schema validation)
-h, --help help for create
--key string Stable key for idempotent operations
--name string Shorthand for --properties '{"name": "..."}' (subject to schema validation)
--properties string JSON properties object
--status string Object status (e.g. active, planned, deprecated)
--type string Object type (required)
--upsert Update existing object if key already exists (requires --key)
memory graph objects delete
Delete a graph object
Synopsis
Soft-delete a graph object by ID
memory graph objects delete <id> [flags]
Options
--branch string Branch name or ID to scope deletion to (omit for main branch)
-f, --force Skip confirmation prompt (accepted for scripting compatibility)
-h, --help help for delete
memory graph objects edges
Show edges (relationships) for an object
Synopsis
Show all incoming and outgoing relationships for a graph object.
Prints two sections: Outgoing (format: [Type] → DstID (entity: EntityID)) and
Incoming (format: [Type] ← SrcID (entity: EntityID)) with counts for each.
Use --output json to receive the full edges response as JSON.
memory graph objects edges <id> [flags]
Options
-h, --help help for edges
memory graph objects get
Get a graph object by ID or key
Synopsis
Get details for a graph object (entity) by its ID or key.
When a UUID is provided it is fetched directly. When a non-UUID string is
provided it is treated as a key and resolved against the specified branch
(or the main branch when --branch is omitted).
Use --branch to scope key resolution to a specific branch — accepts either
a branch UUID or a human-readable branch name.
Prints Entity ID, Version ID, Type, Version number, Key (if set), Status (if
set), Labels (if any), Created timestamp, and Properties as formatted JSON.
Use --output json to receive the full object as JSON instead.
Examples:
memory graph objects get
memory graph objects get my-object-key
memory graph objects get my-object-key --branch plan/next-gen
memory graph objects get my-object-key --branch
memory graph objects get <id|key> [flags]
Options
--branch string Branch ID or name to resolve the key against (omit for main branch)
-h, --help help for get
--output string Output format: table or json (default "table")
memory graph objects list
List graph objects
Synopsis
List graph objects (entities) in the current project.
Output is a table with columns: Entity ID, Type, Version, Status, and Created
date. Use --type to filter by object type, --limit to control result count, and
--output json to receive the full list as JSON.
Use --key to filter by the object's stable key field directly. This is the most
efficient way to look up a single object by key without fetching all objects.
Use --filter key=value to filter by object properties (repeatable). All filters
are combined with AND. The --filter-op flag sets the comparison operator for
every --filter in the same invocation (default: eq).
Examples:
memory graph objects list --key sq-soft-delete-employee
memory graph objects list --branch --key ep-employees-delete
memory graph objects list --filter status=active
memory graph objects list --type Feature --filter status=active --filter inertia_tier=1
memory graph objects list --filter status=active,draft --filter-op in
memory graph objects list --filter status --filter-op exists
memory graph objects list [flags]
Options
--branch string Branch ID to scope results to (omit for main branch)
--cursor string Pagination cursor from a previous response (next_cursor field)
--filter stringArray Property filter as key=value (repeatable); see --filter-op
--filter-op string Operator for --filter: eq, neq, gt, gte, lt, lte, contains, in, exists (default "eq")
-h, --help help for list
--ids string Fetch specific objects by ID (comma-separated: --ids id1,id2,id3)
--key string Filter by object key (direct key-based lookup)
--limit int Maximum number of results (server default: 1000) (default 1000)
--status string Filter by object status
--type string Filter by object type
memory graph objects move
Move a graph object to a different branch
Synopsis
Move a graph object from its current branch to a target branch.
The object's full version chain and any self-referencing relationships are moved.
If the object has relationships connecting to other objects that are not being
moved, the operation fails — move related objects first or delete the relationships.
Use --target-branch to specify the destination branch UUID. Use "main" or omit
the flag to move to the main branch.
-h, --help help for move
--output string Output format: table or json (default "table")
--target-branch string Target branch UUID (use 'main' or omit for main branch)
memory graph objects similar
Find objects similar to a given object by embedding
Synopsis
Find graph objects similar to the given object using cosine similarity on stored embeddings.
Returns a ranked list with similarity scores. Use --limit to control result count,
--type to filter by object type, and --min-score to exclude low-confidence results.
Use --output json to receive the full response as JSON.
Examples:
memory graph objects similar
memory graph objects similar --limit 20 --type Feature
memory graph objects similar --min-score 0.75 --output json
memory graph objects similar <id> [flags]
Options
-h, --help help for similar
--limit int Maximum number of similar objects to return (default 10)
--min-score float Minimum similarity score (0–1); 0 means no threshold
--output string Output format: table or json (default "table")
--type string Filter results by object type
memory graph objects update-batch
Batch-update graph objects from a JSON file
Synopsis
Update multiple graph objects in one API call.
The input file must contain a JSON array of objects, each with:
id (string, required) — object entity ID to update
key (string, optional)
properties (object, optional) — merged with existing properties
labels ([]string, optional) — appended (or replaced with replaceLabels)
replaceLabels (bool, optional) — replace labels instead of appending
status (string, optional)
branch_id (string, optional)
--file string Path to JSON file containing array of object updates (required)
-h, --help help for update-batch
--output string Output format: table or json (default "table")
memory graph objects update
Update a graph object
Synopsis
Update a graph object's properties or status (creates a new version)
memory graph objects update <id> [flags]
Options
--branch string Branch ID to update the object on (omit for main branch)
--description string Shorthand for --properties '{"description": "..."}' (subject to schema validation)
-h, --help help for update
--key string Set a stable key on the object (enables cross-session src_key/dst_key references)
--name string Shorthand for --properties '{"name": "..."}' (subject to schema validation)
--properties string JSON properties object to merge
--status string Set object status (e.g. active, planned, deprecated)
memory graph relationships
Manage graph relationships
Options
-h, --help help for relationships
memory graph relationships create-batch
Batch-create graph relationships from a JSON file
Synopsis
Create multiple graph relationships in one API call.
The input file must contain a JSON array of objects, each with:
type (string, required) — relationship type
from (string, required) — source entity ID
to (string, required) — destination entity ID
properties (object, optional)
Use --upsert to make the operation idempotent: existing relationships (same
type, from, to) are returned as-is instead of causing an error. Safe to retry.
--file string Path to JSON file containing array of relationships (required)
-h, --help help for create-batch
--upsert Apply upsert semantics to all items: skip existing relationships instead of failing
memory graph relationships create
Create a relationship
Synopsis
Create a directed relationship between two graph objects.
When --upsert is given, the operation is idempotent: if a relationship with the
same type, source, and destination already exists, it is returned as-is without
creating a duplicate. If the relationship was deleted, it is restored.
Without --upsert, creating a relationship that already exists returns an error.
memory graph relationships create [flags]
Options
--branch string Branch ID to create the relationship on (omit for main branch)
--from string Source object ID (required)
-h, --help help for create
--properties string JSON properties object
--to string Destination object ID (required)
--type string Relationship type (required)
--upsert Return existing relationship if (type, from, to) already exists instead of creating a duplicate
memory graph relationships delete
Delete a relationship
Synopsis
Soft-delete a graph relationship by ID.
Use --branch to scope the deletion to a specific branch (name or UUID).
Without --branch the relationship is deleted from the main graph.
--branch string Branch name or ID to scope deletion to (omit for main branch)
-h, --help help for delete
memory graph relationships get
Get a relationship by ID
Synopsis
Get details for a graph relationship by its ID.
Prints Entity ID, Version ID, Type, From (source entity ID), To (destination
entity ID), Version number, Created timestamp, and Properties as formatted
JSON. Use --output json to receive the full relationship as JSON instead.
memory graph relationships get <id> [flags]
Options
-h, --help help for get
memory graph relationships list
List relationships
Synopsis
List relationships in the current project.
Output is a table with columns: Entity ID, Type, From (source entity ID), To