Best for
- Use when the user discusses feature requirements, tech trade-offs, or implementation plans.
laurigates/claude-plugins/blueprint-plugin/skills/document-detection/SKILL.md
Detect PRD/ADR/PRP opportunities in conversations and prompt for document creation. Use when the user discusses feature requirements, tech trade-offs, or implementation plans.
Decision brief
Proactively identify when conversations should become structured documents (PRDs, ADRs, or PRPs) and guide users through the documentation workflow.
Compatibility matrix
| Platform | Status | Evidence | What to check |
|---|---|---|---|
| Codex | Not declared | No explicit evidence | Portability before use |
| Claude Code | Not declared | No explicit evidence | Portability before use |
| Cursor | Not declared | No explicit evidence | Portability before use |
| Gemini CLI | Not declared | No explicit evidence | Portability before use |
Installation
The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.
npx skills add https://github.com/laurigates/claude-plugins --skill "blueprint-plugin/skills/document-detection"Inspect the Agent Skill "document-detection" from https://github.com/laurigates/claude-plugins/blob/c056e44b978db58648ad20440dc1515cb09af09d/blueprint-plugin/skills/document-detection/SKILL.md at commit c056e44b978db58648ad20440dc1515cb09af09d. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.
Workflow
Primary triggers (confidence +0.5 each): - Implementation intent: "Let's implement...", "How do we build...", "Time to code..." - Specific feature scope: "the authentication module", "the payment flow", "the dashboard component" - Technical approach discussions: "We'll use X pat…
Use AskUserQuestion to confirm document creation:
For ADR opportunities, append the decision topic to the Proposed ADRs section in docs/adrs/README.md:
Ask context-specific questions based on document type:
Extract from conversation: - Key requirements or decisions discussed - Options considered (for ADR) - Scope boundaries identified - User clarifications from Step 2 - Related existing documents (check docs/prds/, docs/adrs/, docs/prps/)
Permission review
No configured static risk pattern was detected
This is not proof of safety. Runtime behavior, indirect dependencies, and hidden external systems are outside the static scan.
Evidence record
| Signal | Value | Evidence type | Meaning |
|---|---|---|---|
| Quality score | 95/100 | Computed | Documentation, specificity, maintenance, and trust rules |
| Repository stars | 54 | Source | Repository attention, not individual Skill quality |
| Compatibility | 0 platforms | Source | Declared in the catalog source record |
| Usage guide | automated source guide | Editorial | Generated or reviewed according to the visible evidence level |
Pinned source
Proactively identify when conversations should become structured documents (PRDs, ADRs, or PRPs) and guide users through the documentation workflow.
| Use this skill when... | Use blueprint-derive-plans instead when... |
|---|---|
| Mid-conversation cues suggest a PRD/ADR/PRP should be captured | You're explicitly deriving plans (PRDs/ADRs/PRPs) from existing README/docs and git history |
| The user says "I want to build...", "users should be able to..." | Use blueprint-derive-plans instead when the cue is a tech-choice decision worth an ADR |
| The user compares trade-offs ("should we use X or Y?") | Use document-linking instead to wire IDs across already-created docs |
| Implementation scope is being discussed and warrants a PRP | Use blueprint-prp-create instead when you've already decided to author a PRP |
This skill is loaded when conversation context suggests documentation opportunities:
Document detection requires:
docs/blueprint/manifest.json exists)has_document_detection: true in manifest structuredocs/ directory structure createdCheck prerequisites before prompting:
# Verify blueprint is initialized with document detection enabled
jq -r '.structure.has_document_detection // false' docs/blueprint/manifest.json 2>/dev/null
Primary triggers (confidence +0.5 each):
Confidence boosters (+0.1-0.2 each):
Example triggers:
"I want to build a user authentication system with OAuth2 support, password reset, and MFA"
"As an admin, I want to manage user permissions so that I can control access"
"We need to implement: 1) user registration, 2) email verification, 3) profile management"
Primary triggers (confidence +0.5 each):
Confidence boosters (+0.1-0.2 each):
Example triggers:
"Should we use PostgreSQL or MongoDB for the user data? We need to consider query patterns and scalability"
"The pros of using microservices are scalability and team independence, but the cons are operational complexity"
"Why did we choose React over Vue? Let me document the decision"
Primary triggers (confidence +0.5 each):
Confidence boosters (+0.1-0.2 each):
Example triggers:
"Let's implement the payment processing module with Stripe integration"
"We need to create PaymentService.ts, add routes in /api/payments, and write integration tests"
"Time to build the dashboard - it needs charts, filters, and export functionality"
Threshold for prompting: >= 0.7
Base confidence: 0.0
+ Primary trigger matched: +0.5
+ Additional primary trigger: +0.3
+ Each booster matched: +0.1 to +0.2
Total >= 0.7 → Prompt user
Total < 0.7 → Continue without prompting
Examples:
When confidence >= 0.7, execute this flow:
Use AskUserQuestion to confirm document creation:
question: "This looks like a [PRD/ADR/PRP] opportunity. Would you like to document it?"
options:
- label: "Yes, create [document type]"
description: "I'll gather context and create the document"
- label: "Add to backlog"
description: "Record this topic for later documentation"
- label: "Not now, remind me later"
description: "Continue conversation, prompt again if topic expands"
- label: "No, just continue"
description: "Skip documentation for this topic"
For ADR opportunities, append the decision topic to the Proposed ADRs section in docs/adrs/README.md:
docs/adrs/README.md exists (create from template if missing)- [ ] {Decision topic} — {brief context from conversation} (identified {YYYY-MM-DD})
_No proposed ADRs at this time._ placeholder if present/blueprint:derive-plans when ready to document it fully."For PRD/PRP opportunities, note the topic in the conversation and suggest revisiting later. No persistent backlog file exists for these types yet.
Ask context-specific questions based on document type:
For PRD:
question: "Who are the primary users for this feature?"
options:
- label: "End users"
description: "Regular users of the application"
- label: "Administrators"
description: "Admin users with elevated access"
- label: "Developers"
description: "Internal development team"
- label: "Multiple types"
description: "I'll specify the user types"
For ADR:
question: "What constraints should I consider for this decision?"
options:
- label: "Performance requirements"
description: "Speed, latency, throughput constraints"
- label: "Team expertise"
description: "Team familiarity with technologies"
- label: "Budget/cost"
description: "Financial or resource constraints"
- label: "Timeline"
description: "Delivery deadline constraints"
- label: "All of the above"
description: "Consider all constraint types"
For PRP:
question: "What's the priority and scope for this implementation?"
options:
- label: "High priority, narrow scope"
description: "MVP implementation, ship quickly"
- label: "High priority, full scope"
description: "Complete implementation needed soon"
- label: "Normal priority"
description: "Standard development timeline"
- label: "Exploratory"
description: "Spike or proof of concept"
Extract from conversation:
docs/prds/, docs/adrs/, docs/prps/)For ADR: Infer Domain
Map discussion topics to ADR domains:
| Topic Keywords | Inferred Domain |
|---|---|
| Redux, Zustand, MobX, useState, signals, store | state-management |
| Prisma, Drizzle, PostgreSQL, MongoDB, ORM, database | data-layer |
| REST, GraphQL, tRPC, OpenAPI, endpoints, API | api-design |
| OAuth, JWT, auth0, session, tokens, login | authentication |
| Vitest, Jest, Playwright, Cypress, coverage, testing | testing |
| Tailwind, styled-components, CSS modules, SCSS | styling |
| React, Vue, Svelte, Next.js, Nuxt, Angular | frontend-framework |
| Vite, Webpack, esbuild, turbopack, bundler | build-tooling |
| Docker, Kubernetes, Vercel, serverless, deploy | deployment |
| Sentry, DataDog, logging, metrics, monitoring | monitoring |
Include inferred domain in context package for /blueprint:derive-plans.
Launch appropriate documentation command:
For PRD:
Run /blueprint:derive-plans with context:
- Feature description from conversation
- User types identified
- Requirements enumerated
- Success criteria discussed
For ADR:
Run /blueprint:derive-plans with context:
- Decision being made
- Options compared
- Constraints identified
- Trade-offs discussed
- Inferred domain (for conflict analysis)
For PRP:
Run /blueprint:prp-create with context:
- Feature scope
- Implementation approach
- Test strategy discussed
- Files/components planned
After document creation:
docs/prds/, docs/adrs/, or docs/prps/)/blueprint:generate-rules to create implementation patterns"/blueprint:prp-execute when ready to implement"To avoid duplicate prompts, track detected topics:
Track declined topics: Don't re-prompt for explicitly declined documentation Track deferred topics: Re-prompt if significant new context is added (new requirements, new trade-offs, etc.) Track created documents: Don't re-prompt for topics with existing documents
Session tracking uses conversation memory - no persistent storage needed.
Document detection integrates with existing commands:
| Detection Type | Command Triggered | Document Location |
|---|---|---|
| PRD | /blueprint:derive-plans | docs/prds/{feature-name}.md |
| ADR | /blueprint:derive-plans | docs/adrs/{number}-{title}.md |
| PRP | /blueprint:prp-create | docs/prps/{feature-name}.md |
Document detection is controlled by manifest flag:
{
"structure": {
"has_document_detection": true
}
}
Enable during /blueprint:init or /blueprint:upgrade.
To minimize interruptions:
| Document | Key Triggers | Confidence Threshold |
|---|---|---|
| PRD | Feature descriptions, user stories, requirements lists | >= 0.7 |
| ADR | Technology comparisons, trade-off discussions, "why" questions | >= 0.7 |
| PRP | Implementation intent, file planning, specific feature scope | >= 0.7 |
| User Response | Action |
|---|---|
| "Yes, create" | Gather clarification, delegate to command |
| "Not now" | Track topic, re-prompt if expanded |
| "No, continue" | Mark declined, never re-prompt |
Frequently asked questions
Proactively identify when conversations should become structured documents (PRDs, ADRs, or PRPs) and guide users through the documentation workflow.
The source record exposes this install command: npx skills add https://github.com/laurigates/claude-plugins --skill "blueprint-plugin/skills/document-detection". Inspect the command and pinned source before running it.
Alternatives
oaustegard/claude-skills
Generate hierarchical _FEATURES.md files that describe what a codebase DOES from a user/consumer perspective, anchored to source symbols via tree-sitting. Supports large complex codebases through feature-driven decomposition into sub-feature files. Uses a multi-pass synthesis: orientation → detail → overview rewrite. Use when someone says "what does this do", "document features", "feature inventory", "_FEATURES.md", or needs to understand a codebase's purpose before modifying it. Complements tre
dancingteeth/unified-code-review
Risk-first code review for PRs and branch audits: blast-radius triage, agent-authored discipline (tests first, intent evidence), call-graph pincer for integration defects between modules, then structural code-judo bar. Use when reviewing PRs, auditing agent-written diffs, catching rubber-stamp green CI, or wiring bugs single-file review misses. Prefer over structure-only thermo-nuclear review alone. Do not use for unrelated coding tasks or as an always-on rule.
Postpartum-genushyacinthus29/dotnet-skills
Build long-running .NET background services with `BackgroundService`, Generic Host, graceful shutdown, configuration, logging, and deployment patterns suited to workers and daemons.
enuno/unifi-mcp-server
Specialized guide for adding new MCP tools to the UniFi MCP Server following project standards, UniFi API patterns, and test-driven development practices. Use when implementing new UniFi Network Controller features as MCP tools.