Agent Skills for Happy Hacking Space's open-source security tools. Each skill teaches your coding agent how to use one of our tools, from spinning up vulnerable labs to impersonating browsers and sandboxing code.
Compatible with Claude Code, OpenAI Codex, Google Gemini CLI, and Cursor. Built on the open Agent Skill format.
In practice, skills are self-contained folders that package instructions, scripts, and resources together for an AI agent to use on a specific use case. Each folder includes a SKILL.md file with YAML frontmatter (name and description) followed by the guidance your coding agent follows while the skill is active.
Note
'Skills' is actually an Anthropic term used within Claude AI and Claude Code and not adopted by other agent tools, but we love it! OpenAI Codex uses the open Agent Skills format, where each skill is a directory with a SKILL.md file that Codex discovers from standard .agents/skills locations documented in the Codex Skills guide. Codex can also work with an AGENTS.md file. Google Gemini uses 'extensions' to define the instructions for your coding agent in a gemini-extension.json file. This repo is compatible with all of them, and more!
Tip
If your agent doesn't support skills, you can use agents/AGENTS.md directly as a fallback.
Happy Hacking Space skills are compatible with Claude Code, Codex, Gemini CLI, and Cursor.
- Register the repository as a plugin marketplace:
/plugin marketplace add happyhackingspace/skills
- To install a skill, run:
/plugin install <skill-name>@happyhackingspace/skills
For example:
/plugin install vt@happyhackingspace/skills
-
Copy or symlink any skills you want to use from this repository's
skills/directory into one of Codex's standard.agents/skillslocations (for example,$REPO_ROOT/.agents/skillsor$HOME/.agents/skills) as described in the Codex Skills guide. -
Once a skill is available in one of those locations, Codex will discover it using the Agent Skills standard and load the
SKILL.mdinstructions when it decides to use that skill or when you explicitly invoke it. -
If your Codex setup still relies on
AGENTS.md, you can use the generatedagents/AGENTS.mdfile in this repo as a fallback bundle of instructions.
-
This repo includes
gemini-extension.jsonto integrate with the Gemini CLI. -
Install locally:
gemini extensions install . --consent
or use the GitHub URL:
gemini extensions install https://github.com/happyhackingspace/skills.git --consent
- See Gemini CLI extensions docs for more help.
This repository includes Cursor plugin manifests:
.cursor-plugin/plugin.json
Install from repository URL (or local checkout) via the Cursor plugin flow.
For contributors, regenerate manifests with:
./scripts/publish.shEach skill below wraps one of our open-source tools so your coding agent can use it directly. Contributions welcome.
| Name | Description | Documentation |
|---|---|---|
dit |
Classify HTML pages, forms, and fields using machine learning. Detect page types, form types, and field types from HTML content or URLs. | SKILL.md |
funurl |
A functional URL Swiss Army knife. Parse, modify, encode, decode, and deduplicate URLs from the command line. | SKILL.md |
gakido |
High-performance Python HTTP client with browser impersonation, TLS fingerprinting, and anti-bot evasion. Supports HTTP/1.1, HTTP/2, and HTTP/3. | SKILL.md |
sindoq |
AI Sandbox for secure code execution. Run untrusted code in Docker, Podman, Wasmer, gVisor, Firecracker, Kubernetes, or cloud providers. | SKILL.md |
vt |
Spin up intentionally vulnerable environments from the terminal. Deploy labs like DVWA, Juice Shop, and WebGoat for security training and CTF practice. | SKILL.md |
Once a skill is installed, mention it directly while giving your coding agent instructions:
- "Use the vt skill to spin up a DVWA lab for SQL injection practice."
- "Use the dit skill to classify the login forms on this page."
- "Use the funurl skill to extract query parameters from these URLs."
- "Use the sindoq skill to safely execute this untrusted Python script."
- "Use the gakido skill to scrape this page while bypassing Cloudflare."
Your coding agent automatically loads the corresponding SKILL.md instructions and helper scripts while it completes the task.
- Copy one of the existing skill folders and rename it.
- Update the new folder's
SKILL.mdfrontmatter:--- name: my-skill-name description: Describe what the skill does and when to use it --- # Skill Title Guidance + examples + guardrails
- Add or edit supporting scripts, templates, and documents referenced by your instructions.
- Add an entry to
.claude-plugin/marketplace.jsonwith a concise, human-readable description. - Run:
to regenerate and validate all generated metadata.
./scripts/publish.sh
- Reinstall or reload the skill bundle in your coding agent so the updated folder is available.
The .claude-plugin/marketplace.json file lists skills with human-readable descriptions for the plugin marketplace. The CI validates that skill names and paths match between SKILL.md files and marketplace.json, but descriptions are maintained separately: SKILL.md descriptions guide when the agent activates the skill, while marketplace descriptions are written for humans browsing available skills.
- Browse the latest instructions, scripts, and templates directly at happyhackingspace/skills.
Repository structure inspired by huggingface/skills.