SkillHub

india-location-normalizer

v1.0.1

Normalize Indian real-estate location text into canonical city and locality fields (Mumbai and Pune v1) with confidence and unresolved flags. Use when leads contain aliases like Goregaon, Andheri W, PCMC, Hinjewadi, Baner, or Wakad. Recommended chain position: lead-extractor then india-location-norm...

Sourced from ClawHub, Authored by Vishal

Installation

Please help me install the skill `india-location-normalizer` from SkillHub official store. npx skills add vishalgojha/india-location-normalizer

India Location Normalizer

Resolve messy India locality aliases into canonical location fields without side effects.

Quick Triggers

  • Normalize Mumbai/Pune location aliases from extracted leads.
  • Map PCMC and Hinjewadi variants to canonical localities.
  • Resolve Mumbai shorthand like Scruz, Khar, Andheri W, Turner Road, Carter Road.
  • Standardize locality names before scoring or storage.

message-parser -> lead-extractor -> india-location-normalizer -> sentiment-priority-scorer

Target KPI for production tuning: improve canonical Mumbai/Pune locality resolution versus extractor-only baseline.

Execute Workflow

  1. Accept lead-location payload from Supervisor.
  2. Validate input against references/location-normalizer-input.schema.json.
  3. Use references/india-location-aliases-v1.json as the authoritative lookup map.
  4. Match in this order:
  5. exact alias match (case-insensitive)
  6. token-normalized alias match (trim punctuation, collapse spaces)
  7. conservative fuzzy match only when clearly unambiguous
  8. Return one normalized location record per input lead with:
  9. city
  10. locality_canonical
  11. micro_market
  12. matched_alias
  13. confidence
  14. unresolved_flag
  15. Validate output against references/location-normalizer-output.schema.json.

Enforce Boundaries

  • Never parse raw chat exports.
  • Never extract non-location entities.
  • Never write to Google Sheets, databases, or files.
  • Never send messages or trigger external channels.
  • Never auto-resolve low-confidence ambiguous aliases.

Handle Ambiguity

  1. If multiple localities match equally, set unresolved_flag: true.
  2. If no confident match exists, preserve input in matched_alias and mark unresolved.
  3. Prefer false-negative over false-positive for city/locality assignment.