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.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. RepeatThat 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.But the OS already exposes structured UI information: - macOS: Accessibility API - Windows: UI Automation - Linux: AT-SPI 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.So I built a desktop equivalent: agent-desktop.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.A typical loop looks like this: agent-desktop snapshot --app Slack -i --compact agent-desktop click @e12 agent-desktop type @e5 "ship it" agent-desktop press cmd+return So the loop becomes: 1. Snapshot 2. Decide 3. Act 4. Snapshot again The main design problem was context size.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.The approach I ended up using is progressive skeleton traversal: - First pass: return a shallow tree, typically depth 3, with deeper containers truncated and annotated with children_count - Named containers get references
FL score
out of 100
Verdict
high confidence
Competition
No competitor data yet
Trend
No signal yet
A structured desktop automation API that replaces fragile pixel-based computer vision with OS-native accessibility trees, enabling faster, cheaper, and more reliable AI agent interactions with native applications.
The pain
The gap
Build angle
Strengths
- Solves a real, measurable problem (token cost, latency, reliability) with elegant technical design
- Cross-platform from day one (macOS, Windows, Linux)
- Minimal dependencies (15MB single binary) = easy adoption
- Progressive skeleton traversal is a clever solution to context explosion
- Early traction (122 GH stars in 1 month) validates market interest
- Timing perfect: computer-use agents are hot, infrastructure gap is obvious
- 53 well-designed commands suggest thoughtful API design
Risks
- Accessibility APIs are OS-specific; maintenance burden grows with OS updates
- Adoption depends on agent framework integration, needs buy-in from major players
- Market may consolidate around closed-source solutions (Claude, OpenAI) that build this in-house
- Enterprise customers may demand support/SLAs before adopting
- Limited to apps that expose accessibility trees; some legacy/custom apps may not cooperate
- Monetization unclear, infrastructure tools have low margins unless bundled with services
- Competition from vision-based approaches improving rapidly (multimodal models getting better)
Fly Labs Method
Is the pain real, is there a gap, is it the right time, can one person build it.
Value Equation
Dream outcome and how likely it feels, against the time and effort it costs.
One-Person Business
Curiosity pull, identity fit, and a path from free value to paid for a solo creator.
Viral Frameworks
Hook strength, shareability, and how cheaply it can be tested.
Builder Lens
Evidence the problem exists, timing, defensibility, and a model that fits on a napkin.
Five lenses, one composite. How scoring works
The angle
No market research recorded for this idea yet.
Semble – Code search for agents that uses 98% fewer tokens than grep
Hey HN! We (Stephan and Thomas) recently open-sourced Semble. We kept running into the same problem while using Claude Code on large codebases: when the agent can't find something directly, it falls back to grep, reading full files or launching subagents. This uses a lot of tokens, and often still misses the relevant code. There are existing tools for this, but they were either too slow to index on demand, needed API keys, or had poor retrieval quality.Semble is our solution for this. It combines static Model2Vec embeddings (using our latest static model: potion-code-16M) with BM25, fused via RRF and reranked with code-aware signals. Everything runs on CPU since there's no transformers involved. On our benchmark of ~1250 query/document pairs across 63 repos and 19 languages, it uses 98% fewer tokens than grep+read and reaches 99% of the retrieval quality of a 137M-parameter code-trained transformer, while being ~200x faster.Main features:- Token-efficient: 98% fewer tokens than grep+read- Fast: ~250ms to index a typical repo on our benchmark, ~1.5ms per query on CPU (very large repos may take longer)- Accurate: 0.854 NDCG@10, 99% of the best transformer setup we tested- MCP server: drop-in for Claude Code, Cursor, Codex, OpenCode- Zero config: no API keys, no GPU, no external servicesInstall in Claude Code with: claude mcp add semble -s user -- uvx --from "semble[mcp]" sembleOr check our README for other installation instructions, benchmarks, and methodology:Semble: https://github.com/MinishLab/sembleBenchmarks: https://github.com/MinishLab/semble/tree/main/benchmarksModel: https://huggingface.co/minishlab/potion-code-16MLet us know if you have any feedback or questions!
AI
Postgres extension for BM25 relevance-ranked full-text search
Last summer we faced a conundrum at my company, Tiger Data, a Postgres cloud vendor whose main business is in timeseries data. We were trying to grow our business towards emerging AI-centric workloads and wanted to provide a state-of-the-art hybrid search stack in Postgres. We'd already built pgvectorscale in house with the goal of scaling semantic search beyond pgvector's main memory limitations. We just needed a scalable ranked keyword search solution too.The problem: core Postgres doesn't provide this; the leading Postgres BM25 extension, ParadeDB, is guarded behind AGPL; developing our own extension appeared daunting. We'd need a small team of sharp engineers and 6-12 months, I figured. And we'd probably still fall short of the performance of a mature system like Parade/Tantivy.Or would we? I'd be experimenting long enough with AI-boosted development at that point to realize that with the latest tools (Claude Code + Opus) and an experienced hand (I've been working in database systems internals for 25 years now), the old time estimates pretty much go out the window.I told our CTO I thought I could solo the project in one quarter. This raised some eyebrows.It did take a little more time than that (two quarters), and we got some real help from the community (amazing!) after open-sourcing the pre-release. But I'm thrilled/exhausted today to share that pg_textsearch v1.0 is freely available via open source (Postgres license), on Tiger Data cloud, and hopefully soon, a hyperscalar near you:https://github.com/timescale/pg_textsearchIn the blog post accompanying the release, I overview the architecture and present benchmark results using MS-MARCO. To my surprise, we were not only able to meet Parade/Tantivy's query performance, but exceed it substantially, measuring a 4.7x advantage on query throughput at scale:https://www.tigerdata.com/blog/pg-textsearch-bm25-fu
AI
Consus (YC F24) – LLM gateway for companies handling sensitive data
Hey Hacker News! I'm Eric, the founder of Consus. We route all AI requests to ITAR restricted and controlled unclassified information (CUI) compliant infrastructure. Consus itself satisfies ITAR restrictions, and we recently completed our FedRAMP equivalency audit against the 410 FedRAMP High controls. FedRAMP High is the U.S. government’s strictest security baseline for cloud services handling sensitive unclassified data. A breach of this data could cause severe or catastrophic harm. Achieving FedRAMP equivalency, or authorization, is required before processing CUI information.Demo: https://youtu.be/6MYxJe6P4oYAerospace and defense is experiencing rapid growth. Unfortunately, most companies are struggling to use AI because of necessary data protections & compliance risk. These companies can move even faster if they could use the AI tools that most other industries take for granted.I spent most of my career prior to Consus in aerospace & defense. I launched national security payloads at SpaceX, and was an early employee at Castelion. I’ve watched first hand how compliance red-tape makes it difficult for companies to adopt new technologies and trust vendors that touch their sensitive data. For example, I worked with a satellite manufacturer that doesn’t allow any AI tools, even for non-sensitive work.Even as AI has become extremely useful over the past 9-12 months, I was surprised by how many aerospace & defense companies refused to touch it. They could see how it could be helpful, but they were scared about model providers training on their data, violating an ITAR rule, or risk losing new business because of a failed cyber assessment. These are all rational fears.There were a lot of ways to solve some/all of these problems, but we focused on building a compliant AI inference layer that can "plug" into any AI tool or workflow. Just as OpenRouter integrates with most tools, Consus can connect to tools like ChatGPT or Clau
AI
Questions about this idea?
FlyBot reads the scoring and gives you a second opinion on “Agent-desktop – Native desktop automation CLI for AI agents”.