Skip to content

fix(skills): state when get_output carries a shortlink in technique-multi-scene-comic Step 6 - #54

Open
mattmillerai wants to merge 1 commit into
mainfrom
be-26019-comic-step6-shortlink
Open

mattmillerai wants to merge 1 commit into
mainfrom
be-26019-comic-step6-shortlink

Conversation

@mattmillerai

@mattmillerai mattmillerai commented Nov 11, 2026 •

Copy link
Copy Markdown
Member

ELI5

The comic-making guide told the agent that every finished image comes with a short, safe link to give the user. That is only true for small sets of still images, so the agent could end up giving out a long private storage link or getting stuck. This change says exactly when the short link exists and gives the agent a clear order to try things in, so every panel and clip still reaches the user safely.

What

Rewrites the delivery paragraph in skills/technique-multi-scene-comic.md Step 6. The page-layout / utility_image_stitch sentences after it are byte-identical.

  • States when a get_output result carries an /api/s/<id> Download and View link: the result's page holds at most 4 files, all non-animated PNG/JPEG/WebP, and cloud minted the link. Every other result (video/audio, animated or larger pages, a failed mint, everything from get_batch_output) carries a signed storage URL that lasts about 6 hours and no View link. That URL is for the agent only.
  • With a shell: run the emitted download command, and also hand the user the /api/s/<id> links where they exist, because a local path may not be one the user can open.
  • Without a shell: deliver every job through get_output(<job_id>) first, including panels collected with get_batch_output. Check that the link really is an /api/s/<id> link before handing it over. Hand over the emitted download command only for a result with no shortlink. This sets the order of preference and keeps the command hand-off, which is the server's own last resort, rather than banning it.
  • Covers results where the per-file command was dropped to fit the size limit (the url on structuredContent.results[] is still the link to check) and entries flagged url_omitted: true (fetch them with get_output(<job_id>, offset: <next_offset>)).

The numbers (4 files, ~5 min, ~6 h) stay in the prose. The recipe body is now ~11.6k chars, well under the server's 20k per-recipe cap.

Testing

  • Diffed the old and new text of the paragraph after the replaced span: they are identical.
  • claude plugin validate ./claude-code passes locally, and the plugin-validate and smoke CI jobs pass on this head. Neither exercises this recipe's text, which has no automated test.
  • Read the server-side behaviour this text describes in the MCP server source: it matches.
  • Doc-drift sweep: 0 references checked, 0 updated. The script found 18 identifiers and no doc references to them. I also searched by hand for get_batch_output and /api/s/ across the repo's Markdown. The only other hit, claude-code/commands/clone-voice.md, is about collecting a batch, not about delivering links, so it isn't stale.

Provenance

  • Authored by: agent-work loop
  • Verified:
    • Replacement leaves the rest of Step 6 unchanged (the text after the replaced span hashes identically to the base)
    • Recipe size ~11.6k chars, under the 20k cap
    • Doc-drift sweep clean; manual search found no other delivery text to update
    • Plugin validator passes locally; plugin-validate and smoke CI pass on this head
    • Shortlink limit and file types, link lifetimes, url_omitted/next_offset and the no-shell command hand-off match the MCP server source (read only, not exercised against a live server)
  • Deviations:
    • The request asked for internal tracking ids in the PR body. They are left out because this repo is public; the branch name carries the link instead.

Residual

  • Once this merges, the copy of this recipe on the MCP server side needs to be re-mirrored to pick up the new Step 6.
  • One other open pull request (fix(multi-scene-comic): scope batch re-submits to unbilled items and bound re-polling #53) edits Step 2 of the same file. Nothing overlaps with Step 6.
  • A clip has no shortlink, so a user with no terminal still has no way to receive it from this flow. That comes from the server, which offers only the download command there and forbids handing over signed URLs, so closing the gap needs a server change.

…ulti-scene-comic Step 6

Step 6 claimed every get_output result carries an /api/s/<id> Download and
View link. That holds only for a page of at most 4 still images where cloud
minted the link; other results carry a ~6 h signed storage URL and no View
link. Spell out the condition, keep handing over the shortlinks when the
agent has a shell, and on a no-shell client route every job through
get_output(<job_id>) first, falling back to the emitted download command only
for a result with no shortlink. Also cover shed per-file commands and
url_omitted tail entries.
@mattmillerai mattmillerai added cursor-review Request the Cursor multi-model review matrix agent-coded Implemented by the agent-work loop labels Nov 11, 2026
@coderabbitai

coderabbitai Bot commented Nov 11, 2026 •

Copy link
Copy Markdown

Explain Change →

Walkthrough

Step 6 updates multi-scene comic delivery instructions. It distinguishes shortlinks from signed storage URLs and describes how to retrieve and deliver results in shell and non-shell workflows.

Changes: Multi-scene comic delivery

Layer / File(s) Summary
Link handling and delivery
skills/technique-multi-scene-comic.md
Step 6 defines when results may include shortlinks or signed storage URLs, their expiration periods, and the restriction against sharing signed URLs. It also explains how to deliver saved files, retrieve links for batch results, use download commands, and fetch omitted URLs with an offset.

Possibly related PRs

Suggested reviewers: vqt123

Merge Risk: Low · up to 3201a

This documentation update clarifies link and delivery guidance. Users who cannot run a download command may still have difficulty receiving clips, but that limitation existed before this change, so merge risk is low.

Pre-merge checks: Passed 2

Check name Status Explanation
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Finishing Touches

Generate unit tests (beta)

  • Commit to this branch
  • Create a new PR
Simplify code

  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

@coderabbitai
coderabbitai Bot requested a review from vqt123 November 11, 2026 06:06

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Additional comments: 1

skills/technique-multi-scene-comic.md-56-56: 1

56-56: Major · Functional Correctness · Heavy lift

Unverified finding
Verification ran but could not confirm this finding. It is shown for review, not as a verified issue.

Provide a usable fallback for users without a terminal.

Video clips have no shortlink, so the no-shell path gives the user only a download command. Users who cannot run that command cannot receive their clips. Provide a browser-accessible link or an attachment fallback. (raw.githubusercontent.com)

Review info

Run configuration

  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: ASSERTIVE
  • Plan: Team
  • Run ID: c46243d7-7ff9-46a8-ba03-8df9330cff19
Commits

Reviewing files that changed from the base of the PR and between 88116d7 and 3201a96.

Files selected for processing: 1

  • skills/technique-multi-scene-comic.md

Included review availability: This review used your included allowance. 0 included reviews remain after this review. Your included PR review attempts over the past 7 days set your current allowance at 2 reviews per hour.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

agent-coded Implemented by the agent-work loop cursor-review Request the Cursor multi-model review matrix

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant