일반 소개
Serena는 오라리오스 AI 팀이 개발한 무료 오픈 소스 프로그래밍 도구로, 깃허브에서 호스팅됩니다. 코드베이스에서 직접 작동하는 강력한 코드 도우미로 개발자가 코드를 분석, 편집 및 실행할 수 있도록 도와주며, 언어 서버 프로토콜(LSP)을 통해 의미 분석을 가능하게 하여 코드 구조를 빠르게 이해할 수 있게 해줍니다. 또한 다음과 같은 대규모 언어 모델(LLM)과 통합됩니다. Claude Serena는 개발자가 값비싼 도구 종속성에서 벗어나 실용적이고 효율적인 프로그래밍 지원을 제공하도록 설계되었습니다. 개인 개발자, 소규모 팀, 심지어 대규모 프로젝트에도 적합합니다.

기능 목록
- 시맨틱 검색: 코드의 의미에 따라 기호, 참조 또는 정의를 찾습니다.
- 코드 편집: 정확한 조작으로 코드 블록을 삽입, 교체, 삭제할 수 있도록 지원합니다.
- 명령 실행: 프로젝트에서 테스트 또는 스크립트를 실행하고 결과를 확인합니다.
- 프로젝트 개요: 디렉토리 구조와 파일 내용에 대한 요약을 표시합니다.
- 다국어 지원: 파이썬, 자바, 타입스크립트에 대한 직접 지원, 더 많은 언어에 대한 간접 지원.
- 메모리 저장: 나중에 사용할 수 있도록 분석 기록을 저장합니다.
- LLM 통합: 경유 MCP 어쩌면 Agno 프레임워크는 언어 모델과 함께 작동합니다.
- 오픈 소스 및 무료: 사용 시 API 키나 결제가 필요하지 않습니다.
도움말 사용
Serena를 설치하고 사용하는 데는 몇 가지 단계가 있지만 전반적으로 어렵지 않습니다. 다음은 핵심 기능을 설치, 구성 및 작동하는 방법에 대한 자세한 설명입니다.
설치 프로세스
- 환경 확인
Serena는 Python 3.11이 필요합니다. 터미널을 열고 입력합니다:
python --version
3.11 미만 버전을 사용 중인 경우 Python 웹사이트로 이동하여 다운로드하여 설치하세요.
- 프로젝트 다운로드
https://github.com/oraios/serena 으로 이동하여 "코드"를 클릭하고 HTTPS 링크를 복사합니다. 터미널에서 실행합니다:
git clone https://github.com/oraios/serena.git
프로젝트가 로컬로 다운로드됩니다.
- 설치 도구 자외선
Serena는 종속성을 관리하기 위해 uv를 사용합니다. 설치하려면 다음을 참조하세요: https://docs.astral.sh/uv/getting-started/installation/. 예를 들어 Linux/macOS에서 실행합니다:
curl -LsSf https://astral.sh/uv/install.sh | sh
- 종속성 설치
프로젝트 카탈로그로 이동합니다:
cd serena
기본 종속성을 설치합니다:
uv pip install -e .
Agno 프레임워크를 사용하려면 모든 종속성을 설치하세요:
uv pip install --all-extras -e .
- 구성 항목
샘플 구성 파일을 복사합니다:
cp myproject.demo.yml myproject.yml
컴파일러 myproject.yml
설정:
project_root
: 코드 경로, 예/home/user/mycode
.language
언어 유형(예python
.ignored_dirs
다음과 같은 폴더는 무시합니다..git
.
파일을 저장합니다.
활성화 방법
Serena는 MCP 서버와 Agno 프레임워크의 두 가지 주요 사용 유형을 지원합니다.
MCP 서버(Claude 데스크톱 포함)
- Claude 데스크톱 설치
Windows 및 macOS의 경우 https://claude.ai/download 에서 다운로드하세요. - MCP 구성
클로드 데스크톱을 열고 "파일 > 설정 > 개발자 > MCP 서버 > 구성 편집"으로 이동하여 다음을 편집합니다.claude_desktop_config.json
추가:
{
"mcpServers": {
"serena": {
"command": "/path/to/uv",
"args": ["run", "--directory", "/path/to/serena", "serena-mcp-server", "/path/to/myproject.yml"]
}
}
}
최고 사령관(군) /path/to/uv
노래로 응답 /path/to/serena
실제 경로로 바꾸고, Windows 사용자는 이중 백슬래시(\)를 주의하세요.
- 활성화(플랜)
클로드 데스크톱을 저장하고 다시 시작하면 인터페이스에 세레나 도구(작은 망치 아이콘이 있는)가 표시됩니다.
Agno 프레임워크
- UI 설치하기
Agno UI를 다운로드하세요:npx create-agent-ui@latest
또는 수동 복제를 사용하세요:
git clone https://github.com/agno-agi/agent-ui.git cd agent-ui pnpm install pnpm dev
- 구성 환경
Serena 디렉터리에서 다음을 복사합니다..env.example
때문에.env
유료 모델을 사용하는 경우 API 키를 입력합니다(유료 모델을 사용하는 경우). - 아그노를 시작합니다.
Serena 카탈로그에서 실행합니다:uv run python scripts/agno_agent.py
Claude는 기본적으로 사용되며 스크립트에서 다른 모델로 변경할 수 있습니다.
- UI 연결하기
브라우저에서 Agno UI를 열고(보통 http://localhost:5173) Agno 에이전트에 연결합니다.
핵심 기능 작동
시맨틱 검색
특정 함수에 대한 참조를 찾으려고 합니다:
- 클로드 또는 아그노 인터페이스에 '찾기'와 같은 요청을 입력합니다.
my_function
표창장을 받았습니다." - 세레나, 전화해 주세요.
find_symbol
함수의 정의와 참조 위치를 반환합니다.
코드 편집기
새 코드를 삽입합니다:
- 비용 또는 지출
read_file
문서 보기:read_file path/to/file.py
- 비용 또는 지출
insert_at_line
예를 들어 5번째 줄에 코드를 추가합니다:insert_at_line path/to/file.py 5 'print("Test")'
- 파일을 확인하여 변경 사항을 확인합니다.
명령 실행
테스트를 실행합니다:
- 입력:
execute_shell_command 'pytest tests/'
- Serena가 실행하고 결과를 반환합니다. 문제가 발생하면 해결 방법을 제안합니다.
주요 기능 작동
프로젝트 개요
코드의 구조를 빠르게 이해하세요:
- 입력:
get_dir_overview
- Serena는 디렉토리에 있는 파일과 최상위 심볼을 반환합니다.
자동화된 분석 및 권장 사항
문제 분석하기:
- 다음을 사용하여 테스트를 실행한 후
think_about_collected_information
::think_about_collected_information
- Serena는 로그 또는 출력을 기반으로 수정 사항을 제안합니다.
주의
- 경로 문제: 상대 경로 오류를 방지하려면 절대 경로를 사용합니다.
- 안전: 아그노 모드.
execute_shell_command
확인은 필요하지 않습니다. 조심해서 다루세요. - 로그(컴퓨팅)로깅 창을 활성화합니다(
myproject.yml
투자 관리show_logs: true
)를 사용하여 쉽게 디버깅할 수 있습니다. - 버전 관리: 우발적인 손실을 방지하기 위해 Git에서 코드를 관리하는 것이 좋습니다.
이 단계를 통해 Serena를 쉽게 사용하고 프로그래밍 효율성을 높일 수 있습니다.
애플리케이션 시나리오
- 빠른 버그 수정
테스트가 실패하면 Serena가 스크립트를 실행하고 로그를 분석하여 긴급 수정에 적합한 코드 변경 사항을 제안합니다. - 오픈 소스 프로젝트에 대해 알아보기
Serena를 사용하면 익숙하지 않은 코드베이스를 분석하여 구조에 대한 개요를 생성하고 핵심 로직을 빠르게 파악할 수 있습니다. - 프로토타이핑
개별 개발자는 Serena를 사용하여 코드를 삽입하고, 테스트를 실행하고, 아이디어를 빠르게 검증할 수 있습니다.
QA
- 세레나는 완전히 무료인가요?
예, 오픈 소스이며 구독이 필요하지 않습니다. 클로드 프리 에디션과 같은 무료 LLM과 함께 사용하세요. - 어떤 언어가 지원되나요?
파이썬, 자바, 타입스크립트에 대한 직접 지원. 루비, 고, C#에 대한 간접 지원(수동 구성 필요, 완전 테스트 완료되지 않음). - 대규모 프로젝트는 어떻게 처리하나요?
Serena는 LSP로 코드를 효율적으로 분석합니다. 권장 구성ignored_dirs
불필요한 폴더는 무시하세요.
© 저작권 정책
기사 저작권 AI 공유 서클 모두 무단 복제하지 마세요.
관련 문서
댓글 없음...