Skip to main content
Glama

photoshop_guard_lint_next_pass

Validate a proposed Guard continuation and its prior observation before execution without painting. Returns violations, error codes and field corrections to fix the draft before running it.

Instructions

Optionally validate a complete proposed Guard continuation before execution, including its previous observation. Use for a new risky draft; cycle_auto already validates, so do not lint each normal component or separately close a reviewed previous pass. Requires next_pass; retain its pinned document_id and complete construction/ownership fields. Include previous_operation_id plus previous_observation when continuing an operation, or review_operation_id for retained-frame re-evaluation, following the existing review instructions. Reads Guard state under a temporary controller lock and compiles the proposal without painting, persisting a review or closing an operation. Returns ok, execution=not-executed, visual_mutation_started=false, violations, error_codes, normalizations, compiled_operation and rejection. ok=false means correct the listed fields; success is not execution or artistic approval. Submit the same validated continuation once to photoshop_guard_cycle_auto, without another lint or close-only call. Runtime failures return isError=true with guard_next_pass_lint_failed.

Input Schema

NameRequiredDescriptionDefault
next_passYesUse the exact next_pass schema published by photoshop_guard_cycle_auto; validation returns all field corrections without mutation.
document_idNoOptional Photoshop document id from photoshop_get_state / photoshop_list_documents. When set, the tool verifies that this document is already active and fails closed if another tab is active. It never switches the active Photoshop document automatically.
review_operation_idNoExisting exact-frame operation for retained-frame re-evaluation; follow review instructions rather than re-closing its old pass.
previous_observationNoCompact visual closure. Supply observed + target, with optional regression/action and structured review_findings. A finding may trigger read-only crop enrichment for the same operation before closure. target is operation-local; planner_task_assessment is separate and optional.
previous_operation_idNoPrior operation to continue using previous_observation; lint validates this closure without committing it.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv1.8.3
    • addedInput schema / properties / previous_operation_id / description
      Added value: +"Prior operation to continue using previous_observation; lint validates this closure without committing it."
    • addedInput schema / properties / review_operation_id / description
      Added value: +"Existing exact-frame operation for retained-frame re-evaluation; follow review instructions rather than re-closing its old pass."
  2. First observedv1.8.0-preview.1

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description carries the full burden and does so: it states the tool reads Guard state under a temporary lock and compiles without painting, persisting a review, or closing a pass, lists the exact return fields (ok, execution, visual_executed, violations, etc.), explains what ok=false means, clarifies success is not execution or artistic approval, and names the runtime failure code. That is unusually complete side-effect and error disclosure for an unannotated tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with purpose, then usage, then behavior, return contract, and follow-up — a logical order with no filler sentences. It is dense and clause-heavy, which costs a little readability, but every sentence carries distinct information an agent needs.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a deeply nested, validator-style tool with no output schema, the description supplies the return contract, the failure contract, and the workflow handoff to cycle_auto — everything needed to call it and act on the result. The complex nested next_pass payload is delegated to the schema, which is fully documented.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the per-field baseline is already 3, but the description adds conditional composition rules the schema does not state per-field: include previous_operation_id plus previous_observation when continuing, or review_operation_id for retained-frame re-evaluation, and retain the pinned document_id with construction/ownership fields. This tells the agent which parameter combinations apply to which scenario, exceeding the schema's field-by-field text.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource — 'validate a complete proposed Guard continuation before execution' — and immediately bounds the scope by noting it includes the previous observation. It distinguishes itself from the sibling photoshop_guard_cycle_eye_auto by name, so an agent can route correctly without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives explicit use and do-not-use conditions: 'Use for a new risky draft; cycle_auto validates, so do not validate each normal component or separately close a reviewed reviewed pass.' It names the alternative tool and then instructs the follow-up ('submit the same validated continuation once to photoshop_guard_cycle_auto'), closing the workflow loop.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.