원문 캡처 · symphony.q3k.app
원문 캡처 · symphony.q3k.app

Symphony는 Go 프로그램의 함수를 코드와 연결된 그래프로 보여주고, 그래프에서 코드를 수정하고 실행할 수 있는 도구다. Go 폴더를 열면 별도 설정 없이 사용할 수 있으며 Linux와 Windows용으로 제공된다.

Symphony 다운로드 · 기능 살펴보기

함수의 각 단계와 값이 그래프에 표시되고, 프로그램이 실행되는 경로는 노드와 연결선에 불이 들어오는 방식으로 나타난다. 그래프에서 노드나 연결선을 선택하면 대응하는 코드가 강조 표시된다. 연결선을 옮기거나 노드를 바꾸면 Go 파일에도 변경 사항이 반영된다. 저장 파일에는 상자 위치 정보만 추가된다.

실행 중 오류가 나면 문제가 발생한 노드를 표시하며, 조건을 지정하는 중단점도 설정할 수 있다. 테스트도 그래프로 열어 실행할 수 있고, 실패를 일으킨 노드와 오류 내용이 표시된다. 테스트가 닿지 않은 코드는 그래프에서 확인할 수 있으며, Test this function 기능은 양식을 채워 테스트를 작성한다.

호출 그래프와 main에서 이어지는 경로 목록으로 큰 코드베이스를 살펴볼 수 있다. 패키지를 섬으로 나타내는 지도와 프로젝트의 모든 함수를 검색하는 기능도 제공한다. Symphony는 액터를 Go에 더하는 언어 goer도 지원한다. 이때 시스템 보기에서 액터 간 메시지 흐름을 살펴보고 실행 중 각 액터가 가진 값을 확인할 수 있다. goer 소개

Symphony에는 Go와 goer가 포함돼 있어 별도로 설치할 필요가 없다. Claude, Codex, opencode 같은 AI 보조 도구는 모델 컨텍스트 프로토콜(MCP)을 통해 그래프에서 작업할 수 있다. 설정에서 한 번 클릭해 연결하며, 작업 포인터와 채팅 창으로 진행 상황을 볼 수 있고 Ctrl+Z로 작업을 되돌릴 수 있다. 프로젝트 시작, 모듈 추가, 실행·디버깅, Git 커밋을 시킬 수 있지만 실행이나 모듈 변경, 커밋 전에는 Symphony가 사용자에게 확인을 요청한다.

도구에는 여덟 개의 학습 과정과 퀘스트 지도, 실패하는 테스트가 포함된 여섯 개의 퍼즐이 있다. 제작사인 Earnest Ventures는 Linux에서 개발했고 Windows 빌드도 사용해 봤다고 설명한다. ARM용 빌드는 같은 파이프라인에서 나오지만 직접 실행해 보지는 않았으며, Mac용 다운로드는 없다. 그래프에서 만들 수 없는 항목을 만나면 AI 보조 도구는 우회하지 않고 멈춰 사용자에게 묻는다. 제품은 초기 단계로, 일부 기능에 거친 부분이 남아 있다. 디스크에 저장되는 코드는 일반 Go이므로 기존 편집기에서도 계속 작업할 수 있다. MIT 라이선스로 무료 제공된다.