U
    h                     @   sT   d Z ddlmZ ddlmZ ddlmZ ddlmZ ddl	m
Z
 G dd deZd	S )
z
This tool allows agents to interact with the python-gitlab library
and operate on a GitLab repository.

To use this tool, you must first set as environment variables:
    GITLAB_PRIVATE_ACCESS_TOKEN
    GITLAB_REPOSITORY -> format: {owner}/{repo}

    )Optional)CallbackManagerForToolRun)Field)BaseTool)GitLabAPIWrapperc                   @   s\   e Zd ZU dZeedZeed< eed< dZ	eed< dZ
eed< deee ed	d
dZdS )GitLabActionz)Tool for interacting with the GitLab API.)default_factoryapi_wrappermode namedescriptionN)instructionsrun_managerreturnc                 C   s   | j | j|S )z'Use the GitLab API to run an operation.)r	   runr
   )selfr   r    r   I/tmp/pip-unpacked-wheel-9gdii04g/langchain_community/tools/gitlab/tool.py_run   s    zGitLabAction._run)N)__name__
__module____qualname____doc__r   r   r	   __annotations__strr   r   r   r   r   r   r   r   r   r      s   
 r   N)r   typingr   Zlangchain_core.callbacksr   Zlangchain_core.pydantic_v1r   Zlangchain_core.toolsr   Z$langchain_community.utilities.gitlabr   r   r   r   r   r   <module>   s   
