Skip to main content

Eä Workflow — agent-driven development framework

Project description

eawf — Eä Workflow

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

Install

git clone <repo> && cd eawf && uv sync
# or, install as a tool from the local checkout:
uv tool install --from . eawf

Quickstart (new project)

cd /path/to/your/repo
eawf init                            # interactive wizard
eawf plugin install claude           # render local .claude/ skills/agents/hooks
eawf phase open --auto --title "Bootstrap"

Workflow

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; user region preserved on re-render).

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

Suggested setup (Claude Code users)

Pick one mode — running both at once makes Claude Code see every skill / agent / hook twice (CC dedups by name; active body is undefined). eawf plugin install claude detects an existing marketplace install under ~/.claude/plugins/ and prompts before proceeding; pass --force to acknowledge a duplicate render.

Project-local mode (renders into the working repo; ideal when dogfooding eawf or working only on one project):

eawf plugin install claude    # render local skills/agents/hooks
eawf doctor                   # readiness checks
eawf plugin doctor claude     # local drift check

Marketplace mode (portable install, ideal when using eawf across many repos; emits the skills + agents + six session-level hooks SessionStart / Stop / Pre/PostToolUse filtered to bash git commit/git push):

eawf plugin package claude --target ./build/eawf-plugin

Then in Claude Code:

/plugin marketplace add ./build/eawf-plugin
/plugin install eawf@eawf-local

Other harnesses

eawf plugin install also supports two non-Claude harnesses; no package step is needed because neither has a marketplace concept — the renderer writes directly into the workspace root:

eawf plugin install codex      # writes .codex/{skills,agents,hooks}/ + config.toml
eawf plugin install opencode   # writes opencode.json (managed block) + plugin.js
eawf plugin doctor codex       # codex drift check
eawf plugin doctor opencode    # opencode drift check

plugin update is currently Claude-only; codex / opencode update support ships in v0.4.

Verify

uv run pytest
uv run pre-commit run --all-files
uv run mypy src/

Docs

See docs/ — architecture, CLI surface, schemas, policy. Start with the source map for a one-line-per-package index of src/eawf/, then the architecture overview.

License

MIT — see LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

eawf-0.3.0.tar.gz (3.0 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

eawf-0.3.0-py3-none-any.whl (1.5 MB view details)

Uploaded Python 3

File details

Details for the file eawf-0.3.0.tar.gz.

File metadata

  • Download URL: eawf-0.3.0.tar.gz
  • Upload date:
  • Size: 3.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for eawf-0.3.0.tar.gz
Algorithm Hash digest
SHA256 331ee90691aae2178131e98a3534ae72991a114953267665a328360f6e79f6e2
MD5 bf2fe9865bc9f45d11d2847e39282666
BLAKE2b-256 9b6cf20e0a20df7eae59b0f71e5e7775a3b08b55ac278efe91ccf4cfd2dd1219

See more details on using hashes here.

Provenance

The following attestation bundles were made for eawf-0.3.0.tar.gz:

Publisher: release.yaml on Elementarno9/eawf

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file eawf-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: eawf-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 1.5 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for eawf-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 eb8badb5781174c88a4e91a6c58d00604a9e439652f912a8e7c0bc88b02a31fc
MD5 2148813e2b04e4b551402497fa9065fc
BLAKE2b-256 c01eb77bf1b2b16107e400197de345b28f3ca851e8256887092aabdc086b090a

See more details on using hashes here.

Provenance

The following attestation bundles were made for eawf-0.3.0-py3-none-any.whl:

Publisher: release.yaml on Elementarno9/eawf

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page