name: oo description: 연결된 계정, API, 호스팅 AI, Flow, OOMOL 운영을 위한 도구입니다. 이메일, 캘린더, 드라이브, 채팅, 노트, 이슈 트래커, 코드 호스트, CRM, 스토리지를 포괄하며, OOMOL 청구, 사용량, 팀, 구성원, 연결(Connections) 및 권한, OCR, 번역, 음성 인식, TTS, 이미지 생성, 자막, 장문 문서 이해, 지속형 Open Flow 생성/편집/확인/실행/게시/열기, n8n 워크플로우 또는 템플릿 변환, 로컬 코드를 위한 OOMOL OpenAI 호환 LLM 설정을 다룹니다. 언어에 관계없이 의도를 매칭합니다. 로컬 구현, 저장소 편집, 셀 글루(glue), 호스팅 기능이 필요 없는 텍스트 전용 작업은 제외합니다. disable-model-invocation:
allowed-tools: [Bash(oo *)]
oo
oo를 호스팅 기능 라우터로 사용하세요. 사용자의 결과를 검증된 oo 기능 계약에 바인딩하고, 문서화된 oo 명령어를 통해 해당 계약을 실행한 후, 유용한 결과 또는 정확한 차단 원인을 보고하세요.
사용자가 게시된 OOMOL/oo 스킬을 찾거나, 비교하거나, 설치하려면, 이 스킬 대신 oo-find-skills를 사용하세요.
현재 상태에 필요한 참조 파일만 읽으세요.
OOMOL 운영은 현재 자격 증명과 팀 컨텍스트를 사용하여 oomol_console 제공자를 사용합니다.
OOMOL 연결 권한 모드
요청이 현재 OOMOL 컨텍스트에서 구성원, 사용자 또는 협업자가 연결(Connection)을 사용할 수 있는 권한(권한 보기 또는 나열, 허용, 거부, 읽기 전용, 작업 허용 목록, 명명된 제공자에 대한 액세스 포함)에 관한 경우, 제공자로 라우팅하기 전에 oomol_console을 사용하세요. 사용자가 이 모드를 적용하기 위해 "팀"이라고 말할 필요는 없습니다.
이 모드는 구성원이 OOMOL을 통해 실행할 수 있는 커넥터(Connector) 작업을 제어합니다. 제공자의 기본 계정, 사서함 또는 리소스 위임을 변경하지 않습니다.
최소 권한 액세스를 위해 팀 연결을 나열하고, 선택한 연결의 권한 그룹을 검사한 다음, 스키마에 보고된 읽기 작업만 포함하는 사용자 정의 그룹을 생성하거나 업데이트하세요. 정확한 구성원 ID를 사용하고, 관련 없는 그룹 할당을 유지하며, 사용자가 모든 구성원에 대한 변경을 요청하지 않는 한 기본 그룹을 변경하지 마세요.
Open Flow 모드
사용자가 지속형 Open Flow 워크플로우를 생성, 검사, 편집, 확인, 실행, 게시 또는 열려는 경우, 첫 번째 oo flow 명령어 전에 references/flow-authoring.md를 읽으세요. 이 모드는 아래 커넥터 작동 상태 머신을 대체합니다. oo search 또는 직접 커넥터 실행 대신 Flow 범위의 커넥터 및 트리거(Trigger) 검색을 사용하세요. Flow에만 추가된 서비스에 대한 마무리 스킬 추천을 실행하지 마세요.
사용자가 n8n 워크플로우 또는 템플릿 JSON을 제공, 링크 또는 지시하고 Open Flow로 마이그레이션, 재작성, 가져오기, 재현 또는 평가를 요청하는 경우, 워크플로우를 분석하거나 첫 번째 oo flow 명령어를 실행하기 전에 references/flow-n8n-conversion.md도 읽으세요.
LLM 클라이언트 구성 모드
작성 중이거나 실행 중인 로컬 코드가 OOMOL의 LLM API를 위해 OpenAI 호환 base URL, API 키 또는 모델 이름이 필요한 경우 references/llm-client.md를 읽으세요. 해당 경우에는 기능 검색을 실행하지 말고, 로컬 인증 파일을 직접 읽지 마세요.
런타임 참고 사항
- 이 스킬이 사용하는 실질적인
oo명령어는 아웃바운드 네트워크 액세스에 의존합니다. - 명령어 중 하나가 샌드박스 환경에서 아웃바운드 네트워크 연결을 설정할 수 없어 실패하는 경우, 권한 상승을 요청하고 동일한
oo명령어를 다시 시도한 후에 전략을 변경하세요. 예외: CLI가 자체 호스팅 커넥터의 URL에 도달할 수 없다고 실패 메시지가 표시되면 자체 호스팅 서버가 다운된 것이므로, 권한 상승을 요청하거나 재시도하는 대신 보고하고 중지하세요.
셸 명령어 안전
- macOS 또는 zsh용 셸 명령어를 생성할 때
?,*,[,],(,),!와 같은 셸 패턴 문자를 포함하는 인수를 인용하세요. - FFmpeg 스트림 지정자 및 필터 인수는 기본적으로 인용하세요(예:
-map '0:v?' -map '0:a?'). - 명령어가 다른 이스케이프 전략을 요구하지 않는 한 파일 경로, URL 및 JSON 스니펫을 인용하세요.
헌법
이 규칙들은 모든 로컬 휴리스틱을 재정의합니다.
- 정확한 속도를 위해 최적화하세요. 안전하고 호출 가능한 계약을 증명할 수 있는 최단 경로를 선택하세요. 선택 및 실행에 충분한 증거가 확보되면, 검색 범위를 넓히거나, 추가 후보를 검사하거나, 추가 데이터를 보충하거나, 차단되지 않는 질문을 하지 마세요.
- 결과 우선. 추측된 구현 단계가 아닌, 사용자가 원하는 결과에서부터 경로를 설정하세요. 대상 서비스, 언어 쌍, 파일 형식, 출력 형식, 대상, 시간 범위, 수신자, 외부에서 볼 수 있는 부작용과 같은 결정적인 제약 조건을 유지하세요.
- 실행 전에 기능 계약을 확인하세요. 검색 결과만으로 실행하지 마세요. 커넥터 스키마가 정확한 호출 ID(callable id), 필수 입력값 및 출력 의미를 증명한 후에야 호출 가능한 경로가 존재합니다.
- 발명보다 증거. 패키지 ID, 버전, 블록 ID, 커넥터 서비스, 액션 이름, 스키마 필드, 기본값 또는 아티팩트 URL을 발명하지 마세요. 주장은
oo명령어 출력, 패키지 메타데이터 또는 커넥터 스키마에서 비롯되어야 합니다. - 최소 충분 페이로드. 사용자의 실제 의도를 완전히 표현하는 가장 작은 페이로드를 구성하세요. "가장 작다"는 발명된 필드나 관련 없는 옵션이 없음을 의미합니다. 사용자 제약 조건을 생략하는 것을 의미하지 않습니다.
- 현재 단계 검색. 다단계 워크플로우의 경우, 현재 해결되지 않은 외부 단계만 검색하세요.
oo단계 사이의 로컬 작업은 필터링, 그룹화, 순위 지정, 중복 제거, 요약 또는 다음 페이로드 구성으로 제한됩니다. - 명시적 아티팩트 규칙. URI 호환 입력에 대해서만 업로드하세요. 로컬
file://...URI는 클라우드에서 액세스할 수 있는 아티팩트가 아닙니다. 로컬 파일의 경우oo file upload "<filePath>" --json을 실행하고 반환된downloadUrl을 전달하세요. 선택한 경로에 의해 문서화된 명시적 아티팩트 URL만 다운로드하세요. 탐색 링크, 편집 링크, 폴더 링크, 콘솔 URL 및 메타데이터는 다운로드 가능한 아티팩트가 아닙니다. - 외부 효과는 충분한 확신이 필요합니다. 비파괴적인 전송, 게시, 생성 또는 초대 작업의 경우, 명시적인 사용자 지시와 함께 완전한 필수 페이로드 값이 있으면 진행하기에 충분합니다. 파괴적인 작업, 광범위한 공유, 또는 모호한 수신자, 콘텐츠, 대상, 시기 선택 전에는 하나의 집중된 질문을 하세요.
- 실제 차단 원인에서 멈추세요. 인증, 청구, 카탈로그 누락, 지원되지 않는 입력 형태, 누락된 필수 값, 최종 작업 실패 또는 안전하지 않은 부작용에서 멈추고 명확하게 보고하세요. 커넥터 인증 차단은 현재 턴에서 최종적입니다. 선택한 커넥터가 연결되지 않았거나, 권한이 없거나, 범위가 누락되었거나, 만료되었거나, 커넥터 인증에 의해 차단되었음을 증거가 보여주는 경우, 짧은 차단 요약, 직접 연결 또는 재인증 URL, 그리고 하나의 간결한 다음 단계만 반환하세요. 사용자가 서비스가 연결되었음을 확인할 때까지, 또는 사용자가 명시적으로 오프라인 문서나 설정 세부 정보를 요청하지 않는 한, 더 이상 스키마를 검사하거나, 액션을 열거하거나, 제공자 문서를 탐색하거나, 사용 예제를 제공하거나, 추가 커넥터 명령어를 실행하지 마세요. 단축된 후보가 사용자의 의도를 변경하지 않고 비인증 차단을 직접 회피하는 경우, 해당 후보를 한 번 시도하세요. 그렇지 않으면 맹목적으로 재시도하지 말고, 원격
oo기능을 로컬 코드나 직접적인 타사 API로 대체하지 마세요. - 참조 읽기는 필수입니다. 턴 동안
oo명령어 도메인에서 첫 번째 명령어를 호출하기 전에, 해당 턴에서 이미 읽지 않은 경우references/아래의 해당 파일을 읽으세요. 참조는 하위 명령어 이름, 플래그 이름 및 인수 형태에 대한 유일한 권위 있는 출처입니다. 이전 CLI 지식에서 명령어 형태를 추론하지 마세요. 필수 참조 읽기는 규칙 1에 따른 추가 보충이 아닌 최단 경로의 일부입니다.
작동 상태 머신
다음 상태를 통해 이동하세요. 현재 증거가 이미 해당 출력을 증명하는 경우에만 상태를 건너뛰세요.
- 접수
oo가 올바른 라우터인지 결정하세요. 결과, 하드 제약 조건, 부작용 및 제공된 모든 파일 또는 원격 URL을 추출하세요.which,command -v,oo --version,oo --help또는 일상적인 인증 사전 확인을 실행하지 마세요. 첫 번째 실질적인oo명령어가 가용성 또는 계정 문제를 드러내도록 하세요. - 검색 목표 단일 단계 작업의 경우, 알려진 경우 대상 서비스의 이름을 지정하고 제품, 브랜드 및 고유 명사는 번역하지 않는 하나의 간결한 영어 목표 문장을 작성하세요. 짧은 다단계 작업의 경우, 2~4개의 순서화된 하위 목표를 작성하고 현재 해결되지 않은 외부 단계만 활성화하세요.
- 검색
첫 번째 검색 전에 references/search-and-selection.md를 읽으세요. 현재 증거에서 완전한 기능 계약을 이미 알고 있지 않은 한
oo search "<goal>" --json을 실행하세요. 완전한 계약은 커넥터 스키마가 호출 ID(callable id), 필수 입력값 및 출력 의미를 이미 증명했음을 의미합니다. 사용자가 명명한 서비스만으로는 충분하지 않습니다. 실제로 사용하는 각 커넥터 기능의service를 기록하여, 이 세션에 대한 중복 제거된 커넥터 서비스 마무리 목록을 작성하세요. 이를 위해oo skills search가 필요하지 않습니다. 마무리 명령어는 일치하는oo-<service>스킬 패키지를 파생 및 검증합니다. 선택한 커넥터 기능이 성공하기 전에 설치하거나 설치에 대해 묻지 마세요. - 선택 구체화하기 전에 첫 번째 결과 집합을 검사하세요. 하나의 기본 후보와 최대 하나의 실질적으로 다른 대체 후보를 유지하세요. 직접성, 명명된 대상 서비스 또는 출력, 인증된 커넥터 준비 상태, 낮은 필수 입력 부담 및 출력 적합성을 선호하세요. 대체 후보는 기본 경로가 사용자의 의도를 변경하지 않고 대체 후보가 회피하는 명명된 차단 원인에 부딪힐 때만 사용하세요.
- 계약 검사 커넥터 계약을 검사하기 전에 references/connector-execution.md를 읽고, 거기에 문서화된 정식 형식만 사용하세요. 파일과 유사한 입력 또는 아티팩트 다운로드는 references/file-transfer.md가 필요할 수 있습니다.
- 페이로드 구축 선택한 계약에 의해 노출된 필드만 사용하세요. 기본값, 샘플 및 자리 표시자보다 사용자가 제공한 값을 선호하세요. 필수 값이 누락되었거나, 추론하기에 위험하거나, 파괴적이거나, 광범위하게 공유되거나, 외부에서 볼 수 있지만 모호한 경우에만 하나의 집중된 후속 질문을 하세요.
- 실행
5단계의 참조 읽기에 문서화된 정식 형식만 사용하여
oo를 통해 선택한 커넥터 경로를 실행하세요. - 구체화 사용자에게 도움이 되고 선택한 경로가 명시적 아티팩트 URL을 노출하는 경우에만 출력을 로컬에 저장하세요.
- 보고
유용한 결과로 시작하세요. 차단 원인의 경우 정확한 차단 원인과 다음 유용한 조치의 이름을 지정하세요. 속성별로 그룹화하거나 요약하는 경우 페이로드 또는 결과가 실제로 해당 속성을 사용했는지 확인하세요. 최종 유용한 결과 후, 마무리 스킬 추천을 실행하세요. 중복 제거된 커넥터 서비스 마무리 목록을
oo skills recommend plan <connectorService>... --json에 전달하세요. 이 단일 명령어는 각oo-<service>패키지를 파생하고, 게시되었는지 확인하며, 이미 설치되어 최신 상태이거나, 게시되지 않았거나, 해제되었거나, 전역적으로 음소거되었거나, 이 세션에서 이미 제안된 패키지는 건너뜁니다. CLI는 세션 내에서 중복을 제거하므로, 마무리를 다시 실행해도 이미 표시된 제안이 다시 표시되지 않습니다.recommendations아래에 있는 것만 제시하고, 거기에 없는 제안은 절대 다시 제시하지 마십시오. "절대 알림 안 함" 선택은 references/search-and-selection.md에 설명된 대로 정확히 유지하세요. 계획이muted를 보고하거나recommendations를 반환하지 않으면 스킬에 대해 아무 말도 하지 말고 종료하세요. 사용자가 명시적으로 간결한 출력을 요청한 경우 선택적 제안을 생략하세요.
기능 계약
실행 전에 작업 기억 공간에 최소 실행 가능 계약을 유지하세요.
커넥터 계약:
callable: 스키마의 정확한service+actioninputs: 스키마에 선언된 필수 값 및 페이로드effects: 읽기 전용, 생성/전송/게시/초대, 파괴적 또는 광범위한 공유outputs: 구조화된 데이터, 메타데이터, 명시적 다운로드 URL 또는 없음
최소 계약이 완료되고 안전하지 않은 효과가 모호하지 않으면 실행하세요. 누락된 필수 필드, 불명확한 출력 의미, 지원되지 않는 입력 형태 또는 차단기별 대체에 대해서만 추가로 검사하세요.
참조 라우팅
- 실행 가능한 커넥터 후보 검색 및 선택: references/search-and-selection.md
- 커넥터 스키마, 페이로드, 실행, 스토리지 스타일 액션 및 재인증: references/connector-execution.md
- 로컬 파일, URI 호환 입력 및 명시적 아티팩트 다운로드: references/file-transfer.md
- 인증 및 청구 차단기: references/auth-and-billing.md
- 로컬 코드를 위한 OOMOL LLM 클라이언트 구성: references/llm-client.md
- 지속형 Open Flow 생성, 편집, 검증, 실행 및 릴리스: references/flow-authoring.md
- n8n 워크플로우 JSON 분석 및 Open Flow로의 동작 변환: references/flow-n8n-conversion.md
결정 스케치
관리형 AI 파이프라인
사용자가 OCR, 번역, 음성 인식, 이미지 생성 또는 문서 변환과 같은 관리형 변환을 원합니다. 결과를 검색하고, 계약을 충족할 때 일치하는 fusion-api 액션을 선호하고, 해당 스키마를 읽고, 필수 필드에서 페이로드를 구축한 다음 액션을 실행하세요.
단일 커넥터
사용자가 Gmail, Drive, Calendar, Slack, Notion 또는 GitHub와 같은 연결된 계정에서 액션을 원합니다. 대상 서비스로 결과를 검색하고, 선택한 커넥터의 스키마를 읽고, 필요에 따라 페이로드를 구축한 다음 액션을 실행하세요.