Advanced Actions Invoker
Overview
Advanced Actions Invoker is a powerful tool for creating and executing complex GitHub Actions workflow forms. It consists of two complementary components:
- Composer - A visual drag-and-drop form builder for designing workflow dispatch forms
- Chrome Extension - A browser extension that enhances GitHub's workflow dispatch interface with your custom forms
Together, these tools enable you to create sophisticated, validated input forms for your GitHub Actions workflows, making it easier for teams to trigger workflows with complex configuration requirements.
Getting Started
Opening the Composer
- Navigate to zektec.com/advanced-actions-invoker
- The Composer interface will load, displaying a palette of field types on the left and a canvas for building your form
- You can start building immediately - no account or login required
Installing the Chrome Extension
- Click the "Install Chrome Extension" button on the Advanced Actions Invoker page
- You'll be directed to the Chrome Web Store
- Click "Add to Chrome" to install the extension
- Once installed, the extension will automatically enhance GitHub Actions workflow dispatch forms
Building Forms with the Composer
Adding Fields
To add a field to your form:
- Find the field type you want in the palette at the top (Text, Number, Date, Dropdown, etc.)
- Click and drag the field type to the canvas
- Drop it where you want it to appear - you can insert fields at any position, not just at the end
- A visual indicator will show you where the field will be placed
Configuring Field Properties
Each field can be customized with various properties:
Label
Click directly on the field's label text to edit it inline. This is what users will see when filling out the form.
Required/Optional Status
- Fields are optional by default, indicated by "(optional)" next to the label
- To make a field required, click the menu button (three dots) and select "Mark Required"
- Required fields show a red asterisk (*) next to the label
- The required/optional indicator is always visible - no need to open a menu to see the status
Description
- Click the menu button and select "Set Description"
- Enter helper text that explains what the field is for
- Descriptions appear below the field label in a lighter, smaller font
- Great for providing examples or clarifying requirements
Default Values
- Click the menu button and select "Set Default Value"
- Enter the value you want to pre-fill
- For date fields, use format: YYYY-MM-DD (e.g., 2025-11-24)
- For time fields, use format: HH:MM (e.g., 14:30)
- Default values appear in the preview and in the final form
Configuring Select Fields (Dropdown/Radio)
When you add a Dropdown or Radio field, you can customize its options:
- Click the menu button on the dropdown/radio field
- Select "Edit Options"
- Enter options as a comma-separated list (e.g., "Option 1, Option 2, Option 3")
- Click save to apply the options
- The options will immediately appear in the preview
Note: Currently options must be edited as comma-separated text. Advanced option management (add, edit, delete, reorder individual options) is planned for a future update.
Configuring Range Fields
For Range (slider) fields:
- Click the menu button on the range field
- Select "Set Range (Min/Max)"
- Enter values as "min, max" (e.g., "0, 100")
- The slider will use these bounds
Reordering Fields
You can easily reorder fields using drag and drop:
- Hover over a field - you'll see a drag handle (six dots) on the left
- Click and hold the drag handle
- Drag the field up or down to its new position
- A colored line will show where the field will be placed when you drop it
- Release to place the field in its new position
Removing Fields
To remove a field:
- Click the menu button (three dots) on the field
- Select "Remove Field"
- The field will be immediately removed
Previewing Your Form
As you build your form in the Composer, a live preview appears on the right side of the screen. The preview shows exactly how your form will look and behave, including:
- All field labels and descriptions
- Required field indicators
- Default values
- Dropdown options
- Field validation
Try filling out the preview to test your form's behavior before exporting it.
Exporting Your Configuration
Once you're satisfied with your form:
- Use the Export panel to copy the JSON configuration (schema, layout, data)
- Copy or download the generated workflow YAML that wires the inputs into
workflow_dispatch - Paste the YAML into your repository and commit
- You can now trigger the workflow in GitHub with the enhanced form provided by the Chrome Extension
Using the Chrome Extension
Basic Usage
- Navigate to a GitHub repository
- Go to the "Actions" tab
- Select a workflow that supports workflow_dispatch
- Click "Run workflow"
- The Chrome Extension will detect the workflow dispatch form and look for your composer inputs
- If `schema` and `layout` defaults are present, it renders the enhanced form and keeps GitHub inputs in sync
- Fill out the enhanced form and click "Run workflow"
- If configuration is missing or invalid, a warning is shown and GitHub's native inputs remain usable
Configuration
The Chrome Extension uses the JSON configuration you create in the Composer. To use your custom forms:
- Create your form in the Composer and copy the workflow YAML from the Export panel
- Add the generated inputs to your workflow_dispatch block:
schema: JSON schema defining validationlayout: UI schema controlling the layoutdata: Optional default values for the formstyle: Optional styling preferences
- Commit the workflow and reload the GitHub Actions page
- The extension will automatically use your custom form when you trigger the workflow
For detailed information about the extension's architecture and advanced features, see the extension's README in the repository.
Available Field Types
Single-line text input
Numeric input with validation
Multi-line text input
Date picker with calendar
Time picker
Email input with validation
URL input with validation
Select from predefined options
Boolean on/off toggle
Select one from multiple options
Color picker
File upload with data URL encoding
Slider with min/max bounds
Switch-style boolean input
Tips & Best Practices
- Use descriptions liberally: Help users understand what each field is for
- Set sensible defaults: Pre-fill common values to speed up form completion
- Mark required fields: Clearly indicate which fields must be filled
- Group related fields: Order fields logically to create a natural flow
- Test in preview: Always test your form in the preview before exporting
- Keep it simple: Only include fields that are actually needed
Troubleshooting
Fields not appearing in preview
Make sure you've set a label for the field. Fields without labels may not render correctly.
Default values not showing
Check that you've entered the value in the correct format for the field type (especially for dates and times).
Dropdown options not saving
Ensure you're entering options as comma-separated values. Spaces around commas are automatically trimmed.
Extension not working on GitHub
Make sure the extension is enabled in chrome://extensions and that you've refreshed the GitHub page after installing.
Support & Feedback
For questions, bug reports, or feature requests:
- Email: [email protected]
- Visit: zektec.com