CtrlK
BlogDocsLog inGet started
Tessl Logo

matthew-a-carr/draft-spec

Draft a SPEC from a GitHub issue and open a PR for review. Use when triggered by a routine on `Issue opened` with label `ai:plan`, or when a user asks to "draft a spec from issue #NNN". Non-interactive — proceeds on best interpretation and surfaces any unresolved questions in the SPEC's §Open Questions section rather than blocking for clarification. The PR review loop is where ambiguity gets resolved.

78

3.03x
Quality

90%

Does it follow best practices?

Impact

100%

3.03x

Average score across 1 eval scenario

SecuritybySnyk

Low

Low-risk findings worth noting

Overview
Quality
Evals
Security
Files

Low

Low-risk findings.

1 low severity finding. Worth noting, but not necessarily harmful.

Low

W011: Third-party content exposure detected (indirect prompt injection risk).

What this means

The skill exposes the agent to untrusted, user-generated content from public third-party sources, creating a risk of indirect prompt injection. This includes browsing arbitrary URLs, reading social media posts or forum comments, and analyzing content from unknown websites.

Why it was flagged

In routine mode, the skill reads the GitHub issue title/body (outsider-authored issue text) via `mcp__github__issue_read` and then uses that body as the source of truth to fill the SPEC sections and PR body, so free-form outsider text is ingested into the LLM context.

Where we found it

github.com

domain · 4 sites

The skill fetches GitHub issue title, body, labels, and comments via mcp__github__issue_read (which reads from github.com) and uses that outsider-authored content as the "source of truth" to fill SPEC sections and the PR body, directly ingesting untrusted text into the LLM context.

SKILL.md

101

Read the issue body via `mcp__github__issue_read` (or the equivalent MCP tool) for `$ISSUE_NUMBER` in `$REPO`. Capture title, body, labels, and any existing comments.

SKILL.md

104

The issue body's "Parent epic" field (per the issue template) names the epic, or the `epic:NNN` label may point at it.

SKILL.md

133

Fill in **every** section of the template, using the issue body as the source of truth for scope, acceptance, and motivation.

SKILL.md

180

Body: link to the issue, summary, the §Open Questions list verbatim, the `review-spec` verdict, and a **Notes** section if

Report incorrect finding
Audited
Security analysis
Snyk