CtrlK
BlogDocsLog inGet started
Tessl Logo

oh-my-ai/discovery-interview

Interactive discovery interview → structured product spec. Triggers: spec, PRD, requirements, scoping, brainstorming, new project. Uses AskUserQuestion; WebSearch/WebFetch when user wants research. Outputs user stories, acceptance criteria, constraints.

99

2.28x
Quality

100%

Does it follow best practices?

Impact

96%

2.28x

Average score across 3 eval scenarios

SecuritybySnyk

Advisory

Suggest reviewing before use

Overview
Quality
Evals
Security
Files

criteria.jsonevals/scenario-3/

{
  "context": "Tests whether the agent produces a correctly structured spec using the SPEC_TEMPLATE.md format, performs proper implementation handoff via AskUserQuestion, and covers all required completeness areas before writing the spec.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Executive Summary present",
      "description": "The spec file contains an 'Executive Summary' section with 2-3 sentences summarizing what is being built, for whom, and why",
      "max_score": 5
    },
    {
      "name": "Problem Statement present",
      "description": "The spec file contains a 'Problem Statement' section describing the problem, current pain points, and motivation",
      "max_score": 5
    },
    {
      "name": "Success Criteria present",
      "description": "The spec file contains a 'Success Criteria' section with measurable outcomes",
      "max_score": 5
    },
    {
      "name": "User Personas present",
      "description": "The spec file contains a 'User Personas' section describing who uses the system and their goals",
      "max_score": 5
    },
    {
      "name": "User Journey present",
      "description": "The spec file contains a 'User Journey' section with step-by-step flow of the core experience",
      "max_score": 5
    },
    {
      "name": "P0/P1/P2 requirements",
      "description": "The Functional Requirements section is divided into at least Must Have (P0), Should Have (P1), and Nice to Have (P2) sub-sections",
      "max_score": 10
    },
    {
      "name": "Technical Architecture present",
      "description": "The spec file contains a 'Technical Architecture' section covering at minimum: data model, system components, and security model",
      "max_score": 10
    },
    {
      "name": "Out of Scope section",
      "description": "The spec file contains an explicit 'Out of Scope' section listing what is NOT being built",
      "max_score": 5
    },
    {
      "name": "Appendix with research",
      "description": "The spec file contains an 'Appendix' or 'Appendix: Research Findings' section (even if brief or noting no external research was done)",
      "max_score": 5
    },
    {
      "name": "Handoff question in log",
      "description": "The interview_log.md contains a final handoff question (Phase 7) with options for next steps such as: start implementation, plan implementation, or review spec",
      "max_score": 15
    },
    {
      "name": "Summary confirmed before spec",
      "description": "The interview_log.md shows the interviewer summarizing their understanding and the user confirming before the spec file is generated",
      "max_score": 10
    },
    {
      "name": "Completeness check documented",
      "description": "The interview_log.md shows an explicit completeness check covering all four areas: Problem, UX, Technical, and Decisions — before generating the spec",
      "max_score": 10
    },
    {
      "name": "Spec docs/specs/ path",
      "description": "The spec file is located at docs/specs/<filename>.md (the docs/specs/ directory is created if needed)",
      "max_score": 5
    },
    {
      "name": "Uncertainty option in all questions",
      "description": "Every question in interview_log.md includes at least one option for uncertainty or deferral (e.g., 'I'm not sure', 'Research this')",
      "max_score": 5
    }
  ]
}

evals

CATEGORIES.md

SKILL.md

SPEC_TEMPLATE.md

tile.json