auto-research — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited auto-research (Agent Skill) and scored it 96/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 1 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 1 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.
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.
Improve a target prompt artifact (SKILL.md, CLAUDE.md, subagent definition, slash-command, or generic prompt markdown) by:
Run autonomously between steps 1 and 4. Stop only at step 5.
The user will name a target artifact (a path, or a phrase like "my copywriting skill" — resolve it). Resolution rules:
.claude/skills/<name>/SKILL.md (project) then ~/.claude/skills/<name>/SKILL.md (user).Then:
.auto-research/<target-name>/ next to the target. If the target's parent directory is not under git, run git init there so commit/reset bookkeeping works locally. (If the user's project root has its own git repo and the target lives inside it, use the existing repo — do NOT init a sub-repo.).auto-research/<target-name>/iteration-0/baseline.md and record git rev (git rev-parse HEAD if available, else "untracked").iter | hypothesis | score_before | score_after | decision | git_rev | timestamp | notes.The whole workspace structure is documented in references/eval-loop.md. Read that file when about to run the eval loop in Phase 4.
Read the artifact and produce a list of research topics — concrete questions whose answers would let you rewrite the artifact better. Each topic must be (a) likely to have an authoritative answer on the web in 2026 and (b) directly applicable to a section, claim, or convention in the target.
Examples of well-formed topics:
description field, and what are the current character limits?".claude/agents/*.md frontmatter fields are currently supported, and how should tools be specified?"<tool> frontmatter field has replaced <old-tool> in 2026?" (only ask this if the target uses something that may be deprecated)Anti-patterns:
Read references/research-strategies.md for the per-artifact-type topic checklist and source authority ranking.
Output of this phase: a research_topics list (5–12 topics) saved to .auto-research/<target-name>/research_topics.md.
For each topic, spawn a parallel sub-agent (general-purpose, model: sonnet) using the Agent tool. Each sub-agent must:
WebSearch queries (current year 2026) on the topic.WebFetch the most authoritative results — see source authority ranking in references/research-strategies.md.### Topic: <topic>
**Verdict:** <1–3 sentence answer>
**Evidence:**
- Quote: "..." — <URL>
- Quote: "..." — <URL>
**Confidence:** high | medium | low
**Implications for rewrite:** <1–2 sentences>Spawn all topic agents in parallel in one message (multiple Agent tool calls in a single response). Wait for all to complete. If any returns "low confidence" or no source, mark that topic as uncertain and either drop it from the rewrite or ask one targeted clarifying research question.
Save aggregated findings to .auto-research/<target-name>/findings.md.
Apply the findings to produce a rewritten artifact at .auto-research/<target-name>/iteration-1/proposal.md.
Rules:
findings.md.Then produce a rationale block at .auto-research/<target-name>/iteration-1/rationale.md. Format per change:
### Change: <one-line summary>
**Old:** <quoted excerpt>
**New:** <quoted excerpt>
**Why:** <1–2 sentences>
**Source:** <URL>Decide the validation strategy by artifact type. Look up the rules in references/artifact-types.md — the table there says, per type, whether the autonomous Karpathy eval loop is run or only format validation.
Deterministic checks before any eval loop:
name and description; description ≤ 1024 chars; body ≤ 500 lines; references one level deep only.name, description, optional tools, model); description third-person, "use when …" pattern.If format validation fails, fix the rewrite proposal and re-validate before continuing. Do not advance with a malformed proposal.
Eligible types per references/artifact-types.md: SKILL.md (always), generic-prompt with measurable output (if user supplied test inputs).
Run the loop documented in references/eval-loop.md. The reference file owns the full operational manual:
evals.json with binary assertionsscripts/score_evals.pyThe loop runs autonomously — do not pause to ask the user inside the loop. Push notifications are fine; questions are not.
If the artifact type is in the skip-eval set (CLAUDE.md, subagent, slash-command, generic-prompt without test inputs), the score is "format-validation-only: PASS/FAIL". Do not invent eval scores.
This is the only point at which the skill stops and asks the user. Read references/confirmation-gate.md for the exact report format.
Produce a single confirmation report containing:
iterations.tsvfindings.md, deduped.auto-research/<target-name>/final.diff)Then ask exactly one question: "Apply these changes to <path>? (yes / no / iterate-with-feedback)".
.auto-research/<target-name>/RESULT.md.Do not loop indefinitely — if the user says "iterate" three times in a row without "yes", surface that explicitly and ask whether to abort.
general-purpose sub-agents, model sonnet, run in parallel.general-purpose sonnet sub-agents to execute the target skill on each test prompt (parallelisable per prompt within an iteration). The scorer is deterministic Python.scripts/score_evals.py) or evals.json — those are the locked ground truth, equivalent to Karpathy's prepare.py.skill-creator skill for that. This skill is for improving existing artifacts.skill-creator already does that and is composable with this skill.~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.