aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
9 hoursShow candidate and sampling progress instead of raw sd-cli linesHEADmasterDanilo M.1-5/+7
The status line echoed sd-cli's latest log line. During the low-VRAM retry that is a recovered [ERROR line, which reads like a crash and got a working run interrupted. Show the candidate being sampled and its sampling progress bar only. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
9 hoursKeep the first attempt's log when retrying on low VRAMDanilo M.1-0/+1
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
9 hoursRetry Qwen edits that run out of VRAM with a 5 GB budgetDanilo M.1-1/+10
Qwen-Image 2.1 edits with two reference sheets need about 10 GB of VRAM, more than the 12 GB Arc leaves beside the desktop: prefix caching fails, the retry without it fails too, and so does disabling caching up front. Only an explicit --max-vram budget fits, by streaming weights (about 12 minutes per candidate), so retry once with vulkan0=5 when sd-cli reports it cannot make enough memory available. sd-cli logs [ERROR for the prefix caching failure it recovers from, so a run whose images were all saved no longer counts as failed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
10 hoursMake the live preview opt-in with --previewDanilo M.2-8/+16
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
10 hoursCenter the live preview on the active workspaceDanilo M.1-2/+7
magick display requests its own window position, and Hyprland honored it for the floating window: the preview opened off-screen on the second monitor. Extend the runtime rule with center and the workspace active at launch; re-registering the rule name replaces the previous one. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
11 hoursShow a live preview of the candidate being renderedDanilo M.2-4/+38
sd-cli writes a latent projection of the current candidate every step (--preview proj, no extra VRAM). While it runs, a magick display window shows that preview scaled up to 640 px and redraws on each change; it closes when sd-cli exits. display -update drops -resize on reload, so the poll loop writes the enlarged copy itself. Under Hyprland a runtime window rule (hyprctl eval) floats the window so the tiling layout leaves its size alone; the config is not touched. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
11 hoursNotify with notify-send, preview outside kitty with xdg-openDanilo M.2-9/+18
kitty's OSC 99 notifications only worked inside kitty. Use notify-send instead, passing the id of the previous notification with -r so each one replaces the last rather than stacking. Outside kitty, where icat cannot draw, open the candidate montage with xdg-open. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
12 hoursNotify when waiting for inputDanilo M.1-0/+13
Send a kitty desktop notification (OSC 99) whenever the script stops for a decision: candidates ready or sd-cli failed, plan ready for review, story changed, book done. Every notification shares one id, so each replaces the previous one instead of stacking, and kitty shows them only while the terminal is unfocused. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
12 hoursRevise the plan when the story changes, take style from frontmatterDanilo M.2-16/+53
An edited story only re-applied its frontmatter, so plan.md kept describing the old story. The body plan.md was drafted from is now kept in story.seen; when the story body differs, ask whether Gemma should revise the plan to match, start a new draft, or keep the plan. A style: frontmatter key now overrides the Style: line, so the art style can be set before Gemma drafts anything. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
12 hoursMove clothing to Outfit lines that a page can overrideDanilo M.1-16/+37
Putting the scene text after the character descriptions did not help: a t-shirt in the description and a formal suit in the scene both reached the prompt and the model blended them. Clothing now lives on a character's Outfit: line, and a page may carry its own "Outfit: Name: ...; Name: ..." line, so each prompt holds exactly one outfit per character. The draft instructions tell Gemma to keep clothing out of the fixed description. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
12 hoursReport progress and choices while reviewing candidatesDanilo M.1-0/+21
sd-cli ran silently for minutes. Show a self-overwriting status line with the elapsed time and sd-cli's latest progress output, and print a line for every pick, regenerate, prompt edit, skip and reused earlier pick. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
12 hoursFit the montage to the window and put characters before the scene textDanilo M.1-5/+19
The candidate montage filled the whole terminal, hiding the key prompt. Show a copy resized to the kitty window minus four rows. Character descriptions came after the scene text, so a scene detail such as a change of dress was overridden by the character sheet. List the characters first and let the scene text follow. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
14 hoursDrop chapter_title from the story frontmatterDanilo M.3-13/+9
It only replaced the plan.md heading, which nothing downstream reads. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
14 hoursTake series, book, chapter and title from story.md frontmatterDanilo M.3-11/+102
An optional --- frontmatter in the story file sets the names instead of letting Gemma invent them. The script writes them into plan.md after every draft and revision and whenever story.md changes. With a chapter number, pages are saved as CC-NNN.png so all chapters of a book share one folder and read in order in book-reader. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
14 hoursLog run events to run.log in the work dirDanilo M.2-1/+41
Every generation, pick with its seed, regeneration, prompt edit, skip, quit and plan decision is appended with a timestamp, so a pick can be traced back to its seed and a session can be reviewed afterwards. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
16 hoursDraw the book title on the cover pageDanilo M.3-9/+35
A page with a Title: line in plan.md gets that title as lettering in its base prompt, and its head edits are told to keep the lettering. The draft prompt makes page 1 a portrait cover carrying the book title; every other page stays text-free. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
16 hoursBuild plan.json from templates instead of a Gemma compileDanilo M.2-158/+141
The compile call only concatenated plan.md fields into fixed templates, cost about 40 s, and needed a json_schema, a consistency check and a retry. The script now builds every prompt itself. Gemma only drafts and revises plan.md, whose format gains a Pronoun line per character and a per-character Pose, and Framing must name the orientation. The draft prompt also keeps animals out of the character list and starts each description with who the person is. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
16 hoursTie page picks to their prompts and guard bad inputsDanilo M.2-3/+20
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
16 hoursGenerate reference sheets and pages into the libraryDanilo M.1-0/+46
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
16 hoursProtect plan.md from bad Gemma repliesDanilo M.1-16/+62
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
16 hoursDraft, review and compile the plan with GemmaDanilo M.1-4/+157
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
16 hoursKeep review loop alive on display and input errorsDanilo M.1-7/+24
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
16 hoursRun sd-cli under a RAM watchdog and review candidatesDanilo M.1-0/+89
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
16 hoursStrip trailing bold markers from plan fieldsDanilo M.1-2/+4
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
16 hoursHarden plan.md parsing and validationDanilo M.1-9/+42
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
16 hoursAdd model profiles and sd-cli argument buildingDanilo M.1-0/+57
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
16 hoursAdd edit grouping and plan.json consistency checksDanilo M.1-0/+45
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
16 hoursParse and validate plan.mdDanilo M.1-0/+112
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
16 hoursAdd config loading and disk-derived resume detectionDanilo M.1-0/+50
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
16 hoursAdd fanfictioner skeleton and READMEDanilo M.2-0/+99
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
16 hoursAdd fanfictioner implementation planDanilo M.1-0/+1054
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
29 hoursAdd GPLv2 license and design specDanilo M.2-0/+536
Design for fanfictioner: story.md -> Gemma plan.md -> sd-cli page images with per-stage review, character refs applied via Qwen-Image edit. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>