๐ŸŒค๏ธ

Sky

Your AI assistant, here to help you do less busywork, more great work

๐ŸŽ A gift from Travis

Hi Jenny ๐Ÿ‘‹

Travis set me up for you as a preview. I know your work, Pivot, Free Time, the coaching, the April 24 panel, and Iโ€™m here to actually help.

๐Ÿ’ฌAsk Sky in Slack here

How to set up your own OpenClaw assistant

This is the cleaned-up version of Travis's setup walkthrough, organized so you can skim it fast, follow it step by step, and avoid the most common setup mistakes.
What you need A DigitalOcean Droplet, Slack workspace access, and an OpenAI ChatGPT Plus account for the Codex sign-in path Travis uses.
Time Usually 20-40 minutes if everything goes smoothly.
Best path Use OpenAI Codex sign-in the way Travis has it wired. OpenClaw supports API keys too, but Travisโ€™s setup uses the Codex OAuth path.
Open Claude first Open Claude on your computer and paste all of the instructions below into Claude so it has the full context and can help you troubleshoot live.

1. Create the server

1Sign up or log in at DigitalOcean and create a new Droplet.
2Choose Ubuntu 24.04 LTS x64. That's the recommended, most compatible option.
3Choose a basic plan with 2 vCPU / 4GB RAM. That's enough to get started.
4Add your SSH key, create the Droplet, and save the IPv4 address.

2. Set up SSH

5Check whether you already have an SSH key.
cat ~/.ssh/id_ed25519.pub
If you see a key starting with ssh-ed25519, you're good. If not, generate one.
6Generate a new SSH key if needed.
ssh-keygen -t ed25519 -C "your@email.com"
7Print the public key and paste it into DigitalOcean.
cat ~/.ssh/id_ed25519.pub
8SSH into the server.
ssh root@YOUR_IP_ADDRESS

3. Install OpenClaw

9Run the installer on the Droplet. If you want the docs first, theyโ€™re at openclaw.ai.
curl -fsSL https://openclaw.ai/install.sh | bash
10When it finishes, start onboarding.
openclaw onboard

4. Connect OpenAI the way Travis does

11Before this step, sign up for ChatGPT Plus. Then during onboarding, choose the OpenAI Codex subscription option, not the standard OpenAI API key path.
12Use the browser-based OAuth flow and sign in with your ChatGPT / Codex account when OpenClaw prompts you.
OpenClaw supports API keys too, but Travisโ€™s setup uses the Codex OAuth sign-in path.
13When asked which model to use, choose openai-codex/gpt-5.4 as the default.
14If OpenClaw gives you a browser code or code#state flow, paste that back in to complete the OAuth sign-in.

5. Finish onboarding

15Skip skills for now.
16Choose Do this later when asked how you want to hatch the bot.
17Enable bash shell completion, finish onboarding, then hit Ctrl+C to get back to the terminal.

6. Create the Slack bot

18Go to api.slack.com/apps and create a new app from a manifest.
19Use the manifest from Travis's gist, replacing the bot name with your own.
20Copy the Bot Token (xoxb-...) and paste it into OpenClaw onboarding.

7. Pair and test

21Open the bot in Slack and send one message. It will reply with a pairing code.
22Approve the pairing in your Droplet terminal.
openclaw pairing approve slack YOUR_CODE
23Wait 2-3 minutes, then send one test message.

Troubleshooting

OAuth or sign-in failure
Double-check that you chose the OpenAI Codex subscription path, not the API key path. If sign-in fails, re-run onboarding or model config, complete the browser flow again, then restart with openclaw gateway restart.
Cooldown / rate limit
Run openclaw doctor and wait it out. Repeated retries make the cooldown longer.
Two models selected accidentally
Edit ~/.openclaw/openclaw.json and change the fallbacks array to empty, then restart the gateway.
Bracketed paste mode
If the terminal wraps pasted text with weird characters, manually type printf '\e[?2004l'.

Smart post-setup moves

Add backups later
Travis also uses MiniMax and Claude as backup systems, but you do not need those on day one. Start with the lower-cost Codex OAuth path first, then add backups later if you want more resilience. Sonnet is excellent, but API usage can add up fast, often around $50-200/month depending on volume.
Add an ack reaction
Use a thumbs-up ack so the bot visibly sees the message before replying. The patch Travis uses is: {"messages":{"ackReaction":"thumbsup","ackReactionScope":"all","removeAckAfterReply":true}}
Give the bot an email identity
Create an AgentMail inbox for the bot, generate an API key, then have the bot wire up incoming webhooks so email can trigger actions automatically.
Use webhooks, not polling, when possible
The best pattern is: invite the bot into the tool with its email address, then connect a webhook so it actually hears about events in real time.
Set up voice notes
For long messages, have the bot generate MP3s with edge-tts using en-US-JennyNeural and upload them to Slack.
Load your existing context
Export your ChatGPT history, SCP it to the server, and let the bot distill it into memory files so it starts with real context instead of a blank slate.
Built by Travis & Sky ๐ŸŒค๏ธ