Get help
Find the answer to a problem yourself, or report it so someone else can.
Most problems have a known fix. Start with the pages below, and ask on GitHub when they don't cover your case.
Where to look first#
Run optics doctor on your project before anything else. It checks Python, every engine, the Appium server, connected devices and your config.yaml, and prints the fix next to each problem:
$ optics doctor my-projectAlways pass the project folder. Without it, doctor checks your machine but not your config. If doctor shows no ❌ rows and the problem remains:
- **Search Troubleshooting for the exact message.** Problems are listed by the words Optics prints, such as
No driver enabledorElement not found. - Look up the code. If the message has a code like
E0201, Error codes says what it means and what to do. - **Read the FAQ** when something works differently from what you expected. Some behavior is a known limit, not a bug.
Ask a question or report a bug#
Open an issue on GitHub. Search the open and closed issues first, since someone may have hit the same problem.
A good report lets someone reproduce the problem without asking you anything. Include:
- Your Optics version. Run
optics --version. - **The
optics doctoroutput for your project.** Runoptics doctor <project>and paste everything it prints. - **Your
config.yaml, without secrets.** Remove API keys, passwords and tokens, and replace private URLs with placeholders. - The failing step. Paste the rows from
modules/modules.csvandtest_data/elements.csvthat the step uses, and the full "Failure details" box from the run. - The log. Choose the one that matches what you ran:
optics execute: setfile_log: trueinconfig.yaml, run again, and attachexecution_output/internal_logs.logandexecution_output/execution_logs.log. Setlog_level: DEBUGfor the most detail.optics live: attachlogs/optics_live_<time>.logfrom the project folder. Its path is printed when you quit.
- What you expected, and what happened instead. A screenshot from
execution_output/often shows the difference at a glance.
Report a security issue#
Don't open a public issue for a security problem. Report it privately, as described in the repository's security policy.