Guide: Automation on Git Commits

You want something to run when code lands on a branch — notify the team, kick an agent, refresh docs, deploy a side task — without spending an afternoon on webhook secrets, delivery retries, and local tunnels.

Direct answer: Pick one path:

  1. GitHub Actions (least webhook UI) — on push, an Action POSTs to a Tensorify webhook or API URL. Config lives in the repo as YAML.
  2. Single GitHub push webhook — one repo webhook into a Webhook Trigger workflow. Simpler than a custom backend; still one webhook in GitHub settings.

Tensorify runs the automation logic on a visual canvas. GitHub remains the source of commit events.

What you will build (path B — push webhook):

Webhook Trigger (GitHub push) → Transform / Code → action (Email, Slack, Agent, HTTP)

Time: ~15–20 minutes
Who this is for: Developers who want commit-triggered automation without maintaining a custom CI microservice.


Path A — GitHub Actions (minimal webhook admin)

Use this when you already live in Actions and do not want another entry under Settings → Webhooks.

  1. Create a Tensorify workflow that starts with Webhook Trigger (or API trigger) and does the work you care about.
  2. Deploy and copy the HTTPS URL.
  3. Add a repository secret TENSORIFY_HOOK_URL with that URL.
  4. Add .github/workflows/tensorify-on-push.yml:
name: tensorify-on-push
on:
  push:
    branches: [main]
jobs:
  notify:
    runs-on: ubuntu-latest
    steps:
      - name: Call Tensorify
        env:
          TENSORIFY_HOOK_URL: ${{ secrets.TENSORIFY_HOOK_URL }}
        run: |
          curl -sS -X POST "$TENSORIFY_HOOK_URL" \
            -H "Content-Type: application/json" \
            -d "{\"ref\":"$GITHUB_REF",\"sha\":"$GITHUB_SHA",\"repo\":"$GITHUB_REPOSITORY\"}"

GitHub injects GITHUB_REF, GITHUB_SHA, and GITHUB_REPOSITORY in the job environment. No webhook UI beyond Actions secrets.

Path B — One GitHub push webhook

Use this when you want GitHub to deliver full push payloads (commits, pusher, compare URL) straight into Tensorify.

Step 1: Workflow + Webhook Trigger

  1. New Workflow → name it on-git-push
  2. Add Webhook Trigger: method POST, path e.g. /git/push
  3. Prefer HMAC verification with X-Hub-Signature-256 when using GitHub’s secret

Step 2: Map commit fields

Use Transform or Code to pull what you need from the push event:

{
  "repo": "{{ webhook.body.repository.full_name }}",
  "branch": "{{ webhook.body.ref }}",
  "pusher": "{{ webhook.body.pusher.name }}",
  "message": "{{ webhook.body.head_commit.message }}",
  "compare": "{{ webhook.body.compare }}"
}

For a deeper field reference, see GitHub webhook payload reference.

Step 3: Take action

Wire Send Email, Slack/HTTP, or an AI agent as the next step.

Step 4: Deploy and register once

  1. Deploy; copy the webhook URL
  2. GitHub → repo Settings → Webhooks → Add webhook
  3. Content type application/json; secret aligned with the trigger
  4. Event: Just the push event (or customize)

Push a commit. Confirm a job in Tensorify.

Full walkthrough with email: GitHub webhook to email.


What “without complex webhook configuration” means here

| Approach | What you configure | Complexity | |----------|-------------------|------------| | Custom server + webhook | Server, TLS, signature verify, retries | High | | Tensorify + one push webhook | One URL + optional secret | Low | | Tensorify + GitHub Actions | Repo YAML + secret URL | Low (no webhook UI) |

We do not claim a magic zero-integration path to private repos without GitHub knowing about the destination. We remove the need to own that integration layer.


FAQ

Is this a replacement for GitHub Actions?
No. Actions can invoke Tensorify, or GitHub can push events into Tensorify. Heavy build matrices often stay in Actions; product/ops automation fits Tensorify well.

Branch filters?
Filter in GitHub (webhook/Actions), or drop non-matching refs in a Code/If node.

GitLab / Bitbucket?
Same pattern: their push webhook or CI job POSTs into a Webhook Trigger.


Next steps

On this page