feat: Add hooks, workflow, MCP support and core modules

Phase 2: Hooks System
- Event-driven execution with HookEvent/HookAction types
- HookManager for registration and execution

Phase 3: Multi-Agent Workflow
- Workflow orchestration with dependency graphs
- WorkflowStep with conditions and retry support

Phase 4: MCP (Model Context Protocol) Support
- McpServer for external tool servers
- McpManager for multiple server management

Also includes core modules: cache, error_policy, feature_flags,
git, logger, plugin, retry, rules

662 tests passing

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Shunsuke Hayashi 2025-11-22 23:37:14 +09:00
parent 3f6fbeb498
commit 48dfa915c7
27 changed files with 4793 additions and 34 deletions

76
.miyabirules Normal file
View file

@ -0,0 +1,76 @@
# Miyabi CLI Project Rules
# This file defines project-specific rules and agent preferences
version: 1
rules:
# Rust best practices
- name: "no-unwrap"
pattern: ".unwrap()"
suggestion: "Use ? operator or proper error handling instead of unwrap()"
file_extensions: ["rs"]
severity: "warning"
enabled: true
- name: "no-expect"
pattern: ".expect("
suggestion: "Consider using ? operator or match for better error messages"
file_extensions: ["rs"]
severity: "info"
enabled: true
- name: "no-println-debug"
pattern: "println!"
suggestion: "Use tracing macros (info!, debug!, error!) for logging"
file_extensions: ["rs"]
severity: "info"
enabled: true
- name: "no-dbg"
pattern: "dbg!"
suggestion: "Remove debug macro before committing"
file_extensions: ["rs"]
severity: "warning"
enabled: true
- name: "no-todo"
pattern: "TODO"
suggestion: "Address TODO comments or create GitHub issues"
file_extensions: ["rs", "ts", "js", "md"]
severity: "info"
enabled: true
- name: "no-fixme"
pattern: "FIXME"
suggestion: "Address FIXME comments before merging"
file_extensions: ["rs", "ts", "js"]
severity: "warning"
enabled: true
# Agent-specific preferences
agent_preferences:
codegen:
style: "functional"
error_handling: "result"
min_score: 80
clippy_strict: true
review:
focus_areas:
- "error_handling"
- "performance"
- "security"
min_score: 70
refactor:
preserve_tests: true
max_changes_per_file: 100
# Global settings
settings:
auto_format: true
max_file_size: 1048576
ignore_patterns:
- "target/"
- "node_modules/"
- ".git/"