Skip to content
Agentmart
Submit a tool

footwork-tools

Equip an agent with observation and action tools for browser UI, native Mac apps, terminals/services, and saved artifacts.

Skill by Tom-R-Main

IndexedMIT★ 1
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/tom-r-main-footwork-tools

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Equip an agent with observation and action tools for browser UI, native Mac apps, terminals/services, and saved artifacts. Use when tstack needs hands and eyes, Footwork operator commands, or evidence carried between contexts.

Use cases: design, agent-building

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/footwork-tools

What's inside

Skill name
footwork-tools
Description
Equip an agent with observation and action tools for browser UI, native Mac apps, terminals/services, and saved artifacts. Use when tstack needs hands and eyes, Footwork operator commands, or evidence carried between contexts.
License
MIT
Instructions
37 lines in SKILL.md · view on GitHub

Files (5)

  • LICENSE
  • SKILL.md
  • openai.yaml · agents/
  • contexts.md · references/
  • upstream-license.txt · references/

SKILL.md (first lines)

# Give the agent a usable surface

Choose tools that let the agent observe, act, and read back the result on the task's actual surface. Footwork supplies a concrete native/browser operator CLI and source-bound handoffs; the host's existing tools cover other contexts. A workflow description alone does not supply a working driver.

## Select and establish access

Read the applicable host tool skill and the project's launch/verification recipe. Discover the actual callable tools and installed executables; a skill in the catalog or source in a checkout is not proof of runtime access. Preserve an explicitly requested browser, app, profile, or driver. For semantic data operations, prefer the applicable connector/API/CLI; for UI behavior, exercise the UI. Do not substitute an API call for a required UI journey.

| Context | Eyes | Hands and route |
|---|---|---|
| Existing browser session or signed-in UI | DOM/accessibility snapshot, visible text, screenshot; supported console/network evidence when relevant | Installed Browser/Chrome skill and its documented tab API. On Claude, use the available browser skill/tool rather than assuming Codex APIs. Preserve the user's selected browser. |
| Disposable local web test | Fresh page snapshot, screenshot, errors and response/readback | Project Playwright harness or available Playwright tools when the host's browser rules permit; isolated test data/profile. |
| Native Mac app | Footwork `apps`, `menu`, session `look`, menu-bar paths, screenshots and action receipts | Footwork `start --app`, then `do` on fresh observed IDs. Read [local commands](references/contexts.md) before using it. The host's Computer Use skill is another driver when available and appropriate; follow its runtime and targeting rules. |
| Footwork's own browser | Bound tab's current DOM/menu, page text, screenshots and receipts | Footwork `start --browser`, then `look`/`do`; distinct profile, not a way to inherit the user's sign-in or switch away from a requested browser. |
| CLI or service | stdout/stderr, exit code, health/version, response and resource readback | Host shell/exec tool and project public CLI/API commands. Footwork does not supply a general terminal or service adapter. |
| Saved document, file, image, or media | Read saved content, render/view it, inspect the actual artifact | File tools or the installed document/media skill. For a plain-text value carried by Footwork, `check-file`; for exactly one preserved append, snapshot first and check with `--appended`. |
| Browser-to-app or another context handoff | Source value plus resource, element, observation and step; destination readback | Footwork `read --as NAME`, then `do type/append ... @NAME --from SOURCE_SESSION`; verify the destination separately. Other drivers must preserve equivalent provenance rather than inventing a Footwork session. |

Before the first consequential action, establish a fresh observation of the target and a working action route. Use an already-observed target; do not click guessed IDs or coordinates. Footwork IDs can renumber between commands; prefer an unambiguous observed label resolved on the fresh observation when that command supports it. A launcher/help check establishes executable access only. A health check establishes process readiness only. A real observation establishes what this driver can see now. Report which of those were actually checked.

When access is missing, name the missing executable, permission, profile, connection or unsupported capability. Use an already authorized matching tool when possible; do not silently install/fetch, read key files, start paid providers, or widen OS permissions to make a route work. Never call an untested surface ready.

## Observe, act, read back

Identify the app/window/tab/resource and run-owned session/output before driving. Keep one owner of shared UI state; a verifier must not fight another driver. Start Footwork in a fresh explicit session directory: `start` resets files in that directory. Keep `background_only` unless the task already authorizes broader desktop control.

Observe current state, choose one bounded action, dispatch through the selected driver, then obtain a fresh observation and the requested postcondition. Interpret delivery and receipts at their actual scope. Footwork `do` can exit 0 after a refused or unobservable dispatch; inspect its driver effect, receipt and readback rather than treating the exit status as success. If dispatch is uncertain, reconcile before retry, including before switching drivers. Do not bypass Footwork's gate with `--no-judge` or move to a different tool to evade a refusal.

Carry values between contexts with their source and timestamp/step. A stored carry describes what was read then; it does not promise that the source is unchanged now. Never fabricate a carry from model guesses or transplant IDs between surfaces. For a real Footwork run, use `read`; synthetic carries are appropriate only in explicitly labeled offline harness tests. Recheck the source when freshness matters and verify the exact destination separately. Native and browser `append` have different separator behavior; specify the intended final text and check it rather than assuming a common append contract.

Record commands/actions and selected observations needed to reproduce the result. Keep private captures within the authorized task's ignored/private output; do not collect unrelated screens or secrets. Retain limitations when a driver sees only a subtree, bounded text, viewport, or partial event stream.

Footwork's optional capture helper can journal actions, snapshots, supported network events and gaps around an already selected tab. Use it only through a host-permitted adapter; it neither launches a browser nor grants UI access. See [context-specific mechanics](references/contexts.md) for the module and its constraints.

Then use [pstack-verify](../pstack-verify/SKILL.md) to judge the promised outcome. Adding this skill equips routing and concrete commands; it does not register an MCP server, activate a remote relay, launch a provider, or prove every driver works live.

From Tom-R-Main/siftable-skills, MIT.

More from Tom-R-Main/siftable-skills

Signals

Stars
1
Forks
0
Open issues
0
Last commit (this folder)
Oct 12, 2026 (17 days ago)
Last release
Aug 14, 2026 (2 months ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from Tom-R-Main

Cite this page

footwork-tools skill. Agent Mart. https://agentmart.dev/skills/tom-r-main-footwork-tools (last updated 2026-10-24)