Skip to main content

Local-first tool that stores documents as chunks and manages them with manifests

Project description

gnos

gnos is a local-first tool that stores documents as chunks and manages them with 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

  • 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.2.tar.gz (34.4 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.2-py3-none-any.whl (26.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: gnos-0.0.2.tar.gz
  • Upload date:
  • Size: 34.4 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.2.tar.gz
Algorithm Hash digest
SHA256 ebc500b0fe7983adc7a1b4d2a3513883272c5403fb11b5c979bb3be745c89922
MD5 6d87516bcf6ef005fbe30823fe7acc32
BLAKE2b-256 dc03875f267ceb95d3ac8a80df505d55b8c7ea6a3f1e81e13daae30098d19fb1

See more details on using hashes here.

Provenance

The following attestation bundles were made for gnos-0.0.2.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.2-py3-none-any.whl.

File metadata

  • Download URL: gnos-0.0.2-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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 a2223fa8c0e61310b5fcd270d4014ab92cd9de7d96af05ab609335686879cd09
MD5 b3bf2ee2c31da83abedefe696911ee2e
BLAKE2b-256 5369015651c6c0704c94fa4e134af6b055cc0fbceda57e70e0b2ac78910c0573

See more details on using hashes here.

Provenance

The following attestation bundles were made for gnos-0.0.2-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