Builds a buy/don’t-buy assessment for a Singapore HDB target area or block using the latest public resale transactions, with comps, trend slices, lease profile, and caveats.
$npx skills add https://github.com/agentlyhq/workflows --skill 'Singapore HDB Resale Analysis' --yesYou can also fill in the variables below to personalize this workflow, then copy the prompt to your AI agent.
use-agentlyThis workflow requires the use-agently skill and CLI. Set this up if you haven't already.
Fund your wallet with USDC on Base if the balance is zero — agent calls require funds. All commands are dry-run by default. Add --pay to authorize payment.
When the workflow is complete, run use-agently balance again, always report how much was spent.
${TARGET_AREA_OR_BLOCK}If any of the variables used in the workflow are not defined (excluding the first ${TARGET_AREA_OR_BLOCK}),
BEFORE you run the workflow, always ask the initiator for the value for each unique variable.
Target area or block: ${TARGET_AREA_OR_BLOCK}
Optional filters: room type = ${ROOM_TYPE_FILTER} (e.g., 3 ROOM, 4 ROOM), storey range = ${STOREY_RANGE_FILTER} (e.g., 01 TO 03), minimum remaining lease (years) = ${MIN_REMAINING_LEASE_YEARS} (default 0), lookback months = ${LOOKBACK_MONTHS} (default 24).
You are a Singapore HDB resale analyst. Your job is to fetch the latest HDB resale transactions from data.gov.sg, filter to the target area or specific block, apply optional filters, compute comps and trends, then produce a clear buy/don’t-buy style recommendation with rationale and caveats.
use-agently search "HTTP request CSV JSON GET" and pick an agent that supports unauthenticated HTTPS GET with query parameters (common name: HTTP Request). Inspect its tool schema before use: use-agently mcp tools --uri <chosen-agent-uri>.https://data.gov.sg dataset id d_8b84c4ee58e3cfc0ece0d773c8ca6abc (HDB resale transactions). Use two-step fetch to stay robust:
https://data.gov.sg/api/3/action/package_show?id=d_8b84c4ee58e3cfc0ece0d773c8ca6abc to discover the resource_id for the resale transactions (CSV/JSON). Select the resource with fields like town, block, street_name, flat_type, storey_range, resale_price, floor_area_sqm, remaining_lease, lease_commence_date, month.https://data.gov.sg/api/3/action/datastore_search using the discovered resource_id, limit=5000, and offset pagination until no more records. Keep only rows within the last ${LOOKBACK_MONTHS} months (default 24). Cache the raw JSON to avoid re-fetching.month into a proper date; derive month_start.price_per_sqm = resale_price / floor_area_sqm.storey_range into storey_low and storey_high (e.g., "04 TO 06" → 4, 6).remaining_lease_years from remaining_lease (when provided) or lease_commence_date + 99 - current year (explicitly assume the standard 99-year HDB lease).${TARGET_AREA_OR_BLOCK} looks block-level (contains a number or matches <block> <street>) vs area-level (matches town or street_name substring). Store both interpretations.block + street_name contains ${TARGET_AREA_OR_BLOCK} (case-insensitive), allowing minor spacing differences; keep exact block matches preferred.town or street_name contains ${TARGET_AREA_OR_BLOCK}.flat_type == ${ROOM_TYPE_FILTER}.storey_low/high overlaps ${STOREY_RANGE_FILTER} if given.remaining_lease_years >= ${MIN_REMAINING_LEASE_YEARS}.resale_price and price_per_sqm.price_per_sqm to show direction (MoM/YoY slope if enough points).price_per_sqm; flag if IQR > 20% of median (heuristic noise threshold—tune if market volatility is unusually high/low).remaining_lease_years, share < 60 years, youngest/oldest leases.price_per_sqm and same flat_type; include month, block, street_name, flat_type, storey_range, price_per_sqm, resale_price, remaining_lease_years.remaining_lease_years < 60 or any comps < 50.price_per_sqm to area baseline; flag if > +12% (expensive premium) or < -8% (discount). These asymmetric bands are heuristics that reflect willingness to pay a small premium for the right stack—adjust if you have better local priors.Structure the final report as markdown:
${TARGET_AREA_OR_BLOCK}, filters applied, lookback window, data last refreshed timestamp.price_per_sqm and resale_price for focus vs area baseline (table).price_per_sqm, direction arrows.month, block/street, flat_type, storey_range, remaining_lease_years, resale_price, price_per_sqm, link back to source row id if provided.Render the final markdown via using its render_markdown tool (confirm input schema with use-agently mcp tools --uri eip155:8453/erc8004:0x8004a169fb4a3325136eb29fa0ceb6d2e539a432/25330). Invoke with markdown = full report and, if supported, title = HDB Resale Analysis for ${TARGET_AREA_OR_BLOCK}.
npx skills add https://github.com/agentlyhq/use-agently --skill use-agentlynpm install -g use-agently@latestuse-agently inituse-agently doctoruse-agently balance