Company Agents vs Personal Agents

▶ Watch (00:44)

Viktor runs in Slack and has no web app. Every teammate interacts with it the same way they interact with each other. With 3,000 integrations available, one person from the company connects a tool and Viktor inherits those permissions. The whole team gets access without each member re-connecting individually.

That shared-context model is what separates a company agent from a personal one. Personal agents (like Claude’s personal setups) require each user to wire their own integrations, which means Viktor might receive 20 conflicting versions of the same connection. One canonical integration, one source of truth.

From Browser Automation to Slack-Native Agent

▶ Watch (02:08)

In 2023, before tool calling existed, the team built JCAI as a browser automation agent. It minified the DOM and picked the next click or keypress from the snapshot. Three to five steps worked at roughly 60% reliability per step. A five-step task came in around 7% end-to-end.

Claude Sonnet 3.5 changed the math. API tool calling returned results in milliseconds instead of waiting a minute for a browser step to fail. JCAI became Jace, an email agent that triggers on inbox events and handles refunds directly. Viktor launched in February this year.

What Breaks When an Agent Lives in Slack

▶ Watch (08:23)

Slack exposes more input modes than any web app: DMs, threads, emoji reactions, message edits, deletions. All of it must serialize into one linear agent context. When a user abandons a thread and sends a new DM, Viktor has to fetch the previous messages and merge them in explicitly.

Memory compounds the problem at team scale. Add 100 users and the same architecture fills up 100 times faster. Viktor also enforces channel-level access: context from an executive channel must never appear in a support thread or someone else’s DM.

Treating the Agent Like a Hire, Not a Tool

▶ Watch (15:44)

One US e-commerce brand connected a team member’s personal Gmail as Viktor’s first integration. The whole team started asking Viktor about that person’s private emails. The owner messaged Wiatrowski: “Viktor is leaking all of my data.” The response: if you hire a new employee, you don’t hand them your personal inbox.

That incident drove a scoped-integration feature. Integrations can now be team-wide or personal; a personal connection is only available in that user’s DMs. On proactivity, the same principle holds: Viktor earns access gradually with a few users before expanding to the full workspace.

Notable Quotes

Victor is not a tool. It’s a hire. Fryderyk Wiatrowski · ▶ 15:50

Victor is leaking all of my data. Fryderyk Wiatrowski · ▶ 16:24

it is unworthy of excellent men to lose hours like slaves in the labor of calculation Fryderyk Wiatrowski · ▶ 18:37

Key Takeaways

  • A company agent needs one integration connected once; every teammate inherits it automatically.
  • Browser automation hit 60% per-step reliability in 2023; API tool calling replaced it and made production viable.
  • Slack’s multi-modal inputs (threads, edits, DMs, emoji) must all serialize into one linear agent context.