node-agency
Version:
A node package for building AI agents
61 lines • 1.68 kB
TypeScript
import { Agent } from "./agent";
import { Task } from "./task";
import { Model as OpenAIModel } from "./models/openai";
import { Model as ClaudeModel } from "./models/claude";
type MemoryTrue = {
memory: true;
};
type MemoryFalse = {
memory: false;
};
type MemoryNotSet = {
memory?: undefined;
};
type ProcessHierarchical = {
process: "hierarchical";
};
type ProcessSequential = {
process: "sequential";
};
type ProcessNotSet = {
process?: undefined;
};
type AgencyProps = {
agents: ReturnType<typeof Agent>[];
tasks: ReturnType<typeof Task>[];
llm?: OpenAIModel | ClaudeModel;
process?: "sequential" | "hierarchical";
memory?: boolean;
humanFeedback?: boolean;
outFile?: string;
selfReflect?: boolean;
} & ((MemoryTrue & {
resources?: string[];
}) | (MemoryFalse & {
resources?: never;
}) | (MemoryNotSet & {
resources?: never;
})) & ((ProcessHierarchical & {
llm: OpenAIModel;
}) | (ProcessSequential & {
llm?: never;
}) | (ProcessNotSet & {
llm: OpenAIModel;
}) | (ProcessHierarchical & {
llm: ClaudeModel;
}) | (ProcessNotSet & {
llm: ClaudeModel;
}));
type UserMessage = {
role: "user" | "assistant";
content: string;
};
type HistoryItem = UserMessage;
export type History = HistoryItem[];
export declare const Agency: ({ agents, tasks, llm, process, memory, resources, humanFeedback, outFile, selfReflect, }: AgencyProps) => {
kickoff: () => Promise<string>;
execute: (prompt: string, history?: History) => Promise<string>;
executeStream: (prompt: string, history?: History) => Promise<AsyncIterableIterator<string>>;
};
export {};
//# sourceMappingURL=agency.d.ts.map