How to set up Viktor, the AI employee in Slack: install him in one click, connect your tools, give your team access, then hand him real work.
Viktor is an AI employee who lives inside Slack or Microsoft Teams, where anyone on your team can message him and hand him work.
Every request from my video team used to come through me. When they sent feedback in Slack, I'd paste it into my own AI chat and copy the result back to them.
I've spent eight years building automations that have generated over $25 million for my clients, and I was still the person carrying messages between my team and a chat window. So I hired Viktor, and I didn't have to manage any hosting to do it.
This is the full guide to setting him up, from the one-click install to the first jobs I handed him. You can watch me do every step in the video.
Viktor sponsored this guide and the video. Everything in both is me running him on real work in my business.
In this guide you'll learn:
If you want to set him up while you read, here's my link.
Use code TOMCRAWSHAW100 for $100 of his work free.
Before I let him near my team, I set him the same bar I'd set any new hire.
Test one is that he finishes a job I'd otherwise have to do myself, with a result I can check and use. Most AI agents fail right there, because what they hand back isn't usable.
Test two is that I teach him how my team works once, instead of repeating the same instructions every time.
Test three is that my team uses him directly, without every request coming through me.
That last test is what makes him different from Claude Code for me. Claude Code is where I sit down and drive the work myself, and Viktor is where my team hands work off in the channel they already use all day.
Part 1 below sets him up to pass all three. Part 2 shows the three jobs I gave him and how each one went.
Every step below is shown in Slack, because that's where my business runs. Viktor works in Microsoft Teams too.
Setup starts with a free account at viktor.com. You log in with Slack, approve the install in one click, and choose which channels to invite him to.
He joins those channels quietly. He doesn't post anything in them, and he only replies when someone mentions him, which is how your team will reach him later.
Your own chat with him sits under Agents and Apps in the Slack sidebar. By the time I opened mine, he'd already read my existing channels and sent me the threads and open items waiting on my reply.
Once the install is done, you land on his dashboard. It has a button that opens Viktor in Slack, so you can jump straight to that chat from there.
A quick tour now saves you hunting later, because the next few steps send you back here.
Settings holds two more things worth knowing. You can see which model he's using, and on smart mode he picks one depending on the task. Behavior is where your workspace instructions live, which Step 6 covers.
Anything you can do in the dashboard you can also do by messaging him in Slack. I switch between the two, so use whichever you prefer.
Viktor does his work through the tools you connect, and he connects to over 3,200 of them.
The fastest way to connect one is to ask him. When I asked whether Mercury was connected, he checked and told me Google Docs and Zoom were live, Mercury wasn't set up yet, and I could connect it right there in Slack.
The other way is the Integrations tab in the dashboard, which walks you through the same screens.
Either way, you make one decision per tool. The whole workspace can use it through Viktor, or only specific people can. I kept mine private while I tested, and Step 5 covers when to open them up.
Connections come in two kinds. Some take an API key that you generate inside the tool and paste in, like Stripe and Mercury. Others, like PostHog, Meta Ads and YouTube, are a sign-in where you approve the permissions and you're done.
After a connection he may ask a few onboarding questions, like your role and your company's sector, and offer to connect more tools. You can skip that and connect the rest later.
This is a good first message once he's installed:
Which of my tools are you connected to right now? I want to hand you [the first job, e.g. a weekly revenue report]. Tell me which tools you need for that job, and which ones I still have to connect.Mercury
Mercury takes one extra step. You can't generate an API token from your account settings, you have to email their team for one.
That's why I used a Mercury sandbox account for the demo, which also kept my real figures out of it. In the sandbox you create the token under Settings, then Tokens.
I connected it with a read-and-write key first, then swapped in a read-only key, since a report only needs to read. When he asked me to run a test request in my terminal, I saw it was pointing at Mercury's live API address, not the sandbox one. I told him, and he fixed his setup and started pulling the data.
Stripe
Stripe follows the same pattern. I generated an API key in my Stripe sandbox with the permissions I wanted him to have, pasted it in and hit connect.
Meta Ads
Meta Ads is a few clicks. You pick the business portfolio, the page, the pixel (that one's optional) and the ad account, then fill in your country, your website and your vertical.
The last screen lists the permissions he's getting, and you confirm them.
PostHog and YouTube
PostHog is a sign-in. I logged in, approved the permissions and invited him to one channel.
For YouTube, connect both YouTube Studio analytics and YouTube itself. Each one is a sign-in with the Google account your channel sits on, where you select the permissions and continue.
Viktor asks before he acts, the same way you'd expect from anyone else on your team.
The first time he wants to use a tool, he asks permission. You can approve it once, always approve that tool, or reject it. He batches his tasks into one request, so you're not clicking approve on every small step.
I set PostHog to always approve, because he only reads from it. My ads and my team's channels I left asking every time.
Changes get a stricter check. When I asked him to change my ads, and later to post into my video team's channel, he showed me an approval panel both times with exactly what he was about to do. Nothing went out until I approved it.
Part 2 shows both of those panels, including the one I rejected.
This step is what lets anyone on your team message him, not just you.
In the dashboard you can add your team as members. The Permissions tab shows who's in the workspace, what's blocked and your Slack Connect channels, and from there you can add Viktor to more of your channels.
Anyone in those channels reaches him by mentioning him.
Then go back to your integrations. For any tool your team needs him to use, switch it from private to the whole workspace, and leave the rest private.
Once that's done, your team can set up scheduled tasks, build reports and create pages with him, the same as you can.
Connected tools tell Viktor what he can reach. Context tells him what your business actually does.
Start by asking him what kind of work happens in your Slack. He read my channels and summed my workspace up as a video pipeline HQ, which is accurate, since most of what runs there is my video team.
Then give him more. I keep all my business information in Claude Code, so I exported a report of my business model and offers from there and dropped the file into the chat with this message.
Prompt 1 of 4: context
Here's a report on my business: [attach file]. It covers [what you sell, who you sell to, and how your team is set up].
Read it, then tell me where you can help my team first. Before you start any work, ask me any questions you need answered to get the context right.He came back with the places he could help fastest and a few questions to confirm. Answer those in the thread before you give him real work. I answered mine with a voice note, because that's how I work.
Last, go to Settings, then Behavior, and add workspace instructions. This is where your tone and business context live, and it looks a lot like a CLAUDE.md file: a short list of rules, do's and don'ts.
Context covers what your business is. Skills cover how you want a job done, and they're how he passes test two.
There are two ways to give him one. The first is uploading a skill you already have, like one of your Claude Code skills. I had Claude Code bundle up my content-creation skill, dragged all 12 files into the Skills tab, then asked him in Slack to draft an X post with it.
He worked through the skill the way I would. He came back with a table of scored hooks, I replied with the number of the one I liked, and he drafted the post from it.
The second way is a screen recording, and it's where I'd start if your processes aren't written down anywhere. I recorded myself walking through how I decide which video idea is worth making, then dropped the file into Slack with a message like this:
This is a recording of how I [the process, e.g. decide which video idea to make next]. Watch it, then turn it into a skill with the steps and the tools it needs. Ask me about anything you can't see on screen.He transcribed the audio and stepped through what I did on screen, then wrote the process up as a skill with its steps and tools. When I pointed out a step he'd missed, he wrote the correction in as a rule.
So the next time I ask for video ideas, he follows my process instead of guessing at it. SOPs and training videos your team already has work the same way.
If you'd rather not start from scratch, the Marketplace has skill bundles other people have built. The home screen also lists recommended automations you can install straight into your workspace, then connect the tools each one needs.
A report you have to remember to ask for is still a job on your list, and scheduled tasks take it off.
You set one up by asking in plain words. While he was going through my PostHog data, I sent him a voice note asking for a weekly digest of the metrics on my funnels. He scheduled it for Monday at 9am and listed what it would cover.
The Tasks tab in the dashboard shows every scheduled task, what each run includes and its previous runs.
You also decide where each report lands. He can post it in Slack, email it to you when it runs, or publish it as a page. When I asked where my finance report would live, he suggested storing the full history in my Google Drive folder, since that was already connected.
Pages are reports hosted inside Viktor, so there's nothing to push to Vercel. Each page starts locked, and you choose whether it's open to your workspace or public before you share the link.
With the setup done, I gave him three jobs I'd otherwise do myself. That's test one, and each job below has the prompt I used, cleaned up so you can paste it.
This was a check I did by hand across two dashboards. I ran it on sandbox accounts, so none of my real figures went anywhere near the demo.
With Stripe and Mercury connected, I sent him a voice note. This is a cleaned-up version of it.
Prompt 2 of 4: finance
You have access to my Stripe and Mercury data. Pull the financial figures for the last 30 days. Check whether Stripe payouts match what has landed in Mercury, and flag any fees, refunds or payouts that look wrong.
Put it in a report, then put it on a schedule:
- Every Friday at 5pm, a report on the last 7 days
- On the 1st of every month, a report on the last 30 days, with a 90-day view
Email each report to [your email] when it's generated.He ran the Friday job end to end to prove the report came out right, then showed me the weekly version. It was clean, and I didn't have to open a single dashboard to read it.
Now the report comes to me every Friday.
I'd been checking my ads in Meta and my funnel in PostHog separately. With both connected, I sent him this.
Prompt 3 of 4: ads
You have access to my Meta Ads account and my PostHog account. Give me a report on the last 30 days, including cost per click and revenue. Pull clicks, traffic and conversions from PostHog.
Tell me what's going wrong and what to fix, in order, with your reasoning for each change. Flag anywhere Meta's numbers and PostHog's numbers don't match.
Build it as a shareable Viktor Pages report with charts, run it every Monday morning, and email it to [your email].He came back with a report hosted in Viktor Pages. It broke down my ad sets and individual ads, showed where Meta and PostHog disagreed, and listed the fixes in order with the reasoning behind each.
Then I asked him to make the changes. Viktor can edit campaigns, ad sets and ads, but every change goes through an approval panel before it reaches Meta.
The panel showed me which ad account, which campaign and exactly what he was about to do. I rejected it because the campaign was already switched off, and that's the level of control I want over my ad account.
I research ideas for the 4 to 6 videos I make each month. With YouTube Studio and YouTube connected, I sent him this.
Prompt 4 of 4: video research
You have my YouTube Studio data. Brainstorm 5 video ideas for my channel, and tell me why each one fits my audience and why it could take off.
For each idea, give me a title, an opening hook, the on-screen format, what viewers will learn, and how to demo it. Find reference videos that prove the format works, in [your niche] or outside it, and compare each reference video's views with that channel's other videos.He worked out the patterns behind my top performers and ranked five ideas from strongest to weakest. Two of them were built on title shapes that have already worked on my channel.
I liked the top idea, so I asked him to post it to my video team's channel. He gave me approve buttons first, and once I clicked, it went out marked as posting on behalf of Tom, with the whole idea laid out for the team.
That's test three passed. My video team has the idea in their channel, and I didn't write a brief or forward anything.
This is also the job the Step 7 screen recording is for. The next time I ask for ideas, he runs my process from that recording.
Across those three jobs, this is how my week changed.
Reporting
Before >> I checked each dashboard by hand
After >> reports land in Slack and my inbox on a schedule
Video research
Before >> scrolling YouTube, pulling transcripts into Claude Code,
working out why each video worked
After >> a ranked shortlist posted to my video teamI didn't write a line of code for any of it, and every change to my ad account still waits for my approval.
Once the setup is done, look at the conversations your team keeps repeating and the reports someone pulls by hand every week. Each one is a job you can hand him the same way: connect the tool it needs, then approve what he proposes.
Viktor is an AI employee who lives in Slack or Microsoft Teams. Anyone on your team can message him, and he does the work through the tools you connect, like Stripe, Meta Ads and YouTube.
No. I installed him from my Slack login in one click, connected my tools from the chat and the dashboard, and set up every job in this guide from Slack without touching any code.
He asks permission before he uses a tool, and you choose whether to approve once, always approve that tool, or reject. When I asked him to change my ads or post to my team's channel, he showed me an approval panel first and only went ahead once I'd clicked approve.
Yes. Add your team as members, add Viktor to the channels they work in, and give the workspace access to the tools they need him to use. Then anyone can mention him in those channels to hand him work.
Yes. You can upload a skill you already have, or send him a screen recording, SOP or training video and ask him to turn it into a skill he follows from then on.
Viktor connects to over 3,200 tools. Some connect with an API key, like Stripe and Mercury, and others with a sign-in, like PostHog, Meta Ads and YouTube.
Use my link below with the code TOMCRAWSHAW100 to get $100 of his work free, no credit card, running in minutes.
Viktor passed all three of my tests, and he's now part of how my team works every week. If your team already lives in Slack or Microsoft Teams, this is the setup I'd copy.
You can watch me set up Viktor and run all three jobs in the full video, with the ads report and the approval panel live on screen.
Use code TOMCRAWSHAW100 for $100 of his work free, no credit card, running in minutes.
Five interactive lessons. Install Claude Code, build your first automation, and deploy it live on the internet — all in under an hour. Free, no coding required.
Grab the Blueprint →