Planning for week of 26 May – 1 June ready for 150 branches. Three branches with forecast overload risk: Milan Central Thursday afternoon (trade fair), Rome EUR Tuesday morning (fiscal deadline + 28 appointments), Genoa Central Monday (post-event). Five branches with foreseeable underload on Monday morning.
Branch planning built on real load forecasts.
Branch Capacity Planner reads weekly the bank's branch data — customer footfall, average service times, incoming appointments, local events — produces the load forecast by day and time slot, proposes staffing for the coming week, and alerts on overload risks.
Branch Capacity Planner at work.
Confirmed — moving two operators from Milan outskirts to Milan Central for Thursday. Rome EUR already handled. What do you suggest for Genoa?
For Genoa Central: I suggest moving two appointments booked for Tuesday to Monday afternoon, to redistribute the load. Appointment capacity for the shift is available. Awaiting confirmation to update the plan.
Why it exists.
The bank branch network has a structural planning problem. Large urban branches, small branches in peripheral towns, and specialist corporate branches have very different footfall patterns. Staff is limited: overload windows generate waiting times and customer abandonment; underload windows generate cost without output.
How it works weekly.
Branch Capacity Planner activates weekly, typically on Friday evening for planning the following week. It reads the historical footfall data for branches by day and time slot, the incoming appointments, the relevant local events. It produces the load forecast per branch and time slot. Based on the forecast, it proposes the weekly staffing.
The decision stays with the head of network.
The agent alerts on forecast overload and underload risks. The head of branch network decides; the agent sets out the forecast picture. The final allocation decision stays with the head, who weighs operational constraints not always visible in the system — operator preferences, training windows, already-agreed leave.
Who it serves and where it applies.
Head of branch network
Reclaims the time of manual staffing planning. Retail team capacity dimensions on the forecast real load, not on historical averages or the most experienced operator's judgement. By Sunday evening the week's summary is already prepared.
Individual branch manager
Sees the load forecast for their branch before the week, manages leave, training, and non-customer work windows in a way consistent with the forecast picture. Operational planning aligns to the forecast load, not just past load.
The bank customer
Sees waiting times fall in peak windows, because staffing is sized to forecast demand. The in-branch experience stops being a lottery by time of day and becomes predictable.
A concrete example.
The agent starts at 17:00 with 150 branches' data.
For a mid-market bank with 150 branches distributed across the national territory, the agent is scheduled every Friday at 17:00. Integration with the bank's systems — branch management system, appointment system, events calendar — is delivered during the project. The agent reads the footfall data for 150 branches across the previous 12 weeks, the incoming appointments, relevant local events.
Three branches at risk, five with forecast underload.
It produces the forecast per branch and time slot. It identifies three branches with forecast overload risk — Milan Central on Thursday afternoon due to the trade fair overlap, Rome EUR on Tuesday morning for the fiscal deadline and already-booked appointments, Genoa Central on Monday after a local event. It identifies five branches with foreseeable underload. It proposes the updated staffing.
The head of network validates the staffing proposals.
The head of branch network sees the summary on Sunday evening, validates the proposals: moving two operators from an underloaded branch to the critical branch for Thursday, specialist reinforcement at Rome EUR, appointment redistribution at Genoa. Confirms the updates. The event — forecast, proposals, decisions — stays in the runtime audit registry.
Configuration and technical resources.
The Branch Capacity Planner rules are declarative. The bank's operations team defines in a readable format the forecast factors (seasonality, fiscal calendars, local events to monitor), the staffing rules (operator-to-load ratio per service category, specialist staff constraints), and the redistribution rules between branches. The rules live in the bank's repository, versioned, validated at agent startup.
- Language
- TypeScript (Node.js)
- LLM model
- customer's choice: Anthropic, OpenAI, Mistral, open source models hosted internally, AWS Bedrock for a private model
- Built-in controls used
- pii-detector, tool-rate-limit
- Native channels
- Slack, Telegram, WhatsApp, OpenAI-compatible HTTP
- Branch management system and appointment system integration
- dedicated adapter delivered during the project
- Memory
- persistent per instance, pgvector + PostgreSQL FTS on historical footfall patterns
- Registry
- immutable, queryable with a standard SQL client
Frequently asked questions about the agent.
No. The agent produces the load forecast and proposes consistent staffing. The final allocation decision stays with the head of branch network, who weighs operational constraints — operator preferences, training windows, already-agreed leave — not always visible in the system.
The declarative rules include a calendar of local events relevant for forecasting. The customer's team populates the calendar with known events (trade fairs, fiscal deadlines, civic events). For unforeseen events that generate atypical peaks, the agent learns from historical patterns and flags branches with anomalous footfall for subsequent analysis.
The typical pattern for Branch Capacity Planner is 10-14 weeks. Discovery 2 weeks, building the forecast model with the bank's historical data 4-5 weeks, branch management system integration 2-3 weeks, hand-off to the branch network 2-3 weeks.
The model starts from the network's historical data — at least 12 weeks of per-branch footfall, preferably 26 weeks for complete seasonality. The initial calibration takes place during the project with the bank's analytics team. Forecasts improve in the first weeks of operation as the model learns the network's specific patterns.
From a 30-minute conversation to the squad in production.
A 30-45 minute conversation to understand how Branch Capacity Planner would configure to the bank's branch network. How many branches, which management system, what depth of historical data is available.