Commit Graph

112 Commits

Author SHA1 Message Date
Affaan Mustafa
75ab8e6194 fix: eliminate child process spawns during session startup (#162)
getAvailablePackageManagers() spawned where.exe/which for each package
manager (npm, pnpm, yarn, bun). During SessionStart hooks, these 4+
child processes combined with Bun's own initialization exceeded the
spawn limit on Windows, freezing the terminal.

Fix: Remove process spawning from the hot path. Steps 1-5 of detection
(env var, project config, package.json, lock file, global config) already
cover all file-based detection. If none match, default to npm without
spawning. Also fix getSelectionPrompt() to list supported PMs without
checking availability.
2026-02-12 00:01:23 -08:00
Affaan Mustafa
0f1597dccf ci: trigger AgentShield action with fail-on-findings fix 2026-02-11 23:59:41 -08:00
Affaan Mustafa
422467dbe0 fix(sessions): also fix require() paths in Cursor and zh-CN sessions commands
Same fix as the main sessions.md — use CLAUDE_PLUGIN_ROOT with
~/.claude/ fallback instead of relative paths.
2026-02-11 23:57:50 -08:00
Affaan Mustafa
87d19f97a6 fix(sessions): make session hooks actually persist and load context (#187)
session-end.js: Extract meaningful summaries from CLAUDE_TRANSCRIPT_PATH
instead of writing blank template files. Pulls user messages, tools used,
and files modified from the session transcript JSONL.

session-start.js: Output the latest session summary to stdout (via the
output() helper) so it gets injected into Claude's conversation context,
instead of only logging to stderr which just shows briefly in the terminal.
2026-02-11 23:56:41 -08:00
Affaan Mustafa
5febfc84f5 fix(sessions): resolve require() paths for plugin installations (#200)
Replace relative require('./scripts/lib/...') with dynamic path resolution
using CLAUDE_PLUGIN_ROOT env var (set by Claude Code for plugins) with
fallback to ~/.claude/ for manual installations. This fixes /sessions
command failing when ECC is installed as a plugin.
2026-02-11 23:54:38 -08:00
Affaan Mustafa
9406ffbfc9 ci: trigger action with all dist files 2026-02-11 23:52:13 -08:00
Affaan Mustafa
fb449eae0d ci: trigger AgentShield action with updated v1 tag 2026-02-11 23:50:55 -08:00
Affaan Mustafa
e41ee0c858 fix: resolve multiple reported issues (#205, #182, #188, #172, #173) (#207)
* fix: resolve multiple reported issues (#205, #182, #188, #172, #173)

- fix(observe.sh): replace triple-quote JSON parsing with stdin pipe to
  prevent ~49% parse failures on payloads with quotes/backslashes/unicode
- fix(hooks.json): correct matcher syntax to use simple tool name regexes
  instead of unsupported logical expressions; move command/path filtering
  into hook scripts; use exit code 2 for blocking hooks
- fix(skills): quote YAML descriptions containing colons in 3 skill files
  and add missing frontmatter to 2 skill files for Codex CLI compatibility
- feat(rules): add paths: filters to all 15 language-specific rule files
  so they only load when working on matching file types
- fix(agents): align model fields with CONTRIBUTING.md recommendations
  (opus for planner/architect, sonnet for reviewers/workers, haiku for
  doc-updater)

* ci: use AgentShield GitHub Action instead of npx

Switch from npx ecc-agentshield to uses: affaan-m/agentshield@v1
for proper GitHub Action demo and marketplace visibility.
2026-02-11 23:48:45 -08:00
Affaan Mustafa
3bc8672432 Merge pull request #183 from moonlandar/feat/cpp-testing-skill
Feat/cpp testing skill
2026-02-11 05:56:38 -08:00
Affaan Mustafa
0278224b27 Merge pull request #189 from zdocapp/upstreawm/fix-markdownlint-error
fix: resolve markdownlint issues in documentation
2026-02-11 05:56:30 -08:00
Affaan Mustafa
b86e4a4be6 Merge pull request #190 from JackyST0/patch-1
Update README with Skills Directory link
2026-02-11 05:56:27 -08:00
Affaan Mustafa
2f3b9aa4b9 ci: add AgentShield security scan workflow 2026-02-11 03:40:13 -08:00
Affaan Mustafa
77be80c69b feat: add AgentShield security-scan skill and README integration
New skill: /security-scan wraps ecc-agentshield to audit .claude/ configs
for vulnerabilities, misconfigs, and injection risks.

Covers: CLAUDE.md secrets, settings.json permissions, MCP server risks,
hook injection, agent tool restrictions. Produces A-F security grade.

Also adds AgentShield section to Ecosystem Tools in README with
links to GitHub repo and npm package.
2026-02-11 03:27:07 -08:00
Affaan Mustafa
72de58a0cd fix: include .opencode/ in npm package files and add opencode keyword
The .opencode/ directory was missing from the files array, so the npm
package only shipped Claude Code and Cursor configs. Selectively include
.opencode/ subdirectories to avoid bundling node_modules and dist.
2026-02-11 02:35:43 -08:00
Affaan Mustafa
261332dc50 feat: add Cursor IDE support with pre-translated configs
Add complete .cursor/ directory with rules, agents, skills, commands,
and MCP config adapted for Cursor's format. This makes ecc-universal
a truly cross-IDE package supporting Claude Code, Cursor, and OpenCode.

- 27 rule files with YAML frontmatter (description, globs, alwaysApply)
- 13 agent files with full model IDs and readonly flags
- 30 skill directories (identical Agent Skills standard, no translation)
- 31 command files (5 multi-* stubbed for missing codeagent-wrapper)
- MCP config with Cursor env interpolation syntax
- README.md and MIGRATION.md documentation
- install.sh --target cursor flag for project-scoped installation
- package.json updated with .cursor/ in files and cursor keywords
2026-02-11 02:31:52 -08:00
jxtan
08278a790d Update README with Skills Directory link
Adding awesome-agent-skills as a related resource.

A curated list of 40+ AI Agent Skills with cross-platform installer (bash/PowerShell), supporting Cursor, Claude Code, Copilot, Windsurf, Codex, and OpenCode.

GitHub: https://github.com/JackyST0/awesome-agent-skills
2026-02-10 17:05:22 +08:00
neo
dfd9959540 fix: use 4-backtick fences for nested code blocks
Use quadruple backticks to properly fence markdown content containing
triple-backtick code blocks, resolving markdownlint MD041 violations.
2026-02-10 15:18:50 +08:00
neo
6e5a11ab74 fix: resolve markdownlint issues in documentation
- Remove trailing whitespace from inline code
- Add blank line before table
- Fix heading levels to ensure proper hierarchy
- Convert bare URLs to markdown links
2026-02-10 15:18:39 +08:00
Affaan Mustafa
6c2e0eace8 fix: update opencode-ecc plugin for SDK v1.1.53 and refresh README stats
- Fix PluginContext → PluginInput type rename in @opencode-ai/plugin
- Import tool from @opencode-ai/plugin/tool subpath (fixes broken barrel export)
- Update client.app.log() calls to use new options-object API signature
- Stringify tool execute return values (SDK now requires Promise<string>)
- Add .js extensions to relative imports for NodeNext module resolution
- Update README star count (42K+) and contributor count (24)
v1.5.0
2026-02-09 01:32:22 -08:00
moonlander
a5ec19cb8d refine according to CONTRIBUTING.md 2026-02-09 17:10:32 +08:00
moonlander
92a0441e9d Add cpp-testing skill 2026-02-09 16:05:57 +08:00
Affaan Mustafa
77bb669dc5 Merge pull request #179 from maurez83630-cmyk/revert-155-pr-fix
Revert "fix: correct markdown code block syntax in go-test.md"
2026-02-08 21:11:07 -08:00
maurez83630-cmyk
b9d09cbebf Revert "fix: correct markdown code block syntax in go-test.md"
This reverts commit 1ce3a98217.
2026-02-09 02:15:30 +01:00
ericcai
d2191d09a2 fix: sync plugin.json version with latest tag (#171)
Sync plugin.json version to 1.4.1, add CI check to verify versions match on release, and add release.sh script. Fixes #170.
2026-02-08 16:18:49 -08:00
Jonathan Rhyne
11ad2a875f feat: add nutrient-document-processing skill (#166)
Add nutrient-document-processing skill for PDF conversion, OCR, redaction, signing, and form filling via Nutrient DWS API.
2026-02-08 16:12:08 -08:00
Mark L
33186f1a93 fix: preserve directory structure in installation to prevent file overwrites (#169)
Fix installation instructions that caused file overwrites. Adds install.sh script and preserves directory structure. Fixes #164.
2026-02-08 16:12:05 -08:00
Affaan Mustafa
90ad2f3885 docs: update README with latest stats and What's New section
- Add forks (5K+) and contributors (22) badges
- Add Python and Java language badges
- Add stats summary line (41K+ stars, 5K+ forks, 22 contributors)
- Add What's New section covering v1.2.0 through v1.4.1
- Update What's Inside tree with new commands (PM2, multi-agent)
- Update skills list with Django, Spring Boot, Python, configure-ecc
- Update agents list with python-reviewer, database-reviewer
- Update OpenCode feature parity table with latest counts
- Update contribution ideas to reflect current language coverage
2026-02-06 02:22:21 -08:00
ericcai
e4e94a7e70 fix: preserve content after frontmatter in parse_instinct_file() (#161)
parse_instinct_file() was appending the instinct and resetting state
when frontmatter ended (second ---), before any content lines could be
collected. This caused all content (Action, Evidence, Examples) to be
lost during import.

Fix: only set in_frontmatter=False when frontmatter ends. The existing
logic at the start of next frontmatter (or EOF) correctly appends the
instinct with its collected content.

Fixes #148
v1.4.1
2026-02-06 01:00:48 -08:00
Affaan Mustafa
c0fdd89c49 docs: enhance CONTRIBUTING.md with detailed templates
- Add table of contents
- Add detailed skill contribution template
- Add agent contribution template with field descriptions
- Add hook examples with matcher syntax
- Add command template
- Add PR title format and checklist
v1.4.0
2026-02-05 17:18:06 -08:00
Affaan Mustafa
0f7b3081ee feat: add GitHub Sponsors support
- Add FUNDING.yml to enable sponsor button
- Add SPONSORS.md with tier information
2026-02-05 17:12:10 -08:00
Hor1zonZzz
86b5a53e5d refactor(rules): restructure into common + language-specific directories
* refactor(rules): restructure rules into common + language-specific directories

- Split 8 flat rule files into common/, typescript/, python/, golang/
- common/ contains language-agnostic principles (no code examples)
- typescript/ extracts TS/JS specifics (Zod, Playwright, Prettier hooks, etc.)
- python/ adds Python rules (PEP 8, pytest, black/ruff, bandit)
- golang/ adds Go rules (gofmt, table-driven tests, gosec, functional options)
- Replace deprecated ultrathink with extended thinking documentation
- Add README.md with installation guide and new-language template

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* Fix installation commands for rules

Updated installation instructions to copy all rules to a single directory.

* docs: update README.md to reflect new rules directory structure

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

---------

Co-authored-by: Hor1zonZzz <Hor1zonZzz@users.noreply.github.com>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-05 05:58:06 -08:00
Hor1zonZzz
90ad4edb1f feat(skills): add configure-ecc interactive installation wizard
Add a new skill that guides users through selective installation of
ECC skills and rules via AskUserQuestion. Clones the repo to /tmp,
lets users choose components and install level (user/project), verifies
path correctness, offers optimization, and cleans up on completion.

Co-authored-by: Hor1zonZzz <Hor1zonZzz@users.noreply.github.com>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-05 05:58:02 -08:00
Skyler Anderson
6b424e31ff feat: add pm2 and multi-agent orchestration commands
Add 6 new command files:
- pm2.md: PM2 process management for running multiple services
- multi-plan.md: Multi-agent planning orchestration
- multi-execute.md: Multi-agent parallel execution
- multi-backend.md: Backend-focused multi-agent workflow
- multi-frontend.md: Frontend-focused multi-agent workflow
- multi-workflow.md: General multi-agent workflow coordination

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-05 05:57:58 -08:00
zdoc
88054de673 docs: Add Chinese (zh-CN) translations for all documentation
* docs: add Chinese versions docs

* update

---------

Co-authored-by: neo <neo.dowithless@gmail.com>
2026-02-05 05:57:54 -08:00
zdoc
1ce3a98217 fix: correct markdown code block syntax in go-test.md
* fix: correct markdown code block syntax in go-test.md

* fix: remove language specifier from markdown code block in go-test.md

---------

Co-authored-by: neo <neo.dowithless@gmail.com>
2026-02-05 05:57:49 -08:00
Affaan Mustafa
6d440c036d feat: complete OpenCode plugin support with hooks, tools, and commands
Major OpenCode integration overhaul:

- llms.txt: Comprehensive OpenCode documentation for LLMs (642 lines)
- .opencode/plugins/ecc-hooks.ts: All Claude Code hooks translated to OpenCode's plugin system
- .opencode/tools/*.ts: 3 custom tools (run-tests, check-coverage, security-audit)
- .opencode/commands/*.md: All 24 commands in OpenCode format
- .opencode/package.json: npm package structure for opencode-ecc
- .opencode/index.ts: Main plugin entry point

- Delete incorrect LIMITATIONS.md (hooks ARE supported via plugins)
- Rewrite MIGRATION.md with correct hook event mapping
- Update README.md OpenCode section to show full feature parity

OpenCode has 20+ events vs Claude Code's 3 phases:
- PreToolUse → tool.execute.before
- PostToolUse → tool.execute.after
- Stop → session.idle
- SessionStart → session.created
- SessionEnd → session.deleted
- Plus: file.edited, file.watcher.updated, permission.asked, todo.updated

- 12 agents: Full parity
- 24 commands: Full parity (+1 from original 23)
- 16 skills: Full parity
- Hooks: OpenCode has MORE (20+ events vs 3 phases)
- Custom Tools: 3 native OpenCode tools

The OpenCode configuration can now be:
1. Used directly: cd everything-claude-code && opencode
2. Installed via npm: npm install opencode-ecc
v1.3.0
2026-02-05 05:14:33 -08:00
xcfdszzr
d85b1ae52e feat: add /sessions command for session history management (#142)
Add a new /sessions command to manage Claude Code session history with
alias support for quick access to previous sessions.

Features:
- List sessions with pagination and filtering (by date, ID)
- Load and view session content and metadata
- Create memorable aliases for sessions
- Remove aliases
- Display session statistics (lines, items, size)
- List all aliases

New libraries:
- scripts/lib/session-manager.js - Core session CRUD operations
- scripts/lib/session-aliases.js - Alias management with atomic saves

New command:
- commands/sessions.md - Complete command with embedded scripts

Modified:
- scripts/lib/utils.js - Add getAliasesPath() export
- scripts/hooks/session-start.js - Show available aliases on session start

Session format support:
- Old: YYYY-MM-DD-session.tmp
- New: YYYY-MM-DD-<short-id>-session.tmp

Aliases are stored in ~/.claude/session-aliases.json with Windows-
compatible atomic writes and backup support.

Co-authored-by: 王志坚 <wangzhijian10@bgyfw.com>
Co-authored-by: Claude <noreply@anthropic.com>
2026-02-02 16:51:37 -08:00
Freakk
e7cb442843 feat: add Python/Django support and enhance READMEs (#139)
## Python Support
- **agents/python-reviewer.md**: Expert Python code review agent with PEP 8 compliance, type hints, security, and performance checks
- **commands/python-review.md**: Slash command for automated Python code review with ruff, mypy, pylint, black, bandit
- **skills/python-patterns/SKILL.md**: Python idioms, type hints, error handling, context managers, decorators, concurrency
- **skills/python-testing/SKILL.md**: pytest configuration, fixtures, parametrization, mocking, async testing, TDD methodology

## Django Support
- **skills/django-patterns/SKILL.md**: Django architecture, DRF patterns, project structure, QuerySets, serializers, ViewSets, service layer, caching
- **skills/django-security/SKILL.md**: Django security best practices, authentication, CSRF, SQL injection, XSS prevention, production settings
- **skills/django-tdd/SKILL.md**: Django testing with pytest-django, Factory Boy, model testing, API testing, integration testing
- **skills/django-verification/SKILL.md**: Pre-deployment verification loop including migrations, tests, security scans, performance checks

## Documentation Enhancements
- **Quick Start**: Added 3-step quick start guide to all READMEs (EN, zh-CN, zh-TW)
- **Beautification**: Added emoji icons for better visual hierarchy across all READMEs
- **.claude-plugin/plugin.json**: Added python-reviewer to agents list

All files follow project conventions with proper frontmatter, markdown formatting, and comprehensive code examples.

Co-authored-by: Freakz3z <freakk@FreakkdeMacBook-Air.local>
Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
v1.2.0
2026-02-01 04:05:02 -08:00
manish sharma
ae2c063dde feat(skills): add Java Spring Boot skills
Adds 6 new skills for Java Spring Boot development:
- java-coding-standards: naming, immutability, Optional, streams
- springboot-patterns: REST API, service layer, caching, async
- springboot-tdd: JUnit 5, Mockito, MockMvc, Testcontainers
- springboot-security: Spring Security, validation, CSRF
- springboot-verification: Maven/Gradle build verification
- jpa-patterns: entity design, relationships

Thanks @examin!
v0.6.0
2026-01-29 18:54:19 -08:00
Affaan Mustafa
e9dfcdffd0 fix: use CLAUDE_PLUGIN_ROOT for continuous-learning-v2 paths
Fixes #113

The instinct commands referenced hardcoded paths that only work with
manual installation (~/.claude/skills/...). When installed as a plugin,
files are at ~/.claude/plugins/cache/.../skills/...

Changes:
- Updated instinct-status, instinct-import, evolve commands to use
  ${CLAUDE_PLUGIN_ROOT} with fallback to manual path
- Updated observe.sh hook documentation with both install methods
- Updated SKILL.md with plugin vs manual installation instructions
- Removed duplicate commands from skills/continuous-learning-v2/commands/
  (already exist in commands/)

Users should use ${CLAUDE_PLUGIN_ROOT} in their hooks config when
installed as a plugin.
2026-01-29 12:23:53 -08:00
Affaan Mustafa
675db95d53 feat: unify commands and skills (v1.2.0)
BREAKING: Commands are now loaded as skills per Claude Code's unified architecture.

Changes:
- Removed separate `commands` field from plugin.json
- Added `./commands/` to `skills` array
- Bumped version to 1.2.0
- Updated description to reflect unified structure

This aligns with Claude Code's documentation which has merged skills and
slash commands into a single concept. Both directories are now loaded
as skills, maintaining backwards compatibility.

Closes #111
2026-01-29 03:24:27 -08:00
Affaan Mustafa
ca584e2c3c fix: escape pipe in markdown table for markdownlint 2026-01-29 03:18:54 -08:00
Affaan Mustafa
a44a0553bb fix: resolve ESLint errors and update tests for project-name fallback
- Fix 16 ESLint no-unused-vars errors across hook scripts and tests
- Add eslint-disable comment for intentional control-regex in ANSI stripper
- Update session file test to use getSessionIdShort() instead of hardcoded 'default'
  (reflects PR #110's project-name fallback behavior)
- Add marketing/ to .gitignore (local drafts)
- Add skill-create-output.js (terminal output formatter)

All 69 tests now pass. CI should be green.
2026-01-29 02:58:51 -08:00
Affaan Mustafa
c9ef02ba42 docs: add requirements section and hooks field warning
- Add minimum Claude Code version requirement (v2.1.0+)
- Document hooks auto-loading behavior to prevent flip-flop cycles
- Add flip-flop history table to PLUGIN_SCHEMA_NOTES.md
- Reference issues #29, #52, #103 that were caused by this confusion
- Explain that regression test now prevents reintroduction

This documentation should prevent future confusion about whether to
add/remove the hooks field from plugin.json.
2026-01-29 00:46:05 -08:00
Affaan Mustafa
0c53ad88b4 Revert "docs: update shorthand to shortform terminology"
This reverts commit 58a97c8a84.
2026-01-29 00:11:11 -08:00
Dave Lin
c3430bdc8a docs: add Traditional Chinese translation
Complete Traditional Chinese (zh-TW) translation of documentation
2026-01-28 23:06:29 -08:00
Violet
fbe2e56677 docs: add simplified Chinese README
Adds README.zh-CN.md with language switcher in main README
2026-01-28 23:06:26 -08:00
Roei Bar Aviv
7c0bc25982 feat: add comprehensive CI/CD pipeline
Adds GitHub Actions workflows for CI, maintenance, and releases with multi-platform testing matrix.
2026-01-28 23:05:43 -08:00
ZERUI CHEN
58a97c8a84 docs: update shorthand to shortform terminology 2026-01-28 23:05:02 -08:00
Graceme Kamei
04ee20827c docs: add plugin manifest validation notes 2026-01-28 23:04:58 -08:00