TST Profile Manager Β· User Guide

Automation - Run repetitive browser work for you

A beginner-friendly guide. Read it in about 10 minutes and start using automation without programming knowledge.

πŸ“₯

Download the technical docs

Companion files for anyone who wants to author workflows in depth, or drive the browser from their own program.

Markdown (.md) files - open them with any text editor, such as VS Code or Notepad. The .zip is a C# project; it needs the .NET 8 SDK to run.

πŸ€– What is automation?

Automation lets the computer perform repetitive browser actions for you.

Imagine doing the same task on 50 profiles: opening a website, signing in, clicking buttons, and filling out forms. Doing it manually is tiring and easy to get wrong. Automation lets you define those steps once, then run them on as many profiles as you need.

πŸ’‘ Quick idea
A Workflow is like a recipe: a list of steps in order. You choose the recipe, click run, and the computer handles the rest.

πŸ“š Terms to know

You will see these words throughout the app. Knowing these 7 terms is enough to start.

πŸ“‹ Workflow

A sequence of automated steps, or the recipe you ask the computer to run.

🧩 Action

One small task in a workflow: open a page, click, type, wait, or read data.

πŸ‘€ Profile

A separate browser identity with its own cookies and fingerprint. Workflows run on profiles.

πŸ“¦ Campaign

A run configuration: choose profiles, thread count, inputs, and workflow.

🧡 Thread

The number of profiles running at the same time. 5 threads means 5 browser windows in parallel.

✏️ Inputs

Values you enter before running, such as a keyword or list file.

⏰ Schedule

Run a campaign automatically by time and review each result afterward.

πŸš€ Try it in 5 steps

The fastest way to see automation working is to run one workflow on one profile.

  1. Open Automation In the left navigation, click Automation, then open the Workflow tab.
  2. Get a workflow Click Create new workflow to build your own, or open the Store and click Install on an existing workflow. New users should start with a ready-made workflow.
  3. Open it and click Run Click Open to enter the editor, then click Run to test it.
  4. Choose a profile Select a profile that is currently open. If the workflow does not need a browser, choose (No connection). If the workflow has Inputs, enter test values here.
  5. Watch it run Watch the browser window and the Log panel below. Once it works, run it in bulk with a Campaign.
ℹ️ Run vs Campaign
Run is a quick test on one profile. Campaign is the real run on many profiles at the same time. Always test with Run before starting a Campaign.

πŸ—‚οΈ The three main areas in Automation

The normal flow is: build a Workflow, group it into a Campaign, then add a Schedule.

β‘  Workflow - the recipe

Create, open, edit, and manage saved workflows. You can create new workflows, open existing ones, run a quick test, import/export backup files, and publish workflows to the Store for your team.

β‘‘ Campaign - bulk runs

ItemMeaning
WorkflowWhich recipe will run.
ProfilesWhich profiles participate.
ThreadsHow many profiles run at the same time.
InputsValues the workflow needs, such as keywords or files.

β‘’ Schedule - run automatically by time

Let a campaign run automatically without watching it manually. Set the number of runs (0 means unlimited), click Start, and click Stop when needed.

🧱 Action reference by group

Actions are the building blocks shown in the workflow palette, split into the same 6 groups as in the app.

Click an action to see its parameters: meaning, type, whether it is required, the default value, and the options. Type in the box below to search quickly.

Parameter types: Expression Β· {{var}} accepts variables Β· Select one fixed list Β· Variable name (output) stores a result Β· Number / True-False / Text entered directly.

πŸ“ Path boxes have a browse button
Every parameter that takes a file or folder path shows a … button that opens a picker. It only fills the box in for you β€” the box stays ordinary text, so typing the path by hand or using {{var}} keeps working exactly as before.
ℹ️ Tip for workflow authors
The gray names such as browser_navigate / Url are the action code and property name β€” use them when writing JSON import files. Most users only need the label and description.

πŸ“Š Google Sheets setup (once per machine)

The Read / Write Google Sheet actions talk to the Google Sheets API directly β€” no browser, no login, and the sheet never has to be made public. They need a Credential file: a Service Account key in .json.

  1. Create a project Open the Google Cloud Console and create (or pick) a project.
  2. Enable the API APIs & Services β†’ Library, search for Google Sheets API, click Enable.
  3. Create a service account IAM & Admin β†’ Service Accounts β†’ Create service account. Any name works.
  4. Download the key Open that service account β†’ Keys tab β†’ Add key β†’ Create new key β†’ JSON. The file you download is the Credential file.
  5. Copy its email Open the .json and copy client_email β€” it looks like name-bot@project-id.iam.gserviceaccount.com.
  6. Share the sheet In the Google Sheet click Share, paste that email, pick Viewer to read or Editor to write, and send.
⚠️ The last step is the one people forget
Without sharing the sheet with client_email the API answers 403 or 404 even though the File ID is right. The error message printed by the action already contains the email you need to share with, so you do not have to reopen the .json. Keep the key file safe: anyone holding it can read and write every sheet shared with that service account. If it leaks, delete the key in the Cloud Console and create a new one.

Using it in a workflow: point Credential file at the .json (~/google/bot.json, %APPDATA%\tst\bot.json and {{profile_dir}} all work), paste the sheet URL into File ID, and leave Sheet ID at 0 for the first tab β€” or type the tab name.

Writing from many profiles at once? Use mode append_row. Google picks the next free row itself, so 25 profiles finishing at the same time produce 25 rows instead of overwriting each other. cell and row write exactly where you point them, so two profiles aimed at the same cell still overwrite each other.

No Google account involved? Read Excel File and Write Excel File do the same job on a local .xlsx and need no setup at all.

πŸͺ Workflow Store

A shared workflow library from your team. You do not have to build everything from scratch.

Open the Store, choose a workflow, and click Install. After installation, it appears in your Workflow list and is ready to use.

TypeHow to use
FreeClick Install and use it immediately.
You can try it a few times for free. After trial runs are used up, you need to purchase it to continue.
πŸ”’ Locked workflow
Workflows downloaded from the Store are often locked: you can run them, but cannot open or edit their internal steps. This protects the recipe shared by the author.

✏️ What are Inputs?

Inputs are where you tell the workflow what information it needs.

For example, a Google search workflow needs a keyword. Instead of hardcoding one keyword, the workflow author creates an Input named keyword. When you run it, the app asks for that value.

TypeUse when
Text / Multiline textEnter short text or a multi-line list.
NumberEnter a number, such as the number of loops.
True / FalseTurn an option on or off.
Single choice / Multiple choiceChoose from a predefined list.
FileChoose a file on your computer, such as a .txt list file.

πŸ“Š View results and logs

Use logs to see progress, success, warnings, and errors.

  • When testing with Run: the Log panel shows each step in real time.
  • When running Campaigns or Schedules: logs are separated by thread. Click a profile on the left to view its details.
  • Log levels include Info, Warn, and Error. If something fails, read the red error line first.

❓ FAQ

I am not technical. Can I still use it?
Yes. Install a workflow from the Store, fill in Inputs, and click run. The workflow author handles the step logic.
I click Run but the profile list is empty.
The Run dialog only shows profiles that are currently open. Open the profile first, then click Run again. If the workflow does not need a browser, choose (No connection).
The workflow runs, but I cannot open or edit it.
It is a locked Store workflow. You can run it, but cannot view its internal steps.
The app says purchase is required.
That workflow is paid and the free trial runs are used up. Confirm the purchase dialog to continue using it.
Writing to Excel fails with "the file is open in Excel".
Excel locks a workbook it has open, so Write Excel File cannot write to it. Close the file in Excel and run again. Reading works even while the file is open. Also note that only .xlsx can be written - open an old .xls in Excel and Save As .xlsx first.
Read Excel File returns nothing, or the wrong row.
The two counters start differently: Sheet index starts at 0 (0 = first sheet) while Row index starts at 1 and counts the header row. So the first data row of a table with headers is Row index = 2. Reading past the last row returns empty instead of failing, which makes "read until empty" loops easy to write.
Many profiles write to one file and rows go missing.
Write Excel File locks per file, so profiles in the same app can all append safely. Two copies of the app writing one workbook is not safe, and Write file (CSV) does not lock at all. For heavy parallel runs, write one file per profile and merge afterwards, or use Write Google Sheet with mode append_row.
How many threads should I use?
Thread count equals the number of profiles running at once. More threads can be faster but heavier on your computer. Start with 2-4 threads and increase gradually.
How do I back up or move workflows?
Use Export to export Workflow + Campaign + Schedule into a backup file, and use Import to restore it on another computer. Import overwrites items with duplicate IDs.
Where can I learn advanced workflow authoring?
Download the two companion technical documents: workflow-automation.md for detailed workflow authoring and workflow-script-guide.md for the JSON import format - or use πŸ“₯ Download the technical docs at the top of this page.