Back to Workshops
Workshop Free

Coding Agent with Skills (2026 update)

April 21, 2026
ai-agents llm-engineering agent-systems tooling-architecture

We build a coding agent from scratch: tool calls, an agentic loop, a skills system that loads reusable instruction files on demand, and a final version running on PydanticAI. The agent can read and write files, run shell commands, search the codebase, and load specialized skills - all inside a structured Django project template.

This workshop combines and updates two earlier sessions: Building a Coding Agent and Skills.md from Scratch.

What we cover:

  • Tool calls with the OpenAI Responses API: from no tools to a full agent loop
  • Building a coding agent with five core tools (read, write, tree, bash, search)
  • Skills: reusable instruction files loaded by the agent on demand
  • Porting the same agent to PydanticAI

This workshop was originally delivered at MLCon 2026 Amsterdam. There is no video recording available.

The agent you will build

The architecture of the final agent:

flowchart LR USER["User"] RUNNER["Runner<br/>ToyAIKit / OpenAI Responses"] LLM["LLM<br/>gpt-5.4-mini"] TOOLS["Tools<br/>read_file, write_file<br/>see_file_tree<br/>execute_bash_command<br/>search_in_files"] SKILL["SkillTool"] LOADER["SkillLoader"] SKILLS["SKILL.md files"] USER -->|prompt| RUNNER RUNNER -->|model call| LLM LLM -->|tool call or response| RUNNER RUNNER -->|execute tool| TOOLS RUNNER -->|load skill| SKILL SKILL --> LOADER LOADER -->|read| SKILLS RUNNER -->|answer| USER

The agent runs inside a Django project template. It has five core tools for interacting with the filesystem and shell, plus a skills tool that loads extra instructions from SKILL.md files when the agent decides they are relevant. The workshop progresses through four parts: understanding tool calls, building the coding agent, adding skills, and porting to PydanticAI.

Links

Related workshops and resources: