Skip to content

AltGenerator

AltGenerator (hereinafter the “Application”) is a wrapper around Anthropic’s Claude model that allows you to sumbit an image to the LLM and receive descriptive alt-text.

1. User Documentation

This section is for those interacting with a live instance of the Application.

To interact with the Application, you must send a message (in a server channel it can see and respond to, or in a direct message with the bot). The content of your message must start with a mention (or ping) of the bot.

If you are using the Application outside of our server, and have not subscribed, you will be met with a prompt to subscribe:

Otherwise, the bot will respond to your query. Note that the bot does NOT look at the text content of your message, only image attachments.

To cut down on costs and provide this service at an affordable rate to you, the Application does not track any conversation history. Each message you send is treated as an isolated query and receives a response independent of any prior interactions.

2. Technical Documentation

This section is for those interested in running their own instance of the Application.

In order to host your own instance of this application, you will need to complete a few steps.

2.1. Discord Application

First, you will need to go through the Discord Developer Portal to set up a new Discord Bot account. The bot will not need any privileged intents.

Once you have the bot set up, save the token in 1password and update the DISCORD_TOKEN secret reference in prod.env.

You’ll also need to set up a Discord webhook for debug logs. Save the URL in 1password and update the DEBUG_HOOK secret reference in prod.env.

2.2. Anthropic

You will need to register for an Anthropic API account. Note that this is NOT the same as a paid Claude account - they are independent services with independent billing.

Under the Billing tab, you’ll need to load some credits. There is no free tier for this API.

Under the API Keys tab, generate an API key for your workspace. Save the key in 1password and update the ANTHROPIC_TOKEN secret reference in prod.env.

2.3. Monetisation

Whether you wish to enable monetisation or not, you’ll want to update the logic in src/index.ts around line 239 to reflect the behaviour and values relevant to your instance.

For example, you may need to update the SKU in the button with the SKU for your application, or remove the entitlement logic entirely and offer the service for free.

2.4. Running the Application

Once you have the Application on a configured server, you’ll need to run the following commands:

Terminal window
pnpm install #install the dependencies
pnpm build #compile the typescript into javascript
OP_SERVICE_ACCOUNT_TOKEN=<key> pm2 start 'pnpm start' --name 'naomiai' #start the app as a PM2 process

If you have configured everything correctly, you’ll be all set!

This section is for expansions to our legal policies specific to the Application.

3.1. Privacy Policy

The Application does not use Discord’s Message Content intent. This means that it cannot see the content of ANY message you send unless you explicitly ping the bot (or have DMed the bot directly).

We do not store any data related to the use of this Application.

The image files you consensually submit to the Application as part of normal usage are sent to Anthropic to generate the LLM response. Messages are sent anonymously, and not tied to your user account. However, the files may be processed in accordance with Anthropic’s Terms and Privacy Policies.

Your UUID is logged in our support server, with the quantity and cost of tokens consumed in your interaction with the Application. No message content or other information is logged, and these data are solely used to track usage metrics and identify a need to adjust costs.

4. Contributing Documentation

This section is for documentation related to contributing to the Application’s codebase.