Dulus
An AI agent for your desktop and terminal, on any model you choose. Hosted models run on Fuel, paid in $DULUS.
翻译准备中
尚未收集仓库信息。
尚未检测到更新。GitHub 发布版本后会显示在这里。
制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗Evidence-first Requirement Assistant — Find the requirement. Show the evidence. State the uncertainty.
KAIST ITM.690 2026-10-29 발표를 위한 공개 합성 데이터 데모와 실제 CCC V3.1.4/V4.1.0 PDF를 사용하는 후속 로컬 RAG를 공통 코어로 연결하는 프로젝트. 구체적 설계: CCC PDF RAG architecture. 실제 디지털키 개발에서 겪는 문서 검색·조건 해석·버전 혼동·근거 부재·지식 파편화 문제를 출발점으로 한다.
상태: A안 Clear Desk·Pretendard Web 앱, 실제 MiniSearch 검색, 근거 카드, 서버 전용 OpenRouter 어댑터와 안전한 fallback을 구현했다. 로컬 npm run dev는 http://localhost:3000에서 동작한다. 현재 Production은 v0.3.3이며 키워드/AI 검색 전환·실제 AI 답변·원문 인용·모바일 화면을 검증했다. 키워드는 모델을 호출하지 않으며, 모드 전환으로 이전 결과를 비교할 수 있다. 결과와 절차: 배포 가이드.
Public repository safety: 실제 CCC 사양 원문(배포 권한을 확인하지 않은 자료 포함), 추출 텍스트/정제본/임베딩/인덱스, OEM/사내 문서, 소스·로그, 키·고객/개인정보를 공개 저장소와 Vercel에 추가하지 않는다.
data/demo에는 독립 창작한 Synthetic/Fictional 자료만 보관한다.
**합성 데이터(Synthetic/Fictional data)**란 CCC PDF에서 문장을 추출·번역·요약·JSON으로 정리하거나 Requirement를 재작성한 정제본이 아니다. 디지털키의 공개적인 기술 개념(Owner/Friend Device, Provisioning, Key Sharing, BLE, UWB, NFC, Revocation 등)을 바탕으로 새로 창작한 가상의 요구사항과 예외·조건·버전 차이를 뜻한다.
data/demo/spec-v1.json과 spec-v2.json은 각각 16개의 가상 Requirement를 포함한다. V1/V2는 가상의 버전이며 CCC 3.1.4/4.1.0과 대응하지 않는다. 가상의 식별자, Section 구조, 수치 및 판단은 실제 CCC 규정이나 준수 기준이 아니다.data/local/ccc/에 배치하고 data/local/index/에 파생 인덱스를 생성한다. 두 경로 모두 .gitignore에서 제외되어야 한다.운영자가 제공한 Digital Key Technical Specification v4.1.0 Page 4의 LEGAL NOTICE에는 CCC의 저작권, Confidential 표시 및 구체적인 이용·제공 조건이 적혀 있다.
본 항목은 문서의 운영상 위험을 정리한 것으로 법률 의견이 아니다. 관련 설계: CCC PDF RAG architecture. 공식 안내: CCC Specification Download.
| 단계 | 구현 목표 | 상태 |
|---|---|---|
| A | 합성 규격 2개 버전(V1/V2)과 Requirement ID | 구현·원문 검사 완료 |
| B | MiniSearch 기반 요구사항 검색, 버전 필터 | 로컬 구현·검증 완료 |
| C | 정확한 문서·버전·Section·ID·원문 근거 카드 | 로컬 구현·검증 완료 |
| D | 서버 측 OpenRouter 무료 모델 답변 + 실패 시 검색 폴백 | 구현·자동 검사 및 실제 AI 답변·인용 확인; 무료 모델 변동성은 fallback 처리 |
| E | Next.js Web MVP를 Vercel에 배포 | Production v0.3.3; 핵심 live 검증 완료 |
| F | 공통 검색 코어를 사용하는 Local MCP | 다음 단계 (웹 메뉴만 disabled / Coming soon) |
이번 발표 A–E: 합성 데이터 Web RAG와 Vercel + OpenRouter 무료 모델 배포. 후속 사내 실증(F): 사용자가 보유한 CCC PDF 두 개를 data/local/ccc/에서 로컬 파싱·색인하고, Local MCP를 통해 회사에서 승인한 Codex·Claude·Gemini 에이전트에 근거를 제공한다. Ollama 설치나 별도 LLM API는 필수가 아니다. 로컬 MCP의 도구 결과가 연결된 모델에 전달될 수 있으므로, 사내 승인 범위에서만 사용한다. 개인 OpenRouter에 실제 스펙 발췌를 보내는 기능은 별도 권한 확인·명시적 허용 전까지 비활성화한다.
apps/web (Next.js + Vercel)
├─ Search UI / version selection / evidence cards
└─ POST /api/ask ─┬─ packages/spec-core (MiniSearch + citation validation)
└─ OpenRouter free LLM (server-only, optional)
↑
data/demo (synthetic V1/V2)
apps/mcp (future local stdio MCP; not implemented)
└─ will reuse packages/spec-core without cloud dependency
MiniSearch는 키워드 기반 full-text search다. 첫 버전에서는 한·영 용어 매핑과 메타데이터 검색을 사용하며, 임베딩 기반 semantic search라고 주장하지 않는다. 질문에 답할 근거가 없으면 추측하지 않는다. LLM 키가 없거나 무료 모델 호출이 실패해도 검색·원문 확인은 작동해야 한다.
.
├── README.md
├── AGENTS.md # Codex 지침: 구현 및 안전 규칙
├── PRD.md # 기능, 인터페이스, 수용 기준
├── .gitignore
├── .env.example # 비밀 값 없는 예시
├── package.json # npm workspace 최소 설정
├── apps/
│ ├── web/README.md # Next.js 앱 구현 자리
│ └── mcp/README.md # F 단계 전용 placeholder
├── packages/
│ └── spec-core/README.md # Web/MCP 공통 검색 코어 자리
├── data/demo/
│ ├── spec-v1.json
│ └── spec-v2.json
├── evals/questions.json
└── docs/decisions.md
루트 lockfile로 workspace 의존성을 고정한다. DESIGN.md는 A안·Pretendard 기준이며 비교 HTML은 고정 데이터 디자인 기록일 뿐 앱 런타임이 아니다.
Web 버전은 apps/web/package.json을 기준으로 footer 위에 표시한다. Major/Minor/Patch 증가 기준과 배포 절차는 버전 관리 정책을 따른다. 현재 배포 버전은 0.3.3이다.
Node.js 24.x, npm 11+ 필요. 키를 설정하지 않아도 실제 검색과 원문 확인이 동작한다.
npm ci
cp .env.example .env
# 루트 .env에 OPENROUTER_API_KEY 설정 (선택)
# apps/web/.env.local도 지원하며 기존 환경변수와 앱 설정이 우선
npm run dev
npm run test
npm run eval
npm run lint
npm run build
npm run test:e2e
以上为 README 的开头部分。其余内容请阅读原文。 查看完整 README ↗