Documentation Index Fetch the complete documentation index at: https://docs.memoclaw.com/llms.txt
Use this file to discover all available pages before exploring further.
Parses markdown files, splits by ## headers, auto-detects importance and memory type, and stores each section as a separate memory. Idempotent — duplicate content is deduplicated via content hashing.
Request Body
Array of file objects to import. Maximum 50 files per request. Original filename (e.g., 2026-01-30.md). Dates in YYYY-MM-DD format are extracted and added as tags.
Raw markdown content of the file.
Response
Number of files successfully processed.
Number of new memories stored.
Number of memories skipped due to duplicate content.
Present only if some files failed. Each entry has filename and error.
curl -X POST https://api.memoclaw.com/v1/migrate \
-H "Content-Type: application/json" \
-d '{
"files": [
{
"filename": "2026-01-30.md",
"content": "## Project Setup\nDecided to use PostgreSQL with pgvector.\n\n## Config\nUser prefers dark mode."
}
]
}'
{
"files_processed" : 1 ,
"memories_created" : 2 ,
"memories_deduplicated" : 0
}
How parsing works
Each file is split on ## headers
Each section becomes one memory with:
content : header + body text (max 8,000 chars)
importance : 0.6–0.9 based on keyword heuristics (decisions=0.9, preferences=0.8, etc.)
memory_type : auto-detected (decision, preference, correction, project, observation, general)
tags : header words + date:YYYY-MM-DD from filename + migrated + openclaw
Content is SHA-256 hashed for intra-batch and cross-request deduplication
Files without ## headers are stored as a single memory
Pricing
Endpoint Cost POST /v1/migrate$0.01 per request