ASL FORMRUNNER HELP
Start here. Take it one step at a time.
A complete guide for your first run and the workflows that follow. These instructions describe the English app, version 1.1.0.
25 topics
Start here — no experience needed
FormRunner helps you enter the same contact information into website forms. A contact form is a page where you type your name, email, and a message to a website owner. FormRunner shows you a picture of what it filled. You decide whether to send it.
A profile is a saved set of your details, like an address-book card. A queue is the list of websites you are working through. A preview is a picture you check before sending. A row is one website in that list.
Use the menu on the left to move around. Website queue holds your websites. My information holds your details and message. Activity log shows what happened. Help center returns to these instructions. You can leave Custom steps alone for a normal form.
Click means press the left mouse button once. Double-click means press it twice quickly. Scroll means turn the mouse wheel, or slide two fingers on a touchpad, to see more of a page. A pale or greyed-out button cannot be used until its required step is complete.
Start with the local practice exercise below. It uses made-up websites and people on this computer, so you can learn the complete process before using a website you have permission to test or contact.
Open the app and find your way around
1. Open File Explorer, the yellow folder icon on the Windows taskbar. If you downloaded the app, choose Downloads on the left. Find the ASL FormRunner download.
2. If you have the portable EXE, double-click ASL-FormRunner followed by its version and portable.exe. If you have a Windows app folder, open that folder and double-click ASL FormRunner.exe. Keep the other files in that folder together; the app needs them.
3. The large ASL picture appears while the app starts. The portable version may take a little longer the first time. Wait for Website queue to appear. You do not need to install Node.js or open a command window.
4. Maximize the window with the square near its top-right corner if you want more room. Scroll down to find content below the visible area. Most changes are saved with a button explicitly labeled Save.
5. To close the app, click the X in the top-right corner. If it is finding forms or sending, click Stop first and wait. Closing does not undo a message already sent.
Use the download’s release notes to check its signing and installation status. A preview package may not yet be signed or Store-listed. If Windows blocks a file, do not guess which security settings to change; verify the download and ask ASL support for the appropriate package.
Try it safely: a complete practice exercise
1. Click Open local practice at the top of Help, or Try local practice in an empty Website queue. This puts seven made-up websites in the queue and supplies example details. It replaces your current list and active information; named saved profiles stay available.
2. In Website queue, click Find & fill forms. Wait for the progress message to finish. You should see Ready next to the practice websites. At this point, no form has been sent.
3. Click Preview beside Northstar Studio. A picture opens. Check the name, email, and message. The list of Filled values on the right provides another way to read them. Scroll inside the picture if needed.
4. Click Mark reviewed. The picture closes and a green Preview reviewed note appears for that row. Reviewing means you have checked the contents; it does not send anything.
5. Click Select reviewed. Only ready rows whose previews you reviewed are selected. If you selected an unreviewed row by mistake, clear its small checkbox, or click Select reviewed again.
6. Click Send selected. Read the Windows confirmation showing the number of forms. Click Send forms to complete this local exercise, or Cancel to send nothing. Wait for Confirmed in the row. This practice submission stays on your computer.
7. Click Activity log on the left. Choose Send attempts under Activity to find the result. Go back to Website queue and click Export results to save a record if you want one.
If you repeat the same practice website later, it may be Skipped because its send attempt is already recorded. This demonstrates duplicate protection. You can still learn from the other practice rows. Do not delete your real send history just to repeat the exercise.
Step by step: save your own details
1. Click My information on the left. Click inside First name and type your first name. Do the same for Last name and Email address. Fill the other details you need. You can leave optional details empty.
2. Check Full name. It can be different from First name and Last name if you previously entered it. Clear it to let the app build it from your first and last names when you save.
3. Find the box labeled Message template. On a wide window it is on the right; on a smaller window, scroll down. Replace the example with the message you want to send. Plain text is enough; you do not have to use the special words in braces.
4. Click Save information. These are now your active details. To keep a named copy, find Name this profile, type a name such as Work, and click Save profile. Both your details and your message are saved in that named profile.
5. To use it another time, open My information, click Choose a profile under Load a saved profile, and click Work. Check the email and message to make sure you loaded the right one.
6. For an extra detail, scroll to Custom profile fields and click Add field. In Field name, type what the detail is called, such as Project code. In Value, type the actual detail, such as QA-104. Click Save information and, if you want to update your named copy, Save profile.
7. To remove an extra detail, click Delete beside it, then save. To remove a named profile, click Remove beside its name under Saved profiles. Removing a saved copy leaves your active details in place; clear and save those separately if needed.
Step by step: make and load a website list
A website address is the text in your web browser’s address bar, often beginning with https://. Use the address of the website or its contact page. An email address, such as name@example.com, is not a website address.
1. For a simple list, open Windows Notepad. You can press the Windows key, type Notepad, and click its name. Put one website address on each line. Press Enter between addresses. Include only websites you have permission to test or contact.
2. In Notepad, choose File, then Save as. Choose an easy-to-find folder, such as Documents. Name the file my-websites.txt and click Save. The .txt ending tells Windows it is a text file.
3. Return to FormRunner and click Website queue. Click Load website list. In the file window, open the folder where you saved your list. Click my-websites.txt and then Open.
4. Check that each row shows the intended website address. A text list has one URL column. A spreadsheet may have several columns; choose the column containing website addresses in the URL column menu.
5. If someone gave you a CSV, TSV, JSON, or Excel XLSX file, load it the same way. CSV and TSV are spreadsheet-style text files; JSON is another data-file format. You do not need to convert a supported file first. For a spreadsheet, the first row should name the columns.
If no file appears in the file window, check the folder and the file ending. Supported endings are .csv, .tsv, .txt, .json, and .xlsx. Old .xls files are not supported; save a copy as .xlsx in Excel. Loading a new list replaces the current list, so export any results you need first.
Step by step: check, send, and save your results
1. Confirm your email and message in My information and save them. Return to Website queue. Click Find & fill forms. Wait until the app finishes working through the list.
2. Click Preview on a Ready row. Read every filled field and the message. Make sure it is the intended website. If something is wrong, close the picture with its X, correct your details or steps, and choose Find & fill forms again.
3. When the picture is correct, click Mark reviewed. Repeat for each website you want to send to. A picture alone does not mean it is approved; look for Preview reviewed in the queue.
4. Click Select reviewed to select approved rows, or click the small checkbox beside each approved row. Check the number selected. Send selected stays unavailable if any selected row still needs review or attention.
5. Click Send selected and read the confirmation. Cancel returns without starting the sends. Send forms authorizes the selected submissions. Keep the app open while it works. The pause between sends is normal.
6. Read the Result and Details for each row. Confirmed means the website showed a success message; it does not prove someone read your message. Unconfirmed means the site may have received it, so do not assume it is safe to send again.
7. Click Export results. Choose a folder, enter a file name if desired, and click Save. You can open this CSV file in Excel or another spreadsheet app. Exporting makes a copy of the results; it does not send them to ASL.
To find an older action, click Activity log. Type a website or profile name in Search activity. Choose an Activity or Result to narrow it further. From and To restrict the dates. Clear filters shows everything again.
If you get stuck
“Send selected” is grey: select at least one Ready row with Preview reviewed. Open its Preview and click Mark reviewed first. If other unreviewed rows are selected, uncheck them or click Select reviewed.
“Needs attention”: read the Details beside the row. Something may be missing, or the website may need an extra click. Start by checking your saved information. The Custom steps topics explain more advanced controls; it is fine to ask the website administrator or ASL support for help.
“Skipped”: read the reason. The site might already be in your send history, on your do-not-contact list, or have no suitable form. This is different from sending successfully.
The wrong details appeared: open My information, load the correct saved profile, check its message, and save any edits. Then find and fill again. A previously prepared picture does not automatically change when you edit your details.
You cannot see a button: maximize the window and scroll down. The message box moves below the details on a smaller window. Use the Help search box above to find the button’s name.
You clicked Send by mistake: press Stop as soon as possible. Remaining websites will not start, but an already submitted message cannot be recalled. Look in Activity log to see which attempts were recorded.
For more help, use ASL support in this Help center. Describe what you clicked and the exact message on screen. If sharing a screenshot, check that it does not expose information you want to keep private.
1. Your first workflow
Open My information, enter your details, and write a message. Save information makes these the active details. Save profile also stores a named copy for later.
Load a website list, check the URL column, and choose Find & fill forms. Open each preview, inspect the picture and filled values, then choose Mark reviewed.
Select the reviewed rows and choose Send selected. The Windows confirmation shows how many forms you are authorizing. Watch each result in the queue and Activity log. Export results when finished.
Try the local practice workspace first. Its seven workflows run on this PC. Loading practice replaces the current list, active details, message, and custom steps. Named profiles and the permanent send history remain available.
2. Import CSV, TSV, TXT, JSON, and Excel
CSV and TSV: put column names in the first row. Quoted CSV cells may contain commas and line breaks. Use UTF-8 for accents and other characters. Duplicate column names receive numbered suffixes.
TXT: put one HTTP or HTTPS website on each nonblank line. A missing scheme is treated as HTTPS. URLs containing credentials or spaces are rejected.
JSON: use an array of objects, an array of URL strings, or an object containing a rows or items array. Example: [{"Name":"Practice","Website":"https://example.test/contact"}].
XLSX: the first nonempty worksheet supplies the list, with headers in row 1. Hyperlinks use their destination URL. Formula cells use saved results; formulas are not recalculated. Save the workbook in Excel before importing if results are missing.
The file must be smaller than 25 MB. Importing replaces the active queue, so export any results you need first. Saved profiles, exclusions, activity, and send attempts are retained.
3. Choose the website column
FormRunner estimates the URL column from its name and the values it contains. Inspect a few rows before preparing them. Choose a different column in the queue if the wrong links were selected.
Changing the URL column resets preparation and approvals. It does not delete the permanent send history. Invalid or excluded websites are skipped with a reason.
4. Save, load, and remove profiles
Enter your name, email, phone, organization, website, subject, and address. Full name is used as entered; when empty, it is derived from first and last names. Clear an old full name when changing first or last names if you want it derived again.
Save information updates the active workspace. To keep a reusable copy, enter a profile name and choose Save profile. Saving the same name replaces that named profile, including its message and custom fields.
Choose a profile from Load a saved profile to restore its details, custom fields, and message. Sending limits, exclusions, and custom steps are shared workspace settings, so loading a profile keeps them.
Remove deletes the named saved copy. It does not erase currently active information, previous screenshots, exports, or send records. Edit and save active information separately if needed. Unsaved edits are replaced when you load another profile or leave this section.
Changing or loading information clears earlier approvals. Find and fill again to see the new values before sending.
5. Add and delete your own profile fields
Under Custom profile fields, choose Add field and give it a name and value, such as Project code and QA-104. Save information, or Save profile to include it in a named profile. Up to 50 custom fields are supported.
Names must be unique and cannot replace built-in fields. Spaces and accented letters are supported. Do not use braces or a vertical bar in a field name.
A custom field can automatically fill a visible text field or select option when its label, placeholder, aria-label, name, or ID exactly matches after ignoring capitalization, accents, spaces, and punctuation. Example: Project code matches project_code. Inspect the preview to confirm the match.
Insert {{profile.Project code}} in your message or a custom step. For a field with an unrelated label, add a Type text step with its selector and that value.
Choose Delete beside a custom field, then save. This removes it from active information; save the named profile too if you want that saved copy updated. Removing it does not change historical previews or exported files.
6. Personalize messages and step values
{{Name}} inserts a value from the imported row. {{Name|there}} uses “there” when the value is missing or empty. Matching is case-insensitive, and leading or trailing whitespace is trimmed. Zero and false remain valid values.
{{profile.email}} explicitly inserts your profile email, even when the list has an Email column. Custom fields work the same way: {{profile.Department|General}}. Click a token below the message box to insert it at the cursor.
For an unqualified name, a matching row column takes precedence over a profile value. Use the profile. prefix when you mean your saved details. Subject and custom-step values also accept placeholders.
Preview the completed message for each row. An unknown placeholder without a fallback becomes empty. Placeholders insert plain values; they do not run scripts.
7. How contact forms are found
FormRunner first examines the loaded page, including accessible frames and open shadow roots. It recognizes ordinary forms and common form-builder containers without a form tag. Candidates need contact-like fields, such as a message and an email or phone field.
If no suitable form is found, it follows likely contact links on the same site and tries /contact and /contact-us, within the configured page-search limit. Automated-access restrictions in robots.txt are respected.
Visible fields are matched using labels, placeholders, aria-labels, names, IDs, and autocomplete hints. English and Spanish names, email, phone, subject, message, organization, website, and address fields are recognized.
Hidden fields are not filled. Unknown required fields, login screens, inaccessible widgets, unusual layouts, and multi-step flows may need custom steps. Finding every possible website form is not guaranteed.
8. Build custom steps
Each step has a Site, When, Action, Selector, and Value. Leave Site blank to use the step for every site. A domain applies to that domain and its subdomains; a URL path narrows the step further. Steps run from top to bottom; use the arrows to reorder them.
Page opens runs before automatic field matching on each visited page. Use it to open a contact panel or reveal controls. After filling runs after the detected form receives automatic values.
Type text fills a text control. Click presses a visible control. Choose option selects a native dropdown option by value or displayed text. Tick box checks a supported checkbox. Use as Send button identifies the final control without clicking it during preparation.
The final Send action belongs in Use as Send button. An ordinary Click that would submit a form is blocked during preparation. Click can advance a Next, Continue, Siguiente, or Continuar control, while the preview guard still blocks native submission.
Save steps, then find and fill again. Use specific selectors: a blank Site plus a broad button selector could affect unrelated sites.
9. Selectors and nested frames
CSS examples: #email, input[name="department"], button.next. Playwright examples: text=Continue or role=button[name="Next"]. FormRunner chooses the first visible match; use a more specific selector when several visible elements match.
For a frame, use frame: iframe#contact >>> #message. For nested frames, use frame: iframe#outer >>> frame: iframe#inner >>> input[name="email"]. Each frame segment is evaluated from its parent, beginning at the page.
After-filling selectors without a frame prefix are looked up inside the detected form’s frame, with a page fallback when no match exists. Page-opens selectors begin at the page. A missing or nonvisible target produces a step error for review.
Type text values may use {{Column}} or {{profile.Custom field}}. Click, Tick box, and Use as Send button do not need a text value. A native select requires an existing option; a custom dropdown may need Click steps instead.
10. Human-verification and dynamic workflows
A custom Click or Tick box step can target a visible verification checkbox, including one inside an iframe. Verification providers may then require a person, reject an automated browser, or present a different challenge. FormRunner does not solve puzzles or guarantee verification.
Use the local verification example to test a checkbox that enables Send. The local Next example reveals another required question. Both examples are part of the automated workflow tests.
During preparation, ordinary POST, PUT, PATCH, and DELETE requests and native form submissions are blocked to reduce unintended submission. Common verification-provider requests are allowed. A site requiring other write requests just to initialize its form may not work.
A website’s scripts can observe values while they are typed, including through requests that the preparation guard permits. Review is a workflow control, not a guarantee that a remote page has seen no information.
11. Review pictures and changed forms
Open Preview to see the actual filled form and a list of visible values. Check the intended site, recipient context, message, dropdowns, checkboxes, and extra questions. Mark reviewed only when everything is correct.
If a required field is empty, Send is missing or disabled, or a custom step failed, the row needs attention. Adjust information or steps and prepare it again.
Sending opens a fresh isolated browser context and repeats the workflow. Its visible form values and Send control are compared with the reviewed state. A changed form gets a new picture and needs another review.
Approvals do not survive app restart. This ensures you revisit screenshots before a new session sends anything. Previews are ordinary PNG files and may contain personal information.
12. Send pacing, daily limits, and Stop
Only reviewed, ready rows can be sent. The app processes one site at a time and waits at least the configured pause between send attempts. The daily attempt limit uses the Windows local calendar day and resets at local midnight.
The pause and attempt history survive a restart. Attempts count even when the site returns an error or the result cannot be confirmed. Changing the daily limit does not erase earlier attempts.
Stop cancels browser work and prevents remaining rows from starting. It cannot recall a message already submitted. If the app closes during a send, inspect the attempt history and check the destination through your normal workflow before assuming nothing was sent.
13. Duplicate protection and exclusions
A durable send record is saved immediately before the final click. The originating site and final destination are used to prevent a second attempt, including when another imported list points to the same site. A new list does not reset protection.
The do-not-contact list accepts one domain, URL, or email address per line. A domain excludes its subdomains; an email address also excludes its domain. Lines beginning with # are comments. Exclusions are rechecked immediately before Send.
Send records remain even after errors or uncertain responses. FormRunner deliberately does not retry these automatically. There is no per-row history reset button. Removing the entire data folder also removes duplicate protection, so it is not a retry mechanism.
14. Search and filter the Activity log
The Activity log includes imports, profile saves and loads, settings changes, form preparation, reviews, queue controls, and every send attempt. It records descriptions and outcomes; it does not copy your message or profile field values into event descriptions.
Search matches the item, website, details, activity type, and result. Combine it with Activity, Result, From, and To filters. Dates use local time and include the entire selected end date. Clear filters restores all entries.
Entries are newest first, in pages of 50. Export filtered log includes all matching entries, not only the visible page. Exported timestamps use UTC for consistent comparisons.
The latest 10,000 non-send activities are retained. Send attempts are kept separately without this cap and always remain searchable. Existing older workspaces retain their send history; activities that happened before this feature was installed cannot be reconstructed.
15. Understand results and export CSV
Ready means a filled form can be reviewed. Needs attention or Needs you means something still needs a step or a person. Review again means the form changed during the send check. Skipped explains an exclusion, duplicate, missing form, or access restriction.
Confirmed means the page displayed a recognizable success response after the click. It does not establish email delivery or that a person read it. Unconfirmed means the app could not establish success; a submission may still have occurred. Site error means a visible error appeared.
Export results writes the active list’s columns plus website, outcome, and details. Export filtered log writes activity records instead. CSV quoting preserves commas and newlines, and formula-like leading characters are escaped for spreadsheet use.
Exports are ordinary files, not encrypted by FormRunner. Share and retain them according to the information they contain.
16. Where data is saved and how to remove it
Profiles, messages, imported rows, settings, exclusions, activity, and send history are stored in workspace.dat using Windows data protection for your Windows account. The data folder also contains ordinary PNG previews. No ASL cloud sync or app analytics is built in.
Open data folder shows the exact location used by this installation. Close the app before making a backup, and copy the whole workspace folder. Windows-protected data may not decrypt under a different Windows account or on another PC; a copy is not a portable profile export.
To erase all app workspace data, close the app, then remove the workspace folder shown by Open data folder. This also erases the permanent duplicate history and daily counters. Delete any separate CSV exports and backups yourself. Uninstalling a portable app does not necessarily delete its user data.
Remote websites may keep information they received. Removing local records does not delete their records. Read the in-app Privacy policy for the complete app-specific notice.
17. Troubleshooting
A profile appears unchanged: use Load a saved profile, then inspect email and message. Save information alone does not create a named saved profile. Unsaved edits are not restored when switching profiles.
No form found: import the direct contact URL, verify the page-search limit, or add a Page opens step to reveal the form. Login-only and unusually built forms may be unsupported.
A required field is missing: add a matching custom profile field or an After filling Type text step. For checkboxes, use Tick box. If Send stays disabled, check validation and verification requirements.
A selector fails: ensure it targets a visible element, add the correct frame path, and make it specific. A label on a custom widget may not be a native input. Use steps to open the widget first.
A preview is missing or stale: find and fill the row again. A website that changes random hidden or visible content can require repeated review. Do not approve a result you cannot inspect.
Saved data cannot be read: FormRunner preserves the file and disables startup instead of resetting the send history. Restore a compatible backup under the same Windows account. Keep a copy before any manual repair.
18. Testing, Windows packages, and support
The Windows EXE includes its desktop runtime and automation browser; Node.js is not required on the destination PC. Keep all files together when using the unpacked Windows app folder. The portable EXE extracts its runtime before opening, so first startup can take longer.
Automated tests use synthetic local practice sites only. They cover imports, profile persistence and loading, template values, matching, frames, custom steps, review, pacing, exclusions, duplicate records, local sends, and packaged desktop behavior. They do not certify compatibility with every public site.
Use Tab and Shift+Tab to move between controls, Enter or Space to activate a focused button, and Escape to close a preview. Readable text and focus outlines are included throughout the workspace.
MSIX association, signing, installation, and Microsoft Store certification are separate release stages. Check the release notes supplied with your download for its exact status; an unassociated preview package is not a Store publication.
For support, visit support.autosecurelogin.com or contact@autosecurelogin.com through your normal browser or mail app. Include the app version and a description of the issue. Review screenshots or exports before choosing to share them.
No topics match. Try a shorter word such as “profile” or “send”.