Skip to content
Back to skills

Ng Lawyer Db Build

ASecurity

"This is Step 1 of Fei Gao’s “Nigeria Lawyer Network” workflow: 1)

  • 16 stars
  • 0 votes
  • 0 copies
  • 4 views
  • Added June 7, 2026
databasesgodatabase

Security analysis

A100/100

Pro scans all 3 files and shows the line behind each finding

Scanned June 7, 2026

npx -y skills add modbender/skill-library-mcp --skill ng-lawyer-db-build --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Ng Lawyer Db Build?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Ng Lawyer Db Build
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/modbender-ng-lawyer-db-build/badge)](https://www.skillsdirectory.com/skills/modbender-ng-lawyer-db-build)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: NG Lawyer DB Build (Step 1)
description: "This is Step 1 of Fei Gao’s “Nigeria Lawyer Network” workflow: 1)
  Build a Lawyer Database (this skill) 2) Send outreach emails and score by
  response (separate skill) 3) Sort & export for fast looku..."
---

# NG Lawyer DB Build (Step 1)

## What this skill does
This is **Step 1** of Fei Gao’s “Nigeria Lawyer Network” workflow:
1) Build a **Lawyer Database** (this skill)  
2) Send outreach emails and score by response (separate skill)  
3) Sort & export for fast lookup (separate skill)

The objective is to create a database that allows **fast matching** by:
**City → Practice → Sub-specialty → Regulator → Firm size → Position → Score → Contact**.

This skill focuses on **data collection + structured classification** with evidence links.

---

## Inputs
- **city**: `Lagos` | `Abuja`
- **practice**: `Construction` | `RealEstate` | `Labour` | `Tax` | `Criminal` | `IP`
- **n_per_segment**: integer (target **3**)

---

## Output files
- **lawyer_db_ng.xlsx** (main database)
- **sources.jsonl** (evidence per record: url + snippet + timestamp)

---

## Database schema (fixed column order)
The Excel must contain columns in this exact order:

1. Lawyer_UID  
2. Country  
3. City  
4. Practice  
5. Sub_Practice  
6. Regulator_Tag  
7. Firm_Name  
8. Firm_Size  
9. Position  
10. Lawyer_Name  
11. Email  
12. Phone  
13. LinkedIn  
14. Website  
15. Evidence_URL  
16. Score_Total (blank in Step 1)  
17. Score_ResponseSpeed (blank)  
18. Score_Detail (blank)  
19. Score_Pricing (blank)  
20. Score_Cooperation (blank)  
21. Risk_Flag (blank)  
22. NeedFollowUp (0/1)  
23. ChannelCostRisk (Low/Medium/High)  
24. Last_Updated

---

## Non-negotiable rules (to avoid future scoring chaos)
### 1) Unique key (Lawyer_UID)
All later scoring MUST be written back by **Lawyer_UID**, never by name.

Format:
- `LAW-NG-{CITYCODE}-{PRACTICECODE}-{NNNN}`
- CityCode: Lagos=LAG, Abuja=ABJ
- PracticeCode: Construction=CON, RealEstate=REA, Labour=LAB, Tax=TAX, Criminal=CRI, IP=IPR

Example:
- `LAW-NG-LAG-CON-0001`

### 2) Email policy (anti-channel-cost)
- Email must be **explicitly published** on the evidence page (law firm bio page, author page, or official profile).
- **NO guessing** (e.g., firstname.lastname@firm.com is not allowed unless shown).
- If only a general firm email exists (info@ / contact@), it may be used but set:
  - `ChannelCostRisk=High`
  - `NeedFollowUp=1`

### 3) Evidence chain
Each row must store **Evidence_URL**.
The skill also writes **sources.jsonl** with:
- Lawyer_UID
- Evidence_URL
- Evidence_Snippet (<= 300 chars)
- Captured_At

### 4) Firm_Size classification (fee proxy)
Firm_Size affects pricing expectation. Classify using evidence:

- **Top**:
  - The firm is ranked in **Chambers** or **Legal 500** in Nigeria for the relevant practice; OR
  - Firm lawyer count **> 50** (evidence required)
- **Mid**: lawyer count **15–50**
- **Small**: lawyer count **2–14**
- **Solo**: sole practitioner / independent (count=1)
- **Unknown**: insufficient evidence → set NeedFollowUp=1

### 5) Position mapping (fee proxy)
Normalize to:
- Partner / Counsel / SeniorAssociate / Associate / Junior / Independent / Unknown

Mapping hints:
- Partner: Managing Partner, Senior Partner, Partner
- Counsel: Counsel, Of Counsel
- SeniorAssociate: Senior Associate, Associate (Senior)
- Associate: Associate, Solicitor
- Junior: Junior Associate, Trainee
- Independent: Sole Practitioner, Principal, Independent Legal Practitioner

---

## Regulator_Tag (only with evidence)
Allowed values:
- CAC, NIPC, FIRS, StateIRS, NAFDAC, Immigration, MinistryOfMines, IPRegistry, EFCC, Police, Court

Rule:
- Tag only when evidence mentions regulator or shows relevant matters.
- If not evidenced, leave blank; outreach email will ask the lawyer to self-report regulators handled.

---

## Data collection strategy (recommended sources)
Priority order:
1) Chambers / Legal 500 ranked firms for Nigeria practice (Top candidates)
2) Official law firm team pages (bio pages with emails)
3) Author pages on firm sites / Lexology / IFLR (when email is shown)
4) Boutique firm sites for Small/Solo

---

## Segmentation target
For each (Firm_Size x Position) segment, collect **n_per_segment** candidates **with verified emails** where possible.

Recommended priority within Top firms:
- Counsel / SeniorAssociate / Associate (often more willing for flexible cooperation)

---

## Example run (MVP)
City: Lagos  
Practice: Construction  
n_per_segment: 3  

Goal: produce a usable initial database for Lagos Construction to validate:
- Firm_Size classification is correct
- Position mapping is correct
- Emails are evidence-backed
- Column order is stable

Files in this skill

  • README.md105 B
  • SKILL.md4.8 KB
  • skill.yaml543 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.