Developer Tooling
Security check
Run deterministic AXSEC analysis locally, in CI, and before a release.
Run the same compiler analysis locally and in CI:
axiom security check axiom.acore
axiom security check axiom.acore --json > security-report.json
axiom build axiom.acoresecurity check does not write an artifact. It renders the manifest shape a build will embed: mode, findings, coverage, graph, source evidence, and canonical hash. --json is suitable for CI annotations.
Exit behavior
- No
securityblock exits successfully and explains that Security Mode is not enabled. auditexits successfully after reporting findings, including errors that would block strict mode. This makes baseline adoption safe.strictexits non-zero on error findings.axiom builduses the same rule.--fail-on-warninglets CI make audit warnings non-zero once a team agrees on its baseline.- Invalid Acore or invalid policy references always exit non-zero.
Recommended rollout
- Run a Go or Python extractor and review its advisory facts.
- Add
security { mode = "audit" }, explicit public routes, and policies. - Classify sensitive fields and add response projections.
- Declare network, upload, path, process, cache, CORS, and logging controls only for boundaries the service actually owns.
- Review each security change in a native contract PR.
- Move to
strictafter a trusted server adapter enforces the declarations.
Security checks do not read secret values. Put policy-safe identifiers such as origins and issuers in Acore, and keep credentials in deployment secrets.