SkillAgentSearch skills...

Tribe

Low code tool to rapidly build and coordinate multi-agent teams

Install / Use

/learn @StreetLamb/Tribe

README

<div align="center"> <img alt="tribe" height="200px" src="./img/tribe-logo.png"> <h1>Tribe AI</h1> <p>✨ <b>Low code tool to rapidly build and coordinate multi-agent teams</b> ✨</p> <a href="https://github.com/streetlamb/tribe/actions?query=workflow%3ATest" target="_blank"><img src="https://github.com/streetlamb/tribe/workflows/Test/badge.svg" alt="Test"></a> <a href="https://coverage-badge.samuelcolvin.workers.dev/redirect/streetlamb/tribe" target="_blank"><img src="https://coverage-badge.samuelcolvin.workers.dev/streetlamb/tribe.svg" alt="Coverage"></a> </div> <figure> <img src="./img/travel-planner-team.png" alt="travel planning team"> <figcaption>Build a multi-agent team like this with simple drag and drop in minutes! 🤩</figcaption> </figure>

[!TIP] Prefer to write code instead? Check out Rojak — a Python library designed to orchestrate durable, fault-tolerant multi-agent workflows with ease!

[!WARNING] This project is NOT affiliated with any blockchain-related projects in any way. Be cautious of scammers falsely claiming association. Stay vigilant!

Table of Contents

[!WARNING] This project is currently under heavy development. Please be aware that significant changes may occur.

What is Tribe?

Have you heard the saying, 'Two minds are better than one'? That's true for agents too. Tribe leverages on the langgraph framework to let you customize and coordinate teams of agents easily. By splitting up tough tasks among agents that are good at different things, each one can focus on what it does best. This makes solving problems faster and better.

What are some use cases?

By teaming up, agents can take on more complex tasks. Here are a few examples of what they can do together:

  • ⚽️ Footbal analysis: Imagine a team of agents where one scours the web for the latest Premier League news, and another analyzes the data to write insightful reports on each team's performance in the new season.
  • 🏝️ Trip Planning: For planning your next vacation, one agent could recommend the best local eateries, while another finds the top-rated hotels for you. This team makes sure every part of your trip is covered.
  • 👩‍💻 Customer Service: A customer service team where one agent handles IT issues, another manages complaints, and a third takes care of product inquiries. Each agent specializes in a different area, making the service faster and more efficient.

and many many more!

Highlights

  • Persistent conversations: Save and maintain chat histories, allowing you to continue conversations.
  • Observability: Monitor and track your agents’ performance and outputs in real-time using LangSmith to ensure they operate efficiently.
  • Tool Calling: Enable your agents to utilize external tools and APIs.
  • Retrieval Augmented Generation: Enable your agents to reason with your internal knowledge base.
  • Human-In-The-Loop: Enable human approval before tool calling.
  • Open Source Models: Use open-source LLM models such as llama, Gemma and Phi.
  • Integrate Tribe with external application: Use Tribe’s public API endpoints to interact with your teams.
  • Easy Deployment: Deploy Tribe effortlessly using Docker.
  • Multi-Tenancy: Manage and support multiple users and teams.

How to get started

Before deploying it, make sure you change at least the values for:

  • SECRET_KEY
  • FIRST_SUPERUSER_PASSWORD
  • POSTGRES_PASSWORD

You can (and should) pass these as environment variables from secrets.

Generate Secret Keys

Some environment variables in the .env file have a default value of changethis.

You have to change them with a secret key, to generate secret keys you can run the following command:

python -c "import secrets; print(secrets.token_urlsafe(32))"

Copy the content and use that as password / secret key. And run that again to generate another secure key.

Deploy Tribe locally with Docker (simplest way)

Get up and started within minutes on your local machine.

Deploy Tribe on a remote server

Deploy Tribe on your remote server.

Guides and concepts

Sequential vs Hierarchical workflows

Sequential workflows

In a sequential workflow, your agents are arranged in an orderly sequence and execute tasks one after another. Each task can be dependent on the previous task. This is useful if you want to tasks to be completed one after another in a deterministic sequence.

Use this if:

  • Your project has clear, step-by-step tasks.
  • The outcome of one task influences the next.
  • You prefer a straightforward and predictable execution order.
  • You need to ensure tasks are performed in a specific order.

Hierarchical workflows

In a hierarchical workflow, your agents are organised into a team-like structure comprising of 'team leader', 'team members' and even other 'sub-team leaders'. The team leader breaks down the task into smaller tasks and delegate them to its team members. After the team members complete these tasks, their responses will be passed to the team leader who then chooses to return the response to the user or delegate more tasks.

Use this if:

  • Your tasks are complex and multifaceted.
  • You need specialized agents to handle different subtasks.
  • Task delegation and re-evaluation are crucial for your workflow.
  • You want flexibility in task management and adaptability to changes.

Skills

Skills are abilities that you can equip your agents with to interact with the world. For example, you can provide your agent with the skill to check the current weather condition or search the web for the latest news. By default, Tribe provides three skills:

  • duckduckgo-search: Performs web searches.
  • wikipedia: Searches Wikipedia for information.
  • yahoo-finance: Retrieves information from Yahoo Finance News.

You will likely want to create custom skills, which can be done in two ways: by using function definitions for simple HTTP requests or by writing custom skills in the codebase.

Create a Skill Using Skill Definitions

If your skill involves performing an HTTP request to fetch or update data, using skill definitions is the simplest approach. In Tribe, start by navigating to the 'Skills' tab and clicking the 'Add Skill' button. You will then be prompted to provide the skill definition, which instructs your agent on how to execute the specific skill. This definition should be structured as follows:

{
  "url": "https://example.com",
  "method": "GET",
  "headers": {},
  "type": "function",
  "function": {
    "name": "Your skill name",
    "description": "Your skill description",
    "parameters": {
      "type": "object",
      "properties": {
        "param1": {
          "type": "integer",
          "description": "Description of the first parameter"
        },
        "param2": {
          "type": "string",
          "enum": ["option1"],
          "description": "Description of the second parameter"
        }
      },
      "required": ["param1", "param2"]
    }
  }
}

| Key | Description | | ------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | url | The endpoint URL for the API call. | | method | The HTTP method used for the request. It can be GET, POST, PUT, PATCH, or DELETE. | | headers | Any HTTP headers to include in the request. | | function

Related Skills

View on GitHub
GitHub Stars1.1k
CategoryCustomer
Updated9d ago
Forks134

Languages

TypeScript

Security Score

100/100

Audited on Mar 19, 2026

No findings