Commit Graph
46 Commits
Author SHA1 Message Date
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)
2026-02-09 01:32:22 -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
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
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
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
2026-02-05 05:14:33 -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
Affaan Mustafa e3a1306369 fix: remove duplicate hooks declaration from plugin.json
Fixes #103, #106, #108

Claude Code automatically loads hooks/hooks.json by convention.
Explicitly declaring it in plugin.json causes a duplicate detection
error: "Duplicate hooks file detected"

Added regression test to prevent this from being reintroduced.
2026-01-28 23:02:05 -08:00
Affaan Mustafa 8894e1bced docs: update README with skill-create and instinct commands 2026-01-27 04:01:06 -08:00
Affaan Mustafa 9bc587aaae feat: add skill-create and continuous-learning-v2 commands
New commands:
- /skill-create: Local git history analysis to generate SKILL.md files
- /instinct-status: Show learned instincts with confidence levels
- /instinct-import: Import instincts from files or repos
- /instinct-export: Export instincts for sharing
- /evolve: Cluster instincts into skills/commands/agents

These integrate the continuous-learning-v2 system and provide a local
alternative to the Skill Creator GitHub App for pattern extraction.
2026-01-27 04:01:06 -08:00
Affaan MustafaandGitHub 0ced59a26b Merge pull request #91 from Hor1zonZzz/fix/readme-rules-limitation
docs: add note about rules limitation in plugin installation
2026-01-27 02:04:04 -08:00
Affaan MustafaandGitHub 2563d1e0ab Merge pull request #92 from jhsong-musinsa/fix/plugin-manifest-validation
fix: use array format for plugin manifest fields
2026-01-27 02:03:02 -08:00
Affaan MustafaandGitHub 5dc1edba49 Merge pull request #93 from pangerlkr/patch-3
Create PLUGIN_SCHEMA_NOTES.md
2026-01-27 02:02:03 -08:00
Affaan Mustafa accbb470cc feat: add proper header banner to shortform guide 2026-01-26 21:26:35 -08:00
Affaan Mustafa ff67b03a25 feat: add images and rename guides to the-shortform-guide.md and the-longform-guide.md
- Renamed SHORTHAND-GUIDE.md to the-shortform-guide.md
- Renamed LONGFORM-GUIDE.md to the-longform-guide.md
- Added assets/images/shortform/ with 11 images for shorthand guide
- Added assets/images/longform/ with 10 images for longform guide
- Updated both guides with embedded images from original X articles
- Images include: hackathon tweet, command chaining, hooks, MCPs, plugins,
  tmux demo, GitHub PR review, Zed editor, VS Code extension, custom statusline,
  session storage, model selection table, pricing table, mgrep benchmark,
  Boris parallel terminals, two-terminal setup, and 25k stars celebration
2026-01-26 20:45:11 -08:00
Affaan Mustafa 779085e272 fix: add missing agents and hooks declarations to plugin.json
- Added agents field pointing to ./agents directory (10 agents)
- Added hooks field pointing to ./hooks/hooks.json
- These were supported but not declared, potentially causing
  agents not to load when installed as a plugin

Addresses part of #88 (rules still need manual install per
upstream limitation - filed anthropics/claude-code#21163)
2026-01-26 20:00:20 -08:00
Affaan Mustafa 5c63fa9006 feat: v1.1.0 release - session ID tracking, async hooks, new skills
- Add session ID to session filenames (Issue #62)
- Add getSessionIdShort() helper for unique per-session tracking
- Add async hooks documentation with example
- Create iterative-retrieval skill for progressive context refinement
- Add continuous-learning-v2 skill with instinct-based learning
- Add ecc.tools ecosystem section to README
- Update skills list in README

All 67 tests passing.
2026-01-25 18:21:27 -08:00
Affaan Mustafa b9b7831ef5 fix: multiple community-reported issues
- feat(plugin.json): add agents declaration to make 9 agents visible
  in /agents command (fixes #66, closes PR #67)

- fix(backend-patterns): correct requirePermission HOF pattern to
  properly wrap handlers instead of expecting Request directly
  (fixes #54, closes PR #63)

- docs(user-CLAUDE): add privacy guideline about redacting secrets
  from logs before sharing (fixes #38, closes PR #39)

- fix(eval-harness): add mandatory frontmatter with name, description,
  and tools fields (closes PR #58)
2026-01-25 15:43:48 -08:00
Affaan Mustafa 660e0d3bad fix: security and documentation fixes
- fix(utils.js): prevent command injection in commandExists() by using
  spawnSync instead of execSync with string interpolation, and validate
  input to only allow alphanumeric chars, dash, underscore, dot (#42)

- fix(utils.js): add security documentation to runCommand() warning
  against passing user-controlled input

- fix(setup-package-manager.js): replace <script> and <binary> with
  [script-name] and [binary-name] to avoid XSS scanner false positives (#43)

- fix(doc-updater.md): replace invalid 'npx ts-morph' with correct
  'npx tsx scripts/codemaps/generate.ts' since ts-morph is a library,
  not a CLI tool (#51)

Fixes #42, #43, #51
2026-01-24 01:36:02 -08:00
Affaan Mustafa a7bc5f2a90 revert: remove hooks declaration - auto-loaded by convention
Claude Code automatically loads hooks/hooks.json if it exists.
Declaring it in plugin.json causes "Duplicate hooks file" error.

Fixes #52
2026-01-23 22:27:21 -08:00
Affaan Mustafa 22ad036cb5 fix: add hooks declaration to plugin.json for proper hook loading
Previously hooks were not loaded when the plugin was installed because
plugin.json didn't declare the hooks path. This caused errors like:
"Stop hook error: .../skills/continuous-learning/evaluate-session.sh: No such file"

The hooks are defined in hooks/hooks.json and use JS implementations in
scripts/hooks/ directory.
2026-01-23 20:47:22 -08:00
Affaan Mustafa c3f1594acd fix: move session-end hooks from Stop to SessionEnd
Stop hook fires after every response, SessionEnd fires only when
session actually terminates. This was causing session-end.sh and
evaluate-session.sh to run on every response instead of at session end.

Fixes issue reported by user about hooks triggering every response.
2026-01-22 21:06:23 -08:00
Affaan Mustafa 19345df79d fix: remove duplicate hooks field from plugin.json
Claude Code automatically loads hooks/hooks.json from the plugin directory.
Explicitly specifying it in plugin.json causes a duplicate hooks error:

  Duplicate hooks file detected: ./hooks/hooks.json resolves to already-loaded
  file .../hooks/hooks.json. The standard hooks/hooks.json is loaded
  automatically, so manifest.hooks should only reference additional hook files.

Fixes #29
2026-01-22 16:45:07 -08:00
Affaan Mustafa 73bda1aad6 fix: use ${CLAUDE_PLUGIN_ROOT} for hook script paths
Relative paths like ./hooks/... fail when the plugin is installed
because hooks run in the project directory, not the plugin directory.
Using ${CLAUDE_PLUGIN_ROOT} ensures scripts are found regardless of
where the plugin is installed.

Fixed paths:
- hooks/strategic-compact/suggest-compact.sh
- hooks/memory-persistence/pre-compact.sh
- hooks/memory-persistence/session-start.sh
- hooks/memory-persistence/session-end.sh
- skills/continuous-learning/evaluate-session.sh
2026-01-22 16:42:04 -08:00
Affaan Mustafa ecfbbd3da1 fix: use relative path './' for plugin source instead of GitHub object
Using './' lets Claude Code use the already-cloned marketplace repo
directly instead of fetching from GitHub again. This avoids potential
double-fetch issues and simplifies the installation.
2026-01-22 15:02:48 -08:00
Affaan Mustafa ee5affbdbd fix: remove agents field temporarily to debug validation 2026-01-22 13:37:10 -08:00
Affaan Mustafa d362ae65eb fix: use string format for repository field in plugin.json 2026-01-22 13:35:57 -08:00
Affaan Mustafa 9e8006c8ca fix: use GitHub source object in marketplace.json
Fixes 'Invalid schema: plugins.0.source: Invalid input' error when
installing via /plugin marketplace add. The source field needs to be
a GitHub source object, not a relative path, when the plugin is at
the repo root.
2026-01-22 13:14:19 -08:00
Affaan Mustafa 5010f82c3e feat: package as Claude Code plugin with marketplace distribution
- Add .claude-plugin/plugin.json manifest for direct installation
- Add .claude-plugin/marketplace.json for marketplace distribution
- Reorganize skills to proper skill-name/SKILL.md format
- Update hooks.json with relative paths for portability
- Add new skills: continuous-learning, strategic-compact, eval-harness, verification-loop
- Add new commands: checkpoint, eval, orchestrate, verify
- Update README with plugin installation instructions

Install via:
  /plugin marketplace add affaan-m/everything-claude-code
  /plugin install everything-claude-code@everything-claude-code
2026-01-22 04:16:49 -08:00
Affaan MustafaandGitHub 4491f15577 Clarify README description of the repository 2026-01-21 12:23:50 -08:00
Affaan Mustafa e6440d32b8 docs: restructure README to flow shorthand → longform guides together 2026-01-21 12:05:58 -08:00
Affaan MustafaandGitHub fa0928a3d7 Enhance README with update section and resources
Added update section with an image and a link to a guide.
2026-01-21 11:40:43 -08:00
Affaan Mustafa 2d6fd7007e feat: add strategic-compact hook and update hooks.json with all hooks 2026-01-20 19:57:05 -08:00
Affaan Mustafa f96ef1e6ab feat: add memory persistence hooks and context files 2026-01-20 18:51:09 -08:00
Affaan Mustafa 7d3ea0f576 feat: add strategic compact skill 2026-01-20 18:40:02 -08:00
Affaan Mustafa 6bf102dbaa feat: add continuous learning skill with session examples
Stop hook-based pattern extraction - no README, comments in .sh file.
2026-01-20 18:33:33 -08:00
Affaan MustafaandGitHub 3c1e7d9910 Clarify repository purpose and additional resources
Updated README to clarify repository purpose and resources.
2026-01-17 18:14:33 -08:00
Affaan MustafaandGitHub 62a80df941 Update README with image and guide link 2026-01-17 18:07:13 -08:00
Affaan MustafaandGitHub 6eefb41d61 Update README with guide reading reminder
Added a note to read the complete guide before configs.
2026-01-17 18:06:52 -08:00
Affaan MustafaandGitHub d7cf890b58 Fix formatting in README.md for guide link 2026-01-17 18:06:40 -08:00
Affaan MustafaandGitHub e57979c1e9 Update README with image and guide link
Added an image to the README and updated guide link.
2026-01-17 18:06:03 -08:00
Affaan Mustafa 45959c326e Initial release: Complete Claude Code configuration collection
Battle-tested configs from 10+ months of daily Claude Code usage.
Won Anthropic x Forum Ventures hackathon building zenith.chat.

Includes:
- 9 specialized agents (planner, architect, tdd-guide, code-reviewer, etc.)
- 9 slash commands (tdd, plan, e2e, code-review, etc.)
- 8 rule files (security, coding-style, testing, git-workflow, etc.)
- 7 skills (coding-standards, backend-patterns, frontend-patterns, etc.)
- Hooks configuration (PreToolUse, PostToolUse, Stop)
- MCP server configurations (15 servers)
- Plugin/marketplace documentation
- Example configs (project CLAUDE.md, user CLAUDE.md, statusline)

Read the full guide: https://x.com/affaanmustafa/status/2012378465664745795
2026-01-17 17:49:33 -08:00