Arquitetura - Visão Geral
O ZshCheck é uma ferramenta de análise estática para scripts zsh, construída com Python 3.12+. Utiliza uma arquitetura modular baseada em:
- Parser: Tree-sitter com gramática bash (compatível com zsh)
- AST Analysis: Padrão Visitor para percorrer a árvore sintática
- Checks: Sistema plugin-based com registro dinâmico
- Diagnostics: Sistema de diagnósticos tipados com severidade
- CLI: Interface Click com Rich para formatação
Fluxo de Execução
Estrutura de Módulos
src/zshcheck/
├── __init__.py # Versão (0.2.0)
├── cli.py # Entry point (click-based)
├── parser.py # tree-sitter wrapper
├── analyzer.py # Check orchestration
├── diagnostics.py # Diagnostic model
└── checks/
├── base.py # CheckRegistry
├── variables.py # ZC2001 unused var
├── quoting.py # ZC1001 unquoted var
├── style.py # Style checks
└── commands.py # Command checks
Próximos Passos
- Veja os detalhes dos Checks Disponíveis
- Consulte a Referência da CLI