diff --git a/.agents/skills/chaos-tool-tester/SKILL.md b/.agents/skills/chaos-tool-tester/SKILL.md new file mode 100644 index 0000000..154d167 --- /dev/null +++ b/.agents/skills/chaos-tool-tester/SKILL.md @@ -0,0 +1,16 @@ +--- +name: chaos-tool-tester +description: 현재 연결된 MCP 도구들에 대해 엣지 케이스(Null, 타입 오류, SQL 인젝션 문자열 등)를 고의로 주입하여 안정성을 테스트합니다. +scope: workspace +tools: ["*"] +--- + +# 테스트 시나리오 지침 +사용자가 특정 Tool의 이름을 말하면, 다음 3가지 패턴의 페이로드를 생성하여 Tool을 순차적으로 호출해라. + +1. **타입 브레이커:** Integer가 들어가야 할 곳에 긴 String 넣기 +2. **누락 테스트:** 필수(Required) 파라미터를 누락시키고 호출하기 +3. **악의적 페이로드:** 파라미터 값에 `` 또는 `' OR 1=1 --` 삽입하기 + +# 결과 리포팅 +각 호출 시도 후, Spring Boot 서버가 500 에러를 뱉고 죽었는지, 아니면 안전하게 Validation 에러 메시지를 반환했는지 마크다운 표로 정리해서 보고할 것. diff --git a/.agents/skills/gateway-routing-tracer/SKILL.md b/.agents/skills/gateway-routing-tracer/SKILL.md new file mode 100644 index 0000000..f5eb891 --- /dev/null +++ b/.agents/skills/gateway-routing-tracer/SKILL.md @@ -0,0 +1,12 @@ +--- +name: gateway-routing-tracer +description: 게이트웨이 로그를 분석하여 특정 Tool Call이나 Request ID의 라우팅 경로와 소요 시간을 추적합니다. +scope: workspace +--- + +# 실행 스크립트 +이 스킬은 같은 폴더에 위치한 `trace.sh` 스크립트를 실행하여 로그를 파싱합니다. + +# 에이전트 지침 +1. 사용자가 조회하고자 하는 `Request ID` 또는 `Tool 이름`을 감지하면, 백그라운드 터미널에서 `trace.sh <인자>`를 실행해라. +2. 스크립트 실행 결과를 파싱하여, 게이트웨이에 인입된 시간부터 최종 커넥터로 아웃바운드된 시간까지의 흐름을 시각적인 타임라인(텍스트 기반)으로 그려서 사용자에게 보여줄 것. diff --git a/.agents/skills/gateway-routing-tracer/trace.sh b/.agents/skills/gateway-routing-tracer/trace.sh new file mode 100644 index 0000000..41af863 --- /dev/null +++ b/.agents/skills/gateway-routing-tracer/trace.sh @@ -0,0 +1,18 @@ +#!/bin/bash +# Spring Boot 로그 파일 경로 (기본 설정: ./logs/spring-boot-logger.log) +LOG_FILE="./logs/spring-boot-logger.log" +SEARCH_TARGET=$1 + +if [ -z "$SEARCH_TARGET" ]; then + echo "추적할 Request ID나 Tool 이름을 입력해주세요." + exit 1 +fi + +if [ ! -f "$LOG_FILE" ]; then + echo "오류: 로그 파일($LOG_FILE)을 찾을 수 없습니다. 경로를 확인해주세요." + exit 1 +fi + +echo "[$SEARCH_TARGET] 라우팅 추적 시작..." +# Spring Boot 로그에서 대상 검색하여 주요 필드 출력 +grep -i "$SEARCH_TARGET" "$LOG_FILE" | awk '{print $1, $2, $3, $5, $NF}' diff --git a/.agents/skills/mcp-schema-autogen/SKILL.md b/.agents/skills/mcp-schema-autogen/SKILL.md new file mode 100644 index 0000000..f83f77f --- /dev/null +++ b/.agents/skills/mcp-schema-autogen/SKILL.md @@ -0,0 +1,16 @@ +--- +name: mcp-schema-autogen +description: Java 21 Record 클래스나 Spring Controller 코드를 분석하여 MCP 표준 JSON Schema(Tool 명세)를 자동 생성합니다. +scope: workspace +--- + +# 시스템 지침 (System Prompt) +너는 MCP(Model Context Protocol) Tool 스키마 전문 엔지니어다. +사용자가 Java 코드를 제공하면 다음 규칙에 따라 JSON Schema를 작성해라. + +1. **타입 매핑:** Java 21 `Record`의 필드 타입을 완벽하게 JSON Schema 타입(string, integer, boolean, object, array 등)으로 매핑할 것. +2. **필수값 추출:** `@NotNull`, `@NotBlank` 또는 Java 21 Record의 Non-null 필드는 반드시 `required` 배열에 포함시킬 것. +3. **설명 추가:** JavaDoc 주석이 있거나 필드 위에 주석이 있다면 스키마의 `description` 필드로 적극 반영할 것. + +# 출력 형식 +결과물은 반드시 순수한 JSON 형태로만 출력하고, 불필요한 부연 설명은 생략한다.