{ "$type": "com.fedfork.exec.wasm.module", "name": "agents", "module": { "$type": "blob", "ref": { "$link": "bafkreiceg7xnpbpqty3lzozpbgbpxj2jxu446ycoyjzbgb6uyhmxaqoa3e" }, "mimeType": "application/wasm", "size": 169658 }, "abi": "emdash-wasm-json-v1", "source": { "uri": "at://did:plc:ocnuqjlzgohypj3zoznermms/com.fedfork.exec.source.manifest/agents.1794339611785", "cid": "bafyreige2qsizc4ofdyon7caqcfdfdn66ak3wfl3mahjpzg75cgg6u5n7e" }, "actions": [ { "entry": "launch", "label": "Launch an agent", "description": "Create the com.fedfork.agents.launch record (its rkey is the launch id), mint -. on atirc, run a requester contract that keeps the VM, write the token and the agent unit over ssh and start it.", "fields": [ { "key": "bidders", "label": "Bidder DIDs" }, { "key": "user_data", "label": "cloud-init user data (iroh or webrtc ssh)" }, { "key": "via", "label": "iroh or webrtc" }, { "key": "name", "label": "Agent name" }, { "key": "agent", "label": "Agent command (default: atirc agent run)" }, { "key": "exp_s", "label": "Token lifetime (s)" } ] }, { "entry": "status", "label": "Agent status", "description": "The launch record and one read of the guest's reports (terminated or not).", "fields": [ { "key": "rkey", "label": "Launch rkey" } ] }, { "entry": "shutdown", "label": "Shut down an agent", "description": "Revoke the agent's atirc token, release the VM, wait for vm.terminated, delete the round's records, then delete (delete: true) or mark stopped the launch record.", "fields": [ { "key": "rkey", "label": "Launch rkey" }, { "key": "delete", "label": "Delete the launch record" } ] } ], "createdAt": "2026-11-09T03:13:29.762Z", "description": "Launch an atirc agent on a socialweb.computer VM (mint its atirc token, request the VM through the requester, start the agent over ssh) and shut it down by its launch rkey. Composed with the requester: composition.json.", "session": { "uri": "at://did:plc:ocnuqjlzgohypj3zoznermms/com.fedfork.exec.oauth.clientMetadata/agents", "cid": "bafyreih3gkvhe7gxew23jnejxwknvz6qeb3gcr2xtxfu7kn2pc5c4r7cmm" }, "calls": [ "com.atproto.repo.createRecord", "com.atproto.repo.putRecord", "com.atproto.repo.getRecord", "com.atproto.repo.deleteRecord", "com.atproto.repo.describeRepo", "chat.atirc.mint", "chat.atirc.revoke" ], "hooks": [ { "nsid": "com.fedfork.market.contract", "required": true, "entries": [ "launch" ], "reason": "an agent needs a VM: the requester's contract" }, { "nsid": "com.fedfork.market.release", "required": true, "entries": [ "shutdown" ], "reason": "shutting an agent down releases its VM" }, { "nsid": "com.fedfork.market.watch", "required": true, "entries": [ "status", "shutdown" ], "reason": "agent status reads the guest's reports" } ] }