Docs

RunMacro Documentation

Learn RunMacro from basics to advanced.

Everything you need to start and master RunMacro — from basic commands to advanced automation workflows.

RunMacro robot
Docs Features Team Template Cloud
☁ Features

Share templates through Team Template Cloud with GitHub Gist

Create a separate GitHub Gist, open Cloud › Settings, enter its ID under Team Template Cloud, and add a token only on machines that must write. Save, open File › Open macro template..., expand Team templates, and press Sync. A My Template entry can be published to that Gist with Upload Team.

Prerequisites

  • A GitHub Gist dedicated to Team Template Cloud and its correct Gist ID.
  • Internet access to the GitHub API with valid HTTPS certificate verification.
  • A GitHub token able to write the Gist on machines that upload, edit, or delete; read-only machines can omit it for a public Gist.
  • An upload source that exists under My Templates with its main file still available locally.

Supported modes

  • Desktop ModeConfiguration, sync, and Team Template management are available from Studio in Desktop Mode. A downloaded template still needs Desktop-compatible commands if you intend to run it in this mode.
  • Browser ModeThe cloud actions also work in Browser Mode. The chrome_cdp metadata is advisory; Chrome/CDP is only needed when running or testing the template web commands.

What it does

Team Template Cloud uses a separate GitHub Gist as a distribution source. The Gist holds team_templates_manifest.json plus one Base64 file per template. On Sync, RunMacro downloads the Gist, rebuilds the local cache, and lists entries under Team templates. A My Template entry can be uploaded by ID with its metadata, version, and timestamp recorded in the manifest. Read-configured machines can Copy & Open or Add entries, while upload, edit, and deletion require a token able to write the Gist.

When to use it

  • Several machines need the same standardized workflows or reusable blocks.
  • One maintainer publishes templates while other machines mainly download and use them.
  • You need to update or remove shared entries by ID from a Gist you control.
  • You want the team template repository separated from the regular PMacro/QMacro Cloud Sync Gist.

When not to use it

  • You only reuse the template on one machine — My Templates is sufficient.
  • You need member permissions, approval workflow, or concurrent editing; this feature operates on a Gist and does not add those controls.
  • You want to synchronize the open macro and its sub-macros — use regular PMacro/QMacro Cloud Sync.
  • The template contains secrets written directly into commands and the Gist may be readable by others.

Configuration steps

  1. Create a GitHub Gist dedicated to team templates and copy the Gist ID from its URL.
  2. On an uploading machine, prepare a GitHub token able to write Gists; a public-Gist download-only machine can skip this.
  3. In RunMacro, open Cloud › Settings or Settings › Cloud and locate the Team Template Cloud card.
  4. Enter the Gist ID and, when writing or reading a private Gist, the Gist access token; click Save settings. A non-empty Gist ID enables the feature.
  5. Open File › Open macro template..., expand Team templates, and click Sync.
  6. Select a Team entry, review its metadata and commands, then use Copy & Open or Add.
  7. To publish, save and test the macro as a My Template entry with a stable ID and suitable Version.
  8. Select that My Template entry and click Upload Team. If the same ID already exists at an equal or higher version, read the warning and choose whether to overwrite.
  9. After an upload, metadata edit, or Team deletion, have other machines press Sync so their cache reflects the new manifest.

Every option explained

Team Template Gist ID

The ID of the separate Gist holding the Team manifest and templates. Saving a non-empty value also enables Team Template Cloud; it is not the primary PMacro/QMacro Gist.

Gist access token

Required for upload, metadata update, and deletion, and also needed to read a private Gist. The Team token is stored with Windows DPAPI. If the Team field is empty, the regular Cloud Sync token can be used as a fallback.

Save / Clear access token

Save persists the Gist ID and token in Settings. Under Settings › Cloud, Clear Team access token removes the token after confirmation while retaining the Gist ID for download configuration.

Sync in the Team templates group

Downloads the Gist files, replaces the local Team template cache with the current manifest contents, and reports new, updated, and removed entries. Version is compared first, then timestamp when needed.

Upload Team

Enabled only for My Templates. The main file is Base64-encoded, the same ID is replaced in the manifest, and both manifest and template file are PATCHed to the Gist.

Version overwrite warning

Before upload, the app reads the remote entry. If the local version is lower than or equal to the remote version, a confirmation shows both versions; continuing still overwrites by ID.

Edit Team template

Lets you change title, description, category, tags, mode, type, version, and icon while keeping the ID fixed. Saving re-uploads the cached file with new metadata, then syncs it down.

Delete Team template

After confirmation, removes the entry from the manifest and sends null for the matching template file on the Gist, then rebuilds the local cache.

Copy & Open / Add

Uses a Team entry like any library template: opening creates a separate .pmacro workspace file, while Add clones commands into a new group in the current macro.

Expected result

The Gist contains team_templates_manifest.json plus team_template__<id>.pmacro-template.b64 for each entry. After sync, files are Base64-decoded into the local cache and appear under Team templates. Opening or inserting works on a copy or clone rather than directly editing the cached file.

Real example

Example: publish a login block to the team machines

  1. On the publishing machine, create a separate Gist and save its ID and token under Team Template Cloud.
  2. Test the login block with input variables, then use File › Save current macro as template... with ID login-block, Block type, and version 1.0.0.
  3. Open the library, select login-block under My Templates, and click Upload Team.
  4. On another machine, save the same Team Gist ID; omit the token if the Gist is public and the machine only downloads.
  5. Open Team templates, click Sync, select the block, and click Add in the target macro.

Example: update a Team template to a new version

  1. Edit the source under My Templates, test it, and save it again under the same ID with Version 1.1.0.
  2. Open the library, select the My Template entry, and click Upload Team.
  3. If the version warning appears, compare local and remote values and confirm only when it is the intended entry.
  4. RunMacro updates the Gist manifest and file, then synchronizes the publishing machine cache.
  5. On receiving machines, click Sync and verify Version 1.1.0 before opening or inserting.

Limitations and failure cases

  • Team Template Cloud uses a Gist for storage; RunMacro provides no member directory, roles, approval workflow, or concurrent-edit lock.
  • Entries are identified by ID and upload replaces the same ID. The RunMacro interface has no merge, check-out, or version history.
  • Version is comparison metadata. A user can still confirm overwrite with a local version that is lower than or equal to the remote one.
  • Team entries do not refresh merely because the library opens; receiving machines must press Sync to fetch the latest manifest.
  • Each sync deletes the current Team cache directory and rebuilds it from the Gist. A remotely removed file disappears from the local cache.
  • Remote IDs are slug-normalized to lowercase letters, digits, -, or _ and truncated to 80 characters; an empty ID becomes template. Unusual IDs are therefore not simply rejected, and distinct IDs can collapse to one value. Entries with a missing Base64 file or malformed Base64 are skipped while the cache is rebuilt.
  • Base64 is not encryption. Anyone who can read the Gist can retrieve the template package and inspect an unprotected PMacro.
  • The Team path has no per-content SHA-256 or signature like system template sync; only use a Gist you trust.
  • Upload Team only accepts a source under My Templates; the button cannot directly republish a built-in or Team entry.
  • Upload sends the main macro package and manifest metadata, not a separate README file; a Team entry may have no README available to View.
  • Team sync requires verified HTTPS; the ordinary Cloud download SSL exception does not create a separate unverified Team transport path.

Tips & common mistakes

Use a dedicated Gist for Team Template Cloud rather than mixing it with the primary PMacro/QMacro Gist; the two paths have different manifests and file conventions.
Store a token only on machines that upload, edit, or delete. Public-Gist download machines can leave it blank to reduce the impact of a lost machine.
A non-empty Gist ID is what enables Team Template Cloud; the Cloud › Settings dialog has no independent on/off switch.
Keep the ID stable across releases and increase Version such as 1.0.0 to 1.1.0 so overwrite warnings and sync summaries remain meaningful.
Before upload, replace passwords, cookies, API keys, and account data with variables; Base64 on the Gist does not conceal template contents.

Verification details

  • core/team_template_cloud.py
  • core/template_library.py
  • ui/main_window.py
  • ui/cloud_sync_dialog.py
  • core/settings.py
RunMacro robot

Ready to automate smarter?

Download RunMacro and start automating your desktop, browser, and business workflows today.