skills/ceos-people/SKILL.md
Use when evaluating team members — Core Values alignment and GWC (right people, right seats)
npx skillsauth add skinnyandbald/ceos ceos-peopleInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Evaluate whether team members are the right people (Core Values alignment) in the right seats (GWC: Get it, Want it, Capacity to do it). Manage people evaluations, run quarterly reviews, and flag below-the-bar situations for action.
Search upward from the current directory for the .ceos marker file. This file marks the root of the CEOS repository.
If .ceos is not found, stop and tell the user: "Not in a CEOS repository. Clone your CEOS repo and run setup.sh first."
Sync before use: Once you find the CEOS root, run git -C <ceos_root> pull --ff-only --quiet 2>/dev/null to get the latest data from teammates. If it fails (conflict or offline), continue silently with local data.
| File | Purpose |
|------|---------|
| data/people/ | Person evaluation files (one per person) |
| data/people/alumni/ | Departed team members (historical reference) |
| data/vision.md | Source of Core Values (read-only — use ceos-vto to modify) |
| data/accountability.md | Source of seats and owners (reference for GWC) |
| templates/people-analyzer.md | Template for new person evaluations |
Each person is a markdown file at data/people/firstname-lastname.md with YAML frontmatter:
name: "Brad Feld"
seat: "Visionary"
core_values:
# Each Core Value from vision.md, rated +, +/-, or -
status: right_person_right_seat # right_person_right_seat | below_bar | wrong_seat | evaluating
gwc:
get: true # true | false | null
want: true
capacity: true
last_evaluated: "2026-01-15"
created: "2026-01-02"
departed: false
File naming: firstname-lastname.md — lowercase, hyphenated. Person-centric (survives role changes).
| Status | Meaning | When |
|--------|---------|------|
| right_person_right_seat | Passes both Core Values and GWC | All Core Values are + or mostly +, all GWC = true |
| below_bar | Fails Core Values OR GWC | Three strikes on values, or any GWC = false |
| wrong_seat | Right person, wrong seat | Core Values pass but GWC fails for current seat |
| evaluating | Not yet assessed | New hire (< 90 days) or incomplete evaluation |
| Rating | Meaning |
|--------|---------|
| + | Lives this value most of the time |
| +/- | Sometimes demonstrates, sometimes doesn't |
| - | Rarely or never demonstrates this value |
Three strikes rule: Three or more +/- or - ratings = "wrong person" (Core Values misalignment). This is a critical flag that requires action.
| Dimension | Question | Notes | |-----------|----------|-------| | Get it | Do they truly understand the role? | Intuitive grasp of the job, culture, systems | | Want it | Do they genuinely want the work? | Not just title/pay — the actual daily work | | Capacity | Can they do it? | Time, skill, knowledge, emotional capacity |
All three must be true for "right seat." Any single false = wrong seat.
Use when evaluating a specific person against Core Values and GWC.
Ask for the person's name. Check if data/people/firstname-lastname.md already exists.
templates/people-analyzer.mdRead Core Values from data/vision.md. For each Core Value, ask the user to rate: +, +/-, or -.
Display a rating table as you go:
Core Values Evaluation — [Person Name]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
| Core Value | Rating | Notes |
|---------------|--------|-----------------|
| Integrity | + | Consistently |
| Innovation | +/- | Room to grow |
| Transparency | + | |
| Grit | - | Avoids hard work|
After all Core Values are rated, count +/- and - ratings:
+/- or -): Flag immediately:
⚠️ THREE STRIKES — Core Values misalignment detected.
[Person] has 3+ values rated +/- or -. This signals "wrong person."
Action required: coaching conversation, role change, or exit plan.
+: "Strong Core Values alignment. Right person."Determine right_person: All or mostly + ratings = yes. Three strikes = no.
Read the person's current seat from data/accountability.md. If the person owns multiple seats, evaluate GWC for each seat separately.
For each seat, ask three binary questions:
Display the result:
GWC — [Person Name] as [Seat Name]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Get it: ✓ Yes
Want it: ✓ Yes
Capacity: ✗ No — struggling with volume
Right seat? No (Capacity gap)
Determine right_seat: All three must be true. Any false = wrong seat.
Based on the evaluation:
| Core Values | GWC | Suggested Status |
|-------------|-----|-----------------|
| Right person | Right seat | right_person_right_seat |
| Right person | Wrong seat | wrong_seat |
| Wrong person | Any | below_bar |
| Incomplete | Any | evaluating |
Present the suggestion: "Based on this evaluation, I'd suggest [status]. Do you agree, or would you set it differently?"
Always let the user confirm or override. Status is a leadership judgment call, not a formula.
Show the complete evaluation file before writing. Ask: "Save this evaluation?"
Update last_evaluated to today's date. Add a dated entry to the Evaluation History section.
If status is below_bar or wrong_seat, offer:
"[Person] is below the bar. Would you like to create an issue for a 30-day action plan? This will create a file in data/issues/open/ for IDS discussion."
If yes, use the issue template pattern from data/issues/open/ to create an issue with:
Use when reviewing the current state of all people evaluations.
Read all files from data/people/ (exclude alumni/ subdirectory). Parse the YAML frontmatter for each person.
If no files exist: "No people evaluations found. Run an Evaluate for your first team member."
People Analyzer — Team Overview
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
| Name | Seat | Status | Last Evaluated | Flag |
|---------------|-------------|-------------------------|----------------|---------|
| Brad Feld | Visionary | right_person_right_seat | 2026-01-15 | |
| Sarah Chen | Integrator | right_person_right_seat | 2026-01-15 | |
| Mike Torres | VP Sales | wrong_seat | 2025-12-01 | ⚠️ Seat |
| Alex Kim | VP Eng | below_bar | 2025-11-15 | 🔴 Bar |
| Jamie Lee | Marketing | evaluating | 2026-01-28 | 🆕 New |
The Bar: 3/5 (60%) at or above — Target: 80%+
Flag the following:
🔴 — requires action plan⚠️ — person is right, seat is wrong (find a better fit)last_evaluated is > 120 days ago, flag: 📅 Overdue🆕 — new hire or incomplete evaluationCalculate: (right_person_right_seat count) / (total evaluated, excluding "evaluating").
If below 80%: "Below the 80% target. Consider bringing people discussions to the next L10."
Ask: "Want to drill into any person, or run a new Evaluate?"
Use for the formal quarterly review of all seats against the Accountability Chart.
Read data/accountability.md to get all seats and their current owners.
If the file doesn't exist or is empty: "No accountability chart found. Create one first with ceos-vto or manually at data/accountability.md."
For each seat in the accountability chart:
Display the seat map:
Quarterly People Review
━━━━━━━━━━━━━━━━━━━━━━━
| Seat | Owner | Status | Action Needed? |
|-------------|---------------|-------------------------|-----------------|
| Visionary | Brad Feld | right_person_right_seat | No |
| Integrator | Sarah Chen | right_person_right_seat | No |
| VP Sales | Mike Torres | wrong_seat | Re-evaluate GWC |
| VP Eng | Alex Kim | below_bar | Action plan due |
| Marketing | (empty) | — | Hire needed |
For each filled seat, ask: "Re-evaluate, update notes, or skip?"
Track progress:
Progress: 3/5 seats reviewed [████████░░░░] 60%
For each empty seat, offer:
"The [Seat Name] seat is empty. Would you like to create an issue for hiring? This will go to data/issues/open/ for IDS discussion."
After reviewing all seats, display:
Quarterly People Review — Complete
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Seats filled: 4/5 (80%)
Right People, Right Seats: 2/4 (50%)
Below the bar: 1
Wrong seat: 1
Empty seats: 1
Evaluating: 0
Action items created: 2
Next quarterly review: [quarter-end date]
If any seats are below bar or empty: "These should be discussed at the next L10. Bring them to the Issues List."
Evaluate: Show the complete evaluation file before writing. Display Core Values table and GWC results inline.
Review: Summary table with status flags, bar percentage. Offer drill-down.
Quarterly: Seat-by-seat walkthrough with progress tracker. End with quarterly summary.
+/- or -, always flag it prominently. Do not minimize.departed: true and move to data/people/alumni/.data/vision.md — never ask the user to list them (they're already defined in the V/TO).data/accountability.md rather than asking the user to recall it.ceos-vto, ceos-quarterly, and ceos-ids when relevant, but let the user decide when to switch workflows.ceos-people reads Core Values from data/vision.md for the Core Values evaluation. It does not write to the V/TO file.ceos-vto, existing people evaluations may need refreshing.ceos-people reads data/accountability.md for the person's seat(s) during GWC evaluation. It does not write to the accountability file.ceos-quarterly references People Analyzer evaluations from data/people/ during quarterly conversations. Core Values and GWC ratings serve as reference points, not re-evaluations.ceos-people.below_bar or wrong_seat, ceos-people offers to create an issue in data/issues/open/.ceos-ids for formal issue tracking of people-related action plans.ceos-annual references People Analyzer evaluations during the Organizational Checkup section (Section 4) of the annual planning session.Only ceos-people writes to data/people/. Other skills read person evaluations for reference. The quarterly conversation skill references evaluations but directs updates back to ceos-people.
tools
Use when reviewing or updating the company Vision/Traction Organizer
tools
Use when tracking, creating, completing, or reviewing To-Dos
tools
Use when defining metrics, logging weekly scorecard numbers, or analyzing trends
tools
Enhanced scorecard entry with auto-pull from L10 meetings and available MCP sources (CRM, calendar, email, filesystem). Walks through each metric one at a time with pre-populated suggestions for interactive confirmation.