Skip to content

Add cfgaudit → AVE crosswalk (static config-auditor)#67

Merged
chaksaray merged 4 commits into
aveproject:developfrom
predictor2718:crosswalk/cfgaudit
Jul 23, 2026
Merged

Add cfgaudit → AVE crosswalk (static config-auditor)#67
chaksaray merged 4 commits into
aveproject:developfrom
predictor2718:crosswalk/cfgaudit

Conversation

@predictor2718

Copy link
Copy Markdown
Contributor

This adds a crosswalk from cfgaudit, a static auditor of committable AI-agent configuration files (Claude Code, Cursor, Copilot, Gemini, Codex, Devin, Zed, Continue), to AVE. It follows the crosswalks/ convention (.json + .md, alongside skillspector and clawscan).

Versions: cfgaudit 1.9.0, AVE record set 1.1.0, Bawbel Scanner 1.3.0 (used in the validation below).

A different tool class from the two existing reference implementations. SkillSpector and clawscan are skill/MCP behavioral scanners. cfgaudit is a static config-surface auditor, so it exercises the taxonomy across a layer the other two do not touch. It emits each rule's primary ave_id in JSON and SARIF (per your ave-in-sarif.md: the tool's own id stays the SARIF ruleId, ave_id rides in properties).

Coverage. cfgaudit has 90 rules; 33 of them map onto 19 AVE behavioral classes (many-to-one, since cfgaudit slices threats by config surface where AVE slices by behavior). The other 57 rules check config-file classes AVE's skill and MCP-server records do not enumerate (permission/approval config, zero-click IDE auto-run, telemetry redirect, sandbox-config weakening, TLS-verification-disabled, container posture, MCP network posture, supply-chain pinning). The crosswalk lists these so the taxonomy's coverage against a config-auditor is visible.

Cross-implementation validation. cfgaudit and Bawbel Scanner 1.3.0, which share no code and no ruleset and only the AVE taxonomy, were run on the same SKILL.md files using cfgaudit's canonical trigger text unmodified (static engines only, no LLM). Of the 10 instruction-content rules that share a scan surface with Bawbel's file scan, both scanners independently emit the same ave_id on 5. The 5 divergences are detection-pattern differences, not mapping errors (Bawbel bundles a rule for each class; its pattern just did not match the same trigger). This is direct evidence the shared id interoperates across implementations.

chaksaray and others added 4 commits July 19, 2026 11:36
…veproject#64)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: sonvisal <sonvisal10@gmail.com>
Co-authored-by: Macbook <macbook@192.168.1.30>
cfgaudit (github.com/cfgaudit/cfgaudit) is a static auditor of committable
AI-agent configuration files. It has 90 rules; 33 map onto 19 AVE behavioral
classes (many-to-one, since cfgaudit slices threats by config surface where AVE
slices by behavior). It emits each rule's primary AVE id in JSON and SARIF.

The crosswalk also lists the config-file classes cfgaudit audits that carry no
AVE class today (permission config, zero-click IDE auto-run, telemetry redirect,
sandbox config, TLS-verification, container posture, MCP network posture,
supply-chain pinning), so the taxonomy's coverage against a config-auditor is
visible.

Includes a cross-implementation validation: cfgaudit 1.9.0 and Bawbel Scanner
1.3.0, which share no code or ruleset and only the AVE taxonomy, run on the same
SKILL.md files agree on the ave_id for 5 of the 10 shared-surface rules, with
the divergences shown to be detection-pattern differences rather than mapping
errors.

Versions: cfgaudit 1.9.0, AVE 1.1.0, Bawbel Scanner 1.3.0.
@chaksaray

Copy link
Copy Markdown
Contributor

Tracking issue for the taxonomy gap list opened: #68

@chaksaray
chaksaray changed the base branch from main to develop July 23, 2026 14:33
@chaksaray
chaksaray changed the base branch from develop to main July 23, 2026 14:37
@chaksaray
chaksaray changed the base branch from main to develop July 23, 2026 15:10
@chaksaray
chaksaray merged commit 334bb96 into aveproject:develop Jul 23, 2026
6 checks passed
chaksaray added a commit that referenced this pull request Jul 23, 2026
Co-authored-by: Nicolai <245527909+predictor2718@users.noreply.github.com>
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.

2 participants