@truthlock/protect
v0.1.6
Published
Truthlock content protection CLI — protect code, research, designs, and digital content with cryptographic proofs
Maintainers
Readme
Protect code, research, designs, and digital content with cryptographic proofs of authorship. @truthlock/protect creates tamper-evident attestations for any file or directory, providing verifiable proof of creation and ownership backed by the Truthlocks trust infrastructure.
Installation
npm install -g @truthlock/protectOr run directly without installing:
npx @truthlock/protect protect ./srcQuick Start
# Authenticate with your Truthlocks account
truthlock-protect login --token YOUR_TOKEN
# Protect a single file
truthlock-protect protect ./main.ts
# Protect an entire project
truthlock-protect protect ./src --category code
# List your protected content
truthlock-protect list
# Verify a protection
truthlock-protect verify att_abc123...Commands
| Command | Description |
| ----------------------- | ---------------------------------------------------- |
| login --token <token> | Authenticate with your Truthlocks API token |
| logout | Remove stored credentials from this machine |
| whoami | Display the current authenticated user |
| protect <path> | Create a cryptographic proof for a file or directory |
| list | List all your protected content with attestation IDs |
| verify <id> | Verify a protection by its attestation ID |
Content Categories
Organize your protections by content type:
| Category | Use Case |
| ----------- | ------------------------------------------ |
| code | Source code, scripts, configuration |
| research | Academic papers, datasets, lab notes |
| design | UI mockups, CAD files, design assets |
| media | Photos, videos, audio recordings |
| document | Reports, contracts, legal documents |
| ai-output | AI-generated content (provenance tracking) |
| other | Anything else |
truthlock-protect protect ./paper.pdf --category research
truthlock-protect protect ./assets/ --category design
truthlock-protect protect ./generated/ --category ai-outputCI/CD Integration
GitHub Actions
name: Protect Source Code
on:
push:
branches: [main]
jobs:
protect:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Protect source code
run: npx @truthlock/protect protect ./src --category code
env:
TRUTHLOCK_TOKEN: ${{ secrets.TRUTHLOCK_TOKEN }}GitLab CI
protect:
stage: deploy
script:
- npx @truthlock/protect protect ./src --category code
variables:
TRUTHLOCK_TOKEN: $TRUTHLOCK_TOKENHow It Works
- Hash -- Content is hashed locally using SHA-256 (your files never leave your machine)
- Attest -- The hash is submitted to the Truthlocks trust registry
- Anchor -- An immutable attestation is created with a timestamp and your identity
- Verify -- Anyone can verify the attestation to confirm authorship and integrity
Use Cases
- Developers -- Prove when code was written and by whom
- Researchers -- Establish priority for discoveries and datasets
- Designers -- Protect original creative work before sharing
- Legal teams -- Create tamper-evident records of documents
- AI practitioners -- Track provenance of AI-generated content
Requirements
- Node.js >= 18.0.0
- A Truthlocks account and API token
Documentation
License
MIT -- see LICENSE for details.
