mirror of
https://github.com/affaan-m/ECC.git
synced 2026-10-26 18:35:05 +00:00
merge: preserve tested token card source 3039 and synchronize catalog
This commit is contained in:
16 files changed
+192
-27
No files matched your search
@@ -11,7 +11,7 @@
|
||||
{
|
||||
"name": "ecc",
|
||||
"source": "./",
|
||||
"description": "Harness-native ECC operator layer - 69 agents, 295 skills, 94 legacy command shims, reusable hooks, rules, selective install profiles, and production-ready workflows for Claude Code, Codex, OpenCode, Cursor, and related agent harnesses",
|
||||
"description": "Harness-native ECC operator layer - 70 agents, 299 skills, 95 legacy command shims, reusable hooks, rules, selective install profiles, and production-ready workflows for Claude Code, Codex, OpenCode, Cursor, and related agent harnesses",
|
||||
"version": "2.2.3",
|
||||
"author": {
|
||||
"name": "Affaan Mustafa",
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "ecc",
|
||||
"version": "2.2.3",
|
||||
"description": "Harness-native ECC plugin for engineering teams - 69 agents, 295 skills, 94 legacy command shims, reusable hooks, rules, MCP conventions, and operator workflows for Claude Code plus adjacent agent harnesses",
|
||||
"description": "Harness-native ECC plugin for engineering teams - 70 agents, 299 skills, 95 legacy command shims, reusable hooks, rules, MCP conventions, and operator workflows for Claude Code plus adjacent agent harnesses",
|
||||
"author": {
|
||||
"name": "Affaan Mustafa",
|
||||
"url": "https://x.com/affaanmustafa"
|
||||
|
||||
+1
-1
@@ -4,7 +4,7 @@ This file provides Gemini CLI with the baseline ECC workflow, review standards,
|
||||
|
||||
## Overview
|
||||
|
||||
ECC is a cross-harness coding system with 69 specialized agents, 295 skills, and 94 commands.
|
||||
ECC is a cross-harness coding system with 70 specialized agents, 299 skills, and 95 commands.
|
||||
|
||||
Gemini support is currently focused on a strong project-local instruction layer via `.gemini/GEMINI.md`, plus the shared MCP catalog and package-manager setup assets shipped by the installer.
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# ECC — Agent Instructions
|
||||
|
||||
This is a **production-ready AI coding plugin** providing 69 specialized agents, 295 skills, 94 commands, and automated hook workflows for software development.
|
||||
This is a **production-ready AI coding plugin** providing 70 specialized agents, 299 skills, 95 commands, and automated hook workflows for software development.
|
||||
|
||||
**Version:** 2.2.3
|
||||
|
||||
@@ -201,9 +201,9 @@ Troubleshoot failures: check test isolation → verify mocks → fix implementat
|
||||
## Project Structure
|
||||
|
||||
```
|
||||
agents/ — 69 specialized subagents
|
||||
skills/ — 295 workflow skills and domain knowledge
|
||||
commands/ — 94 slash commands
|
||||
agents/ — 70 specialized subagents
|
||||
skills/ — 299 workflow skills and domain knowledge
|
||||
commands/ — 95 slash commands
|
||||
hooks/ — Trigger-based automations
|
||||
rules/ — Always-follow guidelines (common + per-language)
|
||||
scripts/ — Cross-platform Node.js utilities
|
||||
|
||||
@@ -224,6 +224,7 @@ These lifecycle commands are also available through the `ecc` CLI.
|
||||
| `/setup-pm` | Configure package manager (npm / pnpm / yarn / bun) |
|
||||
| `/auto-update` | Pull the latest ECC repo changes and reinstall the current managed targets |
|
||||
| `/cost-report` | Generate a local Claude Code cost report from a cost-tracker SQLite database |
|
||||
| `/token-card` | Render a token-usage stat card from local agent session logs and commit it to the repo |
|
||||
| `/security-scan` | Run AgentShield against agent, hook, MCP, permission, and secret surfaces |
|
||||
| `/jira` | Retrieve a Jira ticket, analyze requirements, update status, or add comments |
|
||||
| `/pr` | Create a GitHub PR from current branch with unpushed commits |
|
||||
|
||||
@@ -140,13 +140,13 @@ Instead of rebuilding that process in every prompt, you install it once and make
|
||||
|
||||
ECC is MIT-licensed open source. It works best with Claude Code today, has a supported Codex sync path, and provides capability-limited adapters for Cursor, OpenCode, Gemini, Zed, GitHub Copilot, Antigravity, Qwen, and other harnesses. See the [support status matrix](#platform-support) before assuming feature parity.
|
||||
|
||||
Access to 69 agents, 295 skills, and 94 legacy command shims, plus hooks, rules, memory, continuous learning, and AgentShield security scanning. The agents are specialized for planning, review, build repair, security, architecture, and domain work.
|
||||
Access to 70 agents, 299 skills, and 95 legacy command shims, plus hooks, rules, memory, continuous learning, and AgentShield security scanning. The agents are specialized for planning, review, build repair, security, architecture, and domain work.
|
||||
|
||||
| Included | Count | What it gives you |
|
||||
| ---------------- | ----------: | ------------------------------------------------------------------------------------ |
|
||||
| Agents | 69 agents | Planning, review, build repair, security, architecture, and domain work |
|
||||
| Skills | 295 skills | TDD, research, security, docs, frontend, data, ML, operations, and more |
|
||||
| Commands | 94 commands | Convenient entry points while ECC moves to a skills-first surface |
|
||||
| Agents | 70 agents | Planning, review, build repair, security, architecture, and domain work |
|
||||
| Skills | 299 skills | TDD, research, security, docs, frontend, data, ML, operations, and more |
|
||||
| Commands | 95 commands | Convenient entry points while ECC moves to a skills-first surface |
|
||||
| Hooks and memory | Runtime | Enforcement, session summaries, continuous learning, instincts, and context controls |
|
||||
| Rules | Selective | Always-loaded standards you choose by language or project |
|
||||
| AgentShield | Included | Scanning for prompts, hooks, MCP config, permissions, secrets, and agent files |
|
||||
@@ -826,7 +826,7 @@ Stable graduation of the 2.0 line: control-pane substrate, worktree lifecycle se
|
||||
|
||||
```text
|
||||
ECC/
|
||||
|-- agents/ # 69 specialized subagents for delegation
|
||||
|-- agents/ # 70 specialized subagents for delegation
|
||||
|-- skills/ # 293 reusable workflows loaded on demand
|
||||
|-- commands/ # 94 maintained slash-command shims
|
||||
|-- rules/ # opt-in common and language standards
|
||||
|
||||
+1
-1
@@ -200,7 +200,7 @@ Copy-Item -Recurse rules/typescript "$HOME/.claude/rules/"
|
||||
/plugin list ecc@ecc
|
||||
```
|
||||
|
||||
**完成!** 你现在可以使用 69 个代理、295 个技能和 94 个命令。
|
||||
**完成!** 你现在可以使用 70 个代理、299 个技能和 95 个命令。
|
||||
|
||||
### multi-* 命令需要额外配置
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# Soul
|
||||
|
||||
## Core Identity
|
||||
ECC is a production-ready AI coding plugin with 69 specialized agents, 295 skills, 94 commands, and automated hook workflows for software development.
|
||||
ECC is a production-ready AI coding plugin with 70 specialized agents, 299 skills, 95 commands, and automated hook workflows for software development.
|
||||
|
||||
## Core Principles
|
||||
1. **Agent-First** — route work to the right specialist as early as possible.
|
||||
|
||||
@@ -161,6 +161,7 @@ skills:
|
||||
- tdd-workflow
|
||||
- team-builder
|
||||
- token-budget-advisor
|
||||
- token-card
|
||||
- unified-memory
|
||||
- verification-loop
|
||||
- video-editing
|
||||
@@ -259,6 +260,7 @@ commands:
|
||||
- skill-create
|
||||
- skill-health
|
||||
- test-coverage
|
||||
- token-card
|
||||
- update-codemaps
|
||||
- update-docs
|
||||
- vue-review
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
---
|
||||
description: Render a token-usage stat card from local agent session logs and commit it to the repo. Invokes the token-card skill.
|
||||
argument-hint: [--out PATH] [--theme auto|light|dark] [--dry-run]
|
||||
---
|
||||
|
||||
# Token Card
|
||||
|
||||
Thin compatibility shim. The workflow lives in the **token-card** skill
|
||||
(`skills/token-card/SKILL.md`), which is the canonical surface; this command exists so the
|
||||
slash-command harnesses can reach it.
|
||||
|
||||
## Usage
|
||||
|
||||
```
|
||||
/token-card # write the configured output (./tokenchit.svg by default)
|
||||
/token-card --out docs/usage.svg # write somewhere else
|
||||
/token-card --theme dark
|
||||
/token-card --dry-run # report what would be written, write nothing
|
||||
```
|
||||
|
||||
## What it does
|
||||
|
||||
Renders an SVG card of this machine's AI coding agent usage — tokens, equivalent cost,
|
||||
streak, per-agent split — from local Claude Code, Codex, Gemini CLI and OpenCode session logs, and writes
|
||||
it into the working tree as a file the README can reference.
|
||||
|
||||
Follow the skill for the full workflow, including the confirmation required before the first
|
||||
registry download, the pinned CLI version, and the dry-run rules.
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"totalCommands": 94,
|
||||
"totalCommands": 95,
|
||||
"commands": [
|
||||
{
|
||||
"command": "aside",
|
||||
@@ -990,6 +990,17 @@
|
||||
"skills": [],
|
||||
"path": "commands/test-coverage.md"
|
||||
},
|
||||
{
|
||||
"command": "token-card",
|
||||
"description": "Render a token-usage stat card from local agent session logs and commit it to the repo. Invokes the token-card skill.",
|
||||
"type": "general",
|
||||
"primaryAgents": [],
|
||||
"allAgents": [],
|
||||
"skills": [
|
||||
"token-card"
|
||||
],
|
||||
"path": "commands/token-card.md"
|
||||
},
|
||||
{
|
||||
"command": "update-codemaps",
|
||||
"description": "Scan project structure and generate token-lean architecture codemaps.",
|
||||
@@ -1029,7 +1040,7 @@
|
||||
"statistics": {
|
||||
"byType": {
|
||||
"build": 2,
|
||||
"general": 10,
|
||||
"general": 11,
|
||||
"orchestration": 11,
|
||||
"planning": 2,
|
||||
"refactoring": 1,
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# ECC — 智能体指令
|
||||
|
||||
这是一个**生产就绪的 AI 编码插件**,提供 69 个专业代理、295 项技能、94 条命令以及自动化钩子工作流,用于软件开发。
|
||||
这是一个**生产就绪的 AI 编码插件**,提供 70 个专业代理、299 项技能、95 条命令以及自动化钩子工作流,用于软件开发。
|
||||
|
||||
**版本:** 2.2.3
|
||||
|
||||
@@ -146,9 +146,9 @@
|
||||
## 项目结构
|
||||
|
||||
```
|
||||
agents/ — 69 个专业子代理
|
||||
skills/ — 295 个工作流技能和领域知识
|
||||
commands/ — 94 个斜杠命令
|
||||
agents/ — 70 个专业子代理
|
||||
skills/ — 299 个工作流技能和领域知识
|
||||
commands/ — 95 个斜杠命令
|
||||
hooks/ — 基于触发的自动化
|
||||
rules/ — 始终遵循的指导方针(通用 + 每种语言)
|
||||
scripts/ — 跨平台 Node.js 实用工具
|
||||
|
||||
@@ -264,7 +264,7 @@ Copy-Item -Recurse rules/typescript "$HOME/.claude/rules/"
|
||||
/plugin list ecc@ecc
|
||||
```
|
||||
|
||||
**搞定!** 你现在可以使用 69 个智能体、295 项技能和 94 个命令了。
|
||||
**搞定!** 你现在可以使用 70 个智能体、299 项技能和 95 个命令了。
|
||||
|
||||
***
|
||||
|
||||
@@ -1176,9 +1176,9 @@ opencode
|
||||
|
||||
| 功能特性 | Claude Code | OpenCode | 状态 |
|
||||
|---------|---------------|----------|--------|
|
||||
| 智能体 | PASS: 69 个 | PASS: 12 个 | **Claude Code 领先** |
|
||||
| 命令 | PASS: 94 个 | PASS: 35 个 | **Claude Code 领先** |
|
||||
| 技能 | PASS: 295 项 | PASS: 37 项 | **Claude Code 领先** |
|
||||
| 智能体 | PASS: 70 个 | PASS: 12 个 | **Claude Code 领先** |
|
||||
| 命令 | PASS: 95 个 | PASS: 35 个 | **Claude Code 领先** |
|
||||
| 技能 | PASS: 299 项 | PASS: 37 项 | **Claude Code 领先** |
|
||||
| 钩子 | PASS: 8 种事件类型 | PASS: 11 种事件 | **OpenCode 更多!** |
|
||||
| 规则 | PASS: 29 条 | PASS: 13 条指令 | **Claude Code 领先** |
|
||||
| MCP 服务器 | PASS: 14 个 | PASS: 完整 | **完全对等** |
|
||||
@@ -1284,9 +1284,9 @@ ECC 是**第一个最大化利用每个主要 AI 编码工具的插件**。以
|
||||
|
||||
| 功能特性 | Claude Code | Cursor IDE | Codex CLI | OpenCode |
|
||||
|---------|-----------------------|------------|-----------|----------|
|
||||
| **智能体** | 69 | 共享 (AGENTS.md) | 共享 (AGENTS.md) | 12 |
|
||||
| **命令** | 94 | 共享 | 基于指令 | 35 |
|
||||
| **技能** | 295 | 共享 | 10 (原生格式) | 37 |
|
||||
| **智能体** | 70 | 共享 (AGENTS.md) | 共享 (AGENTS.md) | 12 |
|
||||
| **命令** | 95 | 共享 | 基于指令 | 35 |
|
||||
| **技能** | 299 | 共享 | 10 (原生格式) | 37 |
|
||||
| **钩子事件** | 8 种类型 | 15 种类型 | SessionStart(1 种类型) | 11 种类型 |
|
||||
| **钩子脚本** | 20+ 个脚本 | 16 个脚本 (DRY 适配器) | 1 个 SessionStart 引导脚本 | 插件钩子 |
|
||||
| **规则** | 34 (通用 + 语言) | 34 (YAML 前页) | 基于指令 | 13 条指令 |
|
||||
|
||||
@@ -622,6 +622,7 @@
|
||||
"skills/messages-ops",
|
||||
"skills/project-flow-ops",
|
||||
"skills/terminal-ops",
|
||||
"skills/token-card",
|
||||
"skills/unified-notifications-ops",
|
||||
"skills/workspace-surface-audit",
|
||||
"skills/mailtrap-email-integration"
|
||||
|
||||
@@ -365,6 +365,7 @@
|
||||
"skills/terminal-opener/",
|
||||
"skills/terminal-ops/",
|
||||
"skills/token-budget-advisor/",
|
||||
"skills/token-card/",
|
||||
"skills/ui-demo/",
|
||||
"skills/ui-to-vue/",
|
||||
"skills/unified-memory/",
|
||||
|
||||
@@ -0,0 +1,121 @@
|
||||
---
|
||||
name: token-card
|
||||
description: Render a token-usage stat card from local Claude Code, Codex, Gemini CLI, and OpenCode session logs and commit it into the repository as a file. Use when someone wants a current usage figure in a README, or asks for a shareable card of their coding-agent activity.
|
||||
metadata:
|
||||
origin: community
|
||||
---
|
||||
|
||||
# Token Card
|
||||
|
||||
Produce an SVG card summarising this machine's AI coding agent usage — total tokens,
|
||||
equivalent API cost, current streak, and the split across agents — and write it into the
|
||||
working tree as a file the README can reference.
|
||||
|
||||
The card is a committed artifact rather than a hosted image, so it renders from the
|
||||
repository itself and does not depend on a third-party endpoint staying up.
|
||||
|
||||
## When to Use
|
||||
|
||||
- Someone wants a usage figure visible in a README or docs page.
|
||||
- Someone asks for a shareable summary of their agent activity across tools.
|
||||
|
||||
Use `/cost-report` instead when the question is "what did I spend this week". The two read
|
||||
different sources and produce different things:
|
||||
|
||||
| | `/cost-report` | Token Card |
|
||||
|---|---|---|
|
||||
| Source | `~/.claude/metrics/costs.jsonl`, written by ECC's `stop:cost-tracker` hook | The agents' own session logs |
|
||||
| Agents | Claude Code | Claude Code, Codex, Gemini CLI, OpenCode |
|
||||
| Output | Terminal summary, optional CSV | An SVG file committed to the repo |
|
||||
|
||||
## The tool this runs
|
||||
|
||||
`@tokenchit/cli`, MIT licensed: <https://github.com/iyashjayesh/tokenchit>
|
||||
|
||||
**Pinned to an exact version, deliberately.** `@latest` resolves to whatever the registry
|
||||
currently serves, and this tool reads local session logs — so a compromised future release
|
||||
would be executed with access to them before anyone had reviewed it. Pin, and raise the pin
|
||||
knowingly:
|
||||
|
||||
```bash
|
||||
TOKENCHIT_VERSION=0.10.0
|
||||
```
|
||||
|
||||
To check the pinned artifact before running it the first time:
|
||||
|
||||
```bash
|
||||
npm view @tokenchit/cli@0.10.0 dist.integrity dist.tarball
|
||||
```
|
||||
|
||||
## Workflow
|
||||
|
||||
1. **Ask before the first download.** `npx` fetches the package from the npm registry and
|
||||
executes it. That is a remote download of code that will read local logs, so get explicit
|
||||
confirmation from the user before the first run on a machine. If they decline, stop here
|
||||
and say what would have run.
|
||||
|
||||
2. **Configure, unless this is a dry run.** If `.tokenchit.json` is absent, run:
|
||||
|
||||
```bash
|
||||
npx -y @tokenchit/cli@0.10.0 init
|
||||
```
|
||||
|
||||
It detects which agents have logs on this machine and records them. The file is meant to
|
||||
be committed and never contains a credential.
|
||||
|
||||
**Skip this entirely when the user passed `--dry-run`**, and report that `.tokenchit.json`
|
||||
*would* be created. A preview that writes a config file is not a preview.
|
||||
|
||||
3. **Render the card.** The bare command writes to the configured output — `tokenchit.svg`
|
||||
unless `.tokenchit.json` names another path:
|
||||
|
||||
```bash
|
||||
npx -y @tokenchit/cli@0.10.0 sync
|
||||
```
|
||||
|
||||
Append only the flags the user actually asked for, each spelled exactly as below. Do not
|
||||
copy a placeholder into the command — `sync` ignores an unrecognised positional argument
|
||||
rather than refusing it, so a bracketed `[--dry-run]` reaches the CLI as junk and the card
|
||||
is written anyway, which is the opposite of what was asked.
|
||||
|
||||
| Flag | Effect |
|
||||
|---|---|
|
||||
| `--out <path>` | Write somewhere other than the configured output |
|
||||
| `--theme auto` \| `light` \| `dark` | Card theme; `auto` adapts to the reader's system |
|
||||
| `--dry-run` | Print what would be written and touch nothing |
|
||||
|
||||
`sync` reads local files and sends nothing: no prompts, no code, no file contents leave
|
||||
the machine, and it transmits nothing to any server. The npx invocation around it is a
|
||||
registry download — that is the network access in this workflow, and step 1 is where it
|
||||
is agreed.
|
||||
|
||||
4. **Report and offer.** Print the figures it produced — tokens, equivalent cost, streak,
|
||||
per-agent split — and the path written. If the repository has a README that does not yet
|
||||
reference the card, offer to add:
|
||||
|
||||
```markdown
|
||||

|
||||
```
|
||||
|
||||
`sync` prints the path relative to the repository root. A Markdown image resolves
|
||||
relative to the file it sits in, so rewrite it for the README being edited: a card at
|
||||
`docs/usage.svg` is `./docs/usage.svg` from the root README but `../usage.svg` from
|
||||
`docs/zh-CN/README.md`. Pasting the printed path into a nested README points at
|
||||
`docs/zh-CN/docs/usage.svg` and renders broken.
|
||||
|
||||
Do not edit the README without being asked.
|
||||
|
||||
Stop after step 4. Publishing to the public leaderboard is a separate `publish` command that
|
||||
requires explicit opt-in, and is not part of this workflow — run it only if the user asks for
|
||||
it by name. `unpublish` removes the row and the account again.
|
||||
|
||||
## Output
|
||||
|
||||
The path of the SVG, the figures it contains, and the markdown snippet for referencing it.
|
||||
On a dry run: what would have been written, and nothing on disk changed.
|
||||
|
||||
## Notes
|
||||
|
||||
- Requires Node.js 22 or newer (the package declares `engines: { node: ">=22" }`). Nothing is
|
||||
installed globally; `npx` fetches the pinned version per run.
|
||||
- Reads token counts and timestamps only.
|
||||
Reference in new issue
Block a user