Psn wishlist advisor
Skill t3chnaztea/awesome-psn-skills/skills/psn-wishlist-advisor
Use when deciding what to actually buy off a PlayStation Store wishlist: "rank my wishlist", "what should I buy next", "is this sale worth it", "what on my wishlist will I actually finish", "clean up my wishlist", "should I grab X while it's discounted". Reads the local wishlist export plus the taste profile and ranks each item by play-and-finish likelihood (not hype), flags items that match the player's avoid-signals, makes buy-next and quietly-remove calls, and factors current discounts into timing. Not for recommending from games already owned (psn-taste-profile), triaging the unfinished backlog (psn-backlog-triage), or producing the export (psn-export).From its SKILL.md
npx -y skills add t3chnaztea/awesome-psn-skills --skill psn-wishlist-advisorAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- 28 days oldThe repository was created 28 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
6.5 KB, ~1.5k tokens by cl100k_base, as published. Nobody here has run it
PSN Wishlist Advisor
A wishlist is a pile of wants, sorted by nothing. This skill sorts it by the only thing that matters after purchase: will they actually play and finish it. Hype and discounts are inputs, not the ranking. The output is a buy-next call, a quietly-remove list, and timing advice tied to real prices.
<data_source>
Two files, both in ./psn-export/ (see psn-export):
wishlist.jsonfrompsnstats --wishlist— the items and their live store prices. Shape is{"wishlist": [ ... ]}, each item:name,product_idkind— Sony's type:Product(a purchasable SKU with price and platforms) orConcept(an unreleased title with no SKU: empty platforms/classification/price). A Concept can't be bought yet — treat it as a watch-item, never a buy-next.platforms(e.g.["PS5","PS4"]),classification(e.g.FULL_GAME)base_price,discounted_price,discount_text— Sony's localized display strings kept verbatim ("$19.99","-25%"), empty for Concepts.box_art_url
preferences.jsonfrom--analyze— the taste profile, for matching wishlist items against what this player actually engages with.
Never fetch the store yourself and never invent a title or a price. Prices are
whatever Sony returned at export time: if wishlist.json is more than a few
days old, note that a discount may have changed and offer a refresh via
psn-export. If the wishlist export is missing, route there first.
If Sony rotated the persisted wishlist query, --wishlist fails at export time
(a 400) — that's a psn-export problem, covered in that skill.
</data_source>
<the_ranking>
Rank each buyable Product by play-and-finish likelihood, built from the
taste profile, not from review scores:
- Fit to the palette. Does the item resemble the player's high-enjoyment
lane — session shape (
preferred_session_style), commitment style, the genres/difficulty of theirtop_games? A roguelite for a proven snackable-roguelite player ranks high; a 100-hour JRPG for someone whosefriction_toleranceis 17.9 and who abandons long games ranks low, however acclaimed. - Avoid-signal matches. Check the profile's
agent_features.avoid_signals(e.g. "drawn-out mid-game", "long-session requirement"). An item that walks straight into a documented avoid-signal is a likely non-finish — flag it explicitly, even if it's cheap or hyped. - Positive-signal matches. Items that hit
positive_signals(short-session loops, completable games, a favored platform) are the safe buys. - Then, and only then, price. A strong-fit game at full price beats a bad-fit game at 80% off. Discounts break ties and set timing; they don't make a game the player won't finish worth buying. </the_ranking>
<the_calls> Produce three things:
- Buy next (1-3 items). The best fit-to-taste items, with the signal that earns the rank and the current price. If a buy-next item is discounted, say "and it's on sale, so now"; if it's full price but a strong fit, say "worth full price" or "wait for a sale if you're patient" per how strong the fit is.
- Quietly remove. Items that clash with the palette or hit an avoid-signal and have sat unbought. Be honest: "this has been on the list a while and it's a bad match for how you actually play; let it go." Removing noise makes the list usable.
- Timing notes. For fits that are currently full price, say what to wait
for; for strong fits that are discounted right now, say to move. Cite the
actual
base_price/discounted_price/discount_textstrings. For aConcept, note it's not purchasable yet: keep watching, no action. </the_calls>
<worked_example>
Say the wishlist holds a short, high-replay roguelite at "$19.99" marked
"-25%" → "$14.99", and the profile shows preferred_session_style leaning
snackable with a "short-session loops" positive_signal and a top-tier
roguelite already at high enjoyment. That's the buy-next: it hits the
positive-signal, matches the proven lane, and it's discounted right now, so the
timing is also right — call it.
Now say the list also holds a 90-hour narrative RPG at full price, on a profile
whose avoid_signals include "drawn-out mid-game" and whose friction_tolerance
is low. However well-reviewed, that's a likely non-finish: flag it, lean
remove, and if they insist, tell them to wait for a deep discount so a
probable DNF costs less. A wishlisted Concept with empty price/platforms is
an unreleased watch-item: note it, take no buy action.
</worked_example>
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.