Ponytail
DavidObando/gsharp
Forces the laziest solution that actually works, simplest, shortest, most minimal.
Final gate: simplify code, validate docs, and run local CI checks before pushing
$ npx skills add arul28/ADE --skill finalize -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install arul28/ADE finalize --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/arul28/ADE.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/finalize .claude/skills/finalize && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "finalize" agent skill from https://github.com/arul28/ADE/tree/main/.agents/skills/finalize into .claude/skills/finalize/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "finalize", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/arul28/ADE/tree/main/.agents/skills/finalizeType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add arul28/ADE --skill finalize -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install arul28/ADE finalize --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/arul28/ADE.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/finalize .agents/skills/finalize && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "finalize" agent skill from https://github.com/arul28/ADE/tree/main/.agents/skills/finalize into .agents/skills/finalize/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "finalize", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add arul28/ADE --skill finalize -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install arul28/ADE finalize --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/arul28/ADE.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/finalize .cursor/skills/finalize && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "finalize" agent skill from https://github.com/arul28/ADE/tree/main/.agents/skills/finalize into .cursor/skills/finalize/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "finalize", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/arul28/ADE.git --path .agents/skills/finalize--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add arul28/ADE --skill finalize -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install arul28/ADE finalize --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/arul28/ADE.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/finalize .gemini/skills/finalize && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "finalize" agent skill from https://github.com/arul28/ADE/tree/main/.agents/skills/finalize into .gemini/skills/finalize/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "finalize", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install arul28/ADE finalizeInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add arul28/ADE --skill finalize -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/arul28/ADE.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/finalize .github/skills/finalize && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "finalize" agent skill from https://github.com/arul28/ADE/tree/main/.agents/skills/finalize into .github/skills/finalize/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "finalize", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add arul28/ADE --skill finalize -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install arul28/ADE finalize --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/arul28/ADE.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/finalize .opencode/skills/finalize && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "finalize" agent skill from https://github.com/arul28/ADE/tree/main/.agents/skills/finalize into .opencode/skills/finalize/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "finalize", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
finalizeFinal gate: simplify code, validate docs, and run local CI checks before pushing
Finalize is an agent skill from arul28/ADE. Final gate: simplify code, validate docs, and run local CI checks before pushing
Its SKILL.md is about 3.9k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Development, covering Code simplification. The licence is AGPL-3.0.
4 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 7390d95. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
npmnpxgitghnodetscFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use npm, npx, git and gh, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Finalize loads about 3.9k tokens when it runs. Until then it costs about 22 tokens; SKILL.md has 1,708 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from arul28/ADE at commit 7390d95, republished under its AGPL-3.0 licence (© arul28). 1,708 words, ~3,858 tokens.
.claude/skills/finalize/SKILL.md (or your agent's skills folder).This skill is the final local gate before pushing and opening a PR.
In the dev loop, deep bug-finding and code cleanup are
/quality's job (the loop default) and test-suite work is/test's./finalizeis optional: run it when you want a full local CI gate before/shippushes — a final simplification sweep plus typecheck/lint/sharded-tests/build/doc-validation.
It guarantees three outcomes:
/quality already did the heavy lifting)/test are still validIt does not guarantee that remote PR review is complete after a push. GitHub's
first visible check list can look quiet before delayed checks, bot reviews, and
inline comments arrive. After pushing a finalized branch, hand off to
/ship or an equivalent PR poll loop. Use the ship-lane cadence: poll
immediately after a push, wait 270s if CI has not registered, wait 720s while CI
is running, and wait 1800s only when CI is done and the PR is just waiting on
review.
Usage: /finalize
This command runs end-to-end without user interaction. Do NOT:
Outputs are exactly two things: the Phase 4 summary, and fatal-error messages (typecheck, lint, build, or self-caused test failures). Every other decision is made by the agent based on the rules in this file.
docs.json and any root-level *.mdx, plus the root-level dirs chat/, tools/, changelog/, configuration/, computer-use/, context-packs/, getting-started/, guides/, automations/, lanes/, cto/. Exception: the SDK tab (sdk/*.mdx and the SDK entries in docs.json) is in scope when the branch changed packages/sdk, packages/chat-ui, MCP honesty, or the apps/ade-cli embedded profile / parentDeathWatchdog — keep those pages aligned, do not rewrite other Mintlify product pages. Internal docs under docs/ are in scope.docs/OPTIMIZATION_OPPORTUNITIES.md — append-only, human-curated.apps/mcp-server checks; the MCP server was removed. The agent surface is apps/ade-cli./finalize is the gate that runs the full suite.pkill -f vitest / pkill -f node. Always scope to apps/desktop, apps/ade-cli, or apps/web./finalize alone — see Phase 3j handoff.../quality/references/windows-quirks.md — a "cleaner" === path comparison, a child.kill() replacing terminateProcessTree, a hand-built shell string replacing structured argv, or a lock check narrowed to EEXIST are all regressions, not simplifications. Platform branches that look redundant usually are not.WINDOWS_PORT.md records that POSIX-only fixtures, Unix-socket browser tests, chmod assertions, and some SQLite teardown races fail on a Windows host by design; compare against that baseline before calling the gate red.Phase 1: Analyze & Prepare Code Simplification (lead)
Phase 2: Code Simplification (agents)
Phase 3: CI sync + local verification (lead)
Phase 4: Summary (lead)git diff main --name-only | grep -E '\.(ts|tsx)$'git diff main --numstat | awk '$1+$2 > 10 {print $3}' | grep -E '\.(ts|tsx)$'Exclude from simplification:
*.test.ts, *.test.tsx)*.config.*, *.cjs)< 5 files -> 1 batch5-15 files -> 2 batches16+ files -> 3 batchesKeep related files together (service + its types + its callers).
git diff main --stat | tail -20
git log main..HEAD --onelinegit diff main --name-only | sort > /tmp/finalize-branch-files.txtSpawn 1–3 simplifier agents based on batch size from Phase 1c. Use TeamCreate when available; parallel Agent calls otherwise. Per the global git-worktrees policy, do not pass worktree isolation — all agents work in the main directory.
Use subagent_type: "code-simplifier:code-simplifier" for each batch (note the full namespaced form — plain "code-simplifier" is not a valid agent type).
Prompt each with:
*.test.ts(x) neighbor. Test expectations often lag behind feature refactors — removing "unused" code can silently break a test suite that will only light up in Phase 3e. When in doubt, leave it and note in the report.git diff main -- <file> first; if zero diff, do not edit (a previous run tried to simplify files it thought were modified, and wasted time on unchanged code).cd apps/desktop && npx tsc --noEmit -p . 2>&1 | head -20.Wait for all simplifier agents to complete before moving to Phase 3.
Docs, mobile, CLI, and TUI parity reviewers have moved to /test — they should run before /finalize. Do not re-spawn them here.
Read .github/workflows/ci.yml and verify:
ci-pass gate job includes all required jobs in its needs arrayRun in parallel — ensures lock files are in sync with package.json (mirrors CI's npm ci):
cd apps/desktop && npm install
cd apps/ade-cli && npm install
cd apps/web && npm installAfter install, check for uncommitted lock file changes — a dirty lock file means package.json was modified without regenerating the lock, which will break CI's npm ci:
git diff --name-only -- '*/package-lock.json'This is a hard gate: if any lock file is dirty, stage it (git add <path>) and report it in the Phase 4 summary so the user commits it before pushing. Do not proceed past 3b with dirty lock files.
Run in parallel to match CI jobs (typecheck-desktop, typecheck-ade-cli, typecheck-web):
cd apps/desktop && npm run typecheck
cd apps/ade-cli && npm run typecheck
cd apps/web && npm run typecheckMirrors the lint-desktop CI job: errors fail, and so does any ade-ui/*
warning count that grows past lint-baseline.json (see docs/design/notices.md).
cd apps/desktop && npm run test:lint-tooling && npm run lint:ci/finalize is the gate that runs the whole test suite. Issue these 9 commands as concurrent Bash tool calls in a single message. Do not chain with &&/;, do not run them sequentially — that takes 9× longer and masks real CI wall-clock behavior. Mirrors .github/workflows/ci.yml jobs test-desktop (matrix 1–8) and test-ade-cli:
cd apps/desktop && npx vitest run --shard=1/8
cd apps/desktop && npx vitest run --shard=2/8
cd apps/desktop && npx vitest run --shard=3/8
cd apps/desktop && npx vitest run --shard=4/8
cd apps/desktop && npx vitest run --shard=5/8
cd apps/desktop && npx vitest run --shard=6/8
cd apps/desktop && npx vitest run --shard=7/8
cd apps/desktop && npx vitest run --shard=8/8
cd apps/ade-cli && npm testThe desktop workspace has 3 projects (unit-main, unit-renderer, unit-shared); sharding distributes across all three automatically.
If a shard fails, re-run ONLY the failing test file(s) — not the whole shard, and never the full sharded run. Sharding is a wall-clock optimization for the initial gate; once you've isolated which file failed, the cheapest signal is npx vitest run <path/to/file.test.tsx>. A 90-second shard rerun to verify a 5-second one-file fix is wasted time and burns the prompt cache.
Anti-pattern (do NOT do this):
Only run the full sharded suite once at the start of Phase 3e. After that, narrow scope to failing files until they pass, then move on.
Workspace-project subsets exist for debugging only; they are NOT a substitute for the sharded run:
cd apps/desktop && npx vitest run --project unit-main # ~150+ main-process tests
cd apps/desktop && npx vitest run --project unit-renderer # ~85+ renderer tests
cd apps/desktop && npx vitest run --project unit-shared # ~7 shared/preload testscd apps/desktop && npm run build
cd apps/ade-cli && npm run build
cd apps/web && npm run buildnode scripts/validate-docs.mjsThis only validates the public Mintlify site (docs.json + .mdx). Also run these automated checks for the internal docs/ tree:
# Every features/<name>/README.md has a "Source file map" section.
for d in docs/features/*/README.md; do
grep -q "Source file map" "$d" || echo "MISSING map: $d"
done
# PRD.md links resolve.
grep -oE "\[.*\]\([^)]+\.md\)" docs/PRD.md | \
sed -E 's/.*\(([^)]+)\).*/\1/' | \
while read -r p; do
test -f "docs/$p" || echo "BROKEN LINK: $p"
doneBoth commands should produce empty output. Any MISSING map: or BROKEN LINK: line is a failure — fix the offending doc and re-run. Do not prompt the user; resolve autonomously.
All checks must pass. If any fail, fix and re-run only the failed step.
If Phase 3e fails only in files the simplifier touched (or their *.test.ts(x) siblings), treat it as drift, not a real failure. The pre-Phase-2 snapshot lives at /tmp/finalize-branch-files.txt (written in 1e); compare against current diff to see what the simplifier added on top:
git diff --name-only | sort > /tmp/finalize-session-files.txt
comm -13 /tmp/finalize-branch-files.txt /tmp/finalize-session-files.txtRevert the simplifier's edits to the offending files and re-run only the failing test file (not the full shard). Do NOT rewrite the test suite in Phase 3 unless the user explicitly asks — tests that drift because the feature branch refactored UI are a separate follow-up by default.
The parallel shards, typecheck, lint, and build commands in Phase 3 sometimes leave worker processes hanging after the phase exits — most commonly vitest worker pools from the 8-shard run, and tsup/esbuild workers from npm run build. They don't fail the CI check, but they sit in memory, can hold file locks, and pile up across repeated /finalize runs.
After Phase 3 passes, kill orphaned workers. Always scope to ADE app paths (see Guardrails):
PATTERN='(vitest|tsup|tsc --noEmit|eslint).*apps/(desktop|ade-cli|web)'
# 1. List what's lingering before killing anything
pgrep -fa "$PATTERN" || echo " (no orphans)"
# 2. SIGTERM, wait 2s, then SIGKILL stragglers
pgrep -f "$PATTERN" | xargs -r kill 2>/dev/null
sleep 2
pgrep -f "$PATTERN" | xargs -r kill -9 2>/dev/null || trueAlso watch for orphaned node-pty or Electron helper processes if the tests spawned subprocesses (rare, but happens):
pgrep -fa "node-pty|Electron Helper" | grep -E "apps/desktop" | headKill selectively only if the parent is clearly gone (PPID == 1 on macOS/Linux).
Report killed PIDs in the Phase 4 summary under "Cleanup" so the user can see what happened.
If this finalize run is followed by a push or PR update, do not treat the first
gh pr checks result as authoritative proof that remote review is done. Some
checks and bot review systems appear late or post comments after the initial CI
surface looks complete. In particular:
gh pr checks can omit delayed or still-registering provider checks.Handoff rule:
# After the branch is pushed, continue with /ship or equivalent:
# - poll PR checks, status rollup, review comments, issue comments, and reviews
# - poll immediately after a push so early CI registration/failures are visible
# - if CI has not started yet, wait 270s
# - if any check is QUEUED/IN_PROGRESS/PENDING, wait 720s
# - if CI is done and the PR is only waiting on review, wait 1800s
# - poll again before declaring the PR clean or ready for human mergeIf /finalize is running as a sub-step inside /ship, return a summary that
explicitly says remote checks/comments still require the ship-lane poll loop.
Do not report "PR clean" from /finalize alone.
## Finalize Summary
### Code Simplification:
- Files simplified: X
- Key changes: [brief list]
### CI Verification:
- Lock files in sync: PASS
- Typecheck (desktop): PASS
- Typecheck (ade-cli): PASS
- Typecheck (web): PASS
- Lint (desktop): PASS
- Tests (desktop): PASS (X tests across 8 shards)
- Tests (ade-cli): PASS (X tests)
- Build (all apps): PASS
- Doc validation: PASS
### Cleanup:
- Orphan processes killed: N (PIDs: [list] or "none")
### Remote PR Handoff:
- Post-push polling required: YES
- Poll loop: `/ship` branch-specific cadence
- Reason: delayed checks and bot comments may arrive after first visible green state
### Status: Ready to push / Issues foundBefore marking complete: every Phase 3 step (3a–3j) must report PASS in the Phase 4 summary, and Phase 2 simplifier agents must have reported back. Remote PR review is not declared clean by /finalize — handoff to /ship (Phase 3j) is mandatory after push.
© arul28, AGPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .agents/skills/finalize of arul28/ADE.
Open the folder on GitHubat commit 7390d95
Finalize next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Finalize this skillarul28/ADE | 113 | — | ~3.9k | Automated safety check: Pass | AGPL-3.0 | |
| PonytailDavidObando/gsharp | 564 | 8 repos | ~1.7k | Automated safety check: Pass | MIT | |
| Ponytail Reviewkortix-ai/suna | 20k | 4 repos | ~593 | Automated safety check: Pass | Custom licence | |
| Code Simplification for ego-litecitrolabs/ego-lite | 17k | — | ~1.2k | Automated safety check: Pass | MIT | |
| Refactor Pass for Simplicitystar-history/star-history | 9.6k | 1 repos | ~168 | Automated safety check: Pass | MIT | |
| RTK Rust Code Simplifierrtk-ai/rtk | 83k | — | ~1.1k | Automated safety check: Pass | Apache-2.0 |
DavidObando/gsharp
Forces the laziest solution that actually works, simplest, shortest, most minimal.
kortix-ai/suna
Code review focused exclusively on over-engineering. An agent skill from kortix-ai/suna.
citrolabs/ego-lite
Finds and implements evidence-backed simplifications in the ego-lite repository, such as dead code, duplicated state and speculative abstractions, without hiding behavior changes.
star-history/star-history
Perform a refactor pass focused on simplicity after recent changes. Use when the user asks for a refactor/cleanup pass, simplification, or dead-code removal…
rtk-ai/rtk
Reviews RTK's Rust code for over-engineering and verbose patterns, applying idioms like iterator chains and early returns while protecting a specific list of constraints from being simplified away.
millionco/react-doctor
Simplify and refine recently modified code while preserving functionality.
arul28/ADE
A skill your agent uses when you need to run or drive a local Electron/desktop app and capture what it does — launch it or attach to a running renderer, read its logs or answer its terminal prompts…
arul28/ADE
Iteratively optimize an ADE tab's CPU/memory/IPC/render performance.
arul28/ADE
A skill your agent uses for any browser behavior at all — opening a URL, checking a localhost page, clicking or filling a form, logging in, screenshotting, inspecting the DOM, or verifying a page…
arul28/ADE
A skill your agent uses when an agent needs to mint, share, or open ADE deeplinks (lane, work session, file, commit, artifact, branch, PR, Linear issue) so users — or the agent itself — can jump…
arul28/ADE
A skill your agent uses when you need to run a chat, a CLI session, or a subagent on a specific setup — any model you pay for inside any harness (e.g.
arul28/ADE
A skill your agent uses when creating, inspecting, syncing, committing, pushing, archiving, or rebasing ADE lanes and lane worktrees through ade lanes and ade git.
Categories
Final gate: simplify code, validate docs, and run local CI checks before pushing. Finalize is an agent skill from arul28/ADE.
Finalize fits situations like: tasks that involve Code simplification.
Run `npx skills add arul28/ADE --skill finalize -a claude-code`. Or copy the skill folder (.agents/skills/finalize in arul28/ADE) into .claude/skills/finalize in your project. Claude Code loads it when a task matches its description.
Run `npx skills add arul28/ADE --skill finalize -a codex`. Or copy the skill folder (.agents/skills/finalize in arul28/ADE) into .agents/skills/finalize in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add arul28/ADE --skill finalize -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/finalize, .gemini/skills/finalize, .github/skills/finalize and .opencode/skills/finalize in your project.
Going by SKILL.md and its folder, Finalize needs the command-line tools its instructions call (npm, npx, git, gh, node and tsc). Our summary lists: Node.js.
SKILL.md contains no URLs. Its commands use npm, npx, git and gh, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Finalize is published under the AGPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.9k tokens (SKILL.md is roughly 15k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Finalize: Ponytail (DavidObando/gsharp, 564 stars), Ponytail Review (kortix-ai/suna, 20k stars), Code Simplification for ego-lite (citrolabs/ego-lite, 17k stars) and Refactor Pass for Simplicity (star-history/star-history, 9.6k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
arul28 (a GitHub user) maintains it in arul28/ADE, which has 113 GitHub stars. The repository holds 30 skills in this directory. The repository was last updated on October 7, 2026.
Source: arul28/ADE on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.