House Hunting Skill
This skill helps users find the best value rental houses using a circle-based search methodology centered on their office location.
Core Methodology
Search Philosophy
- Center Point: User's office location (geocoded to coordinates)
- Radius: User's acceptable commute distance/time
- Scope: ALL residential communities within the circle
- Goal: Find the best value housing by comparing multiple factors
Evaluation Factors (综合评估)
| Factor | Weight | Description |
|---|
| -------- | :------: | :------------ |
| 🚇 通勤时间 | 30% | 公共交通通勤时间(分钟) |
| 🏠 小区环境 | 25% | 小区品质、绿化、配套设施 |
| 🏢 房龄/年限 | 20% | 房子建成年限,越新越好 |
| 💰 租金性价比 | 25% | 价格 vs 面积 vs 房型的综合价值 |
Workflow
Step 1: Collect User Requirements
Ask the user for the following information:
- Office Location: Ask "请告诉我你的办公地点(地址或地标)"
- Commute Distance: Ask "你可以接受的通勤距离是多少?(单位:公里,或公交/地铁通勤时间:分钟)"
- Room Type: Ask "你要找什么房型?(如:一室、两室、三室等)"
- Rent Range: Ask "你的租金范围是多少?(如:2000-4000元/月)"
- Building Age Requirement: Ask "你对房子年限有什么要求?(如:不超过20年、15年以内等)"
IMPORTANT - Building Age Filter:
- If user specifies "不超过X年" or "X年以内", then completely exclude any community/property built older than X years
- Example: User says "不超过20年" → Only show communities built in 2006年以后(含2006)
- This is a hard filter, not just a scoring factor - do NOT show properties that exceed the age limit
Step 2: Geocode Office Location
Convert the office address to latitude and longitude coordinates using a geocoding service.
Recommended APIs:
- Tencent Map Geocoding:
https://apis.map.qq.com/jsapi?address={address}&key={key} - Amap Geocoding:
https://restapi.amap.com/v3/geocode/geo?address={address}&key={key}
Output: {lat, lng} coordinates of the office location
Step 3: Determine Search Radius
Convert user's commute preference to a search radius:
- If user provides distance (km): Use directly as radius
- If user provides time (minutes): Estimate radius based on average transit speed (~15-20 km/h for city transit)
Estimated Radius Conversion:
- 30分钟 transit ≈ 7.5-10 km radius
- 45分钟 transit ≈ 11-15 km radius
- 60分钟 transit ≈ 15-20 km radius
Step 4: Find All Communities Within Circle
Search for ALL residential communities within the specified radius from the office:
- Use Map APIs to find nearby residential areas:
- Tencent Map nearby search:
https://apis.map.qq.com/ws/geocoder/v1/?location={lat},{lng}&poi_options=policy=3 - Or search for residential communities by area
- Expand search to cover the entire circle:
- Query multiple districts/areas within the radius
- Collect all community names within the geographic scope
- Cross-reference with rental platforms:
- For each community found, search for rental listings on multiple platforms
Step 5: Search Rental Listings for Each Community
IMPORTANT: For each community found within the circle, search on at least two platforms:
| Platform | Website | Notes |
|---|
| ---------- | --------- | ------- |
| 贝壳找房 | https://sz.zu.ke.com/zufang/ | Beike |
| 链家 | https://sz.lianjia.com/zufang/ | Lianjia |
| 中原地产 | https://sz.centanet.com/zufang/ | Centaline |
| 58同城 | https://sz.58.com/zufang/ | 58.com |
| 安居客 | https://sz.zu.anjuke.com/ | Anjuke |
| 小红书 | https://www.xiaohongshu.com/search?keyword= | Xiaohongshu (social) |
Search Parameters:
- Community name: Search by specific community
- Price range: User's rent range
- Room type: User's preferred room type (2室, 3室)
- Housing type: 整租 (Whole rental only) - exclude 合租, 单间, 床位
Step 6: Calculate Commute Time for Each Listing
For each candidate listing, calculate the public transit commute time from the listing to the office.
Tencent Map Transit API:
https://apis.map.qq.com/direction/transit?from={start_lat},{start_lng}&to={end_lat},{end_lng}&key={key}&policy=LEAST_TIME
Amap Transit API:
https://restapi.amap.com/v3/direction/transit?origin={start_lng},{start_lat}&destination={end_lng},{end_lat}&key={key}&strategy=0
Step 7: Validate Legitimate Residential Communities
CRITICAL: Only include listings from legitimate residential communities.
❌ EXCLUDE Types:
- 城中村 (Urban Villages): Names containing 村, 巷, 里, 街 (village-style)
- 研发/工业公寓: Names containing 研发公寓, 工业园
- 非住宅性质: 农民房, 小产权房, 商住两用
✅ INCLUDE Types:
- 正规住宅小区: Names with 小区, 花园, 苑, 居, 园, 湾, 郡, 府
- 商品房住宅: Regular commercial housing with proper property management
Step 8: Gather Community & Property Details
For each community, collect:
- Building age: Year built (房龄/年限)
- Community environment: 绿化率, 容积率, 配套设施
- Property type: 普通住宅 vs other types
- Elevator availability: 电梯房 vs 楼梯房
Sources:
- 百度百科 (Baidu Baike) for community details
- 房天下 (Fang.com) for property information
- 链家/贝壳 (Lianjia/Beike) for building age
Step 9: Calculate Value Score (性价比评分)
For each listing, calculate a comprehensive value score:
总分 = 通勤得分×30% + 小区环境得分×25% + 房龄得分×20% + 租金性价比得分×25%
Scoring Details:
| Score | Commute Time | Building Age | Value (租金/面积/房型) |
|---|
| :-----: | :------------ | :------------ | :--------------------- |
| 5分 | ≤30分钟 | ≤5年 | 极佳(低价大面积) |
| 4分 | 31-45分钟 | 6-10年 | 良好 |
| 3分 | 46-60分钟 | 11-15年 | 一般 |
| 2分 | 61-90分钟 | 16-20年 | 较差 |
| 1分 | >90分钟 | >20年 | 差 |
⚠️ IMPORTANT - Building Age as Hard Filter:
- The user's building age requirement (e.g., "不超过20年") is a HARD LIMIT, not just a scoring factor
- Any community/property older than the limit must be completely excluded, regardless of other qualities
- Example: User requires "不超过20年" (current year 2026 → built after 2006):
- ✅ 桃源村一期(1997) → EXCLUDE (29年 > 20年)
- ✅ 华联花园(1997) → EXCLUDE (29年 > 20年)
- ✅ 彩虹居(1998) → EXCLUDE (28年 > 20年)
- ✅ 荔园新村(1995) → EXCLUDE (31年 > 20年)
- ✅ 松坪村(2005左右) → EXCLUDE (~21年 > 20年)
Step 10: Present Ranked Results
Display listings ranked by comprehensive value score:
| 排名 | 小区名称 | 租金 | 房型 | 面积 | 通勤 | 房龄 | 电梯 | 总分 | 推荐理由 |
|---|
| :---: | :------- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :-------: |
| 1 | XXX | 4500 | 3室 | 85㎡ | 25分钟 | 8年 | ✅ | 4.6 | 性价比最高 |
| 2 | XXX | 4200 | 3室 | 78㎡ | 35分钟 | 5年 | ✅ | 4.3 | 通勤近+新房 |
| 3 | XXX | 4800 | 3室 | 95㎡ | 40分钟 | 12年 | ✅ | 4.1 | 大户型 |
Summary:
- Top 3 best value listings with detailed reasoning
- Trade-off analysis (e.g., longer commute for better community)
- Platform cross-reference status
Important Notes
- Circle-based search: Always search by geographic radius from office, not by administrative district
- Comprehensive evaluation: Consider ALL factors (commute, community, age, price) not just price
- Building Age is a HARD FILTER: If user specifies a maximum age (e.g., "不超过20年"), completely exclude any property older than that limit - do NOT show them even if they score high on other factors
- Only 正规小区房: Exclude 城中村, 农民房, 研发公寓
- Only 整租: Exclude 合租, 单间, 床位
- Cross-reference at least 2 platforms: Verify data accuracy
- Prioritize overall value over single factor: A slightly higher rent for much better commute/location may be worth it
Supported Room Types
- 一室 (1-bedroom)
- 两室 (2-bedroom)
- 三室 (3-bedroom)
- 及以上等
Platform URLs for Reference
See references/platforms.md for detailed API patterns.