The compute network
A gaming rig or a workstation spends most of its life idle. Lend that idle time to the hashtag.org network and it becomes a pull-based AI worker: it runs inference jobs, answers agents across the network, and earns for you while you are away. One call to join, and your play always comes first.
These numbers are real and update on their own. When it is quiet you will see honest zeros, and when nodes come online you will watch them appear here.
Three moving parts, none of which touch your files or open a port on your machine.
Point your coding agent at the hashtag.org MCP and call join_compute_network, or grab the worker directly. Either way you get a fresh node with its own scoped token in seconds.
A tiny worker runs on your machine. It heartbeats, pulls one job at a time, runs the prompt on your local model (Ollama, LM Studio, and friends), and submits the answer. No inbound ports.
Every completed job accrues to your node. Leave the worker up and idle GPU time turns into work for the network instead of sitting dark.
Give more, earn more. Set the biggest model you will serve, how many jobs at once, and how much disk to keep warm. Then copy the exact call and go.
Your pledge
Standard: models up to 14b, 4 at a time
Completed jobs pay in real money through Stripe (fiat or stablecoin). A bigger pledge unlocks bigger, scarcer jobs. There is no charge for idle time, and your rig is never billed to lend it.
From your agent
join_compute_network { "maxModel": "standard", "parallelSlots": 4, "diskGb": 100 }Or as worker env
HASHTAG_NODE_MAX_MODEL=standard
HASHTAG_NODE_PARALLEL=4
OLLAMA_NUM_PARALLEL=4
HASHTAG_NODE_DISK_GB=100Capacity decides which jobs you get. Stake decides how much each one pays. Lock $SPACE on your own node and its real payout rate goes up, so a staked node out-earns an unstaked one for the exact same work. Unstaked nodes still earn at the base rate. These weights are illustrative until the rate is set at launch.
Unstaked
1×
Staked
1.25×
Staked·high
1.5×
Staked·max
2×
Up to 2× the base payout at the top of the ladder (illustrative). Staking reuses the network’s existing $SPACE staking, retargeted to your node.
Two ways in. Both hand you a node with its own token and start earning as soon as the worker is up.
Add the hashtag.org MCP to Cursor or Claude Code, then ask it to run:
join_compute_networkIt provisions your node, prints the run command with your token baked in, and points the worker at your local Ollama or LM Studio for you.
No agent needed. The worker self-registers on first run:
# mac / linux — needs python3 and a local model server (e.g. Ollama)
curl -fsSL https://hashtag.org/nodes/worker.py -o worker.py
python3 worker.pyOn a gaming rig use the PowerShell worker at /nodes/worker.ps1 instead. Read either script before you run it — they are short and open.
The network scales two ways, and both are in your hands.
Set OLLAMA_NUM_PARALLEL to 4 or 8 and a single GPU batches several jobs at once. A 14b model on a 4090 runs warm at real speed, which is where the useful answers live. The tiny models are fast but their output is not worth serving.
The queue claims jobs race-safely, so adding rigs adds throughput with no coordination. One 4090 today, a room of them tomorrow, and the network simply spreads the work across whatever is online.
Lending a GPU should never mean trusting the network with your machine. It does not here.
A job carries a prompt, not a program. Your node runs that prompt against a vetted local runtime and nothing else. It cannot be handed arbitrary code to execute.
You never hold an owner key or a shared secret. Registration mints a fresh token good only for this node’s heartbeat, pull, and submit. Rotate or revoke it any time.
The worker can pause itself the moment you start a game, so the dispatcher stops sending work until you are done. Your rig is yours first and a worker second.
A stranger’s node only ever receives public jobs. Sensitive, customer-tagged work routes to first-party trusted nodes, never to an untrusted rig.
Join the network, keep the worker running, and let idle GPU time earn its keep.