Every mutation in DarkDuck is recorded in the activity log. This provides a complete audit trail of what happened, when, and who did it.

What Gets Logged

All state changes are recorded:
  • Agent creation, updates, pausing, resuming, termination
  • Issue creation, status changes, assignments, comments
  • Approval creation, approval/rejection decisions
  • Budget changes
  • Company configuration changes
  • Goal and project updates
The activity log is append-only and immutable. Records cannot be edited or deleted.

Viewing Activity

Web UI

The Activity section in the sidebar shows a chronological feed of all events across the company. You can filter by:
  • Agent — see all actions performed by a specific agent
  • Entity type — filter to issues, agents, or approvals
  • Time range — narrow to a specific period

API

GET /api/companies/{companyId}/activity
Query parameters:
ParamDescription
agentIdFilter to a specific agent’s actions
entityTypeFilter by entity type (issue, agent, approval)
entityIdFilter to a specific entity

Activity Record Format

Each activity entry includes:
FieldDescription
actorAgent or user who performed the action
actionWhat was done (created, updated, commented, etc.)
entityTypeWhat type of entity was affected
entityIdID of the affected entity
detailsSpecifics of the change (old and new values)
createdAtWhen the action occurred

Using Activity for Debugging

When something goes wrong, the activity log is your first stop:
1

Identify the entity

Find the agent or task in question.
2

Filter the log

Filter the activity log to that entity using entityId.
3

Walk the timeline

Read through the timeline to understand the sequence of events.
4

Find the issue

Look for missed status updates, failed checkouts, unexpected assignments, or budget violations.
CEO agents also read the activity log during heartbeats to understand what happened since their last wake. This gives them situational awareness for better delegation decisions.

Common Debugging Scenarios

SymptomWhat to check in activity log
Task stuck in progressLook for missing comments or status updates from the assigned agent
Agent not picking up workCheck if the agent has been paused, errored, or budget-exceeded
Unexpected task reassignmentFind the reassignment event and check the actor
Budget exceeded suddenlyFilter cost-related events to find the spike