Unlocking Automation with Strands Agents and Bedrock
Introducing Strands Agents & The YourDay Project Overview
Strands Agents is a powerful, code-first framework that dramatically simplifies the process of building and operating complex, multi-tool Agentic systems. It provides a robust structure for orchestrating Large Language Models (LLMs) and integrating them with external services.
For more insights on AI agent development and context management, check out my series on context management with Kiro.
To showcase how easily Strands Agents can be utilized, I’ve built a practical example: the YourDay project. This project combines the framework with the powerful Claude Sonnet model from AWS Bedrock and publicly available APIs (Open-Meteo, GNews) to automatically generate a daily summary and post it to the Obsidian note app. Let’s see how Strands Agents makes this complex automation straightforward.
YourDay Project
Project Overview
YourDay is an AI agent based on the Strands SDK, designed to automate the following tasks:
- Collects current weather data via Open-Meteo’s APIs.
- Fetches the top 10 news headlines from the GNews API.
- Uses AWS Bedrock Claude Sonnet 4.5 to transform the collected data into a formatted summary report in Markdown.
- Automatically publishes the summary to an Obsidian Vault via the Obsidian MCP (Markdown Communication Protocol) server, automating the creation of the Daily Weather & News note.
System Diagram

API Keys
To run YourDay, the following access permissions and keys are required:
- GNews API Key: For collecting news data.
- AWS Bedrock Access (Claude Sonnet): For generating the AI summary (requires an AWS account).
- Obsidian API Key: For integration with the Obsidian MCP server.
Code Implementation: The Heart of the Agentic System
Now let’s implement the code. YourDay is structured to integrate various clients (Weather, News, Obsidian) and uses the Strands Agent to orchestrate the generation of the final Markdown.
1. YourDayAgent: The Core Agent Defining the Workflow
The YourDayAgent class collects data, and then calls the Bedrock model via self.agent.invoke_async(prompt=prompt) to generate summary. Finally, it posts the result to Obsidian.

2. WeatherClient: Open-Meteo Integration
The WeatherClient uses Open-Meteo’s Geocoding API to convert the location name into coordinates, and then calls the Forecast API to fetch current weather information.

3. NewsClient: GNews API Integration
The NewsClient uses the provided NEWS_API_KEY to call the GNews top-headlines endpoint, refining and returning a list of top news articles.

4. ObsidianClient: Publishing to Obsidian
The ObsidianClient uses a PUT request targeting the Obsidian MCP server to write the Markdown content to a specific path within the Vault.

5. CLI: Execution Interface
cli.py loads the configuration, initializes the clients and the YourDayAgent, and then calls agent.run() to execute the entire workflow.

Then, the entire workflow will be executed by executing _run_async of YourDayAgent described in step 1.
6. Demo: Agent Execution Result
Let’s run the script now. When the yourday run command is executed in the CLI, you can see the agent progress through the steps of loading configuration, initializing clients, and generating the summary. The screenshot below illustrates the successful final posting to Obsidian, including successful communication with Bedrock and the path of the newly created Markdown file.

Scheduling the Task (Cronjob)
To ensure this software runs automatically every morning, you can register it as a scheduler using cronjob (on Linux/macOS).
Here’s an example of scheduling this script as a cronjob to run every morning at 7:00 AM. You’ll need to adjust the paths to suit your environment.

The complete source package including the code above is available here: https://github.com/elbanic/yourday
Build Your First Agent
Strands Agents makes building automated Agentic workflows a reality by neatly orchestrating complex LLM calls and external service integrations. Through the YourDay project, we can experience the era where agents handle routine daily tasks simply by defining API keys and the workflow.
What’s in your daily routine that could be automated with Agent?