# swing-ui-agent > A Java agent (-javaagent) that lets a coding agent drive a real Java Swing app from a shell or over MCP, and records what it did as recorded tests (JSON files of steps and checks that replay without compiling, from the palette, the agent, Maven or CI), or as JUnit 5 @UiTest classes when a test needs more. No changes to the app; no java.awt.Robot. - Coding agents: the skills in the repository (`skills/`) teach the drive, target and record workflow; install them rather than working from these docs alone. - Two kinds of test: a recorded test is exact visible steps and checks that a person or the agent records and anyone runs; a Java test is for anything dynamic. Start at https://kormcrete.github.io/swing-ui-agent/start/choose-test-kind/. - Every tool and its parameters: https://kormcrete.github.io/swing-ui-agent/reference/tools/ (generated from the agent's own schemas; `java -jar tools ` prints the same from a running app). ## Documentation Sets - [Abridged documentation](https://kormcrete.github.io/swing-ui-agent/llms-small.txt): a compact version of the documentation for swing-ui-agent, with non-essential content removed - [Complete documentation](https://kormcrete.github.io/swing-ui-agent/llms-full.txt): the full documentation for swing-ui-agent ## Notes - The complete documentation includes all content from the official documentation - The content is automatically generated from the same source as the official documentation ## Optional - [README](https://github.com/kormcrete/swing-ui-agent#readme): Quick start, status and build - [Skills](https://github.com/kormcrete/swing-ui-agent/tree/main/skills): Agent skills: swing-ui-record-test, swing-ui-targeting, swing-ui-driver