Events

Community Events & Workshops

Join live workshops, coding sessions, and community activities. Register for upcoming events or watch recordings of past ones.

List Calendar
Subscribe to all events
Add to Google Calendar Add to Apple Calendar

Use this URL in Outlook or any calendar app.

Filtered by: agent-systems Clear

Past recordings

Workshop

Skills.md from Scratch: Build a Skill-Driven Coding Agent

A newer, combined version of this workshop is available: [Coding Agent with Skills](/workshops/coding-agent-v2). We start from the coding agent from the prerequisite workshop and turn it into a general-purpose coding agent with two reusable behavior layers: skills and slash commands. Skills are loaded by the agent when the user's request matches a skill description. Commands are invoked by the user with a leading slash and rendered into prompts before the agent acts. ## Links External resources for this workshop: - [Starting notebook](https://github.com/alexeygrigorev/workshops/blob/main/agent-skills/notebook.ipynb) - [GitHub fetch skill](https://github.com/alexeygrigorev/workshops/blob/main/agent-skills/gh-fetch-skill.md) - [Prototype implementation](https://github.com/alexeygrigorev/workshops/tree/main/agent-skills/prototype) - [Prerequisite coding-agent workshop](https://github.com/alexeygrigorev/workshops/tree/main/coding-agent) - [ToyAIKit](https://github.com/alexeygrigorev/toyaikit) - [OpenCode](https://github.com/anomalyco/opencode) - [OpenCode skills documentation](https://opencode.ai/docs/skills/) - [AgentSkills spec](https://agentskills.io) ## The agent you will build The final workshop system looks like this: ```mermaid flowchart LR USER["User"] RUNNER["ToyAIKit runner<br/>OpenAI Responses"] LLM["OpenAI model"] CODETOOLS["Coding tools<br/>read, write, tree, bash, search"] SKILLTOOL["skill(name) tool"] LOADER["SkillLoader"] SKILLS["skills/*/SKILL.md<br/>scripts and templates"] COMMANDS["commands/*.md"] COMMANDTOOL["execute_command(name, args)"] USER -->|plain request| RUNNER USER -->|/command| RUNNER RUNNER --> LLM RUNNER --> CODETOOLS RUNNER --> SKILLTOOL SKILLTOOL --> LOADER LOADER --> SKILLS RUNNER --> COMMANDTOOL COMMANDTOOL --> COMMANDS ``` The project stays small enough to understand in a notebook, but it mirrors the pieces used by real coding agents. The coding tools let the model read, write, search, and run commands. The skill loader turns `SKILL.md` files with YAML frontmatter into tool-loadable instructions. The command loader turns markdown files like `review.md` or `test.md` into reusable prompt templates.

January 16, 2026
Workshop

Building AI Agents with MCP, PydanticAI and OpenAI

We build a course FAQ assistant from the bottom up. First we expose a plain Python `search(query)` function to the OpenAI Responses API. Then we turn the same idea into a reusable agent loop, compare `toyaikit`, OpenAI Agents SDK, and PydanticAI, and finally move the FAQ tools behind an MCP server that can be used from a notebook, PydanticAI, Cursor, and VS Code. ## Links The main resources: - [AI Bootcamp: From RAG to Agents](https://maven.com/alexey-grigorev/from-rag-to-agents) - [Prerequisite workshop: Building a Coding Agent](/events/building-coding-agent-python-django) - [Data Engineering Zoomcamp FAQ source document](https://docs.google.com/document/d/19bnYs80DwuUimHM65UV3sylsCn2j1vziPOwzBwQrebw/edit?tab=t.0) - [Parsed FAQ JSON](https://github.com/alexeygrigorev/llm-rag-workshop/blob/main/notebooks/documents.json) - [FAQ parsing notebook](https://github.com/alexeygrigorev/llm-rag-workshop/blob/main/notebooks/parse-faq.ipynb) ## The system you will build The final setup looks like this: ```mermaid flowchart LR NOTEBOOK["Jupyter notebook"] OPENAI["OpenAI Responses API"] FRAMEWORKS["Agents SDK<br/>PydanticAI"] MCPCLIENT["MCP clients<br/>toyaikit, PydanticAI, Cursor"] MCPSERVER["FastMCP server<br/>SSE or stdio"] TOOLS["FAQ tools<br/>search, add_entry"] INDEX["minsearch index<br/>FAQ JSON"] NOTEBOOK -->|function calling| OPENAI NOTEBOOK --> FRAMEWORKS FRAMEWORKS -->|tool calls| TOOLS NOTEBOOK -->|MCP client| MCPCLIENT MCPCLIENT -->|MCP protocol| MCPSERVER MCPSERVER --> TOOLS TOOLS --> INDEX ``` The FAQ data comes from the Data Engineering Zoomcamp FAQ. The first half of the workshop keeps the tools inside the notebook so you can see the agent loop directly. The second half moves the same tools into `mcp_faq/`, which makes them reusable by any MCP client.

September 01, 2025