Skip to content

0.5.11#32

Merged
cleverhoods merged 74 commits into
mainfrom
0.5.11
Jun 18, 2026
Merged

0.5.11#32
cleverhoods merged 74 commits into
mainfrom
0.5.11

Conversation

@cleverhoods

Copy link
Copy Markdown
Contributor

Actionability release: one headline Quality score, leverage-based triage, a
queryable rules CLI, variadic check targets, and the Imported/Referenced
link-reach split — plus Windows/npx hardening and a batch of correctness fixes.

Command surface

  • ails --help reorganized into four intent panels — Get started (check),
    Explore (explain, rules), Account & setup (auth, config),
    Maintenance (install, update, version) — each command described in one
    imperative clause.
  • Root-level --version / -V prints the version; ails version still gives the
    full install-method readout. -h works everywhere as a --help alias, and
    shell completion covers ails check <target>, --agent, and
    ails explain <id-or-slug> (enable via ails --install-completion).
  • Per-capability checks: ails check takes variadic typed targets, so you can
    point it at a specific harness capability instead of the whole project —
    capability:name (ails check skill:backlog), a bare capability noun
    (ails check skills, ails check agents, ails check rules,
    ails check memories), or a path. Targets are mixable; no target = whole-project
    scan. The capability vocabulary is read from the detected agent's harness config
    (framework/rules/<agent>/config.yml), so each agent's real surfaces — skills,
    subagents, rules, memory — resolve per agent rather than from a fixed list.

Scoring & output

  • Single Quality score (0–10) leads the summary — the analysis service's
    verdict on how well-formed your instructions are, shown verbatim. Structural
    completeness and content dropped past an agent's hard size cap fold in as a
    delivery factor, so a file that loses instructions can no longer read as clean.
  • Per-finding leverage tier (gate_mover / conditional / cosmetic)
    drives inline triage: each file panel leads with what moves the score and
    collapses the rest into a single +N lower-priority row (-v to expand).
  • Each finding shows a remediation line with fix text written for that
    specific instruction.
  • -f json gains top-level quality and level, a per-file regime block, and
    a per-finding leverage tier. Existing severity / score / violations
    fields are unchanged.

Rules CLI

  • New ails ruleslist (with repeatable --capability, --agent,
    --severity; text / md / json output), agents, and capabilities.
    The md form pipes straight into an authoring agent's prompt.
  • ails explain <id-or-slug> accepts a rule ID or slug for rule-detail browsing.

Check targets & surfaces

  • Variadic typed targets: capability:name (skill:backlog), bare capability
    nouns (skills), or paths — mixable; no args = whole-project. A leading
    Windows drive letter is treated as a path.
  • Imported vs Referenced split: @-imported markdown counts toward Quality as an
    Imported surface; [text](path)-linked files surface as Referenced
    (findings only, kept out of the score). Requires generic_scanning: true.
  • exclude_files config key / --exclude-files flag to drop individual files
    from discovery.
  • --fix added as an alias for --heal; the standalone ails heal verb is
    folded into ails check --heal.

MCP / plugin

  • Tool surface trimmed to validate, preflight, explain. validate now
    accepts single-file path targets and returns a structured needs_install
    payload when the framework is absent.

CI & GitHub Action

  • The action's score output and min-score gate read the real quality
    verdict from the check JSON; an offline run leaves the score empty and the gate
    logs a warning and skips instead of failing on a fabricated number.

Platform & fixes

  • Windows: forces UTF-8 stdout/stderr so the scorecard and -f md glyphs no
    longer crash under cp1252 (npx users).
  • Resident embedding + spaCy models unload after an idle window so a background
    ails process no longer pins memory indefinitely.
  • npx / MCP uvx invocations use --refresh-package reporails-cli instead of a
    blanket --refresh, ending the per-run dependency-graph re-resolution.
  • Numerous discovery, classification, single-file-scan, and symlink fixes — see
    CHANGELOG.md for the full list.

…lias, JSON regime/leverage keys, rules-capabilities resolution
@cleverhoods cleverhoods merged commit efa8ca3 into main Jun 18, 2026
14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant