예
- “환불하기 전에 주문 상태를 항상 확인.”
- “고객 티어를 확인하지 않고는 가격 정보를 절대 공유하지 않기.”
- “배포 전 린터 실행, 에러면 중단.”
- “사용자가 경쟁사를 말하면 세일즈로 넘김.”
룰의 구성
- Trigger 조건입니다. 이런 게 됩니다.
- 의미형(“사용자가 가격을 물으면”).
- 구조형(“
refund도구 호출 전”). - 이벤트형(“낮은 확신 리트리벌이 일어나면”).
- Action 무엇이 일어나야 하는지. 보통 Agent가 따를 지시입니다.
- Scope 스코핑 참고. 전역, 테넌트별, 사용자별.
- Priority 부딪히면 높은 우선순위가 낮은 걸 덮어씁니다.
룰이 가는 곳
Wiki 스페이스에 type =rule로 더합니다. 아니면 전용 절차 스페이스를 씁니다.
Agent는 턴마다 룰을 읽습니다. 리트리벌에 맡기지 않죠. 높은 우선순위 룰은 늘 컨텍스트 안에 있습니다.
룰 쓰기
룰은 구조화된 노트일 뿐입니다. Wiki 에디터에서 Rule 템플릿을 씁니다.도구로
Agent는 사실을 쓰는 것과 같은 방식으로 룰을 쓸 수 있습니다.remember_rule 도구로요. Agent가 교정에서 룰을 배울 때 좋습니다.
사용자: 가격이 최종이라고 말하면 안 돼. 항상 부가세 전이라고 밝혀. Agent: [룰 쓰기: “가격 답변에서 ‘부가세 전’ 을 밝힘”]
리뷰어로
Approvals 큐에서 리뷰어가 교정을 룰로 바꿀 수 있습니다.- Agent 액션을 이유와 함께 거부합니다.
- 교정에서 Save as rule을 누릅니다.
- 관련 메모리 스페이스에 룰이 더해져, 앞으로 모든 실행에 적용됩니다.
룰 충돌
같은 턴에 두 룰이 다른 액션으로 걸리면 우선순위가 정합니다. 우선순위가 같으면 두 액션 다 Agent에 뜨고, Agent가 둘 다 다루는 응답을 짭니다.룰 은퇴
룰은 inactive로 표시하거나(참고용으로 남기고 더는 적용 안 함), (노트·문서처럼) 대체할 수 있습니다. 대체된 룰은 리트리벌에서 빠지고, inactive 룰은 조회는 되지만 걸리지 않습니다.트레이스에서 룰 살피기
턴에서 걸린 룰이 모두 모델 호출 위 트레이스에 뜹니다.- 맞은 트리거.
- 프롬프트에 넣은 액션.
- Agent 동작이 룰과 맞았는지.