Skip to main content
Glama

axint.swift.validate

Read-onlyIdempotent

Validate Swift source against Apple-specific build-time rules (AX700–AX749) including Swift 6 concurrency and Live Activities. Run before build to catch issues.

Instructions

Validate existing Swift source against Axint's Apple-specific build-time rules (AX700–AX749) including Swift 6 concurrency and Live Activities. Use: use on generated or edited Swift before build; pair with swift.fix for mechanical repairs. Inputs: source or sources provide Swift text; projectIndex enables cross-file checks; platform filters rules. Effects: read-only Swift diagnostics; writes no files and uses no network.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
fileNoOptional file name to attach to diagnostics for editor integration.
sourceYesFull Swift source code to validate.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
textYes
isErrorNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / file / description
      Previous value: -"Optional file nam..."New value: +"Optional file name to attach to diagnostics for editor integration."
  2. Changed3 schema fields changedv0.4.34
    • changedInput schema / properties / file / description
      Previous value: -"Optional file name to attach to diagnostics for editor integration."New value: +"Optional file nam..."
    • removedOutput schema / properties / isError / description
      Removed value: -"Whether Axint marked the tool response as an error."
    • removedOutput schema / properties / text / description
      Removed value: -"Primary Axint tool response text, matching the first text content block."
  3. Changed1 schema field changedv0.4.28
    • changedInput schema / properties / file / description
      Previous value: -"Optional file name to attach to diagnostics..."New value: +"Optional file name to attach to diagnostics for editor integration."
  4. Addedv0.4.26

TDQS

A4.4/5.0
Behavior5/5

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

Adds concrete behavioral details beyond annotations: 'read-only Swift diagnostics', 'writes no files', and 'uses no network'. These complement and reinforce the readOnlyHint and destructiveHint annotations without contradiction.

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?

The description is compact and well-organized with Use/Inputs/Effects sections. It remains concise while covering essential aspects, though the inaccurate Inputs section slightly detracts from structure.

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

Completeness4/5

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

The description covers purpose, usage scenarios, behavioral effects, and pairing with swift.fix. The output schema handles return value details. However, the dangling parameter references prevent a perfect score.

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

Parameters2/5

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

The schema fully describes the two parameters, but the description introduces 'sources', 'projectIndex', and 'platform' that are not in the schema. This creates confusing references to non-existent inputs, undermining agent confidence.

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?

The description clearly states the tool validates existing Swift source against Axint's Apple-specific build-time rules (AX700–AX749), including specific rule categories. This distinguishes it from siblings like axint.swift.fix and axint.validate.

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?

Explicitly says to use on generated or edited Swift before build and pairs with swift.fix for mechanical repairs, providing clear context and an alternative.

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