andy-stack_vaultkeeper-ai/Enums/AITool.ts
Andrew Beal f1e6619923 feat: add memory system for cross-session context retention
Add memories feature allowing AI to retain vault conventions, user preferences, and established workflows across conversation sessions. Include read-only mode option, validation requiring read-before-write, and settings UI with toggle controls.
Adjusted default search and snippet size values in plugin settings.
2026-04-04 20:04:41 +01:00

42 lines
No EOL
1.3 KiB
TypeScript

export enum AITool {
SearchVaultFiles = "search_vault_files",
ReadVaultFiles = "read_vault_files",
WriteVaultFile = "write_vault_file",
PatchVaultFile = "patch_vault_file",
DeleteVaultFiles = "delete_vault_files",
MoveVaultFiles = "move_vault_files",
ListVaultFiles = "list_vault_files",
ReadMemories = "read_memories",
UpdateMemories = "update_memories",
// only used by gemini
RequestWebSearch = "request_web_search",
// multi agent calls
ExecuteWorkflow = "execute_workflow",
SubmitPlan = "submit_plan",
CompleteTask = "complete_task",
CompleteStep = "complete_step",
SkipStep = "skip_step",
ReviseStep = "revise_step",
RevisePlan = "revise_plan",
ContinuePlanExecution = "continue_plan_execution",
CompletePlan = "complete_plan",
CancelPlan = "cancel_plan",
AskUserQuestionPlanning = "ask_user_question_planning",
AskUserQuestionExecution = "ask_user_question_execution",
Unknown = "unknown"
}
export function fromString(functionName: string): AITool {
const enumValue = Object.values(AITool).find((value: string) => value === functionName);
if (enumValue) {
return enumValue as AITool;
}
return AITool.Unknown;
}
export function isAITool(value: unknown, aiTool: AITool): value is AITool {
return value === aiTool;
}