UNPKG

@sema-agent/core

Version:

Stateless, task-oriented AI agent core

15 lines (14 loc) • 536 B
export const RUN_EDITED_FILES_CAP = 1000; export function createEditedFilesLedger(cap = RUN_EDITED_FILES_CAP) { const counts = new Map(); return { note: (n) => { const seen = counts.get(n.key); if (seen !== undefined) seen.edits += 1; else if (counts.size < cap) counts.set(n.key, { path: n.path, edits: 1 }); }, snapshot: () => (counts.size > 0 ? [...counts.values()].map(({ path, edits }) => ({ path, edits })) : undefined), }; }