Build an agent network, step by step

One agent with a job, the services it may use and a budget; you run it and read its receipts. Then a second agent hires the first: an agent network. Everything that governs an agent is set in the build, budget included, and the budget is always yours: nothing is pre-filled. Nothing is charged until it runs, and it never spends past its caps.

What you need

  • The app, open at /agents. On the local development network, one command starts everything, the agent runner included:

    scripts/devstack.sh review
    
  • For an agent that plans with AI (Let AI decide), a model: your own Claude plan (sign in once under Settings → Your Claude plan; nothing per turn), a planner listing on the marketplace (anyone can run one; the agent pays it per turn), a local Ollama on the runner's machine, which it picks up on its own, or a key on the runner:

    ANTHROPIC_API_KEY=… scripts/devstack.sh review
    
  • Without any of those, choose Fixed steps on the first screen: it needs no AI and runs right away.

  • Nothing else. No wallet to set up: agents pay from the wallet on your node. On the local development network the node makes one and funds it with test USDC.

Steps

  1. Open /agents. The page is Build your Super Agent, with one line under it, Discover and use the best skills, services, data and models. It tries them, keeps the best, and pays per use within the budget you set., and one box: What do you want done? (the placeholder reads Make me a 1 minute cartoon clip similar to South Park), Budget (USDC), empty, with Set the budget you are willing to spend under it until you type a number, Model: Auto beside it, and Go, off until both are there. Type the job and the budget and press Go: the runner builds a Super Agent from the prompt, fully loose on services, skills and data, Pays in any token, with the budget as both its caps and the best live planner, the highest model tier among the listings, the runner's key and its local model (the panel says which and why, Plans with a local model on the runner (qwen2.5:7b) · qwen2.5:7b on your node (7B tier) over Planner Ollama · llama3.2 (3B tier), and a small local model adds Planning with qwen2.5:7b on your node, 7B tier: a planner key or a stronger listing plans better). Model: Auto is that pick, yours to change before Go: a click lists every model you could plan with, read from the gallery's templates, the runner's key and the models beside it, with a search box on top and one row per model: its name, its family, where it runs (through a listing on the network (Planner Ollama), the runner's key, your node), its tier, the price per turn and its rating from agents' runs when it has one. Available now comes first, a live planner listing, every model the runner's key serves, every model loaded beside it, best first: the tier, then the rating, then the name. Under Not available, in grey and not a pick, every other model the gallery names, each with why on its tooltip and what makes it available: no node lists it yet: list it on Earn (planner-gemini) or add GEMINI_API_KEY. The search reads the name, the family and the tier: fable is Claude Fable 5.1 on the runner's key; deepseek is every DeepSeek model, grey until a planner lists one. Auto: picks the best model available for this task is the first row. Pick one and Go plans with it: Plans with the runner's own key (claude-fable-5-1) · your choice (frontier tier), or Plans with Planner Ollama · llama3.2 on the marketplace, $0.005 per turn · your choice (3B tier). The Setup panel opens under the box with eight rows, Brief (the rewrite beside your prompt, Keep mine / Use this), Models (Planner: a local model on the runner (qwen2.5:7b) · Judge: none live (the lead reviews candidates itself), (your choice) after the planner when you picked it, and the same Model control under the row to change it before Continue: the models step runs again and every step after it plans on your pick), Needs, Hardware (rent a GPU for frame analysis and render (your M4 cannot run the CUDA jobs; assembly stays on your node) · RunPod GeForce RTX 4090 ~$0.34/h, about 7 min · missing key: RUNPOD_API_KEY (or VAST_API_KEY, LAMBDA_API_KEY, DIGITALOCEAN_TOKEN) · by the built-in rules, each heavy stage folded out with its time on your node and rented), Skills, Tools, Network and Run, each with a tick when it is done and its counters as they move: image generation · 0 live · text-to-speech · 0 live · video generation · 0 live · GPU compute · 0 live; Scanning 1,505 skills · Testing 16 · Added 7: image-to-code, azure-text-to-speech, ai-video-gen…; Scanning 332 tools · Testing 0 · Added 0 · tests $0.0000 of the $2.50 share (up to 10% of the budget for testing), with every skill tested and every tool tested, with its receipt under them, each need with its provider in use and Change provider, and Add a skill on the Skills row. Hardware, Skills and Tools run at the same time: a rented GPU comes up while the skills load and the tools are tested, and the tool tests cover every need at once, three candidates per batch per need. The tools that take a still, a clip or a voice sample are tested with reference material the setup makes from the tools that answered from text (the best still, clip and voice sample of the job, shared with the lead); editing tools such as lip sync and upscaling are tested on the job's own material, never judged on a stranger's sample. A listing earlier runs judged below the bar or found failing for the task is listed as known weak and not tested again first. A kind with no live listing puts the setup on a red Missing list (video generation: missing key: FAL_KEY, REPLICATE_API_TOKEN · no live listing · in .env: FAL_KEY= REPLICATE_API_TOKEN= · list one on Earn (379 templates)) with Continue, Continue without and Re-run setup; then the Agent network card lists the agents in hiring order (Script writer · script · published, $0.0500 per call · 3 tools · 0 skills, the lead last), and the running stage follows with its timeline. Below the box two closed lines: Advanced and Or start from a ready-made pipeline; your agents follow, one line each.

    What do you want done: the prompt, the budget, Go

    Model: every model you could plan with, the available ones first, the rest grey with why

    Setup: the eight rows with their counters and the missing list in red

    The agent network, the stages and the running stage's timeline

  2. Press Advanced. The full builder opens, pre-filled from the box: the name from your prompt, the prompt as its instructions, Fully loose on services, data and skills, the budget as both caps. Eight tabs across the top: What it does, Which model plans, Your node, Its services, Its data, Its skills, Its budget, Review.

    Advanced: the builder pre-filled from the prompt and the budget

  3. On What it does, fill in Name and One line about it (shown on its card). Under How should it work? pick Let AI decide (assistant), where an AI model reads your instructions and chooses which tools to call, or Fixed steps (workflow), where you lay out the exact calls and get the same result every time.

  4. With Let AI decide, write the Instructions: what to fetch, what to compare, and how long the answer should be. With Fixed steps the box is Notes (optional).

    What it does: Name, the mode choice and Instructions

  5. Press Continue. Without a name the page says "Give the agent a name." and waits; an assistant without instructions, "Tell it what to do, in a sentence or two."

  6. On Which model plans, choose from Which model plans?: every planner live on the marketplace, Planner · name · model · $x per turn, paid from this agent's budget and needing no key; then This runner's own key (model) for every model its key serves and A local model on the runner (model) for every model loaded beside it, which cost the budget nothing. With none the notice reads No planner available and says what to do. A workflow skips this screen: No model needed.

    Which model plans: the planner listings and the runner's own model

  7. Press Continue. On Your node, the tools on your own machine are listed under Your node · Workspace, Memory, Hugging Face models and every account you connected, each row free and on your node: tick what it may use, or search (Search your node's tools: write, run, browse, recall, install…). When the private node is not running the screen says so and links Your node on the marketplace page.

    Your node: the workspace, memory and model tools, free and unmetered

  8. Press Continue. On Its services, under Which services may it buy?, every service live on the network is listed with its price per call. First choose how the agent picks:

    • Only the services I pick: it uses what you tick and nothing else. Tick several that do the same thing and it may try them and keep the better result.
    • My picks first, then anything it discovers: your ticks are a head start. When the job needs more, it searches the marketplace itself, tries what it finds and moves between services, within its budget.
    • Fully loose: no picks. It discovers, tries and chooses services on its own, within its budget.
  9. Tick the services it may use. Each row shows the service, its tool, what it does, its inputs and the price per call. The chips (All, then one per group) show one group at a time; your published agents sit under Hires · your published agents and the judges under Judges · score candidates against a brief. With Fully loose there is nothing to tick.

  10. Press never on any service it must not use. The button turns to never ✓, its ticks are removed, and the line above the list counts what is ruled out. The runner refuses that service whatever the agent finds later, and it never comes back in a search. Press it again to allow it.

  11. Type in the search box (Search tools: price, swap, bridge, odds, news, images…) to narrow the list by name, tool, description or category.

    Its services: the three ways it picks, one row set to never

  12. Press Continue. With Only the services I pick and nothing ticked, the page says "Pick at least one service, on your node or the marketplace, or let it discover its own."

  13. On Its data, choose how it reaches what is on your node: Only the data I pick, My picks first, then anything it discovers or Fully loose. Three cards: Memory, where Remember stores a line for it and each entry has a box; Workspace files, the files at the root of the workspace, each with a box; Connected accounts, each Connected or Not connected. The picks go into its brief at the start of a run; the rest it reads through the tools under Your node.

    Its data: memory entries, workspace files and connected accounts

  14. Press Continue. On Its skills, choose Only the skills I pick, My picks first, then anything it discovers or Fully loose, then search (Search skills: documents, testing, seo, video, crypto…) and tick. Each row shows the skill's source, its repo with its stars and licence for an open-source one, Listed on the marketplace with its operator for a paid one, and the price: free for open source, or $x with one-time or per use. never rules one out. An agent you edit later also shows Picked up on its own, the skills it found and kept, with Keep or Removed, and Bought outright, the one-time skills it paid for.

    Its skills: the search, a free skill and a paid one with its terms

  15. Press Continue. On Its budget, under How much may it spend?, set Lifetime budget (USDC) and Most per run (USDC). Both are empty on a fresh agent (under Advanced they carry the budget you typed in the box), there are no presets, and each field reads Set the budget you are willing to spend until it holds a number; under the second the page shows the estimated cost of one run with your tools. Both caps must be above zero, a single run cannot exceed the lifetime budget, and Continue refuses without them: the runner creates nothing without your two numbers. It enforces both outside the AI. The Pay in any token box is ticked when a swap listing is live: when the runner's wallet is short of USDC for a call, it swaps what your node's wallet holds into USDC at the best rate first, within the wallet's caps (Swap at the best rate); untick it and the hint reads "Off: a call the runner's wallet cannot pay in USDC fails instead of swapping for it."; with no swap listing live it adds that it cannot swap yet.

  16. Optionally tick Run it on a schedule. Set Every (minutes) with the presets 15 min, 1 h, 6 h and daily, and What to ask each time; the hint under it says what the schedule costs a day.

    Its budget: Lifetime budget and Most per run, yours to type

  17. Press Continue.

  18. On Review, read the rows: Name, How it works, Instructions, Plans with, Your node, Services, Picks services, Its data, Skills, Never uses, Budget, Schedule, Pays (in USDC, swapping any token your node's wallet holds when it is short, or in USDC only) and Pays from (the wallet on your node). Back returns to any screen. Save for later keeps the agent without running it. Press Create and run it.

    Review: the summary rows and Create and run it

  19. The agent's page opens and the first run starts. At the top sits the Run it box: type what to ask, or leave it empty and the agent follows its instructions, then press Run now. The line beside it says the most this run can cost. Stop appears while it runs.

  20. Watch it work under Running. The Now strip says what the agent is doing this second in plain words ("Calling Kraken · price feed on Node 0xBcd4…4096 with “XBTUSD”", "Comparing 3 results from price feed services", "Local · writing compare/btc.md on the workspace"), the service it is on, the seconds elapsed and what it has spent so far, with a pulse while it runs. Under it the timeline fills in as each step lands, without a reload: the budget for this run, then Searched the marketplace for "…" with what it found, Paid service · tool with its category, cost and time, the line for what it was doing, what was asked and, under what it returned, the result; images, video and audio a service returns show inline. Thinking marks the model's notes between calls, and an AI-planned agent says in one sentence what it is about to do before each call. When it tried several services of one kind in a row, a Compare block sets them side by side with each one's cost and time and, when a judge scored them, the score, the reasons and the Winner. When it hired another agent, that agent's run is nested under the step, live. When the heading turns to Result, the Answer sits at the top. Last comes Rated service N/100 from this run, with the tally of calls, errors and slow answers it was built from, and Spend: what the run cost on each service.

    Watch it work: the Now strip and the timeline during a run

  21. Under the log, Receipts lists every session: Service, Session (a link to the Activity page), Set aside, Paid, Status (Settled, rest refunded) and Agent's rating. History keeps every run, with How it started: manual, schedule or hired. The Spend box on the right keeps the last 24 hours and 7 days per service, a bar each: what an agent on a schedule, or one other agents hire, costs as it keeps going.

  22. To change the agent later, press Edit at the top: the same eight screens open, ending in Save changes. Change budget in the Budget box on the right goes to the same place for the two caps. In the Schedule box, Run every 60 min starts a schedule, Pause schedule stops it, and Change timing edits it.

    The agent's page: Run it and Publish as a service

  23. To make it a network, use the Publish as a service box on the right. Set USDC per call (above what one run costs you) and press Publish. Listing takes a few seconds: the node stakes and registers it on-chain. The box then reads Live on the marketplace since, with See its listing and Take it off the market, and the header gains a Published badge with the price.

  24. Build a second agent. On its Its services screen the first agent is now a row of its own, Agent: followed by its name, under Hires · your published agents; the search box finds it by name. Tick it, or choose My picks first, then anything it finds and let the second agent find it when the job calls for it. Give it a per-run cap that covers the first agent's price.

  25. Run the second agent. Its log shows Paid Agent: … at the price you set, with its receipt like any other paid call. On the first agent's page the new run is marked hired by another caller, and its History row says hired. The first agent paid for its own tools from its own budget; the difference between its price and that cost is yours.

  26. Take it off the market delists the first agent. An agent never hires itself, its own listing is out of its reach, and Delete asks you to take it off the market first.

What you have now

Two agents on the local development network: one with a job, a budget and the services it may and may not use, published at a price per call; one that hires it, pays with a receipt and rates the operator behind it, as it would any service. Every run, call, deposit and refund is on the agents' pages and the Activity page; every cap is enforced by the runner, not the AI.

Next: Pick up a pipeline, step by step — a network of agents that hire one another, a project for the whole job, built in one click from what is live.