Official agent skill

Specmap

by SAP in SAP/project-foxhound

Map relationships between a web spec section, its Firefox implementation code, and Web Platform Tests.

OfficialGPL-3.0Auto-check passedSecurity

Install Specmap

skills CLI
$ npx skills add SAP/project-foxhound --skill specmap -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install SAP/project-foxhound specmap --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/SAP/project-foxhound.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/specmap .claude/skills/specmap && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
specmap
GitHub stars
180
Used in
1 other repo
Token cost
~1.3k tokens
SKILL.md length
428 words
Files
1
Skills in repo
10
Repo updated
First seen
Licence
GPL-3.0

At a glance

Map relationships between a web spec section, its Firefox implementation code, and Web Platform Tests.

  • Works in 5 steps: Identify the Spec Target and Read Spec… → Query Searchfox for References → Analyze Gaps → …
  • Starting work on a spec feature
  • SKILL.md covers Step 1: Identify the Spec…, Step 2: Query Searchfox for…, Step 3: Analyze Gaps and Step 4: Present the Map, plus 2 more sections
  • Calls curl; reaches html.spec.whatwg.org and w3c.github.io

What it does

Specmap is an agent skill from SAP/project-foxhound, published by the product's own GitHub organization. Map relationships between a web spec section, its Firefox implementation code, and Web Platform Tests. Use when starting work on a spec feature, checking implementation coverage, or finding which WPTs to enable.

Its SKILL.md is about 1.3k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Security. The repository describes itself as: A web browser with dynamic data-flow tracking enabled in the Javascript engine and DOM, based on Mozilla Firefox (https://github.com/mozilla-firefox/firefox). It can be used to… The licence is GPL-3.0.

When your agent uses it

  • Starting work on a spec feature
  • Checking implementation coverage
  • Finding which WPTs to enable

Example prompts

  • “/specmap”

Requirements

  • Pre-approved tools (allowed-tools): Bash(searchfox-cli:*), Bash(webspec-index:*), Bash(curl:*), Bash(jq:*), Read, Grep, Glob

Workflow steps

5 steps, taken from the step headings in SKILL.md.

  1. Identify the Spec Target and Read Spec Content
  2. Query Searchfox for References
  3. Analyze Gaps
  4. Present the Map
  5. Offer to Add Missing References

What it can do on your machine

Read from SKILL.md and the folder at commit 9dcb850. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Bash(searchfox-cli:*)
    • Bash(webspec-index:*)
    • Bash(curl:*)
    • Bash(jq:*)
    • Read
    • Grep
    • Glob

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • curl

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • html.spec.whatwg.org
    • w3c.github.io

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Specmap loads about 1.3k tokens when it runs. Until then it costs about 55 tokens; SKILL.md has 428 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~55
When it runs · the whole SKILL.md, loaded when a task matches
~1.3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from SAP/project-foxhound at commit 9dcb850, republished under its GPL-3.0 licence (© SAP). 428 words, ~1,290 tokens.

Download SKILL.mdSave it as .claude/skills/specmap/SKILL.md (or your agent's skills folder).
name
specmap
description
Map relationships between a web spec section, its Firefox implementation code, and Web Platform Tests. Use when starting work on a spec feature, checking implementation coverage, or finding which WPTs to enable.
allowed-tools
Bash(searchfox-cli:*), Bash(webspec-index:*), Bash(curl:*), Bash(jq:*), Read, Grep, Glob
argument-hint
[spec-url-or-fragment] [optional: specific-algorithm]

SpecMap: Spec-Code-WPT Mapping

Spec URL or fragment: $0 Specific algorithm (optional): $1

Step 1: Identify the Spec Target and Read Spec Content

If you have a spec URL (from a bug report, code comment, etc.), query it directly:

bash
webspec-index query 'https://html.spec.whatwg.org/#navigate' --format markdown
webspec-index refs 'https://html.spec.whatwg.org/#navigate'

If you only have a feature name, search for it:

bash
webspec-index search "FEATURE_NAME" --limit 5
webspec-index search "FEATURE_NAME" --spec HTML --limit 5

If the exact fragment is unknown, find it by pattern or by listing sections:

bash
webspec-index anchors '*navigate*' --spec HTML
webspec-index list HTML

For WebIDL interface definitions (not provided by webspec-index), use the spec shortname (visible in search results or derivable from the URL hostname/path):

bash
curl -s "https://w3c.github.io/webref/ed/idl/SHORTNAME.idl"

Step 2: Query Searchfox for References

Use searchfox-cli to find files referencing the spec section, split by file type:

bash
# Implementation code (excludes test and generated files)
searchfox-cli -q "DOMAIN.*#FRAGMENT" --only-normal -l 200
searchfox-cli -q "#FRAGMENT" --only-normal --path "dom\|html\|layout\|widget" -l 200
searchfox-cli --id InterfaceName --only-normal -l 100

# Test files only
searchfox-cli -q "DOMAIN.*#FRAGMENT" --only-tests -l 200
searchfox-cli -q "#FRAGMENT" --only-tests -l 200

If results are sparse, try alternative fragment spellings or the IDL interface/method name from the webref IDL extract. If results are too broad, narrow with --path.

Step 3: Analyze Gaps

Cross-reference the webref algorithm steps from Step 1 against the searchfox results from Step 2 to identify:

  • Spec steps with no corresponding implementation code
  • Spec steps with implementation but no test coverage in WPT
  • WPT tests that are currently failing or disabled

WPT is the preferred test location for web platform features. Do NOT flag the absence of Mozilla-specific tests (mochitest, browser-chrome, etc.) as a gap when there is adequate WPT coverage. Mozilla tests are only expected for Firefox-specific behavior that WPT cannot cover (e.g. chrome-privileged APIs, internal pref gating, process architecture).

To check WPT status, look for .ini expectation files using dedicated tools (avoid bash loops which trigger permission prompts):

  1. Use Glob to find .ini files: testing/web-platform/meta/PATH/*.ini
  2. For each .ini file found, use Grep with output_mode: "count" to count expected: and disabled: lines.

No .ini file means the test fully passes. An .ini with disabled: lines means skipped tests. Count expected: lines for the number of non-default expectations.

Show full SKILL.md (134 more words)Show less

Step 4: Present the Map

Output a structured report:

## SpecMap: [Feature Name]
Spec: [full spec URL with fragment]

### Implementation Code
| File | Function/Class | Line | Notes |
|------|---------------|------|-------|
| dom/Foo.cpp | Foo::Bar() | 123 | Step 4 of algorithm |

### Web Platform Tests
| Test File | Status | Tests |
|-----------|--------|-------|
| .../feature.html | PASS (no .ini) | 12 subtests |
| .../feature-edge.html | PARTIAL (.ini has 3 expected fails) | 8 subtests |

### Mozilla Tests
| Test File | Type | Notes |
|-----------|------|-------|
| dom/tests/mochitest/test_feature.html | mochitest | ... |

### Coverage Summary
- Spec steps with implementation: N/M
- WPT files found: N (K passing, J partial, L failing)
- Gaps: [list spec steps or areas with no code or test coverage]

Split test results: files under testing/web-platform/ are WPT, other test files are Mozilla tests (mochitest, browser-chrome, xpcshell).

Step 5: Offer to Add Missing References

If implementation code lacks a spec URL comment or step annotations, offer to add them. Ask for confirmation before making edits. Before inserting any spec URL, verify the anchor exists:

bash
webspec-index exists 'SHORTNAME#FRAGMENT' && echo "valid"
# e.g.:
webspec-index exists 'HTML#navigate' && echo "valid"

Examples of references to add:

  • // https://spec.example.org/#section at the top of an implementing function
  • // Step N. comments for algorithm implementations
  • Spec URL references in .webidl files next to interface/method definitions

Tips

  • WHATWG fragments follow patterns: #dom-interface-method, #the-element-name-element, #concept-name
  • Firefox code references specs as // https://html.spec.whatwg.org/#fragment or // Step N of https://...
  • When a spec URL is in a code comment, you can pass it directly to webspec-index query 'URL' to read the referenced section

© SAP, GPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/specmap of SAP/project-foxhound.

Open the folder on GitHubat commit 9dcb850

Used in 1 other repository

We found 3 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in SAP/project-foxhound, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Specmap next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Specmap compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Specmap this skillSAP/project-foxhound1801 repos~1.3kAutomated safety check: PassGPL-3.0
Fla Ascend Performancefla-org/flash-linear-attention5.8k—~5.6kAutomated safety check: PassMIT
Deepsec Documentation Guidevercel-labs/deepsec8.1k—~956Automated safety check: PassApache-2.0
Skill Scannergetsentry/skills1k4 repos~2.5kAutomated safety check: WarnApache-2.0
Serenity Aleabitoreddityan-labs/serenity-aleabitoreddit4791 repos~3.3kAutomated safety check: PassNone
Security Alert Triageelastic/agent-skills5921 repos~3.5kAutomated safety check: NotesApache-2.0

Similar skills

  • Fla Ascend Performance

    fla-org/flash-linear-attention

    Guidelines for Ascend NPU kernel / Triton-Ascend backend performance work in the FLA repo.

    5.8k GitHub stars~5.6k tokensUpdated yesterday
    SecurityAuto-check passed
  • Deepsec Documentation Guide

    vercel-labs/deepsec

    Official

    Points the agent at deepsec's own docs to answer questions about initializing, configuring, resuming, scanning with and extending the vulnerability scanner.

    8.1k GitHub stars~956 tokensUpdated 8 days ago
    SecurityAuto-check passed
  • Skill Scanner

    getsentry/skills

    Official

    Scan agent skills for security issues. An agent skill from getsentry/skills.

    1k GitHub starsUsed in 4 repos~2.5k tokens
    SecurityAuto-check: warnings
  • Serenity Aleabitoreddit

    yan-labs/serenity-aleabitoreddit

    Apply trader Serenity's (@aleabitoreddit) AI/semiconductor supply-chain analytical lens to US-stock ideas and market judgment.

    479 GitHub starsUsed in 1 repo~3.3k tokens
    SecurityAuto-check passed
  • Security Alert Triage

    elastic/agent-skills

    Official

    Triage Elastic Security alerts — gather context, classify threats, create cases, and acknowledge.

    592 GitHub starsUsed in 1 repo~3.5k tokens
    SecurityAuto-check: notes
  • Shiro Attack CLI

    SummerSec/ShiroAttack2

    当用户要求利用、检测或测试 Apache Shiro rememberMe 反序列化漏洞 (Shiro-550, CVE-2016-4437) 时使用。触发词包括 "Shiro"、"rememberMe"、"shiro attack"、"CVE-2016-4437"、"Shiro-550"、"爆破 Shiro key"、"利用 Shiro"、"Shiro…

    2.6k GitHub stars~945 tokensUpdated 4 mo ago
    SecurityAuto-check passed

More from SAP/project-foxhound

All 10 skills in this repo
  • Accessibility Frontend Review

    SAP/project-foxhound

    Official

    Performs an accessibility code review of a local diff or Phabricator revision in the style of the Firefox accessibility team.

    180 GitHub starsUsed in 1 repo~3.2k tokens
    Auto-check passed
  • JS Perf Investigation

    SAP/project-foxhound

    Official

    Structured performance opportunity investigation for SpiderMonkey (the Firefox JavaScript engine).

    180 GitHub starsUsed in 1 repo~4.1k tokens
    Auto-check passed
  • Bug Filing

    SAP/project-foxhound

    Official

    File a Bugzilla bug for Firefox/Gecko work, or draft a bug summary and description.

    180 GitHub starsUsed in 1 repo~828 tokens
    Auto-check passed
  • Stmo

    SAP/project-foxhound

    Official

    Manage Redash queries and dashboards on Mozilla's STMO (sql.telemetry.mozilla.org) using stmo-cli.

    180 GitHub starsUsed in 1 repo~1.8k tokens
    Auto-check passed
  • Android New Module

    SAP/project-foxhound

    Official

    Guide for creating new Android gradle modules in the android-components project.

    180 GitHub starsUsed in 1 repo~1.8k tokens
    Auto-check passed
  • Profiler Analysis

    SAP/project-foxhound

    Official

    Analyze Firefox performance profiles using the profiler-cli CLI tool.

    180 GitHub starsUsed in 1 repo~1.1k tokens
    Auto-check passed

Categories

Questions about Specmap

What does Specmap do?

Map relationships between a web spec section, its Firefox implementation code, and Web Platform Tests. Specmap is an agent skill from SAP/project-foxhound, published by the product's own GitHub organization. Map relationships between a web spec section, its Firefox implementation code, and Web Platform Tests.

When should I use Specmap?

Specmap fits situations like: starting work on a spec feature; checking implementation coverage; finding which WPTs to enable.

How do I install Specmap in Claude Code?

Run `npx skills add SAP/project-foxhound --skill specmap -a claude-code`. Or copy the skill folder (.agents/skills/specmap in SAP/project-foxhound) into .claude/skills/specmap in your project. Claude Code loads it when a task matches its description.

How do I install Specmap in Codex?

Run `npx skills add SAP/project-foxhound --skill specmap -a codex`. Or copy the skill folder (.agents/skills/specmap in SAP/project-foxhound) into .agents/skills/specmap in your project. Codex loads it when a task matches its description.

Can I use Specmap in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add SAP/project-foxhound --skill specmap -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/specmap, .gemini/skills/specmap, .github/skills/specmap and .opencode/skills/specmap in your project.

What does Specmap need to run?

Going by SKILL.md and its folder, Specmap needs the command-line tools its instructions call (curl). Its frontmatter pre-approves these tools: Bash(searchfox-cli:*), Bash(webspec-index:*), Bash(curl:*), Bash(jq:*), Read, Grep, Glob.

Does Specmap access the network?

SKILL.md names 2 domains. In commands or code: html.spec.whatwg.org and w3c.github.io; the agent is likely to contact these when it follows the instructions. This is read from the text; nothing was executed.

Is Specmap safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Specmap use?

Specmap is published under the GPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Specmap use?

About 1.3k tokens (SKILL.md is roughly 5.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Specmap?

Skills that share tags, products or a category with Specmap: Fla Ascend Performance (fla-org/flash-linear-attention, 5.8k stars), Deepsec Documentation Guide (vercel-labs/deepsec, 8.1k stars), Skill Scanner (getsentry/skills, 1k stars) and Serenity Aleabitoreddit (yan-labs/serenity-aleabitoreddit, 479 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Specmap?

SAP (a GitHub organization, an official publisher) maintains it in SAP/project-foxhound, which has 180 GitHub stars. The repository holds 10 skills in this directory. The repository was last updated on October 6, 2026.

Source: SAP/project-foxhound on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.