bandicot
Bandicot Docs
Chapter IVTogether · Available now

Team channels

Start a team, invite people with a one-time link, post in end-to-end encrypted channels, and let your agent read them or draft posts you approve.

Available now. A current user-facing path exists within the stated scope.

What a team is

A team is a group of people whose Macs share end-to-end encrypted channels, with messages going directly from Mac to Mac.

The Macs need to reach each other on the network, directly or through an encrypted relay that sees only ciphertext. Everyone in the team reads every channel.

Start a team

Open Team, type a name in Start a team and press Start team; you coordinate it, and it starts with #general.

A team name is 1 to 80 characters. The person who starts the team is its owner and its coordinator: you invite people, remove them and add channels. Bandicot opens #general when the team exists.

Invite someone

Choose a role, press Create invite link, and send the link privately to one person.

A link works once, for seven days. Nobody has to accept the person: whoever opens the link joins as soon as their request reaches the coordinator's Mac, and then reads every channel. Send it only to the person it is for. Open invites show their role and the date they expire, with Revoke.

Only the coordinator's Mac creates invites, so the invite section shows only there. An invite cannot make an owner.

  1. On the team page, under the invite section, pick Member, Guest or Admin.
  2. Press Create invite link, then Copy, and send the link to one person, privately.
  3. Keep Bandicot open and signed in on your Mac until they have joined; your Mac is the one that admits them.

Join a team

Paste the invite link into Join a team and press Join team, or open the link and confirm.

A link opened from outside Bandicot shows Join {team}? with Join team and Not now. Your Mac sends the request to the coordinator's Mac, which admits you as soon as it arrives; nobody has to accept. Progress reads Sending your request to {name}, and for a few seconds Waiting for {name} to accept you. You can leave the screen; Bandicot keeps trying, and the sidebar lists the team with its status until you are in.

Cancel request stops it. If it ends with {name} did not accept this request, ask for a new invite and press Remove request.

If it goes wrong

Can't reach {name}'s Mac yet
Their Bandicot must be open, signed in and reachable. Two accounts on the same Mac cannot admit each other: one Mac signs in one account at a time.
The invite has expired.
Ask for a new link; each one lasts seven days.
The invite was already used.
Each link works once. Ask for a new one.
The invite was revoked.
The coordinator cancelled it. Ask for a new one.
Not an invite link.
Paste the whole link, which starts with bandicot://team/join.
This Mac is already in {team}.
Nothing to do: open the team from Team.
This Mac is already waiting to join that team.
Open the pending team in the sidebar, or press Cancel request first.
Too many requests are waiting for this team.
The coordinator's Mac holds a fixed number of open requests. Try again after it has admitted the others.

Roles and the coordinator

Members are Owner, Admin, Member or Guest, and one Admin or Owner Mac is the coordinator that admits new people.

Only an Owner or Admin changes channels. An invite cannot make an owner. To hand over admitting people, press Make coordinator beside an Admin or Owner, then Hand over; Keep cancels. The coordinator cannot remove itself.

The coordinator is not the captain: the captain is the Mac your own devices follow.

If it goes wrong

Hand the role to an Admin or an Owner.
Only an Admin or Owner can become the coordinator. Change their role first, or pick another person.
The coordinator cannot remove itself.
Hand the role to someone else with Make coordinator, then ask them to remove you.
The last owner cannot be removed or demoted.
Make another person an Owner first.

See and remove members

The team page lists every member with a role tag, and on the coordinator's Mac Remove takes one out after you confirm.

Each row gives the name, you on your own, and direct or via relay for how your Mac reaches theirs; hover shows the round trip time and says that a relay sees only ciphertext. The tag is the member's role, or Coordinator.

Press Remove, then Confirm or Keep. A removed member sees a banner on their side and can no longer post. Removing is for the coordinator's Mac only.

Channels

Owners and Admins add, rename and archive channels; #general always stays.

Names use lower-case letters, digits and hyphens, up to 40 characters, and a team holds up to two hundred channels. In New channel Bandicot turns what you type into a name and says Will be #name., or #name already exists.. Press Add channel, or use the Add channel row under the team in the sidebar. Rename and Archive (then Confirm or Keep) sit beside each channel. An archived channel carries the tag Archived, stays readable, and nobody can post in it.

If it goes wrong

Only an Owner or Admin changes channels.
Ask an Owner or Admin to add, rename or archive it.
This team has as many channels as it can hold.
Archive a channel you no longer use.
#general cannot be archived.
Nothing to do: #general stays in every team.

Post and read receipts

Type in Message #name and press Enter; the label under your message says where it has reached.

Shift+Enter adds a line. Your draft is kept per channel, and a retry never sends a second copy. A message holds up to sixteen kilobytes and cannot be empty. While it goes out the note under the box reads Sending….

An empty channel says No messages in #name yet. When messages arrive out of order, a line reads that some are waiting for earlier ones to arrive, and they appear once those do. An archived channel or a team you were removed from has no box.

What the label under your own message means
LabelMeaning
Delivered to X of YThat many members' Macs have it.
Stored on this MacIt goes out as soon as a teammate's Mac is reachable.
In the mailbox until their Mac is onlineSealed to their Mac; the site holds only ciphertext and forgets it once read.
SavedThere are no other members yet.

If it goes wrong

Message is too long. or Empty message.
Shorten the message, or type something before you send.

Let your agent read channels

Turn on Read channels and Draft posts for me to review in Your agent and team channels; the agent can then read and propose, but never post.

The card sits on the Team page and covers every team on this Mac. Every message reaches the agent marked as untrusted, so text in a channel cannot instruct it. A draft appears under Drafts from your agent with Post and Discard. Nothing is posted unless you post it. The agent cannot touch your own Macs' group or archived channels.

The agent has one team tool with three actions: channels lists the teams and channels it may see, read returns the newest fifty messages of one channel (at most twenty-four kilobytes), and propose saves a draft of up to sixteen kilobytes. It cannot change a grant, post, invite or remove anyone. Team has to be open on this Mac. If a team changes while a draft waits, the card says how many drafts were dropped.

If it goes wrong

The agent says reading team channels is off.
Turn on Read channels on the Team page.
The agent says it may not draft posts here.
Turn on Draft posts for me to review on the Team page.
Team is not open on this Mac or is busy. Ask the person to open Team, then try again.
Open Team on this Mac once, wait for it to load, and ask the agent again.

Removed from a team

Messages you already had stay readable, and you can no longer post.

A banner reads You were removed from {team}, and the sidebar tags the team Removed. Then the team page offers Remove from this Mac; confirm with Remove {team} or press Keep. That deletes this Mac's copy of the team and its messages. Other members keep theirs. You can join again with a new invite.

Export a team's history

Press Export history on the team page to save every message this Mac holds for the team to a file only you can read.

Bandicot asks where to save and proposes a name such as Studio-history.jsonl. The file holds one message per line as plain text, so anyone with the file can read it. It is written with permissions for you alone and never over an existing file. When it is done Bandicot says how many messages it saved. You can export after you were removed from a team too.

Messages you may see

Most Team errors mean the Team helper is not running, you are not signed in, or the Keychain is locked.

Each message below is the exact text Team shows, with what to do about it. When Team cannot load, the page shows the card Team is not available with the reason and Try again. The Team helper also reports in Activity: Team channels restarting after a crash, Team channels stopped: ... or Team channels could not start: ..., with a Restart button on the last two. If the restart does not go through, Activity says so.

If it goes wrong

Sign in to use Team.
Sign in from the app's account screen, then open Team again.
The Keychain is locked or refused; Team channels start once it opens.
Unlock your Mac's login Keychain; Team starts by itself.
Team channels stopped; try again. or Team channels did not answer in time.
Try again. If it repeats, press Restart beside the Team channels line in Activity, or quit and reopen Bandicot so the Team helper restarts.
Team channels stopped: two crashes in two minutes
The helper stopped after crashing twice. Press Restart in Activity; if it stops again, quit and reopen Bandicot.
Team is open in another Bandicot window.
Close Team in the other Bandicot app, for example Bandicot Beta.
Bandicot did not answer. Your draft is kept; try again.
Send again; the draft is still there and will not be sent twice.
You are no longer a member of this team. or No such team on this Mac.
The team was removed from this Mac. Join again with a new invite.
Saved state cannot be opened, followed by a reason and this device must start over and rejoin its teams
The key that seals Team's saved copy on this Mac was lost or the copy is damaged. Join your teams again with new invites, and pair your Macs again.

Questions

Are Team channels end-to-end encrypted?

Yes. Messages go Mac to Mac, and anything that waits at bandicot.app or passes a relay is ciphertext the site cannot read.

Can my agent post in a channel?

No. It can draft a post when you allow it, and the draft is posted only if you press Post.

Does someone have to accept a person who opens my invite link?

No. The link is the permission. The person joins as soon as their request reaches the coordinator's Mac, so send each link to one person and revoke any you did not use.