CtrlK
BlogDocsLog inGet started
Tessl Logo

airflow-hitl

Builds human-in-the-loop (HITL) Airflow workflows - approval gates, form input, and human-driven branching. Use when a DAG needs a human in the loop - an approval or reject step, sign-off before a task runs, a decision or approval UI, branching on a human choice, or collecting form input mid-run; also on mentions of ApprovalOperator, HITLOperator, HITLBranchOperator, HITLEntryOperator, or HITLTrigger. Requires Airflow 3.1+. Not for AI/LLM task calls (see migrating-ai-sdk-to-common-ai).

73

Quality

90%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

88%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A high-quality, action-dense body: discovery commands before code, a complete canonical example, stable behavior contracts, and a closing safety checklist. The only weaknesses are minor time-sensitive asides and an entirely inline structure where a reference file could carry some detail.

DimensionReasoningScore

Conciseness

The body is lean and assumes Claude's competence — it never explains what Airflow, DAGs, or Jinja are, and every section carries operational content. Minor trimmable spots remain, e.g., the time-sensitive aside "at the time of writing it is `assigned_users` ... SimpleAuthManager uses username" and some repetition of the registry-check admonition, keeping it at 4 rather than the every-token-earns-its-place level of 5.

4 / 5

Actionability

Fully executable guidance throughout: copy-paste `af registry`/jq discovery commands, a complete runnable canonical DAG example, and a REST respond pattern whose `<path>` placeholders are explicitly justified by the "Discover the live endpoint rather than hardcoding a path" instruction and the commands to do so. This matches the fully-executable, common-cases-covered anchor.

5 / 5

Workflow Clarity

Steps 1-6 are clearly sequenced (pick capability → verify signatures → canonical example → behavior contracts → external integration → safety) with explicit validation checkpoints: the Step 2 live-registry check, the "prefer the registry" feedback rule for stale content, and the Step 6 safety checklist. This matches the anchor for a clear sequence with explicit validation, feedback loops, and a checklist.

5 / 5

Progressive Disclosure

The single-file body is well-sectioned with clear navigation, and cross-references to related skills are one level deep and clearly signaled ("Related skills", "Cross-references"). No bundle files exist to split content into, but the ~180-line body keeps everything inline with no externalized detail, which lands at 4 (good structure, minor organization gaps) rather than 5 (content appropriately split across well-signaled references).

4 / 5

Total

18

/

20

Passed

Description

92%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong description: concrete capabilities, an explicit 'Use when' clause rich with natural trigger phrases and class names, a version prerequisite, and a clear negative boundary. The only gap is a handful of natural synonym phrasings a user might say.

DimensionReasoningScore

Specificity

The description names the domain ("Builds human-in-the-loop (HITL) Airflow workflows") and lists multiple concrete capabilities — "approval gates, form input, and human-driven branching" — which comprehensively cover the operator set also enumerated by class name. It matches the anchor for multiple specific concrete actions with comprehensive coverage, exceeding the minor-gaps level of 4.

5 / 5

Completeness

It explicitly answers both what ("Builds ... approval gates, form input, and human-driven branching") and when ("Use when a DAG needs a human in the loop - ..."), with concrete trigger phrases, a version requirement ("Requires Airflow 3.1+"), and a negative boundary ("Not for AI/LLM task calls"). This clearly matches the both-what-and-when-with-concrete-triggers anchor.

5 / 5

Trigger Term Quality

Good natural-phrase coverage: "human in the loop", "an approval or reject step, "sign-off before a task runs", "branching on a human choice", "collecting form input mid-run", plus all five class names as triggers. A few common user phrasings are missing (e.g., "manual approval", "pause until someone responds"), so it sits at 4 rather than the comprehensive-synonym coverage of 5.

4 / 5

Distinctiveness Conflict Risk

It occupies a clear niche (Airflow HITL operators) with distinct class-name triggers and an explicit disambiguation pointing AI/LLM task calls to a different skill, minimizing conflict risk with related Airflow skills.

5 / 5

Total

19

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
astronomer/agents
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.