annotating-task-lineage

Annotate Airflow task lineage with inlets and outlets using OpenLineage datasets.

419|61|Updated Jan 13, 2026
One-click install
npx skills add https://github.com/astronomer/agents --skill annotating-task-lineage
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: annotating-task-lineage
Source: https://github.com/astronomer/agents/tree/main/skills/annotating-task-lineage
Command: npx skills add https://github.com/astronomer/agents --skill annotating-task-lineage

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Annotate Airflow tasks with data lineage using inlets and outlets to add metadata when operators do not have built-in OpenLineage extractors.

Core Features & Use Cases

  • Manual lineage annotation using inlets and outlets for operators without extractors.
  • Supports OpenLineage Datasets and Airflow Assets / Datasets to model inputs and outputs.
  • Use Case: Add lineage to a simple BashOperator by declaring inputs and outputs, enabling downstream lineage tracking.

Quick Start

Use the annotating-task-lineage skill to add manual lineage to a task by defining inlets and outlets in the operator.

Frequently Asked Questions about annotating-task-lineage

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add data lineage to Airflow tasks when the operator lacks a built-in OpenLineage extractor?

You can add data lineage to Airflow tasks by manually annotating inlets and outlets with OpenLineage datasets or Airflow assets, enabling lineage tracking for operators without built-in extractors.

What is manual lineage annotation using inlets and outlets in Airflow?

Manual lineage annotation using inlets and outlets is a method to explicitly declare data inputs and outputs for Airflow tasks, allowing teams to track data flow from sources to targets.

Can I use OpenLineage datasets to track lineage for a simple BashOperator in Airflow?

Yes, you can use OpenLineage datasets or Airflow assets to define inlets and outlets for a simple BashOperator, enabling downstream lineage tracking even without a dedicated extractor.

When do I need to manually specify inlets and outlets for Airflow lineage tracking?

You need to manually specify inlets and outlets when your Airflow operators do not have built-in OpenLineage extractors and your DAG requires explicit lineage metadata to model data flow.

Does manual lineage annotation work with complex Airflow DAGs that use Airflow assets?

Yes, manual lineage annotation is applicable to both simple and complex Airflow DAGs, supporting the use of Airflow assets and OpenLineage datasets to comprehensively track data flow.