Skip to content
Finance
Skill

/team-routing

Detect domain from context and find appropriate team member

BOOST
From plugin
well
34637 skills
Install
$ npx -y skills add WellApp-ai/Well --skill team-routing --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/team-routing

Context preview

The summary Claude sees to decide when to auto-load this skill.

Detect domain from context and find appropriate team member

SKILL.md

team-routing.SKILL.md
name: team-routing
description: Detect domain from context and find appropriate team member

Team Routing Skill

Automatically detect domain from branch names or file paths and find the appropriate reviewer.

When to Use

  • Push PR mode: auto-assign reviewer
  • Init mode: show domain context
  • Any mode needing domain owner lookup

Phases

Phase 1: Extract Keywords

Extract domain keywords from context:

**From branch name:**

feature/tables-filter     → keywords: ["tables"]
fix/auth-token-expired    → keywords: ["auth"]
chore/settings-refactor   → keywords: ["settings"]

**From changed files:**

git diff --name-only origin/develop | head -20

Match file paths against known patterns:

  • `apps/web/features/tables/` → "tables"
  • `apps/api/routes/auth/` → "auth"
  • `apps/web/features/settings/` → "settings"

Phase 2: Query Notion Domains Database

API-query-database: [Domains-DB-ID]
Filter: Keywords contains [extracted-keyword]
        OR Codebase_Paths contains [file-pattern]

**Expected result:**

  • Domain name
  • Topology type (stream-aligned, platform, enabling, complicated-subsystem)
  • Primary keywords

Phase 3: Query Team Capabilities

API-query-database: Team Capabilities
Filter: Primary_Domain matches [domain-name]
        AND Availability = "Available"
Sort: Open_PR_Count ASC

**Expected result:**

  • Person name
  • GitHub handle
  • Max Open PRs
  • Current Open PR count

Phase 4: Check Availability

For each candidate: 1. Query current open PRs:

   gh pr list --state open --author [github_handle] --json number | jq length

2. Compare against Max_Open_PRs threshold 3. Skip if at or over capacity

Phase 5: Fallback Logic

If no available primary owner:

1. **Backup Owners:** Query Skills table for overlapping skills 2. **Skills Match:** Match changed file extensions to skill file patterns 3. **No Match:** Return warning: "No available reviewer found for domain [X]"

---

Output

Present findings as:

## Domain Detection

**Branch:** [branch-name]
**Detected Domain:** [domain-name]
**Topology:** [stream-aligned | platform | enabling | complicated-subsystem]

### Reviewer Assignment

**Primary Owner:** @[github_handle] ([person_name])
**Availability:** [Available | At capacity (X/Y PRs)]
**Assignment:** [Assigned | Fallback to @backup | No available reviewer]

---

Integration

This skill is invoked by:

  • `push-pr.mdc` - Phase 1.2 (Find Reviewer)
  • `init.mdc` - Domain context display

**Notion Databases Required:**

  • Domains (keywords, codebase paths)
  • Team Capabilities (person, domain, availability, max PRs)
  • Skills (file patterns for fallback matching)
Read more
Ships withwell

You don't have to waste time retrieving invoices. AI can.

Get the whole plugin
Stats
346
Stars
49
Forks
Active
Maintenance
TypeScript
Language
MIT
License
4d ago
Last commit
1y ago
Created
6h ago
Added

Repo: WellApp-ai/Well

Other skills on well.