Skip to main content

Local-first verifier for content-addressed documents

Project description

gnos

gnos is a local-first tool for managing document chunks as manifests. Add files, attest reproducibility, and materialize documents back to disk.

Quick start

gnos init

gnos add README.md

gnos materialize doc <doc_id> --output README.out.md

What you can do

  • Add files and store their chunks locally.
  • Generate doc-manifests that describe how to reconstruct the original bytes.
  • Attest that a manifest can reproduce the original document.
  • Materialize documents back to disk when you need them.
  • Bring your own chunkers for custom strategies.

Why use gnos?

  • Verifiable manifests. A stable schema that actually reconstructs the original bytes.
  • Local chunk store. Chunks are content-addressed and live on your machine.
  • Rebuild anytime. Materialize documents back to disk from manifests + chunks.
  • Derive safely. Create alternate chunk views without changing identity.

Compared to typical chunking tools, gnos gives you a concrete manifest format and a local store you can trust.

Common workflows

Add a file

gnos add notes.md

Add a directory as a collection

gnos add --collection docs/

Verify a manifest directly

gnos attest manifest <manifest_hash>

Shallow integrity check (hash-only)

gnos attest manifest <manifest_hash> --shallow

Derive a non-identity manifest

gnos derive <doc_manifest_hash> --chunking <method>

Materialize a collection

gnos materialize collection <collection_id> --dir ./out

Commands (v1)

  • gnos init
  • gnos add <path>
  • gnos add --collection <path>
  • gnos attest manifest <manifest_hash> [--doc-id H] [--shallow]
  • gnos attest file <path> --doc-id H
  • gnos attest doc <doc_id>
  • gnos derive <manifest_hash> --chunking <method>
  • gnos materialize doc <doc_id> --output <path>
  • gnos materialize collection <collection_id> --dir <path>
  • gnos status [--doc <doc_id>]
  • gnos chunker list [--verbose]
  • gnos inspect <hash>
  • gnos list --objects|--documents|--document-manifests|--collection-manifests|--derived-manifests
  • gnos --version

How it works (short)

  • Documents are raw bytes. The document hash is the identity.
  • Chunks are stored by hash. Manifests describe how to reconstruct bytes.
  • Attestation verifies integrity and, when applicable, reconstruction.

Learn more

  • docs/index.md (overview of all docs)
  • docs/spec.md (v1 spec)
  • docs/cli.md (CLI behavior)
  • docs/manifest.md (manifest schemas)
  • docs/chunking.md (chunker rules)
  • docs/plugins.md (custom chunkers)

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

gnos-0.0.1.tar.gz (34.3 kB view details)

Uploaded Source

Built Distribution

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

gnos-0.0.1-py3-none-any.whl (26.0 kB view details)

Uploaded Python 3

File details

Details for the file gnos-0.0.1.tar.gz.

File metadata

  • Download URL: gnos-0.0.1.tar.gz
  • Upload date:
  • Size: 34.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for gnos-0.0.1.tar.gz
Algorithm Hash digest
SHA256 7c2cb22b10a187a970cdf9a4cd14b62d8488a7f30116f5171bc655ca6c5614f9
MD5 c5234c22db48618645d1a53c40f27643
BLAKE2b-256 fd1f641f17cb630a0a502b1864592e3c94a47f0c1e03b4169d0d531f515a47a6

See more details on using hashes here.

Provenance

The following attestation bundles were made for gnos-0.0.1.tar.gz:

Publisher: publish.yml on janthmueller/gnos

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gnos-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: gnos-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 26.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for gnos-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 7b7ec35af95850c34badc9e8f2fd9d4cc910705e4533fced40acabc1778570ac
MD5 7cb429c6cfd22a3596001fdd8b98a743
BLAKE2b-256 380ed4246da01fd86bb1ece9d860b2157a3919d25d54f25ea1bc5838562bb206

See more details on using hashes here.

Provenance

The following attestation bundles were made for gnos-0.0.1-py3-none-any.whl:

Publisher: publish.yml on janthmueller/gnos

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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