← TailwindCONTENT HISTORY

Update to Tailwind

Snapshot Oct 24, 2026 · 18:04 UTC · version 0.4.0

Collection source: downloaded plugin package.

WHAT CHANGED

First saved snapshot

No earlier snapshot is available to establish a change.

Save Tailwind and check future changes in Following.

Up to 10 plugins free · no card required.

Compare saved observations

Download comparison JSON
Full technical diff · 0 changed fields
Full snapshot data
{
  "description": "Review the Pinterest Pin drafts that Tailwind's AI generated — from a URL generation or a connected feed — against the user's own criteria, then schedule the good ones, fix the nearly-right ones, and discard the rest. Use when the user asks to review, approve, clear out, or publish their generated, AI-drafted, or SmartPin drafts, or to run that review on a schedule.",
  "included_files": [],
  "name": "tailwind-pinterest-draft-review",
  "skill_md_contents": "---\nname: tailwind-pinterest-draft-review\ndescription: Review the Pinterest Pin drafts that Tailwind's AI generated — from a URL generation or a connected feed — against the user's own criteria, then schedule the good ones, fix the nearly-right ones, and discard the rest. Use when the user asks to review, approve, clear out, or publish their generated, AI-drafted, or SmartPin drafts, or to run that review on a schedule.\n---\n\n# Reviewing Tailwind's generated Pin drafts\n\nA Pin that Tailwind's AI generates, from `generate_pins_from_url` or a\nconnected feed, is saved as a draft. It never publishes on its own: someone\nhas to look at it and either schedule it or discard it, and most people never\ncome back to do that, so generated Pins sit unpublished and the credits that\nmade them are wasted. This playbook is that review, done by you against the\ncriteria the user gives.\n\nThe tools' own descriptions cover their parameters. This file covers what\nthey cannot: the traps where a correct-looking review run still goes wrong.\nThe long-form version, with REST equivalents, is at\nhttps://api-docs.tailwind.ai/guides/reviewing-generated-drafts.\n\n## The criteria are the user's, not yours\n\nTailwind stores no review criteria and applies none of its own. The criteria\ncome from the user's request or from standing instructions they have given\nyou. If you have neither, ask before judging anything. Do not invent a\nstandard from the drafts themselves: a review that approves whatever looks\nfine to you is not the review the user asked for, and scheduling spends\ntheir credits.\n\nDo not tell the user to write their criteria into this file. The installer\nrewrites it on every run and plugin updates replace it, so anything stored\nhere is lost on the next upgrade. Their own instructions or project notes\nare the right home.\n\n## A review is not permission to act\n\n\"Review my drafts\" asks for judgements, not for Pins on the schedule or in\nthe bin. Unless the user's request or their standing instructions say to\nschedule what passes and delete what fails, stop after judging: report what\nyou would approve, fix, and discard, with the reason for each, and let the\nuser say which to apply. Scheduling spends their credits and deletion cannot\nbe undone, so neither is a side effect of being asked to look.\n\nA run with no one watching, from a scheduled task or a cron, is the case to\nbe strict about. It can act only on a standing instruction that names the\nactions: \"schedule the ones that pass and delete the ones that fail\". A\nstanding instruction that only gives criteria licenses the report, not the\nchanges.\n\n## Find the drafts\n\nCall `list_accounts` first and use a numeric account ID from it. If there is\nmore than one account and the user has not said which, ask.\n\nThen `list_posts` with `status: \"draft\"` and `limit: 100`, and follow\n`cursor` until a response comes back without one. Every draft assigned to\nthe account lists here, hand-made ones included. The generated ones carry a\n`generationId`, and in the result text their line starts with `Generated`.\nThose are the only drafts this review touches. A draft with no\n`generationId` was made by hand, or through the API, and is left exactly as\nit is: never scheduled, edited, or deleted by this workflow unless the user\nasks for that separately.\n\nA generated draft is \"unreviewed\" only in the sense that it is still a draft.\nTailwind keeps no record that a draft was looked at. Once it is scheduled or\ndeleted it leaves the list; until then it stays, however many times it has\nbeen considered.\n\nDrafts not yet assigned to any Pinterest account, such as some Made For You\ndrafts, do not list. The Pin Scheduler in the dashboard counts them in a\n\"drafts that aren't assigned to a Pinterest account yet\" banner, and the\nuser assigns them from there. So the draft count here can be lower than the\ndashboard's by that number. That is expected, not missing drafts, but a\nlarger gap is worth reporting.\n\n## Judge each one\n\nEach draft carries its title, description, destination link (`url`) and\nimage (`mediaUrl`). Compare those with the criteria. Three outcomes: approve\nas is, fix then approve, or discard.\n\nTo see the picture, call `get_post_image` with the draft's `postId`. Not\nevery client passes the image on to the model. If it did not arrive, say so,\njudge on the copy and link only, and never describe what the picture\n\"probably\" shows. A criterion about the image that you cannot check is a\ndraft to leave for the user, not one to approve.\n\nA draft you are unsure about is left where it is. It stays in the list and\ncomes up again next time. Leaving a draft is always safe; the other two\ndecisions are not.\n\n## Fix the nearly-right ones\n\nCopy and placement are edited in place with `update_post`, which is free.\nOnly the fields you send change. Fix a title, description, link, Board or\nBoard section this way rather than deleting and recreating the Pin, which\nwould throw away the generated design.\n\nThe picture is a separate surface. For a generated draft, call\n`get_pin_design` and follow the `supportedOperations` it reports; the\noperations differ by design tier, and calling one the Pin does not support\nis rejected. `update_pin_design` re-renders a template design with a new\noverlay title, colors or image for free, and `select_pin_design_variation`\nswitches to a design Tailwind already has, also free. The design read lists\nthe other pictures Tailwind found on the source page, so a wrong photo is\nusually a free swap. `regenerate_pin_design` has the AI design a new one for\nabout 7 credits, runs asynchronously, and produces a variation you still\nhave to apply with `select_pin_design_variation`. Ask before spending that;\na review the user expected to be free should not come back having bought\nnew designs.\n\n## Approve the good ones\n\nApproving a draft is scheduling it. Call `schedule_post` with\n`useNextOpenSlot: true`. That claims the account's next open smart schedule\nslot and applies the account's Pin Spacing rules for the Pin's link. Never\ncompute a `sendAt` from `list_timeslots` or `get_schedule`: a slot that\nreads as open can already be taken, and `sendAt` ignores Pin Spacing, so\napproved Pins stack up off-schedule. A draft without a Board also needs\n`boardId` on that call, a numeric ID from `list_boards`.\n\nScheduling is the charged step. On modular-billing accounts it spends one\nPin credit per draft (free on winback plans; a free-trial allowance where\nthe account has no Publishing access), and legacy and Shopify accounts count\nit against the plan's post limit instead. Check `get_account_usage` before\na large batch. A payment-required error is a real billing outcome, not a\ntransient failure: stop scheduling, tell the user how many drafts remain,\nand do not retry.\n\nAfter the batch, confirm it landed with `list_posts` using\n`status: \"queued\"` rather than trusting the response text alone.\n\n## Discard the rest\n\nA draft that fails the criteria and is not worth fixing is deleted with\n`delete_post`. Deletion cannot be undone. It is also what keeps the next run\nfrom judging the same draft again, so a draft you discard should be one the\ncriteria clearly reject, not one you were on the fence about. On the fence\nmeans leave it.\n\n## Running it again\n\nNothing in Tailwind starts the next run; the user does, or a scheduled task\nin your own client does. The workflow is safe to repeat for the drafts it\ndecided: an approved draft leaves the list when scheduled and a discarded\none when deleted, so a later run only sees what was left.\n\nTwo runs that overlap can both try to schedule the same draft. The second\n`schedule_post` then fails with a conflict, because the draft is no longer a\ndraft, and nothing is charged for the failed call. Treat that conflict as\n\"already decided\": re-list before acting on anything else from the stale\npage, and do not retry it. Overlap is still worth avoiding, since each run\nreads the whole list; give a scheduled task an interval longer than a run\ntakes.\n\nOne trap. A generated Pin that was approved and later taken off the schedule\nwith `unschedule_post` returns to the draft list with its `generationId`,\nand nothing marks it as already reviewed. The next run judges it again and\nmay schedule or delete it. If the user held a Pin back on purpose, they need\nto tell you which one, or expect it to be decided by the criteria again.\n\n## Report what you did\n\nList each draft by title and `postId` under four headings: approved, fixed\nthen approved, discarded, and left for the user. Say what each fix changed\nand why each discard failed the criteria. Say how many hand-made drafts\nwere skipped, so the user knows the list was read in full. If any picture\ncould not be seen, say so once rather than per draft.\n\n## Not available in this review\n\nSay these explicitly when they matter:\n\n- **Whether a draft was reviewed before.** Tailwind keeps no record, so a\n  draft in the list is one that was never decided, or one that was decided\n  and unscheduled; the two look the same.\n- **The criteria.** Tailwind has none to read back. If the user asks what\n  standard their drafts were judged by, the answer is whatever they gave\n  you, and nothing else.\n- **How the draft will perform.** Nothing in a draft predicts saves or\n  clicks. `get_account_analytics` and `list_top_pins` describe what already\n  published Pins did, which can inform the user's criteria but is not a\n  judgement on a draft.\n- **The picture, in some clients.** See above. A review that could not see\n  the images is a review of the copy, and the report should say so.\n"
}

SHA-256 of public snapshot: 4022a52ee302085424aae556ea3dd99469a5c7d495ab2bc15b509cd1844e2df2