A filesystem backed by PostgreSQL, and a filesystem interface to PostgreSQL.
Every file is a real PostgreSQL row. Directories are tables. File contents are columns. Multiple agents and humans can read and write the same files concurrently with full ACID guarantees. Every change is versioned and reversible (file-first with history). No sync protocols. No coordination layer. The filesystem is the API.
You can use TigerFS in two ways:
File-first: Write markdown with frontmatter or other file types, organize into directories. Writes are atomic, changes are versioned, and everything is reversible. Any tool that works with files -- Claude Code, Cursor, grep, vim -- just works. Build lightweight workspaces via the filesystem: multi-agent task coordination is just mv'ing files between todo/doing/done directories.
Data-first: Mount any Postgres database and explore it with ls, cat, grep, and other unix tools. For large databases, chain filters into paths that push down to SQL: .by/customer_id/123/.order/created_at/.last/10/.export/json. No database client or SQL needed, and ships with agent skills.
This is hilarious. FYI: atomic operations do not give you transactions. I don't see how you can read-modify-update as a single transaction with standard Unix tools.
Familiar-Level-261@reddit
30 years of trying to stop developers from using DB as FS wasted
press0@reddit
TigerFS
Every file is a real PostgreSQL row. Directories are tables. File contents are columns. Multiple agents and humans can read and write the same files concurrently with full ACID guarantees. Every change is versioned and reversible (file-first with history). No sync protocols. No coordination layer. The filesystem is the API.
You can use TigerFS in two ways:
File-first: Write markdown with frontmatter or other file types, organize into directories. Writes are atomic, changes are versioned, and everything is reversible. Any tool that works with files -- Claude Code, Cursor, grep, vim -- just works. Build lightweight workspaces via the filesystem: multi-agent task coordination is just mv'ing files between todo/doing/done directories.
Data-first: Mount any Postgres database and explore it with ls, cat, grep, and other unix tools. For large databases, chain filters into paths that push down to SQL: .by/customer_id/123/.order/created_at/.last/10/.export/json. No database client or SQL needed, and ships with agent skills.
sweetno@reddit
This is hilarious. FYI: atomic operations do not give you transactions. I don't see how you can read-modify-update as a single transaction with standard Unix tools.