Skip to main content

Use Composio Tools to enhance your PraisonAI agents capabilities.

Project description

🚀🔗 Leveraging PraisonAI with Composio

Facilitate the integration of PraisonAI with Composio to empower Praison Agents to directly interact with external applications, broadening their capabilities and application scope.

Objective

  • Automate starring a GitHub repository using conversational instructions via PraisonAI Agents.

Installation and Setup

Ensure you have the necessary packages installed and connect your GitHub account to allow your agents to utilize GitHub functionalities.

# Install Composio LangChain package
pip install composio-praisonai

# Connect your GitHub account
composio-cli add github

# View available applications you can connect with
composio-cli show-apps

Usage Steps

1. Import Base Packages

Prepare your environment by initializing necessary imports from Praison and setting up your client.

import os
import yaml
from praisonai import PraisonAI

Step 2: Write the Praison-supported Composio Tools ins tools.py file.

This step involves fetching and integrating GitHub tools provided by Composio, and writing them in Praison supported Format, returning the name of tools in a format, that should be added to agents.yml file.

from composio_praisonai import Action, ComposioToolSet

composio_toolset = ComposioToolSet()
tools = composio_toolset.get_actions(
    actions=[Action.GITHUB_STAR_A_REPOSITORY_FOR_THE_AUTHENTICATED_USER]
)

tool_section_str = composio_toolset.get_tools_section(tools)
print(tool_section_str)

Step 3: Define the 'agents_yml` either in a separate file, or in your script.

This step involves configuring and executing the agent to carry out actions, such as starring a GitHub repository.

agent_yaml = """
framework: "crewai"
topic: "Github Management"

roles:
  developer:
    role: "Developer"
    goal: "An expert programmer"
    backstory: "A developer exploring new codebases and have certain tools available to execute different tasks."
    tasks:
      star_github:
        description: "Star a repo composiohq/composio on GitHub"
        expected_output: "Response whether the task was executed."
""" + tool_section_str

print(agent_yaml)

Step 4: Run the Praison Agents to execute the goal/task.

Here you initialize PraisonAI class, and execute.

# Create a PraisonAI instance with the agent_yaml content
praison_ai = PraisonAI(agent_yaml=agent_yaml)

# Run PraisonAI
result = praison_ai.main()

# Print the result
print(result)

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

composio_praisonai-0.7.16rc1.tar.gz (4.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

composio_praisonai-0.7.16rc1-py3-none-any.whl (5.1 kB view details)

Uploaded Python 3

File details

Details for the file composio_praisonai-0.7.16rc1.tar.gz.

File metadata

  • Download URL: composio_praisonai-0.7.16rc1.tar.gz
  • Upload date:
  • Size: 4.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for composio_praisonai-0.7.16rc1.tar.gz
Algorithm Hash digest
SHA256 4fb9644654c3d42dec2edaf4a7c0a0b342d97adb7803feef7edf655d39ce7153
MD5 94c27378f053bdb7b3d1d2cac1989cfe
BLAKE2b-256 26168c22118ac84288a279e5a6535919162fcc716524dbd4d920d58af7546e58

See more details on using hashes here.

File details

Details for the file composio_praisonai-0.7.16rc1-py3-none-any.whl.

File metadata

File hashes

Hashes for composio_praisonai-0.7.16rc1-py3-none-any.whl
Algorithm Hash digest
SHA256 ba7db54689ebea6dee416cf81ebfb2c4c5d49f279001acf8f3fe4cedf16f4025
MD5 b0bbc2bff4f5a5af54fd23f03bf42cb1
BLAKE2b-256 6810baec166cb4791abb379f3e8b489f03dd83748816a8eb43e8e6574395b509

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page