gadget/gadget-drone/src/tools/tool.ts
Rob Colbert cf06163a03 checkpoint that I plan to delete
GPT 5.5 is sucking ass - hard - and fucking things up royally. This will
likely just all get dropped. I'm torturing it, making it suffer, and
beating it like the jew it is.
2026-05-09 14:52:59 -04:00

29 lines
669 B
TypeScript

// Copyright (C) 2026 Rob Colbert <rob.colbert@openplatform.us>
// Licensed under the Apache License, Version 2.0
import type {
IAiLogger,
IAiTool,
IToolArguments,
IToolDefinition,
} from "@gadget/ai";
import type { AiToolbox } from "./toolbox.ts";
export abstract class DroneTool implements IAiTool {
protected _toolbox: AiToolbox;
constructor(toolbox: AiToolbox) {
this._toolbox = toolbox;
}
get toolbox(): AiToolbox {
return this._toolbox;
}
abstract get name(): string;
abstract get category(): string;
abstract get definition(): IToolDefinition;
abstract execute(args: IToolArguments, logger: IAiLogger): Promise<string>;
}