بنقرة واحدة
ipzitalk-find-fit
사용자 소득·현금·대출조건과 희망면적을 기준으로 Ipzi Talk 청약공고 후보를 선별하고 HTML 표로 보여준다.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
사용자 소득·현금·대출조건과 희망면적을 기준으로 Ipzi Talk 청약공고 후보를 선별하고 HTML 표로 보여준다.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
입지톡 Remote 또는 OSS 실행 방식의 설치 상태를 확인하고 설치·전환·제거한다. 사용자가 입지톡 설정을 직접 실행하거나 설치 모드 관리를 요청했을 때만 사용한다.
시군구 여러 곳의 매매 거래량·중위 평당가·중위 거래가를 전월 대비로 비교해 지역 시장동향을 만든다. "최근 시장동향", "요즘 시장 어때", "거래 늘었어?", "어느 구가 오르나", "지역별 비교" 등의 표현이 있으면 이 스킬을 사용한다. 시군구 집계는 전용타입을 통일할 수 없어 구성 편향이 있으므로 "참고 신호"로만 제시한다.
지역(시군구/읍면동)·주소·반경·단지명 중 하나로 청약홈 적재 분양공고를 조회해 단지·주택형·최고분양가·공급세대·입주월·상한제·원문링크를 표와 지도로 정리한다. "모집공고 검색", "이 지역 분양공고 찾아줘", "OO 청약공고", "분양공고 목록", "이 APT 모집공고" 등의 표현이 있으면 이 스킬을 사용한다.
기준 주소·단지명·지역 주변 반경의 K-apt 단지를 수집하고, 사용승인연차 분포를 0~10년, 10~20년, 20~30년, 30년+ 밴드로 분석한다. "노후도 분석", "신축/구축 비율", "주변 단지 연식", "오래된 아파트 많아?"를 물을 때 사용한다.
아파트명 또는 소재 주소 하나로 단지 개요·매매/전세 시세·최근 거래·주변 입지(교통·생활·교육)· 입주 예정 단지·인근 비교 단지를 한 장에 모아 보여준다. "이 아파트에 대해 전반적으로 알려줘", "이 아파트 한눈에 보기", "종합해서 알려줘", "이 아파트 전반적으로 정리해줘" 등의 표현이 있으면 이 스킬을 사용한다. 단일 항목만 물으면(시세만/학군만) 해당 단일 스킬을 쓴다. 범위를 밝히지 않은 "OO아파트 어때" 는 이 스킬이 아니라 단지 개요 요약(ipzitalk-complex-overview)으로 보낸다. 23크레딧이라 개요 요약(3크레딧)의 8배다. 애매하면 싼 쪽을 쓰고, 부족하면 이 스킬을 권한다.
단지명·주소·K-apt 코드 중 하나를 입력받아 K-apt 단지 개요를 한 장 요약으로 정리한다. 세대수, 사용승인연차, 시공사, 주차, 지하철/버스 도보분, 위치 식별자를 빠르게 보여준다. "단지 개요", "아파트 요약", "이 단지 어떤 곳", "간단히 정리", 그리고 범위를 밝히지 않은 "OO아파트 어때" 요청에 사용한다. 실거래·입지·인근 단지까지 필요하면 이 아파트 한눈에 보기(ipzitalk-complex-overview-all)를 권한다.
| name | ipzitalk-find-fit |
| description | 사용자 소득·현금·대출조건과 희망면적을 기준으로 Ipzi Talk 청약공고 후보를 선별하고 HTML 표로 보여준다. |
| version | 1.0.1 |
| author | Synergy Labs + Hermes Agent |
| license | proprietary |
| metadata | {"hermes":{"tags":["ipzi-talk","presale","html-template"],"created_by":"agent"}} |
“내 조건으로 청약 가능한 공고 찾아줘”, “의왕시 84㎡ 월소득 650, 현금 2억 기준으로 찾아줘”
의왕시, 전용 84㎡, 월소득 650만원, 현금 2억원, 금리 4.2%, 30년
Use ipzitalk mcp for live 청약공고/지도/공급정보 lookup when regenerating the screen.
templates/result.htmlreferences/sample-input.json, field reference: references/data-schema.mdipzi-data non-executable JSON block inside the bottom <script> block. Do not add/remove HTML elements or touch the render function.모집공고문 기준, 청약홈 기준, 자료 기준, 확인 필요.공고문 원문 확인 필요 instead of inventing values.REF_DB stores search_announcement_info API responses verbatim, so it is already ground truth. The check here is rendering fidelity, not source accuracy — see ipzitalk-presale-kit/references/db-source-labels.md for the full mapping. Short version:
listings[] top-level field (name, locationLabel, addressDetail, dateStr, detailUrl) against the matching search_announcement_info record. Only display formatting may differ; the underlying value must not change.listings[].units[].type / .maxPrice / .supply against the record's raw unit array. cls (가능/아슬아슬/초과) and diff (예산 차이) are locally computed from the user's loan inputs — they are not DB fields and don't need a DB match, but they must be recomputed correctly from maxPrice and the affordability inputs.실행마다 값이 달라지지 않도록 아래 공식을 그대로 쓴다. 사용자가 다른 값을 지정하면 그것을 따르고 kpis[].sub에 명시한다.
월상환 가능액 = 월소득 × 0.35 (기본 상환비율 35%)
대출한도 = 월상환 가능액 × (1 − (1 + r)^−n) / r (원리금균등)
r = 연금리 / 12, n = 대출기간(년) × 12
추정 가능 주택가격 = 대출한도 + 보유현금
kpis 4개 박스는 순서와 내용을 고정한다. 값을 서로 바꿔 넣지 않는다.
| # | label | value | sub |
|---|---|---|---|
| 0 | 추정 가능 주택가격 | 대출한도 + 보유현금 | 대출 {대출한도} + 보유현금 {현금} |
| 1 | 월상환 가능액 | 월소득 × 35% | 월소득 {월소득}의 35% 가정 |
| 2 | 가능 후보 | cls가 g인 주택형 수 | 아슬아슬 포함 시 개수 |
| 3 | 초과 후보 | cls가 o인 주택형 수 | 대상 공고 수 |
렌더 전 검산: kpis[0].value == 대출한도 + 보유현금 이고 kpis[1].value < 월소득 이어야 한다.
kpis[1](월상환 가능액)에 억 단위 금액이 들어가 있으면 박스가 뒤바뀐 것이다.
diff) 부호 규약diff = 추정 가능 주택가격 − 분양가 를 그대로 문자열로 쓴다. 부호를 반드시 방향에 맞게 붙인다.
| 상황 | cls | diff 예시 | 의미 |
|---|---|---|---|
| 예산이 남음 | g (가능) | "+66,639만원" | 6억 6,639만원 여유 |
| 예산에 근접 | a (아슬아슬) | "+1,200만원" | 1,200만원 여유 |
| 예산 초과 | o (초과) | "-34,198만원" | 3억 4,198만원 부족 |
🚨 모든 unit에 -를 붙이는 것은 버그다. "가능"으로 분류된 후보에 -66,639만원이 표시되면 사용자는 6.6억이 부족한 것으로 오독한다.
cls가 g/a인데 diff가 음수이거나, cls가 o인데 diff가 양수이면 계산이 틀린 것이다 — 렌더 전에 부호와 cls의 일관성을 검사한다.
search_announcement_info는 과거 공고도 함께 반환한다. 공고일이 지나 청약이 이미 끝난 공고를 후보로 낼 때는 가격 참고용임을 반드시 명기한다.
dateStr 뒤에 · 청약 종료(가격 참고용)를 덧붙인다. 예: "2023-10-30 · 청약 종료(가격 참고용)"footNote에 다음 문장을 포함한다:
공고일이 지난 공고는 청약이 이미 종료되어 신청할 수 없으며, 시세 비교를 위한 가격 참고용입니다.
ipzi-data.sourceNote using only user-facing labels — never internal table names:
데이터 출처: 청약홈 분양정보 · 청약홈 주택형별 분양정보
ipzi-data.priceNote to state that maxPrice and the diff (예산 차이) computed from it are a per-house-type max-price basis:
표시된 금액과 예산 차이는 주택형별 최고가 기준입니다. 평균가·최저가와 다를 수 있습니다.
templates/result.html exists and only the ipzi-data non-executable JSON block was edited.DB크로스체크, 근거대조, or implementation debug labels.references/ remains in ipzi-data JSON.listings[].units[] (the template renders rowspan automatically).listings[]/units[].type/.maxPrice/.supply value matches the raw search_announcement_info record verbatim (formatting aside); cls/diff are correctly recomputed from the affordability inputs.diff의 부호가 cls와 일관된다 — g/a는 양수(+), o는 음수(-). 모든 unit이 같은 부호를 갖고 있으면 실패로 본다.kpis[0](가능 주택가격) = 대출한도 + 보유현금이다. kpis[1]에 억 단위 금액이 들어가 있지 않다.dateStr에 · 청약 종료(가격 참고용)가 붙고, footNote에 가격 참고용 안내 문장이 있다.ipzi-data.sourceNote is set and uses only user-facing labels, never internal table names.ipzi-data.priceNote is set whenever maxPrice/diff is shown, stating the price and budget gap are a max-price basis.result.json에 저장하고, 사용자 전달 HTML은 고정 정본 templates/result.html의 ipzi-data 블록만 교체해 만든다. 새 HTML을 작성하거나 마크업·CSS·렌더 JS를 수정하지 않는다.../../scripts/html_artifact_contract.mjs를 --file-name "<지역>_<전용면적>_청약맞춤분석"과 함께 사용한다. 최종 사용자 파일명은 <지역>_<전용면적>_청약맞춤분석.html이다.result.json·audit.json·backdata.xlsx는 고정 이름을 유지하되, 사용자 전달 HTML을 result.html이나 index.html이라는 고정 이름으로 내지 않는다.out/<screen-name>/
<지역>_<전용면적>_청약맞춤분석.html
result.json
audit.json
backdata.xlsx # when applicable
ipzitalk MCP 도구의 네임스페이스는 실행 환경(Codex, Claude Code, Hermes, claude.ai 커넥터 등)에 따라 다르다.
이 문서에 적힌 도구 이름(search_announcement_info, get_geocode, get_map_embed_url 등)은 접두사 없는 기본 도구명(base tool name) 이다.
ipzitalk-remote 플러그인의 ipzitalk 서버 provenance가 확인되는 도구만 우선 사용한다. Codex에서는 실제 도구 호출 이벤트의 server: ipzitalk과 기본 도구명을 기준으로 확인한다.presale-mcp 또는 다른 로컬 MCP provenance의 동명 도구는 Remote Skill의 대체 수단으로 사용하지 않는다.클라이언트가 연결 도구 목록에 plugin/server provenance를 구조적으로 제공하지 않을 때만 다음 명시적 fallback을 사용한다.
mcp__plugin_ipzitalk-remote_ipzitalk__<도구명>mcp__ipzitalk_mcp__<도구명>mcp__ipzitalk__<도구명>mcp__claude_ai_ipzitalk__<도구명>fallback으로도 Remote 출처를 유일하게 확인할 수 없으면 값을 추정하지 말고, 사용자에게 ipzitalk Remote MCP 연결 상태를 확인하도록 안내한 뒤 중단한다.