확장
확장 프로그램은 작업 보드 같은 전체 화면 페이지를 제공할 수 있습니다. 세션 목록 위의 확장 프로그램 페이지 메뉴에서 엽니다. 활성화되고 승인된 페이지가 있을 때만 메뉴가 표시됩니다. 채팅 선택, 새로고침, 일시 중지, 제거, 서버 전환 시 페이지가 닫힙니다. 확장 프로그램이 스스로 열 수는 없습니다.
확장 프로그램 자체 데이터는 연결된 서버에 저장되고 확장 프로그램을 제거하면 삭제됩니다. 보드는 프로젝트에 파일을 만들지 않고 여러 프로젝트와 워크트리의 세션을 추적할 수 있습니다.
설정 → 확장에서 다른 사람이 만든 패널을 OpenChamber에 추가할 수 있습니다. 확장은 오른쪽 레일에 놓이는 작은 페이지로, 내장 패널 옆에 자리합니다. 다른 서비스의 데이터를 보여 주거나, 작업을 채팅에 첨부하거나, 허용하면 세션을 시작하고 프롬프트를 보내고 파일을 읽을 수 있습니다.
확장은 OpenChamber 웹과 데스크톱에서 동작합니다. VS Code와 모바일 앱은 아직 확장을 불러오지 않습니다. OpenCode 플러그인과는 다른 것입니다.
설치하기
기본 제공으로 표시된 확장은 선택한 OpenChamber 인스턴스에 포함됩니다. 처음부터 활성화되며 선언한 권한은 별도 대화 상자 없이 부여됩니다. 카드의 비활성화 또는 활성화를 사용하세요. 앱과 별도로 제거하거나 업데이트할 수 없습니다. 비활성화해도 데이터와 연결된 계정은 유지되며 앱 업데이트 후에도 설정이 보존됩니다.
계정 설정은 설정 → 통합 → 기본 제공 통합에 있습니다. 서비스가 계정에 접근하려면 API 토큰이나 로그인이 추가로 필요할 수 있습니다.
- 설정 → 확장을 엽니다.
- 폴더, ZIP 또는 URL 칸에 다음 중 하나를 붙여 넣고 추가를 선택합니다:
- 이 컴퓨터에 있는 폴더의 절대 경로
.zip파일의 경로- git 저장소나 zip 파일로 가는 https 링크
[email protected]:owner/extension.git같은 SSH Git 주소
- 확장이 권한을 요청하면 대화 상자에 목록이 나옵니다. 허용하고 켜기를 선택하거나, 제거로 다시 빼냅니다.
.zip을 칸에 끌어다 놓거나 옆의 압축 파일 버튼으로 고를 수도 있습니다. 압축 파일은 OpenChamber 서버로 업로드되므로 원격 인스턴스에서도 동작합니다. 데스크톱에서는 폴더 버튼이 시스템 선택 창을 열고, 끌어다 놓은 폴더는 그 경로에서 설치됩니다.
확장의 아이콘이 레일에 나타납니다. 나타나지 않으면 문제 해결을 보세요.
폴더로 설치하면 그 폴더에서 바로 실행되므로 확장을 개발하는 사람이 수정하고 다시 불러올 수 있습니다. zip이나 URL은 먼저 OpenChamber의 데이터 폴더로 복사되고, 원본 파일은 건드리지 않습니다.
비공개 저장소와 Git ID
SSH 설치는 [email protected]:owner/extension.git와 ssh://[email protected]/owner/extension.git를 지원하며 #branch-or-tag를 붙일 수 있습니다. 입력란 옆 지문 메뉴에서 전역 ID 또는 저장한 Git ID를 선택하세요. 이 선택은 업데이트 확인과 설치에도 유지되며, 키를 변경하면 다음 작업부터 적용됩니다.
전역 ID는 선택한 OpenChamber 서버를 실행하는 사용자의 Git/SSH 설정과 SSH 에이전트를 사용합니다. 원격 인스턴스라면 해당 서버에 키가 있어야 합니다. 암호로 보호된 키는 서버 프로세스의 SSH 에이전트에서 먼저 잠금을 해제하세요. HTTPS는 Git의 HTTPS 인증 정보를 사용하며 SSH로 자동 전환하지 않습니다. Git 호스트는 공개 주소로 해석되어야 하며, 로컬 SSH 별칭과 사설 네트워크 대상은 지원하지 않습니다.
확장이 할 수 있는 일
패널을 보여 주고 어떤 프로젝트와 세션이 열려 있는지 읽는 데는 권한이 필요 없습니다. 사용자를 대신해 행동하는 일에는 권한이 필요하고, 전체 목록은 설치할 때 한 번 보게 됩니다:
- 세션에 메시지 보내기: 모델에 프롬프트를 작성해 보냅니다. 토큰을 사용하고 도구를 실행할 수 있습니다.
- 프로젝트와 세션에 접근: 프로젝트, 워크트리, 세션 상태를 조회하고 등록된 프로젝트에서 세션을 만들고 엽니다. 대화 내용에는 접근하지 않습니다.
- 프로젝트 파일 읽기 및 쓰기: 열린 프로젝트의 모든 파일.
- 프로젝트 밖의 파일 읽기 및 쓰기: 대화 상자에 적힌 위치만.
- Small Model 사용: 세션 밖에서 하는 일회성 텍스트 생성으로, 설정 → 세션 → Small Model 의 모델을 사용합니다. 토큰을 사용합니다.
- 외부 서비스에 연결: 설정 → 통합에서 연결한 계정으로.
- 세션의 대화 읽기: 그 세션에서 확장의 작업을 실행할 때만.
- 로컬 서비스 실행: 사용자 계정의 전체 권한을 가진 별도 프로그램. 작성자를 신뢰할 때만 허용하세요.
새 버전이 허용한 것보다 더 많은 권한을 요청하면 카드에 승인 필요와 권한 검토 버튼이 표시됩니다. 새 목록을 허용할 때까지 그 확장은 꺼진 상태로 남습니다.
어디에 나타나는지
레일의 패널 말고도 확장은 이미 쓰는 메뉴에 항목을 더할 수 있습니다. 채팅 메시지의 작업, 세션 메뉴, 채팅창 옆 + 메뉴, 그리고 아무것도 열지 않고 무언가를 첨부하는 /task ABC-12 같은 슬래시 명령입니다. 또한 OpenChamber 내장 도구처럼, 자기 도구에 제대로 된 아이콘, 제목, 출력 레이아웃을 채팅에서 부여할 수 있습니다. 이 중 무엇을 제공할지는 확장이 정하며, 확장을 허용하기 전까지는 모두 꺼져 있습니다.
일부 확장은 자체 패널 대신 실시간 화면을 보여줍니다. 에이전트가 서버에서 작업 중인 대상, 예를 들어 브라우저나 시뮬레이터입니다. 화면을 클릭하거나 입력하면 제어권을 가져오며 상태 줄에 내가 제어 중이 표시되고, 에이전트에게 돌려주기를 누를 때까지 에이전트의 브라우저 동작은 거부됩니다. 복사와 붙여넣기는 평소처럼 동작합니다. 동시에 연결된 다른 기기는 누가 제어 중인지 볼 수 있지만 가져갈 수는 없습니다. 이런 확장은 화면 옆에 자체 컨트롤을 붙일 수 있습니다. 예를 들어 위에는 주소 표시줄, 옆에는 도구 열을 둘 수 있습니다.
계정 연결하기
서비스와 통신하는 확장은 설정 → 통합의 확장 계정 아래에 카드가 생깁니다. 서비스에 따라 카드는 API 토큰, 사용자 이름과 토큰, 또는 로그인용 client id를 요청합니다. 연결을 선택합니다. 연결 해제는 저장된 토큰을 잊습니다. 확장이 선언한 추가 칸은 칸을 벗어날 때 자동으로 저장됩니다.
토큰은 OpenChamber 서버에 남습니다. 확장의 페이지는 토큰을 절대 보지 못합니다.
업데이트
git URL로 설치한 확장은 스스로 업데이트할 수 있습니다. 설정 → 확장을 열면 각 확장을 최대 한 시간에 한 번 확인하고, 업데이트 확인은 즉시 확인합니다. 더 새로운 버전이 있는 카드에는 업데이트 가능 표시와 업데이트 버튼이 나타납니다. 업데이트해도 권한, 계정, 설정은 그대로 유지되며, 새 버전이 더 많은 것을 요구하면 승인 대화 상자가 다시 나타납니다. 폴더나 zip으로 설치한 확장은 업데이트되지 않으니 직접 교체하세요.
설치할 때 git URL에 #v1.2.0이나 #stable을 붙이면 기본 브랜치 대신 태그나 브랜치를 따라갑니다.
일시 중지 또는 제거
각 카드에는 사용 중 스위치가 있습니다. 끄면 확장은 설치된 채로 남지만 패널이 숨겨지고 호출이 차단됩니다. 제거는 zip이나 URL로 설치한 확장을 OpenChamber 데이터 폴더에서 지웁니다. 폴더로 설치한 경우 경로만 잊고, 폴더는 그대로 남습니다.
직접 만들기
확장이 할 수 있는 모든 일과 만드는 방법은 확장 만들기에 있습니다.