Skip to main content

Local ECC environment assembler with a Web UI and CLI

Project description

ECC Manager

ECC Manager logo

CI PyPI MIT License

English | 简体中文

English

ECC Manager is a local ECC environment assembler with a Web UI and CLI. It reads commands, skills, agents, rules, runtime files, and profile metadata from ECC_HOME, then assembles the right capabilities into a project for Claude Code, Codex, and Google Antigravity.

It is designed for local-first agent workflows: preview what will be written, apply only managed files or symlinks, keep a project lock, and run Doctor checks when the project or ECC source changes.

Features

  • Local Web UI bound to 127.0.0.1 by default.
  • Profile-based assembly: phase + architecture + stack fragment + pack.
  • Preview-before-apply flow for symlinks, generated files, optional dependencies, and target conflicts.
  • Optional targets for Claude Code, Codex, and Google Antigravity.
  • Doctor checks for missing sources, broken symlinks, generated files, legacy artifacts, and command readiness.
  • Bilingual Web UI for English and Simplified Chinese.

Install

Install from PyPI after the first release is published:

python3 -m pip install ecc-manager

Install from GitHub:

git clone https://github.com/KylePowell-LABS/ecc-manager.git
cd ecc-manager
python3 -m pip install .

Run without installing:

python3 -m ecc_manager.server

Create local wrapper commands:

bash scripts/install-local.sh

This creates:

~/.local/bin/ecc-use
~/.local/bin/ecc-manager

Make sure ~/.local/bin is on your PATH.

Quick Start

Start the Web UI:

ecc-manager

The default URL is:

http://127.0.0.1:8765

If the port is busy, ECC Manager tries the next available port. To start without opening a browser:

ecc-manager --no-open

To choose a port:

ecc-manager --port 8770

CLI examples:

ecc-use list
ecc-use doctor --project /path/to/project
ecc-use init ph-init arch-web-saas-next-postgres --project /path/to/project --dry-run

Configuration

Default paths:

ECC_HOME=~/everything-claude-code
PROFILE_HOME=~/.ecc-manager/profiles

You can change these paths in the Web UI Settings page or with environment variables:

ECC_HOME=/path/to/ecc-source PROFILE_HOME=/path/to/ecc-profiles ecc-manager

ECC_HOME should contain:

commands/
skills/
agents/
rules/

ECC Manager also reads optional ECC metadata when present:

VERSION
manifests/install-profiles.json
manifests/install-modules.json
manifests/install-components.json
config/project-stack-mappings.json
docs/COMMAND-REGISTRY.json

The currently tested ECC compatibility version is 2.0.0-rc.1. Other versions can still be scanned, but Doctor and profile health should be reviewed before applying changes.

Tool Targets

Claude Code is enabled by default. Codex and Antigravity are optional and must be enabled in Settings before ECC Manager generates their project files.

Managed targets can include:

.claude/
CLAUDE.ecc.generated.md
AGENTS.md
AGENTS.ecc.generated.md
ANTIGRAVITY.ecc.generated.md
.agents/skills/
.agents/agents.md
.codex/agents/
.codex/rules/
.agents/rules/
.agents/workflows/

AGENTS.md is used as the project instruction entrypoint for Codex and Antigravity. ECC Manager only updates managed blocks marked with ecc-manager; existing user content is preserved.

Safety

ECC Manager is a local tool. The Web UI binds to 127.0.0.1 by default, and write endpoints require a local session token. The server regenerates plans before applying them so browser-side mutations cannot change symlink targets.

Avoid exposing the server with --host 0.0.0.0 unless you understand the local network risk.

Development

Run tests:

python3 -m unittest

Build the package:

python3 -m build

See CONTRIBUTING.md for contribution guidelines and docs/USER_GUIDE.md for the detailed Chinese user guide.

License

MIT. See LICENSE.

简体中文

ECC Manager 是一个本地 ECC 环境装配器。它把 ECC_HOME 里的 commandsskillsagentsrulesphase + architecture + tech-stack fragment + pack 组合,装配到当前项目的 Claude Code、Codex 和 Antigravity 本地配置里。

第一次使用建议先看完整教程:ECC Manager 使用文档

它默认启动一个只监听本机的 Web UI,并自动打开浏览器:

ecc-manager

默认地址是:

http://127.0.0.1:8765

如果端口被占用,会自动尝试后续端口。

安装

从 PyPI 安装:

python3 -m pip install ecc-manager

从 GitHub clone 后安装为本机命令:

git clone https://github.com/KylePowell-LABS/ecc-manager.git
cd ecc-manager
python3 -m pip install .

也可以不安装,直接在仓库里运行:

python3 -m ecc_manager.server

如果只想创建本地 wrapper:

bash scripts/install-local.sh

会创建:

~/.local/bin/ecc-use
~/.local/bin/ecc-manager

请确认 ~/.local/bin 已加入 PATH

配置

默认路径:

ECC_HOME=~/everything-claude-code
PROFILE_HOME=~/.ecc-manager/profiles

首次打开 Web UI 后,可以在“设置”里选择自己的 ECC_HOMEPROFILE_HOME。也可以用环境变量覆盖:

ECC_HOME=/path/to/ecc-source PROFILE_HOME=/path/to/ecc-profiles ecc-manager

ECC_HOME 需要包含:

commands/
skills/
agents/
rules/

ECC Manager 会优先读取 ECC 仓库里的官方元数据:

VERSION
manifests/install-profiles.json
manifests/install-modules.json
manifests/install-components.json
config/project-stack-mappings.json
docs/COMMAND-REGISTRY.json

当前测试兼容的 ECC 版本是 2.0.0-rc.1。如果用户的 ECC 版本不同,Web UI 和 Doctor 会提示兼容状态;仍可扫描本地资产,但建议先检查 profile health 和缺失引用后再执行装配。

使用目标选择

默认只生成 Claude Code 需要的 .claude/ symlink、CLAUDE.ecc.generated.md 和项目 lock。Codex 和 Antigravity 是可选目标,需要用户在 Web UI 的“设置”里打开后才会生成对应文件。

可选目标适用于 Codex 桌面端、Codex CLI、Codex IDE 扩展,以及 Google Antigravity:

AGENTS.md
AGENTS.ecc.generated.md
ANTIGRAVITY.ecc.generated.md
.agents/skills/
.agents/agents.md
.codex/agents/
.codex/rules/
.agents/rules/
.agents/workflows/

AGENTS.md 是 Codex 和 Antigravity 会读取的项目指令入口。ECC Manager 只维护带 ecc-manager 标记的托管区;用户已有内容会保留。启用 Codex 后,ECC skills 会链接或适配到 .agents/skills/,ECC agents 会转换成 Codex custom agent TOML 放到 .codex/agents/

Codex 没有 Claude Code 的自定义 slash command 文件加载机制,所以 ECC commands 会适配成 repo-scoped skills,并以命令索引写入 AGENTS 托管区。用户在 Codex 里说 /review-pr/python-review 这类 ECC 命令时,Codex 会按对应的 .agents/skills/ecc-* command skill 执行。

启用 Antigravity 后,ECC Manager 会把 ECC agents 聚合到 .agents/agents.md,把 ECC skills 链接或适配到 .agents/skills/,把 ECC rules 适配到 .agents/rules/,把 ECC commands 转成 .agents/workflows/ 下的 workflow Markdown。.agent/workflows/ 仅作为旧版残留被 Doctor 识别和提示,不再作为新生成目标。

使用

Web UI:

ecc-manager

不自动打开浏览器:

ecc-manager --no-open

指定端口:

ecc-manager --port 8770

命令行:

ecc-use list
ecc-use doctor --project /path/to/project
ecc-use init ph-init arch-web-saas-next-postgres --project /path/to/project --dry-run

安全说明

ECC Manager 是本地工具,默认只绑定 127.0.0.1。Web UI 的写入接口带有本地会话 token,并且执行时会在服务端重新生成计划,避免浏览器端篡改 symlink 目标。

不建议把 --host 设置成 0.0.0.0 暴露给局域网或公网。

开发

运行测试:

python3 -m unittest

构建包:

python3 -m build

贡献说明见 CONTRIBUTING.md,安全报告说明见 SECURITY.md

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

ecc_manager-0.1.0.tar.gz (124.9 kB view details)

Uploaded Source

Built Distribution

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

ecc_manager-0.1.0-py3-none-any.whl (112.9 kB view details)

Uploaded Python 3

File details

Details for the file ecc_manager-0.1.0.tar.gz.

File metadata

  • Download URL: ecc_manager-0.1.0.tar.gz
  • Upload date:
  • Size: 124.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ecc_manager-0.1.0.tar.gz
Algorithm Hash digest
SHA256 75120bd895c086987191240a818c248cf10693d6cd03bcbd1288452c4f62c493
MD5 ba301fbb915758ffcca6dadf05b45a57
BLAKE2b-256 8a167f612aa4de8187efb5cb910abcb93d040ce62f2ca9abcdec3f22c884e944

See more details on using hashes here.

Provenance

The following attestation bundles were made for ecc_manager-0.1.0.tar.gz:

Publisher: publish.yml on KylePowell-LABS/ecc-manager

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

File details

Details for the file ecc_manager-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: ecc_manager-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 112.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ecc_manager-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0cec6d9fa203c01d579e3183675507a35915da9c310fde355fbae0d1c3e0d366
MD5 cd9a248829dd1dc0691c32c5386462bf
BLAKE2b-256 3bcd07eba3c8aa8631a08c8e10fcbde7c6b80c5f4bd5d38bc33142b9c861f29d

See more details on using hashes here.

Provenance

The following attestation bundles were made for ecc_manager-0.1.0-py3-none-any.whl:

Publisher: publish.yml on KylePowell-LABS/ecc-manager

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