Dev.to · 2 min read

Claude 채팅에서 내 데스크톱의 osFoundry Graph 돌려 보기

Claude 채팅에서 내 데스크톱의 osFoundry Graph 돌려 보기

다 끝나면 Claude 채팅에서 "이번 주 KPI 정리 돌려 줘"라고 했을 때 osFoundry에 저장해 둔 Graph가 내 데스크톱에서 돈다. Graph는 분기, 병렬, 재시도를 가진 여러 단계짜리 에이전트 프로그램이다. Claude 안도 서버도 아니고 내 머신이다. Claude는 바로 접수 번호를 받고, 데스크톱이 일하는 동안 상태를 보러 오고, 끝나면 결과를 가지고 답한다. 중간에 마음이 바뀌면 Claude한테 취소시킬 수도 있다. 누가 뭘 하나 Claude osFoundry 로그인 평소 쓰는 Claude 계정 그대로 내가 승인한 연결. 프로젝트 하나에 추가해서 쓴다 보이는 것 공유된 Graph 세션의 이름, 설명, slug, 버전, 상태 Graph 프로그램, 부르는 에이전트, 파일은 데스크톱 밖으로 안 나간다 어떤 Graph list_graph_sessions 목록에서 고른다 데스크톱 앱에서 그 프로젝트용으로 체크한 세션만 실행 위치 아무 데서도 안 돌린다. 큐에 넣고 읽기만 한다 내 데스크톱이 큐에서 가져가 로컬에서 실행 기다리기 상태가 확정될 때까지 get_graph_run 호출 실행이 끝나면 크기 제한 걸린 결과를 한 번 보낸다 승인 run_graph_session 전에 Claude 자체 툴 허용 "매번 확인" 툴은 실행 중엔 거부. 누를 사람이 없어서 세팅 Claude 커넥터는 이미 있다고 치고 간다(열쇠 아이콘 → Connected → Add assistant, Claude 쪽엔 커스텀 커넥터로 https://api.osfoundry.io/api/v1/external-mcp 추가). 1. 데스크톱에 저장된 Graph 세션 준비 Graph는 기기에 있다. Maestro, 에이전트, osStudio에서 만들고 고치고, 저장하면 gs_ + 16진수 32자짜리 세션 ID가 붙는다. 목록은 데스크톱 앱 Graph 화면에서 보인다. 브라우저 버전은 Graph를 실행 못 하니까, 브라우저에서만 본 Graph는 공유할 수 없다. 예시: 저장된 Graph 세션이 보이는 데스크톱 앱 Graph 화면 2. Claude 연결을 프로젝트에 추가 열쇠 아이콘 → Connected에서 Claude 연결을 고르고, Projects에서 프로젝트를 골라 Add to project를 누른다. Claude가 Graph를 찾는 곳은 이 프로젝트뿐이다. 예시: Claude 연결의 Projects 섹션, 프로젝트 하나 추가한 상태 3. Graph 세션을 그 프로젝트에 공유 같은 Connected 탭 아래쪽에, 데스크톱 앱에서만 Share desktop Graph sessions 섹션이 있다. 내 프로젝트마다 이 기기에 저장된 Graph 세션이 체크박스로 나온다. Share desktop Graph sessions Choose the saved Graph sessions to share with each project, then enable that project. Your desktop must be open and signed in. Launch plan · workspace [ Share selected Graphs ] [x] 주간 KPI 다이제스트 [ ] 릴리스 노트 초안 예시: Share desktop Graph sessions에서 프로젝트에 세션 하나를 체크한 상태 먼저 세션을 체크하고 Share selected Graphs를 누른다. 아무것도 체크 안 하고 누르면 "Choose at least one Graph session for this project first."가 뜨고 멈춘다. 프로젝트를 공유한다고 기기의 Graph가 다 보이는 게 아니다. 세션 하나하나, 프로젝트마다 따로 정한다. 4. 데스크톱 앱은 켜 둔다 데스크톱 앱은 20초마다, 그리고 공유 설정을 바꾼 직후에 프로젝트에 쌓인 실행이 있는지 보러 간다. 앱이 꺼져 있으면 Claude 요청은 다시 켤 때까지 큐에서 기다린다. 5. Claude한테 시킨다 osFoundry Launch plan 프로젝트에 있는 "주간 KPI 다이제스트" Graph를 2026-W45로 돌려 줘. 변화가 큰 거 세 개만 알려 줘. 실제로 돌려 보면 프로젝트, Graph, 숫자는 예시다. 툴 이름과 인자 이름은 실제 서버가 tools/list로 내주는 그대로다. Claude Code에서는 mcp__osfoundry__run_graph_session 같은 이름으로 보인다. 예시 Claude → list_granted_resources {} ← 프로젝트: Launch plan Claude → list_graph_sessions {"project_id": ""} ← 주간 KPI 다이제스트 (gs_3f…, weekly-kpi-digest v3, ready) "릴리스 노트 초안"은 체크 안 해서 안 나온다 Claude → run_graph_session {"graph_session_id": "gs_3f…", "arguments": {"week": "2026-W45"}, "idempotency_key": "kpi-2026-w45-a"} [Claude가 툴 실행 허용을 묻는다 → 허용] ← command_id "8c1e…", status queued Claude → get_graph_run {"command_id": "8c1e…"} ← queued (데스크톱이 아직 안 가져감) Claude → get_graph_run {"command_id": "8c1e…"} ← running Claude → get_graph_run {"command_id": "8c1e…"} ← completed result: {"execution_id": "GR-0007L", "status": "completed", "result": {...}, "total_tokens": 18412, "reported_cost": 0.07} Claude: 45주차는 신규 가입 +18%, 체험→유료 전환율 9.1%에서 7.4%로 하락, 화요일 릴리스 이후 고객 문의가 두 배로 늘었다. 첫 get_graph_run이 queued인 건 Claude가 느려서가 아니다. 서버가 데스크톱으로 밀어 넣는 길이 없다. 데스크톱이 일을 가지러 가는 구조라서, 다음에 보러 올 때까지 실행은 그냥 기다린다. 가져간 뒤엔 Graph 화면이 쓰는 것과 같은 커맨드로 Graph를 돌리고, 끝나면 결과를 돌려보낸다. Claude가 마지막에 읽는 건 그렇게 돌아온 결과다. 실시간 스트림이 아니다. 데스크톱 쪽에서 이 실행은 Launch plan 프로젝트 소속으로 잡힌다. 실행 중 프로젝트 컨텍스트나 채팅 기록 검색도 그 프로젝트 범위 안에서만 돈다. 멈추고 싶으면 Claude가 같은 command_id로 cancel_graph_run을 부른다. 아직 queued면 그대로 취소되고 시작도 안 한다. 실행 중이면 취소 요청이 걸리고, 데스크톱이 3초마다 그걸 확인해서 돌고 있는 Graph에 전달한다. 어디까지 되나 Graph는 기기 밖으로 안 나간다. list_graph_sessions가 주는 건 이름, 설명, slug, 버전, 상태라는 메타데이터뿐이고, 스크립트도 부르는 에이전트도 건드리는 파일도 Claude한테 안 보인다. Claude가 스키마를 못 보고 arguments를 넘기는 것도 이 때문이다. 입력을 잘 채우게 하고 싶으면 Graph 설명란에 적어 두는 게 확실하다. 실행이 데스크톱인 건 Graph가 쓰는 에이전트, 로컬 모델, 폴더, 승인 설정이 다 거기 있어서다. 서버가 들고 있는 건 큐와 마지막 결과뿐이다. 데스크톱이 오프라인이면 큐에 있는 실행은 그대로 기다린다. Claude가 다른 데서 돌릴 방법은 없다. 실행 중엔 아무도 안 보고 있다는 전제다. "매번 확인"으로 둔 툴은 확인창 없이 거부된다. 아무도 답 안 하는 확인창에 몇 분 묶였다가 결국 실패하는 것보단 낫다. 확인 없는 툴은 평소대로 돈다. 손으로 승인하는 툴에 기대는 Graph라면 Graph 화면에서 직접 돌리는 게 맞다. 돌아오는 건 크기 제한이 있다. 결과는 실행 ID, 상태, 결과, 토큰 수, 보고된 비용이고, JSON으로 10만 자 안에 들어갈 때만 내용이 붙는다. 넘으면 실행 ID와 상태에 result_truncated: true만 붙어서 오고, 전체는 데스크톱 실행 기록에 남는다. 에러는 2,000자에서 자른다. 실행을 읽거나 취소할 수 있는 건 그걸 시작한 에이전트뿐이다. 다른 연결이 같은 command_id를 물어도 "Graph run not found or access removed"가 오고, 없는 ID랑 구분이 안 된다. 공유는 실행이 시작되기 전이면 언제든 거둘 수 있다. 큐에 있는 동안 체크를 풀거나 Stop sharing을 누르면, 데스크톱이 실행 전에 다시 확인해서 "Graph session is no longer shared with this project"로 취소한다. 다음에 해 볼 것 작은 Graph 하나를 공유해서 Claude한테 돌리게 하고, queued일 때 Stop sharing을 눌러 보자. Claude가 취소됐다고 보고하는 것까지 볼 수 있다. osFoundry가 애초에 일을 여러 에이전트에 어떻게 나누는지는 Maestro 오케스트레이션 페이지에, 연결 목록 자체는 Connected 페이지에 있다.

This is a summary aggregated from Dev.to. Read the complete article on the original site:

Read full article at Dev.to

More AI & Machine Learning News