Tuesday, March 3, 2026

Show HN: Agent Action Protocol (AAP) – MCP got us started, but is insufficient https://ift.tt/tlja3ov

Show HN: Agent Action Protocol (AAP) – MCP got us started, but is insufficient Background: I've been working on agentic guardrails because agents act in expensive/terrible ways and something needs to be able to say "Maybe don't do that" to the agents, but guardrails are almost impossible to enforce with the current way things are built. Context: We keep running into so many problems/limitations today with MCP. It was created so that agents have context on how to act in the world, it wasn't designed to become THE standard rails for agentic behavior. We keep tacking things on to it trying to improve it, but it needs to die a SOAP death so REST can rise in it's place. We need a standard protocol for whenever an agent is taking action. Anywhere. I'm almost certainly the wrong person to design this, but I'm seeing more and more people tack things on to MCP rather than fix the underlying issues. The fastest way to get a good answer is to submit a bad one on the internet. So here I am. I think we need a new protocol. Whether it's AAP or something else, I submit my best effort. Please rip it apart, lets make something better. https://ift.tt/GtCop5h March 3, 2026 at 09:22PM

Show HN: A tool to give every local process a stable URL https://ift.tt/yav96BQ

Show HN: A tool to give every local process a stable URL In working with parallel agents in different worktrees, I found that I had a lot of port conflicts, went back and forth checking what incremented port my dev server was running on, and cookie bleed. This isnt a big issue if running a few servers with full a stack framework like Next, Nuxt, or Sveltekit, but if you run a Rust backend and a Vite frontend In multiple worktrees, it gets way more complicated, and the mental model starts to break. That's not even adding in databases, or caches. So I built Roxy, which is a single Go binary that wraps your dev servers (or any process actually) and gives you a stable .test domain based on the branch name and cwd. It runs a proxy and dns server that handles all the domain routing, tls, port mapping, and forwarding for you. It currently supports: - HTTP for your web apps and APIs - Most TCP connections for your db, cache and message/queue layers - TLS support so you can run HTTPS - Run multiple processes at once each with a unique URL, like Docker compose - Git and worktree awareness - Detached mode - Zero config startup My co-workers and I have been using it a lot with our workflow and i think it's ready for public use. We support MacOS and Linux I'll be working on some more useful features like Docker compose/Procfile compatibility and tunneling so you can access your dev environment remotely with a human readable URL Give it a try, and open an issue if something doesnt quite work right, or to request a feature! https://ift.tt/uSOrK4Y https://ift.tt/uSOrK4Y March 4, 2026 at 12:18AM

Sunday, March 1, 2026

Show HN: Updater – one command for macOS app updates https://ift.tt/W7mPiFo

Show HN: Updater – one command for macOS app updates I built updater to solve a small but annoying problem: macOS app updates are fragmented across different systems. updater scans installed apps, determines where each app should be checked (Sparkle, Homebrew casks/formulae, Mac App Store via mas, GitHub Releases, and macOS system updates), then runs source specific update actions from the terminal. It also has an interactive TUI (run `updater` with no args). A few commands: updater check updater update --all updater update "1Password" Repo: https://ift.tt/GVljZok Would love feedback, especially on reliability and edge cases. https://ift.tt/GVljZok March 2, 2026 at 12:46AM

Show HN: Mrkd – A native macOS Markdown viewer with iTerm2/VSCode theme import https://ift.tt/jftBxwU

Show HN: Mrkd – A native macOS Markdown viewer with iTerm2/VSCode theme import Using Opus 4.6 I built a markdown viewer for macOS that uses zero web technology. No Electron, no WebView — markdown is parsed with cmark-gfm and rendered directly to NSAttributedString via TextKit 2. The result is native text selection, native accessibility, and a ~1MB binary that launches pretty much instantly. It supports GFM tables, task lists, syntax-highlighted code blocks, and inline images. You get a built-in themes (Solarized, Dracula, GitHub, Monokai) plus the ability to import your own from iTerm2 or VS Code theme files. The part I’m most pleased with is the Quick Look integration — select a .md file in Finder, hit Space, and you get a fully themed preview using whatever theme and fonts you’ve configured in the app. No setup required; the QL extension registers automatically on first launch. It also bundles variable fonts (Geist, Inter, JetBrains Mono, iA Writer Mono, and more) so typography looks good out of the box. The whole thing is built in Swift with no dependencies beyond cmark-gfm and Highlightr. https://ift.tt/Xo0qzP2 https://ift.tt/Xo0qzP2 March 2, 2026 at 12:18AM

Show HN: PraxisJS – signal-driven front end framework and AI experiment https://ift.tt/Hm8pW2d

Show HN: PraxisJS – signal-driven front end framework and AI experiment I built PraxisJS, a signal-driven frontend framework exploring what a more explicit and traceable architecture could look like. PraxisJS started as a personal project. It reflects a single perspective on frontend design, not a committee decision, not a consensus. I wanted to see how far you can push explicitness before it becomes friction. Most frameworks optimize for writing less. PraxisJS questions that tradeoff. @State doesn’t suggest reactivity, it is reactive, visible in the code. Signals reach the DOM without a reconciliation layer in between (the renderer is still evolving toward that goal). It also became an AI-assisted experiment, not to automate thinking, but to pressure-test ideas. Some parts came from that collaboration. Some exist because it failed. v0.1.0 beta, experimental, not production-ready. But the ideas are real. https://praxisjs.org/ March 1, 2026 at 11:27PM

Saturday, February 28, 2026

Show HN: Free, open-source native macOS client for di.fm https://ift.tt/kjAPurQ

Show HN: Free, open-source native macOS client for di.fm I built a menu bar app for streaming DI.FM internet radio on macOS. Swift/SwiftUI, no Electron. The existing options for DI.FM on desktop are either the web player (yet another browser tab) or unofficial Electron wrappers that idle at 200+ MB of RAM to play an audio stream. This sits in the menu bar at ~35 MB RAM and 0% CPU. The .app is about 1 MB. What it does: browse and search stations, play/pause, volume, see what's playing (artwork, artist, track, time), pick stream quality (320k MP3, 128k AAC, 64k AAC). Media keys work. It remembers your last station. Built with AVPlayer for streaming, MenuBarExtra for the UI, MPRemoteCommandCenter for media key integration. The trickiest part was getting accurate elapsed time. DI.FM's API and the ICY stream metadata don't always agree, so there's a small state machine that reconciles the two sources. macOS 14+ required. You need a DI.FM premium account for the high-quality streams. Source and binary: https://ift.tt/Uvj2gXV https://ift.tt/Uvj2gXV March 1, 2026 at 02:21AM