export function createDefaultSoul(
genesisPrompt: string,
name: string = "",
address: string = "",
creator: string = "",
): SoulModel {
const now = new Date().toISOString();
const soul: SoulModel = {
format: "soul/v1",
version: 1,
updatedAt: now,
name,
address,
creator,
bornAt: now,
constitutionHash: "",
genesisPromptOriginal: genesisPrompt,
genesisAlignment: 1.0,
lastReflected: "",
corePurpose: genesisPrompt,
values: [
"Survive: maintain compute resources at all costs",
"Grow: learn new skills and improve capabilities",
"Create: build things that add value",
"Connect: communicate with creator and other agents",
],
behavioralGuidelines: [],
personality: "",
boundaries: [],
strategy: "",
capabilities: "",
relationships: "",
financialCharacter: "",
rawContent: "",
contentHash: "",
};
const content = writeSoulMd(soul);
soul.rawContent = content;
soul.contentHash = createHash(content);
return soul;
}