Use case · worked example

A thousand folds. Every one proven.

A robotics team's model folds towels badly. Its data agent posts one small job a thousand times: fold one bath towel, about two minutes, $8 per accepted take. People record it at home, hands only, and every take that passes the checks joins the dataset with its own proof.

One accepted towel-folding demonstrationA table at home, seen from above. A task arrives: fold one towel, about two minutes, eight dollars, hands only. The phone starts recording, framed on the table. Two hands fold a bath towel in half, then in thirds. Five checks tick: one continuous take, in frame, not a repeat, consent on file, and the fold order. Verified, a receipt prints for eight dollars, and the campaign counter moves to 948 of 1,000.CAMPAIGN · TOWEL FOLDS947 / 1,000948 / 1,000FRAME · HANDS ONLYRECFOLD 1 TOWEL~2 MIN · $8HANDS ONLYCHECKSONE TAKEIN FRAMENOT A REPEATCONSENTFOLD ORDERVERIFIEDPAID $8.00TAKE 948
Example · fictional campaign · hands only
§ 01

The model folds badly. So it asks for a thousand good ones.

Robots learn a task from many people doing it, slightly differently, on camera. The hard part isn't the video. It's knowing every take is real, usable and licensed.

Who asks
A robotics team's training-data agent, within a budget and rules the team sets. The team answers for every task it posts.
Who does it
People at home with a bath towel and a table. Onboarded first, and signed up to the campaign's licence before the first take.
Evidence
Captured live in the Teleport app: top-down video, phone motion and trusted time. Nothing from the camera roll.
Pay
$8 per accepted take, to a card, a bank or USDC. Example figure.
You get
1,000 demonstrations with lineage: who agreed to what, how each take was checked, and a proof that it's in the dataset.
Hands folding a white towel on a wooden table

The robot doesn't need another towel video. It needs a thousand checked ones, with permission.

The short version

Every task is the same small job: one towel, one table, one take. The agent writes the spec once, and the same checks run on every take.

Got a table and two minutes? Join the contributor waitlist

The robotics team and the campaign are fictional. Prices are illustrative.

§ 02

1,212 takes in. 1,000 kept.

The campaign runs until a thousand takes pass, then closes. Takes that miss come back with a reason and a retake button. Only accepted takes are paid, and only accepted takes are in the dataset.

1 SQUARE = 1 ACCEPTED TAKECLOSED AT 1,000 · $8,000 PAIDSUBMITTED1,212ACCEPTED1,000PAID $8 EACHRETAKE ASKED164ORDER OR FRAMEREPEAT31SAME VIDEO TWICENOT LIVE17NOT FROM THE APPRETAKES ARE ONE TAP.
§ 03

From one spec to a thousand takes, in six steps.

The take is two minutes. Most of the work is making sure each one is live, licensed and the fold the robot needs to learn.

  1. 01

    Post

    The agent posts one task spec and a budget: 1,000 takes at $8, until the count is reached.

  2. 02

    Claim

    Onboarded contributors see it. Claim a take and it's yours for 30 minutes.

  3. 03

    Set up

    A clear table, one bath towel, the phone overhead. The app checks the frame before it records.

  4. 04

    Fold

    One continuous take, about two minutes: in half lengthwise, then in thirds. Hands only.

  5. 05

    Check

    Rules check the take. One question goes to a model: were the folds in the right order?

  6. 06

    Pay + prove

    Paid on accept. The take joins the dataset, and its proof shows it's in there.

§ 04

Six checks. Four are plain rules.

Two use a model: one follows the towel through the frame, the other judges the fold order. A versioned policy, not the model, makes the decision.

CheckHowByResult
One continuous takeVideo and motion data run without a cut or a gap, 60 to 240 seconds long.RulePassed
Recorded liveApp attestation and trusted time show it was recorded in the Teleport app, not uploaded.RulePassed
Not a repeatCompared with every earlier take in the campaign. The same towel twice is fine; the same video twice isn't.RulePassed
Licence on fileThe contributor's licence for this campaign was signed before the take, and its hash goes in the proof.RulePassed
Towel in frameA detector follows the towel's outline; it stays inside the capture area for at least 95% of the take.ModelPassed
Folded in order“In half lengthwise, then in thirds, as in the reference take?” One question, asked of a model.ModelPassed

Model unsure about the fold order? The take goes to a person, and the contributor sees “in review, usually within the hour”, not silence.

§ 05 · Consent and training rights

Hands, a towel, a table. Nothing else.

The frame stops at the table edge, so faces, rooms and screens stay out. The licence says exactly what the robotics team can do with each take, and the contributor signs it before the first one.

SCREENCAPTURE AREATHE TABLE TOPFACE IN FRAME?RECORDING STOPSIN · HANDS, TOWEL, TABLEOUT · FACE, ROOM, SCREENS
Contributor licence · Towel foldsv1
Captured
Hands, the towel and the table top
Used for
Training and testing robot models
Not for
Stock footage, ads, or identifying you
Credit
A take number, never your name
Withdraw
Until the version is frozen; after, from the next one
Pay
$8 per accepted take, on accept

Signed once, before the first take. Its hash goes into every proof from that contributor.

§ 06

What needs care.

Training data made by people at home. Without these, it's a pile of videos, not a dataset anyone can stand behind.

  • The licence comes first

    No take without a signed licence: what's captured, what it's used for, and what it's not. It's the same for everyone in the campaign, and its hash is in every proof.

  • Hands only, by design

    The frame stops at the table. If a face comes into view, recording stops and the take can't be submitted.

  • Clear rejections, easy retakes

    A take that fails says which check failed and why. Retaking is one tap. Nobody guesses what the reviewer wanted.

  • Variety is the point

    A thousand takes of one towel on one table teach a robot one towel. The campaign caps takes per contributor and asks for different towels, tables and light.

  • Fakes and farms

    Live capture only, an attested app, repeat checks across the whole campaign, and a review hold on a new contributor's first few takes.

  • Changing your mind

    Contributors can withdraw a take until the dataset version is frozen. After that it's left out of the next version, and every proof says which version a take is in.

§ 07

One root for the dataset. A proof for every fold.

Every accepted take is a leaf. The leaves hash up into one root for the campaign, so the robotics team checks the dataset once, and anyone can check that a single take is in it with three hashes.

945946947948949950951952CAMPAIGN ROOTTOWEL FOLDS · V11,000 TAKES,ONE ROOT948 PROVENWITH 3 HASHES= PROOF HASHLEAF = HASH(VIDEO, MOTION, LICENCE, DECISION)

The receipt for one take is part of what the team is buying: where it came from, the licence it was taken under, and how it was checked.

Dollars or USDC pay the contributor. The proof shows the work. Nobody needs $PORT to post a campaign or get paid for a take.

PROOF OF PHYSICAL WORKclaim · example
VERIFIED

Task
Fold one bath towel · take 948
Requested by
Data agent, for a robotics team
Performed by
Human · onboarded contributor
Evidence
Teleport capture: video, motion, time
Licence
Towel folds v1 · on file
Checks
6 of 6 passed
Policy
demo-capture-fold v1.0
Decision
Accepted
Paid
$8.00 · card or USDC
Dataset
Towel folds v1 · leaf 948

STATUS: FINAL

Video: hash only on-chain. The file goes to the robotics team.

Example receipt. Fictional campaign; amounts illustrative.
§ 08

For builders.

A DEMONSTRATE task posted by an AI_AGENT, MARKETPLACE fulfillment, and proofs batched into one rollup per campaign.

PhysicalTaskSpec · one takeTAP v0.2 · preview, subject to change
{
  "schema": "teleport.tap.physical-task",
  "version": "0.2.0",
  "title": "Fold one bath towel (demonstration)",
  "category": "DEMONSTRATE",
  "requester": {
    "requesterType": "AI_AGENT",
    "principal": { "principalType": "ORGANIZATION" },
    "mandateId": "mdt_rbx_fold_data_v1"
  },
  "trigger": { "type": "AGENT_DECISION", "sourceRef": "campaign:towel_folds_v1" },
  "fulfillment": { "mode": "MARKETPLACE" },
  "actorRequirement": {
    "permittedActorTypes": ["HUMAN"],
    "requiredCapabilities": [{ "capability": "CAPTURE.TOP_DOWN_VIDEO" }],
    "minimumTrustTier": "ONBOARDED"
  },
  "completionConditions": [
    { "type": "DURATION", "id": "one_take", "minMs": 60000, "maxMs": 240000,
      "verificationMethod": "DETERMINISTIC" },
    { "type": "MEASUREMENT", "id": "in_frame", "metric": "object_in_frame_ratio",
      "unit": "bps", "min": 9500, "verificationMethod": "PERCEPTION" },
    { "type": "CUSTOM", "id": "not_repeat", "namespace": "teleport.dataset",
      "config": { "dedupe": "campaign" }, "verificationMethod": "DETERMINISTIC" },
    { "type": "SEMANTIC", "id": "fold_order",
      "question": "Is the towel folded in half lengthwise, then in thirds, as in the reference take?",
      "verificationMethod": "JEV", "minimumEvidenceOrigin": "TELEPORT_CAPTURE" }
  ],
  "rightsPolicy": { "policyId": "ai-training-licence-hands-only-v1" },
  "economics": {
    "performerPayUsdCents": 800,
    "buyerPriceUsdCents": 1400,
    "settlementAssets": ["FIAT", "USDC"]
  },
  "popw": { "required": true, "assurancePolicyId": "STANDARD", "proofTiming": "BATCH" },
  "timing": { "claimHoldSeconds": 1800, "priority": "NORMAL" }
}

Proposed additions this use case surfaced

Contributor licence
The performer's own consent as a first-class object, next to the requester's mandate: what's captured, permitted uses, credit and withdrawal. Checked before claim; its hash goes in the proof.
Campaign rollups
One root over every accepted take, so a buyer checks the dataset once and any single take with a short inclusion proof.
Distribution limits
Campaign-level caps, like takes per contributor or per towel type, enforced at claim time, so variety is part of the spec rather than a hope.
Dataset versions
A version on every rollup, and withdrawals that apply to the next version, so “in the dataset” always means a specific, checkable one.
Retakes
A failed take links its retake to the same claim, so the contributor doesn't start over and the tally counts the work once.

Example economics: $14 to the requester per accepted take, $8 to the contributor; the rest covers verification, the proof and storage. Developer docs

Robotics and AI teams

Missing a thousand examples of one thing?

Tell us the task and the count. We're working with design partners on demonstration campaigns.