CtrlK
BlogDocsLog inGet started
Tessl Logo

jbaruch/tui4j-chat

Build terminal chat UIs with TUI4J - Elm Architecture chat client for AI agent demos with Spring Boot integration

90

1.38x
Quality

90%

Does it follow best practices?

Impact

94%

1.38x

Average score across 3 eval scenarios

SecuritybySnyk

Advisory

Suggest reviewing before use

Overview
Quality
Evals
Security
Files

criteria.jsonevals/scenario-1/

{
  "context": "Tests whether the agent correctly sets up TUI4J with the exact Maven coordinates and version, follows the Elm Architecture Model pattern with correct imports, uses Program.withAltScreen().run() to launch, and includes a dependency verification step in the build script.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Correct groupId",
      "description": "pom.xml contains groupId 'com.williamcallahan' for the TUI4J dependency",
      "max_score": 8
    },
    {
      "name": "Correct artifactId",
      "description": "pom.xml contains artifactId 'tui4j' for the TUI4J dependency",
      "max_score": 8
    },
    {
      "name": "Correct version",
      "description": "pom.xml uses version '0.3.3' for TUI4J",
      "max_score": 8
    },
    {
      "name": "Model interface implemented",
      "description": "GreeterModel.java implements the Model interface (not an abstract class or other pattern)",
      "max_score": 8
    },
    {
      "name": "init() method",
      "description": "GreeterModel.java has an init() method returning a Command (e.g. Cursor::blink)",
      "max_score": 8
    },
    {
      "name": "update() method signature",
      "description": "GreeterModel.java has update(Message msg) returning UpdateResult",
      "max_score": 8
    },
    {
      "name": "view() method",
      "description": "GreeterModel.java has a view() method returning String",
      "max_score": 8
    },
    {
      "name": "withAltScreen()",
      "description": "Program is launched with .withAltScreen().run() — NOT Program.run() alone",
      "max_score": 12
    },
    {
      "name": "Correct bubbletea imports",
      "description": "Java source uses imports from com.williamcallahan.tui4j.compat.bubbletea.* package",
      "max_score": 8
    },
    {
      "name": "Dependency verify step",
      "description": "build-and-verify.sh includes a 'mvn dependency:resolve' command",
      "max_score": 8
    },
    {
      "name": "Textarea in update()",
      "description": "update() forwards Message to Textarea via textarea.update(msg)",
      "max_score": 8
    },
    {
      "name": "Enter key handling",
      "description": "KeyPressMessage with key 'enter' is handled to submit/process user input",
      "max_score": 8
    }
  ]
}

evals

scenario-1

criteria.json

task.md

tile.json