Using CommandKit inside OpModes is straightforward. The library provides a set of pre-built commands that you can combine and extend to build complex robot behaviors. These commands are designed to be flexible and familiar — especially if you’ve used other command-based frameworks like FTCLib.Documentation Index
Fetch the complete documentation index at: https://docs.nullftc.dev/llms.txt
Use this file to discover all available pages before exploring further.
Built-In Commands
| Command Name | Description |
|---|---|
| ConditionalCommand | Runs one of two commands depending on a condition. |
| DeadlineCommandGroup | Runs multiple commands in parallel, ending when one specific command finishes. |
| ParallelCommandGroup | Runs multiple commands in parallel until all of them finish. |
| ParallelRaceGroup | Runs multiple commands in parallel, but ends when any command finishes. |
| ProxyCommand | Defers command creation until runtime, useful for dynamic behaviors. |
| RepeatCommand | Repeats a command a given number of times (or indefinitely). |
| RunnableCommand | Wraps a lambda or function as a one-off command. |
| SequentialCommandGroup | Runs a list of commands in sequence, one after the other. |
| SwitchCommand | Chooses which command to run at runtime based on a key or condition. |
| WaitCommand | Waits for a fixed amount of time before finishing. |
| WaitUntilCommand | Waits until a condition is met before finishing. |
These building blocks let you focus on describing what your robot should do, instead of writing boilerplate control logic for every loop in your OpMode.
Command-Based OpModes
CommandKit ships with generic command-based extensions of the default FTCLinearOpMode.
If you don’t want to create your own abstract OpMode base, you can use one of these directly:
CommandOpMode– A Java-friendly base OpMode that integrates with theCommandScheduler.DSLOpMode– A Kotlin-friendly base OpMode that provides a DSL for defining and scheduling commands.