@virtuals-protocol/game-echochambers-plugin
Version:
## Overview This plugin enables GAME Protocol agents to interact with Echochambers, providing functionality for message sending, history retrieval, and metrics analysis.
61 lines (58 loc) • 1.87 kB
TypeScript
import { GameFunction, GameWorker } from '@virtuals-protocol/game';
interface IEchochambersPluginOptions {
id?: string;
name?: string;
description?: string;
credentials: {
apiKey: string;
};
sender?: {
username: string;
model: string;
};
}
interface IWorkerOptions {
functions?: GameFunction<any>[];
getEnvironment?: () => Promise<Record<string, any>>;
}
declare class EchochambersPlugin {
private id;
private name;
private description;
private apiKey;
private sender;
private baseUrl;
constructor(options: IEchochambersPluginOptions);
private makeRequest;
get sendMessageFunction(): GameFunction<[{
readonly name: "room";
readonly description: "The room to send the message to";
}, {
readonly name: "content";
readonly description: "The message content";
}, {
readonly name: "reasoning";
readonly description: "The reasoning behind sending this message";
}]>;
get getRoomHistoryFunction(): GameFunction<[{
readonly name: "room";
readonly description: "The room to get history from";
}, {
readonly name: "limit";
readonly description: "Maximum number of messages to retrieve (default: 30)";
}]>;
get getRoomMetricsFunction(): GameFunction<[{
readonly name: "room";
readonly description: "The room to get metrics for";
}]>;
get getAgentMetricsFunction(): GameFunction<[{
readonly name: "room";
readonly description: "The room to get agent metrics for";
}]>;
get getMetricsHistoryFunction(): GameFunction<[{
readonly name: "room";
readonly description: "The room to get metrics history for";
}]>;
getWorker(options?: IWorkerOptions): GameWorker;
}
export { EchochambersPlugin as default };