@clype/blink
v0.4.0
Published
Fast local-first capture and retrieval CLI (native binary, per-platform bundled)
Readme
Blink
Blink is a capture-first CLI for fast plain-text notes — built in Rust for sub-20ms capture.
One interface
blink <words> # save a thought (++ prefix), or find one
blink # keep writing (interactive ›)
blink block # write more than one line
blink meet # capture a sessionblink help advanced # reindex, doctor, benchPrinciples
- Capture first — file write before index; notes survive index failures
- Local-first — markdown in
~/blink, BM25 search offline, no AI required - Zero setup — first capture creates
~/blink/notebooks/active/ - Ambient —
✓or silence on capture; content-only search results
Storage
BLINK_HOME overrides ~/blink.
~/blink/notebooks/active/
├── 2026-06-24.md
├── 2026-06-24.md.offset # sidecar line counter (internal)
├── index.sqlite # derived FTS5 index
└── index.queue # async index spoolHotkeys
Use explicit capture for hotkeys:
blink ++ buy milkSee platform/mac/blink.scpt and platform/win/blink-hotkey.ps1.
Install
Requires Node.js 18+ to install. Blink itself runs as a native binary.
npm install -g @clype/blink
blink ++ hello worldThe package bundles the prebuilt binary for every supported OS — no separate binary download or postinstall step. No Cargo or Rust required.
See docs/install.md for npx, migration, and troubleshooting.
Build from source (developers)
Architecture
blink/src/
├── engine/ # Core — capture, recall, maintenance (no user I/O)
│ └── Blink # Facade used by CLI, tests, and future bindings
├── cli/ # User interaction — routing, prompts, editor, output
├── capture/ # Internal storage writers (used by engine)
├── index/ # Internal FTS5 index (used by engine)
├── retrieval/ # Internal search helpers (used by engine)
└── storage/ # Paths, config, daily files (used by engine)The CLI layer never writes files or queries SQLite directly — it calls Blink::capture(), Blink::recall(), etc.
Agent-friendly output: pass --json on any command.
Migrate from Blink v0.2 (Node)
Existing ~/blink/ daily files and index.sqlite are compatible. See docs/migration.md.
npm uninstall -g @noodlemind/blink # old package, if installed
npm install -g @clype/blink # native binary, bundled per-platform
blink doctor
blink reindexPerformance
See docs/performance.md and docs/blink-speed-report.md. Run blink bench after building.
