Askl banner
korya korya

Askl

Testing community

Description

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

Installation

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

README

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

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

No LLM, no network at lint time, no configuration required.

GitHub Action

- uses: korya/askl@v0

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/askl@v0
  with:
    path: plugins/my-plugin
    dialect: spec,claude,codex   # pin targets explicitly
    strict: "true"               # warnings fail the job
    pedantic: "true"             # opinion-tier checks

CLI

$ npx @korya/askl
askl · dialects: agentskills@1.0.0, agent-plugins@1.0.0, claude-code@2026-09

skills/examine/SKILL.md
  ✖ [agentskills@1.0.0, claude-code@2026-09] skill/frontmatter-schema  frontmatter is not valid YAML: Nested mappings are not allowed in compact mappings (3:14)

1 error · 0 warnings

Options

The CLI flags and the Action inputs share names and meaning:

Option What it does
--dialect Which compliance targets to lint against: spec, agentskills, agent-plugins, claude, codex, all, or a pinned name@version (comma-separated). Selecting several means your files must satisfy each of them. Default: the spec dialects, plus Claude Code / Codex a