The AI engineering loop, end to end.
This is a step-by-step Langfuse workshop built on a small TypeScript sample application: the Dad IT Support Agent. The workshop covers the full AI engineering loop with Langfuse: tracing, prompt management, monitoring, datasets, experiments, and evaluation.
What you will do
Have the workshop app running locally with both OpenAI and Langfuse credentials in place. From here you can skim 01-base-app, then start building in 02-tracing.
You can customize your experience by changing the phone specs in support-data.ts file. Adding your dad's phone information means, you will get replies for the right type of phone.
This is the blank slate for the tracing step — same code as checkpoint/01-base-app, with no Langfuse wiring yet. The Langfuse packages are already in package.json — run npm inst...
You have a working traced app. The system prompt lives as a constant called SYSTEMPROMPT in src/server/support-agent.ts and is used directly as the system message.
You have a traced app with optional Langfuse-managed prompts. Every chat turn lands in Langfuse as a nested trace.
You have a traced, attributed, monitored app. data/seed-dataset.json and scripts/seed-dataset.ts are already in the repo at this checkpoint.
Your dataset is seeded in Langfuse. scripts/run-dataset.ts is already in the repo.
Your app is traced, monitored, has a hosted dataset, and at least one experiment run with both keywordoverlap and correctness scores. Now you make a change to the app and rerun ...
You have walked through every loop step.