Setup Guide
Click here to introduce our bot to your server.
Go to our dashboard and click on the SparkAI Chat tab to get started
If you're unsure about setting up our bot, feel free to ask @communityone on Discord for guidance. Our bot is knowledgeable about its own features and can answer related questions directly. No need to provide any knowledge documents; you can see our bot in action right away!"
Spark setup consists of two parts: the Knowledge Center and Agents.
Knowledge Center: where you can set up everything related to your community knowledge. This includes .txt files and other third-party integrations such as Gitbook.
Agents: where you set up how Spark should behave, from the custom instructions, conversation styles, to the safety and compliance setup.
Knowledge Center
When you click on "Add Knowledge" button, here are the two options that you have: .txt doc and gitbook integration. We will be adding GitHub and Notion very soon. Check out our Discord for the latest update.

Manual Upload

You can upload a .txt file up to 5 MB. In addition, you have the option to add an expiration date. This is useful if you have some seasonal promotions and want our Spark to remember these details until the event is over.
If you want to make any changes to your .txt file, simply download a copy, edit, and reupload it.
If you are on our free tier, you can upload two text files up to 5 MB each. There is no limit for premium packages.
Third Party Integration
Currently, we support Gitbook, GitHub repository, and Notion integration.
Git Integration
We ask for the following inputs for GitBook integration:

Base URL: This is for our bot to be able to refer to your GitBook if users have any questions. For example, the base URL for our GitBook is https://communityone.gitbook.io/communityone
API Token: To get your API token, go to the Developer settings of your GitBook user account and create a new token if this is your first time requesting one.
Space ID: The Space ID is a unique identifier of a Space in GitBook. You can find the space ID in the URL of any space you're in. For example, in this url: https://app.gitbook.com/o/6DshSpVsoE/s/I6OHwf4UHU/, your space id is "I6OHwf4UHU".
If you are using one of our premium packages, you can resync your Gitbook anytime by pressing the "Re-Sync" button.

While there are alternative market solutions that can download your GitBook content without requiring a token input, we notice that most of them are highly unreliable. Under the hood, we are using Llamaindex to handle all the content reading.
GitHub Integration
Here's a list of input for Spark to be integrated with GitHub: GitHub Token, Repository Owner, Repository Name.

Github Token: Get your personal or company's fine-grained personal access token here: https://github.com/settings/personal-access-tokens/new

If an organization owns your Repo, you can switch the resource owner as listed below.

Select what access this token will have, and then click on "Generate Token".

You can find the Repository owner and name in the upper left corner of your repo.

Notion Integration
For Notion Integration, we need your token for secure access.

You can generate your Notion token here: https://www.notion.so/profile/integrations

Ensure that the newly generated tokens have access to the documents you'd like us to integrate. You can edit each token's access by clicking on each token ⇒ Access ⇒ Edit Access.


Discord Knowledge Discovery
Discord Knowledge Discovery automatically syncs your Discord messages with Spark so that you never have to answer the same questions twice.

How does it work?
Spark helps streamline your community interactions by passively listening to specified conversations on your Discord. Once you designate the person and channels Spark should monitor, it syncs only the relevant topic-based knowledge.
Knowledge Prioritization: When users ask questions, Spark prioritizes the information from your knowledge documents over past Discord messages, ensuring high-quality responses.
API Provider: Spark relies on Google Gemini (Enterprise) for its API services. Your data is not trained by Gemini, nor CommunityOne, in any shape or form.
Manage knowledge: You can manage and edit all knowledge bits that we collect directly via your Spark dashboard. To start, click on + Add Knowledge and click on Discord Knowledge Discovery:

Here are the setups:

Where should we update the knowledge from: the channels that you want us to listen to the messages
Who should we include? Users that Spark should consider for knowledge syncing. We recommend adding only users who can be viewed as a "truth of source", such as the core team (as opposed to part-time moderators).
Your members will need to give us EXPLICIT APPROVAL before we start to sync their chat messages. You need to copy the consent link and pass it to the user.

What topics should we focus on?
To ensure quality in your knowledge docs, Spark only syncs chat messages related to specified topics. Clearly define these topics to maintain high data quality, which enhances AI performance. For example, messages about "visiting Iceland" might be ignored if your server is focused on community management. Provide as many relevant keywords as possible to help Spark identify significant topics. If topics are unique to your server, ensure there are existing documents for Spark to understand them better.

When you click on Start Discovery Process, You can check the current status and your quotes here:

Retroactive Discovery Plan
Depending on whether you have a free or premium tier, different parameters apply for message look-up limits, maximum message count, and retroactive look-back opportunities. For premium tiers, the retroactive discovery plan limit resets monthly. However, for free users, the limit is cumulative, so double-check your setup before scheduling a scan. Once a "scan past messages" for Discord Knowledge Discovery is scheduled, it cannot be canceled.
If you exhaust your free limit, you can manually manage your knowledge bits directly via the dashboard. Your knowledge bit synchronization will continue as usual going forward.
Discord Knowledge Discovery limits
You have different limitations for Discord Knowledge Discovery depending on your tiers:
For the free tier: Get 50 messages checked daily, store up to 100 knowledge bits, and enjoy a retroactive look-up period of 1 month or up to 1500 messages. Plus, you can collect Discord knowledge retroactively up to 3 times.
For Spark Tier ($14.99/month): Get 300 messages checked daily, store up to 1500 knowledge bits, and enjoy a retroactive look-up period of 3 months or up to 10000 messages. Plus, you can collect Discord knowledge retroactively up to 3 times per month.
For all other tiers: Get 500 messages checked daily, store up to 3000 knowledge bits, and enjoy a retroactive look-up period of 6 months or up to 15000 messages. Plus, you can collect Discord knowledge retroactively up to 6 times per month.
Your Data
Your data is not used for any AI training in any shape or form.
AI Agents
AI agents is where you can customize how our bot should behave across your various channels. You can add multiple agents for different purposes (e.g., testing and production) and for different style (short casual answers vs long technical details). To get started, just click on the "Add Agent" buttom.
Channel Configuration

Channel Configuration is the only required field for your AI agents to be functional.
You can set up multiple different channels with the same agent as shown above.
There are two different response modes:
Every Message: This is our old instant response mode. It replies to every message, no matter what.
Unanswered Questions: We will only answer when we detect that the user is asking a question and no one has responded to the question in the past x minutes. In addition, you can select whether we should respond to moderators or not.
AI Instructions - Highly Recommended

This is where you can add rules on what our mod should and should not do. You can instruct our bot on anything. The custom prompt is part of your Spark native "system prompt".
Conversation Style

Conversation style is a premium feature because we make an additional call for each message to ensure that it complies with your instructions. If you are using our free version, add your style instructions to the custom prompt, and your Spark should be able to adhere to most of your instructions.
With the Style guide, you can further specify HOW you want your Spark to talk. One of the most frequently requested features is to make Spark talk more like a human. Interestingly, different people have different thoughts on what constitutes a human-like interaction.
We made a separate input field for length so that you can control how long Spark messages should be.

AI Rules — A.K.A If x Do Y

You can set a certain number of conditions and ask Spark to say specific things. For example, if you think this is a spam message from the user, ask Spark not to repeat anything the user says. This is because sometimes spammers try to trick Spark into making an "official" announcement. Don't worry, we've built in a lot of security measures natively. A more common example can be, if a user has a question about x, tag this person or refer them to this website.
Safety & Compliance

If your server is sensitive and you would like to attach a disclaimer, you can add it here. Additionally, you can choose to display the disclaimer either once a day per user or with every message. Disclaimers will show up as a lightly italicized text font.

In addition, we've added two guardrail rules for all Spark Agents. One: Spark doesn't mention anyone. There may be instances where we would write "@everyone" in a message, but all messages are processed so that it is escaped and displayed purely as text. You can verify this by noticing that there is no highlighted background for these messages.
Second, we do not display clickable URLs unless we can find a relevant reference within the knowledge document. There may be instances where Spark may write "apple.com", but we have processed the content so that it is displayed as pure text.
Auto-onboarding
Auto-onboarding means that our bot will automatically open up a private channel when a new user is onboarding to your community. Our bot will greet the new user with your custom messages, and the new user can choose to chat with our bot.

Auto-onboarding is ideal if your server is relatively small and a few people are joining every day. It provides your new member with a "safe space" to engage and learn more about the community before joining the general chat. In addition, all channels will be deleted automatically after 24 hours of inactivity, so you don't have to worry about channel handles.
However, auto-onboarding is not recommended if you expect a large influx of users, as this will result in the creation of numerous private channels. Here is an example:

Agent Status

You need to designate one agent as your primary agent. This is the agent that we will use if someone tags Spark during onboarding. If you delete your primary agent, we will automatically assign the next available agent as the "primary agent".
Last updated