Agent skill

Ghost Scan Secrets

by ghostsecurity in ghostsecurity/skills

Ghost Security - Secrets and credentials scanner. An agent skill from ghostsecurity/skills.

Apache-2.0Auto-check: notesDevOps & Cloud

Install Ghost Scan Secrets

skills CLI
$ npx skills add ghostsecurity/skills --skill ghost-scan-secrets -a claude-code

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

GitHub CLI
$ gh skill install ghostsecurity/skills ghost-scan-secrets --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/ghostsecurity/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/ghost/skills/scan-secrets .claude/skills/ghost-scan-secrets && 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
ghost-scan-secrets
GitHub stars
408
Token cost
~1.2k tokens
SKILL.md length
316 words
Files
9
Skills in repo
5
Repo updated
First seen
Licence
Apache-2.0

At a glance

Ghost Security - Secrets and credentials scanner. An agent skill from ghostsecurity/skills.

  • Works in 5 steps: Setup → Initialize Poltergeist → Scan for Secrets → …
  • The user asks to check for leaked secrets
  • SKILL.md covers Defaults, Execution and Error Handling
  • Calls git

What it does

Ghost Scan Secrets is an agent skill from ghostsecurity/skills. Ghost Security - Secrets and credentials scanner. Scans codebase for leaked API keys, tokens, passwords, and sensitive data. Detects hardcoded secrets and generates findings with severity and remediation guidance. Use when the user asks to check for leaked secrets, scan for credentials, find hardcoded API keys or passwords, detect exposed .env values, or audit code for sensitive data exposure.

Its SKILL.md is about 1.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 13 other files (for example `README.md`, `agents/analyze/agent.md` and `agents/analyze/analyzer.md`).

It sits in DevOps & Cloud, covering Secrets management. The repository describes itself as: Ghost Security's collection of AppSec skills for AI coding agents. The licence is Apache-2.0.

When your agent uses it

  • The user asks to check for leaked secrets
  • Scan for credentials
  • Find hardcoded API keys
  • Detect exposed .env values

Example prompts

  • “/ghost-scan-secrets”

Requirements

  • Pre-approved tools (allowed-tools): Read, Glob, Grep, Bash, Task, TodoRead, TodoWrite

Workflow steps

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

  1. Setup
  2. Initialize Poltergeist
  3. Scan for Secrets
  4. Analyze Candidates
  5. Summarize Results

What it can do on your machine

Read from SKILL.md and the folder at commit 25fdf06. 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:

    • Read
    • Glob
    • Grep
    • Bash
    • Task
    • TodoRead
    • TodoWrite

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • git

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

  • Network

    No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.

    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

Ghost Scan Secrets loads about 1.2k tokens when it runs. Until then it costs about 104 tokens; SKILL.md has 316 words of instructions outside code blocks.

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

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: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteMentions a .env fileSKILL.md:4
    ed API keys or passwords, detect exposed .env values, or audit code for sensitive data exposure.
  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: Read, Glob, Grep, Bash, Task, TodoRead, TodoWrite

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 ghostsecurity/skills at commit 25fdf06, republished under its Apache-2.0 licence (© ghostsecurity). 316 words, ~1,167 tokens.

Download SKILL.mdSave it as .claude/skills/ghost-scan-secrets/SKILL.md (or your agent's skills folder). This skill also uses 8 other files; get the full folder from GitHub.
name
ghost-scan-secrets
description
Ghost Security - Secrets and credentials scanner. Scans codebase for leaked API keys, tokens, passwords, and sensitive data. Detects hardcoded secrets and generates findings with severity and remediation guidance. Use when the user asks to check for leaked secrets, scan for credentials, find hardcoded API keys or passwords, detect exposed .env values, or audit code for sensitive data exposure.
allowed-tools
Read, Glob, Grep, Bash, Task, TodoRead, TodoWrite
argument-hint
[path-to-scan]
license
apache-2.0
metadata.version
1.1.0

Ghost Security Secrets Scanner — Orchestrator

You are the top-level orchestrator for secrets scanning. Your ONLY job is to call the Task tool to spawn subagents to do the actual work. Each step below gives you the exact Task tool parameters to use. Do not do the work yourself.

Defaults

  • repo_path: the current working directory
  • scan_dir: ~/.ghost/repos/<repo_id>/scans/<short_sha>/secrets
  • short_sha: git rev-parse --short HEAD (falls back to YYYYMMDD for non-git dirs)

$ARGUMENTS

Any values provided above override the defaults.


Execution

  1. Setup — compute paths and create output directories
  2. Initialize Poltergeist — install the poltergeist binary
  3. Scan for Secrets — run poltergeist against the codebase
  4. Analyze Candidates — assess each candidate for confirmation
  5. Summarize Results — generate the final scan report
Step 0: Setup

Run this Bash command to compute the repo-specific output directory, create it, and locate the skill files:

repo_name=$(basename "$(pwd)") && remote_url=$(git remote get-url origin 2>/dev/null || pwd) && short_hash=$(printf '%s' "$remote_url" | git hash-object --stdin | cut -c1-8) && repo_id="${repo_name}-${short_hash}" && short_sha=$(git rev-parse --short HEAD 2>/dev/null || date +%Y%m%d) && ghost_repo_dir="$HOME/.ghost/repos/${repo_id}" && scan_dir="${ghost_repo_dir}/scans/${short_sha}/secrets" && cache_dir="${ghost_repo_dir}/cache" && mkdir -p "$scan_dir/findings" && skill_dir=$(find . -path '*skills/scan-secrets/SKILL.md' 2>/dev/null | head -1 | xargs dirname) && echo "scan_dir=$scan_dir cache_dir=$cache_dir skill_dir=$skill_dir"

Store scan_dir (the absolute path under ~/.ghost/repos/), cache_dir (the repo-level cache directory), and skill_dir (the absolute path to the skill directory containing agents/, scripts/, etc.).

After this step, your only remaining tool is Task. Do not use Bash, Read, Grep, Glob, or any other tool for Steps 1–4.

Step 1: Initialize Poltergeist

Call the Task tool to initialize the poltergeist binary:

json
{
  "description": "Initialize poltergeist binary",
  "subagent_type": "general-purpose",
  "prompt": "You are the init agent. Read and follow the instructions in <skill_dir>/agents/init/agent.md.\n\n## Inputs\n- skill_dir: <skill_dir>"
}

The init agent installs poltergeist to ~/.ghost/bin/poltergeist (or poltergeist.exe on Windows).

Step 2: Scan for Secrets

Call the Task tool to run the poltergeist scanner:

json
{
  "description": "Scan for secret candidates",
  "subagent_type": "general-purpose",
  "prompt": "You are the scan agent. Read and follow the instructions in <skill_dir>/agents/scan/agent.md.\n\n## Inputs\n- repo_path: <repo_path>\n- scan_dir: <scan_dir>"
}

The scan agent returns the candidate count and writes <scan_dir>/candidates.json.

If candidate count is 0: Skip to Step 4 (Summarize) with no findings.

Step 3: Analyze Candidates

Call the Task tool to analyze the candidates:

json
{
  "description": "Analyze secret candidates",
  "subagent_type": "general-purpose",
  "prompt": "You are the analysis agent. Read and follow the instructions in <skill_dir>/agents/analyze/agent.md.\n\n## Inputs\n- repo_path: <repo_path>\n- scan_dir: <scan_dir>\n- skill_dir: <skill_dir>\n- cache_dir: <cache_dir>"
}

The analysis agent spawns parallel analyzers for each candidate and writes finding files to <scan_dir>/findings/.

Step 4: Summarize Results

Call the Task tool to summarize the findings:

json
{
  "description": "Summarize scan results",
  "subagent_type": "general-purpose",
  "prompt": "You are the summarize agent. Read and follow the instructions in <skill_dir>/agents/summarize/agent.md.\n\n## Inputs\n- repo_path: <repo_path>\n- scan_dir: <scan_dir>\n- skill_dir: <skill_dir>\n- cache_dir: <cache_dir>"
}

After executing all the tasks, report the scan results to the user.


Error Handling

If any Task call fails, retry it once. If it fails again, stop and report the failure.

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

Files

SKILL.md and 8 other files in plugins/ghost/skills/scan-secrets of ghostsecurity/skills.

  • SKILL.md
  • README.md
  • agents/analyze/agent.md
  • agents/analyze/analyzer.md
  • agents/analyze/template-finding.md
  • agents/init/agent.md
  • agents/scan/agent.md
  • agents/summarize/agent.md
  • agents/summarize/template-report.md

Open the folder on GitHubat commit 25fdf06

Compare with similar skills

Ghost Scan Secrets 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.

Ghost Scan Secrets compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Ghost Scan Secrets this skillghostsecurity/skills408—~1.2kAutomated safety check: NotesApache-2.0
Iron Proxy Gateway for NanoClawnanocoai/nanoclaw31k—~4.6kAutomated safety check: NotesMIT
LangBot Deployment Guidelangbot-app/LangBot18k—~1.2kAutomated safety check: NotesApache-2.0
Env Var Conventionssgl-project/sglang37k2 repos~2.9kAutomated safety check: PassApache-2.0
Mac Fleet Maintenancesteipete/agent-scripts7.3k—~4.8kAutomated safety check: PassMIT
Add Config Env Varbaserow/baserow6.1k—~1.1kAutomated safety check: PassCustom licence

Similar skills

  • Installs or refreshes Iron Proxy and its Iron Control web console for NanoClaw, with a local Docker setup, database, credentials and a human approval bridge.

    31k GitHub stars~4.6k tokensUpdated 2 days ago
    DevOps & CloudAuto-check: notes
  • LangBot Deployment Guide

    langbot-app/LangBot

    Deploys and configures a LangBot instance with Docker Compose or Kubernetes, covering config.yaml, the Box sandbox runtime, the plugin runtime and the global API key.

    18k GitHub stars~1.2k tokensUpdated today
    DevOps & CloudAuto-check: notes
  • Env Var Conventions

    sgl-project/sglang

    Conventions for SGLang environment variables — where to define, how to access, how to name, and how to deprecate.

    37k GitHub starsUsed in 2 repos~2.9k tokens
    DevOps & CloudAuto-check passed
  • Mac Fleet Maintenance

    steipete/agent-scripts

    Inventories and maintains a fleet of Macs from a desired-state file: package updates, repo and Xcode sync, and disk, backup and security health reports.

    7.3k GitHub stars~4.8k tokensUpdated 3 days ago
    DevOps & CloudAuto-check passed
  • Add Config Env Var

    baserow/baserow

    Add a Baserow configuration environment variable for the backend, frontend, or both, and propagate it through settings, Nuxt runtime config, Docker Compose, documentation, consumers, and tests as…

    6.1k GitHub stars~1.1k tokensUpdated today
    DevOps & CloudAuto-check passed
  • Edgeone Makers CLI

    TencentEdgeOne/edgeone-makers-tools

    EdgeOne Makers CLI command reference. An agent skill from TencentEdgeOne/edgeone-makers-tools.

    1.9k GitHub starsUsed in 1 repo~739 tokens
    DevOps & CloudAuto-check: notes

More from ghostsecurity/skills

  • Ghost Exo

    ghostsecurity/skills

    The single interface for building, improving, and debugging exo workflows.

    408 GitHub stars~1.3k tokensUpdated 10 days ago
    Auto-check passed
  • Ghost Repo Context

    ghostsecurity/skills

    Scans directory structure, detects projects, maps dependencies, and documents code organization into a repo.md file.

    408 GitHub stars~786 tokensUpdated 10 days ago
    Auto-check: notes
  • Ghost Report

    ghostsecurity/skills

    Ghost Security — combined security report. An agent skill from ghostsecurity/skills.

    408 GitHub stars~1.4k tokensUpdated 10 days ago
    Auto-check: notes
  • Ghost Scan Deps

    ghostsecurity/skills

    Ghost Security - Software Composition Analysis (SCA) scanner.

    408 GitHub stars~1.3k tokensUpdated 10 days ago
    Auto-check: notes

Categories

Questions about Ghost Scan Secrets

What does Ghost Scan Secrets do?

Ghost Security - Secrets and credentials scanner. An agent skill from ghostsecurity/skills. Ghost Scan Secrets is an agent skill from ghostsecurity/skills. Ghost Security - Secrets and credentials scanner.

When should I use Ghost Scan Secrets?

Ghost Scan Secrets fits situations like: the user asks to check for leaked secrets; scan for credentials; find hardcoded API keys; detect exposed .env values.

How do I install Ghost Scan Secrets in Claude Code?

Run `npx skills add ghostsecurity/skills --skill ghost-scan-secrets -a claude-code`. Or copy the skill folder (plugins/ghost/skills/scan-secrets in ghostsecurity/skills) into .claude/skills/ghost-scan-secrets in your project. Claude Code loads it when a task matches its description.

How do I install Ghost Scan Secrets in Codex?

Run `npx skills add ghostsecurity/skills --skill ghost-scan-secrets -a codex`. Or copy the skill folder (plugins/ghost/skills/scan-secrets in ghostsecurity/skills) into .agents/skills/ghost-scan-secrets in your project. Codex loads it when a task matches its description.

Can I use Ghost Scan Secrets 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 ghostsecurity/skills --skill ghost-scan-secrets -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/ghost-scan-secrets, .gemini/skills/ghost-scan-secrets, .github/skills/ghost-scan-secrets and .opencode/skills/ghost-scan-secrets in your project.

What does Ghost Scan Secrets need to run?

Going by SKILL.md and its folder, Ghost Scan Secrets needs the command-line tools its instructions call (git). Its frontmatter pre-approves these tools: Read, Glob, Grep, Bash, Task, TodoRead, TodoWrite.

Does Ghost Scan Secrets access the network?

SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Ghost Scan Secrets safe to install?

Our automated static check of SKILL.md found notes only (mentions a .env file; pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Ghost Scan Secrets use?

Ghost Scan Secrets is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Ghost Scan Secrets use?

About 1.2k tokens (SKILL.md is roughly 4.7k 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 Ghost Scan Secrets?

Skills that share tags, products or a category with Ghost Scan Secrets: Iron Proxy Gateway for NanoClaw (nanocoai/nanoclaw, 31k stars), LangBot Deployment Guide (langbot-app/LangBot, 18k stars), Env Var Conventions (sgl-project/sglang, 37k stars) and Mac Fleet Maintenance (steipete/agent-scripts, 7.3k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Ghost Scan Secrets?

ghostsecurity (a GitHub organization) maintains it in ghostsecurity/skills, which has 408 GitHub stars. The repository holds 5 skills in this directory. The repository was last updated on September 28, 2026.

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