Comparisons

Comparisontheir pages read 22 Sep 2026

Viktor vs attest_tag

Viktor is sold as a hire; attest_tag is source you can read, a binary you can run, a model you choose per thread, approver tiers with no self-approval, an audit log you can export from the free plan, and the model and cost printed under every reply — written for the engineer who will review the PR, not the operator who would hire.

Which model answers

Any endpoint, per thread

What a turn costs, and who sees it

Model and cost under every reply

Where it runs

Hosted, or one binary of yours

Who holds the credentials

The proxy. Never the model

Who may approve

Never your own request

What you can audit

Every call, exportable

Pick attest_tag when

  • A credential is given to the service, never the model: sealed with AES-256-GCM under a MASTER_KEY you hold on a self-host, injected by an in-process proxy one hop before the request leaves, and scrubbed out of every response before it reaches the model or Slack.
  • Any method other than GET, HEAD or OPTIONS is held for a card in the thread with Confirm, Cancel and 'Something else…'; pending writes expire after five minutes, admins pre-approve expected writes with plain-sentence allow rules checked strictly, and an MCP tool's write is decided from its name, not the server's read-only hint.
  • A fix job hands the change to a separate worker container that clones the branch, runs the tests, makes the change, runs them again, and opens a draft pull request; it pushes one branch and never merges.
  • A monthly budget for the workspace, another per channel, and a per-user hourly rate limit; the bot pauses at the ceiling and says so, and on OpenRouter deny-training routing is on by default.
  • A flat monthly fee by plan size, never per seat, from $49 for up to 10 users to $599 for up to 250, and a free plan that does not expire with approval tiers, audit export, budgets, MCP servers and two-factor sign-in included.
The ten questions, side by side

Their page, ours

What the hero says, and what the rest of the site does not.

A hero line is a promise about the product. The questions an engineer asks before rolling one out are usually answered somewhere else on the site — or not answered. These are the ones we looked for.

Viktortheir hero, verbatim

“Not a tool. A hire.”

An AI coworker you @mention in Slack and Microsoft Teams, with its own computer in the cloud, connections to 3,200+ tools, and a pause for approval in the thread before sensitive actions.

What their pages do not say

  • Which model ran a given reply
  • A cost printed under each reply in Slack
  • Whether you can run it yourself
  • Which roles may approve, and whether a requester may approve their own
  • An audit log on any plan below Enterprise
  • Source and licence

On the public pages listed under the table, as of 22 Sep 2026. An absence is a fact about a page, not about the product; if one of these has since been answered, we will change it.

attest_tagthe same questions, in writing

Side by side

Ten questions worth asking either way.

Our column is the same on every comparison, and each cell ends where the mechanism is shown. Theirs is Viktor’s own pages, quoted or closely paraphrased, as read 22 Sep 2026.

01Which model answers

attest_tag

Any OpenAI-compatible endpoint — OpenRouter, a vendor API, or a model you host. Ships on google/gemini-flash, with a heavy model routed to automatically for code and long threads, and a per-thread override.
Models and cost

Viktor

'Anthropic Claude, OpenAI, and Google (Gemini)', under 'a no-training, zero-retention agreement for Viktor traffic'; presets Claude Opus 5 (Smart), Sonnet 5 (Balanced) and Fable 5 (Ultra); a workspace default you set, and your own OpenRouter key. Which model ran a reply is not stated.
02What a turn costs, and who sees it

attest_tag

Metered per completion and printed under the reply beside the model that answered, with !usage for the month by channel. A monthly budget for the workspace, another per channel, and a per-user hourly rate limit — the bot pauses at the ceiling rather than reporting having crossed it.
Audit and budgets

Viktor

'Credits are model costs, passed through.' The usage page 'shows credit consumption per thread', and the model picker 'shows a cost estimate for each reasoning level of a model'. A cost under each reply in Slack is not stated.
03Where it runs

attest_tag

Hosted by us, or one MIT-licensed Go binary with the console embedded on your own infrastructure — Docker, Cloud Run, Fargate, Container Apps or Kubernetes. The same code either way. Where HIPAA applies, run it yourself so nothing leaves your network, and we sign a business associate agreement with you.
Self-hosted

Viktor

'Hosted on AWS us-east-1.' 'EU data residency is available on Enterprise contracts.' A self-hosted, private-cloud or on-premises option is not stated on their site.
04Who holds the credentials

attest_tag

The service, never the model. Sealed with AES-256-GCM at rest — under a key you hold, on a self-host — injected by a proxy at the network edge, and scrubbed back out of every response before it reaches the model or the thread.
Credentials, in the guardrails

Viktor

'A backend tool gateway injects your API keys and OAuth tokens at execution time. The AI model itself never sees them.' Stored in 'a secrets vault, AES-256 at rest', 'access-logged, and rotatable'. The homepage says a connected integration is shared with 'every team member'; a 2026-08-19 changelog entry says 'Connections are private to you by default', so their pages differ.
05Before it changes something

attest_tag

Any method other than GET, HEAD or OPTIONS is held for a card in the thread — Confirm, Cancel, or say what you actually wanted. Pending writes expire after five minutes. A fix job opens a draft pull request and never merges.
Human-in-the-loop writes

Viktor

'Before Viktor sends an email, pushes code, modifies an ad campaign, or charges a card, it shows you exactly what it wants to do and waits for approval.' 'Admins choose which action types require approval.' The changelog (2026-09-07) moves an 'Always approve this tool' option into the Approve button's menu.
06Who may approve

attest_tag

Writes that grant access leave the thread and go to an approver’s DM. Nobody approves their own request — enforced three times over, once in SQL — and a request routes to the least powerful tier that covers every call in it.
Access requests and tiers

Viktor

'Nothing runs until someone on your team reads it and approves'; 'Admins choose which action types require approval.' Approver roles or tiers, and whether a requester may approve their own action, are not stated.
07What you can audit

attest_tag

Every turn, tool call, proxied request and completion — with tokens and cost — in a console you run, exportable as CSV. Self-hosted, it is a table in your own database.
The audit trail

Viktor

Listed under Enterprise: 'SSO, RBAC, audit logs', and 'Enterprise workspaces can now review audit logs of workspace activity', browsed in Settings or pulled 'through the public audit-log API'. The security and pricing pages do not mention audit logs.
08Source and licence

attest_tag

MIT. The repository is the product: the hosted service runs the same binary you can clone, read and build.
The same binary, inside your network

Viktor

Not stated on their site.
09What it costs

attest_tag

A free plan that does not expire — $5 of model spend a month — then a flat monthly fee by plan size, $49 for up to 10 users to $599 for up to 250 users, with AI credit included. Never per seat, and every feature in every plan.
Pricing

Viktor

Workspace-based, not per seat. Team from $50 a month: 20,000 credits for $50, 300,000 for $750, 2,000,000 for $5,000; Enterprise is custom. '$100 in free credits', no card; 'No markup on model costs'; unused monthly plan credits roll over for one month.
10Where it lives

attest_tag

Slack and Microsoft Teams, from one console: channels, threads and DMs in Slack; channel reply chains, group chats and one-to-one chats in Teams. It joins the channels you invite it to, and there is no second place for the team to go.
Threads and streaming

Viktor

It 'lives in Slack and Microsoft Teams' — channels, group chats and direct messages — plus web and desktop apps, Chat at viktor.com 'outside Slack', and an email inbox address with allowed-senders settings.

“Not stated on their site.” means we read the pages below on 22 Sep 2026 and did not find it — not that the product lacks it. Ask them; a vendor that answers all ten in writing is a good sign about the vendor. If we have something wrong, tell us and we will fix the page.

Pages read: Viktor — Not a tool. A hire. (homepage)Viktor Pricing: Free to Start, Plans From $50/MonthViktor Security: SOC 2, GDPR, CCPA, CASA Tier 3Viktor Enterprise: AI Employee for Every TeamViktor Product: Does the Work. You Keep the Sign-off.Viktor Changelog: Product Updates and ReleasesViktor Integrations: 3,200+ Tools Connected

Questions

What people ask about Viktor and attest_tag.

Is attest_tag an open-source alternative to Viktor?
attest_tag is MIT-licensed: one Go binary with the admin console embedded, one database, and a public repository on GitHub; the hosted service runs the same code. Viktor's pages do not state a licence or say whether its source is available; GitHub appears there as a connection Viktor reads from. Both answer an @mention in a Slack thread. Viktor is sold as a hire, attest_tag as a teammate in Slack and Microsoft Teams.
Can I run attest_tag on my own servers?
Yes, and self-hosting costs nothing: Docker on a laptop or VM, Google Cloud Run, AWS Fargate, Azure Container Apps, or Kubernetes with Helm, with the console embedded in the binary and every feature in it, the audit log a table in your own database. Viktor's pages say 'Hosted on AWS us-east-1' and that 'EU data residency is available on Enterprise contracts'; a self-hosted or private-cloud option is not stated.
Which model does each run on?
attest_tag runs on any OpenAI-compatible endpoint, whether OpenRouter, a vendor API or a model you host, shipping on google/gemini-flash by default, settable per workspace, channel and thread, with a heavy model routed to automatically for code and long threads. Viktor's security page names 'Anthropic Claude, OpenAI, and Google (Gemini)', its enterprise page says 'You pick the model' for the workspace, and its changelog adds your own OpenRouter key; a per-reply note of which model ran is not stated.
What does a turn cost?
In attest_tag, every completion's tokens and cost are measured and printed under the reply in the thread, with !usage for the month by channel; a typical question on the default model costs about $0.002 and a fix job about $0.18. Viktor's pricing page says 'Credits are model costs, passed through', and its changelog says the usage page 'shows credit consumption per thread'; a cost printed under each reply in Slack is not stated.
Does Viktor hold a write for a human before it runs?
Viktor's security page says so: 'Before Viktor sends an email, pushes code, modifies an ad campaign, or charges a card, it shows you exactly what it wants to do and waits for approval', and 'Admins choose which action types require approval.' In attest_tag, any method other than GET, HEAD or OPTIONS is held for a card in the thread with Confirm, Cancel and 'Something else…'; pending writes expire after five minutes.
Can someone approve their own request?
Not in attest_tag. A write that grants access leaves the thread and goes to an approver as a DM with Approve and Deny; nobody approves their own request, enforced three times over, once in SQL. Viktor's pages say 'Nothing runs until someone on your team reads it and approves'; they do not say which roles may approve an action, or whether a requester may approve their own.

More comparisons

The same ten questions, asked of the others.

All comparisons

Try both

Run both in the same channel for a week.

We mean it. attest_tag answers in threads, so it will not collide with whatever else is in the channel, and a week of your own questions settles this faster than any table.

Half an hour to set up, one channel to start, and the free plan needs no card. See what it costs.