Skip to main content

A small, safe-by-default toolkit for scraping, OSINT, and file triage.

Project description

reconkit (Judicium surface)

reconkit is a conservative, safe-by-default toolkit that exposes a Noir Stack / Hexarch / Judicium-flavored public API.

It is designed to produce audit-grade structured outputs that explicitly state:

  • what was observed (evidence)
  • how it was observed (provenance)
  • what is and is not being asserted (verification limits)

This project is intended for lawful use on systems/data you own or have permission to assess.

Noir Stack primitives

Public primitives:

  • EvidenceArtifact: immutable bytes + provenance
  • EvidenceBundle: a set of artifacts for joint assessment
  • ProvenanceRecord: acquisition/derivation metadata + trust boundary
  • VerificationResult: structured decision output

All structured outputs include:

  • decision_basis
  • verification_status
  • provenance_confidence

Because this is Judicium, not divination.

Guarantees

What the system will reliably do:

  • Preserve evidence payload bytes as acquired/derived, and compute stable SHA-256 for artifacts.
  • Emit structured, JSON-serializable outputs suitable for logging and later review.
  • Respect declared acquisition constraints (e.g., max_bytes) and treat them as policy boundaries.
  • Respect robots.txt by default for web acquisition.

Assumptions

What the system assumes unless you override it:

  • trust_boundary is declared explicitly for acquisitions. The tool will not invent one.
  • Web acquisition is transport-level observation, not identity/authenticity proof.
  • Public-internet boundary data (DNS/WHOIS/RDAP) is administrative metadata.

Non-goals

What the system explicitly does not do:

  • No anti-bot bypassing, fingerprint evasion, proxy-rotation orchestration, or credentialed scraping.
  • No claims of attribution, intent, or identity. (You can do that in your report; the tool will not do it for you.)
  • No “automatic truth.” The system is already busy being correct.

Install

python -m pip install -e ".[dev]"

CLI quickstart (Noir terminology)

All commands emit audit-grade JSON.

# Evidence acquisition / derivation
reconkit evidence acquire-web "https://example.com" --trust-boundary public-internet
reconkit evidence derive-links "https://example.com"
reconkit evidence derive-text "https://example.com"

# Boundary observations (OSINT-ish, but we say the quiet part out loud)
reconkit boundary dns example.com
reconkit boundary whois example.com
reconkit boundary ip 8.8.8.8

# Verification (informational)
reconkit verify file-hash .\somefile.bin --algo sha256
reconkit verify file-type .\somefile.bin
reconkit verify strings .\somefile.bin --min-len 6
reconkit verify exif .\photo.jpg

Notes

  • If acquisition is blocked by robots.txt, that is not a “bug.” It is a boundary condition.
  • If you need features that reduce accountability, you are in the wrong repository. Convenient.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

reconkit-0.1.0.tar.gz (12.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

reconkit-0.1.0-py3-none-any.whl (17.9 kB view details)

Uploaded Python 3

File details

Details for the file reconkit-0.1.0.tar.gz.

File metadata

  • Download URL: reconkit-0.1.0.tar.gz
  • Upload date:
  • Size: 12.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for reconkit-0.1.0.tar.gz
Algorithm Hash digest
SHA256 0f3d635c0622ecd2a29cdada1fc8eb28b744181f2c6138e05b378bf010782118
MD5 95b818f82c936788c0b13d6c32578b3a
BLAKE2b-256 3fb8b6e09f0e57e98615a3e6471b674e0907f48a741a64a404d242e9b6a36656

See more details on using hashes here.

File details

Details for the file reconkit-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: reconkit-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 17.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for reconkit-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7f3b227fe9fd59c5621f6284b75e4b5baba050be17155dbca23a7e568d73bae2
MD5 dabd97020b940468ebe24314a4c51397
BLAKE2b-256 8d11ebc491d4d42776976e22deb73b423fa7df2eb0e1520414bfb13d0d486645

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page