Video yükleniyor...

Video Yüklenemedi

Ana Sayfaya Dön

Introducing agent-desktop Computer use for your agents ▲ E2E test desktop apps with agents ▲ Reads apps via the accessibility tree ▲ Drills into part of a window to save tokens ▲ Runs many agents on one app at once ▲ Works on macOS, Windows & Linux npm i...

70,781 görüntüleme • 20 saat önce •via X (Twitter)

49 Yorum

Lahfir ▲ profil fotoğrafı
Lahfir ▲20 saat önce

1/ Skeleton based drilling Agents don't need to see the whole screen, instead of exposing the entire screen, they can now drill through into only what they want.

Lahfir ▲ profil fotoğrafı
Lahfir ▲20 saat önce

2/ Multi-agent Run several agents on one desktop. Start a session with --multi-agent and give each agent an --agent-id. Each one gets its own cursor and label, so you can see who is doing what.

Lahfir ▲ profil fotoğrafı
Lahfir ▲20 saat önce

3/ Headless and headed Headless by default with an exception to few commands - `drag, menus, surfaces`

Lahfir ▲ profil fotoğrafı
Lahfir ▲20 saat önce

4/ With agent-browser agent-desktop pairs with agent-browser. agent-browser drives the web. agent-desktop drives native apps. Together your agent gets reliable computer use across the browser and the desktop.

Lahfir ▲ profil fotoğrafı
Lahfir ▲20 saat önce

Your agents can run agent-desktop in a Vercel Sandbox too. Start a Linux desktop in the cloud, run agent-desktop inside it, and get JSON back.

Lahfir ▲ profil fotoğrafı
Lahfir ▲20 saat önce

A ▲ Labs Experiment. Give your agents hands today npm i -g agent-desktop

Haki profil fotoğrafı
Haki19 saat önce

shoutout to @vercel team for making agent-browser

andré valle profil fotoğrafı
andré valle19 saat önce

reading apps through the accessibility tree is the smart move. way more reliable than guessing from screenshots

heath profil fotoğrafı
heath19 saat önce

I built helix, a personal tool to manage my AI agents, so I’m curious: what happens if two agents try to change the same app state at once?

Pranit profil fotoğrafı
Pranit19 saat önce

Yes sirrrrrr

Lahfir ▲ profil fotoğrafı
Lahfir ▲19 saat önce

lessgoo

Patrick profil fotoğrafı
Patrick17 saat önce

For those of you who might be using @omarchy tell Claude to "fork the repo and start installing and testing. Then every time you runs into an error or a limitation, code a solution and retest. Keep testing until the entire stack works" Thank me later.

Jeremiah profil fotoğrafı
Jeremiah18 saat önce

Tried it with Zed and it fumbled working in the background. MacOS Harness works better...

Lahfir ▲ profil fotoğrafı
Lahfir ▲18 saat önce

Was it taking the focus?

Jeremiah profil fotoğrafı
Jeremiah17 saat önce

It was at first and in the background it couldn't type into Zed since Zed exposes no accessibility ref for the editor while MacOS Harness sends keys straight to Zed's process. I had told it "open Zed and type out a joke then save it as a file."

Lahfir ▲ profil fotoğrafı
Lahfir ▲17 saat önce

'osascript' which I believe is what macos harness does, we should explore this. Thanks for the feedback

CoArena (YC S26) profil fotoğrafı
CoArena (YC S26)13 saat önce

The window drill-down is a useful detail. Would love to see full-window vs drilled-down token counts at the same task completion rate, including screenshot fallbacks when controls are missing from the accessibility tree.

Juan Pinzón profil fotoğrafı
Juan Pinzón15 saat önce

There is focus problems on other frameworks using the accessibility tree any progress on this end?

Olgun profil fotoğrafı
Olgun19 saat önce

was thinking about to build something like that, awesome work

Pete Sena profil fotoğrafı
Pete Sena18 saat önce

Epic! There goes my whole weekend. LFG

Salem Sayed 🔻 profil fotoğrafı
Salem Sayed 🔻11 saat önce

Hoping for hyperland support soon

adam profil fotoğrafı
adam18 saat önce

nice work

Lahfir ▲ profil fotoğrafı
Lahfir ▲18 saat önce

Thanks

Harsh Raj profil fotoğrafı
Harsh Raj18 saat önce

this is sick. what does it do on apps with half-labeled accessibility trees, fall back to screenshots?

Lahfir ▲ profil fotoğrafı
Lahfir ▲18 saat önce

It's like a iframe issue in web. Doesn't fallback automatically but you can get it working using --headed It's a really good surface to work on. Getting it working for poor accessible elements would be a banger

Harsh Raj profil fotoğrafı
Harsh Raj17 saat önce

ah got it, the iframe analogy helps. pretty cool shit you're working on. getting it to handle poorly labeled elements would be huge.

Lahfir ▲ profil fotoğrafı
Lahfir ▲17 saat önce

🫡

Anjana Supun profil fotoğrafı
Anjana Supun19 saat önce

This should be good

Marco D'Alia profil fotoğrafı
Marco D'Alia11 saat önce

great! will it works with agent-browser? Meaning it could for eg operate the browser and other apps together with an unified interface?

Lahfir ▲ profil fotoğrafı
Lahfir ▲11 saat önce

Yes! agent-desktop -> desktop apps, agent-browser -> browser surfaces / chromium apps

Marco D'Alia profil fotoğrafı
Marco D'Alia9 saat önce

nice, thanks!

Lucas Young profil fotoğrafı
Lucas Young10 saat önce

Drilling into just the place card (45 refs vs 75 for the whole window) is the part I want for long desktop runs. Couldn't try it on our headless Linux box yet since there's no AT-SPI bus there

Taesu profil fotoğrafı
Taesu19 saat önce

👀

Esteban Suárez profil fotoğrafı
Esteban Suárez15 saat önce

huge

Bragifer profil fotoğrafı
Bragifer11 saat önce

Running many agents on one app makes state isolation part of the test design. If one changes the screen while another asserts against it, a failure may reflect the test setup rather than an app bug.

Soph h profil fotoğrafı
Soph h19 saat önce

Great point!

Justin Wright profil fotoğrafı
Justin Wright15 saat önce

@bot check this out

Juliano | Building easi.run profil fotoğrafı
Juliano | Building easi.run15 saat önce

Background input looks useful for shared browser workflows. How do you handle a person taking over while an agent has actions queued? I'd want an explicit pause/hand-back signal before those actions resume, especially around logins and forms.

383degrees profil fotoğrafı
383degrees13 saat önce

stop moving the mouse lol. use a grid

DataMining profil fotoğrafı
DataMining12 saat önce

yeah reading the accessibility tree instead of guessing pixels is overdue. curious how often screenshot loops still win once the UI gets weird.

Sacha profil fotoğrafı
Sacha10 saat önce

i'm tired of javascript boss

Adar profil fotoğrafı
Adar12 saat önce

Bro how does it compare to Cua Driver?

Brian Gruber profil fotoğrafı
Brian Gruber18 saat önce

What is this sorcery?!

Lucky · CypherMonkey🐒 profil fotoğrafı
Lucky · CypherMonkey🐒13 saat önce

Wowww

Shpeedle profil fotoğrafı
Shpeedle16 saat önce

nice man nice. how does it do with linux? I will have to try it out. I was doing something similar with boxcar: but I have not worked on it in a bit. Linux is a little trickier bc of wayland and an inconsistency in accessibility trees in app distributions.

Peter Prins profil fotoğrafı
Peter Prins8 saat önce

Wow, very cool! Looking forward to giving it a spin! Question: how does it handle permissions? E.g. How can I instruct it to never send e-mail or complete forms on websites?

Leo Piñeyro profil fotoğrafı
Leo Piñeyro16 saat önce

@ctatedev Really exciting stuff!

BreezeOg profil fotoğrafı
BreezeOg12 saat önce

accessibility tree instead of screenshots should save a ton of tokens

Danny Shmueli profil fotoğrafı
Danny Shmueli8 saat önce

Can it play an Unreal game for me? asking for my hospital game

Benzer Videolar