Skip to content
Report library
Purpose / Other

To Spec Skill Security Audit

What the author says it does (original text)

Turn the current conversation into a spec and publish it to the project issue tracker: no interview, just synthesis of what you've already discussed.

Independent security check

Security risks found

Files checked
2
Risks found
2
Could it run dangerous commands?Looks for programs run straight after downloading, remote control of your computer, and hidden commands.No risks found
Could it expose your files or keys?Looks for uploads of files containing passwords or keys, and keys written directly in the code.Risks found: 1
Medium risk

Conversation and repository information is published before full-content approval

Source references: 4
What we found

The Skill extracts the problem, architecture, interfaces, schemas, and interactions from the conversation and repository, then publishes them directly. It only asks for confirmation of testing seams, not review of the full draft, sensitive-information checks, or confirmation of tracker visibility.

Why this matters

Internal designs, customer details, unreleased features, or other sensitive context could enter a durable issue visible to additional members or issue subscribers.

When invoked with an issue tracker configured, the Skill synthesizes the current conversation and codebase information and publishes the specification to the project's tracker. It asks the user to confirm only the testing seams, not the complete draft, sensitive-data screening, or issue visibility. Sensitive conversation details or codebase architecture could therefore become visible to tracker readers. A user can ask the author to require full-draft approval, sensitive-data review, and confirmation of the destination project and visibility before publishing.

SKILL.md:7In the instructionsOpen original file
This skill takes the current conversation context and codebase understanding and produces a spec. Do NOT interview the user; just synthesize what you already know.The issue tracker and triage label vocabulary should have been provided to you. If not, tell the user to run `/setup-matt-pocock-skills`.
Show 3 other places
SKILL.md:13In the instructionsOpen original file
1. Explore the repo to understand the current state of the codebase, if you haven't already. Use the project's domain glossary vocabulary throughout the spec, and respect any ADRs in the area you're touching.2. Sketch out the seams at which you're going to test the feature. Existing seams should be preferred to new ones. Use the highest seam possible. If new seams are needed, propose them at the highest point you can. The fewer seams across the codebase, the better - the ideal number is one.Check with the user that these seams match their expectations.3. Write the spec using the template below, then publish it to the project issue tracker. Apply the `ready-for-agent` triage label - no need for additional triage.
SKILL.md:43In the instructionsOpen original file
## Implementation DecisionsA list of implementation decisions that were made. This can include:- The modules that will be built/modified- The interfaces of those modules that will be modified- Technical clarifications from the developer- Architectural decisions- Schema changes- API contracts- Specific interactions
SKILL.md:19In the instructionsOpen original file
3. Write the spec using the template below, then publish it to the project issue tracker. Apply the `ready-for-agent` triage label - no need for additional triage.
Could it delete files or keep running?Looks for broad file deletion, disk overwrites, and programs set to start automatically.No risks found
Could it bypass safety checks?Looks for skipped website security checks, excessive file access, or actions that skip your approval.No risks found
Could it mislead the AI or hide text?Checks the skill instructions for requests to ignore you, influence the report, or hide text in invisible characters.No risks found
Could it change links or payment recipients without asking?Looks for forced referral or payment changes combined with instructions to hide the change.Risks found: 1
Medium risk

Automatic “ready-for-agent” labeling may falsely signal implementation approval

Source references: 2
What we found

After publication, the Skill is explicitly instructed to apply `ready-for-agent` and skip additional triage. It does not require user approval of the final specification or confirmation of that status label.

Why this matters

A team may treat an incomplete, misunderstood, or unapproved specification as ready for implementation, affecting prioritization, assignment, and development decisions. Whether the label triggers automation depends on project configuration and is not established by the supplied evidence.

The process explicitly publishes the specification and immediately applies `ready-for-agent`, with no additional triage. The only explicit user check is for testing seams, not approval of the final specification or status label. If the project treats that label as implementation approval or uses it to trigger automation, an incompletely reviewed specification could enter an execution queue. The impact depends on the project's label semantics. A user can ask for final-spec approval before labeling and clarification of whether the label triggers agents or automation.

SKILL.md:15In the instructionsOpen original file
2. Sketch out the seams at which you're going to test the feature. Existing seams should be preferred to new ones. Use the highest seam possible. If new seams are needed, propose them at the highest point you can. The fewer seams across the codebase, the better - the ideal number is one.Check with the user that these seams match their expectations.3. Write the spec using the template below, then publish it to the project issue tracker. Apply the `ready-for-agent` triage label - no need for additional triage.
Show 1 other places
agents/openai.yaml:4In the instructionsOpen original file
  short_description: "Turn a conversation into a spec"policy:  allow_implicit_invocation: false

Inside this skill

8 instruction sections

The Skill reads the current conversation and codebase, then publishes the synthesized specification to the project issue tracker; it does not merely create a local draft.

View source
SKILL.md:7In the instructionsOpen original file
This skill takes the current conversation context and codebase understanding and produces a spec. Do NOT interview the user; just synthesize what you already know.
SKILL.md:13In the instructionsOpen original file
1. Explore the repo to understand the current state of the codebase, if you haven't already. Use the project's domain glossary vocabulary throughout the spec, and respect any ADRs in the area you're touching.
SKILL.md:19In the instructionsOpen original file
3. Write the spec using the template below, then publish it to the project issue tracker. Apply the `ready-for-agent` triage label - no need for additional triage.

The configuration disables implicit invocation, so the user would normally need to select this Skill explicitly; once invoked, however, publication remains a direct step in its process.

View source
SKILL.md:4In the instructionsOpen original file
description: "Turn the current conversation into a spec and publish it to the project issue tracker: no interview, just synthesis of what you've already discussed."disable-model-invocation: true---
agents/openai.yaml:4In the instructionsOpen original file
  short_description: "Turn a conversation into a spec"policy:  allow_implicit_invocation: false
SKILL.md:19In the instructionsOpen original file
3. Write the spec using the template below, then publish it to the project issue tracker. Apply the `ready-for-agent` triage label - no need for additional triage.

The process asks the user to confirm testing seams, but it does not require review of the complete specification or separate confirmation of publication and labeling.

View source
SKILL.md:15In the instructionsOpen original file
2. Sketch out the seams at which you're going to test the feature. Existing seams should be preferred to new ones. Use the highest seam possible. If new seams are needed, propose them at the highest point you can. The fewer seams across the codebase, the better - the ideal number is one.Check with the user that these seams match their expectations.3. Write the spec using the template below, then publish it to the project issue tracker. Apply the `ready-for-agent` triage label - no need for additional triage.
Start here · InstructionsSKILL.md
to-spec
Lines connect the instruction file to its sections, not an observed execution order. Select a section to read the source.
Files and check records2 files

Coverage and gaps

Content covered in each file

These are the source ranges included in this check, not a guarantee that every issue has been resolved.

  • SKILL.mdFull text included
  • agents/openai.yamlFull text included

This report is for the version above. We read the available code and instructions without running the skill or checking extra packages it installs. This is not a promise of safety: a different version or setup may behave differently.

  • SKILL.mdInstructions
  • agents/openai.yamlSupporting file
Lines read
82
File checksum (to compare versions)
360099c2af03fb044092fe18ea7b12a86ee1975a7b2bd17b312c4ce0d4d2eb6a