Help guides
Importing Memories and Currents
Bring in Memories and Currents from a YAML file, and check it before importing.
Bring an existing collection with you
Import brings many Memories and Currents into Memory Currents at once, with dates, links, and active or archived status. Each imported Memory receives the same automatic processing as a Memory you save normally, including types, tags, and a title. That processing uses your credits, including for archived Memories.
Open Tools → Import, paste your prepared YAML or upload a file, and check it before choosing
Import. An uploaded file is not shown on the page: you see its name and size, and Remove
file clears it. To change an uploaded file, edit it on your device and upload it again.
The file picker accepts .yaml, .yml, .txt, and .md; the contents must use the YAML format below.
Uploading a Word document or PDF does not convert it.
An import can contain up to 500 Memories and Currents combined and 200 KB of text. The size limit covers the whole document, including field names and indentation, whether pasted or uploaded.
The import format
Start with mc_version: 1. Put Current entries under currents: and Memory entries under memories:.
You can include either list or both, but the document needs at least one entry.
Here is a complete document with one Current and two Memories:
mc_version: 1
currents:
- name: Garden
slug: garden
description: |
Notes, ideas, and plans for the garden.
memories:
- created_at: 2026-08-12
currents: [garden]
description: |
The rosemary did much better in the back garden this year.
- created_at: 2026-08-14
currents: [garden]
description: |
Next year I want to try tomatoes along the south fence.
Use the lowercase field names exactly as shown. Indentation matters: use spaces, not tabs.
Write text after description: | on the following indented lines. This keeps colons, line breaks,
and lines beginning with # inside your text rather than treating them as YAML instructions.
Leading and trailing whitespace is removed from each description when imported.
The old format with =====MEMORY=====, =====CURRENT=====, and =====THOUGHT===== markers is no
longer accepted. Plain text without this YAML structure is not imported as one Memory. YAML anchors
and aliases are not supported; write each entry out in full.
Memory fields
| Field | What to put here |
|---|---|
description |
Required. The Memory's text, with at least one non-space character, written as a block as in the example above. |
created_at |
Optional. An ISO date such as 2026-08-12, or a date and time such as 2026-08-12T14:30:00Z. Without it, the Memory uses its arrival time. |
currents |
Optional. A list of Current slugs, such as [garden, summer-plans]. |
status |
Optional. active (the default) or archived. |
A slug is a Current's short identifier. Use its slug, not its display name, when linking a Memory to it. You can link to an existing Current or one defined in the same file. Currents are handled first, so the order of the two lists does not affect these links.
A Memory can link to up to 100 distinct, valid slugs. A slug that does not resolve is skipped; it does not create a Current or reject the Memory. Include a Current entry to create that Current. The check shows unresolved links before you import.
Import does not accept type or tags, and you cannot supply Thoughts for it to create. Memory
Currents works those out through its normal processing. A Custom export can contain title,
types, and thoughts; Import ignores those export-only fields rather than restoring them.
An invalid date, missing text, invalid status, or other unknown field rejects that Memory.
Current fields
| Field | What to put here |
|---|---|
name |
Required. The Current's display name, up to 120 characters. |
description |
Optional. Text describing the Current, up to 2,000 characters, written as a block as in the example above. |
slug |
Optional. Up to 32 lowercase letters and numbers, with single hyphens between words. If omitted, a slug is derived from the name. |
status |
Optional. active (the default) or archived. |
An existing Current with the same slug is reused. The import keeps its existing name, description, and status, even if the file says something different. Reusing an archived Current does not restore it. If two Current entries in one file resolve to the same slug, the later one is rejected; the check identifies the earlier entry.
Importing Current definitions must be enabled in your Memory Currents installation. If it is not,
a document with a non-empty currents: list cannot be imported.
Preserve archived status
Set status: archived on a Memory or Current you want to create in the archive:
mc_version: 1
currents:
- name: Garden 2025
slug: garden-2025
status: archived
description: |
Last year's garden notes.
memories:
- created_at: 2025-09-30
status: archived
currents: [garden-2025]
description: |
Picked the last tomatoes of the season.
Status applies when a record is created. It does not change an existing Current that is reused. Archived Memories still receive automatic processing and use credits.
Check before importing
Choose the check action after preparing your document. Checking saves nothing. It shows:
- Problems with the whole document, including YAML line and column details where available.
- The document's size and number of records, each against its limit.
- How many Memories and how many Currents will be imported.
- Each entry that will be skipped, and why:
- a Current, including a later entry that repeats an earlier entry's slug;
- a Memory;
- a Memory link that names no Current in the file or in your library.
A whole-document problem prevents Import. A problem with an individual entry does not: you can correct it or proceed with the other entries. Any edit, newly uploaded file, or removed file clears the check; check the document again before importing. If checking fails or times out, Import stays unavailable until a check succeeds.
The check is a preview, not a reservation. Import checks the text again, and a Current that changes between checking and importing can affect the actual result.
Choose a Match mode
Match imported Memories against existing Currents keeps the links in your file and also looks for other existing Currents that fit each Memory. This takes additional processing.
Don't match imported Memories against existing Currents uses only the links specified in your file. Choose this when you have already organized the Memories and want to preserve those choices. Other automatic processing still runs.
This choice applies to the whole import. Matching does not create Currents; Current entries in the file can create them. Additional matching also depends on matching being enabled in your installation.
Check the results
After choosing Import, you can leave the page while it runs. Return to Recent imports and open the import to see its results.
Memories show whether they are queued, saved, rejected, or failed. Currents show whether they were created, reused, or rejected. The details include reasons and links to saved content where available. Saved Memories remain saved even if later automatic processing is delayed or fails.
An import can save some entries while rejecting others. Check the results before importing the file again: submitting the same Memories in a new import can create duplicates. Correct and submit only the entries that still need to be imported.
Export writes this YAML format. For Re-Import contains only supported import fields; Custom can also carry information Import ignores. Neither mode carries tags. Re-importing a Custom file does not restore its Thoughts or To-Do statuses.
See How Memories work and How Currents work for more about the records you are bringing in.