airflow-1-dag-design-principles

Sub-skill of airflow: 1. DAG Design Principles (+3).

5 stars

Best use case

airflow-1-dag-design-principles is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Sub-skill of airflow: 1. DAG Design Principles (+3).

Teams using airflow-1-dag-design-principles should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/1-dag-design-principles/SKILL.md --create-dirs "https://raw.githubusercontent.com/vamseeachanta/workspace-hub/main/.agents/skills/_archive/operations/automation/airflow/1-dag-design-principles/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/1-dag-design-principles/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How airflow-1-dag-design-principles Compares

Feature / Agentairflow-1-dag-design-principlesStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Sub-skill of airflow: 1. DAG Design Principles (+3).

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# 1. DAG Design Principles (+3)

## 1. DAG Design Principles

```python
# Use meaningful DAG and task IDs
dag_id='sales_daily_etl_pipeline'  # Good
dag_id='dag1'  # Bad

# Set appropriate concurrency limits
max_active_runs=1  # For data pipelines with dependencies
max_active_tasks_per_dag=16  # Limit resource usage

# Use tags for organization
tags=['production', 'etl', 'sales']

# Always set catchup=False unless backfill needed
catchup=False

# Use execution_timeout to prevent stuck tasks
execution_timeout=timedelta(hours=2)
```


## 2. Task Best Practices

```python
# Keep tasks atomic and idempotent
def process_partition(partition_date: str):
    """Idempotent: can be safely re-run."""
    # Delete existing data for this partition
    delete_partition(partition_date)
    # Process and insert new data
    insert_data(partition_date)

# Use retries with exponential backoff
default_args = {
    'retries': 3,
    'retry_delay': timedelta(minutes=5),
    'retry_exponential_backoff': True,
}

# Avoid heavy processing in sensors
# Bad: sensor does complex computation
# Good: sensor checks simple condition, processing in separate task
```


## 3. Configuration Management

```python
# Use Variables for configuration, not hardcoded values
batch_size = Variable.get('batch_size', default_var=1000)

# Use Connections for credentials
conn = BaseHook.get_connection('my_database')

# Environment-specific configuration
env = Variable.get('environment')
config = Variable.get(f'config_{env}', deserialize_json=True)
```


## 4. Testing DAGs

```python
# tests/test_dags.py
import pytest
from airflow.models import DagBag

def test_dag_loads():
    """Test that DAGs load without errors."""
    dagbag = DagBag()
    assert len(dagbag.import_errors) == 0

def test_dag_structure():
    """Test DAG has expected structure."""
    dagbag = DagBag()
    dag = dagbag.get_dag('my_pipeline')

    assert dag is not None
    assert len(dag.tasks) == 5
    assert dag.schedule_interval == '@daily'
```

Related Skills

itinerary-design

5
from vamseeachanta/workspace-hub

Use when constructing a day-by-day itinerary inside a trip plan. Encodes base-count rules, jet-lag handling, transit-day discipline, slack budgeting, and the "last day = travel only" rule. Invoked by the trip-planner skill.

mooring-design

5
from vamseeachanta/workspace-hub

Design and analyze mooring systems including CALM and SALM buoys, catenary moorings, and spread mooring configurations. Covers mooring line design, safety factors, environmental loading, and compliance with DNV, API, and ABS standards.

touchdesigner-mcp

5
from vamseeachanta/workspace-hub

Control a running TouchDesigner instance via twozero MCP — create operators, set parameters, wire connections, execute Python, build real-time visuals. 36 native tools.

popular-web-designs

5
from vamseeachanta/workspace-hub

54 production-quality design systems extracted from real websites. Load a template to generate HTML/CSS that matches the visual identity of sites like Stripe, Linear, Vercel, Notion, Airbnb, and more. Each template includes colors, typography, components, layout rules, and ready-to-use CSS values.

design-md

5
from vamseeachanta/workspace-hub

Author/validate/export Google's DESIGN.md token spec files.

Codex-design

5
from vamseeachanta/workspace-hub

Design one-off HTML artifacts (landing, deck, prototype).

frontend-design

5
from vamseeachanta/workspace-hub

Create distinctive, production-grade web interfaces with high design quality. Use for components, pages, dashboards, and full applications that need to stand out from generic AI aesthetics.

canvas-design

5
from vamseeachanta/workspace-hub

Create original visual art in PNG and PDF formats using design philosophy principles. Express aesthetic movements visually with minimal text. Use for creating museum-quality visual artifacts, design manifestos, and artistic compositions.

discipline-refactor-core-principles

5
from vamseeachanta/workspace-hub

Sub-skill of discipline-refactor: Core Principles.

scientific-problem-selection-key-design-principles

5
from vamseeachanta/workspace-hub

Sub-skill of scientific-problem-selection: Key Design Principles.

clinical-trial-protocol-waypoint-based-design

5
from vamseeachanta/workspace-hub

Sub-skill of clinical-trial-protocol: Waypoint-Based Design (+2).

clinical-trial-protocol-study-design-recommendations

5
from vamseeachanta/workspace-hub

Sub-skill of clinical-trial-protocol: Study Design Recommendations.