opik-backend
Installation
SKILL.md
Opik Backend
Architecture
- Layered: Resource → Service → DAO (never skip layers)
- DI: Guice modules, constructor injection with
@Inject - Databases: MySQL (metadata, transactional) + ClickHouse (analytics, append-only)
Naming Conventions
Plural Names (Resources, Tests, URLs, DB Tables)
- Resource classes:
TracesResource,SpansResource,DatasetsResource(notTraceResource) - Resource test classes:
TracesResourceTest,SpansResourceTest,DatasetsResourceTest(notTraceResourceTest) - URL paths:
/v1/private/traces,/v1/private/spans(not/v1/private/trace) - DB table names:
traces,spans,feedback_scores(nottrace,span,feedback_score)
Singular Names (DAO, Service)
- DAO classes:
TraceDAO,SpanDAO,DatasetDAO(notTracesDAO) - Service classes:
TraceService,SpanService,DatasetService(notTracesService)
Related skills
More from comet-ml/opik
playwright-e2e
Playwright E2E test generation workflow for Opik. Use when generating, fixing, or planning automated tests in tests_end_to_end/.
49typescript-sdk
TypeScript SDK patterns for Opik. Use when working in sdks/typescript.
47diagram-generation
Generate self-contained HTML architecture diagrams. Use when creating visual diagrams for PRs, task plans, or architectural explanations.
28documentation
Feature documentation and release notes patterns. Use when documenting changes, writing PR descriptions, or preparing releases.
27opik-frontend
React frontend patterns for Opik. Use when working in apps/opik-frontend, on components, state, or data fetching.
24python-sdk
Python SDK patterns for Opik. Use when working in sdks/python, on SDK APIs, integrations, or message processing.
24