Získat Exporter
Dokumentace CLI

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

  1. Nainstalujte Exporter z Mac App Storu (stažení) a otevřete ho.
  2. 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.
  3. 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. Řádek nainstaluje také notes-exporter, starý název příkazu, takže starší skripty a řádky cronu fungují dál. 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
reminders apple-reminders, lists, todos vždy markdown, jeden soubor na seznam
claude-code claudecode, claude, claude-code-sessions markdown, původní log, nebo obojí, podle zaškrtnutí na kartě
wallet passes, pkpass, boarding-passes, tickets vždy markdown, jeden soubor na kartu
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 sync zapisuje každou aplikaci ve formátu nastaveném na její kartě (Apple Notes a Bear mají každý vlastní) a export zapisuje podle nastavení aplikace, kterou exportuje; exporter help sync a exporter help export ukazují 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 html ignoruje s poznámkou: note: logseq export is always markdown, so --format is ignored for this source.
  • Apple Notes zapisují jednu stránku .html na poznámku (formát HTML), přílohy zkopírované do attachments/ 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, pro tento běh “Uspořádat” na kartě
--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, Zprávy, Čas u obrazovky a Dokumenty exportují to, co mají zaškrtnuté na kartě, stejně jako sync; filtry se u nich ignorují s poznámkou. U Dokumentů --dry-run vypíše would convert <n> document(s) a běh uvede soubory, které nedokáže přečíst: note: 3 file(s) skipped: not a format any engine converts.

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 · 50 of 50 free conversations used
organize       apple notes by folder · contacts in one folder
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; organize ({"appleNotes": "folders", "contacts": "flat"}, “Uspořádat” na kartách); 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émata sync, export, list, status, log, doctor, report, cron, install. Nápověda k příkazu ukazuje vaše aktuální nastavení jako výchozí hodnoty
  • sync, export, list, log a report přijímají také --help nebo -h
  • exporter version (nebo --version, -v) vypíše exporter 3.24
  • samotný exporter v 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ů). Každá aplikace uchovává 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áří, takže poznámky, které jste smazali, přejmenovali nebo jim změnili tagy, přijdou o svůj starý soubor (Čas u obrazovky soubor dne nikdy neodstraní). 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 50 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 (50 of 50 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í.

Zálohovací nástroj, který spouští své skripty jako root (Carbon Copy Cloner to dělá), musí exporter spustit uvnitř relace přihlášeného uživatele, nejen jako tento uživatel. Samotné sudo -u ho okamžitě ukončí s návratovým kódem 133; předřaďte mu launchctl asuser:

/bin/launchctl asuser "$(id -u "$CONSOLE_USER")" /usr/bin/sudo -u "$CONSOLE_USER" exporter sync

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 dests ukazuje, 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 Exporteru
  • sync vypíše, že Exporter běží: není co dělat, aplikace složku udržuje aktuální. Pro samostatnou kopii použijte export --dest
  • no notes were written. run "exporter doctor" to check folders and permissions.: běh vybral poznámky a žádnou nezapsal; doctor zkontroluje 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

Exporter

Verze 5.5 (App Store)

macOS 15 nebo novější

exporter@tinysend.com

© system operator