MetaSleuth
An offline, read-only metadata inspection CLI for local images, PDFs, and Office Open XML documents. Designed for OSINT, privacy reviews, and digital forensics education.
License: Free-to-use proprietary, no modifications or redistribution without permission. Not open source.
Install for development
python -m venv .venv
# Windows PowerShell: .venv\Scripts\Activate.ps1
# Linux/macOS: source .venv/bin/activate
python -m pip install -e ".[dev]"
Usage
metasleuth inspect photo.jpg
metasleuth inspect document.pdf presentation.pptx --format json --output report.json
metasleuth inspect photo.jpg document.pdf --format csv --output report.csv
metasleuth inspect sample.docx --no-hash
pytest -q
Supported formats
- JPEG, PNG, TIFF, WebP, BMP, GIF: dimensions, format, image info, EXIF and GPS tags when available.
- PDF: page count and document information metadata (unencrypted PDFs).
- DOCX, XLSX, PPTX: core OOXML properties, including creator, title and dates where present.
- Other files: filesystem metadata and optional SHA-256 hash.
Privacy and security
All inspection runs locally, with no uploads or network calls. Results may contain names, locations, GPS coordinates, and other sensitive data; review reports before sharing. The program does not modify source files or run embedded macros. Treat untrusted or malformed files cautiously: metadata parsers may have vulnerabilities, and this tool is not a sandbox. The CLI processes explicitly named files only; it does not recursively crawl directories.
Filesystem ctime is not universally a creation time: on Unix-like systems it generally means inode change time.
Limitations
- This is a metadata extractor, not an authenticity or attribution engine.
- It does not extract every proprietary EXIF sub-IFD, all PDF XMP metadata, or metadata embedded in document attachments.
- Encrypted PDFs may require passwords and may not expose page counts.
- No external enrichment or username/person identification.
Publishing
Confirm the distribution name is available on PyPI and run python -m build before publishing. GitHub Actions CI is included; publishing is intentionally not automated until release ownership is finalized.
License
Copyright © 2026 Noir Stack LLC. Licensed under the Proprietary Software License — Free Use, No Modification.
Metadata
Release files for metasleuth-osint 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| metasleuth_osint-0.1.0.tar.gz | 6.5 kB | Without provenance | Details for metasleuth_osint-0.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| metasleuth_osint-0.1.0-py3-none-any.whl | Python 3 | none | any | Details for metasleuth_osint-0.1.0-py3-none-any.whl |
Total release size: 13.4 kB
Release files / metasleuth_osint-0.1.0.tar.gz
| Download URL | metasleuth_osint-0.1.0.tar.gz |
|---|---|
| Size | 6.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
eccec6178ed0b5cf302ca37baa8610ca80ff58e3db38e5117a5d66b4598aa797
|
|
BLAKE2b-256 checksum How to use checksums |
473ac10e20e7c83bf9bc3ff519ef51f892050872de833e4f2ea52a1b33b90abc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Release files / metasleuth_osint-0.1.0-py3-none-any.whl
| Download URL | metasleuth_osint-0.1.0-py3-none-any.whl |
|---|---|
| Size | 6.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3643e50c5aaef1ed7e62eac31eed1c518de86c31b91aed9e81e51cd4b52d6bf0
|
|
BLAKE2b-256 checksum How to use checksums |
2b39457712ed97949364f51e5e8b719d1588d91c4ab7e5363a79c89373e28413
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Security for metasleuth-osint 0.1.0
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.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.