korya

Avocetta — Testing skill for Claude Code

Testing community

Deterministic linter for agent skills and plugins — spec, Claude Code, and Codex compliance.

How to install Avocetta

This entry records only its repository, not the path inside it, so there is no exact command to give. Open korya/avocetta and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What Avocetta does

Deterministic linter for agent skills and plugins — spec, Claude Code, and Codex compliance. CLI + GitHub Action.

Alternatives in Testing

  • Spectra App — Spec-driven development for coding agents — a desktop app, a CLI, and skills for Codex, Claude Code, Cursor, C 735 ★
  • Design QA — Visual QA on an HTML/CSS implementation — checks responsive behavior at mobile/tablet/desktop, design token co 309 ★
  • Spec Kit Zh — 💫 帮助你快速上手规格驱动开发的工具包💫 Toolkit to help you get started with Spec-Driven Development Works seamlessly across al 238 ★

README

avocetta mascot, an avocet avocetta [![CI](https://github.com/korya/avocetta/actions/workflows/ci.yml/badge.svg)](https://github.com/korya/avocetta/actions/workflows/ci.yml) [![Marketplace](https://img.shields.io/github/v/release/korya/avocetta?label=marketplace&logo=github&color=2ea44f)](https://github.com/marketplace/actions/avocetta-lint)

avocetta is a deterministic linter for [agent skills](https://agentskills.io/specification) and [agent plugins](https://agent-plugins.org/). It verifies compliance with the open specs and with what specific runtimes (Claude Code, Codex) actually enforce, so you catch incompatibilities in CI before your users do.

It is plain static analysis: it never calls a model or the network at lint time, and it works without a config file.

  • Four compliance dialects, each versioned and frozen: the agentskills.io and agent-plugins.org specs, Claude Code, and Codex
  • Auto-detection of what you point it at (a skill, a plugin, a marketplace repo) and of which dialects your layout targets
  • Union runs: lint against several runtimes at once, with guidance when their layouts seem to conflict
  • Vendor rules backed by verified runtime behavior, with sources cited in every dialect file
  • Text, JSON, SARIF, and GitHub-annotation output
  • A zero-config GitHub Action and an installation-free CLI (npx avocetta)
The avocetta picking bugs out of a pile of broken files, with a tidy plugin tree on the other bank

GitHub Action

- uses: korya/avocetta@v2

That's it. The action detects what your repo is (a skill, a plugin, a marketplace of plugins), picks the right compliance targets (the spec dialects always; Claude Code and Codex when your layout shows you target them), annotates PR diffs inline, and fails the job on errors.

Optional inputs mirror the CLI flags:

- uses: korya/avocetta@v2
  with:
    path: plug