Claude Plus는 Anthropic의 Claude AI 기능과 일련의 개발 도구 세트를 결합한 고급 AI 기반 개발 어시스턴트입니다. 대화형 채팅 인터페이스를 통해 코딩부터 프로젝트 관리까지 개발자의 다양한 작업을 도울 수 있도록 설계되었습니다.
- 🧠
Claude-3.5-Sonnet과 상호작용: 고급 AI와 소통하며 아이디어를 구현하도록 요청하면 코드 파일과 폴더가 생성됩니다! - 📁
파일 시스템 조작 (File System Manipulation): Claude는 사용자의 시스템에서 파일과 폴더를 원활하게 생성, 읽기, 쓰기 및 삭제합니다. 파일 탭에서는 수정 날짜와 파일 및 폴더의 크기를 리스트 또는 그리드 뷰로 확인할 수 있습니다. - 🔍
강력한 검색 (Powerful Search): Tavily API 또는 SearXNG를 활용하여 포괄적인 검색을 수행합니다. Claude에는 검색 도구(search tool)가 내장되어 있습니다. - 💡
코드 스니펫 관리 (Code Snippet Management): 코드 스니펫을 효율적으로 강조 표시하고 관리합니다. 기존 프로젝트에 대해 궁금한 점이 있다면 프로젝트 디렉토리에 폴더를 드롭하세요. Claude가 전체 권한을 갖게 됩니다. - 📂
프로젝트 구조 관리 (Project Structure Management): 복잡한 프로젝트 구조를 쉽게 구축하고 유지 관리합니다. - 🔧
코드 분석 및 제안 (Code Analysis and Suggestions): 코드에 대한 상세한 분석과 개선 제안을 받습니다. - 🖼️
이미지 분석 (Image Analysis): AI 기반 이미지 지원을 통해 이미지를 분석하고 통찰력을 얻습니다. - ⚙️
오토모드 (Automode): 효율성과 생산성을 높이기 위해 작업을 자동화합니다. 환경 변수(env)에서 최대 반복 횟수(max iterations)를 설정하면 Claude가 해당 횟수만큼 자동으로 반복합니다. - 🔄
반복 추적 (Iterative Tracking): 오토모드 세션 동안 변경 사항과 반복 과정을 정확하게 모니터링합니다. - ✂️
Diff 기반 편집 (Diff-Based Editing): 정밀한 수정을 위해 diff 기반 기술을 사용하여 파일을 편집합니다. - 💻
새로운 콘솔 (NEW console) 기능: 터미널처럼 UI에서 명령어를 실행할 수 있습니다. UI 내에서 Python 스크립트를 실행해 보세요! - ⬇️
새로운 프로젝트 폴더 다운로드 (NEW download projects folder): 이제 생성된 모든 폴더와 파일이 포함된 프로젝트 디렉토리 전체를 UI에서 직접 다운로드할 수 있습니다.
이 애플리케이션은 Claude의 강력한 성능을 활용하여 파일 관리, 검색, 코드 분석 및 자동화를 위한 강력한 도구를 제공함으로써 개발 워크플로우 (workflow)를 향상시킵니다.
저장소 (repository) 클론:
git clone https://github.com/bigsk1/claude-plus.git cd claude-plus
백엔드 (backend) 설정:
python -m venv venv source venv/bin/activate # Windows의 경우 venv\Scripts\activate 사용 pip install -r requirements.txt
프론트엔드 (frontend) 설정:
cd frontend npm install
루트 디렉토리 (root directory)에 .env 파일을 생성하고 API 키를 추가하세요:
ANTHROPIC_API_KEY=your_anthropic_api_key
CLAUDE_MODEL=claude-3-5-sonnet-20240620
SEARCH_PROVIDER=SEARXNG # 또는 TAVILY
TAVILY_API_KEY=your_tavily_api_key # Tavily를 사용하는 경우
SEARXNG_URL=http://192.168.1.10:4000 # SearXNG를 사용하는 경우
SEARXNG_RESULTS=5 # 반환되는 검색 결과 수
MAX_ITERATIONS=5 # 자동 모드 (automode) 반복 횟수
백엔드 서버 시작:
uvicorn backend:app --host 0.0.0.0 --port 8000
새 터미널에서 frontend 폴더로부터 프론트엔드 개발 서버를 시작하세요:
cd frontend npm run dev
브라우저를 열고 다음 주소로 이동하세요:
http://localhost:5173/
Claude Plus는 개발 워크플로우를 향상시키기 위한 강력한 기능 세트를 제공합니다. 이 AI 기반 어시스턴트를 최대한 활용하는 방법은 다음과 같습니다:
Claude와 상호작용하기: 채팅 인터페이스를 사용하여 AI 개발 어시스턴트인 Claude와 소통하세요.
자연어 질의 (Natural Language Queries): 질문을 하거나, 코드 설명을 요청하거나, 모범 사례 (best practices)에 대한 조언을 구하세요.
코드 생성 (Code Generation): 필요한 기능을 설명하면 Claude가 코드 스니펫 (code snippets) 또는 파일 전체를 생성합니다.
디버깅 지원 (Debugging Assistance): 에러 메시지나 문제가 있는 코드를 붙여넣으면 Claude가 이를 분석하고 수정 사항을 제안합니다.
파일 업로드 (File Upload): Claude가 분석하거나 작업할 수 있도록 파일을 쉽게 업로드하세요. 업로드된 모든 파일은 projects/uploads에 저장됩니다.
folder.
이미지 분석 (Image Analysis): Claude가 설명하고 분석할 수 있도록 이미지를 업로드하세요. UI/UX 논의나 다이어그램 해석에 유용합니다.
코드 리뷰 (Code Review): 코드 파일을 업로드하여 Claude가 리뷰하고, 개선 사항을 제안하거나 복잡한 섹션을 설명하도록 하세요. Claude는 사용자가 추가한 파일을 읽을 뿐만 아니라, 요청 시 수정하거나 심지어 삭제할 수도 있습니다.
파일 탐색기 (File Explorer): 직관적인 파일 탐색기 인터페이스를 사용하여 UI에서 직접 프로젝트 구조를 관리하세요.
- 생성 (Create): 새로운 파일이나 폴더를 추가하여 프로젝트를 구성하세요.
- 편집 (Edit): 다양한 프로그래밍 언어에 대한 구문 강조 (Syntax Highlighting) 기능을 통해 기존 파일을 수정하세요.
- 삭제 (Delete): 프로젝트를 깔끔하게 유지하기 위해 불필요한 파일이나 폴더를 제거하세요.
- 실시간 업데이트 (Real-time Updates): 파일 탐색기의 모든 변경 사항은
projects 폴더에 즉시 반영됩니다.
자동 모드 활성화 (Activate Automode): Claude가 복잡한 작업이나 전체 프로젝트 설정에 대해 자율적으로 작업할 수 있도록 활성화하세요.
- 프로젝트 생성 (Project Generation): 프로젝트 아이디어를 설명하면 Claude가 폴더 구조, 파일 및 보일러플레이트 (Boilerplate) 코드를 생성하는 과정을 지켜보세요.
- 반복적 개발 (Iterative Development): Claude는 사용자의 지속적인 입력 없이도 여러 번의 반복을 통해 코드를 개선하고 확장할 수 있습니다.
- 진행 상황 추적 (Progress Tracking): 자동 모드에서 Claude가 작업을 수행하는 동안 진행 상황을 모니터링하세요.
- 샌드박스 환경 (Sandbox Environment): 모든 자동 모드 작업은
projects 폴더 내로 제한되어 안전한 실험을 보장합니다.
통합 검색 (Integrated Search): 채팅 인터페이스를 벗어나지 않고 웹 검색을 수행하세요.
- 다중 제공자 (Multiple Providers): SEARXNG (개인정보 보호 중심 검색) 또는 Tavily (AI 강화 결과) 중에서 선택하세요.
- 풍부한 마크다운 표시 (Rich Markdown Display): 검색 결과는 읽기 쉽고 형식이 갖춰진 마크다운 스타일로 제공됩니다.
- 문맥 인식 쿼리 (Context-Aware Queries): Claude는 더 관련성 높은 결과를 위해 대화 문맥을 기반으로 검색을 수행할 수 있습니다.
보안 샌드박스 (Secure Sandbox): 채팅 인터페이스 내에서 Python 스크립트를 직접 실행하세요.
- 출력 표시 (Output Display): 코드 실행 결과를 대화 내용과 함께 인라인으로 확인하세요.
- 대화형 디버깅 (Interactive Debugging): Claude의 안내에 따라 코드를 단계별로 실행하며 문제를 식별하고 수정하세요.
Git 명령어 (Git Commands): 채팅에서 직접 commit, push, pull과 같은 기본적인 git 작업을 수행하세요. -
커밋 메시지 지원 (Commit Message Assistance): Claude가 변경 사항을 바탕으로 의미 있는 커밋 메시지를 제안하도록 하세요. -
채팅 기록 (Chat History): 검색 가능한 채팅 기록을 통해 과거의 대화와 결정 사항을 검토하세요.
Claude Plus는 지속적으로 학습하고 개선되고 있음을 기억하세요. 다양한 접근 방식을 실험하는 것을 주저하지 마시고 여러분의 경험을 저희에게 알려주세요!
이 프로젝트에는 Docker 설정이 포함되어 있습니다.
루트(root) 디렉토리에 .env를 올바르게 설정하세요.
docker 폴더로 이동하세요 (cd into docker folder)
docker-compose up -d
프론트엔드 (Frontend): http://localhost:5173
언제든지 최신 이미지를 가져올 수 있습니다:
docker pull ghcr.io/bigsk1/claude-plus:latest
시스템에 Docker와 Docker Compose가 설치되어 있는지 확인하세요.
프로젝트 루트 디렉토리로 이동하세요.
개발 컨테이너를 빌드하고 실행하세요:
docker-compose -f docker/docker-compose.dev.yml up -d --build
애플리케이션에 접속하세요:
개발 환경 설정에는 프론트엔드와 백엔드 모두를 위한 핫 리로딩 (Hot-reloading)이 포함되어 있으며, 데이터 유지를 위해 projects 폴더를 매핑합니다.
이 프로젝트에는 VS Code의 Remote - Containers 확장을 사용한 개발 설정도 포함되어 있습니다.
-
Visual Studio Code
-
Docker Desktop
-
VS Code용 Remote - Containers 확장
-
VS Code에서 프로젝트 폴더를 엽니다.
-
프롬프트가 나타나면 "Reopen in Container"를 클릭하거나, 명령 팔레트 (F1)를 사용하여 "Remote-Containers: Reopen in Container"를 선택하세요.
-
VS Code가 개발 컨테이너를 빌드하고 컨테이너 내부에서 프로젝트가 열린 상태로 창을 다시 로드합니다.
-
Python 3.12 및 Node.js 18 사전 설치됨
-
모든 프로젝트 의존성 자동 설치됨
-
사전 구성된 린팅 (Linting) 및 포매팅 (Formatting) 도구
-
백엔드 (8000) 및 프론트엔드 (5173)를 위한 자동 포트 포워딩 (Port forwarding)
-
서로 다른 머신 간의 통합된 개발 환경
개발 컨테이너 내부로 진입하면:
- 백엔드 서버가 8000번 포트에서 자동으로 시작됩니다.
- 프론트엔드 개발 서버가 5173번 포트에서 자동으로 시작됩니다.
- 평소처럼 파일을 편집할 수 있으며, 볼륨 마운팅 (Volume mounting) 덕분에 변경 사항이 즉시 반영됩니다.
- 필요한 경우 VS Code의 통합 터미널 (Integrated terminal)을 사용하여 추가 명령어를 실행하십시오.
참고: 개발 컨테이너 (Dev container)에서 프로젝트를 처음 여는 경우, 빌드하는 데 몇 분 정도 걸릴 수 있습니다. 이후 로드 시에는 훨씬 빨라집니다.
Claude Plus에 대한 기여를 환영합니다! 이 프로젝트는 활발히 개발 중이며, 상황이 빠르게 변하여 기능이 깨지거나 버그가 발생할 수 있습니다! 기여 방법은 다음과 같습니다:
- 저장소 (Repository)를 포크 (Fork) 합니다.
- 기능 브랜치 (Feature branch)를 생성합니다 (
git checkout -b feature/AmazingFeature)
- 변경 사항을 커밋 (Commit) 합니다 (
git commit -m 'Add some AmazingFeature')
- 브랜치에 푸시 (Push) 합니다 (
git push origin feature/AmazingFeature)
- 풀 리퀘스트 (Pull Request)를 생성합니다
작성하신 기능이 의도치 않게 다른 문제를 일으키지 않도록 모든 기능을 반드시 테스트해 주세요.
이 프로젝트는 활발히 개발 중입니다. 기능이 변경될 수 있으며, 버그나 예상치 못한 동작이 발생할 수 있습니다. 운영 환경 (Production environments)에서 사용할 때는 주의하시기 바랍니다.