-
-
Set the intention — Tell Crum what kind of dance experience you want, once.
-
Human approval — Crum coordinates the plan and pauses for approval before commitment.
-
Agent timeline — A transparent view of Crum’s autonomous actions and progress.
-
Confirmed & monitoring — Once approved, Crum confirms the plan and continues monitoring it.
-
Crum landing page — The autonomous dance agent that turns an intention into a real-world plan.
Inspiration
We noticed that making plans to attend a dance event is rarely just about finding an event. A person may know what style and level they want, but then they still have to search for events, compare timings and distance, find people who would actually fit the plan, check availability, coordinate everyone, and keep track of changes.
We wanted to build an agent that does more than recommend options. Crum was inspired by the idea that an AI agent should take responsibility for making an intention happen in the real world.
Instead of asking, "What dance events can I find?", the user simply says, "I want to do this," and Crum takes the workflow from there.
What We Built
Crum is an autonomous dance coordination agent built with the Strands Agents SDK.
A user provides an intention such as:
- Style: Hip-Hop
- Level: Intermediate
- Day: Saturday
- Time: Evening
- Location: Gurugram
- Distance: Within 10 km
- Budget: ₹800
Crum then performs a multi-step workflow:
- Discovers suitable dance events.
- Evaluates them against the user's constraints.
- Finds compatible dancers.
- Verifies event availability.
- Builds a coordinated dance plan.
- Stops at the human approval point before any booking or financial commitment.
- After approval, the plan can be monitored for changes.
This makes Crum fundamentally different from a normal recommendation chatbot. The agent is responsible for coordinating a workflow, not simply generating an answer.
How We Built It
The core agent is implemented using the Strands Agents SDK, with dedicated tools for:
- Event discovery
- Compatible dancer discovery
- Availability verification
- Plan generation
- Plan monitoring
The frontend is a web-based interactive dashboard where users can define their dance intention and observe the agent workflow.
The backend connects the interface with the agent workflow and maintains the state of the plan, including approval and confirmation.
We also created a demo mode so the complete agent workflow can be demonstrated reliably using structured dance-event and participant data.
What We Learned
The biggest lesson was that building an agent is very different from building a chatbot.
A chatbot can produce a useful response from a single prompt. An agent needs to take actions, use tools, maintain state, make decisions, and know when to stop and involve a human.
We learned the importance of designing clear tool boundaries and giving the agent responsibility for a complete workflow rather than giving it a collection of disconnected capabilities.
We also learned that human approval is an important part of autonomous systems. Crum can coordinate the plan, but it does not make a financial commitment without the user's approval.
Challenges
One of our biggest challenges was making the workflow genuinely agentic rather than simply hard-coding a sequence of responses.
We also faced AWS/Bedrock inference and account authorization issues during development. While the AWS environment and model catalog were accessible, model invocation was restricted during the build. To keep the project demonstrable, we separated the Strands-based agent implementation from a deterministic demo workflow using the same tools and workflow structure.
Another challenge was connecting the user's dynamic choices from the frontend to the agent workflow. We made the workflow respond to the selected dance style, level, budget, distance, and location instead of relying on one fixed example.
The result is a system that demonstrates our core idea: Crum doesn't just help you find a dance plan. It takes responsibility for making the plan happen.
Built With
- agentic
- agents
- ai
- amazon
- amazon-web-services
- autonomous
- bedrock
- generative
- human-in-the-loop
- javascript
- node.js
- python
- sdk
- strands
- web
Log in or sign up for Devpost to join the conversation.