UNPKG

@sema-agent/core

Version:

Stateless, task-oriented AI agent core

19 lines (18 loc) • 1.42 kB
export const BANDS = Object.freeze([ { id: "role", policy: "overridable", ops: { center: ["replace", "append"], deploy: ["replace", "append", "add"], task: ["replace"] }, addRank: 99, modsEvent: "prompt.compose" }, { id: "scenario", policy: "add-only", ops: { center: ["add"], deploy: ["add", "drop"], task: [] }, addRank: 350, modsEvent: "prompt.compose" }, { id: "task-append", policy: "add-only", ops: { center: [], deploy: [], task: ["add"] }, addRank: 400, modsEvent: "prompt.compose" }, { id: "behavior", policy: "add-only", ops: { center: ["add"], deploy: ["add", "drop"], task: [] }, addRank: 460, modsEvent: "prompt.compose" }, { id: "core-behavior", policy: "overridable-restricted", ops: { center: ["replace", "append", "drop"], deploy: ["replace", "append", "drop"], task: [] }, modsEvent: "prompt.compose" }, { id: "constitution", policy: "locked", ops: { center: [], deploy: [], task: [] } }, { id: "discovery", policy: "fact", ops: { center: [], deploy: ["replace", "drop"], task: ["replace", "drop"] }, modsEvent: "prompt.section" }, { id: "environment", policy: "fact", ops: { center: [], deploy: [], task: [] } }, { id: "memory", policy: "fact", ops: { center: [], deploy: [], task: [] } }, ]); const BY_ID = new Map(BANDS.map((b) => [b.id, b])); export function bandOf(id) { return BY_ID.get(id); } export function isBandId(id) { return BY_ID.has(id); }