Agent skill
gtm-workflow
Triggers when a user wants to create, update, inspect, delete, run, approve, query, schedule, trigger, or deploy a saved GTM workflow in a GTM workspace, including typed result tables, paid provider or model calls, dry runs, checkpoints, authorized triggers, and hosted workflows.
Filed under Prospecting and list building.
From eliasstravik/gtm-skills · 4 skills · 11 · pushed 2026-08-28
What it does when it runs
Triggers when a user wants to create, update, inspect, delete, run, approve, query, schedule, trigger, or deploy a saved GTM workflow in a GTM workspace, including typed result tables, paid provider or model calls, dry runs, checkpoints, authorized triggers, and hosted workflows. Not for creating or repairing the workspace itself, ICP or persona lifecycle work, other workflow engines, or one-off calls that are not saved as workflows.
Read from the skill and the 47 files bundled beside it. A skill’s own description is written to be selected by an agent, so it describes the job and not the dependencies.
- Keys and connectors you must supply
- AI_GATEWAY_API_KEY
- COMPANY_DATA_API_KEY
- CRON_SECRET
- GTM_RUN_SECRET
- TURSO_AUTH_TOKEN
- TURSO_READ_ONLY_AUTH_TOKEN
- Hosts it reaches
- buymeacoffee.com
- dotenvx.com
- feross.org
- opencollective.com
- paulmillr.com
- registry.npmjs.org
- tsx.hirok.io
- www.patreon.com
- Tool permissions it declares
- No
allowed-toolsin the frontmatter. It does act, so it runs under whatever permissions your session already grants. - Actions present in the files
- shellnetwork
Install it
View source on GitHub ↗git clone --depth 1 --filter=blob:none --sparse https://github.com/eliasstravik/gtm-skills.git /tmp/gtm-skills git -C /tmp/gtm-skills sparse-checkout set "skills/gtm-workflow" mkdir -p ~/.claude/skills/gtm-workflow cp -R "/tmp/gtm-skills/skills/gtm-workflow/." ~/.claude/skills/gtm-workflow/
Picked up without a restart. A project skill of the same name is shadowed by your personal one. For one repository only, swap ~/.claude/skills for .claude/skills. Claude Code docs ↗
The folder is the same in every client that implements the format — 46 of them — so if yours is not above, only the destination changes.
Before you install: this skill will not complete its job on a bare agent. It needs AI_GATEWAY_API_KEY, COMPANY_DATA_API_KEY, CRON_SECRET, GTM_RUN_SECRET, TURSO_AUTH_TOKEN, TURSO_READ_ONLY_AUTH_TOKEN, which you have to obtain separately.
The skill
Source on GitHub ↗Reproduced in full from eliasstravik/gtm-skills/blob/2f237f42f40858a62b53e06a0c5837f2f1a7dfc9/skills/gtm-workflow/SKILL.md, which is licensed MIT (repository). 681 words, 10 headings.
GTM workflow
Trigger
Apply this Lifecycle SOP when a request creates, updates, inspects, deletes, runs, or opens a saved GTM workflow.
Scope
Own the root workflows/ Nitro project, its managed workflows, typed tables, migrations, paid-call cache and ledger, local or Vercel runtime, native inspection tools, and deployment metadata. gtm-workspace, gtm-icp, and gtm-persona own their respective lifecycles.
Contract
| Field | Public contract |
|---|---|
| Reads | Accepted intent, workspace ownership and context files, current workflow code, supplied rows, environment-held credentials, caps, and deployment metadata |
| Writes | The root workflow project, workflow-owned tables and adapters, committed migrations, and database rows created by accepted runs |
| Outputs | An accepted workflow change, validation or deployment state, inspection result, or database-backed run outcome |
| Approval | The user accepts tracked changes, production effect, real spend, external writes, checkpoint continuation, destruction, and credential entry |
| Persists | Source and migrations in main Git history; results, cache, ledger, and run index in the database; retained execution traces in the runtime |
| Handoff | gtm-workspace for repository structure or connections, gtm-icp for market definitions, and gtm-persona for buyer definitions |
Inputs
Use the accepted intent, resolved GTM workspace and owner, relevant ICP and persona files, current workflow project, supplied rows, provider documentation and credentials available through the environment, accepted caps, and deployment metadata.
Roles
The agent owns authoring, validation, dry runs, checkpointed runs, scoped changes, migrations, inspection, UI opening, and Git-connected deployment through the accepted main commit. The user accepts behavior, limits, tracked changes and their production deployment effect, real spend, external writes, checkpoint continuation, destruction, and credentials they must enter.
Procedure
| Condition | Action |
|---|---|
| No action is clear | Use the guided menu in flows |
| Create | Follow create in flows |
| Update | Follow update in flows |
| Inspect | Follow inspect in flows |
| Delete | Follow delete in flows |
| Run | Follow run in flows |
| Open | Follow open |
| No valid workspace resolves | Stop before workflow writes and hand creation or connection to gtm-workspace |
Outputs
Produce an accepted workflow change, committed migration, validation result, deployment state, inspection, opened native tool, or database-backed run outcome.
Exceptions
Report a run still active after the bounded poll so gtm runs get can retrieve it later. A duplicate live run returns the existing run key. Leave tracked state unchanged when persistence fails.
QC
- Secrets never appear in prompts, tracked files, conversation, or command output; values move from
.envthrough the shell only. - Before editing any workflow or managed library file, read the pinned runtime's bundled documentation under
workflows/node_modules/workflow/docs/; assume prior SDK knowledge is outdated. - Run
gtm checkand compare every// gtm-lib v11header and recorded content hash before an action. Show locally modified diffs, offer a recopy, and never apply it silently. - Copy the versioned lib, routes, scripts, and config verbatim and edit workflow-owned tables, adapters, migrations, and workflow files instead.
- Route every paid vendor call through
provider()and every model call throughagent(). - Use committed migrations. The project has no
db:pushcommand. - When
GTM_SANDBOX=1, use Turso, theapimodel backend, host-approved tracked writes, and no exposed port or remote Git command. The sandbox authors, validates, dry-runs, and queries; it starts no real run. Real runs, approvals, and cancellations go through the host's trusted controls. - Save accepted tracked changes to history on
main. - For
Runs: on Vercel, state in the save gate that themaincommit starts production deployment; do not add a second deploy gate or deploy token. - Never use
AskUserQuestion. - Start, reuse, record, and stop processes only under open.
References
Read the contract for every action, flows for create, update, inspect, delete, or run, open for open and local server work, conversation for visible messages, and deploy before Vercel changes. Read providers before adapter work and agents when configuring command permissions.
Files bundled with it
These load only when the skill asks for them, so they cost nothing until it runs.
- agents.md
- contract.md
- conversation.md
- deploy.md
- flows.md
- open.md
- providers.md
- review-checklist.md
- command-permission.mjs
- .env.example
- .nvmrc
- .gitkeep
- 0000_even_ronan.sql
- 0001_wise_mac_gargan.sql
- 0002_abandoned_quentin_quire.sql
- 0003_watery_stone_men.sql
- 0000_snapshot.json
- 0001_snapshot.json
- 0002_snapshot.json
- 0003_snapshot.json
- _journal.json
- drizzle.config.ts
- gitignore
- agent.ts
- approve.ts
- db-url.ts
- db.ts
- migration-ledger.ts
- provider.ts
- redact.ts
- rows.ts
- schema.ts
- steps.ts
- nitro.config.ts
- package-lock.json
- package.json
- README.md
- gtm.ts
- migrate-cloud.ts
- verify-migrations.ts
- [token].post.ts
- deployment.get.ts
- [...workflow].ts
- cancel.post.ts
- trigger.post.ts
- [runId].get.ts
- vercelignore
Other skills for the same job
Different authors, same problem. Matched on the words in the skill name, across every library in the catalogue except this one.
- content-workflow by thatrebeccarae · 119
- account-workflow by jamieerickson-sparq · 1
Need help setting it up?
This page tells you what gtm-workflow does and what it needs. Cheetah builds the agent setup it runs inside: data, CRM, sequencing and the guardrails.
Book a call →The directory stays free. There is nothing gated behind this.