{
  "markdown": "# Sherpy CLI\n\nA Go CLI tool for validating and converting Sherpy YAML documents to Markdown, plus syncing plans to Jira Cloud.\n\n## Overview\n\nSherpy CLI provides two main tools:\n\n### `sherpy` - Document Validation & Conversion\nValidates structured YAML documents against predefined schemas and converts them to formatted Markdown. Supports eight document types used in software project planning:\n\n- **business-requirements** - Business requirements with personas, use cases, and functional requirements\n- **technical-requirements** - Technical specifications, architecture, and implementation details\n- **milestones** - Project milestones with dependencies and success criteria\n- **milestone-tasks** - Detailed task breakdowns with time estimates and dependencies\n- **timeline** - Delivery timeline with workback dates and phase breakdowns\n- **qa-test-plan** - QA test suites with test cases and execution steps\n- **gap-analysis** - Gap analysis worksheets with identified gaps and recommendations\n- **wireframe-spec** - UX wireframe specifications with pages, components, and visual wireframes\n\n### `sherpy-to-jira` - Jira Cloud Sync ✨ NEW\nAutomatically syncs Sherpy planning documents to Jira Cloud:\n- Creates Epic from developer summary\n- Creates Stories for milestones\n- Creates Sub-tasks for tasks\n- Handles dependencies, story points, and timelines\n- Idempotent sync with content hashing\n\n**Quick start:**\n```bash\nmake sherpy-to-jira\nexport JIRA_EMAIL=\"your-email@company.com\"\nexport JIRA_TOKEN=\"your-jira-api-token\"\ncd your-sherpy-project\nsherpy-to-jira init\nsherpy-to-jira setup\nsherpy-to-jira sync --dry-run\n```\n\nSee [docs/jira-integration/README.md](./docs/jira-integration/README.md) for full documentation.\n\n## Installation\n\n### Quick Install (Recommended)\n\n**macOS and Linux:**\n\n```bash\ncurl -fsSL https://raw.githubusercontent.com/validkeys/sherpy/main/install.sh | bash\n```\n\nOr download and inspect first:\n\n```bash\ncurl -fsSL https://raw.githubusercontent.com/validkeys/sherpy/main/install.sh -o install.sh\nchmod +x install.sh\n./install.sh\n```\n\nThis script will:\n- Check for required dependencies (Go, Git, Make)\n- Clone the repository to a temporary directory\n- Build the binary from source\n- Install to `/usr/local/bin` (may prompt for sudo)\n- Optionally install the `sherpy-cli-planner` skill for Claude Code\n- Verify the installation\n- Clean up temporary files\n\n**Optional:** If Claude Code is detected, the installer will offer to install the `sherpy-cli-planner` skill, which provides a `/sherpy-cli-planner` command that orchestrates the full 13-step planning workflow using sherpy CLI prompts.\n\n**Requirements:**\n- Go 1.26 or later\n- Git\n- Make\n- Node.js/npm (optional, for Claude Code skill installation via `npx skills`)\n\n### From Source (Manual)\n\n```bash\ngit clone https://github.com/validkeys/sherpy.git\ncd sherpy\nmake build\nsudo make install\n```\n\n### Using Go\n\n```bash\ngo install github.com/validkeys/sherpy@latest\n```\n\n### Pre-built Binaries\n\nDownload pre-built binaries for macOS and Linux from the [releases page](https://github.com/validkeys/sherpy/releases).\n\n## Uninstall\n\nTo remove Sherpy from your system:\n\n```bash\n# Using the uninstall script\ncurl -fsSL https://raw.githubusercontent.com/validkeys/sherpy/main/uninstall.sh | bash\n\n# Or manually\nsudo rm /usr/local/bin/sherpy\n\n# Or with make (if in the repo directory)\nmake uninstall\n```\n\n## Quick Start\n\n```bash\n# 1. List available document types\nsherpy types\n\n# 2. Validate a document\nsherpy validate -t business-requirements -f docs/business-requirements.yaml\n\n# 3. Convert to markdown\nsherpy to-markdown -t business-requirements -f docs/business-requirements.yaml -o output.md\n\n# 4. Output skill prompt instructions (for AI agents)\nsherpy prompt -t business-requirements-interview\n\n# 5. List available prompts\nsherpy prompt --list\n\n# 6. Validate with strict mode (warnings → errors)\nsherpy validate -t business-requirements -f docs/business-requirements.yaml --strict\n\n# 7. View help for any command\nsherpy validate --help\n```\n\n## Usage\n\n### List Document Types\n\nList all supported document types and their file patterns:\n\n```bash\nsherpy types\n```\n\nOutput:\n```\nAvailable document types:\n  business-requirements    business-requirements.yaml\n  technical-requirements   technical-requirements.yaml\n  milestones              milestones.yaml\n  milestone-tasks         milestone-*.tasks.yaml\n  timeline                timeline.yaml\n  qa-test-plan            qa-test-plan.yaml\n  gap-analysis            gap-analysis-worksheet.yaml\n  wireframe-spec          wireframe-spec.yaml\n```\n\n### Validate Documents\n\nValidate a YAML document against its schema:\n\n```bash\nsherpy validate -t <type> -f <file>\n```\n\nExamples:\n\n```bash\n# Validate business requirements\nsherpy validate -t business-requirements -f docs/business-requirements.yaml\n\n# Validate with strict mode (warnings become errors)\nsherpy validate -t business-requirements -f docs/business-requirements.yaml --strict\n\n# Validate milestone tasks\nsherpy validate -t milestone-tasks -f docs/milestone-m1.tasks.yaml\n```\n\n#### Validation Features\n\n- **Schema validation** - Ensures all required fields are present and correctly typed\n- **Cross-field validation** - Validates references between fields (e.g., FR-IDs, dependencies)\n- **Sequential ID validation** - Ensures IDs follow sequential patterns (FR-001, FR-002, etc.)\n- **Date validation** - Validates date formats and workback calculations\n- **Dependency graph validation** - Detects circular dependencies in milestones and tasks\n- **Custom business rules** - Type-specific validation rules (allocation percentages, date ranges, etc.)\n\n### Output Skill Prompts\n\nOutput skill prompt instructions to stdout (for AI agents):\n\n```bash\n# List available prompts\nsherpy prompt --list\n\n# Output specific prompt instructions\nsherpy prompt -t business-requirements-interview\nsherpy prompt -t implementation-planner\nsherpy prompt -t qa-test-plan\n```\n\nThis command strips YAML frontmatter from `skills/*/SKILL.md` files and outputs the instructional content. It's designed for AI agents that need step-by-step guidance for planning tasks. The prompt content is embedded in the binary at build time, so no external files are required.\n\nAvailable prompts:\n- `gap-analysis-worksheet` - Analyzes initial requirements for gaps\n- `business-requirements-interview` - Gathers business requirements\n- `technical-requirements-interview` - Gathers technical requirements\n- `style-anchors-collection` - Documents code patterns\n- `ux-wireframe-planning` - Detects UI changes and generates wireframe specs\n- `implementation-planner` - Generates implementation plans\n- `implementation-plan-review` - Reviews implementation plans\n- `definition-of-done` - Defines milestone acceptance criteria\n- `architecture-decision-record` - Documents architectural decisions\n- `delivery-timeline` - Generates delivery timelines\n- `qa-test-plan` - Generates QA test plans\n- `developer-summary` - Generates developer summaries\n- `executive-summary` - Generates executive summaries\n\n### Describe Document Specifications\n\nOutput the formal YAML specification for a document type, so an LLM or developer can see the exact schema, fields, and validation rules a document must conform to:\n\n```bash\n# List document types that have an embedded specification\nsherpy describe --list\n\n# Print the specification for a specific type\nsherpy describe -t business-requirements\nsherpy describe -t milestones\nsherpy describe -t qa-test-plan\n```\n\nThis command outputs the embedded `spec.md` for the requested type. The spec content is embedded in the binary at build time, so no external files are required.\n\nAvailable specifications:\n- `business-requirements` - Business requirements with personas and use cases\n- `technical-requirements` - Technical specs and architecture\n- `milestones` - Project milestones with dependencies\n- `milestone-tasks` - Detailed task breakdowns\n- `timeline` - Delivery timeline and workback dates\n- `qa-test-plan` - QA test suites and test cases\n- `gap-analysis` - Gap analysis worksheets\n\n## Token Efficiency\n\nThe `sherpy prompt` command and `sherpy-cli-planner` skill provide a token-efficient alternative to installing all 17 individual planning skills in Claude Code.\n\n### Calculation Methodology\n\n**Traditional approach:** Install all skill files in Claude Code\n\n```\nskills/\n  business-requirements-interview/SKILL.md       8 KB\n  technical-requirements-interview/SKILL.md     10 KB\n  gap-analysis-worksheet/SKILL.md                6 KB\n  architecture-decision-record/SKILL.md          5 KB\n  style-anchors-collection/SKILL.md             13 KB\n  implementation-planner/SKILL.md               28 KB\n  implementation-plan-review/SKILL.md           16 KB\n  definition-of-done/SKILL.md                   10 KB\n  delivery-timeline/SKILL.md                    16 KB\n  qa-test-plan/SKILL.md                          6 KB\n  developer-summary/SKILL.md                    10 KB\n  executive-summary/SKILL.md                    13 KB\n  implementation-plan-best-practices/SKILL.md    9 KB\n  sherpy-flow/SKILL.md                          13 KB\n  sherpy-cli/SKILL.md                           18 KB\n  create-continuation-prompt/SKILL.md            2 KB\n  sherpy-cli-planner/SKILL.md                   11 KB\n  ────────────────────────────────────────────────\n  TOTAL: ~202 KB (all skills loaded in context)\n```\n\n**CLI approach:** Install orchestrator + load prompts on-demand\n\n```\nskills/\n  sherpy-cli-planner/SKILL.md                   11 KB\n  sherpy-cli/SKILL.md                           18 KB\n  ────────────────────────────────────────────────\n  Baseline: 29 KB\n\nPer-step (loaded via sherpy prompt -t <type>):\n  Step 1: gap-analysis-worksheet                 6 KB\n  Step 2: business-requirements-interview        8 KB\n  (only one step active at a time)\n  ────────────────────────────────────────────────\n  Typical: 29 KB + 8 KB = 37 KB total\n  Maximum: 29 KB + 28 KB = 57 KB (when using implementation-planner)\n```\n\n### Token Savings\n\n- **Traditional:** All 202 KB loaded simultaneously\n- **CLI approach:** 29-57 KB (only active step loaded)\n- **Savings:** 72-86% reduction in context window usage\n\n### When to Use Each Approach\n\n**Use traditional skills** if:\n- You're using Claude Code interactively\n- You want slash commands available (`/business-requirements-interview`)\n- You jump between workflow steps frequently\n\n**Use CLI approach** if:\n- You're running workflows via CLI automation\n- You want to minimize token usage\n- You follow the 13-step workflow sequentially\n- You're integrating with CI/CD or scripts\n\nBoth approaches produce identical output artifacts.\n\n## Implementation Plan Audiences\n\nSherpy supports three audience types for implementation plans:\n\n### AI Agent (Full Detail)\nGenerated tasks include:\n- Step-by-step numbered implementation instructions\n- Explicit code examples with file paths and line numbers\n- TDD checklists with test-first requirements\n- Detailed constraints (\"ONLY use X\", \"NEVER use Y\")\n- Drift policies for autonomous development\n- Exact validation commands with expected outputs\n\n**Best for:** Claude Code, autonomous AI development, learning projects\n\n### Human Developers (High-Level)\nGenerated tasks include:\n- Clear objectives and key requirements\n- Style anchor references for patterns\n- High-level constraints and technology choices\n- Success criteria without prescriptive steps\n- General validation guidance\n\n**Best for:** Experienced development teams, senior developers, architecture planning\n\n### Hybrid (Moderate Detail)\nGenerated tasks include:\n- Clear objectives with implementation approach\n- Style anchor references\n- Key decision points and guidance\n- Constraints and pattern requirements\n- Validation commands without expected outputs\n\n**Best for:** Mixed teams, pair programming with AI, handoff documentation, junior developers\n\n### Selecting an Audience\n\nWhen running `/sherpy-flow` or `/sherpy-cli-planner`, you'll be prompted to choose an audience during Step 5 (Implementation Planning). The same planning artifacts (milestones.yaml and task files) are generated, but with instruction detail appropriate for your audience.\n\nYou can regenerate plans with a different audience at any time.\n\n## UX/Wireframe Planning\n\nStep 6 of the Sherpy pipeline detects whether a project involves frontend/UI work and, when it does, generates a structured wireframe specification plus visual wireframes. For projects with no frontend changes, the step auto-skips after generating a minimal spec with `has_ui_changes: false`.\n\n### How It Works\n\n1. **Detection** — Scans technical requirements (React, Next.js, Vue, etc.) and implementation tasks for UI-related work\n2. **Spec Generation** — Extracts pages, components, states, and user flows into `ux/wireframe-spec.yaml`\n3. **Wireframe Generation** — Creates a self-contained Pencil `.pen` file with a pre-built component library and page wireframes\n\n### Exemplar Template\n\nThe wireframe step uses an **exemplar `.pen` file** as the starting point — a template containing a full wireframe component library with design tokens, reusable components, and slot definitions. Instead of building components from scratch, the agent:\n\n1. **Copies** the template to `ux/wireframes.pen` (gets all variables + reusable components in one shot)\n2. **Reads** the component structure via `pencil_batch_get` to discover available components, their IDs, and slots\n3. **Removes** example pages (keeps only the reusable component definitions)\n4. **Adds** project-specific pages as `ref` instances against the discovered components\n\nThe exemplar ships with these pre-built components:\n\n| Category | Components |\n|----------|-----------|\n| Layout | `wf-page-shell`, `wf-header`, `wf-sidebar`, `wf-content-area`, `wf-footer` |\n| Content | `wf-card`, `wf-section`, `wf-placeholder-box`, `wf-divider` |\n| Form | `wf-form`, `wf-form-field`, `wf-button`, `wf-checkbox`, `wf-radio`, `wf-dropdown`, `wf-textarea` |\n| Data | `wf-table`, `wf-table-row`, `wf-list-item`, `wf-chart` |\n| Navigation | `wf-nav-item`, `wf-breadcrumb`, `wf-tab` |\n| Annotation | `wf-label`, `wf-state-badge`, `wf-note` |\n\n### Custom Templates\n\nTo use your own component library instead of the built-in template, provide a path when the skill runs:\n\n```\nUse exemplar wireframe template?\n  1. Built-in template (default)\n  2. Custom path: [provide path to your .pen file]\n```\n\nCustom templates are useful for teams that want consistent wireframe styling across projects (brand colors, different sidebar widths, custom components).\n\n### Output Files\n\n```\nux/\n├── wireframe-spec.yaml   # Structured spec (pages, components, flows)\n├── wireframes.pen        # All components + page wireframes (self-contained)\n├── PAGE-001.png          # Exported preview\n├── PAGE-002.png          # Exported preview\n└── ...\n```\n\n### Consistency Rules\n\nThe wireframe skill enforces seven consistency rules:\n\n1. **Single file** — All components and pages in one `ux/wireframes.pen` (Pencil doesn't support cross-file refs)\n2. **No hardcoded colors** — All fills/strokes use `$wf-*` variables\n3. **No raw shapes for known components** — Use `ref` instances\n4. **Component structure** — Pages composed from `wf-page-shell` and its slots\n5. **Consistent dimensions** — Literal `1440`x`900` for desktop (not `$wf-*` variable refs, which Pencil silently drops on width/height)\n6. **Label everything** — All component instances have content-specific labels\n7. **State annotations** — State badges where spec defines states\n\n### Convert to Markdown\n\nConvert a YAML document to Markdown:\n\n```bash\nsherpy to-markdown -t <type> -f <file> [-o <output>]\n```\n\nExamples:\n\n```bash\n# Convert to stdout\nsherpy to-markdown -t business-requirements -f docs/business-requirements.yaml\n\n# Convert to file\nsherpy to-markdown -t business-requirements -f docs/business-requirements.yaml -o output.md\n\n# Convert all document types\nfor type in business-requirements technical-requirements milestones timeline qa-test-plan; do\n  sherpy to-markdown -t $type -f docs/$type.yaml -o docs/$type.md\ndone\n```\n\n#### Conversion Features\n\n- **Structured formatting** - Consistent markdown structure with headers, tables, and lists\n- **Table rendering** - Complex data rendered as markdown tables\n- **Nested lists** - Hierarchical data rendered as nested bullet lists\n- **Metadata preservation** - All important metadata included in the output\n- **Readable output** - Human-friendly formatting optimized for documentation\n\n## Document Type Examples\n\n### Business Requirements\n\n```bash\n# Validate\nsherpy validate -t business-requirements -f business-requirements.yaml\n\n# Convert to markdown\nsherpy to-markdown -t business-requirements -f business-requirements.yaml -o business-requirements.md\n```\n\n**Validates:**\n- Project metadata (name, problem statement, objectives)\n- User personas with roles and goals\n- Use cases with actors and flows\n- Functional requirements with sequential FR-IDs\n- Success criteria and constraints\n- Risks and assumptions\n\n### Technical Requirements\n\n```bash\nsherpy validate -t technical-requirements -f technical-requirements.yaml\nsherpy to-markdown -t technical-requirements -f technical-requirements.yaml -o technical.md\n```\n\n**Validates:**\n- Architecture overview and system components\n- Technology stack and dependencies\n- Data models and API specifications\n- Security and performance requirements\n- Deployment and scalability constraints\n\n### Milestones\n\n```bash\nsherpy validate -t milestones -f milestones.yaml\nsherpy to-markdown -t milestones -f milestones.yaml -o milestones.md\n```\n\n**Validates:**\n- Milestone definitions with sequential IDs\n- Dependency relationships (no circular dependencies)\n- Success criteria and deliverables\n- Estimated durations and ordering strategy\n\n### Milestone Tasks\n\n```bash\nsherpy validate -t milestone-tasks -f milestone-m1.tasks.yaml\nsherpy to-markdown -t milestone-tasks -f milestone-m1.tasks.yaml -o tasks-m1.md\n```\n\n**Validates:**\n- Task definitions with sequential IDs\n- Task types (feature, test, review, docs)\n- Time estimates (max 150 minutes per task)\n- Dependencies within the milestone\n- File operations (create, modify, touch_only)\n- Quality gates at each stage\n\n### Timeline\n\n```bash\nsherpy validate -t timeline -f timeline.yaml\nsherpy to-markdown -t timeline -f timeline.yaml -o timeline.md\n```\n\n**Validates:**\n- Development phases and milestone scheduling\n- Post-development phases (PR, QA, signoff)\n- Workback date calculations\n- Day-by-day breakdown consistency\n- Total delivery days vs. development days\n\n### QA Test Plan\n\n```bash\nsherpy validate -t qa-test-plan -f qa-test-plan.yaml\nsherpy to-markdown -t qa-test-plan -f qa-test-plan.yaml -o qa-plan.md\n```\n\n**Validates:**\n- Test suites with unique suite IDs\n- Test cases by type (positive, negative, edge, security, performance)\n- Test steps with expected results\n- Priority levels and functional requirement mappings\n\n### Gap Analysis\n\n```bash\nsherpy validate -t gap-analysis -f gap-analysis-worksheet.yaml\nsherpy to-markdown -t gap-analysis -f gap-analysis-worksheet.yaml -o gaps.md\n```\n\n**Validates:**\n- Gap identification with sequential gap IDs\n- Gap categories and priorities\n- Recommendations and answers\n- Total gap count consistency\n\n### Wireframe Spec\n\n```bash\nsherpy validate -t wireframe-spec -f ux/wireframe-spec.yaml\nsherpy to-markdown -t wireframe-spec -f ux/wireframe-spec.yaml -o ux/wireframe-spec.md\n```\n\n**Validates:**\n- UI change detection flag (`has_ui_changes`)\n- Sequential page IDs (PAGE-001, PAGE-002, etc.)\n- Component references and cross-type ID validation\n- Conditional validation (pages only required when `has_ui_changes: true`)\n- Metadata and pen file references\n\n## Development\n\n### Build from Source\n\n```bash\n# Build binary\nmake build\n\n# Run tests\nmake test\n\n# Run linters\nmake lint\n\n# Run integration tests\nmake integration-test\n\n# Clean build artifacts\nmake clean\n```\n\n### Run Tests\n\n```bash\n# Unit tests\ngo test ./... -v\n\n# Integration tests\ngo test ./integration -v\n\n# With coverage\ngo test ./... -cover\n```\n\n### Project Structure\n\n```\nsherpy/\n├── cmd/              # CLI command implementations\n│   ├── root.go       # Root command and flags\n│   ├── validate.go   # Validate command\n│   └── to-markdown.go # Markdown conversion command\n├── schema/           # Document schemas and validators\n│   ├── business_requirements.go\n│   ├── technical_requirements.go\n│   ├── milestones.go\n│   ├── milestone_tasks.go\n│   ├── timeline.go\n│   ├── qa_test_plan.go\n│   ├── gap_analysis.go\n│   └── registry.go   # Schema registry\n├── markdown/         # Markdown converters\n│   ├── converter.go  # Template engine\n│   ├── business_requirements.go\n│   ├── technical_requirements.go\n│   ├── milestones.go\n│   ├── milestone_tasks.go\n│   ├── timeline.go\n│   ├── qa_test_plan.go\n│   └── gap_analysis.go\n├── integration/      # Integration tests\n│   └── integration_test.go\n├── main.go           # Entry point\n├── Makefile          # Build targets\n└── .goreleaser.yml   # Release configuration\n```\n\n## Security Features\n\nSherpy CLI includes multiple security protections to ensure safe operation:\n\n### Path Traversal Protection\n\nSherpy validates file paths to prevent directory traversal attacks while allowing legitimate access to project files.\n\n**Path Policy:**\n- ✓ **Allowed:** Current directory and subdirectories\n- ✓ **Allowed:** One level of parent directory traversal (`../docs`)\n- ✗ **Blocked:** Two or more levels of parent traversal (`../../etc`)\n\n**Examples:**\n```bash\n# Allowed paths\nsherpy validate -f ./requirements.yaml -t business-requirements\nsherpy validate -f docs/business-requirements.yaml -t business-requirements\nsherpy validate -f ../docs/requirements.yaml -t business-requirements\n\n# Blocked paths\nsherpy validate -f ../../etc/passwd -t business-requirements\n# Error: path traversal detected: ../../etc/passwd\n```\n\n**Rationale:**\n\nThe one-level traversal allowance enables legitimate use cases like:\n- Accessing sibling directories in multi-project workspaces\n- Running sherpy from a different directory than your documents\n- Shared tooling in monorepos\n\nSince sherpy only **reads** files (no writes or execution) and respects your filesystem permissions, the security risk is limited to reading files you already have access to.\n\n**Additional Protections:**\n- Paths are normalized using `filepath.Clean`\n- Absolute path validation prevents bypass attempts\n- Your OS filesystem permissions still apply\n- Combined with 10MB file size limit below\n\n### File Size Limits\n- **10MB maximum** - Files larger than 10MB are rejected before processing\n- **Early validation** - Size checked before content is read\n- **Prevents**: Memory exhaustion, DoS attacks via large files\n\n### Secure File Permissions\n- **0600 permissions** - Output files are created with user-only read/write permissions\n- **No group/world access** - Protects sensitive planning documents\n- **Applies to**: All markdown output files\n\n### Injection Prevention\n- **Markdown escaping** - User content is escaped to prevent markdown injection\n- **HTML escaping** - HTML special characters are escaped to prevent XSS\n- **Template safety** - Panic recovery for template execution errors\n- **Prevents**: XSS attacks, markdown injection, malicious template rendering\n\n### ReDoS Protection\n- **MaxIDLength = 100** - IDs are length-checked before regex evaluation\n- **Pre-validation** - Length validation occurs before expensive regex operations\n- **Prevents**: Regular expression denial of service attacks\n\n### Error Handling\n- **Graceful degradation** - Errors are caught and reported without crashing\n- **Panic recovery** - Template execution panics are recovered\n- **Clear error messages** - Security errors provide actionable feedback\n\n### Best Practices\n```bash\n# Validate file permissions after conversion\nsherpy to-markdown -t business-requirements -f input.yaml -o output.md\nls -l output.md  # Should show -rw------- (600)\n\n# Check file size before processing\nstat -f%z input.yaml  # macOS\nstat -c%s input.yaml  # Linux\n# Reject if > 10MB (10485760 bytes)\n\n# Use absolute paths when possible\nsherpy validate -t milestones -f /absolute/path/to/milestones.yaml\n\n# Run in restricted environments for untrusted input\ndocker run --rm -v $(pwd):/data sherpy validate -t business-requirements -f /data/input.yaml\n```\n\n## Exit Codes\n\n- `0` - Success\n- `1` - Validation failed or command error\n- `2` - File not found or read error\n- **Security errors return exit code 1 with descriptive messages**\n\n## Requirements\n\n- Go 1.26 or later\n\n## Dependencies\n\n- [cobra](https://github.com/spf13/cobra) - CLI framework\n- [yaml.v3](https://github.com/go-yaml/yaml) - YAML parsing\n\n## License\n\nMIT License - see [LICENSE](./LICENSE) for details.\n\n## Contributing\n\nContributions are welcome! Please feel free to submit issues or pull requests.\n\n## Related Projects\n\nThis CLI tool is part of the Sherpy ecosystem:\n\n- **[Sherpy Skills](https://github.com/validkeys/sherpy)** - Claude Code skills for structured requirements gathering and planning\n- **Sherpy CLI** (this project) - Validation and conversion tools for Sherpy documents\n\n## Authors\n\nDeveloped by [Valid Keys](https://github.com/validkeys)\n",
  "bytes": 25163,
  "sha": "8e6cf0547d8eb539d681f9c78cff54435842057d077477aec4496b463980335e",
  "repo_slug": "validkeys/sherpy",
  "fonte": "repo",
  "truncated": false,
  "api": "https://api.agentalog.com/api/listings/skl_validkeys_sherpy_delivery_timeline_868053c3/readme"
}