fix: SKILL.md 계약 통일 — start_datetime/end_datetime, web_search, email endpoints

- skill-calendar: CRUD 파라미터 start_datetime/end_datetime 통일, end_datetime 선택화
- skill-email: email_read/email_send/email_summary 별칭 추가, user_id 제거(executor 자동 주입)
- web-search: name을 web_search로 변경 (LLM 반환값과 일치)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
happybell80 2026-04-05 17:13:56 +09:00
parent a0499cab08
commit 4caa96e40c
3 changed files with 14 additions and 4 deletions

View File

@ -7,6 +7,7 @@ runtime:
endpoints:
create_event: { method: POST, path: /api/events }
list_events: { method: GET, path: /api/events }
get_events: { method: GET, path: /api/events }
delete_event: { method: DELETE, path: "/api/events/{event_id}" }
---
@ -25,8 +26,8 @@ POST /api/events
| 파라미터 | 타입 | 필수 | 설명 |
|---------|------|------|------|
| title | string | 필수 | 일정 제목 |
| start | string | 필수 | 시작 일시. ISO 8601 형식 (예: 2026-04-04T14:00:00+09:00) |
| end | string | 필수 | 종료 일시. ISO 8601 형식. 미지정 시 start + 1시간 |
| start_datetime | string | 필수 | 시작 일시. ISO 8601 형식 (예: 2026-04-04T14:00:00+09:00) |
| end_datetime | string | 필수 | 종료 일시. ISO 8601 형식. 미지정 시 start_datetime + 1시간 |
| location | string | 선택 | 장소 |
| description | string | 선택 | 설명, 메모 |
| is_all_day | boolean | 선택 | 종일 이벤트 여부. 기본 false |
@ -35,6 +36,11 @@ POST /api/events
GET /api/events
| 파라미터 | 타입 | 필수 | 설명 |
|---------|------|------|------|
| start_datetime | string | 필수 | 조회 시작 일시. ISO 8601 형식 (예: 2026-04-05T00:00:00+09:00) |
| end_datetime | string | 선택 | 조회 종료 일시. ISO 8601 형식. 미지정 시 start_datetime 당일 23:59:59 |
## 일정 삭제
DELETE /api/events/{event_id}

View File

@ -6,8 +6,11 @@ runtime:
service_url_env: SKILL_EMAIL_URL
endpoints:
send: { method: POST, path: /send }
email_send: { method: POST, path: /send }
read: { method: GET, path: /messages }
email_read: { method: GET, path: /messages }
process: { method: POST, path: /process }
email_summary: { method: POST, path: /process }
---
# skill-email
@ -49,11 +52,12 @@ GET /messages
| 파라미터 | 타입 | 필수 | 설명 |
|---------|------|------|------|
| user_id | UUID | 필수 | 사용자 ID (쿼리 파라미터) |
| limit | int | 선택 | 최대 결과 수 (기본 10) |
| query | string | 선택 | 검색 쿼리 |
| provider | string | 선택 | "gmail" (기본) |
user_id는 executor가 자동 주입. 슬롯에 포함 불필요.
### 이메일 요약
POST /process

View File

@ -1,5 +1,5 @@
---
name: web-search
name: web_search
description: 실시간 웹 검색. 지역별 날씨·기온·강수·기상 예보·미세먼지·초미세먼지·황사·대기 질 등 공개 기상 정보, 주가, 환율, 시세, 뉴스, 회사/기술/제품 정보 등 인터넷에서 찾아야 하는 실시간 정보 요청에 사용합니다. Company X 내부 문서 근거(companyx-rag)가 아닌 일반 기상·환경 질의는 항상 여기에 해당합니다. 검색 전에는 사용자 의미를 보존한 검색 주제와 실제 검색 엔진용 최적화 쿼리를 구분하고, 정정 신호와 보호 표현을 반영해야 합니다.
runtime:
handler: app.services.skills.handlers.web_search.handle