github agent-sh/agnix v0.42.0

4 hours ago

Added

  • OC-DEP-007: Deprecated Reference Field. The published OpenCode schema marks the top-level reference key as @deprecated Use 'references' field instead; the new rule warns and offers a safe autofix rename. Rule count increased from 443 to 444.

Fixed

  • JetBrains SKILL.md highlighting. Register SKILL.md with the bundled Markdown language and declare the Markdown plugin dependency, restoring syntax highlighting and Markdown editor features in supported JetBrains IDEs.
  • Codex 0.146 config compatibility. Accept shell_environment_policy.filters, validate its include/exclude actions and legacy-list conflicts, recognize the four new feature flags, validate structured features.non_prefixed_mcp_tool_names, and refresh the managed requirements.toml allowlist without the removed allowed_permissions key.
  • Codex Agent Plugins compatibility. Recognize schema-discriminated Agent Plugins 1.0 root plugin.json manifests, validate required metadata types, inspect Codex apps, hooks, and interface fields under extensions.com.openai, accept all supported hooks forms, stop after unsupported schemas, and avoid Claude plugin location false positives.
  • OpenCode MCP environment validation. Validate local server environment maps as string-to-string objects and reject the unsupported env spelling that OpenCode ignores.
  • Cursor workspaceOpen hooks. Recognize the documented hook event without a CUR-011 unknown-event warning.
  • Rule-count bookkeeping now covers every file CI validates. scripts/check-rule-counts.py enforced the rule total in 13 locations that scripts/sync-rule-bookkeeping.js never wrote — the six editor/website docs, the per-category tables in knowledge-base/INDEX.md and knowledge-base/VALIDATION-RULES.md, and the SPEC.md table — so every rule addition failed the "Rule count table check" step until someone hand-patched the numbers. The checker gained a --fix mode (it already owns the category-to-label maps, so duplicating them in the sync script would have guaranteed drift) and the sync script now invokes it. The Auto-Fix column is also validated for the first time, which surfaced pre-existing drift: Claude Skills read 13 against 11 autofixable rules.
  • Deprecated-key autofix no longer produces a duplicate key. OC-DEP-001/002/003 (and the new OC-DEP-007) offered a rename fix unconditionally, so running --fix-safe on a config that already contained the replacement key emitted both: {"mode": "agent", "agent": {}} became {"agent": "agent", "agent": {}}. The rename is now only offered when the replacement key is absent; when both keys are present the diagnostic still fires but carries no fix, since merging the two values is a judgment call about which one wins.
  • OC-004/OC-CFG-003 false positives on five current OpenCode config keys. attachment, reference, references, shell, and tool_output are all present in the published https://opencode.ai/config.json schema but were missing from agnix's known-key allowlist, so each one produced a pair of spurious "unknown config key" warnings on a perfectly valid opencode.json. Found by diffing the allowlist against the live schema rather than reading release notes — the notes for v1.18.6/v1.18.7 are desktop-UX only and mention none of these keys.

Changed

  • Tool release baselines (2026-07-30 sweep). Advanced Codex CLI to rust-v0.146.0, OpenCode to v1.18.10, Cursor to 3.13.25, Kiro CLI to 2.15.0, Cline to v4.0.12, Gemini CLI to v0.53.0, and amp to amp-labs-westpac after reviewing the validated surfaces (closes #1267 through #1273).
  • OpenCode release baseline advanced to v1.18.7. v1.18.6 and v1.18.7 contain no changes to a validated config surface (repository cache fix, client-API compatibility, macOS titlebar inset, command palette, project-selector scrolling).

Don't miss a new agnix release

NewReleases is sending notifications on new releases.