Nik McFly
ENRUKZISV
← Blog

Ja stvoril Claude Skill, ktory prětvarjaje Markdown v knigy dlja Amazon KDP

Jedna komanda. Markdown na vhodu, EPUB i PDF dlja pečati na vyhodu. Ja opublikoval open-source skill, s ktorym izdal knigu na Amazon.

#ai#claude#open-source#self-publishing#kindle

Ja napisal knigu v Markdown. Odin fajl, 180 stranic. Kogda prišlo vremja publikovat’ na Amazon KDP, mne nužny byli dva formata: EPUB3 dlâ Kindle i gotovyj k pečati PDF dlâ mjagkoj obložki. Format 6x9 djujmov. U KDP konkretne trebovanija k poljam, širine koreska i vyletam. Ošibis’ v ljubom parametre, i Amazon otklonit fajl.

Ja poproboval suščestvujûŝie instrumenty. Calibre slomal formatirovanie. Pandoc vydal validny EPUB, no nastol’ko urodlivyj, što potrebovalis’ by časy ručnyh CSS-pravok. Reedsy i Draft2Digital hoteli, čtoby ja vstavil kontent v ih redaktory i načal zanovo. Atticus stoit $150 i vse ravno trebuet ručnoj podgonki.

Ni odin iz nih ne rešil moju zadaču: vzyat’ odin .md fajl i polučit’ oba KDP-formata za odin šag, bez ručnogo vmeshatel’stva.

Poetomu ja sobral Claude skill, kotoryj eto delaet.

Čto delaet skill

Vy kidaete .md ili .txt fajl v Claude (desktopnoe prilojenie, režim Cowork) i govorite “sdelaj Kindle-knigu”. Skill čitaet rukopis’, zadaet neskol’ko voprosov (nazvanije, avtor, format obrezki, nužno li oglavlenie) i vydajet dva fajla: validny EPUB3 i gotovyj k pečati PDF.

EPUB prohodit validaciju Amazon KindleGen. PDF sootvetstvuet specifikacijam KDP paperback dlâ vybrannogo formata (6x9, 5x8 ili kastomnyj). Oba fajla popadajut v papku vyvoda, gotovye k zagruzke na KDP.

Odna komanda. Nikakih promežutočnyh instrumentov. Nikakogo kopirovanija meždu prilojenijami.

Kak eto rabotaet

Skill predstavljaet soboj nabor instrukcij, šablonov i pajplajna sborki, upakovannyh v .skill fajl (zip-arhiv, kotoryj Claude umeet zagružať).

Pri zapuske on:

  1. Parsit Markdown v strukturirovannye sekcii (načalo, glavy, konec)

  2. Generiruet EPUB3 s nulja čerez Node.js. Ne konvertacija. Skill pišet každyj ORF, NCX i XHTML fajl po specifikacii EPUB3. Stroit oglavlenie iz struktury zagolovkov, zadaet metadannye (nazvanije, avtor, jazyk, izdatel’) i pakujet vse v validny .epub kontejner.

  3. Generiruet PDF dlâ pečati čerez Puppeteer. Renderit každuju glavu kak HTML-stranicu s pravil’nymi poljami dlâ vybrannogo formata, dobavljaet nomera stranic, obrabatyvaet visjaščie stroki i vydajet odin PDF, sootvetstvujuščij specifikacijam KDP.

Matematika polej važna. Kniga 6x9 s 300 stranicami trebuet koreskovo pole 0.875 djujma. Kniga 5x8 so 150 stranicami trebuet 0.75 djujma. Skill vyčisljaet eto iz količestva stranic i formata obrezki. Ošibis’, i KDP pometit fajl pri proverke.

Počemu Claude skill

Ja mog by sobrat’ eto kak CLI-instrument ili veb-prilojenie. Ja vybral format Claude skill po odnoj pričine: rukopis’ uže v Claude.

Moj process napisaniya ispol’zuet Claude. Ja pišu černovik v Markdown, redaktirujû s Claude, perestrajivaju strukturu s Claude. Rukopis’ živet v dialoge. Skill, rabotajuščij vnutri toj že sredy, označaet, što ja ne vyhožu iz konteksta. Ne eksportirujû v drugoj instrument. Ne zagružaû na drugoj servis. Fajl prohodit put’ ot černovika do gotovogo k publikacii vnutri odnogo prilojenija.

Skilly ne trebujut nastrojki dlâ pol’zovatelja. Ustanavljaeš .skill fajl, i Claude polučaet novu sposobnost’. Nikakogo npm install. Nikakogo Python-okruženiâ. Nikakogo Docker. Esli u vas est’ Claude desktop, u vas est’ vse neobhodimoe.

Čto ja uznal pri sozdanii

EPUB3 eto zip-fajl so strogoj strukturoj. Fajl mimetype dolžen byt’ pervoj zapis’ju, bez sžatija. META-INF/container.xml dolžen ukazyvat’ na OPF. OPF dolžen perečislit’ každy resurs. Propusti odnu ssylku na fajl, i validacija provalitsâ. Ja potratil na porjadok zapisej v zip bol’še vremeni, čem na ljubuju druguju časť sborki.

Polja dlâ KDP paperback ne zadokumentirovany v odnom meste. Ja sobiral specifikacii s treh raznyh stranic spravki KDP, posta na forume i odnogo soobŝenija ob ošibke pri

otklonennoy zagruzke. Teper’ v skille est’ tablica: format obrezki + količestvo stranic = točnye polja.

Generacija PDF v Puppeteer horošo rabotaet s razryvami stranic, no ploho spravljaetsja s kolontitulami. Skill ispol’zuet CSS @page pravila i position: fixed elementy dlâ stabil’nyh nomerov stranic. Dlâ beguših zagolovkov prihodilos’ delat’ obhodnoj put’: vstavlât’ ih dlâ každoj glavy kak absoljutno pozicionirovannye div-bl, a ne kak nativnye PDF-zagolovki.

Open source

Skill na GitHub. Licencija MIT. Mozhete ustanovit’ ego v Claude desktop i opublikovat’ svoju knigu uže segodnja.

Rabotaet s anglijskimi rukopisjami. Drugie jazyki rabotajut, esli šrifty ih podderživajut, no ja testiroval tol’ko s anglijskim i russkim.

Esli najdete kraevoj slučaj specifikacii KDP, kotoryj skill ne obrabatyvaet, sozdajte issue. Tablica polej pokryvaet samye rasprostranennye formati, no ne vse vozmožnye kombinacii.

GitHub: kindle-book skill

Čto možno sdelat’ prâmo sejčas

Esli u vas est’ rukopis’ v Markdown ili običnom tekste, ustanovite skill i zapustite ego. Gotovye k zagruzke fajly dlâ KDP pojavjatsja men’she čem za pjat’ minut. Skill beret na sebâ voznju s formatirovaniem, a vy možete sosredotočitjsja na tom, horoša li vaša kniga.

Samizdat ne dolžen trebovat’ izučenija InDesign ili bor’by s Calibre. Fajl v Markdown i odna komanda. Ètogo dolžno xvatat’. Teper’ xvataet.