# Az exporter parancssor

Futtassa az exportjait a Terminálból, cronból, mentőeszközökből és AI-ügynökökből.

Az `exporter` az Exporter Mac app, ablak nélkül futtatva. Ugyanazokat a kapcsolatokat, exportmappákat, kijelöléseket és beállításokat használja, amelyeket az appban állított be, és ugyanabba az exportnaplóba ír. Akkor is működik, ha az app be van zárva, és soha nem kérdez: ha valami hiányzik, a futás 2-es kilépési kóddal leáll, és egy sorban megmondja, mi a teendő. Csak macOS-en.

## Telepítés

1. Telepítse az Exportert a Mac App Store-ból ([letöltés](https://exporter.dev/download)), és nyissa meg.
2. Csatlakoztasson egy alkalmazást (Apple Notes, Bear, Logseq, Kontaktok, Üzenetek vagy Képernyőidő) vagy egy Dokumentumok mappát, és válassza ki az exportmappáját ([első lépések](https://exporter.dev/docs/getting-started)). Ezeket az engedélyeket csak az appban lehet megadni.
3. Az app Parancssor kártyáján nyomja meg a „telepítőparancs másolása” gombot, és illessze be egyszer a Terminálba.

Az app sandboxban fut, és nem tud írni a PATH-ba, ezért az utolsó lépés egy beillesztés. A sor az `/opt/homebrew/bin` mappába telepíti az `exporter` parancsot, ha az a mappa létezik és az Öné (sudo nélkül), egyébként sudóval a `/usr/local/bin` mappába. Az ismételt beillesztés biztonságos; lecseréli, ami ott volt. Az `exporter help install` kiírja a Macjéhez tartozó sort.

## Források

A `--source` a következők egyikét fogadja:

| forrás | ezt is elfogadja | ezt írja |
| --- | --- | --- |
| `apple` | `apple-notes`, `applenotes`, `notes` | markdown vagy html |
| `bear` | | markdown vagy html |
| `logseq` | | mindig markdown |
| `contacts` | `apple-contacts`, `addressbook` | mindig markdown |
| `messages` | `imessage`, `chats`, `conversations` | mindig markdown |
| `screentime` | `screen-time`, `usage` | mindig markdown, naponta egy fájl |
| `documents` | `docs`, `files`, `pdf` | a Dokumentumok kártyán bejelölt formátumok |

## Formátumok

A `--format` értéke `markdown` (vagy `md`) vagy `html`; a kis- és nagybetű nem számít. Minden más esetben a futás ezzel áll le: `error: --format pdf: expected markdown | html`, 64-es kilépési kóddal.

- nélküle a `sync` minden alkalmazást a kártyáján beállított formátumban ír (az Apple Notesnak és a Bearnek saját beállítása van), az `export` pedig az exportált alkalmazás beállítása szerint; az `exporter help sync` és az `exporter help export` mutatja az aktuálisakat
- a Logseq, a Kontaktok, az Üzenetek és a Képernyőidő mindig markdown, a Dokumentumok pedig a kártyáján bejelölt formátumokat írja, ezért náluk a `--format html` kapcsolót egy megjegyzéssel figyelmen kívül hagyja: `note: logseq export is always markdown, so --format is ignored for this source.`
- az Apple Notes jegyzetenként egy `.html` oldalt ír ([a HTML formátum](https://exporter.dev/docs/notes#markdown-and-html)), a mellékleteket a mellette lévő `attachments/` mappába másolva és linkelve, front matter nélkül. A Bear HTML-je a jegyzet egyszerű szövege egy `<pre>` elemen belül, formázás nélkül, a mellékletekre mutató hivatkozások pedig Markdown szövegként maradnak: a fájlok átmásolódnak, de nincsenek linkelve
- az MCP-szerver csak markdown fájlokat olvas, így a csak HTML-t tartalmazó exportot nem látja
- az Apple Notes és a Bear futásonként egy formátumot ír; csak a Dokumentumok írja mindkettőt egy szinkronizálással. Egy futás csak a saját formátumának régi fájljait törli, így váltáskor a másik formátum fájljai a mappában maradnak. Mindkét formátumhoz adjon mindegyiknek saját mappát:

```sh
exporter export --dest ~/Backups/notes-md   --format markdown
exporter export --dest ~/Backups/notes-html --format html
```

## sync

Egyszer, inkrementálisan lefuttatja az appban beállított exportot, az app exportmappáiba.

```sh
exporter sync [--source <source>]... [--format markdown|html] [--full] [--json] [--quiet]
```

| kapcsoló | mit csinál | alapértelmezés |
| --- | --- | --- |
| `--source <source>` | csak ez az alkalmazás, ismételhető | minden csatlakoztatott alkalmazás; a nem csatlakoztatottakat kihagyja |
| `--format markdown\|html` | csak erre a futásra, az app beállítása nem változik. Ugyanabba az exportmappába kerül, mint a másik formátum; ha mindkettőt meg szeretné tartani, exportálja mindegyiket a saját mappájába az `export --dest` paranccsal | az app beállítása |
| `--full` | mindent újraexportál. Írás előtt csak az Exporter által írt fájlokat távolítja el; minden más az exportmappában marad | ki |
| `--json` | géppel olvasható összesítés | ki |
| `--quiet`, `-q` | csak a hibák | ki |

```sh
exporter sync --source apple
```

```text
apple notes: exporting…
apple notes: 1204 of 1204 exported · 3 removed · 18.2s · markdown → /Users/me/Documents/notes
```

Az összesítő sor formája `<source>: <succeeded> of <selected> exported`, majd ha előfordul, `N failed`, `N removed` (törölt, átnevezett vagy áthelyezett elemek fájljai), `N attachment issues`, végül az időtartam, a formátum és a kiírt mappa.

Ha az app fut, a `sync` semmit sem exportál, 0-s kóddal kilép, és ezt írja ki: `Exporter is running: real-time sync is live, the export root is already current.`

## export

Egyszeri export egy tetszőleges mappába, pillanatképekhez és szkriptekhez. Akkor is gond nélkül fut, ha az app nyitva van.

```sh
exporter export --dest <folder> [--source <source>] [--format markdown|html] [--organize folders|tags|smart] [--folder "Name"]... [--tag name]... [--dry-run] [--json] [--quiet]
```

| kapcsoló | mit csinál | alapértelmezés |
| --- | --- | --- |
| `--dest <folder>` | kötelező. Az app Parancssor kártyáján („mappa hozzáadása…”) engedélyezett mappán belül kell lennie. Egy `~/Backups` engedély minden alatta lévő mappára érvényes | nincs |
| `--source <source>` | az exportálandó alkalmazás | `apple` |
| `--format markdown\|html` | a formátum erre a futásra | az app beállítása |
| `--organize folders\|tags\|smart` | csak Apple Notes: hogyan rendeződnek a jegyzetek mappákba | az app beállítása |
| `--folder "Name"` | csak ez az Apple Notes mappa, ismételhető, a név kis- és nagybetűtől függetlenül egyezik | az appban mentett kijelölés |
| `--tag name` | csak ez a címke, ismételhető, Apple Notes vagy Bear | az appban mentett kijelölés |
| `--dry-run` | kiírja, mi exportálódna, de semmit sem ír | ki |
| `--json`, `--quiet` (`-q`) | mint a sync esetén | ki |

`--folder` vagy `--tag` nélkül az Apple Notes és a Bear az appban mentett kijelölést exportálja. A Logseq a teljes gráfot, a Kontaktok minden névjegyet, az Üzenetek minden beszélgetést, a Képernyőidő minden napot exportálja; náluk a szűrőket egy megjegyzéssel figyelmen kívül hagyja.

```sh
exporter export --dest ~/Backups/notes-$(date +%F)
exporter export --dest ~/Backups/work --folder "Work" --format html
exporter export --dest ~/Backups/bear --source bear --tag journal
exporter export --dest ~/Backups/people --source contacts
exporter export --dest ~/Backups/papers --source documents
exporter export --dest ~/Backups/notes --dry-run
```

```text
would export 100 apple notes · markdown → /Users/me/Backups/notes
```

## list

```sh
exporter list sources|folders|tags|dests [--source apple|bear] [--json]
```

| lista | mit mutat | JSON |
| --- | --- | --- |
| `sources` | minden alkalmazás, csatlakoztatva vagy sem, a darabszámával. A Dokumentumok nem szerepel | `[{"source": "apple", "connected": true, "notes": 1204}, {"source": "messages", "connected": true, "conversations": 1532}, {"source": "bear", "connected": false}]`, a logseqnél `pages`, továbbá `contacts`, a `screen-time` esetén pedig `days` |
| `folders` | Apple Notes mappák a jegyzetek számával, mélység szerint behúzva. A `--source bear` hiba (kilépési kód 64) | `[{"name": "Work", "notes": 42, "level": 0}]` |
| `tags` | címkék a darabszámukkal, alapból Apple Notes, `--source bear` esetén Bear | `[{"name": "journal", "notes": 12}]` |
| `dests` | mappák, amelyekbe az `export --dest` írhat, valamint minden alkalmazás exportmappája | `[{"path": "/Users/me/Backups", "kind": "granted"}]`, ahol a `kind` értéke `granted`, `granted, volume not mounted` vagy `export root (apple-notes)` |

```sh
exporter list folders --json
```

```json
[{"name": "Work", "notes": 42, "level": 0}]
```

## status

```sh
exporter status [--json]
```

```text
apple notes    connected · last export 2026-09-11 03:00
bear           not connected
logseq         not connected
contacts       not connected
messages       connected · last export 2026-09-11 03:01
screen time    not connected
documents      not connected
root (apple-notes)  /Users/me/Documents/notes
root (messages)  /Users/me/Documents/messages
destinations   /Users/me/Backups
version        3.24 · free · 100 of 100 free notes used
messages       free · 10 of 10 free conversations used
app            not running
```

`--json` esetén: alkalmazásonként egy objektum, `apple-notes`, `bear`, `logseq`, `contacts`, `messages`, `screen-time`, `documents` néven, mindegyik `{"connected": true, "lastExport": "2026-09-11 03:00"}` (`null`, ha még sosem exportált); `destinations` (elérési utak); `tier` (`full` vagy `free`, az Apple Notes feloldása) és `freeNotesUsed`; `contactsTier` és `freeContactsUsed`; `messagesTier` és `freeConversationsUsed`; `screenTimeTier` és `freeDaysUsed`; `appRunning`. Az időpontok helyi idő szerint, `yyyy-MM-dd HH:mm` formában.

## log

A legutóbbi exportfutások, a legújabb elöl: ugyanaz a napló, amelyet az app mutat, minden exportmappából és engedélyezett `--dest` mappából. Az engedélyezett mappa alatt létrehozott, dátummal ellátott mappákat nem olvassa; azok naplója a `<folder>/.exporter/` mappában van.

```sh
exporter log [--last N] [--json]
```

| kapcsoló | mit csinál | alapértelmezés |
| --- | --- | --- |
| `--last N` | hány futás | 10 |
| `--json` | futásonként egy objektum | ki |

```text
2026-09-11 03:00  apple-notes   1204/1204 exported  3 removed  clean  → /Users/me/Documents/notes
```

JSON: `[{"source", "finishedAt", "selected", "succeeded", "failed", "format", "status", "destination", "prunedFiles", "runError"}]`. A `status` értéke `clean`, `warnings` (hiányzó mellékletek) vagy `failures`.

## doctor

Ellenőrzi, hogy az ablak nélküli export működni fog-e, és ellenőrzésenként egy sort ír ki: `ok`, `FAIL` alatta egy `fix:` sorral, `warn`, vagy `--` tájékoztatásként.

```sh
exporter doctor
```

Ellenőrzi, hogy minden csatlakoztatott alkalmazás adatbázisa olvasható és az exportmappája írható-e, hogy minden tárolt mappaengedély feloldható-e, hogy minden `--dest` mappa írható-e, valamint az indexet és a telepített parancsot. A végén kiírja a verzió szintjét, azt, hogy fut-e az app, és az utolsó összeomlást, ha volt. 0-s kilépési kódnál `all good.`, 2-esnél `N problem(s) found.` a kimenet.

## report

Diagnosztikai jelentést ír ki (az app verziója, a macOS és a hardver, a kapcsolatok állapota, a legutóbbi futások, az utolsó összeomlás; jegyzettartalom nélkül), és a vágólapra másolja.

```sh
exporter report [--send] [--email <addr>]
```

| kapcsoló | mit csinál | alapértelmezés |
| --- | --- | --- |
| `--send` | elküldi nekünk a jelentést, és kiírja: `sent.`, vagy `offline: queued, will send on the next run or app launch.` | ki |
| `--email <addr>` | hozzáadja az e-mail-címét, hogy válaszolhassunk | nincs |

## help és version

- `exporter help [topic]`: témák: `sync`, `export`, `list`, `status`, `log`, `doctor`, `report`, `cron`, `install`. Egy parancs súgója az aktuális beállításait mutatja alapértelmezésként
- a `sync`, az `export`, a `list`, a `log` és a `report` a `--help` vagy `-h` kapcsolót is elfogadja
- az `exporter version` (vagy `--version`, `-v`) ezt írja ki: `exporter 3.24`
- a terminálban magában futtatott `exporter` kiírja az áttekintést, és 64-es kóddal kilép

## JSON kimenet

A `--json` a `sync`, az `export`, a `list`, a `status` és a `log` parancsnál működik. A kimenet formázott, rendezett kulcsokkal. A `sync` és az `export` mellé adja meg a `--quiet` kapcsolót is: nélküle a folyamat- és jegyzetsorok a JSON előtt a stdout-ra kerülnek. Az `export` egy összesítő objektumot ír ki, a `sync` pedig `{"runs": [...]}` formát, forrásonként eggyel:

```json
{
  "attachmentIssues" : 0,
  "durationSec" : 18.2,
  "failed" : 0,
  "format" : "markdown",
  "root" : "/Users/me/Documents/notes",
  "runError" : null,
  "selected" : 1204,
  "source" : "apple-notes",
  "status" : "clean",
  "succeeded" : 1204
}
```

Amíg az app fut, a `sync` csak az egy sorát írja ki, JSON nélkül. A hibák a stderr-re kerülnek `error: <what happened and what to do>` formában.

## Kilépési kódok

| kód | jelentés |
| --- | --- |
| 0 | rendben, beleértve azt a futást is, amelyet az ingyenes keret megrövidített |
| 1 | exporthibák: egy elem nem sikerült, a futás hibába ütközött, vagy kijelölt elemeket, de egyet sem írt ki |
| 2 | beállítás szükséges: az alkalmazás nincs csatlakoztatva, a mappa nincs engedélyezve, a mappa vagy a címke nem található, nincs mit exportálni; a `doctor` problémákat talált; a telepített parancs régi formátumú, vagy az app, amelyre mutat, már nincs meg |
| 64 | használat: ismeretlen parancs vagy kapcsoló, hiányzó vagy hibás érték, `--folder` a Bearrel, `list folders --source bear`, magában futtatott `exporter` a terminálban |

## Hová kerülnek a fájlok

A `sync` az Exporterben az egyes alkalmazásokhoz beállított exportmappába ír, például a `~/Documents/notes` vagy a `~/Documents/messages` mappába; az `export` a `--dest` mappába. A saját mappája szintjén vagy eggyel alatta lévő mappa, például maga a `~/Documents`, alkalmazásonként almappát kap (`notes-export`, `messages-export` és így tovább), egy mélyebben lévő mappát pedig úgy használ, ahogy van. Az összesítő sor (a nyíl után) és a JSON `root` mezője a valódi mappát mutatja.

Minden exportmappában megtalálható a `.exporter/last-export.json` és a `.exporter/last-export.md` (az utolsó futás), valamint a `.exporter/history/` (az utolsó 50 futás). Az Apple Notes, a Kontaktok, az Üzenetek, a Képernyőidő és a Dokumentumok a `.exporter/files.json` fájlt is vezeti, amely minden fájlt felsorol, amelyet egy futás kiírt: a következő futás csak az itt felsorolt fájlok közül töröl olyat, amelyet már egyetlen elem sem hoz létre (a Képernyőidő soha nem töröl napi fájlt). A Bear és a Logseq is eltávolítja a következő futáskor a törölt, átnevezett vagy átcímkézett jegyzetek fájljait. Az Apple Notes és a Logseq exportja egy `bases/` mappát is kap Obsidian nézetekkel.

## Ingyenes keret

A parancssornak ugyanazok a keretei, mint az appnak:

| alkalmazás | ingyenes |
| --- | --- |
| Apple Notes | 100 jegyzet |
| Kontaktok | 100 kontakt |
| Üzenetek | a 10 legutóbbi beszélgetés |
| Képernyőidő | az első szinkronizáláskor a 10 legutóbbi nap, és csak azok: a későbbi napokhoz feloldás kell |
| Dokumentumok | a 10 legutóbb módosított dokumentum |
| Bear és Logseq | korlátlan |

A már exportált elemek ingyen tovább szinkronizálnak; a keret csak az újakat állítja meg. Az a futás, amely eléri a keretet, exportálja, amit lehet, 0-s kóddal kilép, és kiír egy megjegyzést (`--quiet` esetén nem):

```text
note: 42 note(s) skipped: free version limit (100 of 100 free notes). upgrade in the app to export everything.
note: 58 contact(s) skipped: free version limit (100 of 100 free contacts). unlock contacts in the app to export everything.
note: 1522 conversation(s) skipped: free version limit (10 of 10 free conversations). unlock messages in the app to export everything.
note: 11 day(s) skipped: free version limit (10 of 10 free days). unlock screen time in the app to archive every day.
note: 5 document(s) skipped: free version limit (10 of 10 free documents). unlock documents in the app to convert every one.
```

A `status --json` tartalmazza a szintet és a felhasznált mennyiséget az Apple Notes, a Kontaktok, az Üzenetek és a Képernyőidő esetén. Minden korlátozott alkalmazás a saját egyszeri, appon belüli vásárlásával oldható fel az Exporterben, [országonként eltérő áron](https://exporter.dev/pricing), előfizetés és webes fizetés nélkül. A parancssor minden futáskor beolvassa a vásárlást; ha az App Store 5 másodpercen belül nem válaszol, a futás az ingyenes kerettel folytatódik.

## Ütemezés

Az `exporter help cron` ezeket a sorokat a parancs Macjén érvényes teljes elérési útjával írja ki: azt használja, mert a cron PATH-ja nem feltétlenül tartalmazza a telepítési mappát. Crontabban a `%` jelet `\%` formában kell escape-elni:

```sh
0 3 * * * exporter sync
0 3 * * * exporter export --dest ~/Backups/notes-$(date +\%F)
```

A Carbon Copy Clonerhez és más mentőeszközökhöz futtassa az `exporter sync` parancsot előzetes (pre-flight) szkriptként, és a kilépési kód alapján ágaztasson el. A parancs a teljes export alatt csatolva marad, akkor is, ha a macOS felfüggeszti, amikor senki sincs bejelentkezve. Amíg az app fut, akár nyitott, akár zárt ablakkal, a `sync` nem csinál semmit: a valós idejű szinkronizálás már frissen tartja a mappát.

## MCP-szerver

Nem a parancssor, hanem az app futtat egy helyi MCP-szervert, amelyen keresztül a Claude, a Cursor, a VS Code és más kliensek kereshetnek és olvashatnak az exportjaiban, a `http://localhost:8744/mcp` címen. [Az MCP-szerver oldala](https://exporter.dev/docs/mcp) mindent leír róla, az indítástól a hat eszközéig.

## Hibaelhárítás

Először futtassa az `exporter doctor` parancsot; minden sikertelen ellenőrzés kiírja a javítását. A [hibaelhárítás](https://exporter.dev/docs/help) az app üzeneteit is lefedi.

- `X is not authorized`: adja hozzá a mappát (vagy egy szülőmappáját) a Parancssor kártyán, majd futtassa újra. Az `exporter list dests` megmutatja, mi van engedélyezve
- `apple notes is not set up. open Exporter and connect Apple Notes + an export folder.` (minden alkalmazásnál ugyanígy): csatlakoztassa az Exporterben
- a `sync` azt írja ki, hogy az Exporter fut: nincs teendő, az app frissen tartja a mappát. Külön másolathoz használja az `export --dest` parancsot
- `no notes were written. run "exporter doctor" to check folders and permissions.`: a futás kijelölt jegyzeteket, de egyet sem írt ki; a `doctor` ellenőrzi a mappákat és az engedélyeket
- `bookmark broken`: a mappát áthelyezték, törölték, vagy a kötete nincs csatlakoztatva. Válassza ki újra az appban
- a telepített parancs régi formátumú, vagy a cron és a mentőeszközök 19-es kilépési kódot látnak: illessze be újra a telepítőparancsot
- az app a parancs telepítése óta máshová került: illessze be újra a telepítőparancsot
- fel van oldva, de a futás ingyenes verziót jelez: a vásárlás ellenőrzése legfeljebb 5 másodpercig vár, utána az ingyenes kerettel folytatja. Futtassa újra
- olyan probléma, amelyet a doctor nem tud megmagyarázni: `exporter report --send --email you@example.com`

## Related

- [MCP server](https://exporter.dev/docs/mcp): Connect Claude and other agents
- [For agents](https://exporter.dev/agents): Skills, command line and MCP for agents
- [Apple Notes](https://exporter.dev/docs/notes): Folders, fields, HTML and fixes
- [Changelog](https://exporter.dev/changelog): What changed in each version

---

human version: https://exporter.dev/hu/docs/cli
every page: https://exporter.dev/llms.txt
