GitHub Agentic Workflows

loopkeep's workflow format is GitHub Agentic Workflows (gh-aw), extended for local execution. You can bring a gh-aw file to loopkeep and run it before it ever reaches GitHub Actions, and you can export a loopkeep workflow to gh-aw — with an honest report of what survives the trip.

The compatibility contract

  • A key that exists in gh-aw means what it means in gh-aw. No reinterpretation, ever — if upstream later adds a key loopkeep also wanted, upstream's meaning wins.
  • loopkeep only adds keys: local trigger types, local safe-outputs, and settings namespaced under x-loopkeep.*.
  • Unknown keys are preserved and warned about, never dropped. A file round-trips intact.

Import

lk import <gh-aw-file>

Brings a gh-aw workflow into the workspace. Triggers loopkeep can't run locally (GitHub-hosted event triggers, unless delivered via the Console) become manually runnable instead of failing — so "try this workflow on my machine before pushing it" always works. This is the same role act plays for GitHub Actions.

Export

lk export --to-gh-aw <workflow>          # human-readable report
lk export --to-gh-aw <workflow> --json

Export never degrades silently. Every part of the workflow lands in one of three buckets, and the report says which:

BucketMeaningExamples
greenpasses through unchangedschedule, engine, GitHub-native safe-outputs
yellowtranslated, meaning preserved — the translation is spelled outon_limit: replacecancel-in-progress: true
redno equivalent exists — listed as lost, export still proceedsfile-watch, run-completed, local safe-outputs

The point of the escape hatch is knowing in advance what leaving costs. If a workflow leans on local triggers, the red list tells you exactly which part of its behavior won't follow you to Actions.