Skip to content

Commit

Permalink
Merge branch 'v2-develop' into v2-agent-form
Browse files Browse the repository at this point in the history
  • Loading branch information
wtfsayo committed Feb 25, 2025
2 parents b952bcd + 17da1e3 commit 4494ba3
Show file tree
Hide file tree
Showing 18 changed files with 1,917 additions and 1,019 deletions.
26 changes: 22 additions & 4 deletions .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -30,14 +30,32 @@ SOLANA_PRIVATE_KEY=
BIRDEYE_API_KEY=

# Swarm settings
COMPLIANCE_OFFICER_DISCORD_APPLICATION_ID=
COMPLIANCE_OFFICER_DISCORD_API_TOKEN=

COMMUNITY_MANAGER_DISCORD_APPLICATION_ID=
COMMUNITY_MANAGER_DISCORD_API_TOKEN=

SOCIAL_MEDIA_MANAGER_DISCORD_APPLICATION_ID=
SOCIAL_MEDIA_MANAGER_DISCORD_API_TOKEN=

COUNSELOR_DISCORD_APPLICATION_ID=
COUNSELOR_DISCORD_API_TOKEN=
COUNSELOR_DISCORD_API_TOKEN=


# Local AI Configuration
USE_LOCAL_AI=
USE_STUDIOLM_TEXT_MODELS=
USE_OLLAMA_TEXT_MODELS=

# Ollama Configuration
OLLAMA_SERVER_URL=
OLLAMA_MODEL=
USE_OLLAMA_EMBEDDING=
OLLAMA_EMBEDDING_MODEL=
SMALL_OLLAMA_MODEL=
MEDIUM_OLLAMA_MODEL=
LARGE_OLLAMA_MODEL=

# StudioLM Configuration
STUDIOLM_SERVER_URL=
STUDIOLM_SMALL_MODEL=
STUDIOLM_MEDIUM_MODEL=
STUDIOLM_EMBEDDING_MODEL=
36 changes: 21 additions & 15 deletions packages/agent/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,10 @@ import {
import { defaultCharacter } from "./single-agent/character.ts";
import { startScenario } from "./swarm/scenario.ts";

import * as fs from "node:fs";
import * as path from "node:path";
import swarm from "./swarm/index";


export const wait = (minTime = 1000, maxTime = 3000) => {
const waitTime =
Math.floor(Math.random() * (maxTime - minTime + 1)) + minTime;
Expand Down Expand Up @@ -80,8 +81,6 @@ export function parseArguments(): {
}
}



export async function createAgent(
character: Character
): Promise<IAgentRuntime> {
Expand Down Expand Up @@ -224,14 +223,27 @@ const checkPortAvailable = (port: number): Promise<boolean> => {

const startAgents = async () => {
const server = new AgentServer();

// Assign the required functions first
server.startAgent = async (character) => {
logger.info(`Starting agent for character ${character.name}`);
return startAgent(character, server);
};
server.loadCharacterTryPath = loadCharacterTryPath;
server.jsonToCharacter = jsonToCharacter;

let serverPort = Number.parseInt(settings.SERVER_PORT || "3000");
const args = parseArguments();
const charactersArg = args.characters || args.character;
let characters = [];

// Assign the character loading functions
server.loadCharacterTryPath = loadCharacterTryPath;
server.jsonToCharacter = jsonToCharacter;

// Add this before creating the AgentServer
const dataDir = path.join(process.cwd(), "data");
try {
fs.accessSync(dataDir, fs.constants.W_OK);
logger.debug(`Data directory ${dataDir} is writable`);
} catch (error) {
logger.error(`Data directory ${dataDir} is not writable:`, error);
}

if (args.swarm) {
try {
Expand Down Expand Up @@ -275,12 +287,6 @@ const startAgents = async () => {
serverPort++;
}

server.startAgent = async (character) => {
logger.info(`Starting agent for character ${character.name}`);
return startAgent(character, server);
};


server.start(serverPort);

if (serverPort !== Number.parseInt(settings.SERVER_PORT || "3000")) {
Expand All @@ -293,7 +299,7 @@ const startAgents = async () => {
};

startAgents().catch((error) => {
logger.error("Unhandled error in startAgents:", error);
logger.error("Unhandled error in startAgents:", error.message);
process.exit(1);
});

Expand Down
Loading

0 comments on commit 4494ba3

Please sign in to comment.