Skip to content

Status

Last reviewed: 2026-10-17 · 1.0.0-alpha.1 · fifteen-crate workspace · about 2,300 #[test] functions.

soft-fig 1.0.0-alpha.1 is the first public release. It is built and used daily by its author on one device, so expect rough edges. This page is a dated snapshot; when it disagrees with the code or its changelog, trust the repository.

  • The engine. The vault — whole-store encryption, Layer B secrets (sealed files and inline regions), key rotation, a declared recovery policy with escrow and rewrap — plus the content-addressed ciphertext store, signed intent-classified commits with fsck, and the FUSE plaintext view, all driven by the softfig-keeperd daemon.
  • First run. softfig onboard scaffolds a garden born-in-FUSE; softfig migrate converts a legacy plaintext garden.
  • The surfaces. The softfig CLI; the MCP bridge with typed, convention-stamping write verbs (including surgical edits such as patch_file and batch) and no vault operations; and the ratatui TUI.
  • Dotfile deploy. softfig deploy materializes config/deploy.toml as symlinks to a plaintext cache or as stamped copies, to $HOME targets and regular files. Files you have sealed deploy as plaintext, by design — that is what a live dotfile needs.
  • Cross-device. Pairing (mDNS, Noise, six-digit SAS), a signed peer ring, a blind relay for off-LAN peers, zero-knowledge ciphertext backup to granted hosts, and shared subtrees: union-mounted into the garden, keyed by a collaboratively generated key, with write-turn coordination and last-writer-wins conflict sidecars.
  • Growlight. The autonomous work loop, run entirely by softfig-growlightd (a one-agent run is a fleet of one), on the Claude or opencode backends, with a daemon-parsed backlog queue, budgets, and a terminal and window console. The queue v2 scheduler is selectable per garden with queue = "v2"; the default is legacy.
  • Unaudited cryptography. No third party has reviewed it. Don’t store anything you can’t afford to lose; see the security policy.
  • Linux only, with a systemd user session and FUSE 3 (fuse3). No other OS or init system is supported.
  • Build from source. There are no prebuilt binaries or distro packages yet. You need Rust 1.88 or newer and protoc. See Install.
  • One device in daily use. The author runs it on one device. Sync is the least-proven area: its automated tests run over loopback, and real multi-device use has been limited. Shared subtrees are built and tested for two paired devices.
  • Recovery is yours to look after. A passphrase-only garden is recoverable only while the small k.self wrapping survives. Export and verify an escrow bundle (softfig vault escrow) and keep copies. The passphrase door cannot be dropped.
  • Relock tokens weaken the lock and are off by default. They exist so an unattended loop can survive a daemon restart; see Daemon & FUSE.
  • Deploy is static. No template rendering, no render-time secrets, no /etc targets.
  • No peer-document reads or peer unlock. A backup host stores your ciphertext but can’t read it, and there is no ACL letting a peer unlock your vault. The peers recovery door can be declared but is not built.
  • Growlight window console is feature-gated. The iced GUI builds only with the gui Cargo feature and has no software-render fallback; it needs Vulkan.
  • Workspace version is 0.1.0 until release tooling lands. Don’t rely on it for compatibility checks.

Not built; nothing here works today.

  • Prebuilt binaries and distro packages, with an upgrade path.
  • Template rendering with profile-scoped variables and render-time secrets.
  • Reading a peer’s documents through a chain-scoped read key.
  • A peer-unlock ACL and TPM-backed self-unlock.
  • Shared subtrees beyond two members.
  • Social recovery as a further recovery door.
  • Contributions. Open an issue first for anything larger than a bug fix. Read CONTRIBUTING.md for the local gate and review process; merging requires agreeing to the CLA.
  • Vulnerabilities. Report them privately, never in a public issue; the contact and process are in SECURITY.md.
  • License. AGPL-3.0-or-later. The name and logo are covered separately by the trademark policy. Conduct is covered by the code of conduct.

Related: Architecture, The Vault, and the roadmap.