Skip to content
ochat
Search documentation

Use quotes for an exact phrase.

Search by topic, command, or code identifier.

    GitHub ↗

    Library overview

    Find OCaml integration, subsystem maps, and repository module references.

    View Markdown source ↗

    This directory holds free-form Markdown files that go beyond inline *.mli comments. They capture design notes, usage examples, historical decisions, and any other background that helps a human (or an indexing tool) understand the code-base.

    Start with a subsystem guide, then follow its exact interfaces. The complete module index below also links to repository-only internals and historical notes; those links are not a claim of website publication or runnable examples.

    TaskEntry pointBoundary
    Embed an agent or clientAgent-core integration, client libraryHosts own execution; client projections do not own durable state.
    Register an OCaml toolCustom toolsRegistration and progress callbacks do not create authorization or output filtering.
    Consume MCP toolsMCP client, HTTP transport, OAuth cacheMaintained outbound tools are separate from deprecated prompt serving.
    Compose ChatMD filesSource loader, importsCaptured source closures and relative paths have host-specific semantics.
    Program a moderatorRuntime guide, language internalsUI capabilities and automatic work limits depend on the host.
    Manage conversation sizeCompaction, archivesSummaries are lossy; an archive is not a running continuation.
    Add retrievalSearch setupEmbedding-backed agent retrieval is separate from website search.
    Refine promptsmp-refine-runLocal and paid strategies differ; the broad older library overview needs API reconciliation.
    Reuse additional componentsEmbedding and cachingKeep identity-bearing histories and host-owned resources.
    Maintain older file-backed sessionsPrompt sessions, snapshot storeCompatibility APIs do not administer daemon sessions.
    Extend the terminal UIApplication hosts, controller, display typesEditor state is local; native/daemon mutations go through the actor.
    • Use the same basename as the module you’re describing plus the suffix .doc.md – e.g.

      vector_db.doc.md → relates to `vector_db.ml` / `vector_db.mli`
    • Longer, thematic docs are welcome; pick a concise slug such as embedding_pipeline.doc.md.

    • Keep language plain Markdown; no special tooling required.

    These Markdown sidecars are repository documentation for users and maintainers. They are not automatically shipped as generated odoc API pages or installed package docs. Public .mli comments define exact APIs; sidecars explain design and integration. Historical/TODO material must be labelled, not presented as current behavior. Start at the documentation index or agent library map.

    When adding a new module, consider whether a side-car .doc.md would help future readers. If so, drop it here under the same sub-directory structure as the source code.

    Additional topic references and historical notes

    Section titled “Additional topic references and historical notes”

    These pages live outside lib/ but cover related implementation topics. Research and older design notes are not current command or host-parity promises; prefer the current guides and interfaces when they differ.

    For agent integrations start with agent-core embedding. For other components, use the index below. These pages mix API explanations and historical design notes; exact signatures are in the linked current interfaces. A link here is navigation, not a claim that every legacy example was executed.