easel
Static analysis, dependency analysis, metrics, secrets scanning, semantic diff and rename
for Power Apps canvas source (pa.yaml). A single CLI that treats your canvas app as
source code โ deterministic, CI-first, read-only by default.
Install
dotnet tool install --global Microsoft.PowerApps.CLI.Tool # pac (for .msapp)
dotnet tool install --global EaselCli # easel
easel doctor
Docs
- Usage guide โ every command with examples
- Quickstart & commands
- Rule reference
- Configuration
- CI integration
- diff ยท rename (preview)
- AI layer (opt-in)
- Compatibility
- Telemetry (there is none)
- Example output
At a glance
$ easel lint ./MyApp
Src/scrHome.pa.yaml
23:9 warning PA1009 Interactive control 'btnSubmit' (Button) has no AccessibleLabel.
27:23 info PA1010 'If' nested 3 deep (threshold 2).
3 findings โ 2 warnings, 1 info