My Oranda Project
Releases
0.1.0 - 2026-04-10
v0.1.0
Apr 9 2026 at 20:10 UTC
Added
Core Analysis
- 25 built-in code smell plugins covering Bloaters, Couplers, OO Abusers, Change Preventers, and Dispensables
- 9 new plugins: TemporaryField, SpeculativeGenerality, RefusedBequest, ShotgunSurgery, DivergentChange, LazyClass, DataClass, MiddleMan, FeatureEnvy
- DesignPatternAdvisor: suggests Strategy, State, Builder, Null Object, Template Method, Observer patterns
- TypeScript and Rust AST parsing via Tree-sitter
- Structural duplication detection via AST hash
WASM Plugin System
- WIT interface with full model fields (
FunctionInfo,ClassInfo) and typedoption-valuevariant cha-plugin-sdkcrate: zero-config plugin development — no WIT file needed,plugin!macro embeds WIT at compile timecha plugin new/build/install/list/removeCLI subcommands- Auto-conversion of WASM binary to WASM Component in
cha plugin build test-utilsfeature:WasmPluginTestbuilder for plugin unit testing- Plugin metadata (version, description, authors) auto-filled from plugin's
Cargo.toml - Config options passed from
.cha.tomlto plugins as typedOptionValue
CLI
cha analyze— recursive analysis with.gitignoreawareness,--diff,--stdin-diff,--pluginfiltercha parse— inspect AST structurecha init— generate default configcha fix— auto-fix naming violationscha schema— print JSON Schema for output format- Output formats: terminal, JSON, SARIF, LLM context
--fail-onexit code control
LSP
- Real-time diagnostics on open/change/save
- Code action suggestions
Tooling
cargo xtask ci/build/test/lint/analyze/lsp-test/plugin-test/plugin-e2ecargo xtask bump <major|minor|patch>— version bump across all cratescargo xtask publish [--dry-run]— publish to crates.io in topological order- cargo-dist: multi-platform binaries (macOS/Linux/Windows), shell/powershell/homebrew/msi installers
- oranda: project website with release artifacts