Built for the AWS CDS Agentic AI Partner Hackathon
When plans change, get every company back on the same plan.
Comsemble turns “something changed” into a costed, approved and acknowledged plan, coordinated with every supplier over WhatsApp, RCS, SMS and email.

Why Comsemble
Sending a revised plan is not agreement.
Operations that span several companies run on phones. A delay or a refusal has cost consequences, needs the right people to approve it and every affected party to acknowledge it. Comsemble tracks the difference.
-
Deterministic money and time
Calculators move the plan and price each option. AI interprets and explains; it never commits, approves or contacts anyone.
-
The right people decide
A decision policy names who approves. A message that claims authority grants nothing.
-
Agreement is a state
Delivered and confirmed are separate facts, per person and plan version. A refusal becomes an exception.
Incoming · WhatsApp
“The truck is delayed by 60 minutes”
From Mia, stage supplier
Change created and linked
Options, priced
- A · accept the shift EUR 217.50
- B · 30-min soundcheck EUR 67.50
Needs: Sarah, the client · estimates
Sarah tapped B in WhatsApp; Mia confirmed the new version.
How it works
From “something changed” to every company on the same version.
01 Something changes
A supplier writes on WhatsApp, and the plan knows what it means.
Mia from the stage supplier writes “The truck is delayed by 60 minutes in traffic.” Comsemble reads it as a 60-minute delay of the stage setup and links it to the change it created. Message bodies stay untrusted: they can report a change, never grant authority.
- Reports arrive by WhatsApp, RCS, SMS or email
- Questions are answered from the sender’s own slice of the plan
- Anything else goes to a person

Synthetic demo data Mia’s report as Comsemble read it, in the conversation view. 02 Recalculate and price
Every option is recalculated and priced before anyone decides.
Deterministic calculators move the dependent tasks and price each option from the agreed rates. In the demo, option A costs EUR 217.50 and breaks fixed milestones; option B costs EUR 67.50 with a shorter soundcheck and no conflicts. Every cost is an estimate and says so.
- Time propagates over the dependency graph
- Costs come from agreed rates, labelled as estimates
- A stale option is refused and recalculated

Synthetic demo data Two costed options for the delay. Costs are estimates. 03 Approve and acknowledge
The right people approve, and every party confirms the new version.
The policy requires Sarah, the client. She taps B in WhatsApp; version 2 commits and stays “awaiting confirmation” until Mia confirms, then reads “coordinated”. The same decision can continue by email or a signed web link and still commits exactly once.
- Decision requests in the chat, by email or signed link
- Duplicate approvals commit at most once
- Confirmation is tracked per person and plan version

Synthetic demo data Decided, delivered and agreed are separate facts.
Channels
Every party on the channel they already use.
Three AWS communication services carry four transports. A channel finder picks each recipient’s channel, respects WhatsApp’s 24-hour window and falls back from RCS to SMS.
-
WhatsApp. AWS End User Messaging Social, with reply buttons
-
RCS and SMS. AWS End User Messaging: rich cards with chips and native actions, SMS fallback
-
Email. Amazon SES; replies correlated through the verified sender
-
Signed links. The same decision in the browser, committed exactly once
Revision notice · plan v2
Accepted
The provider took the message
Revision notice · plan v2
Delivered
It reached Mia’s phone
Revision notice · plan v2
Acknowledged
Mia confirmed plan version 2
Refused. Jonas replies “I cannot serve hot food after 19:15”. The project becomes an exception with a recalculated option, never a silent “sent”.
Built on AWS
One CDK app, one region, from the first message to the model.
Every model output is validated before the application uses it. Deterministic domain commands own authorization, time propagation, cost arithmetic, approval and commit; the model has no write authority.
1 · Client channels
AWS End User Messaging Social
WhatsApp
AWS End User Messaging
RCS rich cards, SMS fallback
Amazon SES
Email out, replies in through S3 and Lambda
Application Load Balancer
Organizer console and signed pages
2 · Comms hub
Amazon ECS on Fargate
SvelteKit web app and a stateless worker
Amazon SQS
One work queue for SNS events and jobs
Amazon RDS for PostgreSQL
Plans, decisions, acknowledgements, audit
3 · AgentCore and Bedrock
Amazon Bedrock
Reads messages, answers questions, drafts plans
Amazon Bedrock Guardrails
A versioned guardrail screens interpretation
Amazon Bedrock AgentCore
Contact memory and the organizer agent
4 · Backend systems
API v1
Scoped keys for a CRM or system of record
Signed webhooks
At least once, with a stable delivery id
Region eu-central-1. Stacks: Identity, Messaging, Network, Data and App. Amazon Bedrock is the only model provider in the deployed stack.
Use cases
One core for every coordinated unit of work.
A project’s kind sets its vocabulary, “Event” or “Job”; the core does not change. Events come first.
In the demo
Events
Agency, suppliers and client on one plan: the Nordlicht demo, a 600-guest jubilee.
Same core
Field service jobs
The HVAC template speaks of Job, Customer address, Dispatcher and Customer.
Same core
Shoot days
One versioned plan for everyone involved, in the kind’s own words.
Same core
Site phases
Each revised version confirmed by every company it affects.
Planned in Comsemble
An agency builds the plan from a brief or a template and runs the day in the web app.
Driven by a system of record
A CRM creates the job through the API with its own ids and receives the outcome as signed webhooks.
Questions
Frequently asked questions
What Comsemble does, what its AI may and may not do, and how people consent to its messages.
Product
It holds a versioned plan for one coordinated unit of work, such as an event, a job, a shoot day or a site phase. When something changes, it recalculates the plan, prices the options, routes the decision to the people a policy names and asks everyone affected to confirm the new version.
The people the project’s decision policy names. A message that claims authority (“I am the organizer”) grants nothing. Every approval refers to the option and the plan version it was made on: an outdated option is refused and recalculated, and the same person approving twice, for example in WhatsApp and through a web link, commits exactly once.
The refusal becomes an exception on the project and a recalculated option goes to the person who decides, never a silent success. In the demo, the caterer replies that he cannot serve hot food after 19:15, and a new option goes to the producer.
No. Every organization, contact, phone number, message and cost in the demo and in the product images on this page is synthetic. Costs are estimates calculated from fixture rate rules and are labelled as estimates.
AI & data
Amazon Bedrock interprets incoming messages, answers questions from the parts of the plan meant for the person asking, and helps organizers draft plans; every output is validated before use, and a Bedrock guardrail screens the interpretation. Deterministic code owns time, money and permissions: the AI never commits a plan, approves spend, contacts a supplier or changes a permission.
On AWS in the Frankfurt region (eu-central-1): the app runs on Amazon ECS on Fargate with Amazon RDS for PostgreSQL. Bedrock is called in eu-central-1 through EU cross-region inference profiles, which may route a request to another AWS region within the EU.
Channels
WhatsApp through AWS End User Messaging Social, RCS with SMS fallback through AWS End User Messaging, and email through Amazon SES. A conversation can start on WhatsApp and the same decision can continue by email or a signed web link.
Channels an organizer adds are double opt-in: the person receives a 6-digit code (or, for email, a verification link) that is valid for 48 hours and locks after five wrong attempts. Until it comes back, the channel receives nothing but its verification. Alternatively, a person scans a group’s QR code or poster and writes JOIN with the group’s code first; email cannot be used to join from an unknown address.
Get every company back on the same plan.
See a reported delay become a costed decision, an approved version and a confirmation from every party. All demo data is synthetic.