Everyone plays in one common Swiss tournament - the bot deals pairings and counts individual places by points and Buchholz as usual. The team score is an overlay: you split participants into teams (by department) in advance and, at the end, sum each team's players' points.
The team with the higher combined score wins the team standings. At the same time there is an individual champion - whoever scored the most on their own. Two storylines in one tournament.
Departments are rarely equal in headcount, and a plain sum favors a bigger team. Two fair ways to level it:
Choose the rule in advance and announce it - that heads off disputes at the end. Individual points for both methods come from the bot's table.
Technically it's an ordinary tournament in the bot: /create_tournament in @vibechessbot, /open_registration, /start_tournament and /next_round between rounds. Who is in which department you track in your own list; after /finish_tournament you take individual points from the table and sum them by team. The full mechanics are in the organizer guide. On the shop floor this format fits a factory championship.
The bot keeps the individual standings - each player's points and Buchholz. The team result is the sum of those points by your rule (total or average per department). The individual results come ready from the bot's table, so you don't count games by hand.
Use an average score (a team's total divided by its number of players) or fix the roster - the N best results from each department count. Announce the rule before the start.
In the common Swiss they can - the bot may pair colleagues from one department. That's fine: their points still go to the team. Large team events sometimes separate them, but a common tournament is simpler and fairer for a company.
Any number - two, five, ten. The bot runs a single individual tournament regardless of the number of teams, and you total by department at the end.
For a live tournament everyone plays in one place. If teams are in different cities, you can run separate stage tournaments and sum the points - message the developers via /support if you need that supported in the bot.
The bot is constantly improved based on real tournaments. If you need a feature that isn't there yet, message the developers right inside the bot with the /support command. Many features appeared exactly because organizers asked for them, and useful ideas get added quickly.
The base for a team - tournament at work. On the shop floor - tournament at a factory. The HR angle - chess team building. Full mechanics - organizer guide.