Skip to main content

Modular watermark protocol for authorship and remix lineage

Project description

📝 EmbedID README Manifesto — Maverick Edition

License: MIT
Build: Passing
GitHub

Watermark protocol for authorship, remix lineage, and builder sovereignty.
Modular. Hackable. Unlicensed.


📦 Install

Install via pip:

pip install embedid

Or for local development:

pip install -e .

⚙️ Protocol Logic

EmbedID isn’t a library. It’s a protocol.

It encodes authorship into your files—source, manifest, or remix—using tamper-resistant watermarks.

No central registry. No hidden handshake. Just raw identity, embedded.


🧬 Remix Rules

This edition is free to fork, override, and mutate.

  • Rewrite the CLI.
  • Swap the manifest logic.
  • Add your own signature scheme.
  • Strip it down or layer it up.

Remixers aren’t users. They’re sovereign builders.
Declare your lineage or burn it. Your call.


🪪 Sovereignty Manifest

EmbedID respects authorship. It doesn’t enforce it.

You choose what to watermark.
You choose how to verify.
You choose when to declare lineage.

The protocol is modular because sovereignty demands override.


🧨 Usage

Add watermark

embedid add path/to/file.py --author "James The Giblet"

Verify watermark

embedid verify path/to/file.py

📖 Full CLI Reference

embedid add

Usage:
embedid add <path> [--author <name>] [--timestamp <ISO>] [--manifest <file>]

Options:

  • --author specify the author string
  • --timestamp override auto-timestamp
  • --manifest output JSON manifest to a file

embedid verify

Usage:
embedid verify <path> [--manifest <file>]

Options:

  • --manifest read manifest from external JSON

embedid inspect

Usage:
embedid inspect <path>

Description:
Prints parsed manifest fields (author, date, hash, signature).

embedid remove

Usage:
embedid remove <path>

Description:
Strips watermark and manifest data from the file.

embedid test

Usage:
embedid test

Description:
Runs the built-in self-test suite for all CLI surfaces.


📄 Manifest Schema

The JSON schema lets you parse or diff manifests programmatically:

{
  "type": "object",
  "properties": {
    "author":    { "type": "string" },
    "timestamp": { "type": "string", "format": "date-time" },
    "hash":      { "type": "string" },
    "signature": { "type": "string" }
  },
  "required": ["author", "timestamp", "hash", "signature"]
}

You can embed this inline in your file or as a separate .manifest.json.
Schema versions let you evolve without breaking older badges.


🚀 Example Workflows

  1. Fork the repo
  2. Write hello_embedid.py
  3. Watermark it
  4. Verify locally
  5. Push to GitHub and see CI reject on failed verify
git clone https://github.com/james-the-giblet/embedid.git
cd embedid
echo 'print("hi")' > hello.py
embedid add hello.py --author "Alice"
embedid verify hello.py

❓ Troubleshooting & FAQ

  • Q: Why did verify fail on CRLF files?
    A: Normalize line endings or use --manifest to bypass inline checks.

  • Q: How do I rotate keys?
    A: Swap out ~/.embedid/keys.json then run embedid test.

  • Q: How to output manifest externally?
    A: Use --manifest path/to/out.json on the add or verify commands.


🌐 Community & Governance

Join the discussion:

  • Discord/Matrix channel (link coming soon)
  • Propose protocol changes via GitHub Issues
  • Follow the Code of Conduct in CODE_OF_CONDUCT.md
  • Check the full roadmap in ROADMAP.md

📜 Changelog & Releases

Maintain history in CHANGELOG.md. Example entry:

## [0.1.0] – 2025-08-16
### Added
- Basic add/verify/inspect/remove/test
- JSON manifest schema v1.0.0

### Fixed
- Timestamp formatting bug on Windows PowerShell

See GitHub Releases for prebuilt wheels and source archives.


🔮 Roadmap

  • Signature verification (v0.2.0)
  • Remix registry (v0.3.0)
  • AI agent deployment (v0.4.0)
  • Paid tiers for advanced watermarking (v1.0.0+)

Built by James ‘The Giblet’ Mavric.
Protocol architect. Brand strategist.
Unlicensed by design.

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

embedid-0.1.0.tar.gz (8.9 kB view details)

Uploaded Source

Built Distribution

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

embedid-0.1.0-py3-none-any.whl (7.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: embedid-0.1.0.tar.gz
  • Upload date:
  • Size: 8.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for embedid-0.1.0.tar.gz
Algorithm Hash digest
SHA256 791b1ba042222d331195d14a22fe5e1ae87e83830a7577dcde303111e0d3c5eb
MD5 37cb053f96c25d0bdcfb8f73b88caf4c
BLAKE2b-256 bed6d513e8069fbd06f072506c5cbacb8790b9f29c3828b8d43b7230a91575a6

See more details on using hashes here.

File details

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

File metadata

  • Download URL: embedid-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 7.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for embedid-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6a0a88fec146dd390c976098c5cc53dae26bf1eb37105fb0a17550b258624e95
MD5 7e1e95b08670fd416d4d9397d297462f
BLAKE2b-256 d1c49f16c2c323c24c6c5ea1ee53e8680a8f234fe983afbe7d2f8685f0be0106

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