Can't get "Find Text on Screen and Move Mouse" working with Variables.

Hello! I'm hoping someone can help clear this up for me, I've already pulled my hair out and now I'm starting to reach the bone.

The action I'm trying to complete should be super simple. All I want to do is have an text prompt open up, and then have BTT's "Find Text on Screen" function....find that text. Please, for the love of the small shred of sanity I still have left, do not suggest that I create a ⌘F action - that will not work here.

  1. Ask for Input, Save to Variable
    Variable Name: inputText

  2. Find Text on Screen & Move Mouse
    Text to Search: ???????????????????

While it is very thorough in it's explanation, I was unfortunately was not able to find an answer within the documentation page for this action.

Here's my list of failed attempts at declaring this variable (within the "Find Text on Screen & Move Mouse" action's "Text to Search" box) in this very stable and consistent and user friendly piece of software that I deeply love and depend on but also want to stick in a woodchipper:


Please, someone tell me what obscure eldritch incantation I must whisper into this friggin text box to let it use a simple text variable, or just take me out behind the shed for a game of Ol' Yeller. Whatever you do, just put me out of my misery.

that action doesn’t support variables yet, but it’s a good idea. I’ll add support with the next version!

It would be possible with JavaScript already, but that’s a bit more complicated

Just until this is implemented, here is how to do it with the "Run Real Java Script" action:

async function someJavaScriptFunction() {
  let inputText = await get_string_variable("inputText");

  let findTextConfiguration = {
    BTTFindText: inputText,
    BTTFindTextSearchDirection: 0,
    BTTActionWaitForConditionsInterval: 1,
    BTTActionWaitForConditionsTimeout: 10,
    BTTFindTextMatchMode: 1,
    BTTFindTextRequiredOccurences: 0,
    BTTFindTextMoveMouseTo: 2,
    BTTFindTextSearchOn: 0,

  let findText = {
    BTTPredefinedActionType: 426,
    BTTGenericActionConfig2: JSON.stringify(findTextConfiguration),

  await trigger_action({ json: findText, wait_for_reply: true });

  return inputText;

Thank you Andreas, I really appreciate this - cheers!