SpectroMate is an API server with extended functionality designed for Slack integration in the form of a bot. You can use SpectroMate to handle slash commands, and message actions. You can also use SpectroMate to handle non-slack-related events by creating API endpoints for other purposes.
SpectroMate comes with out-of-the-box support for Mendable. You can use your Mendable-trained model to answer documentation-related questions by using the /docs ask <question>
slash command.
Select the target platform to view its Getting Started guide.
The following endpoints are available.
Description | Endpoint | Method |
---|---|---|
Used for health checks by external resources. | /health |
GET |
A slack endpoint that can be used to handle slash commands. | /slack |
POST |
A slack endpoint for handling slack message actions. | /slack/actions |
POST |
The following Slack commands are available.
Description | Command |
---|---|
Displays information to the user for how to use SpectroMate. Invalid commands return the help response. | /help |
Used to query the Mendable and ask documentation questions to a trained model. | /ask |
Same as the /ask but responses are only visible to the user versus the entire channel. |
/pask |
Spectromate supports the following actions.
Description | Action |
---|---|
Handles the possitive feedback button and submits the feedback to Mendable. | ask_model_positive_feedback |
Handles the negavtive feedback button and submits the feedback to Mendable. | ask_model_negative_feedback |
The following is an architectural overview of SpectroMate.
To learn more about SpectroMate, review the internal technical document.
Action | Supported | Notes |
---|---|---|
Slash command | ✅ | Supported through the /slack endpoint. |
Message buttons | ✅ | Supported through the /slack/actions endpoint. |
Mentions | ❌ | Currently unavailable. |
Threads | ❌ | Currently unavailable. |
Health checks | ✅ | Supported through the /health endpoint. |
Verify Slack signature | ✅ | Verification of Slack signature is applied to all Slack endpoints. |
Metrics | ❌ | Currently unavailable. |
Proxy | ✅ | SpectroMate will honor the HTTP_PROXY , HTTPS_PROXY and NO_PROXY environment variables. |
Image Verification | ✅ | We sign our images through Cosign. Review the Image Verification page to learn more. |
pask
messages when submitting feedback. The answer response message is replaced with a feedback acknowledgment message. This behavior stems from the Slack API not including the original message when handling action events from an ephemeral message.
We welcome all types of contributions. Please take a moment and review our contribution guidelines.
Review the Open Source Acknowledgment reference resource for a complete list of open-source licenses used in this project.