Collection of agent skills for SLICC and Tessl-compatible runtimes — productivity, creative, document, and integration skills.
76
96%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
High
Do not use without reviewing
Background for debugging the Pin Review overlay. Not needed for normal operation — see the
Pin Review section of SKILL.md for the commands. Read this when pins go missing, duplicate, or
land in the wrong spot.
The overlay has two independent layers:
window.__sliccRenderMarkers() to re-render from state.window.__sliccAddMode) — the crosshair + click-to-place-new-pin behavior. This
is the only thing the Pin Review button toggles.So exit.js (add mode off) keeps markers visible; only the crosshair and open popups go away.
Pins live in two places; the second is what makes them durable.
sessionStorage (key __sliccReviewMarkers) — fast, page-local cache. Survives reloads but
is scoped to that tab's session; lost on tab close / browser restart.state.pins, keyed by page url) — the sprinkle persists every pin's full
marker object ({num, comment, pageX, pageY, selector, relX, relY, url, ts, done}) through
slicc.setState(). Survives panel reloads and browser restarts, and can be re-seeded onto any tab
pointed at the same url. Populated by add-pin, read back via request-pins → pins lick.Because state.pins is appended on every add-pin, slicc is always a superset of the cache — seeding
from it never drops pins.
__sliccReviewAll vs sessionStorageOn injection the overlay (enter.js:35–36) takes markers from a pre-populated
window.__sliccReviewAll if it is non-empty; otherwise it falls back to the sessionStorage cache.
This is a precedence, not a merge: a non-empty __sliccReviewAll wins outright.
Consequence: seeding __sliccReviewAll makes durable slicc state authoritative. Only do it when you
want that (fresh tab / restart, or to repair a stale cache). Never seed an empty or stale array —
it would clobber visible pins. If pins vanish after a re-inject, you likely seeded empty
__sliccReviewAll; recover by setting window.__sliccReviewAll=[] and re-injecting so it falls back
to sessionStorage. When sessionStorage already holds the pins (same-session reload), skip the
seed round-trip entirely.
Each pin stores its target element's selector plus the click's fractional offset within that element
(relX/relY), with absolute pageX/pageY as a fallback. Markers are positioned relative to the
live element's bounding rect, so they stay attached on resize / reflow instead of being pinned to
absolute page coords. The overlay binds window.__sliccDoReposition and listens for resize/scroll
(rAF-throttled) to reposition all markers.
The overlay is versioned via OVERLAY_VERSION (enter.js:10, currently 4), surfaced as
window.__sliccOverlayVersion.
enter.resolved.js when the display layer exists and the version matches just
refreshes markers + add mode (returns status:'reinjected') — it does not duplicate listeners.window.__sliccClickGen) makes superseded click listeners inert
(enter.js:248–251), so upgrades never double-handle a click.Bump OVERLAY_VERSION whenever render/reposition logic changes.
mode:'no-cors' for remote pagesThe overlay POSTs each pin to the webhook with mode:'no-cors'. A normal cross-origin POST from a
remote page is blocked (the webhook returns no CORS headers); no-cors still delivers the body
(fire-and-forget, opaque response). Only Fix with Speck stays local-only — it injects editing JS
that remote CSP blocks.
Passing the 📍 emoji through the scoop's jq/shell pipeline double-encodes it (mojibake — renders like
an Icelandic ð). The sprinkle renders the icon itself: renderCommentEntry detects a pin
(numeric num), draws a Lucide map-pin icon, and strips any leading emoji/mojibake/PIN #n: prefix
from the display text. So the cone always sends plain ASCII comment text.
Comment lines render sorted by pin number (ascending) via the sortedComments(list) helper,
applied at every render site (card build, done-toggle, set-comment-done, clear-pins/remove-pin
re-renders). Non-pin comments (no num) sort after pins, preserving their relative order.
.tessl-plugin
skills
aem
aem-edge-functions
references
ai-writing-detector
references
apple-music
references
bluebubbles
cloudflare
concur
fluffyjaws
github
gmail
references
icloud
references
mixtape
references
monday
oryx
outlook
pm-prd
pptx
pptx2pdf
presentations
review
save-the-cat
servicenow
references
strava
strudel-music
swarm
references
teams
references
wavespeed
xai-grok