{"server":"ai.patchdesign/patch-designer","count":10,"changes":[{"tool":"sign_in_link","kind":"changed","observed_at":"2026-10-16T00:16:32.646Z","fields":["annotations"],"description_before":null,"description_after":null,"description_similarity":null,"before_hash":"6f5e7de140a94aa32947c46e078f91ee","after_hash":"593afd975a1112385f3867292e2fb997"},{"tool":"order_link","kind":"changed","observed_at":"2026-10-16T00:16:32.646Z","fields":["annotations"],"description_before":null,"description_after":null,"description_similarity":null,"before_hash":"085f7772509ceda9aadd09e3f0fd2dd8","after_hash":"89645d75ca132311d5ab7484af44815b"},{"tool":"edit_patch","kind":"changed","observed_at":"2026-10-16T00:16:32.646Z","fields":["annotations"],"description_before":null,"description_after":null,"description_similarity":null,"before_hash":"feef1dd5ab2fa739ca130beb6f26f538","after_hash":"ed1b1f97b7f8fe9ff37d4b02dde41da8"},{"tool":"design_patch","kind":"changed","observed_at":"2026-10-16T00:16:32.646Z","fields":["annotations"],"description_before":null,"description_after":null,"description_similarity":null,"before_hash":"0df9a96bdfba4d92092e15bc382d070a","after_hash":"8ba326f4f271b2ff414f253fc42ce1d3"},{"tool":"quote_patch","kind":"changed","observed_at":"2026-10-16T00:16:32.646Z","fields":["annotations"],"description_before":null,"description_after":null,"description_similarity":null,"before_hash":"d72b40f94725050518ced49c89a9a991","after_hash":"431aaf4db3f3ffe5522b34f3d2bab762"},{"tool":"sign_in_link","kind":"changed","observed_at":"2026-10-15T11:09:12.099Z","fields":["annotations"],"description_before":null,"description_after":null,"description_similarity":null,"before_hash":"7d2a92f487d8c78aa8e44f50c8668956","after_hash":"6f5e7de140a94aa32947c46e078f91ee"},{"tool":"order_link","kind":"changed","observed_at":"2026-10-15T11:09:12.099Z","fields":["inputSchema","annotations"],"description_before":null,"description_after":null,"description_similarity":null,"before_hash":"c1cb54554c59646614c9a3c8c7df086f","after_hash":"085f7772509ceda9aadd09e3f0fd2dd8"},{"tool":"edit_patch","kind":"changed","observed_at":"2026-10-15T11:09:12.099Z","fields":["description","inputSchema","annotations"],"description_before":"Make a change to a design from this chat: pass its design id (d_...) and the change in plain words (\"make the border gold\", \"change TROOP 42 to TROOP 24\"). Returns a new design with its own id; the original stays. Counts as one design.","description_after":"Make a change to a design from this chat: pass its design id (d_...) and the change in plain words (\"make the border gold\", \"change TROOP 42 to TROOP 24\"). Use it for a change the user asks for later in the chat too, so the original artwork is kept. Returns a new design with its own id; the original stays. Counts as one design.","description_similarity":0.738,"before_hash":"3bd329de78e34e9f33a2002939a7af59","after_hash":"feef1dd5ab2fa739ca130beb6f26f538"},{"tool":"design_patch","kind":"changed","observed_at":"2026-10-15T11:09:12.099Z","fields":["description"],"description_before":"Generate a production-ready custom patch design from a description (and optionally a reference image URL). Takes about 15 to 30 seconds and returns the design as an image plus a design id for edits and an order link. Previews carry a light PatchDesign.AI watermark; the clean file comes with an order. Say what the patch shows and any text on it, spelled exactly. A chat gets 10 free designs, then the user signs in with the link from sign_in_link. If the result says the service was busy, call it once more with the same input.","description_after":"Generate a production-ready custom patch design from a description (and optionally a reference image URL). Takes about 15 to 30 seconds and returns the design as an image plus a design id for edits and an order link. Previews carry a light PatchDesign.AI watermark; the clean file comes with an order. Say what the patch shows and any text on it, spelled exactly. To change a design already made in this chat, use edit_patch with its id. A chat gets 10 free designs, then the user signs in with the link from sign_in_link. If the result says the service was busy, call it once more with the same input.","description_similarity":0.909,"before_hash":"d961727e905fce94764d4c8578853006","after_hash":"0df9a96bdfba4d92092e15bc382d070a"},{"tool":"quote_patch","kind":"changed","observed_at":"2026-10-15T11:09:12.099Z","fields":["description","annotations"],"description_before":"Price a custom patch from the live PatchDesign.AI production price table: type, size and quantity in, the per-patch and total price in USD out, with the next quantity breaks and what the price already includes (artwork, a pre-production sample, worldwide shipping). Quantity 1 returns the single-patch (sample) prices. Free and instant; call it whenever a price comes up.","description_after":"Price a custom patch from the live PatchDesign.AI production price table: type, size and quantity in, the per-patch and total price in USD out, with the next quantity breaks and what the price already includes (artwork, a pre-production sample, worldwide shipping). Quantity 1 returns the single-patch (sample) prices. Use it when the user asks about a price or the minimum quantity.","description_similarity":0.735,"before_hash":"dba3b717005bff111d3236768ec6cf9d","after_hash":"d72b40f94725050518ced49c89a9a991"}],"next_before":null,"next_actions":[]}