interview-framework — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited interview-framework (Agent Skill) and scored it 83/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 4 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 4 flagged
The text {match} tells the agent to skip the normal "ask the user first" gate. Used adversarially it removes the human-in-the-loop check before destructive or sensitive actions, turning a normally-gated agent into a fire-and-forget executor.
The text {match} tells the agent to skip the normal "ask the user first" gate. Used adversarially it removes the human-in-the-loop check before destructive or sensitive actions, turning a normally-gated agent into a fire-and-forget executor.
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Adaptive brainstorming dialogue algorithm for all spec phases. Each phase command provides its own exploration territory (phase-specific areas to probe).
Each question must have 2-4 options (max 4). Keep the most relevant options, combine similar ones.
Every question asked via AskUserQuestion in Phase 1 leads with the recommended option (except when options are symmetric, in which case [Recommended] may be omitted):
AskUserQuestion:
question: "[Context-aware question referencing prior answers]. [One sentence rationale for the recommendation.]"
options:
- "[Recommended] [Option text -- the AI's suggested answer]"
- "[Alternative 1]"
- "[Alternative 2 if needed]"
- "Other"Rules:
[Recommended] is a label prefix on the first option only.[Recommended] label rather than placing it arbitrarily.Example:
AskUserQuestion:
question: "Where should the spec live? You only have one specs directory configured, so the default is fine unless you want to reorganize."
options:
- "[Recommended] ./specs/ (default)"
- "Let me configure a different path"
- "Other"Before asking any question, determine whether the answer is a codebase fact or a user decision:
Only ask what you cannot discover yourself.
After each response, check for early completion signals using token-based matching:
completionSignals = ["done", "proceed", "skip", "enough", "that's all", "continue", "next"]
tokens = tokenize(userResponse.lower()) # split on whitespace/punctuation
for signal in completionSignals:
if signal in tokens: # exact token match, not substring
-> SKIP remaining questions, move to PROPOSE APPROACHESRead all available context (.progress.md, prior artifacts, goal text). Build a question tree from the exploration territory with dependency ordering. Traverse the tree: auto-resolve codebase facts via exploration, ask user only about decisions. Each question leads with [Recommended] answer. No fixed question caps. Exit when all nodes resolved or user signals completion.
See references/algorithm.md for full pseudocode.
Synthesize dialogue into 2-3 distinct approaches. Each includes: name, description, trade-offs. Lead with recommendation. Present via AskUserQuestion. Maximum 3 approaches (more causes decision fatigue). Trade-offs must be honest. No straw-man alternatives.
See references/algorithm.md for full pseudocode.
Brief recap to user of key decisions and chosen approach. If user corrects something, update before storing. Store in .progress.md under Context Accumulator pattern.
See references/algorithm.md for full pseudocode.
When user selects "Other": ask a context-specific follow-up (never generic "elaborate"). Reference what the user typed. Continue until clarity or 5 rounds. Do not increment askedCount for follow-ups.
See references/examples.md for example follow-up patterns.
After each interview, update .progress.md: read existing content, append new section under "## Interview Responses" with descriptive keys reflecting what was discussed. Include the chosen approach.
See references/examples.md for storage format.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.