local-listening-analytics
Installation
SKILL.md
Local analytics with no service behind it
Two tables. activity_event records what happened; event_entity — one row per (event,
contributor) — exists only so the "top contributors" query never has to join:
@Entity("activity_event")
data class ActivityEventEntity(
@PrimaryKey(autoGenerate = true) val eventId: Long = 0,
val timestamp: LocalDateTime = now(),
val itemId: String = "", val groupId: String? = null,
val durationSecond: Long = 0, val listenedSecond: Long = 0,
)