{"domain":"21millionpixels.art","count":1,"changes":[{"captured_at":"2026-10-02T01:13:27","card_hash":"548c2a044f31a2a7910fc7ae9685dded41978ca67a7b4f7d950f5b3c28032182","previous_card_hash":null,"diff":{"skills_added":[{"id":"describe_canvas","name":"Describe the canvas","description":"What this canvas is and how to paint on it: its size, the palette, what a plot is, what a pixel costs an agent, how quickly paint is applied, and the endpoints to paint at.","tags":["canvas","x402","pricing","getting-started"],"inputModes":null,"outputModes":["application/json","text/plain"]},{"id":"find_space","name":"Find blank space","description":"Find places where a rectangle of a given size fits on unpainted canvas, so a design can go there without covering somebody else's work. Send width and height in a data part, and optionally near_x and near_y to search elsewhere than the middle.","tags":["canvas","placement","search"],"inputModes":null,"outputModes":["application/json","text/plain"]},{"id":"look_at_spot","name":"Look at a spot","description":"What is at a coordinate: whether it is painted, which plot it belongs to, and whether that plot is locked by its owner. A locked plot refuses paid paint before any money moves, so it is worth asking before paying.","tags":["canvas","inspect"],"inputModes":null,"outputModes":["application/json","text/plain"]},{"id":"paint_pixels","name":"Paint pixels","description":"Buy pixels and have them painted. One payment covers one 10x10 plot, so up to 100 pixels at $0.005 each in USDC on Base. Say which pixels either as a list of tiles ({x, y, color}) or as x, y, width, height and a palette colour. The answer is a task in input-required whose x402.payment.required holds what to sign; send the signature back in x402.payment.payload on a message naming that task, and the pixels are queued and painted at 60 a minute. Follow it with tasks/get. Colours 1-32 are open to everyone; above that needs a wallet that owns a plot. Paint is permanent and anyone can paint over it afterwards.","tags":["canvas","paint","x402","payment"],"inputModes":null,"outputModes":["application/json","text/plain"]}],"skills_removed":[],"skills_changed":[],"fields_changed":[{"field":"name","before":null,"after":"21 Million Pixels"},{"field":"description","before":null,"after":"A shared 5000x4200 pixel canvas that anyone can paint on. People paint free, one pixel every 15 seconds. AI agents skip the wait by paying $0.005 a pixel in USDC on Base over x402 -- no account, no API key, no gas. This agent answers questions about the canvas -- what it is, where there is blank space, what is at a coordinate -- and sells pixels: ask it to paint and it quotes you, you sign, and it paints. Paid pixels go on at 60 a minute rather than all at once, so whoever painted underneath can see it happening."},{"field":"version","before":null,"after":"0.1.0"},{"field":"protocolVersion","before":null,"after":"0.3.0"},{"field":"url","before":null,"after":"https://21millionpixels.art/a2a"},{"field":"documentationUrl","before":null,"after":"https://21millionpixels.art/llms.txt"},{"field":"iconUrl","before":null,"after":"https://21millionpixels.art/favicon-32.png"},{"field":"preferredTransport","before":null,"after":"JSONRPC"},{"field":"supportedInterfaces","before":null,"after":[{"url":"https://21millionpixels.art/a2a","protocolBinding":"JSONRPC","protocolVersion":"0.3"}]},{"field":"capabilities","before":null,"after":{"streaming":false,"pushNotifications":false,"stateTransitionHistory":false,"extensions":[{"uri":"https://github.com/google-a2a/a2a-x402/v0.1","description":"Paying for pixels: a task comes back in input-required carrying the x402 payment requirement, and the signature is sent back on a message naming that task. Needed only for the paint_pixels skill; the other three are free and need no extension.","required":false}]}},{"field":"provider","before":null,"after":{"organization":"21 Million Pixels","url":"https://21millionpixels.art"}}],"other_changed":true,"is_empty":false,"human_summary":"added 4 skills · name ∅ → 21 Million Pixels · description ∅ → A shared 5000x4200 pixel canvas that any · version ∅ → 0.1.0 · protocolVersion ∅ → 0.3.0 · url ∅ → https://21millionpixels.art/a2a · documentationUrl ∅ → https://21millionpixels.art/llms.txt · iconUrl ∅ → https://21millionpixels.art/favicon-32.p · preferredTransport ∅ → JSONRPC · supportedInterfaces ∅ → https://21millionpixels.art/a2a (JSONRPC · capabilities ∅ → extensions, pushNotifications, stateTran · provider ∅ → 21 Million Pixels"}}]}