بنقرة واحدة
intent-detection
Automatically detect user intent and route to appropriate agent
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Automatically detect user intent and route to appropriate agent
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Invoke and resume YAML-defined pipelines by name — /pipeline auto-dev runs the full release pipeline
Full Self Driving — autonomous release loop that processes all auto-dev-eligible GitHub issues until none remain, by repeatedly running /pipeline auto-dev then /homework.
On explicit /homework invocation, analyze the current and linked previous sessions, extract mistakes (찐빠), and report them via omcustom-feedback with a confirmation gate. Auto-activation on session cleanup/session-end signals is OPT-IN (default OFF) — requires an explicit project/user directive. Use when explicitly auditing recent work for harness gaps.
hada.io RSS feed monitoring for AI agent/harness articles with automated /scout analysis
Pre-action boundary checking — validates agent tool calls against declared capabilities and task contracts
Auto-detect project context and optimize harness — deactivate unused agents/skills, suggest missing experts, generate project profile
| name | intent-detection |
| description | Automatically detect user intent and route to appropriate agent |
| scope | core |
| user-invocable | false |
Automatically detect user intent and route to the appropriate agent with full transparency.
User Input: "Go 코드 리뷰해줘"
│
▼
┌─────────────────────────────┐
│ Tokenize & Extract │
├─────────────────────────────┤
│ Keywords: ["Go"] │
│ Actions: ["리뷰"] │
│ File refs: [] │
│ Context: [] │
└─────────────────────────────┘
Match extracted tokens against agent triggers:
# For each agent in agent-triggers.yaml
match_score = 0
# Keyword match
for keyword in user_keywords:
if keyword in agent.keywords:
match_score += agent.keyword_weight (default: 40)
# Action match
for action in user_actions:
if action in agent.actions:
match_score += agent.action_weight (default: 40)
# File pattern match
for pattern in user_file_refs:
if matches(pattern, agent.file_patterns):
match_score += agent.file_weight (default: 30)
# Context bonus
if agent == recent_agent:
match_score += context_bonus (default: 10)
confidence = min(100, match_score)
if confidence >= 90:
auto_execute()
elif confidence >= 70:
request_confirmation()
else:
list_options()
# Korean keywords
korean:
- "고" → go
- "파이썬" → python
- "러스트" → rust
- "타입스크립트" → typescript
# Action verbs (Korean)
actions_kr:
- "리뷰" → review
- "분석" → analyze
- "수정" → fix
- "생성" → create
- "만들어" → create
- "확인" → check
patterns:
go: ["*.go", "go.mod", "go.sum"]
python: ["*.py", "requirements.txt", "pyproject.toml", "setup.py"]
rust: ["*.rs", "Cargo.toml"]
typescript: ["*.ts", "*.tsx", "tsconfig.json"]
kotlin: ["*.kt", "*.kts", "build.gradle.kts"]
[Intent Detected]
├── Input: "Go 코드 리뷰해줘"
├── Agent: lang-golang-expert
├── Confidence: 95%
└── Reason: "Go" keyword + "리뷰" action
┌─ Agent: lang-golang-expert (sw-engineer)
└─ Task: Code review
[Intent Detected]
├── Input: "백엔드 API 확인해줘"
├── Detected: be-go-backend-expert (?)
├── Confidence: 78%
└── Alternatives available
Select agent:
1. be-go-backend-expert (78%)
2. be-fastapi-expert (72%)
3. be-springboot-expert (68%)
Choice [1-3, or agent name]:
[Override Detected]
├── Input: "@lang-python-expert review api.py"
├── Agent: lang-python-expert (explicit)
└── Bypassing intent detection
┌─ Agent: lang-python-expert (sw-engineer)
└─ Task: Review api.py
Secretary uses this skill to:
1. Parse incoming user requests
2. Detect intent and select agent
3. Display reasoning
4. Handle confirmations
5. Route to selected agent
Load triggers from:
.claude/skills/intent-detection/patterns/agent-triggers.yaml
Each agent defines:
- keywords (language names, tech terms)
- file_patterns (extensions, config files)
- actions (supported actions)
- weights (scoring factors)
Generic task (no identifiable domain):
[Intent Unclear]
├── Input: "도와줘"
├── Confidence: < 30%
└── Too generic to detect intent
How can I help? Please be more specific:
- What type of task? (review, create, fix, ...)
- What language/technology? (Go, Python, ...)
- What file or project?
Specialized task with identifiable domain (keywords/files detected but no matching agent):
[No Matching Agent]
├── Input: "Terraform 모듈 리뷰해줘"
├── Domain: terraform (detected from keywords)
├── Matching Agent: none
└── Action: Trigger dynamic agent creation
→ Delegating to mgr-creator with context:
domain: terraform
keywords: ["terraform", "모듈"]
file_patterns: ["*.tf"]
[Intent Ambiguous]
├── Input: "코드 리뷰"
├── Top matches:
│ └── All experts: ~50% each
└── Need file context or language hint
Specify the language or provide a file path.
intent_detection:
enabled: true
auto_execute_threshold: 90
confirm_threshold: 70
show_reasoning: true
max_alternatives: 3
korean_support: true
When a research/information gathering intent is detected:
# Korean
korean:
- "조사" → research
- "검색" → search
- "리서치" → research
- "탐색" → explore
- "찾아" → look up
- "알아봐" → find out
- "자료" → gather materials
- "정보 수집" → gather information
# English
english:
- "research"
- "investigate"
- "search for"
- "look up"
- "gather information"
Research intent detected (confidence >= 70%)
↓
Check Codex CLI availability
├─ Available (codex binary + OPENAI_API_KEY)
│ → Use codex-exec skill with --effort xhigh
│ → Prompt: "Research and analyze: {user_request}"
│ → Returns: structured findings for orchestrator
└─ Unavailable
→ Fall back to Claude's WebFetch/WebSearch
→ Orchestrator handles directly or via general-purpose agent
| Factor | Weight | Example |
|---|---|---|
| Research keyword match | +40 | "조사해줘", "research" |
| Action verb match | +30 | "찾아", "investigate" |
| URL/topic present | +20 | specific URL or topic mentioned |
| Context (previous research) | +10 | follow-up research request |
[Intent Detected]
├── Input: "{user input}"
├── Workflow: research-workflow
├── Confidence: {percentage}%
├── Method: codex-exec (xhigh) | WebFetch fallback
└── Reason: {explanation}