view mrjunejune/conversation_api.h @ 279:b3b547563ec7

Add Google connector service and agent wiki Implement the C/Seobeo Google Drive and Gmail connector with encrypted OAuth storage, Zenbu authentication, browser testing, AI tool discovery, chunked HTTP decoding, and Bazel coverage. Consolidate repository guidance into progressive wiki documentation and enforce arena-first allocation for new first-party C code. Co-authored-by: Copilot <[email protected]> Copilot-Session: 84c338fd-0939-4bb3-b7f3-1062eb213e5d
author MrJuneJune <me@mrjunejune.com>
date Mon, 17 Aug 2026 22:22:36 -0700
parents 04fee26ecce0
children
line wrap: on
line source

#ifndef MRJUNEJUNE_CONVERSATION_API_H
#define MRJUNEJUNE_CONVERSATION_API_H

#include "dowa/dowa.h"

/*
 * Guest quota policy passed from the config loader into Conversation_API_Init.
 * All fields must be validated (positive integers within supported ranges)
 * before passing; Init returns FALSE if any field is out of range.
 * Set guest_inference_enabled = FALSE to block all guest inference; TRUE to
 * allow it subject to quota.
 * request_output_tokens: per-request reservation cap; must be <= daily_output_tokens.
 */
typedef struct {
  boolean guest_inference_enabled;
  int64   daily_turns;
  int64   daily_output_tokens;
  int64   request_output_tokens;
} Conversation_API_Guest_Policy;

boolean Conversation_API_Init(
    const char                      *database_path,
    const Conversation_API_Guest_Policy *p_policy);

boolean Conversation_API_Enable_Inference(
    const char *sidecar_path,
    const char *copilot_cli_path);
void Conversation_API_Register_Routes(void);
void Conversation_API_Destroy(void);

#endif