About blueprint-docs-list
A Blueprint skill that lists PRD, ADR, and PRP documents from the filesystem and extracts their metadata. It supports status audits, index tables, and quick counts across document types.
Key features
- 01List ADRs, PRDs, or PRPs
- 02Extract document metadata
- 03Summarize document counts and statuses
- 04Create document index tables
Use cases
- 01Audit Blueprint document statuses
- 02Quickly count documents by type
- 03Build an index of project documents
Install
Copy the command and run it in a terminal.
$
npx skills add https:/ / github.com/ laurigates/ claude-plugins --skill blueprint-docs-listAfter installing, type/blueprint-docs-listin Claude Code to confirm it loaded.
Details
From the project READMEList blueprint documents programmatically from the filesystem. Extracts metadata from YAML frontmatter and markdown headers.
When to Use This Skill
| Use this skill when... | Use blueprint-adr-list instead when... |
|---|---|
| You want a combined index of ADRs, PRDs, and PRPs (or summary across all) | You only need an ADR-specific index table |
| You want to audit document statuses across all blueprint types | You need ADR-specific fields like domain or status filtering |
You want a quick overview using all to see counts of every doc type | You're generating an ADR index for a README |
Use Case: Audit document status, generate index tables, or get a quick overview of all project documentation.
Parameters
| Arg | Description |
|---|---|
adrs | List Architecture Decision Records |
prds | List Product Requirements Documents |
prps | List Product Requirement Prompts |
all | Summary of all document types |
Execution
If arg is adrs
Run /blueprint:adr-list — it handles ADR-specific extraction with both header-section and frontmatter support.
If arg is prds
printf "| PRD | Title | Status | Date |\n|-----|-------|--------|------|\n" && \
for f in docs/prds/*.md; do
[ -f "$f" ] || continue
fname=$(basename "$f")
[ "$fname" = "README.md" ] && continue
doc_title=$(head -50 "$f" | grep -m1 "^title:" | sed 's/^title:[[:space:]]*//' || true)
doc_status=$(head -50 "$f" | grep -m1 "^status:" | sed 's/^status:[[:space:]]*//' || true)
doc_date=$(head -50 "$f" | grep -m1 "^date:\|^created:" | sed 's/^[^:]*:[[:space:]]*//' || true)
# Fallback: extract title from H1
if [ -z "$doc_title" ]; then
doc_title=$(head -20 "$f" | grep -m1 "^# " | sed 's/^# //')
fi
printf "| [%s](%s) | %s | %s | %s |\n" \
"${fname%.md}" "$f" "${doc_title:-(untitled)}" "${doc_status:--}" "${doc_date:--}"
done
If arg is prps
printf "| PRP | Title | Status | Confidence |\n|-----|-------|--------|------------|\n" && \
for f in docs/prps/*.md; do
[ -f "$f" ] || continue
fname=$(basename "$f")
[ "$fname" = "README.md" ] && continue
doc_title=$(head -50 "$f" | grep -m1 "^title:" | sed 's/^title:[[:space:]]*//' || true)
doc_status=$(head -50 "$f" | grep -m1 "^status:" | sed 's/^status:[[:space:]]*//' || true)
doc_confidence=$(head -50 "$f" | grep -m1 "^confidence:" | sed 's/^confidence:[[:space:]]*//' || true)
if [ -z "$doc_title" ]; then
doc_title=$(head -20 "$f" | grep -m1 "^# " | sed 's/^# //')
fi
printf "| [%s](%s) | %s | %s | %s |\n" \
"${fname%.md}" "$f" "${doc_title:-(untitled)}" "${doc_status:--}" "${doc_confidence:--}"
done
If arg is all
Show counts and status breakdown for each document type:
echo "## Blueprint Documents Summary"
echo ""
for doc_type in adrs prds prps; do
doc_count=$(ls docs/$doc_type/*.md 2>/dev/null | grep -cv 'README.md' || echo 0)
echo "### ${doc_type^^}: $doc_count documents"
if [ "$doc_count" -gt 0 ]; then
for s in Accepted Proposed Deprecated Superseded draft ready approved; do
sc=$(grep -ril "^status:.*$s\|^$s$" docs/$doc_type/*.md 2>/dev/null | wc -l | tr -d ' ')
[ "$sc" -gt 0 ] && echo "- $s: $sc"
done
fi
echo ""
done
Post-Actions
After listing, suggest:
- For empty directories: "Run
/blueprint:derive-plansto generate documents" - For stale documents: "Review documents with status 'draft' or 'Proposed'"
Comments
Markdown supported