Skip to content

B-27: Remaining SKILL.md JSON-example drift #290

Description

@gfargo

Severity: low. Individually trivial, collectively the reason agents mis-parse output.

  • caption --json (SKILL.md:407-421) omits top-level dryRun and skipped (caption.ts:395-401) — so an agent
    can't distinguish a dry-run from a real run, or count idempotent skips. SKILL.md gets this right for
    title/describe/tag/rename, so it's an inconsistency rather than a systemic gap.
  • audit --json (SKILL.md:239-257) omits prunedAttachments (audit.ts:325) and summary.unattached (:336).
  • a11y --json (SKILL.md:634-646) omits errors, truncated, complete (a11y.ts:242-244), and doesn't mention
    that a11y.ts:246 sets exit 4 while still returning a valid partial payload.
  • SKILL.md:215 cites list.ts:437 for the list --json shape; the actual printJson is list.ts:394.
  • SKILL.md:368-377 presents one bulk dry-run shape as canonical. There are six, and the discriminator itself
    flips between dryRun: true and action: 'dry-run': optimize.ts:499, export.ts:175, import.ts:288,
    metadata.ts:81, delete.ts:72, regenerate.ts:93, posts.ts:358/459/520. An agent cannot write one detector.
  • SKILL.md:935 calls --json "NDJSON"; only watch is NDJSON. Contradicts SKILL.md:73.
  • SKILL.md:~880 omits edit (edit.ts:190) and classify (classify.ts:112) from the snapshot-capturing list;
    both do capture.
  • src/cli/mcp/server.ts:30 (the server instructions — the first thing the host model reads) claims
    "Bulk ops (list+optimize/convert/resize/caption with --unoptimized or --all) are dry-run by default", but convert
    and resize take <ids...> only and have no --all/--unoptimized, and list isn't a bulk op.

Extracted from a repo audit performed 2026-07 (the audit doc it came from was proposed via an unmerged docs PR).

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentation

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions