Skip to main content

aicheck-scan

selftest PyPI GitHub Marketplace License: MIT

Fail the build if coding-agent credential files land in git.

aicheck agents --ci walks the checkout, an optional Docker context, and the runner home. Checkout / context / artifacts fail on presence. Home fails only if a file is world-readable (Claude Code on the runner is otherwise ok). No network. The path list is unauth.dev/loot (102 GET paths, one session, 10 August 2026).

The documented command is aicheck-scan; the package also installs aicheck as a short alias.

Add to CI (60 seconds)

Copy examples/agents-ci.yml to .github/workflows/agents.yml, or:

name: agent-creds
on:
  pull_request:
  push:
    branches: [main]
jobs:
  agents:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: unauthdev/aicheck-scan@v2

Pin @v2 for the floating major, or @v2.0.0 for an exact release. Same gate also lives at uses: unauthdev/aicheck-scan/agents@v2 (older snippets). Optional inputs: context (Docker build context), artifacts, fail-home. Maintainer notes: docs/marketplace.md.

pip install aicheck-scan
aicheck agents --ci
aicheck agents --home "$HOME"          # laptop inventory; does not fail CI
aicheck agents --ci --context .        # also walk a Docker context

Exit 1 if a listed file is in the tree you asked it to fail on. JSON: aicheck agents --ci --format json.

What it looks for

Relative paths from loot list v1, coding-agent families only:

.claude/.credentials.json, .claude.json, .claude/settings.json, .codex/auth.json, .qwen/oauth_creds.json, .qwen/settings.json, .qwen/.env, .kimi-code/credentials/kimi-code.json, .kimi-code/config.toml, .grok/auth.json, .hermes/auth.json, .config/opencode/opencode.json, .local/share/opencode/auth.json.

A random .env is not a hit. .qwen/.env is. Cite: unauth.dev loot list v1 — observed 2026-08-10 · CC-BY 4.0.

The hosted scanner at unauth.dev names the door (open n8n, Ollama, …). It never fetches these files on a host you submit.

Live-probe leftover

v2 moved live-probe off the root Action. @v1 is frozen (still live-probe, stuck on 1.2.2). New installs that still want a host probe:

- uses: unauthdev/aicheck-scan/scan@v2
  with:
    target: localhost
    fail-grade: F

CLI equivalent: aicheck-scan example.com / aicheck scan localhost --allow-private. Probe contract: docs/PROBES.md. Fix cards: unauth.dev/fixes.

Inventory

Local continuous sweep of hosts you own. Nothing phones home.

aicheck inventory --targets targets.yaml --state-dir ./state --allow-private --i-own-these-targets

Target examples under examples/. Schema: docs/schemas/inventory-report-v1.md.

Docker: docker run ghcr.io/unauthdev/aicheck:v2 … (1.3.0+ includes aicheck agents).

Trust

  • aicheck agents dials nothing.
  • Live-probe traffic is read-only GETs to the host you name. No logins, no POSTs, no exploit verification.
  • Optional weekly PyPI version check is opt-in (--version-check / AICHECK_VERSION_CHECK=1).
  • --dry-run prints every request and opens no sockets.

Full page: docs/trust.md. Security reports: SECURITY.md.

License

MIT. Dataset on unauth.dev/loot is CC-BY 4.0. Advisory catalog: advisories.yaml / unauth.dev/advisories.

Metadata

Release files for aicheck-scan 2.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for aicheck-scan 2.0.0
File Size Uploaded
aicheck_scan-2.0.0.tar.gz 90.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for aicheck-scan 2.0.0
File Interpreter ABI Platform
aicheck_scan-2.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 212.1 kB

Release files / aicheck_scan-2.0.0.tar.gz

Download URL aicheck_scan-2.0.0.tar.gz
Size 90.1 kB
Tags Source
SHA-256 checksum
How to use checksums
e1f59f945f341ae28c1b08423be6ab15594cd088bfb9846c484f1b3520fb93ac
BLAKE2b-256 checksum
How to use checksums
b87a70233f0ef4ecae2ad2a96773bf69be33f536329dfbe4cd6fb96a81420628
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 12, 2026.

Transparency log

Release files / aicheck_scan-2.0.0-py3-none-any.whl

Download URL aicheck_scan-2.0.0-py3-none-any.whl
Size 122.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
74b589cdeb6d8bb4db224e0e5e46290516d53aafeb484d07497796ac29e69746
BLAKE2b-256 checksum
How to use checksums
bf6489cde18ba85bfc24f18564322e5eb0e385f9423e6b5206be95bfdb1bf310
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 12, 2026.

Transparency log

Release history Release notifications | RSS feed

2.0.1

2 release files

This release

2.0.0 This release

2 release files

1.3.0

2 release files

1.2.5

2 release files

1.2.4

2 release files

1.2.3

2 release files

1.2.2

2 release files

1.2.1

2 release files

1.2.0

2 release files

1.1.6

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page