Article

Public agent for anyone

This post explains how the website assistant works.

Stack

Overview

The website chat interface is a homepage async workbench. It combines a grounded chat panel, source cards, guided modes, and a handoff packet builder for visitors who want to leave useful context rather than only ask résumé-style questions.

What It Does

This is a secure, content-aware assistant that:

  1. Builds context from markdown files in the repository content/ directory
  2. Selects relevant documents for each user question using keyword matching
  3. Sends conversation history and mode to the Worker, which owns prompt assembly and model selection
  4. Maintains conversation history to enable follow-up questions within the same session
  5. Never accesses source code, secrets, or files outside the content/ boundary for chat grounding
  6. Exports or submits handoff packets with explicit visitor consent

Security & Scope

The chat interface enforces a strict content boundary:

This design ensures users can safely expose the chat widget publicly without revealing sensitive project information.

Interaction Model

The assistant can:

  1. Search relevant articles by keyword from user queries
  2. Ask the Worker to attach selected markdown excerpts to the system context
  3. Answer questions grounded in those markdown files
  4. Remember context across multiple messages in a session
  5. Help draft reusable async handoffs with goals, constraints, evidence, and open questions

Features & Customization

Learn More

For implementation details and deployment instructions, see this repository:

→ <!---->**sgoley.github.io**