Imported from emergent-company/emergent.memory (
tools/cli/internal/skillsfs/skills/memory-cli-reference/SKILL.md). Install upstream withnpx skills add emergent-company/emergent.memory --skill memory-cli-reference. Copyright stays with the author.
This skill contains the complete memory CLI command reference, auto-generated from the binary.
Use this when you need to look up:
- Exact subcommand names (e.g.
memory agents get-run,memory provider configure-project) - Available flags and their types for any command
- Usage examples embedded in the help text
- Which subcommands exist under a parent command
Memory CLI Reference
Full command reference auto-generated from memory --help. Each section covers one command or subcommand with its synopsis, usage, and flags.
memory
CLI tool for Memory platform
Synopsis
Command-line interface for the Memory knowledge base platform.
Manage projects, documents, graph objects, AI agents, and MCP integrations.
For self-hosted deployments, use 'memory server' to install and manage your server.
Options
--compact use compact output layout
--config string config file (default is $HOME/.memory/config.yaml)
--debug enable debug logging
-h, --help help for memory
--json shorthand for --output json
--no-color disable colored output
--output string output format (table, json, yaml, csv) (default "table")
--project string project ID (overrides config and environment)
--project-token string project token (overrides config and environment)
--server string Memory server URL
memory acp
Agent Communication Protocol (ACP) operations
Synopsis
Commands for interacting with agents via the Agent Communication Protocol (ACP) v1 API.
Options
-h, --help help for acp
memory acp agents
Manage ACP agents
Synopsis
Discover and inspect agents exposed via the Agent Communication Protocol.
Options
-h, --help help for agents
memory acp agents get
Get an ACP agent manifest
Synopsis
Get the full manifest for a specific ACP agent by its slug name.
Displays the agent's name, description, capabilities, input/output modes, and status metrics. Use --json for the raw JSON response.
memory acp agents get <name> [flags]
Options
-h, --help help for get
memory acp agents list
List externally-visible ACP agents
Synopsis
List all agents with visibility='external' that are exposed via ACP.
Displays a table with NAME, DESCRIPTION, VERSION, and SUCCESS RATE columns. Use --json to output the raw JSON response.
memory acp agents list [flags]
Options
-h, --help help for list
memory acp ping
Check that the ACP endpoint is reachable
Synopsis
Ping the ACP v1 endpoint on the configured Memory server.
This command does not require authentication.
memory acp ping [flags]
Options
-h, --help help for ping
memory acp runs
Manage ACP agent runs
Synopsis
Create, inspect, cancel, and resume agent runs via ACP.
Options
-h, --help help for runs
memory acp runs cancel
Cancel an ACP run
Synopsis
Cancel a running or queued ACP run.
Requests cancellation of the specified run. The run transitions to 'cancelling' and eventually 'cancelled'.
memory acp runs cancel <agent-name> <run-id> [flags]
Options
-h, --help help for cancel
memory acp runs create
Create a new ACP agent run
Synopsis
Create a new run for an ACP agent.
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).
memory acp runs resume <agent-name> <run-id> [flags]
Options
-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.
Examples: memory defs override graph-query-agent # view current override memory defs override graph-query-agent --model gemini-2.5-pro # override model memory defs override cli-assistant-agent --max-steps 30 # override max steps memory defs override graph-query-agent --model gemini-2.5-pro --temperature 0.2 --max-steps 20 memory defs override graph-query-agent --system-prompt-file prompt.txt memory defs override graph-query-agent --sandbox-enabled false # disable sandbox memory defs override graph-query-agent --clear # remove override
memory agent-definitions override [agentName] [flags]
Options
--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.
Examples: memory agents builtin-tools configure brave_web_search api_key=YOUR_KEY memory agents builtin-tools configure reddit_search client_id=ID client_secret=SECRET
memory agents builtin-tools configure [tool-name] [key=value ...] [flags]
Options
-h, --help help for configure
memory agents builtin-tools list
List all built-in tools
Synopsis
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
memory agents builtin-tools toggle [tool-id] [on|off] [flags]
Options
-h, --help help for toggle
memory agents create
Create a new agent
Synopsis
Create a new runtime agent for the current project.
Examples: memory agents create --name "my-agent" --project memory agents create --name "cron-agent" --trigger-type schedule --cron "0 */5 * * * *" memory agents create --name "reaction-agent" --trigger-type reaction --reaction-events created,updated --reaction-object-types document
memory agents create [flags]
Options
--cron string Cron schedule (e.g., '0 */5 * * * *')
--description string Agent description
--enabled string Enable agent (true/false)
--execution-mode string Execution mode
-h, --help help for create
--name string Agent name (required)
--prompt string Agent prompt
--reaction-events string Comma-separated reaction event types (e.g., created,updated)
--reaction-object-types string Comma-separated reaction object types (e.g., document,chunk)
--strategy-type string Strategy type (e.g., graph_object_processor)
--trigger-type string Trigger type (manual, schedule, reaction, webhook)
memory agents delete
Delete an agent
Synopsis
Delete an agent by ID.
Prints "Agent deleted successfully." on success.
memory agents delete [id] [flags]
Options
-h, --help help for delete
memory agents get-run
Get details for a specific run
Synopsis
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.
Examples: memory agents hooks create --label "CI/CD Pipeline" memory agents hooks create --label "Staging" --rate-limit 30 --burst-size 5
memory agents hooks create [agent-id] [flags]
Options
--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)
memory agents hooks delete
Delete a webhook hook
Synopsis
Delete a webhook hook from an agent
memory agents hooks delete [agent-id] [hook-id] [flags]
Options
-h, --help help for delete
memory agents hooks list
List webhook hooks
Synopsis
List all webhook hooks configured for an agent.
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.
Examples: memory agents mcp-servers configure brave_web_search api_key=YOUR_KEY --project memory agents mcp-servers configure reddit_search client_id=YOUR_ID client_secret=YOUR_SECRET --project
memory agents mcp-servers configure [tool-name] [key=value ...] [flags]
Options
-h, --help help for configure
memory agents mcp-servers create
Create a new MCP server
Synopsis
Register a new MCP server with the specified configuration.
Examples: memory agents mcp-servers create --name "my-server" --type sse --url "http://localhost:8080/sse" memory agents mcp-servers create --name "stdio-server" --type stdio --command "npx" --args "-y,@modelcontextprotocol/server-github" memory agents mcp-servers create --name "my-server" --type http --url "http://localhost:8080/mcp" --env "API_KEY=abc123"
memory agents mcp-servers create [flags]
Options
--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
memory agents mcp-servers delete [server-id] [flags]
Options
-h, --help help for delete
memory agents mcp-servers get
Get MCP server details
Synopsis
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
memory agents mcp-servers inspect [server-id] [flags]
Options
-h, --help help for inspect
memory agents mcp-servers list
List all MCP servers
Synopsis
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
memory agents mcp-servers sync [server-id] [flags]
Options
-h, --help help for sync
memory agents mcp-servers tools
List tools for an MCP server
Synopsis
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.
memory agents mcp-servers tools [server-id] [flags]
Options
-h, --help help for tools
memory agents questions
Manage agent questions
Synopsis
Commands for listing and responding to agent questions
Options
-h, --help help for questions
memory agents questions list-project
List questions for a project
Synopsis
List all agent questions for the current project.
Outputs the full question list as indented JSON. Use --status to filter by question status (e.g. pending, answered).
memory agents questions list-project [flags]
Options
-h, --help help for list-project
--status string Filter by status (pending, answered, cancelled, expired)
memory agents questions list
List questions for a run
Synopsis
List all questions asked by the agent during a specific run.
Outputs the full question list as indented JSON, including each question's ID, status, prompt text, and response (if already answered).
memory agents questions list [run-id] [flags]
Options
-h, --help help for list
memory agents questions respond
Respond to a question
Synopsis
Respond to a pending agent question and resume the paused agent run.
Sends the response text as the answer to the specified question. Outputs the updated question record as indented JSON on success.
memory agents questions respond [question-id] [response] [flags]
Options
-h, --help help for respond
memory agents runs
List agent runs
Synopsis
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
Examples:
memory blueprints install ./my-config memory blueprints install https://github.com/acme/memory-blueprints memory blueprints install https://github.com/acme/memory-blueprints#v1.2.0 --upgrade memory blueprints inspect https://github.com/acme/memory-blueprints memory blueprints install ./my-config --dry-run memory blueprints dump ./exported
memory blueprints [flags]
Options
--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 ".
Output layout: /seed/objects/.jsonl /seed/relationships/.jsonl
Files exceeding 50 MB are automatically split: .001.jsonl, .002.jsonl, …
Examples:
memory blueprints dump ./exported memory blueprints dump ./exported --types Document,Person memory blueprints dump ./exported --project my-project
memory blueprints dump <output-dir> [flags]
Options
-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.
Examples:
memory blueprints inspect ./my-config memory blueprints inspect https://github.com/acme/memory-blueprints memory blueprints inspect https://github.com/acme/memory-blueprints#v1.2.0
memory blueprints inspect <source> [flags]
Options
-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.
Examples:
memory blueprints install ./my-config memory blueprints install https://github.com/acme/memory-blueprints memory blueprints install https://github.com/acme/memory-blueprints#v1.2.0 --upgrade memory blueprints install ./my-config --dry-run
memory blueprints install <source> [flags]
Options
--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.
Examples:
memory blueprints validate ./my-config memory blueprints validate https://github.com/acme/memory-blueprints memory blueprints validate https://github.com/acme/memory-blueprints#v1.2.0
memory blueprints validate <source> [flags]
Options
-h, --help help for validate
--token string GitHub personal access token (for private repos); also read from MEMORY_GITHUB_TOKEN
memory browse
Interactive TUI for browsing projects and documents
Synopsis
Launch an interactive terminal UI (TUI) for browsing projects, documents, and extractions.
The TUI provides:
- Tab-based navigation (Projects, Documents, Worker Stats, Template Packs, Query, Extractions, Traces)
- 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)
- Dynamic resource completion (project names, document IDs)
To load completions:
Bash: $ source <(memory completion bash)
To load completions for each session, execute once:
Linux:
$ memory completion bash > /etc/bash_completion.d/memory
macOS:
$ memory completion bash > $(brew --prefix)/etc/bash_completion.d/memory
Zsh:
If shell completion is not already enabled in your environment,
you will need to enable it. You can execute the following once:
$ echo "autoload -U compinit; compinit" >> ~/.zshrc
To load completions for each session, execute once:
$ memory completion zsh > "${fpath[1]}/_memory"
You will need to start a new shell for this setup to take effect.
Fish: $ memory completion fish | source
To load completions for each session, execute once:
$ memory completion fish > ~/.config/fish/completions/memory.fish
PowerShell: PS> memory completion powershell | Out-String | Invoke-Expression
To load completions for every new session, run:
PS> memory completion powershell > memory.ps1
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.
Examples: memory embeddings clear memory embeddings clear --server http://your-server:3002
memory embeddings clear [flags]
Options
-h, --help help for clear
memory embeddings config
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.
Examples: memory embeddings progress memory embeddings progress --server http://your-server:3002
memory embeddings progress [flags]
Options
-h, --help help for progress
memory embeddings resume
Resume all embedding workers
Synopsis
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:
BRANCH_ID=$(memory graph branches create --name "my-branch" --output json
| python3 -c "import json,sys; print(json.load(sys.stdin)['id'])")
Then use it on all graph writes:
memory graph objects create --type Service --key "svc-x" --branch "$BRANCH_ID" memory graph relationships create --type depends_on --from --to --branch "$BRANCH_ID"
Examples: memory graph branches create --name "scenario/what-if" memory graph branches create --name "feature-x" --project memory graph branches create --name "child" --parent
memory graph branches create [flags]
Options
--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.
When the branch ID is omitted and the terminal is interactive, a picker lists the branches in the current project.
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). When the source is omitted and the terminal is interactive, a picker lists the branches in the current project.
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"
memory graph branches fork [source-branch-id|main] [flags]
Options
--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.
When the branch ID is omitted and the terminal is interactive, a picker lists the branches in the current project.
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). When the target is omitted and the terminal is interactive, a picker lists the branches in the current project.
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 targ
Truncated - read the full file at https://github.com/emergent-company/emergent.memory/blob/156f90ccde32fd92b4d1cf1f47cc19473fa17dd9/tools/cli/internal/skillsfs/skills/memory-cli-reference/SKILL.md.