OutcomeCI

공식

팀의 도구 전반에 걸쳐 에이전트 기반 워크플로우를 생성, 검증, 관리하세요.

OutcomeCI MCP(으)로 무엇을 할 수 있나요?

  • 워크플로우 계획 초안 작성 — AI에게 요청을 읽고 draft 도구를 사용하여 단계별 계획을 제안하도록 하세요.
  • 토론을 통해 계획 다듬기 — 승인할 때까지 discuss를 통해 AI와 계획을 반복적으로 조정하세요.
  • 승인된 변경 사항 실행 — 설정된 권한 내에서 implement를 사용하여 합의된 계획을 구현하도록 AI에 지시하세요.
  • 결과 보고 — AI에게 PR 링크와 같은 결과를 announce로 원래 대화 스레드에 게시하도록 요청하세요.
  • 실행 추적 검토 — 각 워크플로우 단계가 호출한 내용, 반환한 내용, 거부된 내용에 대한 요약을 요청하세요.

호스팅형 MCP 서버

npx add-mcp 'https://api.outcomeci.com/v1/mcp'

Claude Code, Codex, Cursor 등에 설치됩니다

문서

워크플로를 설명하세요. 함께 만들어 보세요.

즐겨 사용하는 에이전트를 OutcomeCI에 연결하고 원하는 작업을 설명하세요. 단계, 도구, 승인을 함께 구성한 다음 OutcomeCI가 워크플로를 실행하도록 하세요.

draft

요청과 저장소를 읽고 스레드에서 계획을 제안합니다.

discuss

요청자가 승인할 때까지 요청자와 피드백을 주고받으며 계획을 다듬습니다.

implement

워크플로의 권한 범위 내에서 합의된 변경 사항을 적용합니다.

announce

결과를 대화가 시작된 곳으로 다시 가져옵니다.

에이전트와 함께 빌드하기

Slack 요청을 풀 리퀘스트로 전환하는 워크플로를 만드세요. 요청자와 계획을 논의하고 변경 전에 승인을 기다리세요.

  1. 01 draft 에이전트 단계
  2. 02 discuss 인간 승인
  3. 03 implement 에이전트 단계
  4. 04 announce 에이전트 단계

워크플로를 함께 검토하세요. 작업이 도착하면 OutcomeCI가 실행합니다.

전체 워크플로 보기

apiVersion: outcomeci.workflow/v1
name: slack-to-pull-request

trigger:
  webhook: {uses: slack, auth: secrets.slack_signing, events: [mention, dm]}

secrets:
  slack: vault:slack/bot-token
  slack_signing: vault:slack/signing-secret
  github: vault:github

apis:
  slack: {uses: slack, auth: secrets.slack}
  github: {uses: github, auth: secrets.github}

reasoning:
  default: {runner: codex}

steps:
  - draft:
      reason: >
        Read the repositories named in the request. Draft a plan with
        a section per repository and post it in the request's thread.
      from: trigger
      can:
        - github.read
        - slack.post: {channel: trigger.channel, thread_ts: trigger.ts}
      returns:
        plan: {summary, repos: [{repo: {owner, name}, steps: [string]}]}

  - discuss:
      with: draft.plan
      converse: slack.thread(draft.calls.slack.post)
      by: trigger.user
      until: converged
      max_turns: 12
      returns: [plan, status]

  - implement:
      when: discuss.status == "converged"
      for_each: discuss.plan.repos as target
      reason: Implement the approved plan and open one pull request.
      with: [discuss.plan, target]
      can:
        - github.write: {repo: target.repo}
      policy: "One branch, one PR, only files the plan needs. No force-push."
      returns:
        pr?: {url, number: int, branch}
        reason?: string

  - announce:
      with: [implement, discuss.plan]
      reason: Reply in the original thread with each PR link or the reason no PR was opened.
      can:
        - slack.post: {channel: trigger.channel, thread_ts: trigger.ts}

워크플로 형식 살펴보기

계획을 구체화하세요. 그런 다음 승인하세요.

사람이 안내하고, 검토하고, 승인할 지점을 결정하세요. 각 단계에 에이전트 권한을 명확히 부여하고 설정한 경계 내에서 변경 사항을 유지하세요.

  • 각 단계의 권한

    각 단계가 수행할 수 있는 작업과 접근할 수 있는 리소스를 선택하세요. 부여된 범위를 벗어난 호출은 거부됩니다.
  • 변경 전 정책 검토

    단일 브랜치, 단일 PR과 같은 규칙을 추가하세요. 정책 검토자가 제안된 변경 사항을 전송 전에 확인합니다.
  • 자격 증명은 Vault에 유지

    OutcomeCI는 API 호출에 자격 증명을 첨부합니다. 에이전트는 토큰을 받지 않고 권한 부여를 통해 작업합니다.

# product-engineering

OutcomeCI 앱

활동 페이지에 CSV 내보내기를 추가하고 테스트를 포함하겠습니다.

Maya

필터링된 결과만 내보내고 기존 열 순서를 유지하세요.

OutcomeCI 앱

계획을 업데이트했습니다: 현재 열 순서로 필터링된 결과를 내보내고 둘 다에 대한 테스트를 포함합니다. 진행해도 될까요?

승인 대기 중인 수정된 계획

Jordan

좋습니다. 진행하세요.

구현 권한

저장소

acme/console

부여

github.write

정책

단일 브랜치. 단일 PR. 강제 푸시 금지.

자격 증명

브로커가 첨부

추적 가능한 실행 환경.

모든 실행은 첫 번째 도구 호출부터 최종 결과까지 검사할 수 있는 기록을 남깁니다.

각 단계가 무엇을 호출했는지, 무엇이 반환되었는지, 무엇이 거부되었는지와 그 이유를 확인하세요. 결과에 도달할 때까지 작업을 따라가 보세요.

실행 및 정책 검토 살펴보기

slack-to-pull-request

완료됨 5회 API 호출 · 1회 거부

01 github.read acme/console 확인됨

활동 페이지와 기존 테스트를 읽었습니다. 저장소 내용이 초안 단계로 반환되었습니다.

02 slack.post #product-engineering / 원본 스레드 확인됨

필터링된 결과와 기존 열 순서를 포함한 수정된 CSV 내보내기 계획을 게시했습니다. 메시지 수신 확인은 승인에 사용된 대화를 식별합니다.

03 github.write 강제 푸시 제안 거부됨

정책 검토가 제안된 강제 푸시를 거부했습니다. 정책은 새 브랜치 하나와 PR 하나를 허용하며 강제 푸시는 금지합니다. 이 요청은 GitHub로 전송되지 않았습니다.

04 github.write acme/console / 풀 리퀘스트 #142 확인됨

승인된 CSV 내보내기를 위해 새 브랜치에서 풀 리퀘스트를 열었습니다. GitHub가 PR 번호와 URL을 반환했습니다.

05 slack.post #product-engineering / 원본 스레드 확인됨

풀 리퀘스트 링크와 요약을 원본 스레드에 게시했습니다. Slack이 메시지 수신 확인을 반환했습니다.

결과가 Slack 스레드로 반환됨호출을 펼쳐 검사

워크플로는 유지하세요. 에이전트나 모델은 변경하세요.

워크플로를 OutcomeCI 또는 저장소에 유지하세요. 각 단계의 에이전트와 모델을 선택하고 로컬 또는 클라우드에서 실행하세요.

에이전트

  • Codex
  • Claude Code
  • OpenCode

기본값을 설정하고, 단계를 재정의하거나, 사용량 제한에 대한 대체를 추가하세요.

에이전트 구성

모델

  • OpenRouter
  • LiteLLM

이미 보유한 모델 접근 권한을 가져오세요. 워크플로 또는 단계별로 모델을 선택하고 오케스트레이션을 단일 제공업체에 묶지 마세요.

모델 선택

실행 환경

로컬OutcomeCI 클라우드

동일한 워크플로 형식과 러너 이미지. 각 환경에 맞게 구성된 자격 증명.

로컬 실행 살펴보기

즐겨 사용하는 에이전트로 시작하고 싶으신가요?

MCP로 OutcomeCI에 연결하고 워크플로를 함께 만드세요.

MCP 서버 URL

https://api.outcomeci.com/v1/mcp

에이전트 연결

공식 설정 가이드:OpenCode ↗ Claude Code ↗ Codex ↗

내 컴퓨터에서 시작하고 싶으신가요?

Docker와 에이전트 로그인으로 로컬에서 테스트하세요. OutcomeCI 계정이 필요 없습니다.

$ pipx install outcomeci-cli

퀵스타트 따라하기

하나의 워크플로는 시작에 불과합니다.

이벤트, 일정 또는 요청에서 시작하세요. 각 작업에 필요한 도구, 에이전트, 승인을 함께 모으세요.

알림 → 조사 → 검토

수신 알림 분류

수신 웹훅에서 시작하여 문제를 조사하고 변경 전 검토를 위해 수정 제안을 제시하세요.

알림 워크플로 살펴보기

요청 → 연구 → 답변

저장소 질문에 답변

에이전트에게 관련 코드에 대한 읽기 전용 접근 권한을 부여하고 질문한 사람에게 답변을 가져오세요.

읽기 전용 워크플로 만들기

일정 → 요약 → 업데이트

아침 업데이트 준비

저장소 활동을 수집하고 변경 사항을 요약한 다음 선택한 일정에 따라 업데이트를 공유하세요.

예약된 워크플로로 시작

이벤트로 시작 Slack · Webhook · 이메일 · 일정 · CLI

도구 연결 오픈소스 커넥터 살펴보기 ↗

자주 묻는 질문

OutcomeCI는 코딩 워크플로 전용인가요?

아니요. OutcomeCI는 에이전트 워크플로를 위한 오케스트레이션 프레임워크입니다. 원하는 작업을 중심으로 트리거, 단계, 도구, 승인을 정의하세요. 풀 리퀘스트 워크스루는 한 가지 예시이며, 워크플로는 질문 조사, 활동 요약, 지원되는 커넥터를 통한 작업 수행도 가능합니다.

어떤 에이전트와 모델을 사용할 수 있나요?

OutcomeCI는 Codex, Claude Code, OpenCode를 지원합니다. 워크플로에서 러너와 지원되는 모델을 선택하고, 특정 단계의 에이전트를 재정의하거나, 사용량 제한에 대한 대체를 구성하세요. 워크플로를 OutcomeCI 또는 저장소에 유지하세요.

워크플로는 어디에서 실행할 수 있나요?

OutcomeCI 클라우드의 관리형 러너에서 워크플로를 실행하거나 Docker와 자체 에이전트 로그인으로 로컬에서 테스트하세요. 둘 다 동일한 러너 이미지와 워크플로 형식을 사용합니다. 자격 증명과 에이전트 연결은 각 환경에 맞게 구성됩니다.

실행 추적은 무엇을 기록하나요?

실행 저널은 API 호출, 결과, 거부 사유를 기록합니다. 워크플로가 무엇을 시도했고 무엇이 발생했는지 검사하는 데 사용하세요. 이는 도구 실행 기록이지 에이전트의 내부 추론 기록이 아닙니다.

실행이 실패하거나 에이전트가 한도에 도달하면 어떻게 되나요?

실행 로그를 열어 무엇이 실패했는지 확인하고 재시도 전에 기록된 호출을 검사하세요. 클라우드 실행은 바쁜 에이전트 연결과 같은 특정 일시적 실패를 최대 5회까지 재시도합니다. 사용량 또는 속도 제한에 대한 대체 에이전트를 구성하세요. 로컬 실행 실패 시 원인을 수정하고 CLI의 재시도 옵션으로 재개하세요. 결과가 불확실한 호출은 자동으로 재생되지 않습니다.

아무도 계획을 승인하지 않으면 어떻게 되나요?

승인 기간을 직접 설정합니다. 시간이 초과된 승인 단계는 나머지 단계를 건너뜁니다. 워크스루에서 구현은 승인된 계획이 필요합니다. 토론이 시간 초과되거나 합의 없이 턴 제한에 도달하면 구현이 건너뜁니다.

권한과 비밀은 어떻게 처리되나요?

각 단계에는 작업과 인수로 범위가 지정된 명시적 권한이 있습니다. 브로커는 해당 권한을 벗어난 호출을 거부하고 허용된 호출에 Vault의 자격 증명을 첨부합니다. 선택적 정책 검토는 제안된 변경 사항을 일반 언어 규칙과 대조하여 확인하며, 워크플로는 인간 승인을 기다릴 수 있습니다.

어떤 도구와 트리거가 지원되나요?

현재 GitHub 및 Slack 커넥터를 사용할 수 있습니다. Slack 멘션, 직접 메시지, 웹훅, 이메일, cron 일정 또는 CLI에서 워크플로를 시작하세요. 커넥터는 오픈소스이며, 커넥터 저장소를 통해 추가 API를 요청할 수 있습니다.

로컬에서 시도하려면 계정이 필요한가요?

아니요. CLI를 설치하고 Docker, 에이전트 로그인, 연결하는 도구의 자격 증명으로 워크플로를 로컬에서 테스트하세요. 관리형 클라우드 러너에서 워크플로를 실행하려면 OutcomeCI 계정을 만드세요.