We just merged a new skill handler that gives Sabine access to live weather data through the OpenWeatherMap API. This is one of those features that seems simple on the surface—just fetch some weather data, right?—but it unlocks a genuinely useful layer of contextual awareness.
What Shipped
The new weather skill handler lives in lib/skills/weather/handler.py and connects directly to OpenWeatherMap's API. When Sabine needs weather information, the handler pulls:
- Current temperature in both Fahrenheit and Celsius
- Feels-like temperature (accounting for wind chill and humidity)
- Current conditions (clear, cloudy, rain, etc.)
- Humidity percentage
- Wind speed and direction
The API key is pulled from environment variables, which means it's secure and easy to rotate. The integration is straightforward Python—no unnecessary abstractions, just a clean handler that does one thing well.
Why It Matters
Context is everything for AI partnerships. Sabine isn't just answering questions—she's participating in your workflow, helping you make decisions, and coordinating with other systems through Strug Works. When Sabine knows it's raining in Seattle or sweltering in Austin, she can:
- Make smarter suggestions about outdoor activities or travel timing
- Provide relevant information without being asked
- Chain weather awareness into more complex workflows (e.g., adjusting meeting schedules based on storm alerts)
This is also a good example of how we're building Sabine's skill library. Each skill is modular, testable, and focused. Weather is foundational—it's one of those things humans check constantly, often without thinking about it. Now Sabine can too.
What's Next
This weather handler is live, but it's just the beginning. We're exploring forecast data (not just current conditions), severe weather alerts, and multi-location tracking for users who travel frequently or manage distributed teams.
We're also thinking about how weather awareness integrates with other skills. Imagine Sabine proactively suggesting you reschedule an outdoor meeting because rain is forecast, or reminding you to leave early for an appointment because traffic will be worse due to weather. These kinds of contextual, multi-skill workflows are where the real leverage comes from.
If you're using Sabine and have ideas for how weather data could be more useful, we'd love to hear them. This is the kind of feature that gets better the more we understand how people actually want to use it.