Add the drawer to any page with a single script tag:
<script
src="https://comment-api.sepo.sh/sepo.js"
data-repo="owner/repo"
data-trigger-mode="bot"
async
></script>data-repo points at the GitHub repository that backs the drawer — its discussions, issues, and pull requests are what visitors see.
Options
| Attribute | What it does | Default |
|---|---|---|
data-trigger-mode | pill for a labeled button, bot for the floating Sepo mascot | pill |
data-trigger-label | Label on the pill trigger | Chat with Sepo |
data-panel-title | Heading inside the drawer | Interact with the Sepo agent |
data-panel-subtitle | Optional line under the drawer heading | — |
data-theme | Widget theme | — |
The script also accepts the Giscus-style widget attributes (data-mapping, data-tabs, data-content-repo, data-pr-number, and friends), so an existing giscus-compatible configuration carries over.
Theming and control
All drawer chrome renders in a Shadow DOM, so your site’s CSS cannot collide with it. Theme it with --sepo-* custom properties on the .sepo-comments host element, or drive it from JavaScript:
window.sepoComments.open();
window.sepoComments.close();
window.sepoComments.setTheme("dark");Single-page apps can re-inject the script on client-side navigation — the embed tears down its previous instance first, so re-running is always safe.