Příkazová řádka exporter
Spouštějte své exporty z Terminálu, cronu, zálohovacích nástrojů a agentů.
exporter je aplikace Exporter pro Mac spuštěná bez okna. Používá stejná připojení, složky exportu, výběr a nastavení, jaké jste si nastavili v aplikaci, a zapisuje do stejného záznamu exportů. Funguje i při zavřené aplikaci a nikdy se na nic neptá: cokoli chybí, zastaví běh s návratovým kódem 2 a jedním řádkem, který řekne, co udělat. Jen pro macOS.
Instalace
- Nainstalujte Exporter z Mac App Storu (stažení) a otevřete ho.
- Připojte aplikaci (Apple Notes, Bear, Logseq, Kontakty, Zprávy nebo Čas u obrazovky) nebo složku Dokumentů a zvolte její složku exportu (začínáme). Tato oprávnění lze udělit jen v aplikaci.
- Na kartě Příkazová řádka v aplikaci stiskněte „zkopírovat instalační příkaz“ a jednou ho vložte do Terminálu.
Aplikace běží v sandboxu a nemůže zapisovat do vaší proměnné PATH, proto je poslední krok vložení. Řádek nainstaluje exporter do /opt/homebrew/bin, pokud tato složka existuje a patří vám (bez sudo), jinak do /usr/local/bin se sudo. Opakované vložení je bezpečné; nahradí, co tam bylo. exporter help install vypíše řádek pro váš Mac.
Zdroje
--source přijímá jednu z těchto hodnot:
| zdroj | přijímá také | zapisuje |
|---|---|---|
apple |
apple-notes, applenotes, notes |
markdown nebo html |
bear |
markdown nebo html | |
logseq |
vždy markdown | |
contacts |
apple-contacts, addressbook |
vždy markdown |
messages |
imessage, chats, conversations |
vždy markdown |
screentime |
screen-time, usage |
vždy markdown, jeden soubor na den |
documents |
docs, files, pdf |
formáty zaškrtnuté na kartě Dokumentů |
Formáty
--format přijímá markdown (nebo md) nebo html; na velikosti písmen nezáleží. Cokoli jiného skončí hlášením error: --format pdf: expected markdown | html a návratovým kódem 64.
- bez něj
synczapisuje každou aplikaci ve formátu nastaveném na její kartě (Apple Notes a Bear mají každý vlastní) aexportzapisuje podle nastavení aplikace, kterou exportuje;exporter help syncaexporter help exportukazují aktuální nastavení - Logseq, Kontakty, Zprávy a Čas u obrazovky jsou vždy markdown a Dokumenty zapisují formáty zaškrtnuté na své kartě, takže u nich se
--format htmlignoruje s poznámkou:note: logseq export is always markdown, so --format is ignored for this source. - Apple Notes zapisují jednu stránku
.htmlna poznámku (formát HTML), přílohy zkopírované doattachments/vedle ní a odkazované, bez front matter. HTML z Bearu je prostý text poznámky uvnitř<pre>, bez stylů, a odkazy na přílohy zůstanou jako text Markdownu: soubory se zkopírují, ale neodkazuje se na ně - MCP server čte jen soubory markdown, takže export pouze v HTML pro něj není vidět
- Apple Notes a Bear zapisují v jednom běhu jeden formát; obojí v jedné synchronizaci zapisují jen Dokumenty. Běh odstraňuje jen staré soubory svého vlastního formátu, takže po přepnutí zůstanou ve složce soubory druhého formátu. Pro oba formáty dejte každému vlastní složku:
exporter export --dest ~/Backups/notes-md --format markdown
exporter export --dest ~/Backups/notes-html --format html
sync
Spustí export nastavený v aplikaci, jednou, přírůstkově, do složek exportu aplikace.
exporter sync [--source <source>]... [--format markdown|html] [--full] [--json] [--quiet]
| přepínač | co dělá | výchozí |
|---|---|---|
--source <source> |
jen tato aplikace, lze opakovat | všechny připojené aplikace; nepřipojené se přeskočí |
--format markdown|html |
jen pro tento běh, nastavení aplikace se nemění. Uloží se do stejné složky exportu jako druhý formát; chcete-li mít oba, exportujte každý do vlastní složky pomocí export --dest |
vaše nastavení v aplikaci |
--full |
exportuje vše znovu. Před zápisem odstraní jen soubory, které zapsal Exporter; vše ostatní ve složce exportu zůstane | vypnuto |
--json |
strojově čitelný souhrn | vypnuto |
--quiet, -q |
jen chyby | vypnuto |
exporter sync --source apple
apple notes: exporting…
apple notes: 1204 of 1204 exported · 3 removed · 18.2s · markdown → /Users/me/Documents/notes
Souhrnný řádek má tvar <source>: <succeeded> of <selected> exported, pak, pokud nastanou, N failed, N removed (soubory položek, které byly smazány, přejmenovány nebo přesunuty), N attachment issues, a nakonec doba trvání, formát a zapsaná složka.
Pokud aplikace běží, sync nic neexportuje, skončí s kódem 0 a vypíše Exporter is running: real-time sync is live, the export root is already current.
export
Jednorázový export do složky podle vaší volby, pro snímky a skripty. Funguje i při otevřené aplikaci.
exporter export --dest <folder> [--source <source>] [--format markdown|html] [--organize folders|tags|smart] [--folder "Name"]... [--tag name]... [--dry-run] [--json] [--quiet]
| přepínač | co dělá | výchozí |
|---|---|---|
--dest <folder> |
povinný. Musí ležet uvnitř složky povolené na kartě Příkazová řádka v aplikaci („přidat složku…“). Povolení pro ~/Backups platí pro všechny složky pod ní |
žádné |
--source <source> |
aplikace k exportu | apple |
--format markdown|html |
formát pro tento běh | vaše nastavení v aplikaci |
--organize folders|tags|smart |
jen Apple Notes: jak se poznámky rozloží do složek | vaše nastavení v aplikaci |
--folder "Name" |
jen tato složka Apple Notes, lze opakovat, název se porovnává bez ohledu na velikost písmen | výběr uložený v aplikaci |
--tag name |
jen tento tag, lze opakovat, Apple Notes nebo Bear | výběr uložený v aplikaci |
--dry-run |
vypíše, co by se exportovalo, nic nezapíše | vypnuto |
--json, --quiet (-q) |
jako u sync | vypnuto |
Bez --folder nebo --tag exportují Apple Notes a Bear výběr uložený v aplikaci. Logseq exportuje celý graf, Kontakty všechny vizitky, Zprávy všechny konverzace, Čas u obrazovky všechny dny; filtry se u nich ignorují s poznámkou.
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
would export 100 apple notes · markdown → /Users/me/Backups/notes
list
exporter list sources|folders|tags|dests [--source apple|bear] [--json]
| seznam | co ukazuje | JSON |
|---|---|---|
sources |
každá aplikace, připojená i nepřipojená, s jeho počtem. Dokumenty se neuvádějí | [{"source": "apple", "connected": true, "notes": 1204}, {"source": "messages", "connected": true, "conversations": 1532}, {"source": "bear", "connected": false}], s pages pro logseq, contacts a days pro screen-time |
folders |
složky Apple Notes s počty poznámek, odsazené podle hloubky. --source bear je chyba (kód 64) |
[{"name": "Work", "notes": 42, "level": 0}] |
tags |
tagy s počty, ve výchozím stavu Apple Notes, Bear s --source bear |
[{"name": "journal", "notes": 12}] |
dests |
složky, do kterých smí export --dest zapisovat, a k tomu složka exportu každé aplikace |
[{"path": "/Users/me/Backups", "kind": "granted"}], kde kind je granted, granted, volume not mounted nebo export root (apple-notes) |
exporter list folders --json
[{"name": "Work", "notes": 42, "level": 0}]
status
exporter status [--json]
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
S --json: jeden objekt na aplikaci, pojmenovaný apple-notes, bear, logseq, contacts, messages, screen-time, documents, každý {"connected": true, "lastExport": "2026-09-11 03:00"} (null, pokud nikdy neproběhl export); destinations (cesty); tier (full nebo free, odemčení Apple Notes) a freeNotesUsed; contactsTier a freeContactsUsed; messagesTier a freeConversationsUsed; screenTimeTier a freeDaysUsed; appRunning. Časy jsou místní, yyyy-MM-dd HH:mm.
log
Nedávné běhy exportu, od nejnovějšího: stejný záznam, jaký ukazuje aplikace, ze všech složek exportu a povolených složek --dest. Složky s datem vytvořené pod povolenou složkou se nečtou; jejich záznam je v <folder>/.exporter/.
exporter log [--last N] [--json]
| přepínač | co dělá | výchozí |
|---|---|---|
--last N |
kolik běhů | 10 |
--json |
jeden objekt na běh | vypnuto |
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"}]. status je clean, warnings (chybějící přílohy) nebo failures.
doctor
Ověří, že export bez okna bude fungovat, a pro každou kontrolu vypíše jeden řádek: ok, FAIL s řádkem fix: pod ním, warn, nebo -- pro informaci.
exporter doctor
Kontroluje, že databáze každé připojené aplikace je čitelná a jeho složka exportu zapisovatelná, že každé uložené oprávnění ke složce funguje, že každá složka --dest je zapisovatelná, index a nainstalovaný příkaz. Na konci uvede úroveň verze, zda aplikace běží, a poslední pád, pokud nějaký byl. Kód 0 vypíše all good., kód 2 vypíše N problem(s) found.
report
Vypíše diagnostickou zprávu (verze aplikace, macOS a hardware, stav připojení, nedávné běhy, poslední pád; žádný obsah poznámek) a zkopíruje ji do schránky.
exporter report [--send] [--email <addr>]
| přepínač | co dělá | výchozí |
|---|---|---|
--send |
odešle zprávu nám a vypíše sent., nebo offline: queued, will send on the next run or app launch. |
vypnuto |
--email <addr> |
přidá vaši adresu, abychom mohli odpovědět | žádná |
help a version
exporter help [topic]: tématasync,export,list,status,log,doctor,report,cron,install. Nápověda k příkazu ukazuje vaše aktuální nastavení jako výchozí hodnotysync,export,list,logareportpřijímají také--helpnebo-hexporter version(nebo--version,-v) vypíšeexporter 3.24- samotný
exporterv terminálu vypíše přehled a skončí s kódem 64
Výstup JSON
--json funguje u sync, export, list, status a log. Výstup je formátovaný se seřazenými klíči. U sync a export přidejte --quiet: bez něj se řádky průběhu a poznámek vypíší na stdout před JSON. export vypíše jeden souhrnný objekt, sync vypíše {"runs": [...]} s jedním objektem na zdroj:
{
"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
}
Když aplikace běží, sync vypíše svůj jeden řádek a žádný JSON. Chyby jdou na stderr jako error: <what happened and what to do>.
Návratové kódy
| kód | význam |
|---|---|
| 0 | v pořádku, včetně běhu, který zkrátil limit zdarma |
| 1 | selhání exportu: položka selhala, běh narazil na chybu, nebo vybral položky a žádnou nezapsal |
| 2 | vyžaduje nastavení: aplikace není připojená, složka není povolená, složka nebo tag nenalezeny, není co exportovat; doctor našel problémy; nainstalovaný příkaz má starý formát nebo aplikace, na kterou ukazuje, zmizela |
| 64 | použití: neznámý příkaz nebo přepínač, chybějící nebo špatná hodnota, --folder s Bearem, list folders --source bear, samotný exporter v terminálu |
Kam se soubory ukládají
sync zapisuje do složky exportu nastavené pro každou aplikaci v Exporteru, například ~/Documents/notes nebo ~/Documents/messages; export zapisuje do --dest. Složka na úrovni vaší domovské složky nebo o úroveň níž, například samotná ~/Documents, dostane podsložku pro každou aplikaci (notes-export, messages-export a tak dále) a hlubší složka se použije tak, jak je. Souhrnný řádek (za šipkou) a root v JSON ukazují skutečnou složku.
Každá složka exportu obsahuje .exporter/last-export.json a .exporter/last-export.md (poslední běh) a .exporter/history/ (posledních 50 běhů). Apple Notes, Kontakty, Zprávy, Čas u obrazovky a Dokumenty uchovávají také .exporter/files.json, každý soubor, který běh zapsal: příští běh odstraní jen soubory z tohoto seznamu, které už žádná položka nevytváří (Čas u obrazovky soubor dne nikdy neodstraní). Bear a Logseq při příštím běhu také odstraní soubory poznámek, které jste smazali, přejmenovali nebo jim změnili tagy. Exporty z Apple Notes a Logsequ dostanou také bases/ se zobrazeními pro Obsidian.
Limit zdarma
Příkazová řádka má stejné limity jako aplikace:
| aplikace | zdarma |
|---|---|
| Apple Notes | 100 poznámek |
| Kontakty | 100 kontaktů |
| Zprávy | 10 nejnovějších konverzací |
| Čas u obrazovky | 10 nejnovějších dnů při první synchronizaci, a jen ty: pozdější dny potřebují odemčení |
| Dokumenty | 10 naposledy změněných dokumentů |
| Bear a Logseq | bez limitu |
Už exportované položky se dál synchronizují zdarma; limit zastaví jen nové. Běh, který na limit narazí, přesto exportuje, co smí, skončí s kódem 0 a vypíše poznámku (ne při --quiet):
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.
status --json obsahuje úroveň a využitý počet pro Apple Notes, Kontakty, Zprávy a Čas u obrazovky. Každá omezená aplikace se odemyká vlastním jednorázovým nákupem v aplikaci Exporter, cena podle země, bez předplatného a bez platby přes web. Příkazová řádka čte nákup při každém běhu; pokud App Store neodpoví do 5 sekund, běh pokračuje v rámci limitu zdarma.
Plánování
exporter help cron vypíše tyto řádky s úplnou cestou k příkazu na vašem Macu: použijte ji, protože PATH v cronu nemusí obsahovat instalační složku. V crontabu zapište % jako \%:
0 3 * * * exporter sync
0 3 * * * exporter export --dest ~/Backups/notes-$(date +\%F)
U Carbon Copy Cloneru a dalších zálohovacích nástrojů spouštějte exporter sync jako skript před zálohou a řiďte se návratovým kódem. Příkaz zůstane připojený po celou dobu exportu, i když ho macOS pozastaví, protože není nikdo přihlášený. Dokud aplikace běží, s otevřeným i zavřeným oknem, sync nic nedělá: synchronizace v reálném čase už složku udržuje aktuální.
MCP server
Lokální MCP server, díky kterému mohou Claude, Cursor, VS Code a další klienti prohledávat a číst vaše exporty, spouští aplikace, ne příkazová řádka, na http://localhost:8744/mcp. Stránka o MCP serveru popisuje vše o něm, od spuštění po jeho šest nástrojů.
Řešení problémů
Nejprve spusťte exporter doctor; každá neúspěšná kontrola vypíše svou opravu. Nápověda pokrývá i hlášení aplikace.
X is not authorized: přidejte složku (nebo nadřazenou) na kartě Příkazová řádka a spusťte znovu.exporter list destsukazuje, co je povolenéapple notes is not set up. open Exporter and connect Apple Notes + an export folder.(totéž pro každou aplikaci): připojte ji v Exporterusyncvypíše, že Exporter běží: není co dělat, aplikace složku udržuje aktuální. Pro samostatnou kopii použijteexport --destno notes were written. run "exporter doctor" to check folders and permissions.: běh vybral poznámky a žádnou nezapsal;doctorzkontroluje složky a oprávněníbookmark broken: složka byla přesunuta, smazána nebo její svazek není připojený. Vyberte ji v aplikaci znovu- nainstalovaný příkaz má starý formát, nebo cron a zálohovací nástroje vidí kód 19: vložte instalační příkaz znovu
- aplikace se od instalace příkazu přesunula: vložte instalační příkaz znovu
- odemčeno, ale běh hlásí free: kontrola nákupu čeká nejvýše 5 sekund a pak pokračuje v rámci limitu zdarma. Spusťte znovu
- problém, který doctor nevysvětlí:
exporter report --send --email you@example.com