Paper Signal Studio

Turn photos, ideas, and research into beautiful editorial visuals with Codex or Claude Code.

Made with one shared paper-and-ink system and four compositions chosen for the subject. Click any image for the full result.

Quick start

npx skills add jiahuiqu17/paper-signal

Codex Desktop: end-to-end verified · Claude Code: Skill-compatible · Agent Skills · MIT

Then open a fresh task and ask:

Use $paper-signal-art-director to restyle this photo as a tactile minimal-zine
poster. Preserve the subject, save the final prompt, and inspect the bitmap.

Works as a standard Skill in Codex, Claude Code, and other compatible clients. Final image generation depends on the image tools available in your host; see the verified support levels.

validate release license

简体中文 · See how it works · Compatibility · Contributing

Why it is more than a style prompt

The simple promise is better-looking editorial imagery. Underneath, Paper Signal protects the things a style prompt often loses:

  • the subject — identity, architecture, object shape, crop, and exact values;
  • the visual logic — composition follows the content instead of one template;
  • the craft — paper, ink, halftone, type, and colour behave as one physical system;
  • the result — the real bitmap is inspected, corrected, and saved with its prompt.

Paper Signal keeps the whole production chain inspectable:

brief → protect the subject → route subject and composition → art direction
      → save the exact prompt → native raster generation → inspect the bitmap
      → targeted correction → validated project

For factual posts it can also keep an evidence record and write natural caption copy. For a single photograph or idea, it stays compact and focuses on the image.

What makes it different

Capability Paper Signal approach
Subject integrity Identity, horizon, silhouette, architecture, crop, and exact values are blocking constraints
Composition Seven adaptive modes selected after the subject route, not one template for every topic
Material craft One physical reproduction process explains grain, dot gain, ink spread, registration, and edge behaviour
Colour One meaningful chromatic signal; no palette contamination for decoration's sake
Reproducibility Every selected image keeps its brief, manifest, final prompt, output, and QA record
Social series Sequence, caption, evidence, and per-card routing are available without burdening a single poster
Quality control Automated structure checks plus full-size and phone-thumbnail visual review

See docs/comparison.md for a respectful scope comparison with GC Minimal Zine Poster, baoyu-xhs-images, Anthropic Canvas Design, and one-off prompts.

Before / after: style without losing the subject

The four Edinburgh images remain the finished-work hero. The compact block below tests a different claim: whether a print transfer can change the material reading without replacing the person or object. Each pair shows a repository-generated fictional edit target followed by the selected Paper Signal result.

The full portrait and object cases include the source-generation prompt, edit target, preservation record, exact transfer prompt, manifest, selected bitmap, asset hashes, and observation-based QA. The README loads only 600 × 800 WebP previews; click any image for the full PNG.

Installation and compatibility

Choose a host

The Quick Start command is interactive. To target a host explicitly:

npx skills add jiahuiqu17/paper-signal --agent codex
npx skills add jiahuiqu17/paper-signal --agent claude-code

Select the full paper-signal entry point or one of the three specialist skills. The repository also contains a Codex plugin manifest at .codex-plugin/plugin.json.

Host Skill loading Complete bitmap workflow
Codex Desktop Verified End-to-end reference runtime with image inspection and built-in ImageGen
Codex CLI Verified discovery and repository tooling Depends on the image tools configured for that session
Claude Code Agent Skills-compatible; installable with the community installer Requires an image-inspection and image-generation tool; not yet end-to-end verified here
Cursor and other compatible agents Installer- and host-dependent Depends on the host capabilities; prompt-only fallback remains available

The short compatibility line near the top means the Skill format loads on those hosts—not that every host exposes the same image tools. Format compatibility, tool availability, and tested rendering are separate levels. See the maintained compatibility matrix.

Install an immutable release

Each tagged release includes a deterministic skills-only ZIP and SHA256SUMS. It omits the large visual examples while retaining the four skills, schemas, license, and essential documentation.

gh release download --repo jiahuiqu17/paper-signal \
  --pattern "paper-signal-skills-*.zip" --pattern SHA256SUMS
shasum -a 256 -c SHA256SUMS
unzip paper-signal-skills-v*.zip
npx skills add ./paper-signal-v*

Local Codex development

Clone the repository, then link the skill folders into Codex:

git clone https://github.com/jiahuiqu17/paper-signal.git
cd paper-signal

for skill in paper-signal paper-signal-art-director paper-signal-series paper-signal-audit; do
  ln -s "$PWD/skills/$skill" "${CODEX_HOME:-$HOME/.codex}/skills/$skill"
done

Inspect an existing destination before replacing it. Open a new task after installation so the skill inventory reloads.

Requirements

  • an Agent Skills-compatible host;
  • image inspection for references and visual QA;
  • a runtime-native bitmap generator for rendering;
  • Python 3.10 or later only for project and repository tools.

Paper Signal bundles no image model, API key, tracking code, or third-party runtime. In Codex it uses built-in ImageGen.

Personalise without forking

Copy the preference template into a project or user config location:

mkdir -p .paper-signal
cp skills/paper-signal/assets/PREFERENCES.example.md \
  .paper-signal/PREFERENCES.md

You can set preferred paper processes, anchor inks, aspect ratio, text burden, caption voice, source-label policy, and banned motifs. Current-request instructions and subject-preservation rules always take precedence. See preferences.md.

Included skills

Skill Use it for
$paper-signal Complete routing and production from brief to final bitmap
$paper-signal-art-director One poster, landscape, portrait, object, architecture image, or existing-photo restyle
$paper-signal-series Two to ten Xiaohongshu/Instagram cards, visual essays, travel diaries, or evidence-led explainers
$paper-signal-audit Diagnose generic, inaccurate, AI-looking, or materially weak outputs and write targeted corrections

Example requests:

Use $paper-signal-art-director to turn this rainy Edinburgh street into a quiet
minimal-zine poster. Preserve the street geometry, use a panorama strip and one
cyanotype plate, save the final prompt, and generate the bitmap.
Use $paper-signal-series to turn these notes and photographs into five
Xiaohongshu images. Route each card by subject, keep one material system,
write the caption, save every prompt, and generate the real image series.
Use $paper-signal-audit to explain which visible details make these images feel
AI-generated. Rank the failures and return one targeted correction prompt per
failed image without regenerating them.

Adaptive composition

minimal-zine-standard is a material kernel, not a fixed small-photo layout.

Composition mode Best for Active image area
airy-fragment poems, compact concepts, evidence fragments 10%-24%
photo-window atmospheric photos, architecture, editorial covers 24%-45%
panorama-strip landscape, street, coastline, weather 18%-36%
dual-frame context/detail, near/far, before/after 22%-42%
specimen-plate objects, food, products, plants, garments 12%-34%
portrait-archive people, profiles, documentary portraits 22%-44%
type-object words or numerals that truly are the subject 12%-30%

The ranges are perceptual guides. Identity, horizon, silhouette, spatial geometry, and meaningful crop take priority.

Project output

A single-image project can stay small:

project/
├── brief.md
├── manifest.json
├── prompts/
└── outputs/

Series add analysis.md and outline.md. Factual work adds evidence.json; personal-sharing work can add caption.md; photo restyles add preservation.md.

Create a project:

python skills/paper-signal/scripts/init_project.py edinburgh-after-rain \
  --path ./work --cards 1 --ratio 3:5 \
  --subject landscape --composition panorama-strip \
  --preset weathered-horizon

Validate it:

python skills/paper-signal/scripts/validate_project.py \
  ./work/edinburgh-after-rain --require-prompts --require-images

Machine-readable contracts are published in schemas/: project manifest 1.0/1.1, evidence ledger 1.0, behavioural cases 1.0, and eval-run 1.0. The runtime validator remains the source of truth for cross-file and bitmap checks that JSON Schema cannot express.

Examples

Development and maintenance

New here? Start with Good First Contributions. You do not need to understand the whole architecture to test a host, improve one installation note, report a visual regression, or contribute a complete example.

The runtime and core test suite use standard-library Python:

make check

It compiles scripts, runs unit tests, validates all skill packages and UI metadata, checks version alignment and local links, scans for private absolute paths, validates behavioural cases, and validates every committed example according to its manifest status.

For release-facing integration checks, install the pinned development validators and run:

python -m pip install -r requirements-dev.txt
make integration

This adds the official Agent Skills reference validator, JSON Schema validation, and a pinned community-installer discovery smoke test. Prepare a clean behavioural eval without leaking the judge criteria into the performer request:

python scripts/eval_harness.py list
python scripts/eval_harness.py prepare single-landscape-weather --output ./tmp/eval-run

Road to 1.0

  • add a consented real-photo preservation benchmark and a second multi-material object benchmark;
  • complete end-to-end rendering tests in two additional Agent Skills hosts;
  • keep an explicit asset record with every visual example;
  • publish reviewer-completed behavioural eval records for major visual-kernel changes;
  • keep the visual kernel narrow while expanding subjects through evidence, not adjective lists.

Community

Made something with Paper Signal? Share the image, input or prompt, host, and version in Made with Paper Signal. Once real third-party submissions arrive, selected work with explicit permission can become a credited Community Gallery.

Acknowledgements

Paper Signal is independently authored and informed by the open workflows in baoyu-xhs-images and GC Minimal Zine Poster, both MIT-licensed. Their code and generated examples are not vendored. See the acknowledgements.

License

MIT © 2026 Paper Signal contributors. Generated-image rights and backend terms depend on the runtime and source assets used for each project.