Metadata-Version: 2.4
Name: eforge
Version: 1.0.1
Summary: Renderer-agnostic project runtime and manifest interpreter for the Forge ecosystem
Author-email: Forge Team <forge@example.com>
Maintainer-email: Forge Team <forge@example.com>
License: MIT
Project-URL: Homepage, https://github.com/forge-org/forge
Project-URL: Documentation, https://github.com/forge-org/forge#readme
Project-URL: Repository, https://github.com/forge-org/forge.git
Project-URL: Bug Tracker, https://github.com/forge-org/forge/issues
Project-URL: Changelog, https://github.com/forge-org/forge/blob/main/CHANGELOG.md
Keywords: project-management,manifest,mcp,development-tools,cli
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: System :: Systems Administration
Classifier: Topic :: Utilities
Requires-Python: >=3.11
Description-Content-Type: text/markdown
Requires-Dist: click>=8.1
Requires-Dist: pyyaml>=6.0
Requires-Dist: ruamel.yaml>=0.18.0
Requires-Dist: rich>=13.0
Requires-Dist: httpx>=0.27.0
Requires-Dist: mcp>=1.0.0
Requires-Dist: numpy>=1.26.0
Provides-Extra: board
Requires-Dist: fastapi>=0.110.0; extra == "board"
Requires-Dist: starlette<0.49.0,>=0.40.0; extra == "board"
Requires-Dist: uvicorn[standard]>=0.29.0; extra == "board"
Requires-Dist: websockets>=12.0; extra == "board"
Provides-Extra: fs-glove
Requires-Dist: fastmcp>=2.0; extra == "fs-glove"
Provides-Extra: tui
Requires-Dist: textual>=0.50.0; extra == "tui"
Provides-Extra: all
Requires-Dist: eforge[board,fs-glove,tui]; extra == "all"
Provides-Extra: dev
Requires-Dist: pytest>=7.0; extra == "dev"
Requires-Dist: pytest-asyncio; extra == "dev"


## Quickstart

```bash
# Initialize a project
forge init

# Understand your project
forge orient

# Find undeclared files
forge discover

# Check structural health
forge verify

# Inspect a node
forge inspect <node_id>
```

## What it does

eforge maintains a declaration graph of your codebase: every module, screen, controller, service, and component — declared, typed, and connected. When you change something, forge tells you what breaks, what it affects, and why.

```
forge orient --project-path ~/Projects/my-app

  ✦ eforge orient — my-app

  stack    : flutter-app
  phase    : 1
  health   : ✓ clean
  nodes    : 297
  domains  : AUTH, CANVAS, CORE, GAME, LOBBY (+4)

  Health scores:
    ADI  100%  implementation coverage
    BRC  100%  blast radius coverage
    IDR   14%  intent declaration rate

  Next:
    forge discover   — find undeclared files
    forge verify     — check structural parity
    forge inspect <node> — inspect a node
```

## Works with your AI tools

eforge runs as an MCP server, giving Claude and Cursor direct access to your project graph:

```bash
forge mcp
```

Add to your MCP config and your AI agent can call:

- `forge_orient` — understand the project
- `forge_inspect` — inspect any node
- `forge_blast_radius` — see what a change affects
- `forge_verify` — check structural health
- `forge_annotate` — add architectural notes

## Multi-stack

eforge understands Flutter, Python, Astro, React, and TypeScript projects out of the box. Stack-specific behavior is handled by gloves — pluggable parsers that translate your stack into forge primitives.

## Health scores

|Score|Meaning|
|---|---|
|ADI|Implementation coverage — declared nodes with real paths|
|BRC|Blast radius coverage — nodes with edge connectivity|
|IDR|Intent declaration rate — nodes with purpose documented|

## Requirements

- Python 3.12+
- Works with any codebase

## License

MIT ENDOFREADME

git add README.md git commit -m "docs: rewrite README — accurate install, quickstart, orient demo, MCP section" git push origin main
