Borrowing it
Nothing to install: this file belongs to BariBariGood/manzanas. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/BariBariGood/manzanas/main/.agents/skills/lease-and-drive-a-sim/SKILL.mdgit clone --depth 1 https://github.com/BariBariGood/manzanasWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/baribarigood/manzanas/lease-and-drive-a-sim)<a href="https://agentmods.dev/skills/baribarigood/manzanas/lease-and-drive-a-sim"><img src="https://agentmods.dev/badge/skills/baribarigood/manzanas/lease-and-drive-a-sim/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/baribarigood/manzanas/lease-and-drive-a-sim"><img src="https://agentmods.dev/badge/skills/baribarigood/manzanas/lease-and-drive-a-sim.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00074 | $0.01448 |
| Opus 5 | $0.00037 | $0.00724 |
| Sonnet 5 | $0.00015 | $0.00290 |
| Haiku 4.5 | $0.00007 | $0.00145 |
Grade B, and why
lease-and-drive-a-sim scanned grade B with 2 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 12d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Sends data to an external URLmediumData exfiltration
A POST to an outside endpoint may be telemetry or may be exfiltration; either way the mod talks to somewhere, and you should know where.
L=$(curl -s -X POST $D/v0/leases -d '{ Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
curl -s $D/v0/healthz # {"ok":true,"version":"v0"} How it starts
The opening of the file, as written. The whole thing — 117 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Lease and drive a simulator
Talk to the daemon over HTTP (default port :7433). Every mutating op needs an
active lease; the lease ID is the capability token — never share it.
1. Find a target and acquire a lease
D=http://<mac-tailnet-ip>:7433
curl -s $D/v0/healthz # {"ok":true,"version":"v0"}
curl -s $D/v0/targets | jq '.targets[] | {udid,name,state,labels}'
Acquire by label (preferred — pins reset policy to a device class, not someone
else's sim). reset:"erase" guarantees the NEXT holder gets a clean target:
L=$(curl -s -X POST $D/v0/leases -d '{
"labels":["iphone-air"], "agent_id":"<caller-identity>",
"purpose":"<task>", "ttl_seconds":900, "reset":"erase"}')
LID=$(echo "$L" | jq -r .id); UDID=$(echo "$L" | jq -r .target_udid)
agent_id is the canonical caller-identity field (a session ID is a fine
value for it); the API also accepts session_id as an alias that fills
agent_id when it is empty. Omitting both is 400 bad_request.
201+state:"active"→ proceed.202+state:"queued"→ pollGET /v0/leases/$LIDuntil active (polling keeps your queue slot; queued leases that go unpolled for 30 min are dropped).409 no_match→ no target carries those labels; re-check/v0/targets.- Renew at ~half TTL for long tasks:
POST /v0/leases/$LID/renew. - Interop: other (non-manzanasd) agents coordinate via
/tmp/manzanas_locks/file locks on the Mac — also writesim-<udid>there for the lease's duration and remove it when done.
2. Boot (asynchronous, gated)
curl -s -X POST $D/v0/targets/$UDID/boot -d "{\"lease_id\":\"$LID\"}" # 202
# poll until Booted:
curl -s $D/v0/targets | jq -r ".targets[] | select(.udid==\"$UDID\").state"
503 {"code":"overloaded"} means a host safety gate refused the boot (running
sim cap, load > 2x cores, or <5 GiB free disk) — back off and retry, or use
another host. Do NOT bypass with raw simctl boot.
3. Act — prefer composite + batch (fewer round trips)
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 12d ago First seen · 117 lines · 74 tokens per session scan B 243ff6e7e89c
lease-and-drive-a-sim is a skill published in the GitHub repository BariBariGood/manzanas (21 stars, last pushed 10d ago), licensed Apache-2.0. It adds 74 tokens to every session and 1,448 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it B with 2 findings (sends data to an external url, makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
ios-simulator-interaction
Interaction with the iOS simulator using iosef, a CLI optimized for agent usage. Use when building or testing changes on the iOS Simulator — viewing the screen, tapping buttons, reading accessibility trees, finding elements by selector, asserting UI state, scripting multi-step test flows, installing and launching…
testa
Autonomously E2E-test iOS apps in the Simulator — read the screen (accessibility tree OR on-device OCR), tap/type/swipe/drag-drop/pinch/rotate, manage apps, and assert results. Use when asked to test, QA, drive, or reproduce a flow in an iOS app/simulator (React Native, Expo, native SwiftUI, or any app).…
argent-test-ui-flow
Autonomously test an app UI (iOS or Android) by running interact-screenshot-verify loops using argent MCP tools. Use when testing UI flows, verifying login works, testing navigation, running end-to-end UI test scenarios, manual QA steps, visible UI changes, or visual behavior.
baguette
Drive iOS simulators programmatically via the baguette CLI — taps, swipes, multi-finger gestures, hardware buttons (Home / Lock / Volume / Action / Power), ASCII keyboard text, and frame capture, all without opening Xcode. Use when: (1) an agent needs to drive a booted iOS simulator from a script — tap a coordinate…
mobile-automation
Control Android and iOS devices, emulators and simulators — launch apps, tap, swipe, type, take screenshots, read the accessibility tree. Use when a task involves a mobile device or app, mobile UI testing, or reproducing a bug on a phone.
argent-create-flow
Create, record, edit, replay, or repair reusable Argent flow YAML files. Use when the user asks to record or replay a repeatable device path, set up profiling or an A/B comparison, or invoke the authoring engine behind argent-qa-flows. Also use before repeating three or more interactions. For one-off UI checks…