> ## Documentation Index
> Fetch the complete documentation index at: https://docs.threetone.in/llms.txt
> Use this file to discover all available pages before exploring further.

# Ghost

> Prepare a Ghost publication for a future Threetone widget, with a deliberate injection scope and published-site checks.

Ghost provides code injection for third-party scripts. Prepare the placement and review process now; install a Threetone widget only after its production asset, session access, and runtime are released.

<Note>
  There is no verified production Threetone embed snippet in this guide. A dashboard preview URL or local development script is not a supported installation asset.
</Note>

## Choose where it belongs

Ghost's **Settings > Code Injection** contains site header and footer fields that affect every page. The editor sidebar also provides code injection for an individual post. Ghost recommends the footer for JavaScript in its [code-injection tutorial](https://ghost.org/tutorials/use-code-injection-in-ghost/).

Begin with a single test page or post. Decide whether the assistant belongs on public articles, member content, or both. Page placement alone must not grant the agent access to private member information.

## Prepare the installation

<Steps>
  <Step title="Record the existing injection">
    Keep a copy of the current header and footer configuration before a future change. Identify existing chat, consent, analytics, and theme scripts that may compete for screen space or load the same dependency.
  </Step>

  <Step title="Review the released snippet">
    Verify its authoritative origin, version, required placement, and visitor access design. Keep workspace credentials out of Ghost's public HTML. Follow the widget's released placement requirements even if a general-purpose script would normally go in the footer.
  </Step>

  <Step title="Test the published page">
    Once installation is supported, test the actual published URL as a signed-out visitor and, where relevant, a member. Confirm that article navigation does not duplicate the interface and that the widget does not cover subscription or account controls.
  </Step>
</Steps>

Check narrow screens, keyboard focus, readable errors, permission denial for voice, and the ability to end a session. Keep a visible contact route available while the widget is unavailable. Record how to remove the injection and restore the previous configuration if the test fails.

For agent preparation, start with [the introduction](/overview/intro) and [widget requirements](/agents-platform/deploy/web/widget).

## Frequently asked questions

<AccordionGroup>
  <Accordion title="Should I paste the script into both header and footer?" id="ghost-faq-duplicate">No. Use the location required by the released widget instructions and load one instance. Duplicate injection can create duplicate interfaces or sessions.</Accordion>
  <Accordion title="Does member-only placement authorize private answers?" id="ghost-faq-members">No. The agent's source access and session authorization need their own supported controls. Hiding a page is not an agent permission model.</Accordion>
</AccordionGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.