Setup Guide

Connect a Slack Channel

Turn any Slack channel into a live AI workspace.

Before you start

  • GhostyBot Bridge installed on your Mac (download)
  • Your tenant API key entered in the bridge on first launch
  • An active Claude subscription (Pro, Max, Team, or Enterprise) with Claude Code access
  • Claude Code CLI installed and signed in on your Mac

How to connect a channel

1

Add the bot to your Slack channel

Type /invite @GhostyBot in the channel where you want AI assistance. The bot will post a welcome message with options.

2

Open the GhostyBot app

Click "Open GhostyBot" in the welcome message, or click the ghost icon in your Mac menu bar.

3

Choose Connect Channel

In the menu bar popup, click "Connect Channel" and select your Slack channel from the dropdown.

4

Pick what kind of session

Tech (existing repo) opens a folder picker for your code. Other types (Marketing, Sales, Research, Social, Chat) auto-create a workspace and need no setup.

5

Send a message

Once connected, message in the Slack channel from any device — phone, tablet, desktop. The AI responds in Slack.

Choosing a session type

Tech (existing repo)

Pick a project folder on your Mac. AI works on your codebase with full file access.

Tech (new repo)

Scaffold a new project from scratch. AI sets up the codebase.

Ads & Marketing

Campaign management, keyword tracking, ad copy, performance analysis.

Sales & Biz Dev

Pipeline tracking, outreach, lead qualification, deal analysis.

Research & Writing

Research synthesis, report writing, analysis, content production.

Social Media

Content creation, scheduling, social monitoring, engagement.

General Chat

A general-purpose assistant for any task without a specific domain.

Per-channel controls

Hover any connected session in the menu bar to get inline controls for that channel.

Mention-only mode

Toggle so Ghosty only responds when @-mentioned in the channel. Use this in busy channels where you don't want every message to trigger a response.

Pause / Resume

Stop a session without deleting it. Resume later from the same place. Session state and history are preserved.

Keep-alive

If the underlying Claude Code process crashes, the bridge auto-restarts it. The green dot in the menu bar tells you realtime transport is connected.

Disconnect

Remove the channel ↔ session mapping entirely. The channel stays, but Ghosty will no longer read or respond in it until reconnected.

Admin approval for destructive actions

Every tool call routes through a Slack Approve/Deny prompt. Destructive patterns are restricted to workspace admins — non-admins see a rejection message with the list of users who can approve.

Patterns that require admin approval

  • git push / git push --force to main or master
  • rm -rf against project roots
  • DROP TABLE, TRUNCATE in SQL
  • vercel --prod, firebase deploy
  • npm publish, gh repo delete

Every approval, rejection, and session lifecycle event is written to the tenant audit log. Read the security model.

Troubleshooting

The Open GhostyBot button doesn't do anything

Make sure you've installed the GhostyBot menu bar app. If installed, your browser may be blocking the ghosty:// URL — try clicking the ghost icon in your menu bar directly.

The channel doesn't show up in the dropdown

GhostyBot only shows channels where the bot is a member. Make sure you've invited @GhostyBot to the channel. If you recently disconnected it, refresh the dropdown.

My session isn't responding to messages

Click the menu bar ghost icon to check session status. Yellow or red indicators mean the session needs attention. Try clicking 'Restart All Sessions' from the menu.

I selected the wrong session type

Disconnect the session from the menu bar (hover over it and click the X), then reconnect it with the correct type.