Evaluate technology alternatives and document decisions in ADR format. Use when making technology choices, comparing options, documenting decisions, or when you see "technology choice", "alternatives", "trade-offs", "decision record", "rationale", "why we chose", or "NEEDS CLARIFICATION".
Evaluates technology alternatives and documents decisions in ADR format.
/plugin marketplace add deepeshBodh/human-in-loop/plugin install deepeshbodh-humaninloop-plugins-humaninloop@deepeshBodh/human-in-loopThis skill inherits all available tools. When active, it can use any tool Claude has access to.
DECISION-RECORD.mdEVALUATION-MATRIX.mdProvide a complete framework for technology decisions: evaluate alternatives against consistent criteria, make informed choices, and document decisions so future maintainers understand WHY choices were made.
1. EVALUATE → 2. DECIDE → 3. DOCUMENT
Options Best fit For posterity
For each decision point, consider 2-3 alternatives minimum.
Quick Criteria Reference:
| Criterion | Key Question |
|---|---|
| Fit | Does it solve the problem fully? |
| Complexity | How hard to implement and maintain? |
| Team Familiarity | Does the team know this tech? |
| Ecosystem | Good docs, active community? |
| Scalability | Will it grow with the project? |
| Security | Good security posture? |
| Cost | Total cost of ownership? |
| Brownfield Alignment | Fits existing stack? |
See EVALUATION-MATRIX.md for detailed criteria, scoring, and technology category comparisons.
Score options against weighted criteria. Document:
Quick Comparison Format:
| Option | Pros | Cons | Alignment | Verdict |
|---|---|---|---|---|
| Option A | + Fast, + Simple | - New dep | High | Best |
| Option B | + Familiar | - Slow | Medium | Good |
| Option C | + Feature-rich | - Complex | Low | Poor |
Record decisions in ADR format for future maintainers.
Quick Decision Record:
## Decision: [Title]
**Status**: Proposed | Accepted | Deprecated
**Context**: [Why this decision is needed]
**Decision**: [What we chose]
**Rationale**: [Why - connect to criteria]
**Trade-offs Accepted**: [What we gave up]
See DECISION-RECORD.md for full ADR format, consequences, and dependency tracking.
Decisions go in research.md with this structure:
# Research: {feature_id}
## Summary
| ID | Decision | Choice | Rationale |
|----|----------|--------|-----------|
| D1 | Auth mechanism | JWT | Stateless, scalable |
| D2 | Session storage | PostgreSQL | Existing stack |
---
## Decision 1: [Title]
[Full decision record]
---
## Dependencies
| Decision | Depends On | Impacts |
|----------|------------|---------|
| D2 | D1 | Session table schema |
Always check existing stack first:
| Scenario | Alignment | Action |
|---|---|---|
| Existing dep solves problem | High | Prefer reuse |
| New dep, same ecosystem | Medium | Document justification |
| New dep, different ecosystem | Low | Strong justification needed |
| Conflicting with existing | None | Avoid or escalate |
Before finalizing:
Evaluation:
Documentation:
| Anti-Pattern | Problem | Fix |
|---|---|---|
| Single option "evaluation" | No real choice | Always list alternatives |
| Shiny object syndrome | New tech bias | Require strong justification |
| Vague rationale | "It's better" | Connect to criteria |
| Ignoring team skills | Hidden costs | Weight familiarity |
| Missing consequences | Only positives | List negatives too |
| Orphan decisions | No connections | Map dependencies |
| Constitution blindness | Principle violations | Check alignment |
This skill should be used when the user asks to "create a slash command", "add a command", "write a custom command", "define command arguments", "use command frontmatter", "organize commands", "create command with file references", "interactive command", "use AskUserQuestion in command", or needs guidance on slash command structure, YAML frontmatter fields, dynamic arguments, bash execution in commands, user interaction patterns, or command development best practices for Claude Code.
This skill should be used when the user asks to "create an agent", "add an agent", "write a subagent", "agent frontmatter", "when to use description", "agent examples", "agent tools", "agent colors", "autonomous agent", or needs guidance on agent structure, system prompts, triggering conditions, or agent development best practices for Claude Code plugins.
This skill should be used when the user asks to "create a hook", "add a PreToolUse/PostToolUse/Stop hook", "validate tool use", "implement prompt-based hooks", "use ${CLAUDE_PLUGIN_ROOT}", "set up event-driven automation", "block dangerous commands", or mentions hook events (PreToolUse, PostToolUse, Stop, SubagentStop, SessionStart, SessionEnd, UserPromptSubmit, PreCompact, Notification). Provides comprehensive guidance for creating and implementing Claude Code plugin hooks with focus on advanced prompt-based hooks API.