ac-spec-parser
Parse and validate project specifications. Use when loading YAML/JSON specs, validating spec structure, extracting requirements, or converting between spec formats.
Best use case
ac-spec-parser is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Parse and validate project specifications. Use when loading YAML/JSON specs, validating spec structure, extracting requirements, or converting between spec formats.
Teams using ac-spec-parser should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/ac-spec-parser/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How ac-spec-parser Compares
| Feature / Agent | ac-spec-parser | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Parse and validate project specifications. Use when loading YAML/JSON specs, validating spec structure, extracting requirements, or converting between spec formats.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# AC Spec Parser
Parse and validate project specifications for autonomous coding.
## Purpose
Parses YAML/JSON/Markdown specifications into structured data for feature generation and planning.
## Quick Start
```python
from scripts.spec_parser import SpecParser
parser = SpecParser(project_dir)
spec = await parser.parse("spec.yaml")
print(spec.project_name)
print(spec.requirements)
```
## Supported Formats
- **YAML**: `.yaml`, `.yml` - Structured specifications
- **JSON**: `.json` - Machine-readable specs
- **Markdown**: `.md` - Human-readable specs with sections
## Specification Schema
```yaml
project:
name: "Project Name"
description: "What the project does"
type: "web-app|api|cli|library"
requirements:
functional:
- id: "REQ-001"
description: "User can login"
priority: "high|medium|low"
acceptance_criteria:
- "Valid credentials grant access"
- "Invalid credentials show error"
non_functional:
- id: "NFR-001"
description: "Response under 200ms"
category: "performance|security|usability"
technology:
language: "python|typescript|go"
framework: "fastapi|nextjs|gin"
database: "postgresql|mongodb"
constraints:
- "Must run on AWS"
- "Budget under $100/month"
```
## Workflow
1. **Load**: Read spec file from disk
2. **Parse**: Convert to structured data
3. **Validate**: Check required fields and schema
4. **Normalize**: Standardize format for downstream use
5. **Export**: Output to feature analyzer
## Validation Rules
- Project name required
- At least one functional requirement
- All requirements have unique IDs
- Priority values are valid
- Technology stack is coherent
## Integration
Used by:
- `ac-spec-generator`: Generates feature list from parsed spec
- `ac-feature-analyzer`: Analyzes requirements
- `ac-complexity-assessor`: Estimates complexity
## API Reference
See `scripts/spec_parser.py` for full implementation.Related Skills
agent-react-specialist
Expert React specialist mastering React 18+ with modern patterns and ecosystem. Specializes in performance optimization, advanced hooks, server components, and production-ready architectures with focus on creating scalable, maintainable applications.
agent-kotlin-specialist
Expert Kotlin developer specializing in coroutines, multiplatform development, and Android applications. Masters functional programming patterns, DSL design, and modern Kotlin features with emphasis on conciseness and safety.
address-parser
Parse unstructured addresses into structured components - street, city, state, zip, country with validation.
abstract-algebra-specialist
Expert in groups, rings, fields, and algebraic structures with applications to cryptography and number theory
ux-spec-author
Converts UX/design intent into testable design specifications that feed requirements. Use when defining user flows, accessibility, or design constraints.
spec-driven-dev
基于 OpenSpec 规范的开发专家。负责全生命周期管理:初始化项目、创建变更提案 (Proposal)、制定规范 (Specs)、技术设计 (Design) 及任务规划 (Tasks)。严格遵守 OpenSpec 目录结构与工作流。
lp-design-spec
Translate a feature requirement into a concrete frontend design specification mapped to the design system, theme tokens, and per-business brand language. Sits between fact-find and plan.
design-spec
[Project Management] Create UI/UX design specifications from requirements, PBIs, or user stories. Produces structured design spec documents with layout, typography, colors, interactions, and responsive breakpoints. Triggers on design spec, design specification, UI specification, component spec, layout spec, wireframe, mockup.
typespec-m365-copilot-typespec-create-agent
Generate a complete TypeSpec declarative agent with instructions, capabilities, and conversation starters for Microsoft 365 Copilot Use when: the task directly matches typespec create agent responsibilities within plugin typespec-m365-copilot. Do not use when: a more specific framework or task-focused skill is clearly a better match.
typespec-create-agent
Generate a complete TypeSpec declarative agent with instructions, capabilities, and conversation starters for Microsoft 365 Copilot
speckit-plan
Generate technical implementation plans from feature specifications. Use after creating a spec to define architecture, tech stack, and implementation phases. Creates plan.md with detailed technical design.
speckit-initial
Run `specify init` in the current or target directory to bootstrap a Spec Kit project (pull .specify/ and slash commands); supports multiple AI agents and --script sh/ps. Use when the user says "initialize Spec Kit project", "specify init", or "set up Spec Kit in this repo".