Official Google docs (Search/SEO, Search Console, Ads, GA4) as a validated local knowledge base (English) + two Claude Code skills: cited retrieval and a multi-agent SEO audit. Reproducible, measured (92% recall@5).
SaferSkills independently audited google-search-ads-analytics-docs (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.
A curated, validated corpus of 304 official Google documentation pages under Docs/, covering four products. Provide precise, cited answers; do not guess when the answer is in the corpus.
Docs/README.md - master map (start here).Docs/<section>/README.md - 17 section indexes (tables of contents).index.json (bundled) - every doc's title, section, product, source_url.search.py (bundled) - frontmatter-aware ranking search (stdlib).Products: Google Search Central (SEO/crawling/indexing/structured-data), Search Console (reports), Google Ads (campaigns/conversions), Google Analytics 4 (collection gtag.js + Measurement Protocol).
eval: 96% recall@5). Needs the repo venv:
.venv/bin/python3 .claude/skills/google-search-ads-analytics-docs/hybrid.py "<the user's question>"Fast when the daemon runs (.venv/bin/python3 scripts/serve_models.py). Stdlib fallback (no venv): python3 .claude/skills/google-search-ads-analytics-docs/search.py "<terms>" - lexical, stem-aware, ~0.4s, works anywhere. All return ranked docs with title, path, source_url, snippet.
Examples: "block a page from indexing", "product structured data with price and rating", "submit a sitemap", "track GA4 events with gtag.js", "google ads conversion tracking".
fits in context). Read complete files - never answer from the snippet alone. Quote tables and JSON-LD/code examples verbatim; do not paraphrase code.
source_url from the result for every claim, e.g.(source: https://developers.google.com/search/docs/...).
search.py returns nothing useful, OR the question is conceptual /paraphrased (lexical match is weak), use the semantic fallback**:
python3 .claude/skills/google-search-ads-analytics-docs/vec_search.py "<the user's question>"It embeds the query (multilingual model) and returns the closest docs even when wording differs. Then read the top files whole and cite source_url as above. (Requires the repo venv with sentence-transformers.)
Docs/README.md -> the relevantsection README.md -> pick candidates; or grep/Glob over Docs/ for exact terms and technical tokens (hreflang, canonical, robots.txt, gtag, JSON-LD props, HTTP codes). Prefer search.py/hybrid.py, which rank for you.
For a multi-part or research-style question, run the bundled `docs-research` workflow (Workflow tool): it decomposes the question, hybrid-retrieves and reads top docs per sub-question, adversarially verifies each claim against its cited source_url, then synthesizes one cited answer. It scales agents to the number of sub-questions and claims - no fixed cap. Saved at .claude/workflows/docs-research.js.
source_url (only theauthored KNOWLEDGE-BASE-ARCHITECTURE.md), say so.
user's language; quote source text as-is.
missing, say the corpus doesn't cover it.
file carries YAML frontmatter (title, source_url, section, ...).
`vec_search.py` (semantic, embeddings - fallback for fuzzy/conceptual queries; rebuild with scripts/build_embeddings.py). See Docs/KNOWLEDGE-BASE-ARCHITECTURE.md.
search.py "query" --top 5 - --no-content (faster, metadata-only) - --doc <doc_id> (resolve one doc's citation + head).
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.