frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Show HN: Unfudged – version control without commits

https://www.unfudged.io/
4•cyrusradfar•1h ago

Comments

cyrusradfar•1h ago
OP here --

I built unf after I pasted a prompt into the wrong agent terminal and it overwrote hours of hand-edits across a handful of files. Git couldn't help because I hadn't finished/committed my in progress work. I wanted something that recorded every save automatically so I could rewind to any point in time. I wanted to make it difficult for an agent to permanently screw anything up, even with an errant rm -rf

unf is a background daemon that watches directories you choose (via CLI) and snapshots every text file on save. It stores file contents in an object store, tracks metadata in SQLite, and gives you a CLI to query and restore any version. The install includes a UI, as well to explore the history through time.

The tool skips binaries and respects `.gitignore` if one exists. The interface borrows from git so it should feel familiar: unf log, unf diff, unf restore.

I say "UN-EF" vs U.N.F, but that's for y'all to decide: I started by calling the project Unfucked and got unfucked.ai, which if you know me and the messes I get myself into, is a fitting purchase.

The CLI command is `unf` and the Tauri desktop app is called "Unfudged" — the clean version. Didn’t want to force folks to have it in their apps, windows headers, etc. You can rag on me for my dad vibes.

*How it works*

Full: https://www.unfudged.io/tech(summary below)

The daemon uses FSEvents on macOS and inotify on Linux. When a file changes, `unf` hashes the content with BLAKE3 and checks whether that hash already exists in the object store — if it does, it just records a new metadata entry pointing to the existing blob. If not, it writes the blob and records the entry. Each snapshot is a row in SQLite. Restores read the blob back from the object store and overwrite the file, after taking a safety snapshot of the current state first (so restoring is itself reversible).

There are two processes. The core daemon does the real work of managing FSEvents/inotify subscriptions across multiple watched directories and writing snapshots. A sentinel watchdog supervises it, kept alive and aligned by launchd on macOS and systemd on Linux. If the daemon crashes, the sentinel respawns it and reconciles any drift between what you asked to watch and what's actually being watched. It was hard to build the second daemon because it felt like conceding that the core wasn't solid enough, but I didn't want to ship a tool that demanded perfection to deliver on the product promise, so the sentinel is the safety net.

Fingers crossed, I haven’t seen it crash in over a week of personal usage on my Mac. But, I don't want to trigger "works for me" trauma.

*The part I like most*

On the UI, I enjoy viewing files through time. You can select a time section and filter your projects on a histogram of activity. That has been invaluable in seeing what the agent was doing.

On the CLI, the commands are composable. Everything outputs to stdout so you can pipe it into whatever you want. I use these regularly and AI agents are better with the tool than I am:

  # What did my config look like before we broke it?
  unf cat nginx.conf --at 1h | nginx -t -c /dev/stdin

  # Grep through a deleted file
  unf cat old-routes.rs --at 2d | grep "pub fn"

  # Count how many lines changed in the last 10 minutes
  unf diff --at 10m | grep '^[+-]' | wc -l

  # Feed the last hour of changes to an AI for review
  unf diff --at 1h | pbcopy

  # Compare two points in time with your own diff tool
  diff <(unf cat app.tsx --at 1h) <(unf cat app.tsx --at 5m)

  # Restore just the .rs files that changed in the last 5 minutes
  unf diff --at 5m --json | jq -r '.changes[].file' | grep '\.rs$' | xargs -I{} unf restore {} --at 5m

  # Watch for changes in real time
  watch -n5 'unf diff --at 30s'

*What was new for me*

I came to Rust in Nov. 2025 honestly because of HN enthusiasm and some FOMO. No regrets. I enjoy the language enough that I'm now working on custom clippy lints to enforce functional programming practices. This project was also my first Apple-notarized DMG, my first Homebrew tap, and my second Tauri app (first one I've shared).

*Install & Usage*

  > brew install cyrusradfar/unf/unfudged
Then unf watch in a directory. unf help covers the details (or ask your agent to coach).
s0a•1h ago
this seems insanely useful and well thought out. kinda surprised something like it doesn’t already exist. def useful in the age of agents

Show HN: I built a browser-based image comparison tool for subtle differences

https://picdiff.dev/
1•lazycat_•59s ago•0 comments

Anthropic says company 'cannot in good conscience accede' to Pentagon's demands

https://apnews.com/article/anthropic-ai-pentagon-hegseth-dario-amodei-9b28dda41bdb52b6a378fa9fc80...
2•geox•1m ago•0 comments

I vibe coded and I have feelings about it

https://blog.coolapso.sh/en/posts/ivibecoded/
1•coolapso•1m ago•0 comments

Viewert – The One App for Prompt Notes

https://www.viewert.com
1•Sunrostern•1m ago•0 comments

Tesla touts California robotaxis but does nothing to get permits

https://www.reuters.com/business/autos-transportation/musk-touts-california-robotaxis-tesla-does-...
2•JumpCrisscross•1m ago•1 comments

The Lobotomy Ultimatum: What happens when a Government removes an AI's morals

https://greggbayesbrown.substack.com/p/the-lobotomy-ultimatum-what-happens
1•superfluous_g•4m ago•0 comments

Show HN: Free app to track countries you've travelled to

https://apps.apple.com/no/app/voyage-track-your-journey/id6758411779
1•anmols99•4m ago•0 comments

Show HN: AgentMint – signed tokens proving a human approved an agent action

https://github.com/aniketh-maddipati/agentmint
1•asmhacker•5m ago•0 comments

Netflix drops out of bidding after WBD deems Paramount's takeover bid 'superior'

https://www.cnn.com/2026/02/26/media/netflix-ted-sarandos-trump-white-house-paramount-wbd
1•gok•5m ago•0 comments

Brave New Smart Phone Dependence World and Google Support

1•bar_de•7m ago•0 comments

Netflix Declines to Raise Offer for Warner Bros

https://ir.netflix.net/investor-news-and-events/financial-releases/press-release-details/2026/Net...
3•doener•8m ago•0 comments

RSS Guard v5.0.0

https://github.com/martinrotter/rssguard/releases/tag/5.0.0
1•thombles•9m ago•0 comments

Paramount Wins Bidding War for Warner Discovery as Netflix Drops Out

https://www.wsj.com/business/media/warner-discovery-says-paramounts-latest-bid-is-superior-to-net...
3•jaredwiener•11m ago•1 comments

A Phase-Ordered Pre-Geometric Projection Framework (Physics)

1•RichOnFire•12m ago•0 comments

The Living Context Workflow: Keep agents oriented across every session

https://p10q.com/presentations/agents_md_workflow/
1•tmsh•13m ago•0 comments

Jack Dorsey's Block to cut nearly 1/2 its workforce in AI overhaul, shares surge

https://www.reuters.com/business/blocks-fourth-quarter-profit-rises-announces-over-4000-job-cuts-...
3•petethomas•15m ago•0 comments

Unlinkable Inference as a User Privacy Architecture

https://openanonymity.ai/blog/unlinkable-inference/
1•jhalderm•15m ago•0 comments

Long Horizon Tasks with Codex

https://developers.openai.com/cookbook/examples/codex/long_horizon_tasks/
1•gmays•16m ago•0 comments

AirSnitch: Demystifying and Breaking Client Isolation in Wi-Fi Networks

https://github.com/vanhoefm/airsnitch
2•rendx•16m ago•0 comments

The Future Is AI's Proof of Work

https://backalleycoder.com/posts/the-future-is-ai-proof-of-work/
3•csuwldcat•17m ago•0 comments

A Reality Alignment Index: Measuring When AI and Systems Lose Meaning [pdf]

https://offbrandguy.com/wp-content/uploads/2026/02/drift-fidelity-index-reality-alignment-framewo...
1•realitydrift•17m ago•1 comments

Making PyTorch –> Qualcomm NPUs less treacherous

https://www.muna.ai/blog/qualcomm-npu
1•olokobayusuf•19m ago•1 comments

Open-Source LLMs in 2026: A Complete Guide for AI Developers

https://vertu.com/ar/%d9%86%d9%85%d8%b7-%d8%a7%d9%84%d8%ad%d9%8a%d8%a7%d8%a9/the-best-open-source...
1•rurban•20m ago•0 comments

Kurt Gödel's Brilliant Madness

https://www.cantorsparadise.com/kurt-g%C3%B6dels-brilliant-madness-84288dd96eda
1•tzury•21m ago•0 comments

ChatGPT made Flappy Bird for Atari 2600 by writing byte code directly

https://twitter.com/lisperati/status/2026500894905479584
1•smusamashah•21m ago•1 comments

A leaked roster of 2,200 Bohemian Grove members

https://sfstandard.com/2026/02/25/new-illuminati-list-just-dropped-leaked-roster-2-200-bohemian-g...
2•billfor•22m ago•1 comments

Reappraisal of paths to decarbonising British electricity generation in 2030

https://iopscience.iop.org/article/10.1088/2753-3751/ae4235
1•PaulHoule•22m ago•0 comments

The Open Anonymity Project

https://openanonymity.ai/
1•jhalderm•25m ago•0 comments

Show HN: I built a minimal file organizer CLI and underestimated filesystem case

https://github.com/ChristianRincon/auto-organize
1•chris-corner•26m ago•0 comments

Claude Code Memory

https://code.claude.com/docs/en/memory
2•mfiguiere•26m ago•1 comments