- b2ee015: Add a Cursor-flavored marketplace manifest (
.cursor-plugin/marketplace.json) listing only the root Subtext plugin. Cursor-style marketplace indexers read.cursor-plugin/marketplace.jsonbefore.claude-plugin/marketplace.json; without it they fall through to the Claude listing, where the externalsubtext-verifyGitHub source reference either fails parsing or causes Subtext Verify to be surfaced instead of Subtext. Also teachsync-manifest-versions.mjsto keep the new manifest's version in sync.
- 1027276: Document that
review-list-sessionsacceptsemail_address/user_uidto scope the list to one user, andbefore(fed from a prior response'soldest) to page back through their history. Contrasted againstreview-open's identity lookup, which only ever returns that user's most recent session. Added the ticket-triage recipe: list a user's sessions,review-summaryeach candidate,review-openthe match. No tool behavior changed — the parameters already existed; the skill just hadn't caught up.
-
2bac307: Document that
resolutionkeys inreview-zoomaren't limited to the two intrinsic tags (error/exception): a project's.sightmap/can author more. A component'stags:field rides onto any signal that targets it (e.g.defect), and a top-levelsignals:rule can generate a brand-newclassifiedsignal when a match fires against another signal's own fields — surfacing a classification buried in a payload (a 200 response whose body says a payment declined) without touching the signal it fired on.subtext-session's resolution-key description and zoom recipes were updated to match; no tool behavior changed. -
1b5fcf2: subtext-sightmap: remove references to live-mode tools from the sightmap upload instructions. The bridge skill documented
live-connect/live-tunnel(andlive-view-new) as alternate sources of thesightmap_upload_url, but those are Subtext Verify tools, not part of this plugin. The upload path here isreview-open→sightmap_upload_url→ collector (beforereview-zoom/review-snapshot), which is confirmed working; the instructions now describe only that flow.
- 40dccca: subtext-sightmap: reinstate the sightmap side-band upload path. The public skills lost the upload workflow when sightmap support was pulled from the initial release; this restores it in the first-party bridge skill. Bundles the
collect_and_upload_sightmap.pycollector beside the skill (referenced skill-relative, no plugin-root variable) and documentsreview-open/live-connect/live-tunnel→sightmap_upload_url→ collector (before zoom/snapshot) as the preferred way to feed a.sightmap/corpus into a review. The inlinereview-open sightmap:array is demoted to a small, hand-authored / no-Python fallback, with the hierarchical-flatten caveat spelled out.
- 1017842: Bundle the sightmap skills.
sightmap-authoringandsightmap-browserare now vendored from the@sightmap/sightmappackage intoskills/, and a newsubtext-sightmapskill bridges a project's.sightmap/corpus into session review (passing definitions toreview-openfor annotated snapshots). No extra install and no binary required at plugin install time.
- be7d32c: Update the vendored sightmap skills from
@sightmap/sightmap0.14.0 to 0.15.9.sightmap-authoringandsightmap-browserpick up a large batch of upstream improvements — offline/live selector parity forid/class/SVG, visibility-aware coverage,wait-for --view/--componentstep boundaries, client-side redirect reporting, and stricter loud validation — along with the corrected authoring guidance. Also addsAGENTS.mddocumenting the vendoring and release process (the pin is now--save-exactfor reproducible provenance).
- Enrich the marketplace manifests with Subtext branding. The Codex manifest gains an
interfaceblock — display name, short/long descriptions, brand color (#F5447B), example prompts, capabilities, legal links, and bundled composer/logo icons. Homepage, repository, and keywords are added across the Claude, Codex, and Cursor manifests, and author identity is standardized to Subtext (subtext@fullstory.com, https://subtext.fullstory.com).
-
30be04e: Add the
subtext-telemetryskill documenting the newtelemetry-eventMCP tool, which records AI-reported workflow milestones (currently theonboardcapture-snippet install flow) for funnel analysis and success-rate dashboards.The skill covers the nine onboarding steps (
startthroughcomplete), per-step metadata fields, outcome classifications, and fire-and-forget semantics — a failed telemetry event is a soft failure that must never block or abort the user's workflow.Cross-references in
subtext-shared,subtext-using-subtext,subtext-setup-plugin, and the README were updated to match.
-
e2bf299: Prefix every skill folder with
subtext-(e.g.subtext-review,subtext-session,subtext-privacy,subtext-shared,subtext-using-subtext,subtext-setup-plugin).The namespace now lives in the skill folder name itself, so skills stay collision-free across the harnesses that don't namespace plugins (Cursor,
.agents/skills,npx openskills). Skill invocation names change accordingly — e.g. in Claude Code the review skill is nowsubtext:subtext-review. Cross-references in skill bodies and the README were updated to match. -
1cc84b9: Rewrite
subtext-sessionandsubtext-reviewfor the new review tool surface:review-list-sessions,review-open,review-summary,review-zoom,review-snapshot, andreview-closereplacereview-open/review-view/review-inspect/review-diff/review-close.Every session open returns a map — signal counts by kind/tag, page flow, and a density strip — that stays whole regardless of what you later zoom into.
review-zoomtakes aresolutionallow-list ({scope|kind|tag: grain}, grainsdigest/standard/machine/detail, finest-wins) for progressive disclosure over the signal stream.review-snapshotreplacesreview-view/review-inspectfor a screen at a moment (screenshot + component tree + boxes, rooted at an optionalcomponent_id).subtext-shared's tool prefix table was updated to match. -
72ea8e9: Document
privacy-url-list,privacy-url-create,privacy-network-list, andprivacy-network-createin thesubtext-privacyskill — new MCP tools for managing URL privacy rules (scrub host/path/query) and network privacy rules (elide/allowlist request-response bodies), alongside the existing element-block rule tools.privacy-url-createandprivacy-network-createalso double as update: passguid(URL rules) oroverwrite=true(network rules) to replace an existing rule in place instead of creating a new one. Unlike element rules, URL and network rules have no preview/promote scope — created or updated rules apply to all sessions immediately.Cross-references in
subtext-shared,subtext-using-subtext,subtext-setup-plugin, and the README were updated to match.