Skip to content

v1.0.0 — first stable release

Choose a tag to compare

@SimaAlexandru99 SimaAlexandru99 released this 30 Aug 17:10
· 38 commits to master since this release
d64393e

First stable release. 59 checks, 345 tests. Offline on check. The coverage matrix in the README is the honesty contract: full only where discovery, spec-required fields, and a conformance fixture (or equivalent tests) all exist.

Install

npx @chimix/agentscan@latest
npx skills add SimaAlexandru99/agentscan

GitHub Action:

- uses: SimaAlexandru99/agentscan@v1
  with:
    fail-on: error

Skill: https://skills.sh/simaalexandru99/agentscan/agentscan

Added

  • Portable Agent Skills required fields (name, description, directory match) for .agents/skills, nested Cursor .cursor/skills, and .codex/skills.
  • Path-keyed MCP parsers: VS Code servers, Cursor, Antigravity serverUrl, Codex TOML, Gemini command / url / httpUrl, OpenCode V1 and V2, Continue config.yaml plus .continue/mcpServers/*.
  • Nested / walk-up AGENTS.md with nearest-wins; Codex instruction budget uses the effective per-directory file and project_doc_max_bytes.
  • Walk-up .claude/agents; VS Code .github/agents without Claude missing-name errors.
  • VS Code .github/hooks/*.json (eight events) and per-provider hook event sets.
  • Cursor .cursor/rules/**/*.mdc 500-line recommendation (cursor.rule.too-large, info). Claude rules are inventoried only.
  • Official-shaped fixtures under tests/fixtures/conformance/.
  • spec:check tracks 21 captured surfaces, not only Claude hook events.
  • Launch cwd and windows / linux / osx overrides on hooks and MCP.
  • GitHub Action pin @v1.

Changed

  • Product copy describes what 1.0.0 actually implements. Heuristics stay at info and are labeled in the registry.
  • --global also scans ~/.codex/skills under the Agent Skills contract.
  • In a monorepo, each skills-lock.json governs only the skills under its directory (nearest lock wins).

Fixed

  • Nested SKILL.md trees are one skill, not a missing-md folder.
  • Codex instruction chain: at most one file per directory; honour project_doc_max_bytes.
  • Interpreter argv (node script.js), MCP command arrays, and OS overrides are path-checked. -- inline code (node -e) is not a path.
  • JSONC (comments and trailing commas) parses via jsonc-parser; the published bundle imports the ESM entry so Node can load dist/cli.js.
  • Scan boundary stays at Git/workspace. A child .cursor does not hide parent Claude or Codex.
  • uses: is a launch only on Continue. Other profiles treat a uses-only entry as non-launchable.
  • OpenCode V2 requires type plus the matching launch field. V1 enabled-only overrides that inherit externally do not emit a hard error.
  • Windows drive / UNC cwd values and OS-specific script paths (scripts\format.ps1) are not joined as POSIX relative paths when the scanner runs on Linux or macOS.
  • Old 0.7 rule ids still work in ignoreRules and explain.

0.9.0 was planned as a separate train and shipped inside this release.