AnswerHand Buy — $497

Self-hosted · For US-hosted Intercom workspaces

A self-hosted AI auto-responder for Intercom Messenger.

AnswerHand answers customer questions from your help articles and FAQ, and hands the rest to your team. It runs on your own server, with your own OpenAI key.

$497 one-time. No per-resolution fees.

OpenAI usage is billed to your own OpenAI account. Hosting is separate (about $13/month on Render).

Customer conversations
Customer

How much is the Starter plan?

AI reply

The Starter plan costs $19 per month and includes 3 team members.

Customer

I want to talk to a human

AI reply

A teammate will follow up with you shortly.

Internal note, visible to your team only: [AI-HANDOFF] AI stopped. Please take over.
Actual answers from a test workspace.

How it works

Answers what your content covers. Hands off the rest.

Answers from your help articles and FAQ

The AI is instructed to answer only from your published Help Center articles and the instructions and FAQ you add in Settings.

Hands off to a person

When the AI can't answer, or the customer asks for a person, it hands the conversation to your team and stays silent in that conversation. It can also assign the conversation to a handoff team you choose.

Drafts first, auto-replies when you're ready

By default, answers are drafted as internal notes that only your team sees. When you're ready, switch to automatic replies.

  • Handoff keywords (for example "human" or "refund") skip the AI and hand off right away.
  • In automatic reply mode, the AI stays out of a conversation once a teammate replies.
  • The AI posts at most six comments per conversation.
  • Only Messenger conversations are answered. Email conversations are skipped.

Customer-facing replies like the example above are sent in automatic reply mode. In the default draft mode, answers appear as internal notes for your team instead.

Settings

One settings page. You stay in control.

Everything is configured in the app, on your own server:

  • Your own OpenAI API key, checked with OpenAI before it is saved
  • Mode: do nothing, draft internal notes, or reply automatically
  • Use your published Help Center articles
  • Instructions and extra FAQ, up to 50,000 characters
  • Handoff team and handoff keywords
  • Status: connection, last webhook received, and the AI model in use
AnswerHand Settings page showing Status (connection active, OpenAI key saved, model gpt-5-mini), the OpenAI API key field, mode options with internal-note drafts selected, Help Center articles enabled, sample instructions and FAQ, the Support handoff team, and handoff keywords.
The real Settings page, shown with sample data. Select the image to view it full size.

Requirements

What you need

AnswerHand is self-hosted. Your team installs and runs it.

  • An Intercom workspaceUS-hosted. You create a private app in its Developer Hub.
  • A GitHub accountFor your company's private copy of the code.
  • A Render accountApproximately $13/month for a Starter web service and a Basic Postgres database. Prices can change; check render.com/pricing.
  • Your own OpenAI API keyOpenAI usage is billed to your OpenAI account.
  • Someone technical to install itComfortable deploying from GitHub to Render and setting up an Intercom app and webhook.
  • US hostingBuilt for US-hosted Intercom workspaces. The included Render setup runs in Render's Virginia region.

What's included

Source code and an install guide

Included

  • The complete source code, as a zip file you download from Lemon Squeezy after purchase
  • The installation guide (the same guide shown below)
  • A license for one Intercom workspace

Not included

  • Technical support
  • Installation or setup service
  • Maintenance

Install guide

Read the full install guide before you buy

This is the installation guide included in the download (README.md), shown in full so you can decide whether your team can install AnswerHand.

From README.mdSelf-hosted edition

AnswerHand is an AI responder for US-hosted Intercom Messenger workspaces.

Use of this software is governed by LICENSE.txt in this folder. Read it before installing.

Install in three steps

  1. Put this folder's contents at the root of your company's private GitHub repository.
  2. In Render, create a Blueprint from that repository. Review render.yaml and deploy it.
  3. Open the public HTTPS URL, select Set up a workspace, and enter the SETUP_TOKEN shown in Render's Environment tab, plus your Intercom credentials.

Always run continuously with exactly one instance. Free plans and autoscaling are not supported: sleeping servers cannot meet Intercom's five-second acknowledgment deadline. Budget approximately $13/month for Render Starter + Postgres Basic; OpenAI usage is additional. Prices change: verify https://render.com/pricing.

Configuration and backups

Node 20+ and PostgreSQL are required. The Blueprint provisions one Starter web service and one Basic database in Virginia. Required variables are DATABASE_URL, ENCRYPTION_KEY, SESSION_SECRET and SETUP_TOKEN. LICENSE_KEYS is not required with SELF_HOSTED=true. One connected workspace is enforced by a database unique index. After disconnecting, use SETUP_TOKEN again to reconnect.

To change the AI model without editing code, set OPENAI_MODEL (in Render, on the Environment tab). The default is gpt-5-mini. Use only a model that supports Structured Outputs (JSON schema) in OpenAI's Responses API; other models cannot answer. Settings shows the model in use. After changing it, test once: send a question your FAQ covers from your Messenger and confirm an AI draft appears.

Keep ENCRYPTION_KEY unchanged and backed up in your password manager. A canonical base64-encoded 32-byte key is used unchanged; other values of at least 32 characters use HKDF-SHA256 with permanent versioned constants. Changing the key without re-encrypting data makes stored credentials unreadable.

Do not delete or change SETUP_TOKEN after initial setup. It is required for reconnection and recovery after Intercom token reissuance. Keep it in a password manager alongside ENCRYPTION_KEY. SESSION_SECRET must be at least 32 bytes; SETUP_TOKEN must be at least 32 characters. Back up the database securely too.

For another host, build the Dockerfile, supply variables through its secret store, use PostgreSQL, and terminate HTTPS at your reverse proxy. Run one replica only. The app uses Secure cookies. Render internal database URLs need no SSL mode. External databases requiring TLS should use sslmode=verify-full with a trusted certificate; require/prefer/verify-ca are normalized to verify-full. Do not disable certificate verification for external databases.

Intercom setup

  1. Use a US-hosted workspace. In Intercom Developer Hub create your own private app.
  2. Enable these five permissions (verified working): Read conversations, Write conversations, Read admins, Read one admin, and Read and list articles. A new Developer Hub app starts with almost every permission already checked on its Authentication page. Uncheck everything except these five, then save. We are still confirming whether assigning conversations to a team needs an additional permission.
  3. After changing permissions, the access token shows an outdated permissions warning. Open Test and publish, then Your workspaces, and regenerate the token. Use only the regenerated token; regenerating makes the previous token stop working. Get the Access Token from the app's Authentication page and the Client Secret from the app's Basic information page. Any later permission change requires regenerating the token the same way.
  4. Connect using the app's Setup page. Replies use the workspace bot identity; if no operator bot is found, Settings warns that the connecting admin's name will be used instead.
  5. Disable Fin/Operator automatic responses for conversations handled by this app.
  6. Create a support team in Intercom and select it as the handoff team in Settings.
  7. Enter your own OpenAI API key in Settings. This is BYOK: the server does not use OPENAI_API_KEY for application responses. Saving a key makes a small paid test request; insufficient quota prompts you to add credits in OpenAI Billing.
  8. Add instructions and FAQ. Start in internal draft mode before enabling replies.
  9. Copy the webhook URL into your private app's Webhooks section. Subscribe to conversation.user.created and conversation.user.replied, then select Save. When you save, Intercom automatically sends one test notification. You can also send one real message from the Intercom Messenger to confirm delivery.
  10. In Settings, check the Status section. If Last event received has updated and Last rejected webhook (signature mismatch) shows None, delivery works and Client Secret is correct. If the rejection is newer, correct Client Secret and test again.
  11. Do not run this app alongside another automatic responder. If two apps in the same workspace subscribe to the same webhook topics and both reply automatically, customers receive two answers. Turn off or unsubscribe any other auto-reply app (in addition to Fin/Operator, step 5).

Sign in, update and recover

Normal sign-in uses the exact saved Intercom access token. In Settings you can replace the token and/or Client Secret; the token must identify the same workspace. If the old token is revoked, select Recover access on the sign-in page and enter the new token and SETUP_TOKEN. Client Secret replacement is optional. Recovery failures use one generic message and share the login attempt limit. Updating credentials invalidates previous sessions. Disconnect deletes local credentials, settings and conversation-processing metadata; also remove the Intercom webhook.

Privacy and behavior

This app does not store conversation text. Conversations remain in your Intercom workspace and are processed through your own OpenAI account, subject to OpenAI's data policies. The software vendor receives neither your conversations nor your credentials from this app. Runtime provider requests go only to api.intercom.io and api.openai.com; the app also connects to your configured PostgreSQL database. There is no telemetry, remote licensing, external script, font or analytics. Outbound website links require a user click; infrastructure providers operate under their own policies. Provider redirects are rejected.

The database stores encrypted credentials, settings, identifiers, counters and timestamps, not conversation bodies. Handling records expire after 30 inactive days and are deleted on disconnect. Logs contain fixed events/statuses and allowlisted configuration names/reasons, never credential values or message text. Drafts are internal notes. AI comments are capped at six per conversation. Human-admin takeover and [AI-HANDOFF] stop processing. Intercom sends and database writes are not atomic; a crash between them can require operator reconciliation.

Troubleshooting

If Render marks deployment unhealthy, open the Logs tab. A configuration_error event names an allowlisted required variable with reason missing or invalid. Correct it in Environment without sharing its value. The health endpoint returns 503 and forms are disabled until configuration and schema are ready. startup_failed without configuration_error can indicate a database/schema problem; check connectivity and database privileges.

Do not change ENCRYPTION_KEY to fix a deployment problem. startup migrations are idempotent in SELF_HOSTED mode, including the signature timestamp and singleton workspace index. Existing multiple-workspace databases fail rather than delete data.

Tests and updates

Run npm install, then npm test. PostgreSQL integration tests use rollback-only temporary tables when DATABASE_URL is supplied; otherwise that integration test is explicitly skipped. Other tests need no provider credentials or paid calls. npm run eval is manual only, using OPENAI_API_KEY in the caller's environment; it makes paid synthetic requests and is never run at startup, install or build.

The Settings footer reads the version from package.json. Public pages omit it. The distribution builder copies that version from the source package; do not maintain a separate VERSION file. Review CHANGELOG.md before upgrading.

Your data

How conversation data is handled

AnswerHand does not store conversation text. Conversations stay in your Intercom workspace and are processed through your own OpenAI account, under OpenAI's data policies.

The software runs on your own infrastructure. We do not receive your conversations, API keys, or access tokens.

AnswerHand Self-Hosted

$497one-time
  • License for one Intercom workspace
  • Complete source code (zip)
  • Installation guide
  • No per-resolution fees
Buy AnswerHand

Checkout by Lemon Squeezy, our merchant of record.

Pay once. Run it yourself.

One payment covers one Intercom workspace, with no subscription. OpenAI usage and hosting are paid separately, directly to those providers.

Support and installation are not included. If you can't get AnswerHand running within 14 days of purchase, you can request a full refund. See the refund policy.

FAQ

Questions

Is support included?

No. AnswerHand is provided for self-hosting by your own team. We do not provide technical support, installation, or maintenance. Our email address is for billing and refund requests only.

Is there a subscription? Do I have to update?

No subscription. It's a one-time purchase with a perpetual license, and nothing renews. You are never required to update. We may release updates at our discretion, but we have no obligation to do so.

How many workspaces does one purchase cover?

One. Each purchase covers one Intercom workspace operated by your organization. Each additional workspace requires an additional license. You may run extra non-production copies solely for testing.

Can a contractor install it for us?

Yes. A contractor may install AnswerHand on your behalf, for your own workspace only. We do not offer installation services.

What is your refund policy?

If you cannot get AnswerHand running within 14 days of purchase, email support@getanswerhand.com with a short description of the problem and we will refund your purchase in full. Refunds are limited to one per customer. After a refund, your license ends and you must delete all copies. See the refund policy.

License

License summary

This summary is for convenience. The full license below governs.

  • A one-time purchase gives you a perpetual license for one Intercom workspace operated by your organization.
  • You may modify the source code for your own internal use.
  • You may not redistribute, sell, share, or publish the code, offer it as a hosted service, or use it to build a competing product for sale.
  • No technical support, installation, maintenance, or update obligation.
  • Provided as is, without warranty. Our liability is limited to the amount you paid.
  • Governed by the laws of Japan.
Full license text
AnswerHand Self-Hosted License (v1)
Copyright (c) 2026 AnswerHand. All rights reserved.

1. License grant
Your one-time purchase gives you a non-exclusive, non-transferable, perpetual license to install and use AnswerHand (the "Software") for ONE (1) Intercom workspace operated by your organization. Each additional workspace requires an additional license. You may run extra non-production copies solely for testing.

2. Modifications
You may modify the source code for your own internal use. Modified versions remain covered by this license.

3. Restrictions
You may not: (a) redistribute, sell, sublicense, rent, or share the Software or its source code, in original or modified form; (b) publish the source code, including in public repositories; (c) offer the Software as a hosted service to third parties; or (d) use the Software to create a competing product for sale. A contractor may install the Software on your behalf, for your own workspace only.

4. Ownership
The Software is licensed, not sold. All rights not expressly granted remain with AnswerHand.

5. No support or update obligation
The Software is provided for self-hosting by your own team. We do not provide technical support, installation, or maintenance. We may release updates at our discretion, but we have no obligation to do so. Our email address is for billing and refund requests only.

6. Third-party services
The Software requires accounts with third-party services (including Intercom, Render, GitHub, and OpenAI). You are responsible for those accounts, their costs, and following their terms. AnswerHand is not affiliated with or endorsed by Intercom, Inc.

7. Your data
The Software runs on your own infrastructure. We do not receive your conversations, API keys, or access tokens.

8. Refunds
If you cannot get the Software running within 14 days of purchase, email us with a short description of the problem and we will refund your purchase in full. Refunds are limited to one per customer. After a refund, your license ends and you must delete all copies of the Software.

9. No warranty
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. AI-generated answers may be inaccurate; you are responsible for reviewing how the Software responds to your customers.

10. Limitation of liability
TO THE MAXIMUM EXTENT PERMITTED BY LAW, OUR TOTAL LIABILITY IS LIMITED TO THE AMOUNT YOU PAID FOR THE SOFTWARE. WE ARE NOT LIABLE FOR INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, OR FOR LOST PROFITS OR DATA.

11. Termination
This license ends automatically if you breach it. On termination, you must stop using and delete all copies of the Software.

12. Governing law
This license is governed by the laws of Japan.