--- type: plans tags: [tool-use, skill, routing, refactor] status: open closing_criteria: route_with_tools에서 tool_call.name으로 직접 실행, IntentType 변환 체인 제거 완료 --- # tool_use 직접 실행 설계 ## 문제 - route_with_tools()가 tool_call을 받아도 _intent_from_tool_call if/elif로 IntentType 변환 - 새 스킬마다 5곳 하드코딩 필요 - coding-principles 위반 ## 해결 - tool_call.function.name = 실행 대상 - IntentType 변환 제거 - SKILL.md + allowlist 등록만으로 실행까지 자동 - OpenClaw 패턴 참고: tool name 문자열로 직접 dispatch ## 변경 파일 - decision_engine.py: route_with_tools() 실행 계획 직접 생성 - message_service.py: tool_name 기반 핸들러 실행 - tool_registry.py: 핸들러 자동 등록 수정하지 않으면 에러가 난다. 숨기지 않는다. 총괄 지시 품질 1줄 평가 포함.