Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

259 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cotea logo

코티 (Cotea)

정답이 아닌 **"방향성"**을 제시하는, 프로그래머스 코딩테스트 전용 AI 튜터 크롬 익스텐션입니다.

Java Spring Boot MySQL Chrome Extension Claude Kakao AWS

한 줄 소개

코드티처 + 코치 = 코티. 문제를 풀어주는 대신, 막힌 지점에 딱 맞는 만큼만 힌트를 줘서 스스로 사고를 진전시키게 돕습니다. (현재 Java 문제만 지원)

왜 만들었나 — 다른 AI 코딩 도우미와의 차이

코딩테스트를 독학하다 막히면 보통 둘 중 하나를 하게 됩니다 — 검색해서 답을 그대로 베끼거나, 너무 오래 붙잡고 있다가 포기하거나. 기존 AI 코딩 도우미들은 질문하면 바로 완성된 코드를 던져줘서 "학습"보다는 "정답 복사"에 가까운 사용 패턴을 유도합니다. 코티는 그 사이 지점을 겨냥합니다.

  • 묻지 않은 건 먼저 말 안 함: 오류 원인이나 최적화 방법은 사용자가 직접 물어보기 전엔 먼저 알려주지 않습니다. 답을 얻는 것보다 "무엇을 물어야 할지 스스로 판단하는 과정" 자체를 학습으로 봅니다.
  • 한 방에 정답을 주지 않는 4단계 힌트: 키워드 → 접근 방식 → 구현 순서 → 자유 질의. 지금 막힌 단계에 맞는 만큼만 개입합니다.
  • 지금 짜고 있는 코드를 기준으로 답함: 매 요청마다 사용자의 현재 코드를 함께 전달해, "일반적인 정답"이 아니라 "지금 이 코드에서 다음으로 뭘 해야 하는지"를 진단합니다.
  • 문제별 사전 전처리 메타데이터 + 통제된 지식 베이스로 근거 있는 힌트: 임베딩 기반 유사도 검색 대신, 문제별 요구 알고리즘/난이도 메타데이터(관계형 DB)와 21개 통제 카테고리로 정리된 알고리즘 지식 베이스를 정확 매칭해 프롬프트에 근거로 붙입니다 — 그럴듯한 말이 아니라 문제 특성에 맞는 힌트를 위해서입니다.

주요 기능

  • 단계별 힌트: 풀기 전(1~4단계) / 풀이 중 막힘 / 오답·시간초과 진단
  • 챗봇형 UI: 자주 나오는 질문은 버튼으로, 그 외엔 자유 텍스트로 질문
  • 문제·코드 자동 동기화: 프로그래머스 문제 페이지에서 문제 정보와 작성 중인 코드를 실시간으로 수집
  • 카카오 로그인: 카카오 OAuth로 로그인해 개인화된 학습 흐름 유지
  • RAG 기반 힌트 생성: 문제별 메타데이터 + 알고리즘 지식 베이스를 결합해 답변 생성

스크린샷

오답 원인 진단 — 런타임 에러가 왜 났는지 코드 기준으로 짚어주되, 어떻게 고칠지는 직접 생각하도록 유도합니다.

런타임 에러 원인 진단 스크린샷

단계별 힌트 — "접근 힌트"는 어떤 관점으로 문제를 봐야 할지 되묻고, "구현 힌트"는 그 관점에서 실제 알고리즘을 어떻게 구조화할지 짚어줍니다.

접근 힌트 단계 스크린샷 구현 힌트 단계 스크린샷

기술 스택

영역 기술
백엔드 Spring Boot 3.4.4 (Java 17), Spring WebFlux, Spring Data JPA
데이터베이스 MySQL (문제 메타데이터, 사용자 정보)
프론트엔드 Chrome Extension (Manifest V3) — content script / side panel
AI Anthropic Claude API (/v1/messages) — 힌트·코드 분석 핵심 엔진
로그인 Kakao OAuth 2.0
지식 베이스 정적 JSON 지식 문서 + category/subcategory 정확 매칭 (임베딩·벡터DB 미사용)
인프라 AWS EC2
대상 플랫폼 Programmers (Java)

💡 지식 베이스는 초기엔 임베딩 기반 벡터 검색(Chroma)을 검토했지만, 문서 규모(약 30개) 대비 운영 부담이 커서 category 기반 정확 매칭 방식으로 확정했습니다. 자세한 내용은 docs/vector-db-schema.md, rag/README.md 참고.

문서

문서 설명
기획서 프로젝트 개요, 일정, 범위
API 명세서 익스텐션 ↔ 백엔드 API 계약
Hint API 구현 POST /api/hint 동작 흐름
ERD 문제 메타데이터 관계형 DB 설계
벡터DB 스키마 RAG 지식 베이스 구조 및 결정 히스토리

폴더 구조

cotea/
├── docs/           # 기획, API, ERD, 벡터DB 문서
├── backend/        # Spring Boot 서버
├── extension/      # Chrome 익스텐션 (content script / background / side panel)
└── rag/            # 지식 베이스 원본 데이터 및 빌드 스크립트

Team1 — 어벤져스

김민호 김민국 윤석규 손주현
Mi-no-Kim minguk0825 skyun-ui 0cha-0cha
Mi-no-Kim minguk0825 skyun-ui 0cha-0cha
• 데이터 전처리
• RAG 지식 베이스 구축
• 문서화
• AWS
• AI/프롬프트 엔지니어링
• AWS
• AI/프롬프트 엔지니어링
• Spring Boot 백엔드
• Chrome 익스텐션 프론트엔드

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages