May 21, 2026

Tool-tier refactor and geo-tagging land

The tool system received a centralised refactor

The tool system received a centralised refactor. All 24 non-INTERNAL abilities now carry a SEARCH_TOOLTIP constant, enforced by a base-class validation at import time. The find_tools description was updated to “Use this tool to expose more tools and capabilities”, and its query description now includes a dynamic index of all discoverable tools built from SEARCH_TOOLTIP at runtime via _enrich_find_tools_schema.

The MessageProcessor base class now defines ALWAYS_AVAILABLE (find_tools, memory) and DISCOVERABLE (20 tools) as defaults, with subclasses overriding only where needed. The _BLOCKED pattern is centralised; DMN and SubagentProcessor use _BLOCKED = {"subagent"} instead of redeclaring full lists. The UMP Operational Principles were slimmed from 9 rules (~220 words) to 3 (~75 words): auto-store/recall, discover before guessing, never fabricate.

On the geo-tagging front (TKT-557), transcripts and episodes now store location (lat/lon/name) automatically. Each episode aggregates the dominant location from its window of transcripts, and location is surfaced in all episodic retrieval paths.

A new PlaceAbility provides save/list/get/delete actions for named places, stored in the data graph with a cosine-supersede contradiction policy. The scheduler supports departure reminders with a destination_location field, using a layered speed estimation (historical median, heartbeat deltas, or 30 km/h default) to prepend advisory alerts.

A GeoPatternProcessor fires as a new seventh step in the subconscious worker, extracting location-based behavioural patterns from transcripts with a dedicated cursor and a minimum 30-transcript delta.

In the Brain dashboard, the episodes tab now shows the location name instead of the episode ID, backed by a new location field in the episodes API response. Data graph sources still display the key.

  • SEARCH_TOOLTIP added to all 24 non-INTERNAL abilities with base-class validation

  • UMP Operational Principles slashed from 9 rules to 3: auto-store/recall, discover before guessing, never fabricate

  • Transcripts and episodes auto-tag location; episodes aggregate dominant location across their window

  • New PlaceAbility for managing named places; scheduler departure reminders with layered speed estimation

  • LLM geo pattern learning as subconscious worker step 7, with 30-transcript minimum delta

  • Brain episode view now shows location_name instead of episode ID