Teams
Platform

Teams

Organize project members into teams by function. Route tickets automatically, assign team leads, and customize agent instructions per team.

Teams group your project members by function. A Backend team, a Frontend team, a DevOps team. Each team gets its own lead, its own color in the UI, and its own routing rules that control which tickets land where.

How teams work

Every team belongs to a single project. You pick a category (Backend, Frontend, QA, DevOps, Design, and 10 more), add members from the project roster, and designate one or more leads. When a ticket comes in, JuhJuh checks the ticket type against each team's routing rules and assigns it to the right group.

Teams also carry their own agent instructions. When an agent executes a ticket assigned to a team member, those instructions are included in the agent's context. This lets you tailor agent behavior per discipline without editing the project-level instructions.

Creating a team

  1. Open your project and go to Teams in the sidebar
  2. Click Create Team
  3. Enter a name, pick a category, and choose a color
  4. Add members from the project
  5. Designate at least one member as Lead
  6. Save

The team appears in the sidebar and on the project dashboard.

Categories

Categories describe the team's focus area. JuhJuh uses the category to determine default ticket type routing when no custom rules are set.

Category Default ticket types
Backend Bug, Feature, Refactor, Performance
Frontend Bug, Feature, UI/UX
Fullstack Bug, Feature, Refactor, UI/UX
QA Bug, Test
DevOps Infrastructure, CI/CD, Performance
Docs Documentation
Ops Infrastructure, Operations
Design UI/UX, Design
Mobile Bug, Feature, UI/UX
Hardware Infrastructure
Data Feature, Performance, Data
AI Feature, Research, AI
Sales Operations
Marketing Operations, Content
Custom (none, you define your own)

To override the defaults, edit the team and set specific ticket types in the Ticket Types field.

Team roles

Each team member has one of two roles.

Lead can approve review comments on tickets assigned to any team member. Leads also appear as the default reviewer for tickets within the team's scope. The Lead designation does not change the member's project role. It adds review authority on top of whatever project permissions they already have.

Member participates in the team with standard access. Members receive routed tickets and work within the team's scope, but cannot approve review comments unless they are the ticket assignee or a project admin.

Ticket routing

When a ticket is created or updated, JuhJuh evaluates the routing rules:

  1. Team match. The ticket type is compared against each team's configured ticket types (or category defaults). All matching teams are identified.
  2. Auto-assignment. If exactly one team matches and that team has a single active member, the ticket is assigned to that member automatically.
  3. Fallback. If no team matches but the project has a single member, the ticket is assigned to them.
  4. Historical similarity. When multiple candidates exist, JuhJuh checks past ticket assignments to find the best match based on similar work.

Routing runs automatically. You can also manually assign tickets to specific team members from the ticket detail page.

Agent instructions per team

Each team has an Agent Instructions field where leads and project admins can write markdown instructions specific to that team's discipline.

When an agent executes a ticket, JuhJuh checks whether the assignee belongs to a team. If they do, the team's agent instructions are appended to the execution context alongside the project-level and org-level instructions.

This means your Backend team can enforce code style rules, your QA team can require test coverage thresholds, and your DevOps team can mandate infrastructure review steps, all without cluttering the shared project instructions.

To edit team instructions:

  1. Open the team detail page
  2. Click Edit next to Agent Instructions
  3. Write your instructions in markdown
  4. Save

Only team leads and project admins can edit team instructions.

Managing members

Adding a member

  1. Open the team detail page
  2. Click Add Member
  3. Select a project member from the dropdown
  4. Choose their team role (Lead or Member)
  5. Click Add

A member can belong to multiple teams within the same project.

Removing a member

  1. Open the team detail page
  2. Find the member in the list
  3. Click Remove

Removing a member from a team does not remove them from the project.

Changing a member's role

Remove the member and re-add them with the new role.

Deactivating a team

  1. Open the team detail page
  2. Click Delete Team
  3. Confirm

Deactivating a team removes it from the sidebar and stops ticket routing to its members. The team data is preserved. Tickets previously assigned through this team are not affected.

API access

Teams are available through the API. All endpoints are scoped to a project.

Action Method Endpoint
List teams GET /api/v1/projects/{key}/teams/
Create team POST /api/v1/projects/{key}/teams/
Get team GET /api/v1/projects/{key}/teams/{id}/
Update team PATCH /api/v1/projects/{key}/teams/{id}/
Delete team DELETE /api/v1/projects/{key}/teams/{id}/
Add member POST /api/v1/projects/{key}/teams/{id}/add-member/
Remove member POST /api/v1/projects/{key}/teams/{id}/remove-member/

Filter teams by category or search by name using query parameters: ?category=backend&search=core.

  • Permissions: organization roles, project roles, and team role authority
  • Projects: create projects and manage members who can be added to teams
  • Agents: configure AI agents whose behavior is shaped by team instructions
  • Tickets: tickets are routed to teams based on type and category
  • Agent Instructions: how instruction hierarchy works across org, project, and team levels
  • Code Review: team leads can approve review comments on their team's tickets