Metadata-Version: 2.5
Name: eawf
Version: 0.7.0.dev1
Summary: Eä Workflow — agent-driven development framework
Project-URL: Homepage, https://github.com/Elementarno9/eawf
Project-URL: Repository, https://github.com/Elementarno9/eawf
Project-URL: Documentation, https://github.com/Elementarno9/eawf/tree/main/docs
Project-URL: Issues, https://github.com/Elementarno9/eawf/issues
Project-URL: Changelog, https://github.com/Elementarno9/eawf/blob/main/CHANGELOG.md
Author-email: Elementarno9 <edwardpro9@gmail.com>
License: MIT
License-File: LICENSE
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Software Development :: Build Tools
Classifier: Typing :: Typed
Requires-Python: >=3.14
Requires-Dist: click<8.4,>=8.1
Requires-Dist: jinja2>=3.1.0
Requires-Dist: orjson>=3.11.9
Requires-Dist: portalocker>=3.2.0
Requires-Dist: pydantic>=2.13.4
Requires-Dist: pyyaml>=6.0.3
Requires-Dist: questionary>=2.1.1
Requires-Dist: rich>=15.0.0
Requires-Dist: textual>=8.0
Requires-Dist: typer<0.26,>=0.25.1
Provides-Extra: docs
Requires-Dist: mkdocs-material>=9.5; extra == 'docs'
Requires-Dist: mkdocs>=1.6; extra == 'docs'
Provides-Extra: windows
Requires-Dist: pywin32>=306; extra == 'windows'
Description-Content-Type: text/markdown

# eawf — Eä Workflow

State-first, agent-driven development framework. Parallel waves, strict schema, Claude Code adapter.

## Install

Requires Python 3.14 or newer and `uv`.

```bash
# one-off, leaves no command behind
uvx eawf --version

# persistent tool install
uv tool install eawf

# from a local checkout (contributors)
git clone <repo-url> eawf && cd eawf && uv sync

# Windows only: pulls the named-pipe daemon transport
uv tool install "eawf[windows]"
```

Full requirements, extras, and verification steps: [install guide](docs/tutorial/install.md).

## Quickstart

Run these from the root of any Git repository. Each command exits `0` on a clean bootstrap, and a test replays this exact block in a fresh temporary repository so the block cannot drift away from the CLI:

<!-- eawf:quickstart -->

```bash
eawf init --quick
eawf phase open --auto --title "Bootstrap the first tracked delivery"
eawf status
```

`eawf init --quick` is the non-interactive path: it detects profiles, infers the project code from the directory name, writes the managed `.gitignore` block, and renders the runtime plugin tree. Drop `--quick` for the interactive wizard, or script it explicitly with `eawf --no-input init --project-code DEMO`.

Then take the repository through one full unit of work: [first workflow](docs/tutorial/first-workflow.md).

## Support

| Platform | CI runner | What CI runs there |
| --- | --- | --- |
| Linux | `ubuntu-24.04` | full test suite on a real host |
| macOS | `macos-26` | full test suite on a real host |
| Windows | `windows-latest` | named-pipe transport, packaging, and CLI smoke |

Python: `>=3.14`, and CI pins `3.14`. The floor is declared once as `requires-python` in `pyproject.toml`; the published wheel's classifiers and this table are asserted against it and against the CI matrix by `tests/integration/test_packaging.py`.

## Workflow

```text
research → plan → execute (parallel waves) → cherry-pick → ship phase
```

Use slash commands `/research`, `/prep`, `/audit`, `/ship`, `/review`, `/polish`, or `/flow` to drive the lifecycle.

## What gets committed

- `.ea/state.json` — canonical project ledger. The **eawfd daemon** is the sole canonical mutator; the `eawf` state CLI proxies mutations to it over JSON-RPC and falls back to a direct `portalocker` write only when the daemon is unavailable (CI, one-shot, recovery). Read access is free.
- `AGENTS.md` — agent contract, regenerated by `eawf sync` with the user region preserved on re-render.

The Claude Code plugin tree (`.claude/` and `CLAUDE.md`) and any user-local files stay gitignored — they are machine-specific renders, not committed assets. Re-render anytime via `eawf plugin install claude`.

## Docs

Start at the front door: [install](docs/tutorial/install.md) → [quickstart](docs/tutorial/quickstart.md) → [first workflow](docs/tutorial/first-workflow.md).

For the design intent behind it, read the [source map](docs/architecture/source-map.md) for a one-line-per-package index of `src/eawf/`, then the [architecture overview](docs/architecture/overview.md). The [docs index](docs/README.md) lists everything else.

## Contributing

See [CONTRIBUTING.md](CONTRIBUTING.md) for local development setup, harness plugin setup, and verification commands.

## License

MIT — see `LICENSE`.
