Enable comments on a site
Turn on the anchored comments widget for a deployed site, choose an access mode, and read the review feed.
Comments run on any site you own. Enable them and every page gets a floating panel where visitors can highlight any passage and leave a note anchored to that text.
The full model is in Concepts: Comments.
Turn it on
At deploy time
Pass --comments to deploy and enable in one step:
flypod ./dist --commentsAdd --mode to choose a mode other than the default anonymous:
flypod ./dist --comments --mode approvedOn an existing site
flypod comments enable --site <site-id>
flypod comments enable --site <site-id> --mode passcode --passcode mysecretFrom the dashboard
- Open https://flypod.dev/account.
- Find the site card and click Enable in the Comments row.
- The mode flips to Anonymous and the widget is live on the next page load.
The widget is injected into every HTML response from the site. Static assets, JSON endpoints, and JS bundles are untouched.
The widget loads from the same site host (https://<your-id>.flypod.dev/_flypod/widget.js), so there is no third-party origin to add to your CSP.
What visitors see
A Comments button in the bottom-right corner of every page. Clicking opens the panel.
Visitors can also highlight any passage to get a Comment on this pill. Clicking it opens a composer next to the selection with the quoted text at the top. The thread is anchored to that exact passage.
The In-page toggle (shown once at least one thread is anchored) floats a pin in the page margin next to every anchored passage. Click a pin to read and reply inline.
Picking a mode
The mode controls who can read and post, and is enforced on the server. Change it from the dashboard, the CLI, or at deploy time.
| Mode | Who can read / post | Right for |
|---|---|---|
| Anonymous | anyone, with a pseudonym | public drafts |
| Passcode | anyone holding the shared passcode (reads + writes gated) | semi-private review |
| Approved | anyone may post, but posts stay hidden until you approve | moderated / high-traffic |
flypod comments enable --site <id> --mode approved
flypod comments mode passcode --site <id> --passcode mysecret
flypod comments off --site <id> # disables the widget (data is preserved)The retired v0.1 mode names still work as input: open maps to anonymous,
and review/members map to approved.
Identity
Each visitor gets a pseudonym scoped to that site, like calm-otter-1234. The same person visiting a different flypod site gets a separate identity there — cookies are scoped per subdomain.
Visitors can rename themselves at any time. The new name applies to all their past comments immediately.
Read the inbox
From the dashboard
The Comments row on the site card shows the current mode and a quick inbox view.
As JSON-LD
curl -s https://<id>.flypod.dev/comments.json | jqReturns a W3C OrderedCollection of annotations. Per page:
curl -s https://<id>.flypod.dev/about.comments.jsonIn Anonymous and Approved modes the feed is public, with pending items still hidden from third parties. Passcode mode requires a valid grant or owner identity.
The package contains MCP and webhook primitives, but hosted flypod.dev does not yet issue usable agent tokens or dispatch outbound webhooks. See the comments hosted status.
What does not work yet
- Editing posted comments. A posted comment is immutable. Visitors can rename themselves; owners can moderate threads in Approved mode.
- Hosted MCP and webhooks. The underlying primitives exist, but their hosted authentication and delivery integration is unfinished.
- Realtime push. Clients poll today.
- Embedding on non-flypod sites. The widget assumes same-origin endpoints under
/_flypod/. Embedding lands in v0.2.
Use with agents & CI
The canonical playbook for driving flypod from an agent or CI job. Covers non-interactive output, capturing the URL, exit codes, authentication, and idempotent re-deploys.
CLI reference
The flypod CLI deploys a static directory or file to a public URL with one command, then manages versions, rollbacks, and account ownership.