
Publishing makes a nest readable — to people, to agents, and to external systems that mirror it. You control read access with a public/private visibility toggle, snapshot approved content into a served index, preview what public readers will see, export a portable bundle for re-import elsewhere, and stream changes so external copies stay in sync. There is no separate paywall: hosting is license-gated writes plus a public/private read toggle.

## Making a nest public

Set a nest's visibility to `public` to allow unauthenticated read access:

```bash
PATCH /nests/:id/visibility
```

```json
{ "visibility": "public" }
```

Public readers see **only approved snapshots**. The author and collaborator roster is hidden from public readers — visibility exposes content, not the people behind it.

## Publishing a snapshot

Snapshot the nest's approved content and (re)build its served index:

```bash
POST /nests/:id/publish
```

Only approved content is included in the published snapshot, consistent with the governance model in [Governance & Stewardship](https://nest.promptowl.ai/d/promptowl-documents/platform/governance/governance-stewardship).

## Previewing approved-only

Preview exactly what a public reader will see — the approved-only view — with a query flag:

```bash
GET /nests/:id/...?approved_only=1
```

This lets you confirm the public surface before flipping visibility.

## Exporting a portable bundle

Export the nest as a portable `.zip` bundle that can be re-imported on another host:

```bash
GET /export?format=bundle
```

The bundle is portable across hosts, so a nest published on one host can be re-imported and re-hosted on another. Export is available to the **viewer** role.

## Keeping external copies in sync

To mirror a nest into an external system (built for GitHub / GitBook mirroring), poll the changes feed:

```bash
GET /nests/:id/changes?since=<ISO>&include_content=1
```

The response returns documents changed since the given ISO timestamp, including full content when `include_content=1`, plus **deletion tombstones** so a mirror can remove documents that were deleted upstream. This makes incremental, one-way mirroring straightforward.

## Agent entry point: `llms.txt`

A published nest exposes a public agent manual at:

```bash
GET /llms.txt
```

This is the agent-facing entry point for the nest — a public manual an agent can read to understand what the nest offers and how to consume it. For agents that connect over the Model Context Protocol, see the [MCP Server](https://nest.promptowl.ai/d/promptowl-documents/protocol/mcp-server); for framework retrieval clients, see [Connectors](https://nest.promptowl.ai/d/promptowl-documents/platform/connectors/connectors).

## A note on "gating"

There is no separate paywall on reading a nest. Two independent controls govern access:

| Control | What it gates |
| --- | --- |
| License | Writes to a hosted nest (license-gated) |
| Visibility toggle | Public (unauthenticated read) vs. private |

Reading is governed by the visibility toggle; monetization is on the write/hosting side, not behind a read paywall.

## Related

- [Folders](https://nest.promptowl.ai/d/promptowl-documents/platform/folders/folders) — organizing content before publishing.
- [Connectors](https://nest.promptowl.ai/d/promptowl-documents/platform/connectors/connectors) — reading a published nest from an agent framework.

## Sources

- PromptOwl/contextnest-community PRs: #179, #103, #101, #12, #62.
