30 lines
1.4 KiB
C#
30 lines
1.4 KiB
C#
using Microsoft.Extensions.AI;
|
|
using AnchorCli.Tools;
|
|
|
|
namespace AnchorCli;
|
|
|
|
internal static class ToolRegistry
|
|
{
|
|
public static List<AITool> GetTools()
|
|
{
|
|
var jsonOptions = AppJsonContext.Default.Options;
|
|
|
|
return new List<AITool>
|
|
{
|
|
AIFunctionFactory.Create(FileTools.ReadFile, serializerOptions: jsonOptions),
|
|
AIFunctionFactory.Create(FileTools.Grep, serializerOptions: jsonOptions),
|
|
AIFunctionFactory.Create(FileTools.ListDir, serializerOptions: jsonOptions),
|
|
AIFunctionFactory.Create(EditTools.ReplaceLines, serializerOptions: jsonOptions),
|
|
AIFunctionFactory.Create(EditTools.DeleteRange, serializerOptions: jsonOptions),
|
|
AIFunctionFactory.Create(EditTools.Delete, serializerOptions: jsonOptions),
|
|
AIFunctionFactory.Create(FileTools.FindFiles, serializerOptions: jsonOptions),
|
|
AIFunctionFactory.Create(FileTools.GetFileInfo, serializerOptions: jsonOptions),
|
|
AIFunctionFactory.Create(EditTools.WriteToFile, serializerOptions: jsonOptions),
|
|
AIFunctionFactory.Create(CommandTool.ExecuteCommand, serializerOptions: jsonOptions),
|
|
AIFunctionFactory.Create(EditTools.MoveFile, serializerOptions: jsonOptions),
|
|
AIFunctionFactory.Create(DirTools.RenameDir, serializerOptions: jsonOptions),
|
|
AIFunctionFactory.Create(DirTools.CreateDir, serializerOptions: jsonOptions),
|
|
};
|
|
}
|
|
}
|