vibe-to-agentic-framework
This skill explains the structural philosophy and progression system underlying the "Vibe Coding to Agentic Engineering" presentation, which maps developer competency from unstructured ad-hoc Claude interactions to fully orchestrated, convention-driven workflows. Use it when building or teaching a presentation that tracks incremental adoption of Claude Code best practices across four maturity levels (Low, Medium, High, Pro), each with associated visual indicators and a running TodoApp example demonstrating practical application.
git clone --depth 1 https://github.com/shanraisshan/claude-code-best-practice /tmp/vibe-to-agentic-framework && cp -r /tmp/vibe-to-agentic-framework/.claude/skills/presentation/vibe-to-agentic-framework ~/.claude/skills/vibe-to-agentic-frameworkSKILL.md
# The "Vibe Coding to Agentic Engineering" Framework
This skill teaches the **conceptual model** behind the presentation. Every slide and section exists to tell a single story: how a developer incrementally moves from unstructured "vibe coding" (Low level) to high-level agentic engineering (High level).
## Core Concept
**Vibe Coding (Low level)** is when a developer uses Claude Code with no structure — no project context, no conventions, no reusable knowledge. Every prompt is a coin flip. Claude might create random endpoints, ignore existing patterns, skip tests, and produce inconsistent code. The codebase drifts toward entropy with every interaction.
**Agentic Engineering (High level)** is when Claude Code operates as a fully configured engineering system. It knows the project architecture (CLAUDE.md), follows scoped conventions (Rules), loads domain expertise on demand (Skills), delegates to specialized workers (Agents), orchestrates multi-step workflows (Commands), automates lifecycle events (Hooks), and connects to external tools (MCP Servers). Every prompt produces consistent, tested, production-quality code.
The journey between these two extremes is **incremental and cumulative**. Each best practice builds on the previous ones, and the presentation teaches them in the order a developer should adopt them.
## The 4-Level Journey System
The presentation uses a 4-level scoring system instead of a percentage bar:
| Level | Order | Color | Journey Bar Height | Description |
|-------|-------|-------|--------------------|-------------|
| Low | 1 | Red/orange (`hsl(0, 70%, 45%)`) | 25% | Vibe coding territory — no structure |
| Medium | 2 | Yellow (`hsl(40, 70%, 45%)`) | 50% | Structured workflows, some automation |
| High | 3 | Light green (`hsl(80, 70%, 45%)`) | 75% | Domain knowledge, skills, custom agents |
| Pro | 4 | Deep green (`hsl(120, 70%, 45%)`) | 100% | Full agentic engineering, multi-agent teams |
The journey bar is hidden on slide 1 (title slide) and appears from slide 2 onward. Levels are set via `data-level` attributes on key transition slides and inherited by subsequent slides until the next level change. A `.level-badge` is JS-injected on the slide's `h1` when the level changes (do not hardcode these in HTML).
## The Running Example: TodoApp Monorepo
Every technique is demonstrated on a realistic full-stack project. The presentation shows the transformation from a plain project (vibe coding) to one with full Claude Code configuration (agentic engineering):
**Before (Vibe Coding):**
```
todoapp/
├── backend/ # FastAPI (Python)
│ ├── main.py
│ ├── routes/
│ ├── models/
│ └── tests/
└── frontend/ # Next.js (TypeScript)
├── components/
├── pages/
└── lib/
```
**After (Agentic Engineering):**
```
todoapp/
├── .claude/ # Claude Code config
│ ├── agents/ # Custom subagents
│ ├── skills/ # Domain knowledge
│ ├── commands/ # Slash commands
│ ├── hooks/ # Lifecycle scripts
│ ├── rules/ # Modular instructions
│ ├── settings.json # Team settings
│ └── settings.local.json # Personal settings
├── backend/
│ └── CLAUDE.md # Backend instructions
├── frontend/
│ └── CLAUDE.md # Frontend instructions
├── .mcp.json # Managed MCP servers
└── CLAUDE.md # Project instructions
```
**Why TodoApp?** It's small enough to fit on slides but complex enough to demonstrate real problems: a backend with route patterns and test conventions, a frontend with component hierarchy and design tokens, and a monorepo structure where cross-cutting concerns (like adding a new feature) require coordination between both sides.
The TodoApp makes the vibe-coding problem concrete: without structure, asking Claude to "add a notes feature" produces a random `/api/notes` endpoint that doesn't follow `routes/todos.py` patterns, a standalone page with no sidebar navigation, and zero tests. With full agentic setup, the same request produces a route following existing patterns, a page integrated into the sidebar, and tests matching `test_todos.py` style.
## The Journey Arc: Why This Order
The presentation follows a deliberate pedagogical sequence. Each section unlocks a new capability layer:
### Part 0: Introduction (Slides 1–4, no weight)
**Purpose:** Set the stage. Introduce the TodoApp, define vibe coding, and show the destination.
- Title slide establishes the journey metaphor
- Example Project shows the transformation: before/after comparison of TodoApp — plain project structure vs one with full Claude Code configuration (.claude/, CLAUDE.md, .mcp.json, etc.)
- "What is Vibe Coding?" creates the 0% baseline — the pain point
- Journey Map provides a clickable TOC showing the full path ahead
### Part 1: Prerequisites (Slides 5–9, no weight)
**Purpose:** Get Claude Code installed and running. This is purely logistical — no engineering practices yet.
- Installing, authentication, first session, interface overview
- No weight because knowing how to install a tool doesn't improve code quality
- The "first session" IS vibe coding — this is intentional, so the developer experiences the 0% state firsthand
### Part 2: Better Prompting (Slides 10–17, Level: Low)
**Purpose:** The first real improvement. Better inputs produce better outputs, even without any project configuration.
- **Good vs Bad Prompts:** Specific, scoped prompts vs vague requests. The simplest possible improvement.
- **Providing Context:** Using `@files` to give Claude the code it needs. Reduces hallucination immediately.
- **Context Window & /compact:** Understanding the finite context window prevents degraded responses in long sessions.
- **Plan Mode:** `/plan` forces thinking before coding. Prevents wasted effort on wrong approaches.
**Why Low level:** Prompting is foundational but limited. It improves individual interactions but doesn'Research agent that fetches GitHub repos, counts agents/skills/commands, gets star counts, and analyzes Claude Code workflow repositories
PROACTIVELY use this agent whenever the user wants to update, modify, rearrange, or fix the CLAUDE-CODE-BEST-PRACTICE presentation (`presentation/claude-code-best-practice/index.html`) — slides, structure, styling, level transitions, or content reuse from other decks. This is the canonical reusable Claude Code best-practices deck. Do NOT use this agent for the vibe-coding presentation (use `presentation-vibe-coding`) or the GDG Kolachi claude-gemini presentation (use `presentation-claude-gemini`).
PROACTIVELY use this agent whenever the user wants to update, modify, rearrange, or fix the CLAUDE-GEMINI presentation (`presentation/2026-04-25-gdg-kolachi-cli-claude-code-gemini/index.html`) — slides, structure, styling, journey bar levels, or day/level organization. Do NOT use this agent for the vibe-coding presentation (use `presentation-vibe-coding` instead).
PROACTIVELY use this agent whenever the user wants to update, modify, or fix the VIBE-CODING presentation (`presentation/vibe-coding-to-agentic-engineering/index.html`) — slides, structure, styling, or level transitions. Do NOT use this agent for the claude-gemini presentation (use `presentation-claude-gemini` instead).
Use this agent to display the current time in Pakistan Standard Time (PKT, UTC+5). (root scope — see agent-teams for Dubai time)
Use this agent PROACTIVELY when you need to fetch weather data for Dubai, UAE. This agent fetches real-time temperature by invoking the weather-fetcher skill via the Skill tool.
Display the current time in Pakistan Standard Time (PKT, UTC+5)
Fetch Dubai weather and create an SVG weather card