bradfeld/ceos/ceos-people

Claude Code and agent skill by bradfeld/ceos

Trust tier 1
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

Use when evaluating team members — Core Values alignment and GWC (right people, right seats)

Install

npx vskill@latest install bradfeld/ceos/ceos-people

SKILL.md

ceos-people

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.

When to Use

  • "Evaluate [person]" or "run the people analyzer for [name]"
  • "Are we right people, right seats?" or "show our people evaluations"
  • "Quarterly people review" or "let's review the team"
  • "Is [person] in the right seat?" or "GWC check on [name]"
  • "Who's below the bar?" or "show below-bar team members"
  • Any discussion about team fit, Core Values alignment, or seat assignment

Context

Finding the CEOS Repository

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.

Key Files
FilePurpose
data/people/Person evaluation files (one per person)
data/people/alumni/Departed team members (historical reference)
data/vision.mdSource of Core Values (read-only — use ceos-vto to modify)
data/accountability.mdSource of seats and owners (reference for GWC)
templates/people-analyzer.mdTemplate for new person evaluations
Person File Format

Each person is a markdown file at data/people/firstname-lastname.md with YAML frontmatter:

yaml
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 Values
StatusMeaningWhen
right_person_right_seatPasses both Core Values and GWCAll Core Values are + or mostly +, all GWC = true
below_barFails Core Values OR GWCThree strikes on values, or any GWC = false
wrong_seatRight person, wrong seatCore Values pass but GWC fails for current seat
evaluatingNot yet assessedNew hire (< 90 days) or incomplete evaluation
Core Values Rating
RatingMeaning
+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.

GWC Dimensions
DimensionQuestionNotes
Get itDo they truly understand the role?Intuitive grasp of the job, culture, systems
Want itDo they genuinely want the work?Not just title/pay — the actual daily work
CapacityCan they do it?Time, skill, knowledge, emotional capacity

All three must be true for "right seat." Any single false = wrong seat.

Process

Mode: Evaluate

Use when evaluating a specific person against Core Values and GWC.

Step 1: Identify the Person

Ask for the person's name. Check if data/people/firstname-lastname.md already exists.

  • Exists: Read the file, show current evaluation, ask: "Re-evaluate or update notes?"
  • New person: Create from templates/people-analyzer.md
Step 2: Core Values Evaluation

Read 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|
Step 3: Three Strikes Detection

After all Core Values are rated, count +/- and - ratings:

  • 3+ negative 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. ``

  • 1-2 negative ratings: Note but continue: "Some values need attention. Continue to GWC."
  • All `+`: "Strong Core Values alignment. Right person."

Determine right_person: All or mostly + ratings = yes. Three strikes = no.

Step 4: GWC Evaluation

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:

  1. Get it? Does [person] truly understand the [seat] role? (yes/no)
  2. Want it? Does [person] genuinely want to do [seat] work? (yes/no)
  3. Capacity? Does [person] have the capacity to excel at [seat]? (yes/no)

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.

Step 5: Suggest Status

Based on the evaluation:

Core ValuesGWCSuggested Status
Right personRight seatright_person_right_seat
Right personWrong seatwrong_seat
Wrong personAnybelow_bar
IncompleteAnyevaluating

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.

Step 6: Write the File

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.

Step 7: Below-Bar Action

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:

  • Title referencing the person and the gap
  • 30-day timeline
  • Specific actions from the evaluation

Mode: Review

Use when reviewing the current state of all people evaluations.

Step 1: Read All 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."

Step 2: Display Summary Table
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%+
Step 3: Highlight Issues

Flag the following:

  • Below bar: 🔴 — requires action plan
  • Wrong seat: ⚠️ — person is right, seat is wrong (find a better fit)
  • Stale evaluation: If last_evaluated is > 120 days ago, flag: 📅 Overdue
  • Evaluating: 🆕 — new hire or incomplete evaluation
Step 4: Bar Percentage

Calculate: (right_person_right_seat count) / (total evaluated, excluding "evaluating").

If below 80%: "Below the 80% target. Consider bringing people discussions to the next L10."

Step 5: Drill Down

Ask: "Want to drill into any person, or run a new Evaluate?"


Mode: Quarterly

Use for the formal quarterly review of all seats against the Accountability Chart.

Step 1: Read 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-accountability or manually at data/accountability.md."

Step 2: Map Seats to People

For each seat in the accountability chart:

  • Has an owner with a person file: Load the evaluation
  • Has an owner without a person file: Flag: "No evaluation on file. Evaluate now?"
  • Empty seat (no owner): Flag: "Empty seat — [Seat Name]. Hire or reassign?"

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 |
Step 3: Walk Through Each Seat

For each filled seat, ask: "Re-evaluate, update notes, or skip?"

  • Re-evaluate: Run the full Evaluate mode (Step 2-6 from Evaluate)
  • Update notes: Just add a dated note to the Evaluation History
  • Skip: Move to next seat

Track progress:

Progress: 3/5 seats reviewed [████████░░░░] 60%
Step 4: Handle Empty Seats

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."

Step 5: Quarterly Summary

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."

Output Format

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.

Guardrails

This is the start of the file. Read the full SKILL.md on GitHub.

Security

  • Security scanPassedPattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

Repository stars
148
Repository forks
59
7-day trend score
25

Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 20 Mar 2026, 7 months ago.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/bradfeld/ceos/ceos-people/badge)](https://verified-skill.com/skills/bradfeld/ceos/ceos-people)

Something wrong with this skill or its page? Tell us.