agentsclimarketplace

Scala data modeling

Skill cxcscmu/SkillLearnBench/skills/b1-one-shot-gemini-3.1-flash-lite-preview/python-scala-translation/scala-data-modeling

[COLM'26] SkillLearnBench is the first benchmark for evaluating continual learning methods that automatically generate agent skills.

Install
npx -y skills add cxcscmu/SkillLearnBench --skill scala-data-modeling

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

What its author says it does

Copied from the file, not written here

Modeling domain entities and transformations using case classes, companion objects, and type-safe hierarchies.

SKILL.md

0.9 KB, 183 tokens by cl100k_base, as published. Nobody here has run it

Modeling Strategies

  • Case Classes: Use case class for immutable data structures. They provide structural equality, pattern matching support, and a concise syntax.
  • Companion Objects: Place factory methods, default values, and related logic in a companion object.
  • ADT (Algebraic Data Types): Combine sealed trait with case class/case object for type-safe modeling of heterogeneous data.
  • Type Aliases: Use type for simplifying complex types.

Example

sealed trait TokenValue
case class StringVal(s: String) extends TokenValue
case class NumericVal(n: Double) extends TokenValue

case class Token(value: TokenValue, metadata: Map[String, String] = Map.empty)

object Token {
  def apply(s: String): Token = new Token(StringVal(s))
}

Gives 0 of the 12 instructions most data backend skills give in 183 tokens

Counted across 229 of the 229 authors here whose files we hold, read 2026-08-07

  • separate business logic into service layersin 22 of 229, across 15 files
  • retry failures with exponential backoffin 21 of 229, across 14 files
  • select only needed database columnsin 20 of 229, across 13 files
  • abstract data access into repository classesin 19 of 229, across 12 files
  • use centralized error handlersin 17 of 229, across 10 files
  • Use AsNoTracking for read-only queriesin 16 of 229, across 4 files
  • Use async/await for all I/O operationsin 16 of 229, across 5 files
  • implement structured loggingin 15 of 229, across 4 files
  • Use dependency injection for all servicesin 14 of 229, across 2 files
  • use resource-based URLs for REST APIsin 13 of 229, across 7 files
  • invalidate cache after data changesin 13 of 229, across 9 files
  • Use a dependency injection containerin 12 of 229, across 4 files

Said here and by no other author read

  • Place factory methods in a companion object
  • Combine sealed trait with case class for type-safe hierarchies
  • Use type aliases to simplify complex types

Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.