A local-first library for your files, music and photos — tagged, deduplicated and mountable as plain folders. Native apps to enjoy it, and anneal, a coding agent that improves its own harness.
.tie filetie splits what a file is from what it means. The bytes live in a content-addressed blob store; the meaning lives in triples. The content hash is the join, so tags, ratings and history follow the content — not the filename.
tag travel member-of iceland
rating 4 path tie:/photos/2014
taken-at 2014-06-18Each one is a Go binary on the same library. They share a URL scheme, a theme and a tag vocabulary, so a file can move from a folder to a wall to a player without being copied.
A twin-panel file manager for your local disks and your tie library, with album import, MusicBrainz matches and tags that behave like files.
A tag-driven music player for tie. Home shelves, a cover wall, playlists and a play history that remembers what you actually listened to.
A tag-driven image viewer with quick-tag pills, star ratings, favourites and a filesystem view of the same library.
A fast local image viewer that needs no library at all: folders, archives and video, with a justified grid and an EXIF overlay.
A scene browser and visual designer: point-and-click pages stored in tie, built from images, galleries, tags, audio and video.
A local-first coding agent that works in your project, learns from finished sessions, and proposes better harnesses — with evidence and your approval.
No service to run, no schema to design, no import you can't undo. Point tie at a directory, then browse it by meaning.
$ tie import image-dir ~/Pictures/Holiday \
--tags travel --tags 2014
imported 214 files · 3.1 GB · 197 new blobs
deduplicated 17 files (1.2 GB) by content
$ tie mount --db ~/mnt
mounting live tree at ~/mnt
$ ls "~/mnt/query/travel 2014 -screenshots"
iceland/ lisbon/ kyoto/
$ tie verify --deep
ok forward 98,179,667 · reverse 4,203,118 · 0 findingsanneal is a local-first coding agent built on tie. It works with tools, reviews finished sessions while idle, and proposes changes to its own harness — with evidence, and only if you promote them.

A permission request, a tool trail and a plan — the parts a chat window usually hides.
Every number links to the engineering note it came from. If the note changes, the claim check fails.
Import folders as albums or photos, tag them once, and keep the originals where they are.
A tag-aware player for the library you already have, with a history that feeds the shelves.
No library, no setup. Point imgview at a folder or an archive and it opens.
A local-first agent that works with your tools and learns from its own sessions.
“I wanted my music, my photos and my files in one place I could understand — not a service I had to trust. tie is that place: files on disk, meaning in triples, and a hash that keeps them honest.”
One binary, a test environment and a 60-second tour. No account, no cloud, no telemetry.