Mistral AI Agents를 활용한 GitHub 자동화

Mistral AI Agents를 활용한 GitHub 자동화 (Github Automation with Mistral AI Agents)

Mistral Medium을 사용해서 GitHub에서 여러 작업을 수행하는 에이전트를 만드는 방법을 보여주는 쿡북이에요.

출처: 문서

본문

WIP: 이 쿡북은 최소한의 동작 예시이며, 가까운 시일 내에 계속 진화할 거예요.

사용 사례 (Use Case)

  • 새 리포지토리(Repo) 만들기
  • PR 관리하기
  • AI와 협업해서 코드를 만들고 기존 리포지토리에 코드 업로드하기

설치 (Installation)

pip install chainlit mcp mistralai

환경 설정 (Environment Setup)

이 예시에서는 docker MCP에 의존해요:

server_params = StdioServerParameters(
    command="docker",
    args=[
        "run",
        "-i",
        "--rm",
        "-e",
        "GITHUB_PERSONAL_ACCESS_TOKEN",
        "ghcr.io/github/github-mcp-server"
        ],
    env={
"GITHUB_PERSONAL_ACCESS_TOKEN": os.environ["GITHUB_PERSONAL_ACCESS_TOKEN"]
}

그래서 다음을 확인해야 해요:

  1. 컴퓨터에 docker가 있어야 해요.
  2. 관련 이미지를 풀(pull)해야 해요:
docker pull ghcr.io/github/github-mcp-server
  1. GitHub용 토큰을 만들어야 해요. 여기에서 만들 수 있어요.

Disclaimer: 코딩은 AI가 하므로, GitHub 토큰을 만들 때 보안을 강화하려면 수행하려는 작업에 필요한 최소한의 권한만 가진 fine-grained personal access token을 만드는 것을 강력히 권장해요.

MistralAI API 키와 GitHub 키를 설정하세요:

export MISTRAL_API_KEY="your_api_key_here"
export GITHUB_PERSONAL_ACCESS_TOKEN="your_api_key_here"

사용법 (Usage)

애플리케이션 실행:

chainlit run github.py

다음과 같은 질문을 해 보세요:

  • "Create a repo under my username : called ..."
  • "Generate the files for a todo app and push them to repo ... under branch name ..."

MCP 사용법 (MCP Usage)

MCP에는 두 가지 유형이 있어요.

  • STDIO: 도구의 로컬(local) 사용.
  • SSE: 도구의 원격(remote) 사용.

이 예시에서는 chainlit의 MCP 도구 통합을 활용해서 그것들을 직접 우리 API로 변환해요! 그러니 다른 MCP 서버도 직접 테스트해 보는 걸 주저하지 마세요.

더 알아보기 (Learn more)