Agent skills for FRC Team 4788's Java/GradleRIO robot code, vision,
pathing, and event operations. Each skill is a SKILL.md your agent CLI
loads on demand so it gives you 4788-specific, doc-checked steps instead of
guessing.
27 skills across four areas:
- robot-code (10): dev env, project setup, vendordeps, build/deploy, command-based, Phoenix 6, CTRE swerve, AdvantageKit, simulation, CAN debugging.
- vision (4): Limelight, PhotonVision, flashing PhotonVision onto a Limelight, AprilTag pose fusion.
- pathing (5): PathPlanner, Choreo, SysId, PID tuning, AdvantageScope.
- ops (8): Driver Station, Elastic dashboard, roboRIO imaging, radio config, git workflow, unit testing, event checklist, season refresh.
Clone the repo, then run the installer for your OS from the repo root.
Linux/macOS:
git clone https://github.com/CurtinFRC/Skills-Library.git FRCSkills && cd FRCSkills
./install.shWindows (PowerShell):
git clone https://github.com/CurtinFRC/Skills-Library.git FRCSkills; cd FRCSkills
.\install.ps1The installer detects which agent CLIs you have and links the skills into each one's user skills directory. Restart your agent CLI afterward so it picks them up. Per-tool detail:
| Tool | Detected by | Skills go to |
|---|---|---|
| Claude Code | ~/.claude |
~/.claude/skills/ |
| Codex CLI | ~/.codex |
~/.agents/skills/ and ~/.codex/skills/ |
| Cursor | ~/.cursor |
~/.cursor/skills/ |
| Gemini CLI | ~/.gemini |
~/.gemini/skills/ |
Notes:
- All four supported tools have a user-level skills directory, so there is no manual-only case. If none is detected the installer exits with a message.
- Codex is installed into both
~/.agents/skills/(its current documented path) and~/.codex/skills/(a legacy path some builds still read). Linking both is harmless. install.shuses symlinks, so pulling updates is enough to refresh everything.install.ps1copies files instead (no Windows dev-mode needed), so copies go stale on update — re-run it after every pull.
Skills assume you already have the tools their task needs; they don't install a robot for you.
- robot-code — a WPILib Java install (
frc-dev-env-setupsets this up). Deploying needs a roboRIO; Phoenix 6, swerve, and CAN skills need the actual CTRE devices on the bus. - vision — a coprocessor: a Limelight, or a PhotonVision-supported camera, on the robot network.
- pathing — a WPILib install plus the relevant GUI app (PathPlanner, Choreo, SysId, or AdvantageScope), which the skill helps you install.
- ops — the Windows laptop for Driver Station and roboRIO imaging
(those tools are Windows-only), the robot radio for
frc-radio-config, and a GitHub account forfrc-git-workflow.
Linux/macOS:
git pull && ./install.shWindows (PowerShell):
git pull; .\install.ps1On Linux/macOS git pull alone refreshes the symlinked skills; re-running
install.sh only picks up newly added skills or newly installed tools. On
Windows you must re-run install.ps1 after every pull because it copies.
- Copy
TEMPLATE/SKILL_TEMPLATE.mdintoskills/<area>/frc-<name>/SKILL.mdand work throughTEMPLATE/CHECKLIST.md. - Never write an API, class, or config name from memory — fetch the
official doc page and cite it under
## Sourceswith today's date. - Run
tools/lint_skills.sh(it must exit 0) before you commit. - Open a PR to
main.
Where each skill sits on the honesty ladder, from the Linux (Arch) run in
Task 11. Infrastructure checks: install.sh links all 27 skills into every
detected tool dir (Claude Code, Codex .agents + .codex) and leaves the
pre-existing flash-limelight-photonvision dir untouched; the four bundled
*.sh scripts pass bash -n (shellcheck was not installed on the runner).
The toolchain run scaffolded a command-based Java project for Team 4788 and
ran ./gradlew build, simulateJava, and test to BUILD SUCCESSFUL /
test PASSED (GradleRIO 2026.2.1, WPILib 2026, Gradle 8.11). Because
Gradle 8.11 rejects this machine's JDK 26, the build ran on a user-local
Temurin 17 unpacked under the scratchpad — the documented org.gradle.java.home
workaround, no system install. No skill's Linux steps diverged from reality,
so no skill files were changed.
Core steps ran end to end on this machine.
| Skill | Status | Evidence |
|---|---|---|
| frc-command-based | execution-verified | command-based template (subsystems, commands, bindings) compiled via ./gradlew build |
| frc-simulation | execution-verified | ./gradlew simulateJava started the robot program; NT: Listening on NT3 1735 / NT4 5810, startup banner printed. Sim GUI window needs a display (headless run, not observable) — the skill routes the GUI through VS Code / a display, so nothing was overclaimed |
| frc-unit-testing | execution-verified | added a JUnit 5 test; ./gradlew test → PASSED, HTML report generated |
Ran the runnable half; the other half needs the GUI installer or hardware.
| Skill | Status | What ran / what didn't |
|---|---|---|
| frc-project-setup | partially execution-verified | WPILib VS Code project creator is a GUI installer, impractical headless; scaffolded from the official WPILib v2026.2.1 command-based template + gradle base configured for team 4788 instead, then ./gradlew build → BUILD SUCCESSFUL. Structure/team-number/first-build steps verified; the VS Code generation click-path was not |
| frc-dev-env-setup | partially execution-verified | command-line verify path (./gradlew tasks and ./gradlew build) confirmed with a user-local Temurin 17 JDK; the full WPILib installer + VS Code GUI install was not run |
| frc-vendordeps | partially execution-verified | the WPILib New Commands vendordep resolved onto the classpath in the build; Phoenix 6 / PathPlanner / AdvantageKit vendordeps were not added |
| frc-build-deploy | partially execution-verified | build half verified (BUILD SUCCESSFUL); deploy half needs a roboRIO |
| frc-git-workflow | partially execution-verified | local git add/commit path exercised; branch / PR / event-tag / GitHub flow not run |
Correct against official docs, but relies on a GUI app or a Windows-only tool not run in this repo.
| Skill | Status |
|---|---|
| frc-advantagekit | docs-verified |
| frc-ctre-swerve | docs-verified |
| frc-phoenix6 | docs-verified |
| frc-sysid | docs-verified |
| frc-pid-tuning | docs-verified |
| frc-pathplanner | docs-verified |
| frc-choreo | docs-verified |
| frc-advantagescope | docs-verified |
| frc-elastic-dashboard | docs-verified |
| frc-season-refresh | docs-verified |
| frc-event-checklist | docs-verified |
Only a real robot, coprocessor, camera, or radio confirms the behavior.
| Skill | Status |
|---|---|
| frc-can-debugging | needs-hardware-trial |
| frc-apriltag-pose | needs-hardware-trial |
| frc-limelight | needs-hardware-trial |
| frc-photonvision | needs-hardware-trial |
| frc-flash-limelight-photonvision | needs-hardware-trial (scripts pass bash -n) |
| frc-driver-station | needs-hardware-trial |
| frc-rio-imaging | needs-hardware-trial |
| frc-radio-config | needs-hardware-trial |
Windows and macOS command blocks are syntax-reviewed but untested — this run was Linux only.