dagster-expert provides in-depth knowledge of Dagster concepts and assists in project structure, debugging, and codebase navigation. It is aimed at users looking for expert guidance in working with Dagster and its CLI.
$ npx skills add https://github.com/dagster-io/skills --skill dagster-expertdagster-expert is an AI agent skill that provides comprehensive guidance for building and managing Dagster data pipelines and workflows. It assists with project scaffolding, asset pattern design, automation setup using schedules and sensors, and CLI command usage. The skill helps developers debug materialization issues, structure projects for multiple pipelines, and implement best practices for production-quality Dagster applications. It supports asset dependencies, partitioning strategies, multi-assets, metadata configuration, and declarative automation patterns.
Install using `$ npx skills add https://github.com/dagster-io/skills --skill dagster-expert`
Guiding users through Dagster project setup and asset definitions.
Assisting in debugging and navigating the Dagster codebase.
Facilitating integration with over 40 external tools.
$ npx skills add https://github.com/dagster-io/skills --skill dagster-expertgit clone https://github.com/dagster-io/skillsCopy the install command above and run it in your terminal.
Launch Claude Code, Cursor, or your preferred AI coding agent.
Use the prompt template or examples below to test the skill.
Adapt the skill to your specific use case and workflow.
Act as a Dagster expert and help me with [TASK] in my Dagster project. I'm working with [COMPANY_NAME]'s [PROJECT_NAME] pipeline. The relevant code is in [FILE_PATH]. Here's the error I'm encountering: [ERROR_DETAILS]. Provide a step-by-step solution with code snippets if needed.
# Dagster Expert Analysis for Acme Corp's Sales Pipeline
## Problem Summary
The `process_sales_data` op in your `sales_pipeline.py` is failing with:
```
DagsterTypeError: Expected output of type `SalesData` but got `dict`
```
## Root Cause
The op's output schema defines a `SalesData` model, but your compute function returns a raw dictionary:
```python
def process_sales_data(context, raw_data: Dict[str, Any]) -> Dict[str, Any]:
return {"processed": True} # ❌ Should return SalesData instance
```
## Solution
1. **Fix the compute function**:
```python
from models import SalesData
def process_sales_data(context, raw_data: Dict[str, Any]) -> SalesData:
return SalesData(
id=raw_data["id"],
amount=raw_data["amount"],
timestamp=raw_data["timestamp"]
)
```
2. **Verify your assets definition**:
```python
@asset(required_resource_keys={"io_manager"})
def sales_data() -> SalesData:
return process_sales_data(None, load_raw_data())
```
3. **Test locally**:
```bash
dagster dev -f sales_pipeline.py
```
## Additional Checks
- Ensure `SalesData` class is imported in your pipeline file
- Verify your IO manager can serialize the `SalesData` type
- Run `dagster job execute -f sales_pipeline.py` to test the full pipeline
Would you like me to review any other aspects of your Dagster configuration?Take a free 3-minute scan and get personalized AI skill recommendations.
Take free scan