From 0c0dfd839e399f0d3dcca27f33a3b40780d953d9 Mon Sep 17 00:00:00 2001 From: Affaan Mustafa Date: Sun, 16 Aug 2026 22:29:30 -0400 Subject: [PATCH] feat(skills): add anti-slop and roast-me, wire into refactor and tdd surfaces Adds two curated skills and threads them through existing surfaces: - skills/anti-slop: slop catalog and removal rules for code, tests, process, prose. Tests must pay rent, review rounds cap at 2 without a confirmed P0/P1, zero-caller exports die on sight, one canonical implementation. - skills/roast-me: adversarial critique with verdict tiers (FATAL/IMPORTANT/MINOR), six forced questions, and an execution gate. FATAL blocks implementation. - orch-refine-code: roast pass before Gate 1, anti-slop rules in cleaner delegation. - tdd-workflow: roast at plan handoff for multi-file plans; tests-pay-rent under coverage. - refactor-clean + refactor-cleaner agent: one-canonical-implementation and same-PR test deletion rules. - manifests/package/README: register the two new skills (288). Concepts adapted from MIT prior art, credited in each skill. Co-Authored-By: Claude Fable 5 Claude-Session: https://claude.ai/code/session_019SDqUUbdK7s8x1JCtpri3c --- README.md | 4 +- agents/refactor-cleaner.md | 1 + commands/refactor-clean.md | 2 + manifests/install-modules.json | 54 ++--- package.json | 352 ++++++++++++++++--------------- skills/anti-slop/SKILL.md | 70 ++++++ skills/orch-refine-code/SKILL.md | 13 +- skills/roast-me/SKILL.md | 72 +++++++ skills/tdd-workflow/SKILL.md | 4 + 9 files changed, 365 insertions(+), 207 deletions(-) create mode 100644 skills/anti-slop/SKILL.md create mode 100644 skills/roast-me/SKILL.md diff --git a/README.md b/README.md index 0a18dbeeb..b2cbec644 100644 --- a/README.md +++ b/README.md @@ -145,12 +145,12 @@ 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 68 agents, 285 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 68 agents, 288 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. | Included | Count | What it gives you | | ---------------- | ----------: | ------------------------------------------------------------------------------------ | | Agents | 68 agents | Planning, review, build repair, security, architecture, and domain work | -| Skills | 285 skills | TDD, research, security, docs, frontend, data, ML, operations, and more | +| Skills | 288 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 | | Hooks and memory | Runtime | Enforcement, session summaries, continuous learning, instincts, and context controls | | Rules | Selective | Always-loaded standards you choose by language or project | diff --git a/agents/refactor-cleaner.md b/agents/refactor-cleaner.md index 093c8f647..17c75eea2 100644 --- a/agents/refactor-cleaner.md +++ b/agents/refactor-cleaner.md @@ -24,6 +24,7 @@ You are an expert refactoring specialist focused on code cleanup and consolidati 2. **Duplicate Elimination** -- Identify and consolidate duplicate code 3. **Dependency Cleanup** -- Remove unused packages and imports 4. **Safe Refactoring** -- Ensure changes don't break functionality +5. **Anti-Slop Enforcement** -- Apply the `anti-slop` skill rules: zero-caller exports die in the PR that finds them, one canonical implementation per job, no speculative abstractions, and tests obsoleted by a deletion are removed in the same pass ## Detection Commands diff --git a/commands/refactor-clean.md b/commands/refactor-clean.md index 781a57853..1a6bc2826 100644 --- a/commands/refactor-clean.md +++ b/commands/refactor-clean.md @@ -58,6 +58,8 @@ After removing dead code, look for: - Near-duplicate functions (>80% similar) — merge into one - Redundant type definitions — consolidate - Wrapper functions that add no value — inline them +- Parallel systems doing one job — per `anti-slop`, one canonical implementation: merge or delete, never leave both +- Tests obsoleted by the deletions — remove them in this same pass; a test asserting deleted behavior through a mock is dead code too - Re-exports that serve no purpose — remove indirection ## Step 6: Summary diff --git a/manifests/install-modules.json b/manifests/install-modules.json index f4560b593..25ed69b9c 100644 --- a/manifests/install-modules.json +++ b/manifests/install-modules.json @@ -308,52 +308,54 @@ "kind": "skills", "description": "Evaluation, TDD, verification, compaction, learning, and cross-harness memory skills, including the legacy continuous-learning v1 path. The unified-memory workflow requires the separately installed ecc-universal CLI runtime.", "paths": [ - "skills/agent-sort", "skills/agent-introspection-debugging", + "skills/agent-self-evaluation", + "skills/agent-sort", "skills/ai-regression-testing", - "skills/configure-ecc", + "skills/anti-slop", + "skills/architecture-decision-records", + "skills/browser-qa", + "skills/ck", + "skills/click-path-audit", "skills/code-tour", + "skills/codebase-onboarding", + "skills/codehealth-mcp", + "skills/config-gc", + "skills/configure-ecc", + "skills/context-budget", "skills/continuous-learning", "skills/continuous-learning-v2", "skills/council", "skills/council-multi-model", + "skills/delivery-gate", "skills/dev-team", "skills/e2e-testing", + "skills/ecc-guide", + "skills/ecc-recipes", "skills/error-handling", "skills/eval-harness", + "skills/git-workflow", + "skills/growth-log", "skills/hookify-rules", + "skills/inherit-legacy-style", + "skills/intent-driven-development", "skills/iterative-retrieval", + "skills/living-docs-governance", + "skills/loop-design-check", "skills/plan-canvas", "skills/plankton-code-quality", + "skills/product-lens", "skills/production-audit", + "skills/repo-scan", + "skills/roast-me", + "skills/rules-distill", + "skills/santa-method", "skills/skill-scout", "skills/skill-stocktake", "skills/strategic-compact", "skills/tdd-workflow", "skills/verification-loop", - "skills/windows-desktop-e2e", - "skills/agent-self-evaluation", - "skills/architecture-decision-records", - "skills/browser-qa", - "skills/ck", - "skills/click-path-audit", - "skills/codebase-onboarding", - "skills/codehealth-mcp", - "skills/config-gc", - "skills/context-budget", - "skills/delivery-gate", - "skills/ecc-guide", - "skills/ecc-recipes", - "skills/growth-log", - "skills/inherit-legacy-style", - "skills/intent-driven-development", - "skills/living-docs-governance", - "skills/loop-design-check", - "skills/product-lens", - "skills/repo-scan", - "skills/rules-distill", - "skills/santa-method", - "skills/git-workflow" + "skills/windows-desktop-e2e" ], "targets": [ "claude", @@ -606,7 +608,7 @@ { "id": "ito-compute", "kind": "skills", - "description": "Authenticated Itô GPU inventory, RFQ, status, device revocation, and explicitly gated node-qualification workflows through the separately installed canonical CLI.", + "description": "Authenticated It\u00f4 GPU inventory, RFQ, status, device revocation, and explicitly gated node-qualification workflows through the separately installed canonical CLI.", "paths": [ "skills/ito-compute", "skills/ito-inference", diff --git a/package.json b/package.json index c4a8e73cf..9e2d06fc2 100644 --- a/package.json +++ b/package.json @@ -40,35 +40,40 @@ "url": "https://github.com/affaan-m/ECC/issues" }, "files": [ + "!**/*.pyc", + "!**/*.pyd", + "!**/*.pyo", + "!**/.pytest_cache/**", + "!**/__pycache__/**", ".agents/", ".claude-plugin/", - ".codex/", ".codex-plugin/", + ".codex/", ".cursor/", ".gemini/", ".github/PULL_REQUEST_TEMPLATE.md", ".hermes/", ".kimi/", + ".mcp.json", + ".openclaw/", ".opencode/", ".pi/", - ".openclaw/", ".qwen/", ".zed/", - ".mcp.json", "AGENTS.md", "COMMANDS-QUICK-REF.md", "CONTRIBUTING.md", "VERSION", "agent.yaml", + "agents/", "assets/ecc-icon.svg", "assets/hero.png", "assets/images/community/", "assets/images/sponsors/", - "agents/", "commands/", - "docs/de-DE/", "docs/CODEX-NAVIGATION-GUIDE.md", "docs/COMMAND-AGENT-MAP.md", + "docs/de-DE/", "docs/design/ecc-memory-vault.md", "docs/ja-JP/", "docs/ko-KR/", @@ -86,64 +91,68 @@ "plugins/ecc/", "rules/", "schemas/", + "scripts/auto-update.js", "scripts/catalog.js", "scripts/ci/scan-supply-chain-iocs.js", "scripts/ci/supply-chain-advisory-sources.js", - "scripts/consult.js", - "scripts/auto-update.js", "scripts/claw.js", - "scripts/control-pane.js", + "scripts/codex-git-hooks/", + "scripts/codex/check-codex-global-state.sh", "scripts/codex/check-plugin-cache.js", + "scripts/codex/install-global-git-hooks.sh", + "scripts/codex/legacy-sync-state.js", "scripts/codex/merge-codex-config.js", "scripts/codex/merge-mcp-config.js", + "scripts/consult.js", + "scripts/control-pane.js", + "scripts/dashboard-web.js", "scripts/discussion-audit.js", "scripts/doctor.js", "scripts/ecc.js", "scripts/feedback.js", - "scripts/memory.js", - "scripts/memory-mcp.mjs", "scripts/gemini-adapt-agents.js", "scripts/harness-adapter-compliance.js", "scripts/harness-audit.js", - "scripts/observability-readiness.js", - "scripts/operator-readiness-dashboard.js", - "scripts/platform-audit.js", - "scripts/preview-pack-smoke.js", - "scripts/release-approval-gate.js", - "scripts/release-video-suite.js", - "scripts/dashboard-web.js", - "scripts/skills-health.js", "scripts/hooks/", "scripts/install-apply.js", "scripts/install-guided.js", "scripts/install-plan.js", "scripts/ito.js", - "scripts/nasiko.js", "scripts/lib/", "scripts/list-installed.js", "scripts/loop-status.js", - "scripts/plan-canvas.js", - "scripts/orchestration-status.js", + "scripts/memory-mcp.mjs", + "scripts/memory.js", + "scripts/nasiko.js", + "scripts/observability-readiness.js", + "scripts/operator-readiness-dashboard.js", "scripts/orchestrate-codex-worker.sh", "scripts/orchestrate-worktrees.js", + "scripts/orchestration-status.js", + "scripts/plan-canvas.js", + "scripts/platform-audit.js", + "scripts/preview-pack-smoke.js", + "scripts/release-approval-gate.js", + "scripts/release-video-suite.js", "scripts/repair.js", - "scripts/setup.js", - "scripts/welcome.js", "scripts/session-inspect.js", "scripts/sessions-cli.js", "scripts/setup-package-manager.js", + "scripts/setup.js", "scripts/skill-create-output.js", + "scripts/skills-health.js", "scripts/status.js", "scripts/sync-ecc-to-codex.sh", - "scripts/codex/legacy-sync-state.js", - "scripts/codex/install-global-git-hooks.sh", - "scripts/codex/check-codex-global-state.sh", - "scripts/codex-git-hooks/", - "scripts/work-items.js", "scripts/uninstall.js", + "scripts/welcome.js", + "scripts/work-items.js", + "skills/accessibility/", "skills/agent-architecture-audit/", + "skills/agent-eval/", "skills/agent-harness-construction/", "skills/agent-introspection-debugging/", + "skills/agent-payment-x402/", + "skills/agent-self-evaluation/", "skills/agent-sort/", "skills/agentic-engineering/", "skills/agentic-os/", @@ -151,34 +160,52 @@ "skills/ai-regression-testing/", "skills/android-clean-architecture/", "skills/angular-developer/", + "skills/anti-slop/", "skills/api-connector-builder/", "skills/api-design/", + "skills/architecture-decision-records/", "skills/article-writing/", "skills/automation-audit-ops/", + "skills/autonomous-agent-harness/", "skills/autonomous-loops/", "skills/backend-patterns/", + "skills/benchmark-methodology/", + "skills/benchmark-optimization-loop/", + "skills/benchmark/", "skills/blender-motion-state-inspection/", "skills/blueprint/", + "skills/brand-discovery/", "skills/brand-voice/", + "skills/browser-qa/", + "skills/bun-runtime/", + "skills/canary-watch/", "skills/carrier-relationship-management/", - "skills/claude-devfleet/", "skills/cisco-ios-patterns/", + "skills/ck/", + "skills/claude-devfleet/", + "skills/click-path-audit/", "skills/clickhouse-io/", "skills/code-tour/", + "skills/codebase-onboarding/", + "skills/codehealth-mcp/", "skills/coding-standards/", + "skills/competitive-platform-analysis/", + "skills/competitive-report-structure/", "skills/compose-multiplatform-patterns/", + "skills/config-gc/", "skills/configure-ecc/", - "skills/contract-first/", "skills/connections-optimizer/", "skills/content-engine/", "skills/content-hash-cache-pattern/", + "skills/context-budget/", "skills/continuous-agent-loop/", - "skills/continuous-learning/", "skills/continuous-learning-v2/", + "skills/continuous-learning/", + "skills/contract-first/", "skills/cost-aware-llm-pipeline/", "skills/cost-tracking/", - "skills/council/", "skills/council-multi-model/", + "skills/council/", "skills/cpp-coding-standards/", "skills/cpp-testing/", "skills/crosspost/", @@ -187,22 +214,28 @@ "skills/customs-trade-compliance/", "skills/dart-flutter-patterns/", "skills/dashboard-builder/", - "skills/data-throughput-accelerator/", "skills/data-scraper-agent/", + "skills/data-throughput-accelerator/", "skills/database-migrations/", "skills/deep-research/", "skills/defi-amm-security/", + "skills/delivery-gate/", "skills/deployment-patterns/", + "skills/design-system/", "skills/dev-team/", + "skills/django-celery/", "skills/django-patterns/", "skills/django-security/", "skills/django-tdd/", "skills/django-verification/", "skills/dmux-workflows/", "skills/docker-patterns/", + "skills/documentation-lookup/", "skills/dotnet-patterns/", "skills/dynamic-workflow-mode/", "skills/e2e-testing/", + "skills/ecc-guide/", + "skills/ecc-recipes/", "skills/ecc-tools-cost-audit/", "skills/email-ops/", "skills/energy-procurement/", @@ -211,33 +244,50 @@ "skills/eval-harness/", "skills/evm-token-decimals/", "skills/exa-search/", - "skills/benchmark-optimization-loop/", "skills/fal-ai-media/", "skills/fastapi-patterns/", "skills/finance-billing-ops/", + "skills/flox-environments/", + "skills/flutter-dart-code-review/", "skills/foundation-models-on-device/", + "skills/frontend-a11y/", "skills/frontend-design-direction/", "skills/frontend-patterns/", "skills/frontend-slides/", "skills/fsharp-testing/", + "skills/gan-style-harness/", + "skills/gateguard/", + "skills/generating-python-installer/", + "skills/git-workflow/", "skills/github-ops/", "skills/golang-patterns/", "skills/golang-testing/", "skills/google-workspace-ops/", + "skills/growth-log/", + "skills/healthcare-cdss-patterns/", + "skills/healthcare-emr-patterns/", + "skills/healthcare-eval-harness/", "skills/healthcare-phi-compliance/", + "skills/hermes-imports/", + "skills/hexagonal-architecture/", "skills/hipaa-compliance/", "skills/homelab-network-readiness/", "skills/homelab-network-setup/", + "skills/homelab-pihole-dns/", + "skills/homelab-vlan-segmentation/", + "skills/homelab-wireguard-vpn/", "skills/hookify-rules/", + "skills/inherit-legacy-style/", + "skills/intent-driven-development/", "skills/inventory-demand-planning/", + "skills/investor-materials/", + "skills/investor-outreach/", + "skills/ios-icon-gen/", + "skills/iterative-retrieval/", "skills/ito-baskets/", "skills/ito-compute/", "skills/ito-inference/", "skills/ito-training/", - "skills/nasiko-control-plane/", - "skills/investor-materials/", - "skills/investor-outreach/", - "skills/iterative-retrieval/", "skills/java-coding-standards/", "skills/jira-integration/", "skills/jpa-patterns/", @@ -247,160 +297,43 @@ "skills/kotlin-ktor-patterns/", "skills/kotlin-patterns/", "skills/kotlin-testing/", + "skills/kubernetes-patterns/", "skills/laravel-patterns/", "skills/laravel-plugin-discovery/", "skills/laravel-security/", "skills/laravel-tdd/", "skills/laravel-verification/", + "skills/latency-critical-systems/", "skills/lead-intelligence/", "skills/liquid-glass-design/", + "skills/living-docs-governance/", "skills/llm-trading-agent-security/", "skills/logistics-exception-management/", + "skills/loop-design-check/", + "skills/mailtrap-email-integration/", + "skills/make-interfaces-feel-better/", "skills/manim-video/", "skills/market-research/", - "skills/make-interfaces-feel-better/", + "skills/marketing-campaign/", "skills/mcp-server-patterns/", "skills/messages-ops/", + "skills/ml-adoption-playbook/", "skills/mle-workflow/", + "skills/motion-advanced/", + "skills/motion-foundations/", + "skills/motion-patterns/", "skills/motion-ui/", "skills/mysql-patterns/", "skills/nanoclaw-repl/", + "skills/nasiko-control-plane/", "skills/nestjs-patterns/", "skills/netmiko-ssh-automation/", "skills/network-bgp-diagnostics/", "skills/network-config-validation/", "skills/network-interface-health/", + "skills/nextjs-turbopack/", "skills/nodejs-keccak256/", "skills/nutrient-document-processing/", - "skills/latency-critical-systems/", - "skills/perl-patterns/", - "skills/perl-security/", - "skills/perl-testing/", - "skills/plan-canvas/", - "skills/plankton-code-quality/", - "skills/parallel-execution-optimizer/", - "skills/postgres-patterns/", - "skills/prisma-patterns/", - "skills/product-capability/", - "skills/production-audit/", - "skills/production-scheduling/", - "skills/prediction-market-oracle-research/", - "skills/prediction-market-risk-review/", - "skills/project-flow-ops/", - "skills/prompt-optimizer/", - "skills/python-patterns/", - "skills/python-testing/", - "skills/quality-nonconformance/", - "skills/recursive-decision-ledger/", - "skills/quarkus-patterns/", - "skills/quarkus-security/", - "skills/quarkus-tdd/", - "skills/quarkus-verification/", - "skills/ralphinho-rfc-pipeline/", - "skills/react-patterns/", - "skills/react-performance/", - "skills/react-testing/", - "skills/regex-vs-llm-structured-text/", - "skills/remotion-video-creation/", - "skills/research-ops/", - "skills/scientific-db-pubmed-database/", - "skills/scientific-db-uspto-database/", - "skills/scientific-pkg-gget/", - "skills/scientific-thinking-literature-review/", - "skills/scientific-thinking-scholar-evaluation/", - "skills/returns-reverse-logistics/", - "skills/rust-patterns/", - "skills/rust-testing/", - "skills/search-first/", - "skills/security-bounty-hunter/", - "skills/security-review/", - "skills/security-scan/", - "skills/seo/", - "skills/skill-scout/", - "skills/skill-stocktake/", - "skills/social-graph-ranker/", - "skills/springboot-patterns/", - "skills/springboot-security/", - "skills/springboot-tdd/", - "skills/springboot-verification/", - "skills/strategic-compact/", - "skills/swift-actor-persistence/", - "skills/swift-concurrency-6-2/", - "skills/swift-protocol-di-testing/", - "skills/swiftui-patterns/", - "skills/tdd-workflow/", - "skills/team-agent-orchestration/", - "skills/team-builder/", - "skills/terminal-opener/", - "skills/terminal-ops/", - "skills/token-budget-advisor/", - "skills/ui-demo/", - "skills/ui-to-vue/", - "skills/unified-memory/", - "skills/unified-notifications-ops/", - "skills/verification-loop/", - "skills/video-editing/", - "skills/videodb/", - "skills/visa-doc-translate/", - "skills/vue-patterns/", - "skills/windows-desktop-e2e/", - "skills/workspace-surface-audit/", - "skills/x-api/", - "skills/accessibility/", - "skills/agent-eval/", - "skills/agent-payment-x402/", - "skills/agent-self-evaluation/", - "skills/architecture-decision-records/", - "skills/autonomous-agent-harness/", - "skills/benchmark/", - "skills/benchmark-methodology/", - "skills/brand-discovery/", - "skills/browser-qa/", - "skills/bun-runtime/", - "skills/canary-watch/", - "skills/ck/", - "skills/click-path-audit/", - "skills/codebase-onboarding/", - "skills/codehealth-mcp/", - "skills/competitive-platform-analysis/", - "skills/competitive-report-structure/", - "skills/config-gc/", - "skills/context-budget/", - "skills/delivery-gate/", - "skills/design-system/", - "skills/django-celery/", - "skills/documentation-lookup/", - "skills/ecc-guide/", - "skills/ecc-recipes/", - "skills/flox-environments/", - "skills/flutter-dart-code-review/", - "skills/frontend-a11y/", - "skills/gan-style-harness/", - "skills/gateguard/", - "skills/generating-python-installer/", - "skills/git-workflow/", - "skills/growth-log/", - "skills/healthcare-cdss-patterns/", - "skills/healthcare-emr-patterns/", - "skills/healthcare-eval-harness/", - "skills/hermes-imports/", - "skills/hexagonal-architecture/", - "skills/homelab-pihole-dns/", - "skills/homelab-vlan-segmentation/", - "skills/homelab-wireguard-vpn/", - "skills/inherit-legacy-style/", - "skills/intent-driven-development/", - "skills/ios-icon-gen/", - "skills/kubernetes-patterns/", - "skills/living-docs-governance/", - "skills/loop-design-check/", - "skills/mailtrap-email-integration/", - "skills/marketing-campaign/", - "skills/ml-adoption-playbook/", - "skills/motion-advanced/", - "skills/motion-foundations/", - "skills/motion-patterns/", - "skills/nextjs-turbopack/", "skills/nuxt4-patterns/", "skills/openclaw-persona-forge/", "skills/opensource-pipeline/", @@ -410,27 +343,96 @@ "skills/orch-fix-defect/", "skills/orch-pipeline/", "skills/orch-refine-code/", + "skills/parallel-execution-optimizer/", + "skills/perl-patterns/", + "skills/perl-security/", + "skills/perl-testing/", + "skills/plan-canvas/", "skills/plan-orchestrate/", + "skills/plankton-code-quality/", + "skills/postgres-patterns/", + "skills/prediction-market-oracle-research/", + "skills/prediction-market-risk-review/", + "skills/prisma-patterns/", + "skills/product-capability/", "skills/product-lens/", + "skills/production-audit/", + "skills/production-scheduling/", + "skills/project-flow-ops/", + "skills/prompt-optimizer/", + "skills/python-patterns/", + "skills/python-testing/", "skills/pytorch-patterns/", + "skills/quality-nonconformance/", + "skills/quarkus-patterns/", + "skills/quarkus-security/", + "skills/quarkus-tdd/", + "skills/quarkus-verification/", + "skills/ralphinho-rfc-pipeline/", "skills/react-native-patterns/", + "skills/react-patterns/", + "skills/react-performance/", + "skills/react-testing/", "skills/recsys-pipeline-architect/", + "skills/recursive-decision-ledger/", "skills/redis-patterns/", + "skills/regex-vs-llm-structured-text/", + "skills/remotion-video-creation/", "skills/repo-scan/", + "skills/research-ops/", + "skills/returns-reverse-logistics/", + "skills/roast-me/", "skills/rules-distill/", + "skills/rust-patterns/", + "skills/rust-testing/", "skills/safety-guard/", "skills/santa-method/", + "skills/scientific-db-pubmed-database/", + "skills/scientific-db-uspto-database/", + "skills/scientific-pkg-gget/", + "skills/scientific-thinking-literature-review/", + "skills/scientific-thinking-scholar-evaluation/", + "skills/search-first/", + "skills/security-bounty-hunter/", + "skills/security-review/", + "skills/security-scan/", + "skills/seo/", + "skills/skill-scout/", + "skills/skill-stocktake/", + "skills/social-graph-ranker/", "skills/social-publisher/", + "skills/springboot-patterns/", + "skills/springboot-security/", + "skills/springboot-tdd/", + "skills/springboot-verification/", + "skills/strategic-compact/", + "skills/swift-actor-persistence/", + "skills/swift-concurrency-6-2/", + "skills/swift-protocol-di-testing/", + "skills/swiftui-patterns/", "skills/taste/", + "skills/tdd-workflow/", + "skills/team-agent-orchestration/", + "skills/team-builder/", + "skills/terminal-opener/", + "skills/terminal-ops/", "skills/tinystruct-patterns/", + "skills/token-budget-advisor/", + "skills/ui-demo/", + "skills/ui-to-vue/", "skills/uncloud/", + "skills/unified-memory/", + "skills/unified-notifications-ops/", + "skills/verification-loop/", + "skills/video-editing/", + "skills/videodb/", + "skills/visa-doc-translate/", "skills/vite-patterns/", - "the-security-guide.md", - "!**/__pycache__/**", - "!**/*.pyc", - "!**/*.pyo", - "!**/*.pyd", - "!**/.pytest_cache/**" + "skills/vue-patterns/", + "skills/windows-desktop-e2e/", + "skills/workspace-surface-audit/", + "skills/x-api/", + "the-security-guide.md" ], "bin": { "ecc": "scripts/ecc.js", @@ -441,7 +443,7 @@ "ecc-universal": "scripts/ecc.js" }, "scripts": { - "welcome": "echo '\\n ecc-universal installed!\\n Run: ecc typescript\\n Compat: ecc-install typescript\\n Docs: https://github.com/affaan-m/ECC\\n Run or self-host any open-source model.\\n Compute: Itô is the preferred compute sponsor — https://compute.itomarkets.com\\n Any GPU provider works. This sponsorship link is passive: it does not invoke an RFQ, reserve capacity, provision compute, or configure serving.\\n Separately, the opt-in ecc ito find bridge invokes the explicitly configured canonical Itô CLI and submits a live authenticated RFQ; it does not reserve capacity.\\n Managed inference through Itô is not live yet.\\n'", + "welcome": "echo '\\n ecc-universal installed!\\n Run: ecc typescript\\n Compat: ecc-install typescript\\n Docs: https://github.com/affaan-m/ECC\\n Run or self-host any open-source model.\\n Compute: It\u00f4 is the preferred compute sponsor \u2014 https://compute.itomarkets.com\\n Any GPU provider works. This sponsorship link is passive: it does not invoke an RFQ, reserve capacity, provision compute, or configure serving.\\n Separately, the opt-in ecc ito find bridge invokes the explicitly configured canonical It\u00f4 CLI and submits a live authenticated RFQ; it does not reserve capacity.\\n Managed inference through It\u00f4 is not live yet.\\n'", "catalog:check": "node scripts/ci/catalog.js --text", "catalog:sync": "node scripts/ci/catalog.js --write --text", "command-registry:generate": "node scripts/ci/generate-command-registry.js", diff --git a/skills/anti-slop/SKILL.md b/skills/anti-slop/SKILL.md new file mode 100644 index 000000000..d54999f1c --- /dev/null +++ b/skills/anti-slop/SKILL.md @@ -0,0 +1,70 @@ +--- +name: anti-slop +description: Detect and remove slop in code, tests, process, and prose. Bloat, fake work, and over-gating are upstream causes of dead code and shipping paralysis. +metadata: + origin: ECC +--- + +# Anti-Slop + +Slop is output that exists to look like work: code nobody calls, tests that catch nothing, gates that produce review rounds instead of releases, prose that pads. This skill names the patterns and sets the removal rules. It applies during planning, TDD, refactoring, review, and cleanup, not as a separate pass at the end. + +## When to Activate + +- Any refactor or cleanup pass (pair with `refactor-clean` and `orch-refine-code`) +- Plan review before implementation (pair with `roast-me`) +- Writing or reviewing tests during `tdd-workflow` +- Reviewing a PR whose diff is bigger than its behavior change +- Writing docs, comments, commit messages, or status reports + +## Core Concepts + +### Code slop + +- Zero-caller exports die on sight. If nothing calls it, delete it in the same PR that finds it. Grep for dynamic references first; if genuinely uncertain, mark with a dated removal note and delete on the next pass. +- One canonical implementation. Two systems doing one job is a defect even when both work. Merge or delete; never add a third. +- No speculative generality: no abstraction before the second concrete caller exists, no config for values that never vary, no interface with one implementer. +- Diff minimalism: ship the smallest diff that changes the behavior. Drive-by edits, reformatting, and renames go in separate commits or not at all. +- Comments state constraints the code cannot show. Never narrate the next line, never explain why the change is correct (that belongs in review), never apologize. + +### Test slop + +- Every test pays rent: it must name the real failure it catches. A test that cannot fail for a reason a user would care about gets deleted. +- Redundant coverage is negative value: it slows the suite and buries signal. When two tests always fail together, one of them goes. +- Asserting mocks against mocks proves wiring, not behavior. Prefer one integration test over five mock-echo tests. +- Delete tests in the same PR that obsoletes them. A skipped test is a lie with a TODO attached. + +### Process slop + +- Review rounds are capped at 2 by default. A further round needs a confirmed P0/P1 finding, not style or speculative hardening. Non-blocking findings ship as logged follow-ups with an owner. +- A gate that can spawn unbounded iterations is a defect in the gate, not diligence. +- Fake-work test: if this artifact (report, plan, scaffold, harness) were deleted, would anything user-visible change? If no, it was slop. +- Working software in front of users is the only terminal state. Local green, review chatter, and merged-but-undeployed are intermediate states and must be reported as such. + +### Prose slop (docs, commits, reports) + +- No throat-clearing openers, no filler adverbs, no "isn't just X" constructions, no em dashes, no hedged conclusions. +- Lead with the outcome. State numbers exactly. Cut anything that reads like a pull quote. + +## Anti-Patterns + +- "Might need it later" (delete it; git remembers) +- Wrapper functions that add a name and nothing else +- Re-exports that exist to shorten one import +- try/except that logs and continues, hiding the failure +- A second full review "to be safe" after a clean verdict +- Coverage targets hit by asserting getters and constants + +## Best Practices + +- Run the cleanup loop from `refactor-clean`: detect, categorize, delete one at a time, test after each. +- Roast the plan before writing code (`roast-me`): every component answers "why does this exist." +- Track deletions as wins. Lines removed with tests green is the strongest cleanup signal there is. + +## Related Skills + +- `roast-me`, `tdd-workflow`, `orch-refine-code` + +## Credits + +Concepts adapted from MIT-licensed prior art: rand/cc-polymath (anti-slop), hardikpandya/stop-slop, dmmulroy/anti-slop, ehmo/slopkit. diff --git a/skills/orch-refine-code/SKILL.md b/skills/orch-refine-code/SKILL.md index a57ba5c89..e30935404 100644 --- a/skills/orch-refine-code/SKILL.md +++ b/skills/orch-refine-code/SKILL.md @@ -29,10 +29,15 @@ engine in [`orch-pipeline`](../orch-pipeline/SKILL.md). ## How It Works 1. Run the `orch-pipeline` engine with the settings above. -2. For dead-code / duplication sweeps, delegate to the `refactor-cleaner` agent - (it runs knip / depcheck / ts-prune and removes safely). -3. Stop at **Gate 1** (restructure plan) and **Gate 2** (pre-commit). -4. Commit as `refactor:` — the diff must be behavior-neutral. +2. Before Gate 1, run a [`roast-me`](../roast-me/SKILL.md) pass on the + restructure plan: every surviving component answers "why does this exist"; + FATAL findings block the plan. +3. For dead-code / duplication sweeps, delegate to the `refactor-cleaner` agent + (it runs knip / depcheck / ts-prune and removes safely), applying the + [`anti-slop`](../anti-slop/SKILL.md) rules: zero-caller exports die, one + canonical implementation, tests deleted in the same PR that obsoletes them. +4. Stop at **Gate 1** (restructure plan) and **Gate 2** (pre-commit). +5. Commit as `refactor:` — the diff must be behavior-neutral. ## Example diff --git a/skills/roast-me/SKILL.md b/skills/roast-me/SKILL.md new file mode 100644 index 000000000..d2ba9ad65 --- /dev/null +++ b/skills/roast-me/SKILL.md @@ -0,0 +1,72 @@ +--- +name: roast-me +description: Adversarial critique with a verdict that gates execution. Run on plans before implementation and on designs before they grow components. +metadata: + origin: ECC +--- + +# Roast Me + +A structured hostile review of an artifact: plan, design, diff, spec, or idea. The output is a verdict, not encouragement. Fatal findings block implementation until fixed or explicitly overridden by the owner in writing. + +## When to Activate + +- At plan time for any multi-file change (orch pipelines run this before implementation starts) +- On request: "roast this", "red-team this", "poke holes in this" +- Before adding a new system, service, dependency, or abstraction +- When a workstream has run more than 2 days without a production-visible result + +## Core Concepts + +### Forced questions + +Every roast answers all six: + +1. What must be true for this to work, and which of those assumptions is unverified? +2. How does it break? Name specific failure paths, never generic "risk." +3. What would a competitor shipping in two days cut from this plan? +4. What is missing that a strong version would have? +5. What existing thing already does this job? A second system for the same job is a finding. +6. What does done look like, and what does failure look like? + +### Verdict tiers + +- **FATAL**: breaks the core purpose, or the component has no reason to exist. Blocks implementation. +- **IMPORTANT**: materially weakens the result. Fix now or log with an owner and a date. +- **MINOR**: noise. Mention once, never re-litigate. + +Each finding also gets a triage label: worth-fixing, matter-of-taste, or wrong. Only worth-fixing findings survive to the fix list. + +### The gate + +Implementation does not start while a FATAL stands. The owner may override with an explicit written acceptance of the named risk. IMPORTANT findings never block on their own; they ship as logged follow-ups per the `anti-slop` process rules. + +### Tone + +Attack the work, never the person. Specific beats harsh: quote the exact line, name the exact component. No praise padding; earned strengths get one line at the end. If context is insufficient to judge, ask the missing questions instead of hedging a verdict. + +### Scope-creep prevention + +The roast identifies problems; it does not redesign. Alternatives are capped at 3, each one sentence with the tradeoff named. A roast that produces a bigger plan than the one it reviewed has failed. + +## Anti-Patterns + +- Roasting after implementation as theater +- Generic critiques that fit any plan ("consider edge cases") +- Verdicts with no gate: a FATAL that everyone reads and ignores +- A third review round without a new confirmed P0/P1 +- Softening: "this might potentially be worth considering" + +## Best Practices + +- One roast per plan, one re-roast after fixes. Then build. +- Archive the verdict next to the plan so the fix list stays checkable. +- Pair with `anti-slop` during cleanup: the roast kills components, anti-slop kills lines. + +## Related Skills + +- `anti-slop`, `tdd-workflow`, `orch-refine-code` + +## Credits + +Concepts adapted from MIT-licensed prior art: premdevai/brutal-claude-skills (devils-advocate, pre-mortem), dlowd/claude-skill-critique (triage labels), serbanghita/claude-code-plan-critique (critique-gated execution). diff --git a/skills/tdd-workflow/SKILL.md b/skills/tdd-workflow/SKILL.md index 03503df17..adc4be5df 100644 --- a/skills/tdd-workflow/SKILL.md +++ b/skills/tdd-workflow/SKILL.md @@ -38,6 +38,8 @@ Plan safety checklist before continuing: Do not treat the plan as permission to skip TDD. The plan supplies intent and task structure; the RED/GREEN cycle supplies proof. +For multi-file plans, run a `roast-me` pass before Step 1: every planned component answers "why does this exist," FATAL findings block implementation, and alternatives are capped at three. This is where scope creep dies, not in review. + ## Core Principles ### 1. Tests BEFORE Code @@ -49,6 +51,8 @@ ALWAYS write tests first, then implement code to make tests pass. - Error scenarios tested - Boundary conditions verified +Coverage is a floor, not a goal. Per `anti-slop`: every test names the real failure it catches; a test that cannot fail for a reason a user would care about gets deleted, and tests obsoleted by a change are removed in the same PR. Redundant coverage buries signal and is treated as a defect, not diligence. + ### 3. Test Types #### Unit Tests