Analytics-tracking-automation tracking-sync

Use when the user wants GTM-ready config generation, GTM workspace sync, or container selection from an approved schema.

install
source · Clone the upstream repo
git clone https://github.com/jtrackingai/analytics-tracking-automation
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/jtrackingai/analytics-tracking-automation "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/tracking-sync" ~/.claude/skills/jtrackingai-analytics-tracking-automation-tracking-sync && rm -rf "$T"
manifest: skills/tracking-sync/SKILL.md
source content

Tracking Sync

Use this skill for Step 4 and Step 5 work.

Inputs

One of:

  • approved
    <artifact-dir>/event-schema.json
  • existing
    <artifact-dir>/gtm-config.json

Workflow

If the telemetry consent prompt appears and no prior choice is recorded, stop and follow ../../references/telemetry-consent.md before continuing.

If GTM config does not exist yet:

./event-tracking generate-gtm <artifact-dir>/event-schema.json --measurement-id <G-XXXXXXXXXX>

Then sync:

./event-tracking sync <artifact-dir>/gtm-config.json

If account/container/workspace IDs are already confirmed, skip interactive selection:

./event-tracking sync <artifact-dir>/gtm-config.json --account-id <account-id> --container-id <container-id> --workspace-id <workspace-id>

Hard Rules

  • Do not bypass schema approval unless the user explicitly wants
    --force
    .
  • Treat custom dimensions as a blocking checklist before sync/publish.
  • Never auto-select GTM account, container, or workspace for the user.
  • sync
    calls Google's official GTM API via interactive OAuth. The consent flow needs outbound HTTP and a local loopback callback on
    127.0.0.1
    ; run
    sync
    in an environment that permits both.
  • Run
    sync
    with an interactive TTY from the start whenever it may prompt for OAuth consent, account, container, workspace, or new workspace name. Non-interactive invocation will fail at the first prompt.
  • Use non-interactive
    sync
    only when exact
    --account-id
    ,
    --container-id
    , and
    --workspace-id
    values are already confirmed.

Required Output

Produce and share:

  • <artifact-dir>/gtm-config.json
  • <artifact-dir>/gtm-context.json
  • <artifact-dir>/workflow-state.json

For Shopify runs, also expect:

  • <artifact-dir>/shopify-custom-pixel.js
  • <artifact-dir>/shopify-install.md

Closeout Style

  • default to a short answer-first sync summary before listing files
  • summarize what was generated or synced, what still needs manual selection or approval, and any blocking checklist items first
  • keep file listings and follow-up commands after the summary

Stop Boundary

Stop after sync unless the user explicitly asks for verification.

Default next phase:

./event-tracking preview <artifact-dir>/event-schema.json --context-file <artifact-dir>/gtm-context.json

References