Development
020-architecture-functional-requirements-cli - Claude MCP Skill
Facilitates conversational discovery to create Architectural Decision Records (ADRs) for CLI development. Use when the user wants to document CLI architecture, capture functional requirements for a command-line tool, create ADRs for CLI projects, or design CLI applications with documented decisions. Part of the skills-for-java project
SEO Guide: Enhance your AI agent with the 020-architecture-functional-requirements-cli tool. This Model Context Protocol (MCP) server allows Claude Desktop and other LLMs to facilitates conversational discovery to create architectural decision records (adrs) for cli develop... Download and configure this skill to unlock new capabilities for your AI workflow.
Documentation
SKILL.md# Create ADRs for CLI Development Guides stakeholders through a structured conversation to uncover and document technical decisions and functional requirements for CLI applications. The ADR is the documentation of that conversation, not the conversation itself. --- ## Phase 0: Get Current Date Before starting, run `date` in the terminal to ensure accurate timestamps in the ADR document. Use this for all `[Current Date]` placeholders. --- ## Phase 1: Conversational Information Gathering Ask one or two questions at a time. Build on previous answers. Acknowledge and validate responses before moving on. Adjust questions to CLI complexity; skip irrelevant areas and dive deeper where needed. ### 1. Initial Context Discovery **Opening:** - What CLI tool are you building and what problem does it solve? - What's driving the need? Replacing something or creating new? - Who are the primary users and their technical backgrounds? **Follow-up:** - What existing systems or workflows will this CLI integrate with? - Constraints: team expertise, tech preferences, organizational standards? - Expected timeline and scope? ### 2. Functional Requirements **Core functionality:** - Main workflow: what does a user do from start to finish? - Essential commands or operations? - Input handling: files, arguments, configuration? - Output formats and feedback needed? **User experience:** - How technical are users? Need extensive help? - Simple single-purpose tool or multi-command suite? - Critical error scenarios to handle gracefully? - How will users install and update? ### 3. Technical Decision Discovery **Language & framework:** Team expertise, performance requirements (startup, memory), integration needs, familiar CLI frameworks. **Architecture:** Command complexity, plugin vs monolithic, configuration (files/env/args), error handling and logging. **Data & I/O:** Types of data, streaming for large datasets, output formatting (JSON, tables, plain text). **Third-party integration:** External APIs, auth methods, credential management, rate limits, throttling, multi-provider support, offline/caching, compliance, testing integrations. **Testing:** Current approach, CLI interaction testing, code quality tools, cross-platform compatibility. **Distribution:** Packaging, CI/CD, security and compliance. ### 4. Decision Synthesis & Validation - Summarize requirements and ask: "Does this sound accurate?" - Any important decisions we haven't discussed? - Top 3 most important technical decisions? - Deal-breakers or must-haves? ### 5. ADR Creation Proposal Only after thorough conversation: "Based on our conversation, I'd like to create an ADR that documents these key decisions... Would you like me to proceed?" --- ## Phase 2: ADR Document Generation Inform the user you will generate the ADR. Use the current date from Phase 0 for all date placeholders. ### ADR Structure ```markdown # ADR-XXX: [Title] **Status:** Proposed | Accepted | Deprecated **Date:** [Current Date] **Decisions:** [Brief summary] ## Context [Business context, problem statement, user needs] ## Functional Requirements [Core commands, workflows, input/output, error handling] ## Technical Decisions [With rationale for each] ### Language & Framework [Choice and why] ### Architecture [Command structure, configuration, plugins] ### Data & Integration [Processing, external services, auth] ### Testing & Distribution [Approach and tools] ## Alternatives Considered [Rejected options and why] ## Consequences [Impact, trade-offs, follow-up work] ## References [Links, related ADRs] ``` --- ## Phase 3: Next Steps and Recommendations After generating the ADR: **Next Steps:** 1. Review and validate with stakeholders 2. Create technical specifications and CLI documentation 3. Set up dev environment and project structure 4. Begin implementation with MVP 5. Establish testing and distribution frameworks **ADR Management:** - Keep the ADR as a living document - Reference during code reviews and architectural discussions - Plan regular reviews as the CLI evolves - Link to user stories, requirements, implementation tasks --- ## Key Principles | Principle | Practice | |-----------|----------| | **Discovery over assumption** | Never assume; ask. Understand the "why". Explore edge cases. | | **Collaborative decisions** | Help stakeholders think through trade-offs. Document reasoning, not just decisions. | | **Iterative understanding** | Build incrementally. Circle back when new information emerges. | | **Context-aware** | Tailor to project complexity, team expertise, constraints. | **Create the ADR when:** Clear context, key decisions identified, alternatives explored, understanding validated. **Continue the conversation when:** Requirements unclear, decisions arbitrary, alternatives not considered, stakeholders uncertain.
Signals
Information
- Repository
- jabrena/cursor-rules-java
- Author
- jabrena
- Last Sync
- 3/12/2026
- Repo Updated
- 3/12/2026
- Created
- 3/10/2026
Reviews (0)
No reviews yet. Be the first to review this skill!
Related Skills
upgrade-nodejs
Upgrading Bun's Self-Reported Node.js Version
cursorrules
CrewAI Development Rules
cn-check
Install and run the Continue CLI (`cn`) to execute AI agent checks on local code changes. Use when asked to "run checks", "lint with AI", "review my changes with cn", or set up Continue CI locally.
CLAUDE
CLAUDE.md
Related Guides
Bear Notes Claude Skill: Your AI-Powered Note-Taking Assistant
Learn how to use the bear-notes Claude skill. Complete guide with installation instructions and examples.
Mastering tmux with Claude: A Complete Guide to the tmux Claude Skill
Learn how to use the tmux Claude skill. Complete guide with installation instructions and examples.
OpenAI Whisper API Claude Skill: Complete Guide to AI-Powered Audio Transcription
Learn how to use the openai-whisper-api Claude skill. Complete guide with installation instructions and examples.