docs(enterprise): add Slack integration guide for self-hosted OHE#525
Draft
jpshackelford wants to merge 1 commit into
Draft
docs(enterprise): add Slack integration guide for self-hosted OHE#525jpshackelford wants to merge 1 commit into
jpshackelford wants to merge 1 commit into
Conversation
Adds enterprise/integrations/slack.mdx documenting how to configure the Slack resolver on a self-hosted OpenHands Enterprise install (Replicated and standalone Helm). Covers: - creating a Slack App with the OpenHands-Cloud helper script (or via manifest paste) so webhooks point at app.<your-base-domain> - entering credentials in the Replicated admin console (Enable Slack group) or the openhands / openhands-secrets Helm charts - installing the app via /slack/install and linking each user - limitations (no Socket Mode, no token rotation, public HTTPS required) - troubleshooting (URL verification, missing scopes, duplicate replies, credential rotation) Wires the page into the Enterprise tab under a new 'Integrations' group in docs.json. Regenerates llms.txt / llms-full.txt via make llms; most of the diff in those files is unrelated drift that the weekly sync workflow would have picked up anyway. mint broken-links: clean Co-authored-by: openhands <openhands@all-hands.dev>
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Workflows to automatically generate PRs for you. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Adds
enterprise/integrations/slack.mdxdocumenting how to enable the@OpenHandsSlack resolver on a self-hosted OpenHands Enterprise install (both the Replicated VM-based install and standalone Helm). Wires the new page into the Enterprise tab under a new "Integrations" group indocs.json.Why
The Slack resolver has shipped for self-hosted OHE — the chart wiring landed in
OpenHands/OpenHands-Cloud#584(ALL-5659) and the Slack-App creation script landed inOpenHands/OpenHands-Cloud#601(PLTF-2036) — but the docs site only documents the Cloud flow (openhands/usage/cloud/slack-installation), which uses the All-Hands-managed Slack App and is not applicable to customers running their own install.Today the operator-facing information is split across:
help_textstrings in the Replicated admin console,scripts/create_slack_app/README.mdinOpenHands-Cloud,This PR consolidates the end-to-end workflow on docs.openhands.dev so an operator can stand up Slack against a fresh OHE install without reading source code.
Contents of the new page
End-to-end, in order:
scripts/create_slack_app/create_slack_app.pyfromOpenHands-Cloudwith--base-domain <your-domain>and a Slack App Configuration Token, which mints the app viaapps.manifest.createand prints Client ID, Client Secret, Signing Secret.Documents all four webhook URLs registered on the app (
/slack/install-callback,/slack/on-event,/slack/on-form-interaction,/slack/on-options-load), the bot scopes, and the disabled flags (Socket Mode, Org Deploy, Token Rotation).slack-authSecret, theslack.enabled/slack.clientIdHelm values, and theENABLE_V1_SLACK_RESOLVER=trueenv var that the Replicated overlay sets.values.yamlsnippets for theopenhandsandopenhands-secretscharts, plus a note for operators who manage theslack-authSecret directly.Ends with a
kubectl set env … --listone-liner to verify the integrations pod restarted withSLACK_*env vars.https://app.<your-base-domain>/slack/install. Notes themissing_scoperecovery path.@openhandsonce and clicking the login link the bot replies with. Explains that the link populates theslack_userstable and that conversations then run as that OpenHands user (their LLM keys, provider tokens, org)./slack/on-options-load, thread ownership (only the original asker can@openhandsin follow-up replies), and conversation-link URLs.SLACK_WEBHOOKS_ENABLEDmissingpsqlquery to verify the link row)missing_scopein pod logsOpenHands-Cloud, plus the Cloud Slack page for end-user UX.Navigation
docs.jsongets a new "Integrations" group under the Enterprise tab. It's intentionally separate from "K8s Install" so future enterprise integrations (Jira DC, Bitbucket DC, etc.) can land alongside Slack without further nav churn.{ "group": "Integrations", "pages": [ "enterprise/integrations/slack" ] }llms.txt / llms-full.txt
make llmswas run per the repo's AGENTS.md guidance. The new page is included, but the regenerator also picks up pre-existing drift from other recently-merged PRs (org pages, skills pages, an automations description tweak, etc.). The weeklycheck-llms-files.ymlsync workflow would have produced the same diff. If reviewers would rather keep this PR minimal, I'm happy to revert the llms changes and let the weekly job handle them — let me know.Verification
python3 -c "import json; json.load(open('docs.json'))"— JSON syntax OK.npx mintlify@latest broken-links—success no broken links found./enterprise/quick-start,/enterprise/k8s-install/index,/openhands/usage/cloud/slack-installation#working-with-the-slack-app).main.Out of scope
openhands/usage/cloud/slack-installation.mdx) — I deliberately left it focused on Cloud and added an<Info>cross-link from the new enterprise page rather than rewriting the Cloud one.This PR was opened by an AI agent (OpenHands) on behalf of the requesting user.
@jpshackelford can click here to continue refining the PR