🛠️ Hacker News Tools
Showing 421–440 of 3061 tools from Hacker News
Last Updated
June 05, 2026 at 08:00 PM
Texico: Learn the principles of programming without even touching a computer
Hacker News (score: 167)[Other] Texico: Learn the principles of programming without even touching a computer
K3k: Kubernetes in Kubernetes
Hacker News (score: 34)[DevOps] K3k: Kubernetes in Kubernetes
Create an MP4 video of a web page scrolling at a steady speed
Hacker News (score: 23)[Other] Create an MP4 video of a web page scrolling at a steady speed
Show HN: Agent-desktop – Native desktop automation CLI for AI agents
Hacker News (score: 87)[CLI Tool] Show HN: Agent-desktop – Native desktop automation CLI for AI agents I've been building computer-use tools for a while, and I quietly launched this about a month ago (122 Stars on GH). I figured it was worth sharing here.<p>Over the last few months, a lot of computer-use agents have come out: Codex, Claude Code, CUA, and others. Most of them seem to work roughly like this: 1. Take a screenshot 2. Have the model predict pixel coordinates 3. Click x,y 4. Take another screenshot 5. Repeat<p>That works, but it's slow, expensive in tokens, and fragile. If the UI shifts a few pixels, things break. And the model still doesn't know what any element actually is.<p>But the OS already exposes structured UI information:<p><pre><code> - macOS: Accessibility API - Windows: UI Automation - Linux: AT-SPI </code></pre> Screen readers have used these APIs for years. On the web, Playwright beat screenshot scraping for the same reason: structured access is just a better abstraction than pixels.<p>So I built a desktop equivalent: agent-desktop.<p>It's a cross-platform CLI for structured desktop automation through the accessibility tree. One Rust binary, about 15 MB, no runtime dependencies. It exposes 53 commands with JSON output, so an LLM can inspect and operate native apps without screenshots or vision models. Inspired by agent-browser by Vercel Labs.<p>A typical loop looks like this:<p><pre><code> agent-desktop snapshot --app Slack -i --compact agent-desktop click @e12 agent-desktop type @e5 "ship it" agent-desktop press cmd+return </code></pre> So the loop becomes:<p><pre><code> 1. Snapshot 2. Decide 3. Act 4. Snapshot again </code></pre> The main design problem was context size.<p>A naive approach would dump the full accessibility tree into the model, but real apps get huge. Slack can easily exceed 50,000 tokens for a full tree dump, which makes the approach impractical.<p>The approach I ended up using is progressive skeleton traversal:<p><pre><code> - First pass: return a shallow tree, typically depth 3, with deeper containers truncated and annotated with children_count - Named containers get references so the agent can request only that subtree - The agent drills down into the relevant region with --root @e3 - References are scoped and invalidated only for that subtree - After acting, the agent can re-query just that region instead of re-snapshotting the whole app </code></pre> In practice, this reduced token usage by about 78% to 96% versus full-tree dumps in Electron apps like Slack, VS Code, and Notion.<p>A few implementation details that may be interesting here:<p><pre><code> - Rust workspace with strict platform/core separation through a PlatformAdapter trait - Accessibility-first activation chain; mouse synthesis is the fallback, not the default - Deterministic element refs like @e1, @e2, with optimistic re-identification across UI shifts - Structured errors with machine-readable codes plus retry suggestions - C ABI via cdylib, so it can be loaded directly from Python, Swift, Go, Node, Ruby, or C without shelling out - Batch operations in a single call - Support for windows, menus, sheets, popovers, alerts, and notifications - Special handling for Chromium/Electron accessibility trees, which can get very deep and noisy </code></pre> Why I think this matters: pixel-based desktop control feels like a leaky abstraction. The OS already knows the UI semantically. Accessibility APIs give you roles, names, actions, hierarchy, focus, selection, and state directly. That seems like a much better substrate for desktop agents than screenshot loops.<p>If you're building your own desktop agent, internal automation tool, or research prototype, this may be useful.<p>Install:<p><pre><code> npm install -g agent-desktop agent-desktop snapshot --app Finder -i </code></pre> Repo: <a href="https://github.com/lahfir/agent-desktop" rel="nofollow">https://github.com/lahfir/agent-desktop</a><p>I'd especially love feedback from people who've built desktop automation before. What are the biggest pain points you've run into, and what would you want a tool like this to support?
Lib0xc: A set of C standard library-adjacent APIs for safer systems programming
Hacker News (score: 48)[API/SDK] Lib0xc: A set of C standard library-adjacent APIs for safer systems programming
Show HN: Omar – A TUI for managing 100 coding agents
Show HN (score: 10)[Other] Show HN: Omar – A TUI for managing 100 coding agents We were both genuinely impressed by Claude Code after it helped each of us fix nasty CI problems overnight. Doing those fixes manually would have taken days.<p>After that experience, we each found ourselves struggling through Ctrl+Tab through multiple Claude Code windows in our terminals. While we enjoyed having agents working for us in parallel, context switching and cycling through each terminal tab was a real pain.<p>So we thought: Can we design a TUI dashboard that manages a large swarm of agents in one place? Even better, can agents manage agents hierarchically, like how companies work?<p>OMAR (Open Multi-Agent Runtime) is the result of this exploration. We spent months building it, and we think it is now ready to show the world. If you find OMAR interesting, give it a try. We would love to hear from you. :)<p>Check out our blog here for more details: <a href="https://omar.tech/blog/introducing-omar/" rel="nofollow">https://omar.tech/blog/introducing-omar/</a><p>Thanks! Karim & Shaokai
Show HN: AI CAD Harness
Hacker News (score: 20)[Other] Show HN: AI CAD Harness Hi HN, I'm Zach, one of the co-founders of Adam (<a href="https://adam.new">https://adam.new</a>).<p>We've been on HN twice before with text-to-CAD/3D experiments [1][2]. The honest takeaway from those threads: prompt-to-3D model web apps are fun, but serious mechanical engineers don't want a black box that spits out an STL. They want help inside the CAD tool they already use, with full visibility and control over the feature tree.<p>So we built that. Adam is now a harness that integrates directly with your CAD. It reads your parts, understands the existing feature tree, and edits it for you agentically. We are now live in beta on Onshape and Fusion! [3]:<p>Install link Autodesk Fusion: <a href="https://fusion.adam.new/install">https://fusion.adam.new/install</a><p>Install link PTC Onshape: <a href="https://cad.onshape.com/appstore/apps/Design%20&%20Documentation/690a8dc864e816c112aa66a0" rel="nofollow">https://cad.onshape.com/appstore/apps/Design%20&%20Documenta...</a><p>Things people are using it for today: - "Merge redundant features and clean up my tree" - "Rename every feature so the tree is actually readable" - "Round all internal edges with a 2mm fillet" - “Parametrize my model”<p>Along with of course, using Adam to generate CAD end-to-end!<p>A few things we care about that aren't obvious from the listing:<p>1. From the start we have always believed in CAD as code as the right abstraction. Our harness leverages Onshape's FeatureScript and Python in Fusion heavily.<p>2. We run an internal CAD benchmark across frontier models. There has been a massive jump in the spatial reasoning capabilities of recently released models. Particularly GPT 5.5 and Opus 4.7 [4] [5]<p>3. We open-sourced our earlier text-to-CAD work [6]<p>A note on the Anthropic Autodesk connector that shipped a couple days ago [7]: We think it's great for the space and validates the direction.<p>Where Adam is different:<p>- Model-agnostic. We pick whichever frontier model is winning on each task type from our own internal bench, instead of being tied to one lab.<p>- We live natively in your CAD apps and are actively building integrations across all programs<p>What would you want an in-CAD agent to do that nothing does today?<p>[1] <a href="https://news.ycombinator.com/item?id=44182206">https://news.ycombinator.com/item?id=44182206</a><p>[2] <a href="https://news.ycombinator.com/item?id=45140921">https://news.ycombinator.com/item?id=45140921</a><p>[3] <a href="https://x.com/adamdotnew/status/2050264512230719980?s=20" rel="nofollow">https://x.com/adamdotnew/status/2050264512230719980?s=20</a><p>[4] <a href="https://x.com/adamdotnew/status/2044859329329893376?s=20" rel="nofollow">https://x.com/adamdotnew/status/2044859329329893376?s=20</a><p>[5] <a href="https://x.com/adamdotnew/status/2047795078912172122?s=20" rel="nofollow">https://x.com/adamdotnew/status/2047795078912172122?s=20</a><p>[6] <a href="https://github.com/Adam-CAD/CADAM" rel="nofollow">https://github.com/Adam-CAD/CADAM</a><p>[7] <a href="https://x.com/claudeai/status/2049143440508616863?s=20" rel="nofollow">https://x.com/claudeai/status/2049143440508616863?s=20</a>
Show HN: My Private GitHub on Postgres
Hacker News (score: 26)[Other] Show HN: My Private GitHub on Postgres
Show HN: GhostBox – Borrow a disposable little machine from the Global Free Tier
Hacker News (score: 103)[CLI Tool] Show HN: GhostBox – Borrow a disposable little machine from the Global Free Tier I built this because I was always creating machines on GH actions to test builds on different OS, and I wanted a tight CLI that could do it. I always saw Actions as this great resources and ephemeral machines you could do dev work in just were a natural way for me to work, so this grew out of that workflow.<p>I didn't expect it to blow up, so it wasn't 100% finished when I posted it. But it should stabilize pretty quickly.<p>Happy to know what you think and talk about it.
Running Adobe's 1991 PostScript Interpreter in the Browser
Hacker News (score: 106)[Other] Running Adobe's 1991 PostScript Interpreter in the Browser
Show HN: Loopsy, a way for terminals and AI agents on different machines to talk
Hacker News (score: 35)[Other] Show HN: Loopsy, a way for terminals and AI agents on different machines to talk I've always had the urge to have my two macbooks communicate. Having one idle while working on the other felt like underutilization of resources. So I built Loopsy. Initially the goal was to do file transfer via local network, and then came running commands. I then tried running coding agents from one machine to the other, and it worked.<p>Later I figured there should be a better way to continue my claude sessions remotely on my phone from the gym. So I did a cloudflare worker that connects to my local machine. I just need to ensure the laptop is plugged in.<p>I know I might be reinventing the wheel, but I love that it just works. Still working on E2E encryption. iOS app still in review.<p>Lemme know your thoughts.
A beginner's guide to Sourcehut (2025)
Hacker News (score: 23)[Other] A beginner's guide to Sourcehut (2025)
Show HN: WhatCable, a tiny menu bar app for inspecting USB-C cables
Hacker News (score: 270)[Other] Show HN: WhatCable, a tiny menu bar app for inspecting USB-C cables USB-C cables can be a mess. One cable charges at 5W, another does 100W and Thunderbolt 4, and they look identical in the drawer.<p>WhatCable sits in your menu bar and reads the cable data your Mac already has access to. Plug in a cable and it tells you in plain English what it can actually do: charging wattage, data speed, display support, Thunderbolt, etc.<p>Built in Swift/SwiftUI. Open source, free, no tracking.<p>GitHub: <a href="https://github.com/darrylmorley/whatcable" rel="nofollow">https://github.com/darrylmorley/whatcable</a>
Our agent found a bug with WireGuard in Google Kubernetes Engine
Hacker News (score: 21)[Other] Our agent found a bug with WireGuard in Google Kubernetes Engine
Show HN: Git repositories hosted directly on Freenet
Show HN (score: 5)[Other] Show HN: Git repositories hosted directly on Freenet Freenet's philosophy is "decentralize everything" and one of the things I've long wanted to apply that to is Git. The original Git concept was decentralized but for practical reasons most people use centralized hosting services like GitHub.<p>For anyone unfamiliar, Freenet[1] is a general purpose platform for building decentralized systems.<p>So I implemented a working prototype which already hosts the freenet-core repo, integrating as a git remote helper. It's still early so I'd greatly appreciate any feedback and will iterate quickly if there is interest.<p>[1] <a href="https://freenet.org/" rel="nofollow">https://freenet.org/</a>
Show HN: Pu.sh – a full coding-agent harness in 400 lines of shell
Hacker News (score: 58)[CLI Tool] Show HN: Pu.sh – a full coding-agent harness in 400 lines of shell I originally was just messing with pi-autoresearch. Gave it a sample task to build the most portable coding agent.<p>First cut was 6 KB of shell. Great for one-shots, unusable interactively. I was shocked it actually worked.<p>Started building up -- adding features — but with a self-imposed rule: no new dependencies, and sub 500 LOC. This thing had to be truly portable. Just sh, curl, awk. System primitives only.<p>Which means I did some genuinely disgusting things in awk, including JSON parsing and the OpenAI Responses tool loop with reasoning items carried across turns.<p>It's now ~400 lines. In the box: Anthropic + OpenAI, 7 tools (bash, read, write, edit, grep, find, ls), REPL, auto-compaction, checkpoint/resume, pipe mode, 90 no-API tests. Not in the box: TUI, streaming, images, OAuth, Windows, dignity.<p>Two honest things:<p>1. I stole/modified the system prompt and the architecture. Pi/Claude/Codex wrote the awk. I cannot read most of this code. This wasn't possible for me a year ago.<p>2. Heavily inspired by Pi (pi.dev) — same 7-tool surface, same exact-text edit model. Credit where it's due. Pi is awesome -- you should probably use them.<p>The agent loop itself is tiny. Almost everything else in a "real" agent CLI is DX and hardening. You can probably build your own harness exactly how you like it. Mario Zechner's AI Engineer talk on taking back control of your tools nudged me here.<p>The name is because it's a .sh file. The other thing it sounds like is, regrettably, also accurate.
Utilyze measures how efficiently your GPU is doing useful work
Hacker News (score: 33)[Other] Utilyze measures how efficiently your GPU is doing useful work
Haskell: Debugging
Hacker News (score: 15)[Other] Haskell: Debugging
Kubereboot/Kured: Kubernetes Reboot Daemon
Hacker News (score: 15)[Other] Kubereboot/Kured: Kubernetes Reboot Daemon
Durable queues, streams, pub/sub, and a cron scheduler – inside your SQLite file
Hacker News (score: 116)[Other] Durable queues, streams, pub/sub, and a cron scheduler – inside your SQLite file