Back to blog

Recruit Skill - Agent Persona Builder

From 214 lines down to 16: a Claude Code Skill that builds agent personas through iterative questioning.

#Claude#AI#Tools#Skill

Introduction

A common need when using AI Agents is to have them play specific roles: code reviewer, technical writer, test engineer, etc. But how do you make AI accurately understand the behavioral boundaries of that role? Writing detailed instructions manually is costly and prone to missing key constraints.

recruit-skill takes a different approach: through iterative deep questioning, AI gradually understands and builds the persona the user wants.

Design Evolution

Version Changes

VersionLinesDescription
v1214 linesComplete flowcharts, multiple tables, detailed instructions
v217 linesSimplified to core instructions
v316 linesRemoved redundant constraints

Key changes from v1 to v3:

  • Role-first: Changed from preset dimensions to asking "what role" first
  • Termination: Changed from "cover all dimensions" to "AI judgment + user confirmation"
  • Minimal format: Inspired by grill-me (11 lines), removed DOT diagrams and tables

Design Decisions

DecisionRationale
No preset dimensionsDifferent roles need different dimensions, let LLM decide
No preset terminationAI judges sufficiency, then user confirms
No forced memory readUser choice, avoid historical pollution
Minimal instruction formatOnly core behavioral constraints

Core Logic

Complete SKILL.md:

---
name: recruit
description: Build agent persona through iterative questioning.
---
 
Build the user's desired agent persona by asking questions one at a time:
1. Explore existing context (memory files, CLAUDE.md, project structure)
2. Ask: what role to define?
3. Ask role-specific dimension questions.
   When you believe info is sufficient, present summary for confirmation.
4. Summarize persona, confirm write path or keep as session context
 
Constraints:
- No assumptions. Ask if uncertain.
- Do NOT write without user confirmation.

16 lines, no flowcharts, no preset dimension tables.

Core Features

FeatureDescription
Role-firstAsk role type first, then decide inquiry dimensions
One-at-a-timeEach question asked individually, gradual deep dive
Language-adaptiveOutput language auto-matches user interaction language
Write-on-confirmAny file write requires explicit user confirmation

Why "One-at-a-time"

Asking multiple questions at once leads to incomplete answers. Individual questions ensure each dimension is fully explored.

Why "Language-adaptive"

Users may interact in Chinese or English. Skills should match the user's natural expression, not enforce a language.

Usage

# Install
cp -r skills/recruit ~/.claude/skills/
 
# Trigger
/recruit

Typical conversation flow:

AI: What role do you want to define?
User: Code reviewer
AI: What aspects should the code reviewer focus on?
User: Performance, security, maintainability
AI: For performance, are there specific thresholds or metrics?
User: Response time over 200ms is a problem
...
AI: I have collected enough information. Here's the persona summary:
    - Role: Code reviewer
    - Focus: Performance, security, maintainability
    - Performance threshold: Response time < 200ms
    - Output format: Markdown checklist
    Confirm?
User: Confirmed, write to .claude/reviewer.md

Comparison with Other Approaches

ApproachProsCons
Manual instructionsFull controlHigh cost, easy to miss things
Preset templatesQuick startDoesn't fit special needs
recruit-skillFlexible, completeRequires conversation time

recruit-skill's value: the conversation process ensures persona completeness while keeping user control over the final output.

Future Plans

  • Integrate into SuperHarness project
  • Collect user feedback for iteration
  • Multi-language output testing

References