Comparisons

Comparisontheir pages read 22 Sep 2026

Moveworks vs attest_tag

Moveworks is an assistant for an entire workforce, reached through chat, portals and intranets, hosted by the vendor and priced by quote; it holds access requests for named approvers and exports a SIEM log over SFTP. The difference is what attest_tag prints, holds and lets you run: the model and cost printed under every reply, a model you can change per thread, every write held for a Confirm by default, tiers where nobody approves their own request, an audit log you can export on the free plan, and an MIT binary on your own infrastructure.

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 at rest, injected by an in-process proxy one hop before the request leaves, and scrubbed from every response before it reaches the model or Slack.
  • The model is yours to choose, any OpenAI-compatible endpoint set per workspace, per channel or per thread with !model, with code and long threads routed automatically to a heavier model.
  • 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, rather than reporting having crossed it.
  • A fix job hands the change to a separate worker container that runs the tests before and after, opens a draft pull request, and never merges.
  • Tool output is wrapped as data and never treated as instructions; web fetches refuse private, loopback and link-local hosts; before reading a non-public conversation the bot checks the asker's own membership.
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.

Moveworkstheir hero, verbatim

“AI that gets work done.”

Moveworks is an AI Assistant platform for an entire workforce to search and act across business applications, reached through chat, web, intranets, service portals and mobile.

What their pages do not say

  • What a turn cost
  • Whether you can run it yourself
  • A Confirm on every write, not only access requests
  • A rule that nobody approves their own request
  • Which plan the audit export is on
  • A price, or a 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 Moveworks’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

Moveworks

The Moveworks Reasoning Engine is "powered by a multitude of models — some open source and some proprietary". No single model is named as the one that answers, and no bring-your-own key is stated. The platform page links a resource on a "GPT-5.2 upgrade" but does not say which model answers a given request.
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

Moveworks

Not stated on their site.
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

Moveworks

Hosted on AWS: "All customer data remains in its region and is never transferred elsewhere", across US Commercial, EU Commercial, US GovCloud, Canada, Australia, UK and Japan. No self-hosted or on-premise option is stated.
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

Moveworks

Agents "act securely on behalf of users through OAuth 2.0, giving employees full visibility and control to manage access." Where the tokens are stored, and how, is not stated.
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

Moveworks

Their Approval Workflow page: "Notify approvers in chat via the AI Assistant when new approval tasks need attention" and "Approve or reject with one-click buttons or natural language responses." The Approvals Engine docs hold access-group and software requests until named approvers act. A Confirm shown to the asker before every write, not only access requests, is not stated.
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

Moveworks

Approvals Engine docs: "Require special approvers for users based on the application, role, and user attributes (e.g: Department, employee type, etc.)" and "If any one approver denies the request, then the entire request is denied." Approval chains are customisable per business event. A rule against approving one's own request is 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

Moveworks

Help centre: "Moveworks provides a JSON-based SIEM log export (via SFTP) that captures API calls, authentication events, permission changes, config changes, and other platform activities", appended every three hours; config-change audit logs are kept 60 days in Setup. The Agent Studio page adds "real-time dashboards, reporting, and detailed logs". Which plan includes the export is not stated; SFTP access is arranged through the account team.
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

Moveworks

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

Moveworks

No figures, units or tier names. The pricing page says "Connect with a Moveworks expert to request a custom quote".
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

Moveworks

"Admins can add the Moveworks AI Assistant into the Slack chat platform for fast discoverability." Their platform page adds "chat, web, intranet, portals, and mobile".

“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: Moveworks homepagePricingSecurity and data privacySlack integrationPlatformIntegrationsReasoning EngineAgent StudioApproval WorkflowApprovals Engine (docs)SIEM logs overview (help centre)

Questions

What people ask about Moveworks and attest_tag.

Is attest_tag an open-source alternative to Moveworks?
attest_tag is MIT-licensed: one Go binary with the admin console embedded, the repository public on GitHub, and the hosted service running the same code. Moveworks' pages do not state a licence or source availability; their only mention of open source is the mix of models behind the Reasoning Engine. Both answer questions and act across connected applications; attest_tag does so in Slack and Microsoft Teams only.
Can I run attest_tag on my own servers?
Yes. The same binary runs as Docker on a laptop or VM, on Google Cloud Run, AWS Fargate, Azure Container Apps or Kubernetes with Helm, with credentials sealed under a MASTER_KEY you hold and the audit log as a table in your own database. Self-hosting has no fee and no limits we set. Moveworks' pages describe hosting on AWS in named regions and do not state a self-hosted option.
Which model does each run on?
attest_tag ships on google/gemini-flash and takes any OpenAI-compatible endpoint, whether OpenRouter, a vendor API, or a model you host, set per workspace, per channel, or per thread with !model. Moveworks says its Reasoning Engine is "powered by a multitude of models — some open source and some proprietary"; its pages do not name the model that answers a given request.
What does a turn cost?
In attest_tag every completion's tokens and cost are measured and printed under the reply, and !usage shows the month by channel against the budget. A typical answered question on the default model costs about $0.002 and a fix job about $0.18. Moveworks' pages do not describe a per-turn cost shown to the user, and the pricing page gives no figures; it asks you to request a custom quote.
Does Moveworks hold a write for a human before it runs?
For access requests, yes: their Approval Workflow page notifies approvers in chat and lets them "Approve or reject with one-click buttons or natural language responses", and the Approvals Engine holds provisioning until approvers act. Their pages do not state that every write an agent makes, in any system, is shown to the asker for a Confirm first. attest_tag holds any method other than GET, HEAD or OPTIONS: the bot posts what it intends to do and a card with Confirm, Cancel and "Something else…"; a pending write expires after five minutes, and admins can pre-approve expected writes with plain-sentence allow rules, checked strictly.
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. A request routes to the least powerful tier that covers every call in it, and a plan no single tier covers is refused. Moveworks' Approvals Engine docs set approvers by application, role and user attributes and route requests through custom approval chains; their pages do not state a rule against approving one's own request.

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.