mirror of
https://github.com/affaan-m/everything-claude-code.git
synced 2026-04-03 15:43:31 +08:00
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
This commit is contained in:
102
.opencode/commands/refactor-clean.md
Normal file
102
.opencode/commands/refactor-clean.md
Normal file
@@ -0,0 +1,102 @@
|
||||
---
|
||||
description: Remove dead code and consolidate duplicates
|
||||
agent: refactor-cleaner
|
||||
subtask: true
|
||||
---
|
||||
|
||||
# Refactor Clean Command
|
||||
|
||||
Analyze and clean up the codebase: $ARGUMENTS
|
||||
|
||||
## Your Task
|
||||
|
||||
1. **Detect dead code** using analysis tools
|
||||
2. **Identify duplicates** and consolidation opportunities
|
||||
3. **Safely remove** unused code with documentation
|
||||
4. **Verify** no functionality broken
|
||||
|
||||
## Detection Phase
|
||||
|
||||
### Run Analysis Tools
|
||||
|
||||
```bash
|
||||
# Find unused exports
|
||||
npx knip
|
||||
|
||||
# Find unused dependencies
|
||||
npx depcheck
|
||||
|
||||
# Find unused TypeScript exports
|
||||
npx ts-prune
|
||||
```
|
||||
|
||||
### Manual Checks
|
||||
|
||||
- Unused functions (no callers)
|
||||
- Unused variables
|
||||
- Unused imports
|
||||
- Commented-out code
|
||||
- Unreachable code
|
||||
- Unused CSS classes
|
||||
|
||||
## Removal Phase
|
||||
|
||||
### Before Removing
|
||||
|
||||
1. **Search for usage** - grep, find references
|
||||
2. **Check exports** - might be used externally
|
||||
3. **Verify tests** - no test depends on it
|
||||
4. **Document removal** - git commit message
|
||||
|
||||
### Safe Removal Order
|
||||
|
||||
1. Remove unused imports first
|
||||
2. Remove unused private functions
|
||||
3. Remove unused exported functions
|
||||
4. Remove unused types/interfaces
|
||||
5. Remove unused files
|
||||
|
||||
## Consolidation Phase
|
||||
|
||||
### Identify Duplicates
|
||||
|
||||
- Similar functions with minor differences
|
||||
- Copy-pasted code blocks
|
||||
- Repeated patterns
|
||||
|
||||
### Consolidation Strategies
|
||||
|
||||
1. **Extract utility function** - for repeated logic
|
||||
2. **Create base class** - for similar classes
|
||||
3. **Use higher-order functions** - for repeated patterns
|
||||
4. **Create shared constants** - for magic values
|
||||
|
||||
## Verification
|
||||
|
||||
After cleanup:
|
||||
|
||||
1. `npm run build` - builds successfully
|
||||
2. `npm test` - all tests pass
|
||||
3. `npm run lint` - no new lint errors
|
||||
4. Manual smoke test - features work
|
||||
|
||||
## Report Format
|
||||
|
||||
```
|
||||
Dead Code Analysis
|
||||
==================
|
||||
|
||||
Removed:
|
||||
- file.ts: functionName (unused export)
|
||||
- utils.ts: helperFunction (no callers)
|
||||
|
||||
Consolidated:
|
||||
- formatDate() and formatDateTime() → dateUtils.format()
|
||||
|
||||
Remaining (manual review needed):
|
||||
- oldComponent.tsx: potentially unused, verify with team
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
**CAUTION**: Always verify before removing. When in doubt, ask or add `// TODO: verify usage` comment.
|
||||
Reference in New Issue
Block a user