import { db, recordAgentActivity } from '../src/feltdb'; import { activitySummary, type ActivitySummary } from '../capabilities/activity-summary'; export const activityAssistant = db.defineAgent({ name: 'activity-assistant', version: 1, description: 'Explains authorized application activity.', capabilities: [activitySummary.id], goals: ['Summarize recent authorized audit events'], constraints: { maxIterations: 1 } }); export async function runActivityAssistant(input: { organization: string; user: string }): Promise { const execution = await db.createAgentExecution(activityAssistant, 'Summarize recent activity', []); try { await db.startAgentExecution(execution); const result = await activitySummary.execute() as ActivitySummary; await recordAgentActivity({ organization: input.organization, user: input.user, assistant: 'Activity Assistant', subject: execution.executionId }); await db.completeAgentExecution(execution, execution.executionId); return result; } catch (error) { await db.failAgentExecution(execution, error instanceof Error ? error.message : String(error)); throw error; } }