timescale/crayon · Archived

triggers

How to trigger workflows and nodes. Covers MCP tools (run_workflow, run_node), HTTP webhooks (async/sync), authentication, and cron scheduling.

First seen Jun 22, 2026

Installation

$ npx skills add timescale/crayon --skill triggers

Stronger alternatives

This repository is archived — consider an actively maintained alternative.

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from timescale/crayon.

npx skills add timescale/crayon

Browse all from timescale/crayon

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 8
Default branch main
Open issues 0
Status Archived

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 4,110 B
  • docs SUMMARY.md 159 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 2 installs

SKILL.md

Triggers

Crayon workflows can be triggered via MCP tools, HTTP webhooks, or cron schedules.

MCP Tools (Claude)

Use these to trigger workflows and nodes directly from Claude:

  • runworkflow — run a workflow by name with JSON input. Returns runid, status, and result.
  • runnode — run a single node (wrapped in a workflow for durability). Takes optional workflowname for connection resolution.
  • list_runs — list recent workflow runs (optionally filtered by workflow name).
  • get_run — get a specific run by ID (supports prefix matching like git short hashes).
  • get_trace — get the full execution trace with operation tree and timings.

Webhooks

Two modes for HTTP triggering:

Test Mode

Interactive triggers (CLI, MCP tools) run in test mode by default — side-effect nodes describe what they would do without actually performing the action. Webhooks and cron run live by default. Pass "test_mode": true in the request body to run a webhook in test mode instead.

Async (fire-and-forget)

POST /dev/api/workflows/{workflow_name}/start
Authorization: Bearer {token}
Content-Type: application/json

{"input": {}}
  • Runs live by default (side effects are performed)
  • Pass "test_mode": true to run in test mode instead
  • Returns 202 immediately with { "status": "accepted", "runId": "...", "workflow": "..." }
  • The workflow runs in the background
  • Poll status via GET /dev/api/runs/{runId} — returns { "status": "SUCCESS" | "ERROR" | "PENDING", ... }

Sync (blocking)

POST /dev/api/workflows/{workflow_name}/run
Authorization: Bearer {token}
Content-Type: application/json

{"input": {}}
  • Runs live by default (side effects are performed)
  • Pass "test_mode": true to run in test mode instead
  • Blocks until the workflow completes
  • Returns 200 with { "run_id": "...", "status": "SUCCESS", "result": ... }
  • Returns 500 on error with { "status": "ERROR", "error": "..." }
  • Connection stays open for the full duration of the workflow

Authentication

Webhook requests require a Bearer token in the Authorization header. Tokens are Ed25519 JWTs signed by the auth-server.

Generate a token via the Dev UI: Open the Trigger tab → click Async or Sync → use the token generator (configurable expiry: 7d, 30d, 90d, 365d).

Generate a token via MCP: generatewebhooktoken — specify expiry (7d, 30d, 90d, 365d).

Generate a token via API:

POST /dev/api/webhook-token
Content-Type: application/json

{"expiresIn": "30d"}

Returns { "data": { "token": "...", "expiresAt": "..." } }

URL Format

https://{flyappname}.fly.dev/dev/api/workflows/{name}/start

The {workflow_name} must be URL-encoded if it contains special characters.

Cron Scheduling

Workflows can be scheduled to run on a recurring basis via the cron system. The auth-server acts as the external scheduler — it sends HTTP requests to machines at the right times, auto-waking them from Fly.io's auto_stop.

Manage schedules via Dev UI: Open the Schedule tab to create, pause, resume, or delete schedules.

Manage via MCP tools:

  • listcronjobs — list all scheduled jobs
  • createcronjob — create a new schedule (cron expression + timezone)
  • updatecronjob — update schedule, enable/disable
  • deletecronjob — remove a schedule
  • listcronruns — view execution history for a job

Test mode: Cron jobs run live by default. To run a cron job in test mode, include "test_mode": true in the job's input JSON when creating or updating the job. This value is forwarded to the workflow execution.

Cron behavior:

  • Scheduler ticks every 15 seconds
  • Jobs that fail 10 consecutive times are automatically disabled
  • The cron run status tracks both the trigger (HTTP call) and the workflow outcome (polled from DBOS)
  • Run statuses: triggered → success | error | timeout