ui-test-suite

Runs goal-driven UI tests for Birdhouse using browser automation and isolated server instances.

36|5|Updated Feb 27, 2026
One-click install
npx skills add https://github.com/Birdhouse-Labs/birdhouse --skill ui-test-suite-birdhouse-labs
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: ui-test-suite
Source: https://github.com/Birdhouse-Labs/birdhouse/tree/main/.agents/skills/internal/birdhouse-development/ui-test-suite
Command: npx skills add https://github.com/Birdhouse-Labs/birdhouse --skill ui-test-suite-birdhouse-labs

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Traditional UI tests break whenever a button is renamed or a page is restructured. This Skill replaces brittle click scripts with goal-based test specs executed by an agent through real browser automation, producing resilient tests plus UX feedback. ## Core Features & Use Cases - Goal-based test specs: Test cases describe user intent and passing conditions instead of selectors and click sequences, so they survive UI changes. - Isolated run environment: Each run gets a fresh Birdhouse server, temp database, unique workspace directory, and timestamped artifact folder with screenshots, logs, and a report. - Structured reporting: The agent annotates each step as working, confusing, or broken, and separates product issues from environment failures like expired API keys. - Use Case: Run the first-time user experience walk-through to verify profile setup, workspace creation, provider configuration, and first agent launch while capturing UX friction along the way. ## Quick Start Ask the agent to run the FTUE walk-through UI test case against an isolated Birdhouse server and produce a timestamped report with screenshots.

Frequently Asked Questions about ui-test-suite

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I run a UI test case for Birdhouse?▼

Build the frontend, pick a free port, create a timestamped run directory with a unique workspace folder, then create a test agent whose prompt contains the isolated server setup, credentials block, test case content, and reporting instructions. Wait with agent_read and clean up ports afterward.

How do I write goal-based UI test cases that survive UI changes?▼

Write test cases as user goals with starting state, passing conditions, and areas to watch, never as click steps or selectors. Describe what the user wants to accomplish and what observable end state confirms success, so the agent adapts when the UI changes.

What is the difference between goal-based UI tests and traditional click scripts?▼

Goal-based tests describe user intent and expected outcomes, letting an agent figure out the interactions, so renaming buttons or restructuring pages does not break them. Click scripts hard-code selectors and steps and fail on any UI change.

Why does the UI test run need a unique workspace directory?▼

Birdhouse derives the workspace ID from the directory path, so reusing a directory leaks prior agents.db and OpenCode state into later runs. A unique workspace directory per run guarantees isolation and valid results.

How are credentials handled in browser automation test runs?▼

Credentials are supplied by the runner in the agent prompt at run time and entered through the UI like a real user. They are never hard-coded in test files or pre-seeded via API, and provider failures are reported as environment issues, not product bugs.