Skill v1.0.0
currentLLM-judged scan95/100version: "1.0.0" name: ennoia-publish description: "Ennoia 에이전트의 운영 배포, 배포 상태 확인·중지, App 생성·수정·공유 또는 명시적인 배포/App 삭제를 요청했을 때 사용합니다. draft 저장만 요청된 경우에는 사용하지 않습니다."
Ennoia 배포와 App 관리
저장된 에이전트를 요청한 운영 상태로 전환하고 실제 결과를 확인한다.
응답 해석과 최종 안내는 공통 응답 규칙을 적용한다.
실행 범위
Ennoia MCP의 get_current_ennoia_project로 대상 그룹·프로젝트를 확인해 표시한다. 사용자 선택이 없는 auto_selected 상태에서는 배포하지 않는다. 이미 승인된 구체적 배포·App 변경은 단계마다 다시 허락을 묻지 않는다. 배포 요청이 App 공개 공유나 기존 배포 중지까지 의미하지는 않는다.
list_multi_agents/get_multi_agent로 대상 ID와 draft를 확인하고 list_multi_agent_deployments로 현재 배포를 확인한다. tool 입력은 현재 schema를 따른다. graph 수정·검증·저장이 필요한 요청은 ennoia-build-agent의 작업부터 완료한다.
배포
deploy_multi_agent에 사용자 대상, operation_id, 현재 schema의 옵션을 전달한다. 기존 배포를 중지하라는 요청이 없으면 keep_previous_running=true를 유지한다. 반환된 버전·상태와 list_multi_agent_deployments를 대조한다.
timeout 또는 응답 유실은 배포 실패 확정이 아니다. 같은 에이전트의 현재 배포부터 조회하고, 동일 요청의 재시도에는 기존 `operation_id`와 같은 payload를 사용한다. 새 ID로 중복 배포를 만들지 않는다. 무한 재시도 대신 확인된 상태와 미확인 지점을 보고한다.
사용자가 실행 검증도 요청했다면 invoke_deployed_multi_agent 또는 요청한 App 실행 경로로 실제 결과를 확인한다. 이때 backend가 제공한 API key는 도구 인자로만 사용하고 답변·파일·공유 URL에 노출하지 않는다. 배포 Ready와 업무 결과 성공은 별도로 보고한다.
invoke_deployed_multi_agent의 개인 MCP 연결은 backend가 MCP 로그인 계정의 사용자 ID를 검증해 내부 전달하는 방식으로 사용한다. 사용자에게 ID·인증 header를 요구하거나 도구 입력·Plugin 설정에 추가하지 않는다. 개인 인증이 필요한 도구라는 이유만으로 웹에서만 실행 가능하다고 단정하지 않는다. 실제 MCP_CONNECTION_REQUIRED 응답이면 개인 외부 도구 연결 오류에 따라 플랫폼 링크를 안내하고 실행 검증은 미완료로 남긴다.
App과 공개 범위
App 생성·수정·복제·공유·삭제 요청은 App 관리를 읽는다. 특정 App이 있으면 그 assistant_hash를 먼저 발견한다. 단순 에이전트 배포를 위해 App이나 공개 링크를 자동 생성하지 않는다.
새 settings_readiness·settings_field_states·settings_input_required는 실제 상세 응답에 있을 때만 사용한다. complete는 관측된 field가 충분하다는 뜻이며 원자적 PATCH·CAS가 있다는 뜻이 아니다. 이전 응답에는 새 field를 채워 넣지 않고 전체 설정 보존 여부를 제한 조회로 판단한다.
중지·삭제는 사용자 요청의 exact 대상·버전만 처리한다. 필요한 confirm=true는 서버 계약을 충족하기 위한 값이며 사용자의 실제 삭제 요청을 대신하지 않는다. stop_multi_agent_deployment와 delete_multi_agent_deployment의 선행 상태를 확인한다.
결과
프로젝트, 에이전트/App, 배포 버전·상태, 확인한 실행 결과와 변경된 공개 범위를 보고한다. 요청이 수락됐다는 사실만으로 배포·실행 완료라고 말하지 않는다.