talon
This directory contains voice command configurations and application integrations tailored for inspecting, testing, and debugging Talon itself. It provides developers and power users with hands-free access to Talon's internal registry, current state, and execution environments.
The configuration is divided into two main subdirectories, each targeting a core debugging interface in Talon.
Subdirectories
talon_debug_window
This subdirectory provides voice commands and application detection for the Talon Debug Window (available in Talon beta releases). It allows you to search and filter Talon's active states using voice commands when the debug interface is focused.
- Application Detection: Uses Python to detect the Talon Debug interface on macOS (via the
com.talonvoice.Talonbundle and "Talon Debug" window title) and Windows (via thetalon.exeprocess). - Voice Search and Inspection: When focused on the debug window's search box, you can quickly filter for active settings, tags, actions, and key combinations using short commands (e.g.,
tag <user.talon_tags>oraction <user.talon_actions>).
talon_repl
This subdirectory integrates with the Talon REPL (Read-Eval-Print Loop), an interactive Python environment used to inspect runtime state and run simulation tests.
- Context & Language Mapping: Detects when you are focused on the Talon REPL window (such as titles matching
Talon - REPLor paths like/.talon/bin/repl) and automatically configures standard programming voice commands to default to Python. - Input Simulation: Enables commands like
test <phrase>to translate voice commands into simulator inputs (e.g.,sim('your phrase')), which is useful for verifying recognition behaviors offline. - State Introspection: Provides
debug <state>voice commands to instantly dump internal registries (including tags, settings, active windows, or UI hierarchies) directly into the REPL console.
How They Work Together
Both directories streamline configuration management and command authoring. They rely on detecting specific Talon developer interfaces and mapping specialized command vocabularies to them.
Additionally, both tools can leverage the user.talon_populate_lists tag. When enabled, this tag populates comprehensive lists of all registered actions, settings, and scopes across your active Talon workspace. This allows you to dynamically reference and search your entire codebase by voice in either the Debug Window or the REPL.
Note: Populating these extensive lists can introduce latency depending on your speech recognition engine (such as Conformer) and is not recommended when using the Dragon engine.