| 1 | <div align="center"> |
| 2 | |
| 3 | <img src="assets/logo-cli.png" width="260" alt="Anws"> |
| 4 | |
| 5 | [](https://opensource.org/licenses/MIT) |
| 6 | [](https://github.com/Haaaiawd/ANWS/releases) |
| 7 | [](https://github.com/Haaaiawd/ANWS) |
| 8 | |
| 9 | [English](./README.md) | [中文](./README_CN.md) |
| 10 | |
| 11 | </div> |
| 12 | |
| 13 | --- |
| 14 | |
| 15 | # Anws |
| 16 | |
| 17 | **Anws** is a spec-driven workflow framework for AI-assisted development across modern AI IDEs and coding tools. |
| 18 | |
| 19 | It helps teams build production-ready software through a disciplined path: |
| 20 | |
| 21 | `PRD -> Architecture -> ADR -> Tasks -> Review -> Code -> Upgrade` |
| 22 | |
| 23 | Anws enforces design-first principles, preserves context in files, and prevents architectural drift across multi-tool AI coding workflows. |
| 24 | |
| 25 | > **TL;DR**: a design-first workflow framework for AI coding tools that turns vibe coding into production-oriented engineering. |
| 26 | |
| 27 | ## ANWS |
| 28 | |
| 29 | - **Axiom** — principle before implementation |
| 30 | - **Nexus** — connection before fragmentation |
| 31 | - **Weave** — coherence before accumulation |
| 32 | - **Sovereignty** — human judgment before automation |
| 33 | |
| 34 | --- |
| 35 | |
| 36 | ## Why Anws Exists |
| 37 | |
| 38 | Many so-called spec systems are good at one thing: generating documents up front. That is not the hard part. The hard part is keeping implementation, verification, review, and upgrades aligned with those documents after the initial planning pass. |
| 39 | |
| 40 | That is where AI coding usually breaks down: |
| 41 | |
| 42 | - docs and code drift apart until nobody is sure which one is the real source of truth |
| 43 | - a new session loses context and starts guessing about boundaries, trade-offs, and task state |
| 44 | - code starts before requirements and interfaces are stable, so rework becomes inevitable |
| 45 | - automation increases speed, but review discipline and evidence quality quietly drop |
| 46 | - template upgrades become risky because existing projects cannot absorb new rules cleanly |
| 47 | |
| 48 | Anws is not just a system for writing specs. It is a framework for keeping **design, execution, verification, review, and upgrade** tied together. |
| 49 | |
| 50 | - **Documents are operating state, not attachments** |
| 51 | - PRD, Architecture, ADR, System Design, `05A_TASKS.md`, `05B_VERIFICATION_PLAN.md`, and `AGENTS.md` are part of the workflow runtime, not disposable planning notes. |
| 52 | - **Highly documented, but for control rather than ceremony** |
| 53 | - Design, task, and verification are separated on purpose so task ownership, validation responsibility, and evidence output stay traceable. |
| 54 | - **Automation stays fast without becoming sloppy** |
| 55 | - `/forge AUTO` speeds delivery up, but it does not bypass challenge pressure, code review, validation gates, or evidence closure. |
| 56 | - **It orchestrates verification, not only implementation** |
| 57 | - `05A` owns execution flow and `05B` owns verification planning. E2E, for example, is declared as a trigger assumption during planning and executed later in `/forge`, instead of being hand-waved as “already tested.” |
| 58 | - **Upgrades are controlled, not overwrite-driven** |
| 59 | - Templates, projections, and `AGENTS.md` have explicit update semantics, so existing projects can evolve without being effectively reinstalled from scratch. |
| 60 | |
| 61 | --- |
| 62 | |
| 63 | ## Quick Start |
| 64 | |
| 65 | ### Install via npm |
| 66 | |
| 67 | ```bash |
| 68 | npm install -g @haaaiawd/anws |
| 69 | cd your-project |
| 70 | anws init |
| 71 | ``` |
| 72 | |
| 73 | - **Requirement** |
| 74 | - Node.js `>= 18` |
| 75 | - **Install behavior** |
| 76 | - `anws init` installs one or more target projections into their native folders |
| 77 | - example: `anws init --target windsurf,opencode` |
| 78 | |
| 79 | ### Update an Existing Project |
| 80 | |
| 81 | ```bash |
| 82 | cd your-project |
| 83 | anws update |
| 84 | ``` |
| 85 | |
| 86 | - **Update flags** |
| 87 | - `anws update --check` and `anws update --target` are removed; run `anws update` once to refresh all matched targets |
| 88 | - **State source** |
| 89 | - `anws update` reads `.anws/install-lock.json` |
| 90 | - if the lock is missing or invalid, it falls back to directory scan |