can-i-help — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited can-i-help (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
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.
extend op-cell: turn repository state into contributor action. Collect project context, ask the developer what kind of contribution they want, map that interest to the strongest native signals, then return exact file/line recommendations with data-backed rationale and an executable first step.
The invariant: no vague “look around src/”. Every recommendation names a file and preferably a line, states why the target matters, explains the local code in 2–3 sentences, and gives the first command or edit.
Apply:
NOT:
fd '^(package.json|pyproject.toml|Cargo.toml|go.mod|pom.xml|build.gradle|deno.json|bun.lockb|pnpm-lock.yaml|requirements.txt)$' <repo>.fd --max-depth 3 --type f <repo>; exclude generated/vendor directories.fd '^(README|CONTRIBUTING|DEVELOPMENT|HACKING)(\..*)?$' <repo> then read the relevant file ranges.fd '(^test$|^tests$|__tests__|spec$|\.test\.|\.spec\.)' <repo>.ast-grep, rg, fd, and git history recipes. Keep every signal as {kind, file, line?, metric, confidence, evidence}.codegraph_impact on candidate symbols and codegraph_files for local neighborhoods. Fallback: count importers with rg -n 'from .*/<module>|require\(.*/<module>|use .*<module>|import .*<module>' and prefer files with few dependents plus visible neighboring tests.git --no-pager log --since='180 days ago' --name-only --format='commit:%H' -- <src-paths>; rank source files by touches, then subtract files whose commits include a matching test|tests|spec|__tests__ path. Certainty HIGH when source churn ≥5 and zero matching test co-change; MEDIUM when no test root exists but naming conventions are unclear.git --no-pager log --since='365 days ago' --name-only --format='commit:%H' -- docs README* CONTRIBUTING*; compute doc commits with no source files. Symbol recipe: extract backticked identifiers/import paths from docs, check via codegraph search, else rg -n '<identifier-or-path>' <repo>. Certainty HIGH for broken import/path; MEDIUM for zero code coupling.git --no-pager log --since='365 days ago' --regexp-ignore-case --grep='fix|bug|regression|crash|panic|race|leak|broken' --name-only --format='commit:%H' -- <repo>; bug-fix rate = fix_touches / max(total_touches, 1). Certainty HIGH when fix_touches ≥3 and rate ≥0.25.gh issue list --state open --limit 15 --json number,title,labels. Treat labels bug, good first issue, help wanted, documentation, test, testing, cleanup, refactor as routing hints. If gh fails, mark issue signal unavailable and continue.ask tool, single-select, exactly one Recommended option. Do this even if signals already look obvious.Prompt: What kind of contribution do you want to make?
Options:
New to the stack — Recommended when good-first areas or cleanup candidates exist.Experienced — hard problems, bugspots, architecture-adjacent issues.Want to write tests — test gaps and bugspot overlap.Want to fix bugs — bug-labelled issues, bugspots, suspicious conditions.Want to improve docs — stale references, doc drift, documentation issues.Want quick cleanup — verified deletion-only or tightly-contained cleanup.references/interest-routing.md as the contract. Lead with the strongest non-empty primary signal for the chosen interest; skip empty subsections with one sentence, not a filler apology. If the chosen interest has no supporting signal, say which signal was empty and pivot to the nearest adjacent interest with data.bat -P -p -n src/parser/expr.ts, rg -n 'parseExpr' tests src, gh issue view 42, or edit src/foo.ts:88-93 after reading context.Want me to walk you through one of these? I can read the target code, outline the exact diff, or draft the PR description. Do not stop at the recommendation list.test gap ∩ bugspot beats standalone test gap; doc drift ∩ open documentation issue beats standalone stale doc.Cleanup candidates are attractive but dangerous because “deletion-only” is easy to overclaim.
Before any cleanup recommendation says “zero behavior change”:
rg -n '<symbol>' <repo> and language-specific ast-grep for import/export sites.| Gate | Pass Criteria | Blocking |
|---|---|---|
| Interest asked | ODIN ask single-select used before recommendations | Yes |
| Signals collected | At least base context plus one of test gaps / doc drift / bugspots / issues / cleanup candidates | Yes |
| File-level target | Every recommendation includes exact file and line/range when available | Yes |
| Data-backed why | Every recommendation has a metric, label, confidence, or observed coupling fact | Yes |
| Code read | Each recommendation's How is based on a read source/doc range | Yes |
| Cleanup verified | Cleanup claims passed caller + context checks | Yes for zero-behavior wording |
| Four-field shape | What / Why / How / First step present for each item | Yes |
| Go-deeper close | Final question offers walkthrough/diff/PR help | Yes |
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.