mirror of
https://github.com/affaan-m/everything-claude-code.git
synced 2026-03-30 13:43:26 +08:00
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
72 lines
1.7 KiB
Markdown
72 lines
1.7 KiB
Markdown
---
|
|
description: Go code review for idiomatic patterns
|
|
agent: go-reviewer
|
|
subtask: true
|
|
---
|
|
|
|
# Go Review Command
|
|
|
|
Review Go code for idiomatic patterns and best practices: $ARGUMENTS
|
|
|
|
## Your Task
|
|
|
|
1. **Analyze Go code** for idioms and patterns
|
|
2. **Check concurrency** - goroutines, channels, mutexes
|
|
3. **Review error handling** - proper error wrapping
|
|
4. **Verify performance** - allocations, bottlenecks
|
|
|
|
## Review Checklist
|
|
|
|
### Idiomatic Go
|
|
- [ ] Package naming (lowercase, no underscores)
|
|
- [ ] Variable naming (camelCase, short)
|
|
- [ ] Interface naming (ends with -er)
|
|
- [ ] Error naming (starts with Err)
|
|
|
|
### Error Handling
|
|
- [ ] Errors are checked, not ignored
|
|
- [ ] Errors wrapped with context (`fmt.Errorf("...: %w", err)`)
|
|
- [ ] Sentinel errors used appropriately
|
|
- [ ] Custom error types when needed
|
|
|
|
### Concurrency
|
|
- [ ] Goroutines properly managed
|
|
- [ ] Channels buffered appropriately
|
|
- [ ] No data races (use `-race` flag)
|
|
- [ ] Context passed for cancellation
|
|
- [ ] WaitGroups used correctly
|
|
|
|
### Performance
|
|
- [ ] Avoid unnecessary allocations
|
|
- [ ] Use `sync.Pool` for frequent allocations
|
|
- [ ] Prefer value receivers for small structs
|
|
- [ ] Buffer I/O operations
|
|
|
|
### Code Organization
|
|
- [ ] Small, focused packages
|
|
- [ ] Clear dependency direction
|
|
- [ ] Internal packages for private code
|
|
- [ ] Godoc comments on exports
|
|
|
|
## Report Format
|
|
|
|
### Idiomatic Issues
|
|
- [file:line] Issue description
|
|
Suggestion: How to fix
|
|
|
|
### Error Handling Issues
|
|
- [file:line] Issue description
|
|
Suggestion: How to fix
|
|
|
|
### Concurrency Issues
|
|
- [file:line] Issue description
|
|
Suggestion: How to fix
|
|
|
|
### Performance Issues
|
|
- [file:line] Issue description
|
|
Suggestion: How to fix
|
|
|
|
---
|
|
|
|
**TIP**: Run `go vet` and `staticcheck` for additional automated checks.
|