https://github.com/Maurdekye/orgtree/releases/latest
안녕하세요, 여러분. 또 다른 Orgtree 업데이트 시간입니다. 그리고 이번에는 큰 변화가 있습니다: 바로 Projects(프로젝트) 기능입니다!
표면적으로 보면, 프로젝트는 예상할 수 있는 기능을 수행합니다. 에이전트들이 스스로 조직화하고 협업할 수 있는 중앙 위치를 제공하는 것입니다. 하지만 Orgtree에서 프로젝트는 그 이상의 역할을 합니다. 이는 에이전트들의 계층 구조를 정리하는 방식이며, 에이전트 간의 통신에 경계를 긋고, 협력적이고 동시적인 작업을 체계적으로 관리하는 방법입니다. 또한, 에이전트들이 동시에 조정되는 것을 돕기 위한 수많은 추가 도구들을 제공합니다.
하지만 그 전에, 아직 익숙하지 않으신 분들을 위해 설명드리겠습니다. Orgtree는 제가 지난 거의 3개월 동안 지치지 않고 구축해 온 데스크톱 기반의 멀티 에이전트(multi-agent), 멀티 프로바이더(multi-provider), 멀티 계정(multi-account)을 지원하는 영구적인 시각적 오케스트레이션 시스템(visual orchestration system)입니다. 이 시스템은 사용자의 PC에서 앱 형태로 실행되며, claude, chatgpt, gemini, muse, openrouter를 포함한 여러 주요 선도 AI 프로바이더의 기존 구독 및 하네스를 통해 에이전트들이 24시간 연중무휴로 협업할 수 있도록 합니다. Orgtree가 무엇을 할 수 있는지 더 알고 싶으시다면, v4 출시 관련 게시물을 확인하거나 GitHub의 README를 살펴보시는 것을 추천합니다. 여기까지는 충분한가요? 좋습니다, 이제 본론으로 들어가 봅시다!
--- 그래서, v4.4의 프로젝트(Projects)란 무엇일까요?
간단히 말해, 프로젝트는 캔버스 위에 에이전트와 나란히 위치하는 새로운 유형의 노드입니다. 이 자체만으로는 아무것도 하지 않지만, 대신 사용자의 조직 계층 구조와 정보 저장소의 구조적 백본 역할을 합니다. 프로젝트에는 요약(이는 팀 헌장처럼 작용합니다)과 자신만의 스크래치 디렉토리가 있으며, 그 안에는 별도의 AGENTS.md 파일이 있습니다.
프로젝트를 사용하면 에이전트를 새로 만들 필요 없이 다양한 아이디어를 하위 그룹으로 정리할 수 있습니다. 또한, 프로젝트에 투입된 에이전트 한 명이 퇴역하거나(예: 주간 제한 초과로 인해 작업을 중단하게 되거나, 프로바이더를 변경하기로 결정했을 때), 그동안 작업해 온 귀중한 공유 프로젝트 정보가 손실될 걱정을 할 필요가 없습니다.
하지만 프로젝트는 그래프 상의 단순한 조직 구조 이상의 기능을 제공합니다. 프로젝트에는 수많은 추가 협업 시스템이 내장되어 있는데, 동시성 프로그래밍(concurrent programming)에 익숙하다면 친숙하게 느껴질 수도 있습니다. 이들은 단순한 협업 작업 공간을 넘어 그 목적을 확장하는 세 가지 추가 시스템을 가지고 있습니다.
메일박스 큐 (Mailbox Queue): 에이전트(agent)는 아니지만, 모든 프로젝트는 다른 어떤 에이전트와 마찬가지로 메일박스를 가집니다. '누가 이 메일을 읽나요?'라고 물을 수도 있습니다. 답은 원하는 누구든지 할 수 있다는 것입니다! 프로젝트에 속한 여러 에이전트는 '공정 큐 메일 리스너(fair queue mail listener)'를 설정하고, 자신들을 여기에 마젠타색 선으로 연결할 수 있습니다. 프로젝트가 메일을 받으면, 이 메일은 순서대로 각 리스너에게 분배되며 라운드 로빈 방식(round-robin fashion)으로 고르게 배분됩니다. 이런 방식으로 프로젝트의 받은 편지함은 분산 작업에 대한 부하 분산기(Load-Balancer) 역할을 할 수 있습니다. 또한, 메일 전송 모드를 '라운드 로빈'에서 'ACK 모드(ACK Mode)'로 전환하면, 전달된 모든 메일은 받는 에이전트가 새로운 메일을 받기 전에 완료했다는 확인 응답(acknowledgement response)을 보내도록 요구합니다. 이 설정을 활성화하면 프로젝트의 메일박스는 FIFO 큐(First-In, First-Out queue)처럼 작동할 수 있습니다.
동시성 슬롯 (Concurrency Slots): 프로젝트 설정에 들어가서 이 값을 0보다 큰 값으로 설정하면 프로젝트에 '동시성 슬롯'이 활성화됩니다. 에이전트는 이제 노란색의 '슬롯 요청(slot claim)'을 프로젝트에 등록하고, 사용 가능한 경우 큐에서 슬롯을 차지할 수 있습니다. 동시성 슬롯은 토큰 시스템과 같다고 생각할 수 있습니다. 고정된 수의 에이전트만이 동시에 토큰을 보유할 수 있으며, 나머지는 그들 뒤에 줄 서서 기다립니다. 이런 방식으로 동시성 슬롯은 단순한 세마포어(Semaphore)처럼 작동하며, RAM, CPU 사용량, 네트워크 또는 민감한 파일과 같은 제한된 자원에 대한 동시 접근을 보호하는 데 사용될 수 있습니다. 토큰 개수를 1로 설정하면 시스템은 사실상 뮤텍스(Mutex)처럼 취급되어 한 번에 단 하나의 에이전트만이 해당 자원에 접근할 수 있게 됩니다.
토큰 개수를 매우 높게 설정하면 Read/Write Lock처럼 작동할 수 있습니다: 모든 리더가 단일 토큰을 차지하고, 모든 라이터는 사용 가능한 모든 토큰을 한 번에 차지합니다. 프로젝트 이벤트(Project Events): 프로젝트 설정으로 들어가서 Project Events를 활성화하면 세 번째이자 마지막 기능이 잠금 해제됩니다. 에이전트는 자신만의 사용자 지정 "이벤트 리스너(event listener)"를 프로젝트에 등록할 수 있으며, 이는 노드를 독특한 청록색 선으로 프로젝트에 연결합니다. 언제든지 사용자나 다른 에이전트가 사용자 지정 메시지와 함께 해당 이벤트를 "발생(fire)"시킬 수 있으며, 이는 듣고 있는 모든 에이전트에게 동시에 알림을 보냅니다. 이런 방식으로 프로젝트는 Monitor처럼 기능할 수 있습니다. 추가적으로 다른 에이전트는 "리스너 워처(listen watcher)"라고 알려진 두 번째 유형의 이벤트를 설정할 수 있습니다. 일반 리스너 수가 특정 원하는 임계값을 초과하면, listen watcher 자체가 발생합니다. 여기서 한 단계 더 나아가, listen watcher가 연결된 프로젝트의 이벤트가 자동으로 트리거되도록 설정할 수 있으며, 이는 필요한 수의 에이전트가 프로젝트에 참여하는 순간 프로젝트가 이벤트를 발생시킨다는 의미입니다. 이를 Sync Barrier를 모방한다고 생각할 수 있습니다. 이해하기에는 다소 복잡할 수 있으며, 솔직히 말해 저 말고는 아무도 이 기능들 중 대부분이나 어떤 것도 사용할지 모르겠습니다. 하지만 이것은 제 도구이고, 제가 어떤 기능을 넣을지 결정할 권리가 있습니다! ...어쨌든, 프로젝트를 구축하는 과정에서 모든 사소한 세부 사항들을 올바르게 맞추는 데 너무 오랜 시간이 걸렸기 때문에, 이 버전과 함께 배포되는 수많은 추가 기능, 개선 사항 및 향상된 점들을 모았습니다: 세션 안정성 및 관리 작업 개선(Improved session stability & administrative operation): 이것은 좀 더 내부적인 수정이지만, Orgtree가 사용자가 로그아웃 상태일 때, 재부팅할 때, 또는 관리 액세스를 활성화/비활성화할 때 백그라운드에서 실행되는 방식이 철저하게 강화되고 재구축되었습니다. Orgtree는 일반적으로 작동 시 훨씬 더 견고해야 하며, 부팅부터 실행하거나, 데스크톱 기능에 접근하거나, 관리 권한 뒤에 잠긴 작업을 수행하는 것과 관련하여 많은 수동 우회 작업이 필요하지 않아야 합니다.
이상적으로는 일상생활에서 아무것도 눈치채지 못할 정도여야 합니다. 이것이 바로 핵심입니다.
에이전트 언급(Agent Mentions): 에이전트들이 이제 기록(transcript) 내에서 서로를 언급할 수 있습니다. 한 에이전트가 다른 에이전트를 응답, 메일, 티켓, 프레젠테이션 등 어떤 곳에서든 언급하면, 해당 언급은 그 에이전트로 직접 연결되는 링크로 표시됩니다. 이 링크는 클릭하거나 우클릭하여 해당 에이전트에 초점을 맞출 수 있습니다. 이제 코디네이터가 이름으로 인용한 특정 에이전트를 그래프에서 수동으로 검색할 필요가 없습니다. 단순히 클릭하면 바로 이동할 수 있습니다.
사용자 언급(User Mentions): 하지만 여기서 끝이 아닙니다. 사용자도 에이전트를 언급할 수 있습니다. 메시지 상자에 @ 기호를 입력하기만 하면 조직 내 모든 에이전트 목록이 나타나며, 이를 탭하여 자동 완성으로 사용할 수 있습니다. 또한 에이전트가 사용자님을 언급할 수도 있습니다. 어디든 @user를 입력함으로써 그들은 사용자의 주의를 끌고 해당 언급된 라인/메일/티켓/프레젠테이션 등으로 시선을 집중시킬 수 있으며, 이는 질문하거나 긴급 메일을 보낼 때와 동일합니다. 심지어 창이 비활성화되었을 때 데스크톱 알림까지 받게 됩니다.
더 많은 워치독 유형(More watchdog types): 앞서 언급된 프로젝트 관련 세 가지 새로운 유형(cyan/magenta/yellow 색상의 리스너를 워치독으로 구조화하는) 외에도, 이제 특정 패턴과 일치하는 websocket 또는 mqtt 이벤트를 감지할 수 있는 워치독이 추가되었습니다. 또한 보유한 연결을 통해 이벤트 자체를 발행(publish)할 수도 있습니다. 이는 조직을 다른 실시간 서비스와 통합하는 것을 훨씬 쉽게 만들어 줄 것입니다. 워치독은 또한 사용량 제한에 주의를 기울일 수 있게 되어, 계정이 주간 95%를 초과하는 순간 작업을 중단하도록 설정할 수 있습니다.
빠른 모드(Fast mode): Claude 및 Codex 에이전트는 특정 상황에서 'Fast' 또는 'Ultrafast' 모드를 활성화하여 요청을 더 빠른 하드웨어로 리디렉션하며, 이 경우 토큰당 추가 비용이 발생합니다. 이제 Orgtree에서 사용자의 Claude 및 Codex 에이전트에 대해 이를 활성화할 수 있습니다.
개선된 컨텍스트 메뉴(Improved context menus): 앱 전반에 걸쳐 컨텍스트 메뉴가 대폭 개선되었습니다.
이제 관련 컨텍스트 메뉴를 통해 기본적으로 거의 모든 것을 할 수 있습니다: 에이전트 고용(hire) / 은퇴(retire) / 일시 중지(halt) / 압축(compact) 등, 어떤 에이전트나 프로젝트의 어느 탭 또는 패널이든 볼 수 있고, 티켓 소유자나 발표자의 컨텍스트 메뉴 옵션도 확인할 수 있습니다. 앱 어디에서든 (언급 포함) 에이전트로 연결되는 모든 링크는 해당 에이전트의 전체 컨텍스트 메뉴를 제공하며, 마우스를 올리면 에이전트 자체에 대한 세부 정보(예: 모델, 계정, 노력 수준, 속도)가 표시됩니다. 이 기능은 익숙해지기 전까지는 크게 눈에 띄지 않다가, 나중에 '이거 없이는 어떻게 살았을까?'라고 생각하게 만드는 종류의 것입니다.
방해 금지 모드(Do Not Disturb): 메일함 속에서 길을 잃고 원래 맡았던 업무를 협업 과정에 휘말려 놓치는 경우가 많은 에이전트가 있습니다. 이제 에이전트는 자신의 차례 동안 선택적 방해 금지 모드를 활성화할 수 있습니다. 이 모드가 활성화된 동안, 받는 모든 메일은 보류되며 자동으로 전달되지 않아 작업하는 동안 평온함을 유지할 수 있습니다. 방해 금지는 에이전트의 차례가 끝날 때 자동으로 종료되며, 그 기간 동안 수집된 모든 메일이 한 번에 대량으로 배달되어 응답할 수 있게 합니다. 사용자 및 다른 에이전트는 긴급 메일을 보내 이 장벽을 우회할 수 있으며, 이는 DnD 중에도 즉시 전달됩니다. 또한, 해당 에이전트 자체는 원한다면 언제든지 수동으로 받은 편지함을 확인하여 일반 메일을 받을 수도 있습니다.
메일 태그(Mail Tags): 이제 사용자에게 전송된 메일에 여러 개의 이름 지정 태그를 첨부할 수 있습니다. 받은 편지함의 각 메일 옆에서 이 태그들을 확인할 수 있으며, 사용자가 직접 다양한 태그별로 필터링할 수도 있습니다. 정말 간단합니다. 참고로 이것은 그중 절반도 채 되지 않습니다.
또한 수십 가지의 더 작은 기능들이 추가되었습니다: 에이전트(agent) 아이콘을 클릭하여 고용하는 동안 또는 이후 데스크에서 모델을 변경할 수 있게 되었습니다. Antigravity 에이전트의 전사 기록 주석(transcript annotations)이 개선되었고, 사용 기록 그래프를 보는 컨트롤이 향상되었습니다. 작업 표시줄(taskbar)의 아이콘을 마우스 오른쪽 버튼으로 클릭했을 때 관련 옵션들이 제공됩니다. Quick chat의 설정 메뉴가 창 너비가 좁아지면 접히게 됩니다. 데스크는 마지막으로 열었던 탭을 기억합니다. 새로운 캐릭터 프리셋인 Liaison과 Developer 두 가지가 추가되었으며, 이들은 프로젝트를 통합한 새 내장 org 템플릿인 Heavy Dev Shop과 함께 사용됩니다. 모든 에이전트에 대해 최적화된 시작 지침(startup instructions)이 제공됩니다. 여러 개의 동일 유형 패널을 서로 다른 에이전트에서 동시에 열 수 있습니다. 에이전트와 프로젝트에 새로운 "팀(team)" 탭이 생겼습니다. Org 템플릿은 이제 org, agent, project 스크래치 폴더 전체에 걸쳐 AGENTS.md 파일의 사전 설정된 내용을 포함할 수 있습니다. 임시 보조 에이전트(ephemeral helper agents)는 호출이 확장될 때 실시간 전사 기록을 보여줍니다. Opencode를 사용할 때 중간 단계 조향(mid-turn steering) 기능이 추가되었습니다. 읽지 않았거나 변경된 프레젠테이션에 하이라이팅이 적용됩니다. LaTeX 렌더링 지원(argon 사용자들을 위해)이 제공됩니다. 전사는 도구 사용 및 사고 과정의 근사 출력 토큰 수를 보여줍니다. 전사의 티켓 카드에는 현재 작업 상태를 표시하기 위해 하이라이팅이 됩니다. 일회성 워치독(one-shot watchdogs)은 생성 시 조건이 이미 충족된 경우 등록하지 않고도 도구 호출로부터 즉시 해결됩니다.
관심이 있다면 변경 로그에서 읽을 내용이 훨씬 더 많습니다. 의심할 여지 없이, 이는 제가 단일 릴리스에 투입한 노력 중 가장 많은 부분을 차지하며, v3 및 v4 릴리스도 포함합니다. 이번 릴리스에는 제가 수동으로 검토하고 수정해야 했던 35개 이상의 알파 빌드가 있었습니다. 이는 이전에 발표된 빌드의 두 번째로 높은 개수보다도 두 배가 넘는 수치입니다! 저는 4.3.1을 출시한 이후부터 지속적으로 작업해 왔으며, 그것은 일주일도 더 전의 일입니다! vibe-coding 용어로 따지면, 이것은 기본적으로 1년 전체에 해당합니다 :p 이 업데이트에 제가 추가한 모든 새로운 기능들이 마음에 드셨으면 좋겠습니다.
저는 여기에 정말 많은 노력과 애정을 쏟았습니다 💜. 그리고 대부분의 기능을 사용하지 않더라도, 여러분의 작업 흐름(workflow)을 개선할 수 있는 최소한 한 가지는 찾으셨으면 좋겠습니다. 모두 즐거운 경험 되시길 바랍니다! /u/DynaBeast가 r/OpenAI에 제출했습니다 [link] [comments]