Claude Code Skills vs. Custom Agents: A Mental Model Based on Task Consistency

A Reddit post from a Claude Code user provides a clear mental model for distinguishing between skills and custom agents, based on practical experience after months of use.
The Core Distinction: Consistency vs. Judgment
The key question to ask is: does the task need consistency or judgment?
- Skills are for tasks that follow the same steps every time. The user's example is a
/meetingskill that always runs the same sequence: extract notes, cross-reference attendees, create a structured note, and propose Todoist tasks. No deviation is needed. - Custom Agents are for tasks that require reasoning. The example given is a trip planning agent that reads travel history, researches the destination, generates three route variants, and asks calibration questions. Every trip is different, so the agent adapts.
Additional Concepts from the Source
The original post also covers several related concepts for building agents in Claude Code:
- Parallel Subagents: Running tasks simultaneously, such as researching three competitors at the same time.
- Subagent Delegation: Offloading heavy context-gathering to keep the main workflow clean.
- Hooks as Personal Guardrails: Using
PreToolUseandPostToolUsehooks to control agent behavior. - Four Building Blocks in Enterprise AI Agents: The post maps common enterprise agent components to Claude Code concepts:
CLAUDE.mdcorresponds to the system prompt, MCP to tool descriptions, memory to short/long-term storage, and skills to technical guardrails.
The full article with more details is linked in the source.
📖 Read the full source: r/ClaudeAI
👀 See Also

Reddit user shares practical Claude setup for consistent AI coding assistance
A developer describes moving from single prompts to separate context files (about-me.md, my-voice.md, my-rules.md) and implementing a structured workflow where Claude reads context, asks questions, creates plans, then executes tasks.

OpenClaw Update Fix: Resolving Telegram Exec 'allowlist miss' Errors
A recent OpenClaw update caused Telegram exec commands to fail with 'exec denied: allowlist miss' errors even after disabling approvals. The fix requires enabling elevated access, configuring exec security explicitly, and updating both openclaw.json and exec-approvals.json files.

Resolving Disconnection Issues in OpenClaw Control UI
Learn how to solve the 'Disconnected (1008): control ui requires HTTPS or localhost' error when using OpenClaw on a Hostinger VPS.

Local LLM Setup Recommendations for OpenClaw
A user shares their configuration for running a local LLM with OpenClaw, using a GB10 for AI processing and a Mac mini for the OpenClaw installation, with specific model and server details.