From 20155e53a421dc144a5e36c1b25f4ac93f1aecdb Mon Sep 17 00:00:00 2001 From: kappa Date: Fri, 16 Jan 2026 13:48:55 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20=EB=8F=84=EB=A9=94=EC=9D=B8=20=EC=A0=95?= =?UTF-8?q?=EB=B3=B4=20=EC=A1=B0=ED=9A=8C=20=EA=B0=9C=EC=84=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - get_domain_info 민감정보 필터링 (계정 ID 제거) - whois_lookup 도구 추가 (Domain Agent) - .it.com ccSLD WHOIS 미지원 안내 추가 - domain-agent tools.ts에 whois_lookup 추가 Co-Authored-By: Claude Opus 4.5 --- src/openai-service.ts | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/src/openai-service.ts b/src/openai-service.ts index c12f42c..2c7eb69 100644 --- a/src/openai-service.ts +++ b/src/openai-service.ts @@ -184,10 +184,22 @@ async function callNamecheapApi(funcName: string, funcArgs: Record, // 허용된 도메인만 필터링 return result.filter((d: any) => allowedDomains.includes(d.name)); } - case 'get_domain_info': - return fetch(`${apiUrl}/domains/${funcArgs.domain}`, { + case 'get_domain_info': { + const domainInfo = await fetch(`${apiUrl}/domains/${funcArgs.domain}`, { headers: { 'X-API-Key': apiKey }, - }).then(r => r.json()); + }).then(r => r.json()) as any; + // 민감 정보 필터링 (계정 ID 등) + return { + domain: domainInfo.name || funcArgs.domain, + status: domainInfo.status, + created: domainInfo.created, + expires: domainInfo.expires, + auto_renew: domainInfo.auto_renew, + is_locked: domainInfo.is_locked, + is_premium: domainInfo.is_premium, + nameservers: domainInfo.nameservers, + }; + } case 'get_nameservers': return fetch(`${apiUrl}/dns/${funcArgs.domain}/nameservers`, { headers: { 'X-API-Key': apiKey },