# Slack Operating Runbook — Cold Bore Ballistics, LLC

**Classification:** Confidential
**Last updated:** 2026-06-06
**Companion docs:** `Slack_Architecture_Reference.md`, `Slack_Rebuild_Guide.md`

This document covers day-to-day Slack administration. Assume the reader has never administered a Slack workspace. Every step is written out in full.

---

## Accessing Admin Settings

1. Open Slack (desktop app or browser) and sign in to the `coldboreballisticsllc` workspace using your `@coldboreballisticsllc.com` email.
2. Click the workspace name **Cold Bore Ballistics LLC** in the top-left corner of the sidebar.
3. Select **Settings & administration** → **Workspace settings**.
4. A browser tab opens with the Slack admin console. All administrative operations are performed here or from within individual channels.

---

## Adding a New Repository Channel

When a new repository is added to the `ColdBoreBallistics` GitHub organization, create a matching Slack channel and wire up GitHub notifications.

### Step 1 — Determine the channel name

Apply the naming convention from `Slack_Architecture_Reference.md`:
- All lowercase, hyphens only
- Dots in repo names convert to hyphens: `www.scope-dope.com` → `#www-scope-dope-com`
- If the repo name maps cleanly to an existing pattern, use it directly (e.g., `new-repo-name`)
- If the repo name is ambiguous, prefix with `repo-` (e.g., `#repo-feedback-service`)

### Step 2 — Create the channel

**Via Slack UI:**
1. In Slack, click the **+** icon next to **Channels** in the left sidebar.
2. Select **Create a channel**.
3. Enter the channel name (no spaces, no dots — hyphens only).
4. Set visibility to **Public** unless the repository is sensitive.
5. Click **Create channel**.

**Via Claude Code (if MCP Slack integration is active):**
Ask Claude Code to create the channel by name. It will return the channel ID.

### Step 3 — Set the channel description

1. In the new channel, click the channel name in the header at the top.
2. Click **Edit** next to the description field.
3. Enter: `GitHub notifications and discussion for [repo-name] — [one-line repo description].`
4. Click **Save**.

### Step 4 — Subscribe to GitHub notifications

1. Open the new channel in Slack.
2. Type and send the appropriate command:

   **All repos except `dope-format`:**
   ```
   /github subscribe ColdBoreBallistics/<repo-name> pulls reviews commits releases deployments workflows
   ```

   **`dope-format` only (public repo with community issues):**
   ```
   /github subscribe ColdBoreBallistics/dope-format pulls reviews commits releases deployments workflows issues
   ```

3. The GitHub app will respond with a confirmation message in the channel.
4. Do **not** add the subscription to `#github-activity` — the catch-all model is deprecated.

### Step 5 — Update the Architecture Reference

Add a row to the channel directory table and the subscription matrix in `Slack_Architecture_Reference.md`.

---

## Renaming a Channel

Channel renames are permanent. Old names redirect for approximately 30 days in Slack, but all permalink URLs will eventually break. Rename carefully.

1. Open the channel in Slack.
2. Click the channel name in the conversation header at the top.
3. Click the **Edit** (pencil) icon next to the channel name.
4. Enter the new name and click **Save**.
5. Update `Slack_Architecture_Reference.md` immediately with the new name.
6. If the channel has an active GitHub app subscription, verify it still works by checking `/github subscribe list` in the channel — rename does not affect subscriptions.

---

## Setting or Updating a Channel Description

1. Open the channel.
2. Click the channel name in the conversation header.
3. Click **Edit** next to the **Description** field.
4. Enter or update the description. Use the format: `[Purpose]. [What belongs here]. [What doesn't / where to go instead.]`
5. Click **Save**.

---

## Removing a GitHub Subscription

To remove a repo's GitHub notifications from a channel:

```
/github unsubscribe ColdBoreBallistics/<repo-name>
```

To remove a specific event type only:
```
/github unsubscribe ColdBoreBallistics/<repo-name> <event>
```

Valid events: `pulls`, `reviews`, `commits`, `releases`, `deployments`, `workflows`, `issues`.

---

## Inviting a New Team Member

1. In the admin console, go to **Members** → **Invite people**.
2. Enter the person's `@coldboreballisticsllc.com` email address.
3. Assign role: **Member** for standard access, **Admin** for administrative access. Grant **Owner** only when strictly necessary.
4. Click **Send invitation**.

New members automatically join all public channels when they accept.

---

## Removing a Team Member

1. In the admin console, go to **Members**.
2. Find the member and click the three-dot (⋯) menu next to their name.
3. Select **Deactivate account**.
4. Deactivated accounts cannot sign in. Message history is preserved.

Do not delete accounts — deactivate only. Deletion is permanent and removes the user from all message history.

---

## Archiving a Channel

Archive (do not delete) channels that are no longer active. Archiving hides the channel from the sidebar and prevents new messages while preserving all history.

1. Open the channel.
2. Click the channel name in the header.
3. Click **Settings** → **Archive channel**.
4. Confirm the archive.

To unarchive: search for the channel, open it, and click **Unarchive channel** in the header.

---

## Pinning a Message

1. Hover over the message.
2. Click the three-dot (⋯) menu that appears.
3. Select **Pin to channel**.

Pinned messages are visible to all channel members by clicking the pushpin icon in the channel header. The data-classification reminder in `#all-cold-bore-ballistics-llc` must remain pinned at all times.

---

## Changing Workspace Plan

The workspace is currently on Business Standard. If the team grows or compliance requirements change, evaluate upgrade to Business+ or Enterprise Grid. See `Slack_Acquisition_Brief.md` for the cost and capability comparison.

Plan changes are made at: Admin console → **Settings** → **Plan**.

---

## Document Control

| Field | Value |
|---|---|
| **Document owner** | `jschwefel@coldboreballisticsllc.com` |
| **Classification** | Confidential (03_-_Confidential/) |
| **Location** | `OneDrive/CBB_Corporate/03_-_Confidential/Infrastructure/Slack/Slack_Operating_Runbook.md` |
| **Cross-references** | `Slack_Architecture_Reference.md`; `Slack_Rebuild_Guide.md`; `Slack_Acquisition_Brief.md` |
| **Created** | 2026-06-06 |
| **Last updated** | 2026-06-06 |
| **Next full review due** | 2027-06-06 |

---

## Revision Control Block

| Rev | Date | Changed By | Reviewed By | Approved By | Summary |
|-----|------|------------|-------------|-------------|---------|
| 0.9 | 2026-06-06 | jschwefel | — | — | Initial release |
