901 B
901 B
type, tags, status, closing_criteria
| type | tags | status | closing_criteria | ||||
|---|---|---|---|---|---|---|---|
| plans |
|
open | 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줄 평가 포함.