AmplifierSkills and tools for thoughtful work

Skill

Desktop Tasks

Finish the task. Check the screen that proves it.

For people asking an agent to work in desktop apps. Desktop Tasks makes the agent use observed controls, stay within a clear action budget and verify the final state before calling the work complete.

What you getFictional illustration
Task: show newest items first
Observed: sort menu offers “Newest first”
Attempted: selected that option
Verified: selected label changed; top item has the newest date
Remaining: none within this bounded task

If the list did not change: refresh the observation before another action.

Fictional interaction receipt. No real application was operated to create this illustration.

Know whether it worked

Separate a click that was attempted from a change that was actually visible afterward.

Recover from uncertain screens

Re-observe when labels and pixels disagree, and stop repeated actions from compounding an ambiguous result.

Use the tools you already have

Apply the method through an available host computer-use tool; install the native adapter only if needed.

The film

A click is not a change.

In 72 seconds, an agent clicks where the menu was yesterday and says done, while Dunn the bobblehead nods and the list never moves. Desktop Tasks names the finish line before the first click, reads the screen two ways and acts when they agree, then looks again for proof. When a success shows no visible change, it looks twice at most, then stops and tells you. Captions are on the player; a transcript is below.

Download the film 15-second cut Captions
Read the transcript

You ask your agent to sort a list, newest first. Dunn nods at anything.

The agent clicks where the menu was yesterday.

It says done. Dunn nods. The list hasn’t moved.

Desktop Tasks names the finish line before the first click.

It reads the screen two ways, picture and labelled controls, and acts when they agree.

It looks again. The newest task is on top, and the receipt says how it knows.

Success with no visible change is ambiguous. It looks twice at most, then stops and tells you.

It needs a computer-use tool and your permission. Its tests ran on a pretend desktop.

On screen: A click is not a change.

Desktop Tasks. Finish the task. Check the screen that proves it.

The task app and its list are a fictional example. The film shows how the skill behaves; it does not report results.

See the work take shape.

Fictional interaction receipt. No real application was operated to create this illustration.

Name the finish line

Specify the application, authorized change and visible state that would establish success.

Fictional example

Confirm a changed sort order

The brief Use Desktop Tasks to change the sort order in a fictional task app to newest first. First name the visible success condition. Use fresh observed controls, verify the resulting order and report any step you cannot confirm.

Before

An automation clicks a remembered button location and assumes a form saved.

After applying the method

A fresh labeled target and the saved-state confirmation establish what changed.

Observed post-state separates an attempted interaction from completed work.

A clear job.
A useful stopping point.

Operate an application through an available computer-use surface.

Use it when

  • You need an agent to complete a bounded task in a desktop application.
  • A click can succeed without saving the intended change.
  • A workflow needs explicit recovery and stop conditions.

Choose another route when

  • Granting desktop permissions or supplying a missing computer-use tool.
  • Blind replay of remembered coordinates.

Plan

The task spans several app states.

An observable target and bounded action plan.

Operate

The target and authorization are clear.

Observed actions with post-state evidence.

Recover

The action result is ambiguous or blocked.

A fresh observation, safe recovery or explicit stop.

Read the canonical method

Desktop Tasks

Use the host computer-use tool that is actually available. This package supplies the operating method; it does not grant desktop access or invent missing tools. Prefer a purpose-built API when it can complete the requested operation.

Plan: identify the application, desired final state, user authorization and observable success condition. Keep the supplied native 20-action/2-retry defaults unless the task calls for another bounded budget. Count actions and report partial work when the budget ends.

Operate: read references/dual-world-reasoning.md and references/action-confidence.md. Use accessibility data to identify a control, then confirm it against the visible state. Coordinate-only actions require a current screenshot. If the two views disagree, re-observe before acting. Follow the host's own reference and permission rules.

Recover: read references/recovery-patterns.md only when needed. A success return without the expected post-state is ambiguous. Re-observe at most twice for one uncertain step, then stop or use an evidenced alternative. Do not repeat a consequential submission merely because its response was unclear.

Record what was observed, attempted and verified. A fixture pass proves backend plumbing only. The retained native modules/tool-cua contains real platform backends and a deterministic FixtureBackend; installation of that optional adapter does not demonstrate live OS permission or physical task acceptance.

Limits and prerequisites
  • Real desktop execution requires an available host tool and platform permissions; the fixture is a simulation.

Your first useful run.

Choose one small app task with an unmistakable visible finish line.

The download contains the complete skill folder. Extract it into the skills directory supported by your agent, keeping its references and license together. Or use the source installer below. Python 3.11+ is required for that installer.

Start from the public source

git clone https://github.com/michaeljabbour/amplifier-skill-desktop-tasks.git
cd amplifier-skill-desktop-tasks
python3 scripts/capability.py install --dest ~/.agents/skills
Native tools and optional execution
python3 -m pip install ./modules/tool-cua

These commands are for the optional native surface. Follow its installation guide and prerequisites; portable method installation is separate.

Keep the complete skill folder together, including its references and license. The host applies the method in your context; the skill does not start a background service.

  • Python 3.11 or later is required by the portable install/build helper. The installed method runs through your agent host.
  • The method needs an agent host with computer-use tools and the necessary OS permissions.
  • The optional tool-cua package supplies platform backends; fixture tests alone do not establish live desktop access.
  • Installing the skill does not change application state.

Try this with your agent

Use Desktop Tasks to change the sort order in a fictional task app to newest first. First name the visible success condition. Use fresh observed controls, verify the resulting order and report any step you cannot confirm.

Use after installing in a host that loads skill folders. Supply your own task files and review the result.

Know what you can rely on.

Native backend and fixture checks cover action plumbing and recovery logic. Live OS permissions and a successful task in your selected application remain a separate check.

Read the checks and their scope
  • Functional acceptance — passed

    143 native tests passed; fixture/backend tests do not establish OS permission or live task acceptance.

  • Native host acceptance — not-run

    No live model, real desktop transaction, invitation, deployment or production data migration was performed by this functional baseline.

Source and conformance checks are separate from demonstrated benefit. Comparative effectiveness and outside-user outcomes are not established by this site.

Fictional examples explain the capability. Tests check the stated behavior. Outside-user outcomes need their own evidence.