CtrlK
BlogDocsLog inGet started
Tessl Logo

configuring-airflow-language-sdks

Configures Airflow to run language SDK tasks (Java, Go, and future native SDKs) — register a coordinator, map a queue to it, ensure the runtime/artifact on workers, and tune coordinator options. Use when the user wants Airflow to route a queue to a native-language coordinator, asks about the `[sdk]` `coordinators`/`queue_to_coordinator` settings, `AIRFLOW__SDK__COORDINATORS`, `jars_root`, `executables_root` or other coordinator `kwargs`, `task_startup_timeout`, or why their native tasks aren't being picked up. Covers the shared routing mechanism plus per-coordinator options (e.g. JavaCoordinator, ExecutableCoordinator).

74

Quality

91%

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

86%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 strong, focused configuration skill: complete copy-paste examples in both airflow.cfg and env-var forms, kwargs tables with defaults and failure conditions, and a genuinely useful symptom→fix troubleshooting table. Its only gaps are a couple of trimmable explanatory phrases and a missing explicit restart step in the main workflow before verification.

Suggestions

Add an explicit final step to the main configuration flow (e.g. '3. Restart the scheduler/workers so the new [sdk] settings take effect') instead of mentioning the restart only inside the first troubleshooting row.

Trim the duplicated rationale for the Go bundle ('self-contained native executable, built for the worker's OS/arch') which appears in both Prerequisites and the ExecutableCoordinator section, and shorten the env-var aside listing containers/.env/Compose/Helm.

DimensionReasoningScore

Conciseness

The body is dense and assumes competence — no explanation of what Airflow or a queue is, and the per-coordinator parameter tables deliver defaults and caveats in minimal space. A few phrases could be trimmed (e.g. 'This form is convenient for containers, .env files, Docker Compose, and Helm' and the repeated self-contained-executable rationale in both the prerequisites and the ExecutableCoordinator section), which matches 'efficient; minor instances of over-explanation that could be trimmed' rather than the every-token-earns-its-place anchor.

4 / 5

Actionability

Both config forms are given as complete, copy-paste-ready examples (a full `[sdk]` ini block and valid one-line-JSON env-var exports), per-coordinator kwargs are documented with types, defaults, and failure conditions ('Set this explicitly if multiple executable JARs are present'), and verification includes concrete commands (`java -version` via `astro dev bash` or `docker compose exec`). This is fully executable guidance covering the common cases, matching the top anchor.

5 / 5

Workflow Clarity

The flow is clear and well-checkpointed: prerequisites → the two settings (Option A/B) → a numbered verification sequence → a symptom/cause/fix troubleshooting table that serves as an error-recovery feedback loop. It falls short of anchor 5 because the main configuration sequence omits an explicit step for restarting/reloading Airflow after changing settings — the restart is only mentioned buried inside the first troubleshooting row — leaving a minor gap between 'apply the settings' and 'verify'.

4 / 5

Progressive Disclosure

No bundle files (references/, scripts/, assets/) exist, and none are needed at this size; the body is a well-sectioned single-purpose configuration doc. Details that belong elsewhere are clearly signaled one-level references to sibling skills ('see the per-language deploy skill', 'see **deploying-java-sdk-bundles**', the Related Skills section), and nothing that should be split off is inlined — the per-coordinator tables are exactly what SKILL.md should carry. This matches the well-organized-structure-with-clear-signaled-references top anchor.

5 / 5

Total

18

/

20

Passed

Description

96%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.

An excellent description: concrete capability list, explicit 'Use when' triggers with the exact setting and env-var names users would mention, and a natural complaint-form trigger for the common failure mode. Its only weakness is mild overlap risk with the closely related authoring/deploying skills for the same SDKs.

DimensionReasoningScore

Specificity

The description lists multiple concrete actions — 'register a coordinator, map a queue to it, ensure the runtime/artifact on workers, and tune coordinator options' — comprehensively covering the configuration surface (routing settings, env-var form, per-coordinator kwargs, timeout). Third-person voice is used throughout, matching the top anchor's 'multiple specific concrete actions; comprehensive coverage'.

5 / 5

Completeness

It explicitly answers both questions: the 'what' in the first sentence ('Configures Airflow to run language SDK tasks...') and the 'when' via an explicit 'Use when the user wants...' clause with concrete trigger phrases. This mirrors the anchor-5 example structure of capability list followed by explicit use-when triggers.

5 / 5

Trigger Term Quality

It covers natural user phrasings and technical synonyms: 'route a queue to a native-language coordinator', '`[sdk]` `coordinators`/`queue_to_coordinator` settings', '`AIRFLOW__SDK__COORDINATORS`', '`jars_root`', '`executables_root`', '`task_startup_timeout`', and the complaint form 'why their native tasks aren't being picked up'. This matches the 'comprehensive coverage of natural terms including synonyms' anchor; it is not mere jargon because these are the exact strings a user would quote from their config or error.

5 / 5

Distinctiveness Conflict Risk

The niche is clear (Airflow SDK coordinator/queue routing configuration) with distinct triggers like the specific config keys and env vars, so conflict risk is low. However, sibling skills exist for the same language SDKs (authoring/deploying), and broad terms like 'Java, Go, and future native SDKs' or 'coordinator kwargs' could pull this skill for task-code or build questions that belong to those siblings — 'mostly distinct; minor overlap risk with closely related skills' fits better than the minimal-conflict anchor 5.

4 / 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.