Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 10 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,15 @@
# Changelog

## [Unreleased]

### Added

- Added the Unity 6+ `ucp ui` family for agent-driven UI Toolkit work: target discovery, importer- and clone-backed UXML/USS/TSS linting, bounded resolved-tree and binding inspection including physical control children and realized ListView rows, DPI-correct Editor-panel PNG capture, and an end-to-end multi-state `ui check` workflow.
- Added strict `.ucp-ui.json` scenarios with JSON data overlays, allowlisted fixture mutations, eager `repeat` templates, and harness-owned virtualized `ListView` binding for reproducible dynamic layouts.
- Added conservative UI audits with complete diagnostic totals, error-prioritized bounded details, and exemptions for Unity internal focus targets; lint inspects immutable package artifacts without forced reimport.
- Added UI operation interruption reporting, status recovery on CLI timeouts, and a render timeout default that accommodates the bridge's overall duration limit.
- Added focused Rust, bridge, fixture, lint, inspector, and audit coverage plus agent-facing UI Toolkit workflow documentation.

## [0.6.2] - 2026-08-31

### Added
Expand Down Expand Up @@ -576,4 +586,3 @@
- JSON-RPC 2.0 protocol
- Lock file discovery mechanism
- Per-session token authentication

4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,10 @@ A few things that are awkward or impossible without it:
- **Profile programmatically.** Run a session, then read the hierarchy sorted by self time, with
`--fields` to keep the payload small and truncation reported as "showing 50 of 4,312".

### UI Toolkit authoring loops

Lint UXML and USS with Unity's own importers, populate repeaters and virtualized lists from strict JSON scenarios, inspect resolved layout and bindings, and capture deterministic panel screenshots. `ucp ui check` runs the complete lint-to-visual-verification pass without loading or dirtying a scene.

<br>

## Install
Expand Down
7 changes: 7 additions & 0 deletions cli/src/commands/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ pub mod snapshot;
pub mod spatial;
pub mod tests;
pub mod transform;
pub mod ui;
pub mod vcs;
pub mod view;

Expand Down Expand Up @@ -389,6 +390,11 @@ pub enum Command {
#[command(subcommand)]
action: view::ViewAction,
},
/// Inspect, lint, and render UI Toolkit UXML and USS
Ui {
#[command(subcommand)]
action: ui::UiAction,
},
}

/// Run editor-side automation scripts (Playwright-like). A script is an editor class implementing
Expand Down Expand Up @@ -971,5 +977,6 @@ pub async fn run(cmd: Command, ctx: Context) -> anyhow::Result<()> {
Command::Transform { action } => transform::run(action, &ctx).await,
Command::Spatial { action } => spatial::run(action, &ctx).await,
Command::View { action } => view::run(action, &ctx).await,
Command::Ui { action } => ui::run(action, &ctx).await,
}
}
Loading