🚀🔗 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)
Metadata
Release files for composio-praisonai 0.7.20
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| composio_praisonai-0.7.20.tar.gz | 4.8 kB | Without provenance | Details for composio_praisonai-0.7.20.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| composio_praisonai-0.7.20-py3-none-any.whl | Python 3 | none | any | Details for composio_praisonai-0.7.20-py3-none-any.whl |
Total release size: 9.9 kB
Release files / composio_praisonai-0.7.20.tar.gz
| Download URL | composio_praisonai-0.7.20.tar.gz |
|---|---|
| Size | 4.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
67c742992601d31bc597c8cd25e1ec760147419833bfad0b719e7e5a727cc092
|
|
BLAKE2b-256 checksum How to use checksums |
be96ee505c28364ac39d99a9b6c6b0e9b70c0f12dc4bafc5b6923dc28b4ab0ef
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Release files / composio_praisonai-0.7.20-py3-none-any.whl
| Download URL | composio_praisonai-0.7.20-py3-none-any.whl |
|---|---|
| Size | 5.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
df9565e4801e8fd81108b1940128807c0fb83c8b7ebb2e32363b663fc9f0d6ab
|
|
BLAKE2b-256 checksum How to use checksums |
43c4f9d8b9546924e09ab055d91c4f91ea5b86aefa40d104ff6a88d52bf29030
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Security for composio-praisonai 0.7.20
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.