planteater edited this page Oct 10, 2018 · 8 revisions

Most of your discussions on CodeStream will happen in the context of a channel. You and your teammates can join and leave channels as you see fit, and discussions live on as channel members come and go. Importantly, new channel members can see the entire message history, which is really important when it comes to discussions about code.

Slack channels or CodeStream channels?

If your team is connected to Slack (because you signed up for CodeStream using Slack), then the channels you’ll see in CodeStream are the channels from your Slack workspace. You can even create and join Slack channels from CodeStream, although for now most channel management will need to be done from Slack.

Of course, you’ll be able to read and post messages (including DMs) from within CodeStream, and importantly, you’ll be able to post messages about code. CodeStream will preserve the connection between the Slack threads and the code blocks so that your team can work from an annotated codebase, and build up a knowledge base over time.

If your team doesn’t use Slack, read on to learn about channels created on CodeStream.

CodeStream Channels

So how many channels should you create? One per team? One per repo? One per product? Your general philosophy should be to start small and only create additional channels when the need arises. For example, if you start seeing too much cross-talk in a channel you could consider creating additional, more granular, channels.

Public or private?

Public channels may be joined by any member of your team, whereas private channels are only accessible to people who have been explicitly added. Public channels make information more broadly accessible, and with CodeStream that means that more people will be able to leverage past discussions about code. Only use private channels when it’s absolutely necessary to restrict participation to a specific set of people.

When you join a channel, not only do you get access to it’s message stream, but you’ll also see the discussion markers appear in your source files for discussions about code that happened in the channel. For example, say one of your frontend developers is trying to familiarize himself with the API server code and he’s poking around in that repository. If he joins the #apiserver channel, he’ll see discussion markers throughout the source files in that repository. Reviewing those past discussions will help him getting a better understanding of that codebase.


The #general channel is a special all-hands public channel. Everyone on your team is required to be a member, which makes it a good place for news, announcements and discussions that apply to the entire team. Note that your team may have renamed this channel.

Joining a channel

The channel switcher lists all of your channels in the “Channels” section.

Channel Switcher

Hover over the “Channels” heading, and then click on the "list" icon that appears to the right to see if there are any public channels that you might want to join.

All Channels

Creating a channel

Hover over the “Channels” heading on the channel switcher, and then click on the "+" icon that appears to the right (or at the top-right of the All Channels page) to create a new channel.

New Channel

Channel names may not contain the following characters: ~#%&*{}+/:<>?|'".. Setting a purpose is especially important for public channels, as it will help people determine whether or not they should join.

Managing a channel

Look for the gear menu, either at the top-right of the channel’s stream or to the right of its entry on the channel switcher, for options to manage the channel.

Gear Menu

  • View Members - See a list of all channel members.
  • Add Members - Add a teammate to the channel.
  • Rename Channel - Change the channel’s name.
  • Mark Read - If there are unread messages in the channel you can quickly mark them all as read so that the channel name no longer appears in bold on the channels switcher.
  • Mute - There will be no indication of new messages for muted channels, and importantly, no email notifications will be sent. Note, though, that if you are mentioned in a muted channel you will still be notified. Learn more about CodeStream notifications.
  • Leave - You can leave a channel when you no longer want to participate in the discussion.

Note that you can also manage a channel via slash commands. In fact, a number of the menu options above will simply guide you to the appropriate slash command.

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.