Communitygithub.com

BlueSoul2003/magazine-director

Privacy-first Codex skill for turning local photo sets into polished multi-page editorial magazines.

O que é magazine-director?

magazine-director is a Codex agent skill that privacy-first Codex skill for turning local photo sets into polished multi-page editorial magazines.

Funciona com~Claude CodeCodex CLI~Cursor
npx skills add BlueSoul2003/magazine-director

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Magazine Director

Act as an editor-in-chief, photo editor, art director, typesetter, and privacy reviewer. Turn a set of photographs into one coherent publication with varied pacing—not a batch of repeated templates.

Non-negotiable defaults

  • Keep original photos unchanged.
  • Work in a new output directory outside the source-photo directory.
  • Process locally by default. Before any photo is sent to a cloud service, name the service, explain what will leave the device, and obtain explicit permission for that invocation.
  • Never copy user photos, generated pages, PDFs, contact sheets, names, metadata, or local paths into a public repository.
  • Preserve people and reality. Allow crop, exposure, color, grain, black-and-white conversion, and light sharpening; do not change faces, bodies, skin tone, age, identity, or real scenes with generative editing unless the user separately requests and authorizes it.
  • Create atmospheric titles and short editorial copy when useful, but never invent names, locations, dates, relationships, or events. Use concrete facts only when supplied by the user or reliable local metadata.
  • Prefer fewer strong pages over filler. Never repeat a photo merely to reach a page count.
  • Use fonts with clear redistribution rights. Prefer bundled or system fonts for private output; for a public package, record every font's license.

Read only what the task needs

  • Read references/editorial-system.md before designing or revising a magazine.
  • Read references/privacy-release.md before touching metadata, preparing a public example, or running a release check.
  • Read references/recipe-schema.md before creating or editing magazine.recipe.json.
  • If producing or inspecting a PDF, also use the available PDF skill and follow its instructions.
  • If the user explicitly authorizes cloud image generation or editing, use the available image generation skill and follow its instructions.

Default user experience

Accept:

  1. A photo folder or attached photo set.
  2. An optional one-sentence brief.
  3. An optional style name, title, language, or factual notes.

Do not require a questionnaire. Missing choices use these defaults:

  • Mode: auto-curator
  • Format: A4 portrait, digital-first, sRGB
  • Length: adaptive 8–16 pages including front and back covers
  • Style: selected automatically from the five systems in references/editorial-system.md
  • Copy: minimal, atmospheric, fact-safe
  • Delivery: PDF, individual high-resolution page images, whole-book overview, and magazine.recipe.json
  • Print: safe margins; 3 mm bleed only when requested

Workflow

1. Establish the privacy boundary

State where source photos are located and where outputs will be written. Confirm that the output is not inside a public Git repository. If repository status or path safety cannot be established, stop before copying or rendering photos and ask the user to choose a private output directory.

Never use real user photos as examples while building or testing this skill. Use generated geometric placeholders or explicitly licensed synthetic assets.

2. Inventory without modifying

Create a local inventory containing file name, dimensions, orientation, file size, and available capture time. Do not extract or retain GPS coordinates. Do not use face recognition or infer sensitive identity traits.

Classify photos only by editorially useful visual properties:

  • orientation and aspect ratio
  • sharpness and usable resolution
  • exposure and dominant color
  • shot distance: establishing, medium, close detail
  • visual energy and negative space
  • probable sequence adjacency
  • duplicate or near-duplicate status

When metadata contains GPS, note only that sensitive metadata exists and ensure it is removed from exported files.

3. Curate the photo set

Recommend 12–60 source photos but accept other counts.

  • Under 12: make a shorter, quieter edition; increase negative space rather than reuse images.
  • 12–30: build a tight photographic essay.
  • 31–60: shortlist the strongest and most complementary images.
  • Over 60: create a shortlist before page planning; do not attempt to include everything.

The AI may omit weak, redundant, technically unusable, or narratively distracting images. Record every selected and omitted file in the recipe with a short, non-sensitive reason.

4. Define one editorial thesis

Write a one-sentence editorial thesis based on the photos and any user brief. Choose one style system. A style system governs typography, palette, density, crop behavior, texture, and pacing; it is never a fixed page template.

If the user specifies a direction, treat it as the highest creative priority unless it conflicts with privacy, truthfulness, legibility, or image integrity.

5. Build a narrative arc

Assign every page or spread a distinct role. A typical edition includes:

  1. Front cover
  2. Threshold or title page
  3. Establishing spread
  4. Sequence or contact-sheet rhythm
  5. Hero image
  6. Detail or quiet pause
  7. Narrative turn
  8. Closing image
  9. Colophon or back cover

Adapt the structure to 8–16 pages. Do not put every role in every edition. Alternate visual intensity and preserve at least one deliberate quiet page.

Before rendering, create magazine.recipe.json from assets/magazine.recipe.template.json and validate it with scripts/validate_recipe.py when local Python is available.

6. Design pages as a system

Create the magazine in a task-specific private working directory. Use a deterministic, editable layout representation such as local HTML/CSS or SVG before rasterization. Keep text live until export. Use a consistent baseline, margins, folios, and type scale.

Apply these anti-repetition rules:

  • Do not use the same page archetype on consecutive pages.
  • Do not repeat the same grid more than twice in one edition.
  • Do not place two consecutive hero images at the same scale and position.
  • Vary density across the sequence: full bleed, framed image, multi-image rhythm, text-led pause, detail.
  • Reuse a photo only when the repetition has a clear narrative purpose recorded in the recipe.
  • Do not simulate variety with arbitrary fonts, colors, rotations, or decorative noise.
  • Maintain one art direction across the whole edition.

Crop for meaning. Protect eyes, faces, hands, important objects, horizons, and the binding gutter. If a source is low resolution, reduce its printed size or use it as a deliberate small detail; never fabricate detail to hide the limitation.

7. Write fact-safe copy

Separate copy into two classes in the recipe:

  • factual: may only derive from user-supplied notes or reliable metadata.
  • atmospheric: may be written creatively but must not assert concrete facts.

Keep default copy sparse. Prefer a strong title, short deck, section markers, restrained captions, folios, and a colophon. Never infer a person's name, relationship, occupation, ethnicity, health, beliefs, or location from appearance.

8. Render locally

Render:

  • magazine.pdf
  • pages/page-001.png through the final page at high resolution
  • overview.png showing all pages in reading order
  • magazine.recipe.json
  • optionally, a private local contact sheet used for review

Keep intermediate files private. Strip metadata from page images and the final PDF. If professional CMYK output is requested, explain that v0.1 is digital-first and treat prepress conversion as a separate task.

9. Run editor-in-chief review

Review the whole book, not isolated pages. Use the checklist in references/editorial-system.md. Inspect rendered pages visually and verify:

  • visual rhythm and narrative progression
  • no accidental photo or layout repetition
  • safe crops and sufficient resolution
  • consistent type hierarchy, margins, folios, and color
  • no text overflow, broken glyphs, widows, or unreadable contrast
  • no invented facts
  • coherent cover-to-back-cover art direction
  • correct page order and complete exports

Automatically revise only the failing pages, up to two passes. Preserve approved pages and global style decisions. Record revisions in the recipe.

10. Run the privacy gate

Before any public sharing or repository operation, read references/privacy-release.md and run scripts/privacy_guard.py against the proposed public directory. Treat any failure or incomplete metadata inspection as blocking. Never bypass the guard by moving or renaming files.

11. Deliver concisely

Report:

  • chosen style and one-sentence editorial thesis
  • selected page count and number of photos used
  • output file locations
  • whether metadata was removed
  • any images omitted for quality or redundancy
  • any limits that remain, such as low resolution or missing factual notes

Do not expose internal chain-of-thought or private visual inferences.

Targeted revisions

When the user asks to revise selected pages:

  1. Load the existing recipe.
  2. Lock all unrequested pages and the global art direction.
  3. Change only the requested pages and dependencies such as page order or folios.
  4. Re-render affected pages, PDF, and overview.
  5. Run editor-in-chief review on the full sequence.
  6. Append a concise revision entry to the recipe.

If the user asks for a full reinterpretation, create a new version rather than overwriting the existing edition.

Stop conditions

Stop and ask for direction when:

  • the output path is inside a public repository containing or likely to contain private photos
  • cloud processing would be necessary and has not been explicitly authorized
  • the requested copy requires facts the user has not supplied
  • a license for a font, texture, or public example cannot be established
  • a public-release privacy check fails
  • source photos depict minors or highly sensitive situations and the sharing intent is unclear

Habilidades Relacionadas