mirror of
https://github.com/LukeHagar/better-auth.git
synced 2025-12-06 12:27:44 +00:00
48 lines
1021 B
TypeScript
48 lines
1021 B
TypeScript
import { z } from "zod";
|
|
|
|
const InkeepRecordTypes = z.enum([
|
|
"documentation",
|
|
"site",
|
|
"discourse_post",
|
|
"github_issue",
|
|
"github_discussion",
|
|
"stackoverflow_question",
|
|
"discord_forum_post",
|
|
"discord_message",
|
|
"custom_question_answer",
|
|
]);
|
|
|
|
const LinkType = z.union([InkeepRecordTypes, z.string()]);
|
|
|
|
const LinkSchema = z.object({
|
|
label: z.string().nullish(),
|
|
url: z.string(),
|
|
title: z.string().nullish(),
|
|
type: LinkType.nullish(),
|
|
breadcrumbs: z.array(z.string()).nullish(),
|
|
});
|
|
|
|
const LinksSchema = z.array(LinkSchema).nullish();
|
|
|
|
export const ProvideLinksToolSchema = z.object({
|
|
links: LinksSchema,
|
|
});
|
|
|
|
const KnownAnswerConfidence = z.enum([
|
|
"very_confident",
|
|
"somewhat_confident",
|
|
"not_confident",
|
|
"no_sources",
|
|
"other",
|
|
]);
|
|
|
|
const AnswerConfidence = z.union([KnownAnswerConfidence, z.string()]); // evolvable
|
|
|
|
const AIAnnotationsToolSchema = z.object({
|
|
answerConfidence: AnswerConfidence,
|
|
});
|
|
|
|
export const ProvideAIAnnotationsToolSchema = z.object({
|
|
aiAnnotations: AIAnnotationsToolSchema,
|
|
});
|