AWS Builder Center
Weekend Creative Agent Challenge: Daily Sky Haiku

Weekend Creative Agent Challenge: Daily Sky Haiku

Daily Sky Haiku is an always-on AI agent that turns Kochi’s daily weather into a new three-line haiku using Amazon Bedrock Nova Lite.

Series: WeekEnd-Challenges (7 articles)

  1. …
  2. 4
    Weekend Creative Agent Challenge: Daily Sky Haiku This article
AWS SBG Tech Lead ’25 • Founder GunnerJyo • AWS Certified • Graphic Designer • YT Streamer

🌤️ Vision: A Creative App That Works Without You

Most AI creative applications require someone to open the app, enter a prompt, and click a button.
I wanted to build something different.
For this challenge, I turned a simple AI poetry application into an always-on creative agent.
Meet Daily Sky Haiku.
Every morning, the application automatically checks the current weather in Kochi, Kerala. It then sends the weather information to Amazon Bedrock Nova Lite, which creates an original three-line haiku inspired by the current conditions.
The generated poem is saved online, and the public website displays the latest creation.
There is no Generate button.
There is no need to open the application.
The creative process happens automatically in the background.
For example, a rainy morning can produce something like:
Whispers of the monsoon
Silent rain on Kochi's streets
Silent, soft, and sweet.
The goal is to make the website feel like a small digital poetry journal that writes a new entry every morning.

🏗️ How I Built It

I designed Daily Sky Haiku as a lightweight serverless workflow.
The first part of the workflow is the weather data. The application retrieves current weather information for Kochi using the Open-Meteo API.
The weather information is passed to an AWS Lambda function.
Lambda acts as the main brain of the workflow. It receives the weather information, prepares a creative prompt, and sends that prompt to Amazon Bedrock.
I use Amazon Nova Lite to generate the haiku.
The prompt tells the model to create a weather-themed poem consisting of three lines and to make the writing feel connected to the current environment.
After the model generates the poem, Lambda combines the generated text with information such as:
  • Location
  • Temperature
  • Humidity
  • Weather conditions
  • Generation timestamp
The result is stored in Amazon S3 as a JSON object called:
1
latest.json
The frontend reads this JSON file and displays the latest poem.

⏰ Making the App Autonomous

The most important part of this project is Amazon EventBridge.
Instead of requiring a user to trigger the Lambda function, I created an EventBridge scheduled rule named:
1
daily-sky-haiku-morning
The rule triggers the Lambda function automatically every morning.
My current schedule is:
1
cron(30 1 * * ? *)
This corresponds to 7:00 AM IST.
The complete workflow looks like this:
1
Amazon EventBridge │ 7:00 AM IST │ ▼ AWS Lambda │ ┌──────────┴──────────┐ ▼ ▼ Open-Meteo Amazon Bedrock Weather Nova Lite │ │ └──────────┬──────────┘ ▼ Amazon S3 latest.json │ ▼ Netlify Public Website
This means the application can create new content even when nobody is visiting the website.
That is the core idea behind Daily Sky Haiku.

☁️ AWS Services Used

AWS Lambda

Lambda runs the backend workflow. It retrieves the weather data, communicates with Amazon Bedrock, processes the generated response, and stores the final result.

Amazon Bedrock

Amazon Bedrock provides the generative AI capability.
I use Amazon Nova Lite to transform real-world weather information into creative poetry.

Amazon EventBridge

EventBridge provides the scheduled automation.
It invokes Lambda every morning without requiring manual interaction.

Amazon S3

S3 stores the generated latest.json file containing the latest haiku and weather information.

AWS IAM

IAM provides the permissions required by the Lambda execution role to interact with the required AWS services.

Netlify

The public frontend is deployed using Netlify. The website retrieves the latest generated content from the backend storage.

🧩 Key Decisions and Challenges

One of my main design decisions was keeping the architecture simple.
I didn't want to introduce unnecessary services for a project whose main purpose was demonstrating autonomous creative generation.
The combination of EventBridge + Lambda + Bedrock + S3 gives me everything needed for the core workflow.
Another decision was separating the frontend from the backend.
I initially experimented with Amazon S3 static website hosting, but while developing the frontend I encountered issues where the local HTML page appeared blank and the browser was not loading the expected content.
I eventually separated the public presentation layer from the AWS backend and deployed the frontend using Netlify.
This made development and deployment easier while keeping the important autonomous workflow on AWS.
I also had to configure the required IAM permissions so that Lambda could access the AWS services it needed.
The biggest conceptual challenge was understanding that the AI model itself isn't the entire agent.
The model generates the poem, but EventBridge provides the recurring trigger, Lambda coordinates the workflow, external weather data provides context, and S3 provides persistence.
Together, these components create the autonomous behavior.

🧠 What I Learned

The biggest lesson from this project was that an AI application doesn't have to behave like a traditional chatbot.
An agent can be a small automated workflow that observes something, makes a decision, creates something, and leaves the result ready for someone later.
I learned how to connect scheduled AWS events to Lambda, integrate Amazon Bedrock into a serverless workflow, work with an external weather API, store generated data in Amazon S3, and build a lightweight frontend around the generated content.
I also learned more about the importance of permissions and service boundaries in AWS.
Rather than giving one component unnecessary access to everything, the Lambda execution role can be configured with permissions specifically for the services the application needs.
Most importantly, this challenge helped me understand the difference between an application that can generate content and an application that generates content on its own.
That small difference completely changes how the architecture needs to be designed.

🚀 What's Next?

Daily Sky Haiku currently focuses on one location and one daily poem, but there are several directions I could take it.
Future versions could include:
  • Multiple cities around the world
  • A historical archive of previous haikus
  • Weather-based visual themes
  • AI-generated artwork alongside each poem
  • A calendar showing previous poems
  • Different poetry styles
  • Daily email notifications
  • A Progressive Web App
  • Long-term memory that allows the agent's writing style to evolve
I especially like the idea of adding a memory system where the agent can look at previous poems and gradually develop its own creative style.

🌐 Try Daily Sky Haiku

GitHub repository:
GunnerJyo/daily-sky-haiku 

🏁 Final Thoughts

Daily Sky Haiku started with a simple question:
What if an AI creative app didn't wait for me to open it?
The result is a small autonomous creative agent that wakes up every morning, looks at the weather, asks an AI model to interpret it creatively, and publishes a new poem.
By the time I visit the website, the poem is already there.
The application doesn't need me to press a button.
The sky provides the inspiration.
AWS provides the automation.
Nova Lite provides the creativity.
And every morning, Daily Sky Haiku writes something new.
LAMBDA-I
eventbridge
s3bucket
IAM

Series: WeekEnd-Challenges (7 articles)

  1. …
  2. 4
    Weekend Creative Agent Challenge: Daily Sky Haiku This article
Any opinions in this article are those of the individual author and may not reflect the opinions of AWS.
Enjoyed reading this content? Let the author know!

Your likes, comments, shares, and saves help creators reach more builders.

Loading recommendations

Loading article