Skip to content

skills: carry when_to_use trigger text into Cursor, which ignores the key #12482

Open

Description

@kyle-sexton

Parent

Refs #7556 (probe result).

Problem

Cursor ignores the when_to_use skill frontmatter key. When our plugins load in Cursor, each skill is listed with only its description. A trigger phrase kept in when_to_use never reaches the model, so automatic invocation in Cursor loses it.

  • Probe, Cursor CLI 2026.10.19-6bbf2c4, 2026-11-02: a phrase placed only in when_to_use was absent from the skill's listing entry, and the description was present.
  • Docs: https://cursor.com/docs/skills.md lists the skill frontmatter fields as name, description, paths, disable-model-invocation, icon, color and metadata. when_to_use is not among them.

Affected skills on main today (3): computer-use/skills/diagnose, playwright/skills/demo-video and playwright/skills/playwright.

Outcome

Decide how a skill's trigger text reaches Cursor without a fork or Cursor-specific files. Options include moving it into description or keeping when_to_use and accepting the loss. Then apply the decision and record it in the skill-authoring guidance.

Out of scope

Cursor-specific files or a forked plugin.

Done when

Decision: comment.

  • In plugins/computer-use/skills/diagnose/SKILL.md, plugins/playwright/skills/demo-video/SKILL.md and plugins/playwright/skills/playwright/SKILL.md, the trigger text moves into description and when_to_use is gone.
  • The skill-authoring guidance says trigger text goes in description.
  • plugins/skill-quality/scripts/check-listing-budget.sh and check-skill.sh pass on the changed skills, with text shortened rather than exempted.
  • A follow-up issue is filed for the other four skills that use when_to_use (skill-quality check, harness-ops audit-native-overlap and inventory, session-flow recommend-skills).

Activity

  1. added
    needs-triageNot yet classified. Floor until a type and one priority tier are set.
    on Nov 2, 2026
  2. github-actions commented on Nov 2, 2026

    @github-actions
    Contributor

    Proposed work class: work-class: scoped
    Basis: automated intake triage; the lanes App applied this class.

    Size: Small
    Complexity: Low
    Uncertainty: Known
    Flags: none
    Blocked by: none

    Understood: Cursor ignores the when_to_use frontmatter key, so trigger text in three skills (computer-use diagnose, playwright demo-video and playwright) never reaches Cursor. The issue asks to move that text into description, record the rule in the skill-authoring guidance, keep the listing-budget and skill checks passing by shortening text, and file a follow-up for the other four skills that use when_to_use.

    The done-when items are exact and the decision comment answers the open design question. Nothing is missing. I found no likely duplicates among the open issues.

    Automated triage, applied by the lanes App.

  3. melodic-automation-lanes commented on Nov 2, 2026

    @melodic-automation-lanes
    Contributor

    The triage verdict left this issue at status: needs-decision:

    • held by needs-human
    • no lanes App verdict comment shows whether an earlier verdict was flagged
  4. added
    work-class: scopedA briefed fix or small feature; blast radius bounded by the brief, tests exist.
    and removed
    needs-triageNot yet classified. Floor until a type and one priority tier are set.
    on Nov 2, 2026
  5. melodic-automation-lanes commented on Nov 2, 2026

    @melodic-automation-lanes
    Contributor

    Refinement. A read-only run explored this repository, searched its issues and pull requests, and read the allowed docs to draft what follows. On an issue a listed human filed, it counts as the issue's spec once posted, while unedited; it is still model text, so check it.

    Intended outcome: Fold the trigger text of the three skills' when_to_use into description (keeping the listing budget), and record in the skill-authoring guidance that Cursor ignores when_to_use.

    Related work

    Open questions

    1. Should the trigger text move into description (merging when_to_use into it for the 3 skills), or should when_to_use stay and the Cursor loss be accepted?
      RECOMMENDED: Move it into description for the three affected skills, and drop when_to_use there. Basis: Cursor documents description as supported and the probe showed it reaches the listing; the three keys are at plugins/computer-use/skills/diagnose/SKILL.md:3, plugins/playwright/skills/demo-video/SKILL.md:3, plugins/playwright/skills/playwright/SKILL.md:3
    2. Should the rule apply to all skills (guidance says put trigger text in description going forward), including the four other skills that use when_to_use (skill-quality check, harness-ops audit-native-overlap and inventory, session-flow recommend-skills)?
      RECOMMENDED: Make it a general rule in the guidance, but only change the three named skills in this issue; leave the other four to a follow-up. Basis: judgment
    3. Does merging into description risk exceeding the listing budget or the description length limits enforced by the repo's checks?
      RECOMMENDED: Apply the merge and require that the listing-budget and skill checks still pass; if a skill goes over, shorten the text rather than exempting it. Basis: plugins/skill-quality/scripts/check-listing-budget.sh

    Sources read

    • plugins/computer-use/skills/diagnose/SKILL.md:3: when_to_use holds the trigger text for diagnose
    • plugins/playwright/skills/demo-video/SKILL.md:3: when_to_use holds the trigger phrases for demo-video
    • plugins/playwright/skills/playwright/SKILL.md:3: when_to_use holds the trigger phrases for playwright
    • plugins/playbooks/CHANGELOG.md:1316: the only mention of when_to_use in playbooks markdown; skill-authoring guidance does not currently document the key
    • plugins/skill-quality/scripts/check-listing-budget.sh: tooling that counts when_to_use toward the listing budget

    To answer, post a comment that starts with this line:

    **Decision recorded.** <answer>
    

    Automated refinement by the lanes App. Answer with a comment whose first line is **Decision recorded.**.

  6. kyle-sexton commented on Nov 2, 2026

    @kyle-sexton
    MemberAuthor

    Agent choice, not an owner answer. The owner did not answer this question. Lane 2 chose on the #7556 evidence, and Issue Triage owns the question. Accept the triage recommendations. (1) Move the trigger text into description for the three skills (computer-use diagnose, playwright demo-video and playwright) and drop when_to_use there. Basis: the #7556 probe showed Cursor reads description and ignores when_to_use. (2) The skill-authoring guidance says trigger text goes in description. The other four skills that use when_to_use move in a follow-up issue this PR files. (3) The listing-budget and skill checks must still pass; shorten text rather than exempt a skill. Basis: plugins/skill-quality/scripts/check-listing-budget.sh. Decided under the owner's standing direction (decide from evidence; no intent, security or cost question here).

  7. added
    agent-readyFully specified and briefed; eligible for autonomous pickup from the frontier.
    and removed
    status: needs-decisionAwaiting a human or maintainer judgment call.
    on Nov 2, 2026
  8. melodic-automation-lanes commented on Nov 2, 2026

    @melodic-automation-lanes
    Contributor

    This records a re-fire of an earlier refusal, not a new refusal. The lanes kill switch stopped run 41522463663, the work-resolve-issue run that agent-ready started, before it did any work; that run ended at 2026-11-02T20:53:57Z. work-unblock has now removed and added agent-ready back to start a fresh run. A kill-switch refusal is no fault in this issue or the lanes, so it never counts against later re-fires; after limits.limit-stops-per-issue of them since a person last added agent-ready or a run last reported, work-unblock waits longer before each one, up to 24 hours.

  9. added
    agent-readyFully specified and briefed; eligible for autonomous pickup from the frontier.
    and removed
    agent-readyFully specified and briefed; eligible for autonomous pickup from the frontier.
    on Nov 2, 2026
  10. github-actions commented on Nov 2, 2026

    @github-actions
    Contributor
    No description provided.
  11. added
    needs-humanHuman-in-the-loop required; autonomous sessions must not resolve items carrying this.
    and removed
    agent-readyFully specified and briefed; eligible for autonomous pickup from the frontier.
    on Nov 2, 2026
  12. melodic-automation-lanes commented on Nov 2, 2026

    @melodic-automation-lanes
    Contributor

    The work-resolve-issue lane stopped partway through this issue and needs a person.

    Reason: security

    Why, in the run's own words:

    The run did not start: the issue's title or body changed after agent-ready was added, so the runner wrote no issue file for the skill and no model ran.

    Run: https://github.com/melodic-software/claude-code-plugins/actions/runs/41532046031

    To retry, remove needs-human and add agent-ready again.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    needs-humanHuman-in-the-loop required; autonomous sessions must not resolve items carrying this.priority: mediumReal value, no hard deadline; normal backlog flow.status: needs-decisionAwaiting a human or maintainer judgment call.work-class: scopedA briefed fix or small feature; blast radius bounded by the brief, tests exist.

    Type

    Fields

    Work status

    needs-human

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions