Star A Repository on GitHub

In this example, we will use CrewAI Agent to star a repository on GitHub using Composio Tools

1

Install Packages

Python
pip install composio_crewai crewai langchain_openai
2

Import Libraries & Initialize ComposioToolSet & LLM

Python
from composio_crewai import ComposioToolSet, App
from crewai import Agent, Task, Crew
from langchain_openai import ChatOpenAI

toolset = ComposioToolSet(api_key="<your-composio-api-key>")
llm = ChatOpenAI(api_key="<your-openai-api-key>")
3

Connect Your GitHub Account

You need to have an active GitHub Integration. Learn how to do this here

Don’t forget to set your COMPOSIO_API_KEY and OPENAI_API_KEY in your environment variables.

4

Get All GitHub Tools

You can get all the tools for a given app as shown below, but you can get specific actions and filter actions using usecase & tags. Learn more here

5

Define the Agent, Task & Crew

Python
crewai_agent = Agent(
    role="GitHub Agent",
    goal="You take action on GitHub using GitHub APIs",
    backstory="You are AI agent that is responsible for taking actions on GitHub on behalf of users using GitHub APIs",
    verbose=True,
    tools=tools,
    llm=llm,
)

task = Task(
    description="Star a repo composiohq/composio on GitHub",
    agent=crewai_agent,
    expected_output="Status of the operation"
)

crew = Crew(
    agents = [crewai_agent],
    tasks = [task]
)
6

Crew Kickoff

Python
result = crew.kickoff()
print(result)