[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6C4QJGQ3TERD81MA81VKT82":3,"skill-same:01M6C4QJGQ3TERD81MA81VKT82":64},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":17,"publishedAt":23,"linkOnly":24,"markdownContent":25,"markdownBody":26,"frontMatter":27,"refName":28,"commitSha":29,"skillDirectory":30,"forksCount":31,"repositoryHtmlUrl":32,"repositoryHomepageUrl":6,"ownerHtmlUrl":33,"ownerBlogUrl":34,"ownerDescription":6,"updatedAt":35,"install":36,"resources":49},"01M6C4QJGQ3TERD81MA81VKT82","awa-usage",null,"Understand awa, its CLI, and configuration. Use this when asked about awa itself, how to use it, or how to configure it.","ncoderz\u002Fawa","ncoderz","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F124541034?v=4","01M6C4PHT3RMHEY3TK3TJKYX5F","01M6C4PHXT7RAP268HGXCRF8QA",1,"BSD-3-Clause","https:\u002F\u002Fgithub.com\u002Fncoderz\u002Fawa\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fawa-usage\u002FSKILL.md",[],[18,19,20,21,22],"awa usage","cli","how","configure","use","2026-11-10 10:12:30",false,"---\nname: awa-usage\ndescription: Understand awa, its CLI, and configuration. Use this when asked about awa itself, how to use it, or how to configure it.\n---\n\n# awa — Agent Workflow for AIs\n\n## What awa Is\n\nawa is a CLI tool and structured development workflow for AI-assisted coding. It generates agent configuration files from templates and defines a spec-driven development process with full traceability from requirements through code and tests.\n\nKey concepts:\n\n- **Templates**: Eta-based templates that produce agent config files (`.github\u002Fagents\u002F`, `.claude\u002F`, etc.) with conditional output via feature flags\n- **Workflow**: A structured pipeline from architecture through implementation, where every artifact traces to its origin\n- **Traceability**: Code markers (`@awa-impl`, `@awa-test`, `@awa-component`) link source code and tests back to requirements and design\n- **Validation**: `awa check` verifies that all markers resolve to spec IDs and that spec files conform to YAML schemas\n\n## The `.awa\u002F` Directory\n\nAll spec artifacts live in `.awa\u002F`:\n\n    .awa\u002F\n    ├── .agent\u002F\n    │   ├── awa.core.md                    # Core system prompt (always read first)\n    │   └── schemas\u002F\n    │       ├── ARCHITECTURE.schema.yaml\n    │       ├── FEAT.schema.yaml\n    │       ├── EXAMPLE.schema.yaml\n    │       ├── REQ.schema.yaml\n    │       ├── DESIGN.schema.yaml\n    │       ├── API.schema.yaml\n    │       ├── TASK.schema.yaml\n    │       ├── PLAN.schema.yaml\n    │       ├── DEPRECATED.schema.yaml\n    │       ├── ALIGN_REPORT.schema.yaml\n    │       └── README.schema.yaml\n    ├── specs\u002F\n    │   ├── ARCHITECTURE.md                # System overview\n    │   ├── FEAT-{CODE}-*.md               # Feature context and motivation\n    │   ├── EXAMPLE-{CODE}-*-{nnn}.md     # Usage examples per feature\n    │   ├── REQ-{CODE}-*.md                # Requirements (EARS format)\n    │   ├── DESIGN-{CODE}-*.md             # Design and components\n    │   ├── API-{CODE}-*.tsp               # TypeSpec API definitions\n    │   └── deprecated\u002F\n    │       └── DEPRECATED.md              # Tombstone file for retired spec IDs\n    ├── tasks\u002F\n    │   └── TASK-{CODE}-*-{nnn}.md         # Implementation steps\n    ├── plans\u002F\n    │   └── PLAN-{nnn}-*.md                # Ad-hoc plans\n    ├── align\u002F\n    │   └── ALIGN-{x}-WITH-{y}-{nnn}.md   # Alignment reports\n    └── rules\u002F\n        └── *.md                           # Project-specific rules\n\n## Workflow Stages\n\n    ARCHITECTURE → FEAT → REQUIREMENTS → DESIGN → TASKS → CODE & TESTS → DOCUMENTATION\n\n| Stage | Artifact | Purpose |\n|-------|----------|---------|\n| Architecture | `ARCHITECTURE.md` | System overview, components, constraints |\n| Feature | `FEAT-{CODE}-*.md` | Context, motivation, scenarios |\n| Requirements | `REQ-{CODE}-*.md` | What must be built (EARS\u002FINCOSE format) |\n| Design | `DESIGN-{CODE}-*.md` | How it gets built — components, interfaces, properties |\n| Tasks | `TASK-{CODE}-*-{nnn}.md` | Step-by-step implementation work items |\n| Code & Tests | Source files | Implementation with traceability markers |\n| Documentation | `README.md`, `docs\u002F` | User-facing docs |\n| *(lateral)* | `EXAMPLE-{CODE}-*-{nnn}.md` | Concrete usage examples for a feature |\n| *(lateral)* | `API-{CODE}-*.tsp` | TypeSpec API definitions |\n| *(lateral)* | `PLAN-{nnn}-*.md` | Ad-hoc plans for vibe coding |\n| *(lateral)* | `ALIGN-{x}-WITH-{y}-{nnn}.md` | Alignment reports comparing artifacts |\n| *(lateral)* | `deprecated\u002FDEPRECATED.md` | Tombstone for retired spec IDs |\n\nThe workflow is flexible. Start top-down (architecture → code), bottom-up (code → extract requirements), or lateral (docs, refactors, ad-hoc plans). Lateral artifacts can be produced at any stage.\n\n## Traceability Chain\n\nIDs and markers create explicit links between artifacts:\n\n    REQ-{CODE}-*.md\n      └── {CODE}-{n}: Requirement title\n            └── {CODE}-{n}_AC-{m}: Acceptance criterion\n                    │\n                    ▼\n    DESIGN-{CODE}-*.md\n      └── {CODE}-ComponentName\n            ├── IMPLEMENTS: {CODE}-{n}_AC-{m}\n            └── {CODE}_P-{n}: Correctness property\n                    │\n                    ▼\n    Source code\n      └── \u002F\u002F @awa-component: {CODE}-ComponentName\n          └── \u002F\u002F @awa-impl: {CODE}-{n}_AC-{m}\n                    │\n                    ▼\n    Tests\n      ├── \u002F\u002F @awa-test: {CODE}_P-{n}          ← verifies property\n      └── \u002F\u002F @awa-test: {CODE}-{n}_AC-{m}     ← verifies AC\n\nID formats:\n\n- `{CODE}-{n}` — requirement (e.g. `DIFF-1`)\n- `{CODE}-{n}.{p}` — subrequirement (e.g. `DIFF-1.1`)\n- `{CODE}-{n}[.{p}]_AC-{m}` — acceptance criterion (e.g. `DIFF-1_AC-1`)\n- `{CODE}_P-{n}` — correctness property (e.g. `DIFF_P-2`)\n\n## CLI Commands\n\nawa may be installed locally. Detect the package manager and use the appropriate exec command:\n\n    npm\u002Fnpx: npx awa \u003Ccommand>\n    yarn:    yarn exec awa \u003Ccommand>\n    pnpm:    pnpm exec awa \u003Ccommand>\n    bun:     bunx awa \u003Ccommand>\n\n### awa init [output] \u002F awa template generate [output]\n\nGenerate configuration files from templates. `init` is a top-level convenience command equivalent to `awa template generate`.\n\n| Option | Description |\n|--------|-------------|\n| `[output]` | Output directory (positional, optional if set in config) |\n| `-t, --template \u003Csource>` | Template source — local path or Git repo |\n| `-f, --features \u003Cflag...>` | Feature flags (repeatable) |\n| `--preset \u003Cname...>` | Preset names to enable (repeatable) |\n| `--remove-features \u003Cflag...>` | Feature flags to remove (repeatable) |\n| `--force` | Overwrite existing files without prompting |\n| `--dry-run` | Preview changes without modifying files |\n| `--delete` | Enable deletion of files listed in template |\n| `-c, --config \u003Cpath>` | Path to configuration file |\n| `--refresh` | Force re-fetch of cached Git templates |\n| `--all-targets` | Process all named targets from config |\n| `--target \u003Cname>` | Process a specific named target |\n| `--overlay \u003Cpath...>` | Overlay directory paths (repeatable) |\n| `--json` | Output results as JSON (implies --dry-run) |\n| `--summary` | Compact one-line counts summary |\n\n### awa template diff [target]\n\nCompare generated template output against an existing target directory. Exit code 0 = match, 1 = differences.\n\n| Option | Description |\n|--------|-------------|\n| `[target]` | Target directory (positional, optional if set in config) |\n| `-t, --template \u003Csource>` | Template source — local path or Git repo |\n| `-f, --features \u003Cflag...>` | Feature flags (repeatable) |\n| `--preset \u003Cname...>` | Preset names to enable (repeatable) |\n| `--remove-features \u003Cflag...>` | Feature flags to remove (repeatable) |\n| `-c, --config \u003Cpath>` | Path to configuration file |\n| `--refresh` | Force re-fetch of cached Git templates |\n| `--list-unknown` | Include files in target not present in templates |\n| `--all-targets` | Process all named targets from config |\n| `--target \u003Cname>` | Process a specific named target |\n| `-w, --watch` | Watch template directory and re-diff on change |\n| `--overlay \u003Cpath...>` | Overlay directory paths (repeatable) |\n| `--json` | Output results as JSON |\n| `--summary` | Compact one-line counts summary |\n\n### awa check\n\nCheck traceability chain integrity and spec schema conformance. Exit code 0 = clean, 1 = errors.\n\n| Option | Description |\n|--------|-------------|\n| `-c, --config \u003Cpath>` | Path to configuration file |\n| `--spec-ignore \u003Cpattern...>` | Glob patterns to exclude from spec file scanning (repeatable, appends to config) |\n| `--code-ignore \u003Cpattern...>` | Glob patterns to exclude from code file scanning (repeatable, appends to config) |\n| `--json` | Output results as JSON |\n| `--summary` | Compact one-line counts summary |\n| `--allow-warnings` | Allow warnings without failing |\n| `--spec-only` | Run only spec-level checks; skip code-to-spec traceability |\n| `--no-fix` | Skip auto-regeneration of Requirements Traceability sections and Feature Codes table |\n| `--deprecated` | Surface warnings for code markers and cross-references targeting deprecated IDs |\n\nBefore running checks, `awa check` auto-regenerates Requirements Traceability sections in DESIGN and TASK files, and the Feature Codes table in ARCHITECTURE.md. Use `--no-fix` to skip this.\n\nChecks performed: orphaned markers, uncovered ACs, broken cross-refs, invalid ID format, orphaned specs, schema validation. Config-only options: `schema-dir`, `schema-enabled`, `ignore-markers`, `id-pattern`, `cross-ref-patterns`, `extra-spec-globs`, `extra-spec-ignore`.\n\n### awa trace\n\nNavigate the traceability chain and assemble context from specs, code, and tests. Use this to gather focused context before implementing, refactoring, or reviewing.\n\n    awa trace [ids...] [options]\n\n| Option | Description |\n|--------|-------------|\n| `[ids...]` | Traceability ID(s) to trace (e.g. `FEAT-1`, `FEAT-1_AC-2`, `FEAT_P-3`) |\n| `--all` | Trace all known IDs in the project |\n| `--scope \u003Ccode>` | Limit results to a feature code (e.g. `--scope FEAT`) |\n| `--file \u003Cpath>` | Resolve IDs from a source file's markers — useful to understand a file's spec connections before changing it |\n| `--task \u003Cpath>` | Resolve IDs from a task file |\n| `--content` | Output actual file sections instead of locations |\n| `--list` | Output file paths only |\n| `--direction \u003Cdir>` | Traversal direction: `both` (default), `forward`, `reverse` |\n| `--depth \u003Cn>` | Maximum traversal depth |\n| `--no-code` | Exclude source code (spec-only context) |\n| `--no-tests` | Exclude test files |\n| `--json` | Output results as JSON |\n| `--summary` | Compact one-line counts summary |\n| `--max-tokens \u003Cn>` | Cap content output size (implies `--content`) |\n| `-A\u002F-B\u002F-C \u003Cn>` | Lines of context after\u002Fbefore\u002Fboth around a code marker (`--content` only) |\n| `-c, --config \u003Cpath>` | Path to configuration file |\n\n### awa spec renumber [code]\n\nRenumber traceability IDs to match document order, closing gaps in numbering sequences. Exit code 0 = no changes, 1 = changes applied\u002Fpreviewed.\n\n| Option | Description |\n|--------|-------------|\n| `[code]` | Feature code to renumber (e.g. DIFF, TRC) |\n| `--all` | Renumber all feature codes |\n| `--dry-run` | Preview changes without modifying files |\n| `--json` | Output results as JSON |\n| `--expand-unambiguous-ids` | Expand unambiguous malformed ID shorthand before renumbering |\n| `-c, --config \u003Cpath>` | Path to configuration file |\n\nScans all REQ and DESIGN spec files for the given feature code, builds a globally sequential renumber map that closes gaps (e.g. 1, 3, 5 → 1, 2, 3), and propagates all ID changes across every spec file type (ARCHITECTURE.md, FEAT, EXAMPLE, REQ, DESIGN, API, TASK, PLAN, ALIGN), source code, and tests. Detects and reports malformed IDs.\n\nWhen `--expand-unambiguous-ids` is set, unambiguous malformed patterns are expanded before renumbering: slash ranges (`ARC-36_AC-8\u002F9` → `ARC-36_AC-8, ARC-36_AC-9`) and dot-dot AC ranges (`ARC-18_AC-14..16` → `ARC-18_AC-14, ARC-18_AC-15, ARC-18_AC-16`). Ambiguous patterns (letter suffixes, full-ID ranges, trailing periods) remain as warnings only.\n\n### awa spec recode \u003Csource> \u003Ctarget>\n\nRecode traceability IDs from one feature code to another. Rewrites all IDs, renames spec files, and updates headings. Exit code 0 = no changes, 1 = changes applied\u002Fpreviewed.\n\n| Option | Description |\n|--------|-------------|\n| `\u003Csource>` | Source feature code to recode from |\n| `\u003Ctarget>` | Target feature code to recode into |\n| `--dry-run` | Preview changes without modifying files |\n| `--json` | Output results as JSON |\n| `--renumber` | Renumber target code after recode |\n| `-c, --config \u003Cpath>` | Path to configuration file |\n\nBuilds an offset map across all source REQ and DESIGN files so source IDs don't collide with existing target IDs. Use `awa spec merge` if target spec files already exist.\n\n### awa spec merge \u003Csource> \u003Ctarget>\n\nMerge one feature code into another — combines recode, content merge, and cleanup. Exit code 0 = no changes, 1 = changes applied\u002Fpreviewed.\n\n| Option | Description |\n|--------|-------------|\n| `\u003Csource>` | Source feature code to merge from |\n| `\u003Ctarget>` | Target feature code to merge into |\n| `--dry-run` | Preview changes without modifying files |\n| `--json` | Output results as JSON |\n| `--renumber` | Renumber target code after merge |\n| `-c, --config \u003Cpath>` | Path to configuration file |\n\nPipeline: recode source IDs past target's highest → rename\u002Fmove spec files → warn about stale source refs → optionally renumber. Use `merge` when both codes have existing spec files; use `recode` for a pure rename.\n\n### awa spec codes\n\nList all feature codes with requirement counts and scope summaries. Exit code 0 = success.\n\n| Option | Description |\n|--------|-------------|\n| `--json` | Output results as JSON |\n| `--summary` | Compact one-line counts summary |\n| `-c, --config \u003Cpath>` | Path to configuration file |\n\n### awa template test\n\nRun template test fixtures. Exit code 0 = all pass, 1 = failures.\n\n| Option | Description |\n|--------|-------------|\n| `-t, --template \u003Csource>` | Template source — local path or Git repo |\n| `-c, --config \u003Cpath>` | Path to configuration file |\n| `--update-snapshots` | Update stored snapshots with current output |\n| `--refresh` | Force re-fetch of cached Git templates |\n| `--overlay \u003Cpath...>` | Overlay directory paths (repeatable) |\n| `--json` | Output results as JSON |\n| `--summary` | Compact one-line counts summary |\n\nDiscovers `*.toml` fixtures in `_tests\u002F`, renders per fixture, verifies expected files, compares against snapshots.\n\n### awa template features\n\nDiscover feature flags available in a template.\n\n| Option | Description |\n|--------|-------------|\n| `-t, --template \u003Csource>` | Template source — local path or Git repo |\n| `-c, --config \u003Cpath>` | Path to configuration file |\n| `--refresh` | Force re-fetch of cached Git templates |\n| `--overlay \u003Cpath...>` | Overlay directory paths (repeatable) |\n| `--json` | Output results as JSON |\n| `--summary` | Compact one-line counts summary |\n\n### Global Options\n\n`-v, --version` — display version. `-h, --help` — display help.\n\n## Configuration — `.awa.toml`\n\nCreate `.awa.toml` in the project root. CLI arguments always override config values.\n\n    # Root options\n    output = \".github\u002Fagents\"\n    template = \"owner\u002Frepo\"\n    features = [\"copilot\", \"claude\"]\n    overlay = [\".\u002Foverlays\u002Fcompany\", \".\u002Foverlays\u002Fproject\"]\n    refresh = false\n    delete = false\n\n    # Named presets — expand into feature flags\n    [presets]\n    full = [\"copilot\", \"claude\", \"cursor\", \"windsurf\", \"kilocode\", \"opencode\", \"gemini\", \"roo\", \"qwen\", \"codex\", \"agy\", \"agents-md\"]\n    lite = [\"copilot\", \"claude\"]\n\n    # Per-agent targets — generate different configs in one command\n    [targets.claude]\n    output = \".\"\n    features = [\"claude\", \"architect\", \"code\"]\n\n    [targets.copilot]\n    output = \".\"\n    features = [\"copilot\", \"code\", \"vibe\"]\n\n    # Traceability check configuration\n    [check]\n    spec-globs = [\".awa\u002Fspecs\u002F**\u002F*.md\"]\n    code-globs = [\"src\u002F**\u002F*.{ts,js,tsx,jsx}\"]\n    markers = [\"@awa-impl\", \"@awa-test\", \"@awa-component\"]\n    spec-ignore = []\n    code-ignore = [\"node_modules\u002F**\", \"dist\u002F**\", \"vendor\u002F**\", \"target\u002F**\", \"build\u002F**\", \"out\u002F**\", \".awa\u002F**\"]\n    extra-spec-globs = [\".awa\u002F**\u002F*\"]        # additional spec globs for schema validation\n    extra-spec-ignore = [\".awa\u002F.agent\u002F**\"]  # patterns to exclude from extra spec scanning\n    ignore-markers = []\n    id-pattern = \"...\"                      # regex for valid traceability IDs\n    cross-ref-patterns = [\"IMPLEMENTS:\", \"VALIDATES:\"]\n    format = \"text\"\n    schema-dir = \".awa\u002F.agent\u002Fschemas\"\n    schema-enabled = true\n    allow-warnings = false\n    spec-only = false\n\n    # Update check configuration\n    [update-check]\n    enabled = true        # set to false to disable update checks\n    interval = 86400      # seconds between checks (default: 1 day)\n\nTarget fields: `output`, `template`, `features`, `preset`, `remove-features`. Boolean flags (`force`, `dry-run`, `delete`, `refresh`) apply globally. Target features replace root features entirely.\n\nFeature resolution order: start with `--features`, expand `--preset` (append, deduplicate), remove `--remove-features`.\n\nMulti-target usage:\n\n    awa template generate --all-targets           # process all targets\n    awa template generate --target claude        # process one target\n    awa template diff --all-targets              # diff all targets\n\n## Template Sources\n\nTemplates can be a local path or a Git repository:\n\n- Local path: `.\u002Ftemplates\u002Fawa`\n- GitHub shorthand: `owner\u002Frepo`\n- Full URL: `https:\u002F\u002Fgithub.com\u002Fowner\u002Frepo`\n- SSH: `git@github.com:owner\u002Frepo`\n- With subdirectory: `owner\u002Frepo\u002Fpath\u002Fto\u002Ftemplates`\n- With ref: `owner\u002Frepo#branch`, `owner\u002Frepo#v1.0.0`\n\nGit templates are cached in `~\u002F.cache\u002Fawa\u002Ftemplates\u002F`. Use `--refresh` to re-fetch.\n\n## Exit Codes\n\n| Command | 0 | 1 | 2 |\n|---------|---|---|---|\n| `awa init` \u002F `awa template generate` | Success | — | Internal error |\n| `awa template diff` | All files match | Differences found | Internal error |\n| `awa check` | All checks pass | Errors found | Internal error |\n| `awa template test` | All fixtures pass | Failures found | Internal error |\n| `awa template features` | Success | Error | — |\n| `awa trace` | Chain found | ID not found \u002F no context | Internal error |\n| `awa spec renumber` | No changes needed | Changes applied\u002Fpreviewed | Internal error |\n| `awa spec recode` | No changes needed | Changes applied\u002Fpreviewed | Error \u002F stale refs |\n| `awa spec merge` | No changes needed | Changes applied\u002Fpreviewed | Error \u002F stale refs |\n| `awa spec codes` | Success | — | Internal error |\n","# awa — Agent Workflow for AIs\n\n## What awa Is\n\nawa is a CLI tool and structured development workflow for AI-assisted coding. It generates agent configuration files from templates and defines a spec-driven development process with full traceability from requirements through code and tests.\n\nKey concepts:\n\n- **Templates**: Eta-based templates that produce agent config files (`.github\u002Fagents\u002F`, `.claude\u002F`, etc.) with conditional output via feature flags\n- **Workflow**: A structured pipeline from architecture through implementation, where every artifact traces to its origin\n- **Traceability**: Code markers (`@awa-impl`, `@awa-test`, `@awa-component`) link source code and tests back to requirements and design\n- **Validation**: `awa check` verifies that all markers resolve to spec IDs and that spec files conform to YAML schemas\n\n## The `.awa\u002F` Directory\n\nAll spec artifacts live in `.awa\u002F`:\n\n    .awa\u002F\n    ├── .agent\u002F\n    │   ├── awa.core.md                    # Core system prompt (always read first)\n    │   └── schemas\u002F\n    │       ├── ARCHITECTURE.schema.yaml\n    │       ├── FEAT.schema.yaml\n    │       ├── EXAMPLE.schema.yaml\n    │       ├── REQ.schema.yaml\n    │       ├── DESIGN.schema.yaml\n    │       ├── API.schema.yaml\n    │       ├── TASK.schema.yaml\n    │       ├── PLAN.schema.yaml\n    │       ├── DEPRECATED.schema.yaml\n    │       ├── ALIGN_REPORT.schema.yaml\n    │       └── README.schema.yaml\n    ├── specs\u002F\n    │   ├── ARCHITECTURE.md                # System overview\n    │   ├── FEAT-{CODE}-*.md               # Feature context and motivation\n    │   ├── EXAMPLE-{CODE}-*-{nnn}.md     # Usage examples per feature\n    │   ├── REQ-{CODE}-*.md                # Requirements (EARS format)\n    │   ├── DESIGN-{CODE}-*.md             # Design and components\n    │   ├── API-{CODE}-*.tsp               # TypeSpec API definitions\n    │   └── deprecated\u002F\n    │       └── DEPRECATED.md              # Tombstone file for retired spec IDs\n    ├── tasks\u002F\n    │   └── TASK-{CODE}-*-{nnn}.md         # Implementation steps\n    ├── plans\u002F\n    │   └── PLAN-{nnn}-*.md                # Ad-hoc plans\n    ├── align\u002F\n    │   └── ALIGN-{x}-WITH-{y}-{nnn}.md   # Alignment reports\n    └── rules\u002F\n        └── *.md                           # Project-specific rules\n\n## Workflow Stages\n\n    ARCHITECTURE → FEAT → REQUIREMENTS → DESIGN → TASKS → CODE & TESTS → DOCUMENTATION\n\n| Stage | Artifact | Purpose |\n|-------|----------|---------|\n| Architecture | `ARCHITECTURE.md` | System overview, components, constraints |\n| Feature | `FEAT-{CODE}-*.md` | Context, motivation, scenarios |\n| Requirements | `REQ-{CODE}-*.md` | What must be built (EARS\u002FINCOSE format) |\n| Design | `DESIGN-{CODE}-*.md` | How it gets built — components, interfaces, properties |\n| Tasks | `TASK-{CODE}-*-{nnn}.md` | Step-by-step implementation work items |\n| Code & Tests | Source files | Implementation with traceability markers |\n| Documentation | `README.md`, `docs\u002F` | User-facing docs |\n| *(lateral)* | `EXAMPLE-{CODE}-*-{nnn}.md` | Concrete usage examples for a feature |\n| *(lateral)* | `API-{CODE}-*.tsp` | TypeSpec API definitions |\n| *(lateral)* | `PLAN-{nnn}-*.md` | Ad-hoc plans for vibe coding |\n| *(lateral)* | `ALIGN-{x}-WITH-{y}-{nnn}.md` | Alignment reports comparing artifacts |\n| *(lateral)* | `deprecated\u002FDEPRECATED.md` | Tombstone for retired spec IDs |\n\nThe workflow is flexible. Start top-down (architecture → code), bottom-up (code → extract requirements), or lateral (docs, refactors, ad-hoc plans). Lateral artifacts can be produced at any stage.\n\n## Traceability Chain\n\nIDs and markers create explicit links between artifacts:\n\n    REQ-{CODE}-*.md\n      └── {CODE}-{n}: Requirement title\n            └── {CODE}-{n}_AC-{m}: Acceptance criterion\n                    │\n                    ▼\n    DESIGN-{CODE}-*.md\n      └── {CODE}-ComponentName\n            ├── IMPLEMENTS: {CODE}-{n}_AC-{m}\n            └── {CODE}_P-{n}: Correctness property\n                    │\n                    ▼\n    Source code\n      └── \u002F\u002F @awa-component: {CODE}-ComponentName\n          └── \u002F\u002F @awa-impl: {CODE}-{n}_AC-{m}\n                    │\n                    ▼\n    Tests\n      ├── \u002F\u002F @awa-test: {CODE}_P-{n}          ← verifies property\n      └── \u002F\u002F @awa-test: {CODE}-{n}_AC-{m}     ← verifies AC\n\nID formats:\n\n- `{CODE}-{n}` — requirement (e.g. `DIFF-1`)\n- `{CODE}-{n}.{p}` — subrequirement (e.g. `DIFF-1.1`)\n- `{CODE}-{n}[.{p}]_AC-{m}` — acceptance criterion (e.g. `DIFF-1_AC-1`)\n- `{CODE}_P-{n}` — correctness property (e.g. `DIFF_P-2`)\n\n## CLI Commands\n\nawa may be installed locally. Detect the package manager and use the appropriate exec command:\n\n    npm\u002Fnpx: npx awa \u003Ccommand>\n    yarn:    yarn exec awa \u003Ccommand>\n    pnpm:    pnpm exec awa \u003Ccommand>\n    bun:     bunx awa \u003Ccommand>\n\n### awa init [output] \u002F awa template generate [output]\n\nGenerate configuration files from templates. `init` is a top-level convenience command equivalent to `awa template generate`.\n\n| Option | Description |\n|--------|-------------|\n| `[output]` | Output directory (positional, optional if set in config) |\n| `-t, --template \u003Csource>` | Template source — local path or Git repo |\n| `-f, --features \u003Cflag...>` | Feature flags (repeatable) |\n| `--preset \u003Cname...>` | Preset names to enable (repeatable) |\n| `--remove-features \u003Cflag...>` | Feature flags to remove (repeatable) |\n| `--force` | Overwrite existing files without prompting |\n| `--dry-run` | Preview changes without modifying files |\n| `--delete` | Enable deletion of files listed in template |\n| `-c, --config \u003Cpath>` | Path to configuration file |\n| `--refresh` | Force re-fetch of cached Git templates |\n| `--all-targets` | Process all named targets from config |\n| `--target \u003Cname>` | Process a specific named target |\n| `--overlay \u003Cpath...>` | Overlay directory paths (repeatable) |\n| `--json` | Output results as JSON (implies --dry-run) |\n| `--summary` | Compact one-line counts summary |\n\n### awa template diff [target]\n\nCompare generated template output against an existing target directory. Exit code 0 = match, 1 = differences.\n\n| Option | Description |\n|--------|-------------|\n| `[target]` | Target directory (positional, optional if set in config) |\n| `-t, --template \u003Csource>` | Template source — local path or Git repo |\n| `-f, --features \u003Cflag...>` | Feature flags (repeatable) |\n| `--preset \u003Cname...>` | Preset names to enable (repeatable) |\n| `--remove-features \u003Cflag...>` | Feature flags to remove (repeatable) |\n| `-c, --config \u003Cpath>` | Path to configuration file |\n| `--refresh` | Force re-fetch of cached Git templates |\n| `--list-unknown` | Include files in target not present in templates |\n| `--all-targets` | Process all named targets from config |\n| `--target \u003Cname>` | Process a specific named target |\n| `-w, --watch` | Watch template directory and re-diff on change |\n| `--overlay \u003Cpath...>` | Overlay directory paths (repeatable) |\n| `--json` | Output results as JSON |\n| `--summary` | Compact one-line counts summary |\n\n### awa check\n\nCheck traceability chain integrity and spec schema conformance. Exit code 0 = clean, 1 = errors.\n\n| Option | Description |\n|--------|-------------|\n| `-c, --config \u003Cpath>` | Path to configuration file |\n| `--spec-ignore \u003Cpattern...>` | Glob patterns to exclude from spec file scanning (repeatable, appends to config) |\n| `--code-ignore \u003Cpattern...>` | Glob patterns to exclude from code file scanning (repeatable, appends to config) |\n| `--json` | Output results as JSON |\n| `--summary` | Compact one-line counts summary |\n| `--allow-warnings` | Allow warnings without failing |\n| `--spec-only` | Run only spec-level checks; skip code-to-spec traceability |\n| `--no-fix` | Skip auto-regeneration of Requirements Traceability sections and Feature Codes table |\n| `--deprecated` | Surface warnings for code markers and cross-references targeting deprecated IDs |\n\nBefore running checks, `awa check` auto-regenerates Requirements Traceability sections in DESIGN and TASK files, and the Feature Codes table in ARCHITECTURE.md. Use `--no-fix` to skip this.\n\nChecks performed: orphaned markers, uncovered ACs, broken cross-refs, invalid ID format, orphaned specs, schema validation. Config-only options: `schema-dir`, `schema-enabled`, `ignore-markers`, `id-pattern`, `cross-ref-patterns`, `extra-spec-globs`, `extra-spec-ignore`.\n\n### awa trace\n\nNavigate the traceability chain and assemble context from specs, code, and tests. Use this to gather focused context before implementing, refactoring, or reviewing.\n\n    awa trace [ids...] [options]\n\n| Option | Description |\n|--------|-------------|\n| `[ids...]` | Traceability ID(s) to trace (e.g. `FEAT-1`, `FEAT-1_AC-2`, `FEAT_P-3`) |\n| `--all` | Trace all known IDs in the project |\n| `--scope \u003Ccode>` | Limit results to a feature code (e.g. `--scope FEAT`) |\n| `--file \u003Cpath>` | Resolve IDs from a source file's markers — useful to understand a file's spec connections before changing it |\n| `--task \u003Cpath>` | Resolve IDs from a task file |\n| `--content` | Output actual file sections instead of locations |\n| `--list` | Output file paths only |\n| `--direction \u003Cdir>` | Traversal direction: `both` (default), `forward`, `reverse` |\n| `--depth \u003Cn>` | Maximum traversal depth |\n| `--no-code` | Exclude source code (spec-only context) |\n| `--no-tests` | Exclude test files |\n| `--json` | Output results as JSON |\n| `--summary` | Compact one-line counts summary |\n| `--max-tokens \u003Cn>` | Cap content output size (implies `--content`) |\n| `-A\u002F-B\u002F-C \u003Cn>` | Lines of context after\u002Fbefore\u002Fboth around a code marker (`--content` only) |\n| `-c, --config \u003Cpath>` | Path to configuration file |\n\n### awa spec renumber [code]\n\nRenumber traceability IDs to match document order, closing gaps in numbering sequences. Exit code 0 = no changes, 1 = changes applied\u002Fpreviewed.\n\n| Option | Description |\n|--------|-------------|\n| `[code]` | Feature code to renumber (e.g. DIFF, TRC) |\n| `--all` | Renumber all feature codes |\n| `--dry-run` | Preview changes without modifying files |\n| `--json` | Output results as JSON |\n| `--expand-unambiguous-ids` | Expand unambiguous malformed ID shorthand before renumbering |\n| `-c, --config \u003Cpath>` | Path to configuration file |\n\nScans all REQ and DESIGN spec files for the given feature code, builds a globally sequential renumber map that closes gaps (e.g. 1, 3, 5 → 1, 2, 3), and propagates all ID changes across every spec file type (ARCHITECTURE.md, FEAT, EXAMPLE, REQ, DESIGN, API, TASK, PLAN, ALIGN), source code, and tests. Detects and reports malformed IDs.\n\nWhen `--expand-unambiguous-ids` is set, unambiguous malformed patterns are expanded before renumbering: slash ranges (`ARC-36_AC-8\u002F9` → `ARC-36_AC-8, ARC-36_AC-9`) and dot-dot AC ranges (`ARC-18_AC-14..16` → `ARC-18_AC-14, ARC-18_AC-15, ARC-18_AC-16`). Ambiguous patterns (letter suffixes, full-ID ranges, trailing periods) remain as warnings only.\n\n### awa spec recode \u003Csource> \u003Ctarget>\n\nRecode traceability IDs from one feature code to another. Rewrites all IDs, renames spec files, and updates headings. Exit code 0 = no changes, 1 = changes applied\u002Fpreviewed.\n\n| Option | Description |\n|--------|-------------|\n| `\u003Csource>` | Source feature code to recode from |\n| `\u003Ctarget>` | Target feature code to recode into |\n| `--dry-run` | Preview changes without modifying files |\n| `--json` | Output results as JSON |\n| `--renumber` | Renumber target code after recode |\n| `-c, --config \u003Cpath>` | Path to configuration file |\n\nBuilds an offset map across all source REQ and DESIGN files so source IDs don't collide with existing target IDs. Use `awa spec merge` if target spec files already exist.\n\n### awa spec merge \u003Csource> \u003Ctarget>\n\nMerge one feature code into another — combines recode, content merge, and cleanup. Exit code 0 = no changes, 1 = changes applied\u002Fpreviewed.\n\n| Option | Description |\n|--------|-------------|\n| `\u003Csource>` | Source feature code to merge from |\n| `\u003Ctarget>` | Target feature code to merge into |\n| `--dry-run` | Preview changes without modifying files |\n| `--json` | Output results as JSON |\n| `--renumber` | Renumber target code after merge |\n| `-c, --config \u003Cpath>` | Path to configuration file |\n\nPipeline: recode source IDs past target's highest → rename\u002Fmove spec files → warn about stale source refs → optionally renumber. Use `merge` when both codes have existing spec files; use `recode` for a pure rename.\n\n### awa spec codes\n\nList all feature codes with requirement counts and scope summaries. Exit code 0 = success.\n\n| Option | Description |\n|--------|-------------|\n| `--json` | Output results as JSON |\n| `--summary` | Compact one-line counts summary |\n| `-c, --config \u003Cpath>` | Path to configuration file |\n\n### awa template test\n\nRun template test fixtures. Exit code 0 = all pass, 1 = failures.\n\n| Option | Description |\n|--------|-------------|\n| `-t, --template \u003Csource>` | Template source — local path or Git repo |\n| `-c, --config \u003Cpath>` | Path to configuration file |\n| `--update-snapshots` | Update stored snapshots with current output |\n| `--refresh` | Force re-fetch of cached Git templates |\n| `--overlay \u003Cpath...>` | Overlay directory paths (repeatable) |\n| `--json` | Output results as JSON |\n| `--summary` | Compact one-line counts summary |\n\nDiscovers `*.toml` fixtures in `_tests\u002F`, renders per fixture, verifies expected files, compares against snapshots.\n\n### awa template features\n\nDiscover feature flags available in a template.\n\n| Option | Description |\n|--------|-------------|\n| `-t, --template \u003Csource>` | Template source — local path or Git repo |\n| `-c, --config \u003Cpath>` | Path to configuration file |\n| `--refresh` | Force re-fetch of cached Git templates |\n| `--overlay \u003Cpath...>` | Overlay directory paths (repeatable) |\n| `--json` | Output results as JSON |\n| `--summary` | Compact one-line counts summary |\n\n### Global Options\n\n`-v, --version` — display version. `-h, --help` — display help.\n\n## Configuration — `.awa.toml`\n\nCreate `.awa.toml` in the project root. CLI arguments always override config values.\n\n    # Root options\n    output = \".github\u002Fagents\"\n    template = \"owner\u002Frepo\"\n    features = [\"copilot\", \"claude\"]\n    overlay = [\".\u002Foverlays\u002Fcompany\", \".\u002Foverlays\u002Fproject\"]\n    refresh = false\n    delete = false\n\n    # Named presets — expand into feature flags\n    [presets]\n    full = [\"copilot\", \"claude\", \"cursor\", \"windsurf\", \"kilocode\", \"opencode\", \"gemini\", \"roo\", \"qwen\", \"codex\", \"agy\", \"agents-md\"]\n    lite = [\"copilot\", \"claude\"]\n\n    # Per-agent targets — generate different configs in one command\n    [targets.claude]\n    output = \".\"\n    features = [\"claude\", \"architect\", \"code\"]\n\n    [targets.copilot]\n    output = \".\"\n    features = [\"copilot\", \"code\", \"vibe\"]\n\n    # Traceability check configuration\n    [check]\n    spec-globs = [\".awa\u002Fspecs\u002F**\u002F*.md\"]\n    code-globs = [\"src\u002F**\u002F*.{ts,js,tsx,jsx}\"]\n    markers = [\"@awa-impl\", \"@awa-test\", \"@awa-component\"]\n    spec-ignore = []\n    code-ignore = [\"node_modules\u002F**\", \"dist\u002F**\", \"vendor\u002F**\", \"target\u002F**\", \"build\u002F**\", \"out\u002F**\", \".awa\u002F**\"]\n    extra-spec-globs = [\".awa\u002F**\u002F*\"]        # additional spec globs for schema validation\n    extra-spec-ignore = [\".awa\u002F.agent\u002F**\"]  # patterns to exclude from extra spec scanning\n    ignore-markers = []\n    id-pattern = \"...\"                      # regex for valid traceability IDs\n    cross-ref-patterns = [\"IMPLEMENTS:\", \"VALIDATES:\"]\n    format = \"text\"\n    schema-dir = \".awa\u002F.agent\u002Fschemas\"\n    schema-enabled = true\n    allow-warnings = false\n    spec-only = false\n\n    # Update check configuration\n    [update-check]\n    enabled = true        # set to false to disable update checks\n    interval = 86400      # seconds between checks (default: 1 day)\n\nTarget fields: `output`, `template`, `features`, `preset`, `remove-features`. Boolean flags (`force`, `dry-run`, `delete`, `refresh`) apply globally. Target features replace root features entirely.\n\nFeature resolution order: start with `--features`, expand `--preset` (append, deduplicate), remove `--remove-features`.\n\nMulti-target usage:\n\n    awa template generate --all-targets           # process all targets\n    awa template generate --target claude        # process one target\n    awa template diff --all-targets              # diff all targets\n\n## Template Sources\n\nTemplates can be a local path or a Git repository:\n\n- Local path: `.\u002Ftemplates\u002Fawa`\n- GitHub shorthand: `owner\u002Frepo`\n- Full URL: `https:\u002F\u002Fgithub.com\u002Fowner\u002Frepo`\n- SSH: `git@github.com:owner\u002Frepo`\n- With subdirectory: `owner\u002Frepo\u002Fpath\u002Fto\u002Ftemplates`\n- With ref: `owner\u002Frepo#branch`, `owner\u002Frepo#v1.0.0`\n\nGit templates are cached in `~\u002F.cache\u002Fawa\u002Ftemplates\u002F`. Use `--refresh` to re-fetch.\n\n## Exit Codes\n\n| Command | 0 | 1 | 2 |\n|---------|---|---|---|\n| `awa init` \u002F `awa template generate` | Success | — | Internal error |\n| `awa template diff` | All files match | Differences found | Internal error |\n| `awa check` | All checks pass | Errors found | Internal error |\n| `awa template test` | All fixtures pass | Failures found | Internal error |\n| `awa template features` | Success | Error | — |\n| `awa trace` | Chain found | ID not found \u002F no context | Internal error |\n| `awa spec renumber` | No changes needed | Changes applied\u002Fpreviewed | Internal error |\n| `awa spec recode` | No changes needed | Changes applied\u002Fpreviewed | Error \u002F stale refs |\n| `awa spec merge` | No changes needed | Changes applied\u002Fpreviewed | Error \u002F stale refs |\n| `awa spec codes` | Success | — | Internal error |\n",{"name":5,"description":7},"main","bea98700680b1eafbad3f739117ef66e30c4b9ae",".github\u002Fskills\u002Fawa-usage",0,"https:\u002F\u002Fgithub.com\u002Fncoderz\u002Fawa","https:\u002F\u002Fgithub.com\u002Fncoderz","https:\u002F\u002Fncoderz.com","2026-08-13 06:47:47",{"source":8,"skillName":5,"commands":37,"prompt":47,"zipAvailable":48},[38,41,44],{"tool":39,"command":40},"npx","npx skills add ncoderz\u002Fawa --skill awa-usage",{"tool":42,"command":43},"bunx","bunx skills add ncoderz\u002Fawa --skill awa-usage",{"tool":45,"command":46},"pnpm","pnpm dlx skills add ncoderz\u002Fawa --skill awa-usage","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fncoderz\u002Fawa\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fawa-usage\u002FSKILL.md",true,[50,56,60],{"path":51,"resourceType":52,"resourceTypeDesc":53,"sizeBytes":54,"sourceHtmlUrl":55},"manifest.json","REFERENCE","参考文档",198,"https:\u002F\u002Fgithub.com\u002Fmanagedcode\u002Fdotnet-skills\u002Fblob\u002Fmain\u002Fcatalog\u002FTesting\u002FNUnit\u002Fskills\u002Fnunit\u002Fmanifest.json",{"path":57,"resourceType":52,"resourceTypeDesc":53,"sizeBytes":58,"sourceHtmlUrl":59},"references\u002Fanti-patterns.md",10407,"https:\u002F\u002Fgithub.com\u002Fmanagedcode\u002Fdotnet-skills\u002Fblob\u002Fmain\u002Fcatalog\u002FTesting\u002FNUnit\u002Fskills\u002Fnunit\u002Freferences\u002Fanti-patterns.md",{"path":61,"resourceType":52,"resourceTypeDesc":53,"sizeBytes":62,"sourceHtmlUrl":63},"references\u002Fpatterns.md",8369,"https:\u002F\u002Fgithub.com\u002Fmanagedcode\u002Fdotnet-skills\u002Fblob\u002Fmain\u002Fcatalog\u002FTesting\u002FNUnit\u002Fskills\u002Fnunit\u002Freferences\u002Fpatterns.md",[65,80,85,98,112,122],{"skillNo":66,"name":67,"nameZh":6,"description":68,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":69,"categories":70,"keywords":71,"publishedAt":23},"01M6C4ZTJ9714M6WEBACQTV8ED","awa-vibe","Implement an idea from start to finish using the full awa workflow. Use this when asked to take an idea through the complete development cycle.","https:\u002F\u002Fgithub.com\u002Fncoderz\u002Fawa\u002Fblob\u002Fmain\u002Ftemplates\u002Fawa\u002F_tests\u002Fcopilot\u002F.github\u002Fskills\u002Fawa-vibe\u002FSKILL.md",[],[72,73,22,74,75,76,77,78,79],"awa vibe","vibe","start","development","workflow","implement","finish","take",{"skillNo":81,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":82,"categories":83,"keywords":84,"publishedAt":23},"01M6C4ZQZR114ABJE8HP0S0BDJ","https:\u002F\u002Fgithub.com\u002Fncoderz\u002Fawa\u002Fblob\u002Fmain\u002Ftemplates\u002Fawa\u002F_tests\u002Fcopilot\u002F.github\u002Fskills\u002Fawa-usage\u002FSKILL.md",[],[18,22,21,20,19],{"skillNo":86,"name":87,"nameZh":6,"description":88,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":89,"categories":90,"keywords":91,"publishedAt":23},"01M6C4ZPBC19QXDJ09KW3Z18QR","awa-upgrade","Upgrade specs to match current schemas. Use this when asked to upgrade, migrate, or update specification documents to conform to schema changes.","https:\u002F\u002Fgithub.com\u002Fncoderz\u002Fawa\u002Fblob\u002Fmain\u002Ftemplates\u002Fawa\u002F_tests\u002Fcopilot\u002F.github\u002Fskills\u002Fawa-upgrade\u002FSKILL.md",[],[92,93,22,94,95,96,97],"awa upgrade","schema","migrate","update specification","update","documents",{"skillNo":99,"name":100,"nameZh":6,"description":101,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":102,"categories":103,"keywords":104,"publishedAt":23},"01M6C4ZM0E11A21P1ZQPDNSS9J","awa-tasks","Create or update task list documents. Use this when asked to create tasks, generate implementation steps, or break down requirements and designs into work items.","https:\u002F\u002Fgithub.com\u002Fncoderz\u002Fawa\u002Fblob\u002Fmain\u002Ftemplates\u002Fawa\u002F_tests\u002Fcopilot\u002F.github\u002Fskills\u002Fawa-tasks\u002FSKILL.md",[],[105,106,22,107,108,109,96,110,111,97],"awa tasks","tasks","list","work","create tasks","generate","create",{"skillNo":113,"name":114,"nameZh":6,"description":115,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":116,"categories":117,"keywords":118,"publishedAt":23},"01M6C4ZJKZ7VHHX22G1WX6Z6HD","awa-spec-tidy","Tidy and reorganise the specifications logically. Use this when asked to tidy or reorganise the specifications.","https:\u002F\u002Fgithub.com\u002Fncoderz\u002Fawa\u002Fblob\u002Fmain\u002Ftemplates\u002Fawa\u002F_tests\u002Fcopilot\u002F.github\u002Fskills\u002Fawa-spec-tidy\u002FSKILL.md",[],[119,120,121,22],"spec","awa spec tidy","tidy",{"skillNo":123,"name":124,"nameZh":6,"description":125,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":126,"categories":127,"keywords":128,"publishedAt":23},"01M6C4ZH1RWPRW21G4RBWTX73M","awa-spec-merge","Merge two feature codes into one. Use this when asked to combine, merge, or consolidate feature codes.","https:\u002F\u002Fgithub.com\u002Fncoderz\u002Fawa\u002Fblob\u002Fmain\u002Ftemplates\u002Fawa\u002F_tests\u002Fcopilot\u002F.github\u002Fskills\u002Fawa-spec-merge\u002FSKILL.md",[],[129,119,130,22],"merge","awa spec merge"]