← App Store Screenshot Studio한국어로 읽기 →

June 2026 update: safer layout checks and a more autonomous agent workflow

Today's update is mostly the unglamorous kind of work that makes a tool reliable: better report data, smaller bug fixes around layout diagnostics, and a new guarded loop that lets an AI coding agent inspect a screenshot set, apply conservative manifest edits, and render again without turning the process into guesswork.

The basic fixes that make the loop trustworthy

The headless renderer already knew how to produce screenshots from a folder of files. The weak spot was what happened after a render found a layout problem. A report could say that text overlapped or a popup crossed a safe margin, but it did not always point cleanly back to the manifest field that caused the problem.

That is fixed now. Layout report boxes include manifestPath, issues carry their related manifestPaths, and every issue can expose a suggestedFix. The renderer can also fail explicitly with --fail-on-layout-issues, which is useful in CI or an agent-run workflow where a quiet warning is too easy to miss.

A summary file an agent can actually use

The important new artifact is layout-summary.json. Instead of forcing a human or agent to reverse-engineer a long visual report, the summary groups issues and suggested edits in a format that is deliberately close to the original manifest.

That matters because the manifest is the stable contract between a screenshot project and the automation around it. A JSON Pointer such as /slides/1/highlights/0/popup/centerY is much safer than an instruction like "move the second card down a bit." The former can be checked, diffed, and applied.

From suggestion to guarded auto-fix

There is now a small fixer that reads layout-summary.json and applies the suggested manifest edits. It is conservative on purpose. The default mode is a dry run: it prints what would change and leaves files untouched. Only an explicit --write writes the updated manifest.

npm run headless:export -- launch-screenshots/ out/ --report
npm run layout:fix -- out/layout-summary.json launch-screenshots/manifest.json
npm run layout:loop -- launch-screenshots/ out/ --write --max-runs 3

The first command renders and reports. The second shows a human-readable dry-run summary. The third runs the full loop: render, apply guarded manifest fixes, render again, and stop when the layout is clean or the maximum run count is reached.

The first set of supported fixes covers the issues that tend to block localized App Store screenshots most often: text-overlap, safe-margin-overflow, badge-seam-overlap, and the highlight popup overflow/source-overlap cases. They adjust manifest values, not exported PNGs, so the project remains editable and repeatable.

Cleaner agent skills, less repository noise

The repository now keeps project-specific agent skills under .agents/skills/. The useful routines are easier to reuse: run the three-layer test flow, update stale tests after behavior changes, verify the project-import pipeline in a browser, or record the promo flow. Local runtime state stays out of the repository, so a future agent sees fewer unrelated dirty files before it starts work.

Why this matters

The end goal is not to let an agent make unlimited design decisions. It is to give the agent a narrow, inspectable path through the boring parts: render the exact outputs, detect mechanical layout problems, make the smallest manifest edits, and show the diff. A person still owns the taste. The loop just removes a few rounds of manual nudging.

That fits the original philosophy of App Store Screenshot Studio: no account, no server, no screenshot upload, and no hidden state. Files go in, PNGs and reports come out, and every automated change can be reviewed before it lands.

Read the workflow guide — import a manifest, render locally, inspect layout reports, and keep the project fully client-side. →