Frameworks fit when
- The agent is a low-risk assistant or demo.
- Credentials, network paths, and audit trails are not material.
- The framework's own logs are enough.
skiff gives operators a control plane around agent frameworks when workloads involve credentials, network access, money, medical or legal documents, cloud admin, local files, or desktop workflows.
Agent frameworks decide what the agent tries to do. skiff is for operators who also need a stable place to define what the agent can reach, which credentials it can use, what gets redacted, what gets reviewed, and what evidence remains after the run.
Agent payload, local control plane
Bring the agent framework your team already uses.
Force traffic through a proxy path where wired.
Keep credentials as handles outside the agent process.
Record requests and decisions under operator control.
$ skiff serve --mitm
payload: agent framework selected by operator
network: routed through skiff proxy where forced mode is wired
records: local proxy rows, redaction, dashboard
Launch surface. Proxy audit rows, redaction, self-hosted dashboard, and the skiff serve --mitm forced-routing path are the public claims. Broader product surfaces and judge-gated decisions are preview claims under release verification; native iOS/macOS credential backends and production rollback evidence are still closing.
The preview path is for developers and security evaluators who want to inspect the source, start the local dashboard, and review the wired proxy/audit code paths before a sales conversation. Treat it as preview: useful for evaluation, not a GA production promise.
$ git clone https://github.com/tmc/skiff
$ cd skiff
$ ./scripts/demo-oob.sh --keep-running
# open http://localhost:8090/app
Agent frameworks are moving fast. One week the payload is Claude Code, the next it is OpenClaw, NemoClaw, NanoClaw, OpenShell, Gemini CLI, or something new. skiff assumes the payload will change. The durable layer is what the operator must still own: policy, credentials, network control, audit, lifecycle, and isolation.
Model vendors, browser-agent infrastructure, and computer-use platforms will keep improving. skiff gives regulated teams and privacy-sensitive operators one local control plane around whichever payload wins, without making a hosted sandbox the trust boundary.
skiff does not compete on model quality. If a model-vendor agent wins, skiff still supplies local execution posture, routed egress, brokered secrets, and operator-owned records.
Browser automation can be one payload. Desktop apps, terminals, native tools, and cove-backed Mac runs need the same policy model as support lands.
skiff focuses on the controls around execution: credential handles, network paths, audit rows, redaction, escalation, and customer-controlled Macs, Linux hosts, or tenant hardware when hosted sandboxes are the wrong trust boundary.
Give developers agent freedom without letting prompts decide egress, credentials, or audit posture.
Run agents against GitHub, CI, cloud consoles, terminals, and incidents with routing, logs, and secret handling.
Put money, medical, legal, and family/work data workflows on customer-controlled hardware instead of a model vendor's cloud.
Keep building the payload. skiff supplies policy, network, credentials, audit, lifecycle, and isolation around it.
It opens GitHub, CI, cloud consoles, terminals, and logs. skiff's job is to keep the network path, credential handles, and action records outside the prompt.
Bank, Stripe, QuickBooks, invoices, payouts, and statements are obvious automation targets. They are also where browser state and credentials need local control.
When the payload leaves browser automation and touches desktop apps, files, or screenshots, skiff can pair with cove for a disposable macOS run.
Insurance portals, lab PDFs, claims, scheduling, and provider messages are useful automation targets precisely because they are messy and sensitive.
Contracts, NDAs, cap tables, email attachments, and shared-drive exports need a clear action trail and a boundary between prompt context and source material.
Taxes, medical bills, school forms, subscriptions, travel, and home services are where consumers want help but do not want a cloud agent holding every secret.
The runtime model targets OpenClaw, NemoClaw, NanoClaw, OpenShell, Claude Code, Gemini CLI, and future frameworks as swappable payloads as support is added.
skiff manages lifecycle, network routing, proxy audit rows, redaction, and local dashboard state outside the agent's prompt context.
The device credential backend shape keeps sensitive material out of the agent container; polished iOS Secure Enclave and macOS Keychain paths are Phase B1.
When the payload needs a real Mac, cove can provide a disposable macOS environment with rollback and control surfaces.
For high-risk automations, the valuable layer is not another prompt wrapper. It is the machinery that decides what the payload can reach, how credentials are presented, what gets redacted, and what the operator can review after the run.
Proxy rows, redaction, and forced routing give the operator a path to see and constrain network activity before the agent becomes a production actor.
The planned iOS companion app turns the phone into a consent and secret-management surface: approve, proxy, or deny sensitive steps without handing raw credentials to the payload.
When a task needs a real Mac, skiff can move the payload into a cove-backed disposable environment so policy and rollback share one run record.
Policy review belongs at substrate decision points: tool calls, memory writes, chat sends, scheduler actions, and state transitions, not inside the payload prompt.
serve --mitm path.skiff serve --mitm path is the claim; ncd --demo, skiff send, and other spawn paths remain closure work.skiff fits when the useful agent workflow also needs controls outside the agent framework: network paths, credential handles, policy checks, lifecycle, and local audit around the payload.
They may not ask for local agent runtime infrastructure by name. They do ask for agents that can handle money, medical paperwork, legal documents, cloud admin, and private desktop workflows. Those are exactly the workflows where credentials, screenshots, files, and audit trails matter.
They may build parts. skiff assumes their agents may win and treats them as payloads. The durable product is customer-controlled execution around the model: policy, credentials, network control, audit, lifecycle, and isolation on hardware the operator controls.
No. OpenClaw, NemoClaw, NanoClaw, OpenShell, Claude Code, Gemini CLI, and future runtimes are the payload layer. skiff is the local control plane around them when the operator needs a stable safety, network, and audit model.
skiff does not try to be the smartest agent. It is the control plane that still matters when the smartest agent changes.
skiff exists because agent frameworks change quickly. The durable layer is what they all need around them: policy, credentials, network control, audit, lifecycle, and isolation on hardware the operator controls.
source github.com/tmc/skiff
docs safety posture, verification report, and launch FAQ available on request
contact travis@tmc.dev