Machine-native visual information.
A platform for encoding structured data into a visual writing system built for deterministic machine reconstruction.
Swedish etymology: dold (hidden / concealed) + skrift (writing / script)
→ “hidden writing” / “concealed script” · Maskinskriven betydelse — inte hemlighet.
Machine-written meaning — not secrecy. Hidden ≠ encrypted.
Open and Neural are not encryption. Visual illegibility and learned grammars are not confidentiality. Protected is AEAD + Gate authorization when it ships — glyphs encode ciphertext. Today: refuse stubs only. Until then: encrypt with established cryptography first, then optionally represent the result with Open-mode Doldskrift.
Doldskrift is an independent open-source platform for machine-native visual information: protocol, glyphs, recognition, Lab CLI, demos, and documentation — one architecture with three profiles.
It is designed for agents, tooling, and research workflows that need a stable visual carrier: encode structured information, render it as machine glyphs, transmit or display the artifact, then reconstruct the original bytes with deterministic fidelity (Open) or a declared reader path (Neural).
dold guide # in-CLI onboarding
dold about # etymology + profiles
dold museum # protocol archaeologyHumans and machines do not share the same reading stack. Doldskrift treats the visual plane as a first-class information channel for machines: geometry, protocol framing, and reconstruction — not Latin text decoration, and not a substitute for cryptography.
The official logo is glyph DSK_PROJECT_MARK (U+E1F0) — a real machine glyph, not ornament.
DOLDSKRIFT
┌──────────────────────────────────────┐
│ Semantic Layer │ structured machine information
├──────────────────────────────────────┤
│ Protocol Layer │ frames, streams, schemas, sessions
├──────────────────────────────────────┤
│ Visual Layer │ glyphs, alphabets, rendering
├──────────────────────────────────────┤
│ Recognition Layer │ detection, vision, reconstruction
└──────────────────────────────────────┘
| Name | Role |
|---|---|
| DSK | Protocol (DSK/1 stable, DSK/2 experimental, DSK/3 Neural + Protected) |
| LSG | Latent Structure Grammar (Neural intermediate) |
| DSK-R | Neural readers (DeterministicBaseline / Mock today) |
| Gate | Authorized runtime for Protected objects |
| MGE | Machine Glyph Engine |
| DVE | Doldskrift Vision Engine |
| Forge | Alphabet / glyph optimization |
| Lens | Flagship visual demonstration |
| Lab | Developer tooling (dold) |
| Profile | What it is | Shipping status |
|---|---|---|
| Open | Deterministic codec + glyphs (DSK/1–2). Visual concealment, not secrecy. | Yes (prototype) |
| Neural | Learned LSG + compatible reader (DSK/3). Fail closed on unknown grammar. Not encryption. | Foundation stubs + DeterministicBaseline |
| Protected | AEAD ciphertext + Gate authorization. Glyphs encode ciphertext. | Refuse stubs only — no AEAD yet |
DATA → DSK → MGE → VISUAL MEDIUM → DVE → DSK → DATA
| Reader | Experience |
|---|---|
| Humans | Structured abstract marks — geometry, not Latin |
| Agents | Deterministic decode: symbols → bytes → original data |
Input:
Deploy worker seven.
Decode recovers the exact original string.
Modes:
cargo install doldskrift-cli
dold doctorLibrary (Cargo.toml):
[dependencies]
doldskrift = "0.5"Related crates: doldskrift, doldskrift-font, doldskrift-vision, doldskrift-cli, doldskrift-bindings.
API docs: docs.rs/doldskrift.
git clone https://github.com/theworker02/doldskrift.git
cd doldskrift
cargo install --path crates/doldskrift-cli
dold doctorMSRV: Rust 1.75+.
dold guide # product orientation
dold doctor # install health + constants sync
dold self-test # encode/decode/validate + protected refuse
dold demo -o ./dold-demo # .dsk + postcard + mark pack
dold commands # curated catalog (alias: topics)
dold version --verbose
echo "Hello from Doldskrift" | dold encode > message.dsk # alias: dold e
dold pipeline --text "Hello from Doldskrift" -o message.dsk
dold validate message.dsk
dold inspect --json message.dsk
dold decode message.dsk # alias: dold d
dold convert --from text --to postcard --text "Deploy worker seven." -o card.svg
dold convert --from postcard --to dsk -i card.svg -o card.dsk
dold logo --out assets/brand/logo-mark.svg
dold config init
# Shell completions (optional)
dold completion powershell > _dold.ps1
# Agent-friendly errors
$env:DOLD_JSON_ERRORS = "1" # PowerShell → stderr doldskrift.error/1- Open:
encode→validate→.dsk/ MGE specimen → Lens or Surfaces →decode - Neural:
dold neural encode→render(SVG carrier) →reconstruct(DeterministicBaseline) - Protected:
encode --mode protected→inspectshows Readable: No →decode/openrefuse (AEAD not shipping)
Interactive demos — static GitHub Pages (no separate hosted web app):
Live site: https://theworker02.github.io/doldskrift/
npm install
npm run site:preview # build site/dist + local static previewThe dold binary is the Lab surface for developers and agents.
| Area | Commands |
|---|---|
| Onboarding | guide, about, museum, demo, commands / topics |
| Codec | encode / e, decode / d, pipeline, validate, fmt, inspect, convert |
| Health | doctor, self-test, version --verbose, schema, completion |
| Surfaces | postcard, ambient, seal, radio, mesh, kaleidoscope, timeline, … |
| Neural | neural, dataset, reader, evaluate |
| Brand / funding | logo, brand, funding |
Unexpected Open surfaces still obey the honesty model (Open ≠ encryption; hashes ≠ signatures). Gallery: Surfaces. Full list: dold surfaces list / dold guide surfaces.
| Command | What it does |
|---|---|
dold (no args) |
Tiny braille / project-mark fingerprint |
dold radio exchange "ping" |
Two-agent visual packet |
dold echo / --verify |
Self-describing document + SHA-256 glyph strip |
dold ambient / --decode |
Constellation SVG Open channel |
dold postcard / --read |
Machine postcard |
dold convert |
Bridge text/dsk ↔ postcard/ambient/seal |
dold render --tty |
Braille / block art without a browser |
Rust (published on crates.io as 0.5.0):
[dependencies]
doldskrift = "0.5"use doldskrift::{encode, decode, Mode};
let opaque = encode("Hello, agent!").unwrap();
assert_eq!(decode(&opaque).unwrap(), "Hello, agent!");
let _ = Mode::Encoded;JavaScript — primary SDK @doldskrift/core; thin @doldskrift/web / @doldskrift/react adapters; generated WASM (doldskrift-bindings). Rust owns the protocol truth. npm packages are versioned in-repo and are not the crates.io release channel.
| Resource | Link |
|---|---|
| GitHub repository | theworker02/doldskrift |
| GitHub Releases | Releases |
| GitHub Pages | theworker02.github.io/doldskrift |
| Docs portal | docs/ |
| CLI reference | docs/reference/cli.md |
| Architecture | ARCHITECTURE.md |
| Roadmap | ROADMAP.md |
| Security | SECURITY.md |
| Brand kit | docs/brand.md |
| Changelog | CHANGELOG.md |
| crates.io | doldskrift |
| docs.rs | doldskrift |
| Funding | thanks.dev/u/gh/theworker02 |
Lens / Surfaces / Neural demos: Lens · Surfaces · Neural
crates/ # Rust workspace (core, cli, vision, font, bindings)
packages/ # @doldskrift/core (+ thin web/react) · WASM bindings
site/ # GitHub Pages demos
docs/ # Product + protocol + neural docs map
spec/ # Normative DSK/1 + protocol-constants.json
training/ # Python experiments only (not a second protocol)
| Component | Maturity |
|---|---|
DSK/1 codec + .dsk |
Stable prototype |
| DSK/2 semantics | Experimental |
| DSK/3 Neural (LSG + readers) | Foundation stubs (ADR-0007) |
| DSK/3 Protected + Gate | Design + refuse stubs (ADR-0006) |
| MGE glyph engine | Candidate (evolving) |
| DVE vision | Experimental |
| WASM / CLI / Lens | Beta / shipping on Pages |
Open-mode visual illegibility is not a security boundary. See SECURITY.md.
- thanks.dev: https://thanks.dev/u/gh/theworker02
- GitHub funding file:
.github/FUNDING.yml - Site: Funding page
- CLI:
dold funding·dold funding --json
Bugs and documentation issues: SUPPORT.md. Commercial collaboration: Partners.
Curated project contributors (not GitHub's automatic commit graph):
| Name | Role |
|---|---|
| theworker02 | Creator and maintainer |
Bots such as Dependabot are not listed as project contributors. Full note: CONTRIBUTORS.md.
See CONTRIBUTING.md and CODE_OF_CONDUCT.md.
Issues and pull requests are welcome for protocol clarity, Lab DX, documentation honesty, and Open-mode reliability. Please keep Neural and Protected claims aligned with what actually ships.
Licensed under either of:
- MIT license (
LICENSE-MITor http://opensource.org/licenses/MIT) - Apache License, Version 2.0 (
LICENSE-APACHEor http://www.apache.org/licenses/LICENSE-2.0)
at your option. See LICENSE.