Skip to content
Back to skills

Discover

ASecurity

Runtime catalog — list all installed skills, agents, and active hooks. Use when you want to know what's available.

  • 3 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 3, 2026
developmentpythonbash

Security analysis

A100/100

Scanned September 3, 2026

npx -y skills add martineserios/thebrana --skill discover --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Discover?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Discover
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/martineserios-discover/badge)](https://www.skillsdirectory.com/skills/martineserios-discover)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: discover
description: "Runtime catalog — list all installed skills, agents, and active hooks. Use when you want to know what's available."
model: haiku
effort: low
keywords: [discover, skills, agents, hooks, catalog, list, available, inventory]
task_strategies: [investigation]
group: core
allowed-tools:
  - Bash
status: stable
growth_stage: evergreen
---
# Discover — Runtime Catalog

Show all installed brana components at runtime. Fast listing, no heavy I/O.

## Step 1 — Skills

Run:
```
brana skills list --json
```

Parse the JSON array. Each item has `name`, `group`, `description` fields.
Sort by `group` then `name`. Truncate description to 60 chars.

Render:
```
## Skills (N)
| Name | Group | Description |
|------|-------|-------------|
| ...  | ...   | ...         |
```

## Step 2 — Agents

Run:
```bash
grep -h "^name:\|^description:\|^model:" ${CLAUDE_PLUGIN_ROOT}/system/agents/*.md | paste - - -
```

Each triplet is one agent. Extract `name:`, `description:`, `model:` values (strip the key prefix).
Truncate description to 60 chars.

Render:
```
## Agents (N)
| Agent | Model | Description |
|-------|-------|-------------|
| ...   | ...   | ...         |
```

## Step 3 — Hooks

Run:
```bash
python3 - <<'EOF'
import json, sys
with open("${CLAUDE_PLUGIN_ROOT}/system/hooks/hooks.json") as f:
    d = json.load(f)
rows = []
for event, entries in d.get("hooks", {}).items():
    for entry in entries:
        matcher = entry.get("matcher", "*")
        for h in entry.get("hooks", []):
            script = h.get("args", ["", ""])[-1].replace("${CLAUDE_PLUGIN_ROOT}/", "")
            rows.append((event, script, matcher))
for r in sorted(rows):
    print("\t".join(r))
EOF
```

Render:
```
## Hooks (N)
| Event | Script | Matcher |
|-------|--------|---------|
| ...   | ...    | ...     |
```

## Output

Print all three sections in order: Skills → Agents → Hooks.
Include counts in each header (e.g. `## Skills (12)`).
Keep all descriptions truncated to 60 chars with `...` suffix if cut.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…