assistant-claw/atlas/skills/claw-people-observer/SKILL.md
Vega (Atlas scaffolding) ce9f27320a Add Atlas profile under atlas/ — boss-perspective project execution radar
This adds the full Atlas (总助 Claw / 老板视角项目执行雷达) scaffolding as a
sibling profile to the existing Vega general-purpose assistant. All Atlas content
lives under atlas/ to keep the existing top-level skeleton intact.

What's included:

- atlas/IDENTITY.md, SOUL.md, USER.md, AGENTS.md, MEMORY.md, BOOTSTRAP.md,
  HEARTBEAT.md, TOOLS.md (+ zh-CN mirrors) — full OpenClaw 8-piece set
  matching the zero-cca convention
- atlas/skills/ — 6 sub-skills with frontmatter:
  claw-email-parser / claw-project-tracker / claw-people-observer /
  claw-customer-radar / claw-boss-distiller / claw-report-writer
- atlas/skills/claw-boss-distiller/ — adapter notes for nuwa-skill, 5-layer
  boss_skill seed template (23 rules across Expression DNA / Mental Models /
  Decision Heuristics / Anti-Patterns / Honest Boundaries), and a complete
  synthetic distillation demo (10 input emails -> validated 5-layer output)
- atlas/mcp-tools/email-extractor/ — Python implementation of stages 1-3
  (fetch + decode + dequote), 7 pytest tests passing, CLI: atlas-extract
- atlas/state-schemas/ — formal JSON schemas for project / person / customer
  cards with the no-employee-rating hard constraint baked in
- atlas/client-deck/ — 2-page client-facing pitch document
- autopilots/atlas-*.yaml — 5 autopilot configs (daily / weekly / monthly /
  quarterly + andon event-triggered) for a future Multica-side scheduler

Notes:

- nuwa-skill (MIT, https://github.com/alchaincyf/nuwa-skill) NOT vendored;
  fetch at deploy time via instructions in
  atlas/skills/claw-boss-distiller/upstream/README.md
- Vega-side prompts/skills/tools/autopilots/docs scaffold left untouched
- Top-level README.md updated with a brief Atlas pointer; rest preserved
2026-05-09 17:00:29 +08:00

4.1 KiB
Raw Blame History

name description
claw-people-observer Compute observation cards for each person — project density, response time, BARS behavior tags, CCAR critical incidents, ONA centrality, 9-Box performance dimension. NEVER assigns potential or final ratings — those are boss-only.

claw-people-observer

Purpose

Build the people layer of Atlas. For each internal person who appears in the email graph, compute a multi-framework observation card. Surface signals to the boss; never write verdicts.

Hard Boundary

This skill does not assign:

  • 9-Box potential dimension (boss only)
  • A/B/C player labels (boss only)
  • Performance Improvement Plan triggers (boss only)
  • Hire/fire recommendations (always boss)

This skill does compute:

  • Activity-based metrics (active project count, stalled ratio, response time)
  • Behavior tags with BARS anchors and email-ID evidence
  • CCAR critical incidents (auto-detected positive + negative events)
  • ONA centrality (information broker score, isolation index)

The 9-Box performance dimension is auto-estimated as a suggestion (with a "boss to confirm" flag); never as a final answer.

Inputs

  • Updated Email JSON since last run
  • state/projects/*.json (for project-density and stall-ratio computation)
  • boss_skill.md (BARS anchors live in the Decision Heuristics layer)

Outputs

  • state/people/<name>.json (see schema)
  • Append to state/audit/people_signals.csv for each new behavior tag

Computation Notes

Project density / stalled ratio

  • Density = count of distinct project_ids where person appears in last 30 days
  • Stalled ratio = stalled_projects / active_projects
  • Threshold for "overload" warning: density > 6 AND stalled_ratio > 0.3

Response time

  • For threads where person is Responsible, compute median time between (boss/customer message asking for action) → (their reply)
  • Surface only the median; do not surface individual slow replies (avoid micro-management trap)

BARS tags

  • Pull anchor list from boss_skill.md > Decision Heuristics
  • For each tag, scan recent thread events for matching anchor text or pattern
  • Always include source email ID

CCAR critical incidents

  • Auto-detect: project completion ahead of schedule, customer-side praise, customer-side complaint, escalation refused, deadline missed
  • Window: rolling 30 days

ONA centrality

  • Build directed graph: from→to+cc per email, weight = message count
  • Compute betweenness centrality + degree centrality + isolation index (= 1 / unique_correspondents)
  • Refresh weekly (heavy compute), cache in state/people/_ona_cache.json

9-Box auto-estimate

  • Performance dimension: composite of (completion rate, response time, customer-side sentiment when this person is Responsible)
  • Potential dimension: never auto-estimated; field is null until boss writes it

Failure Modes

Failure Behavior
Person has no Responsible projects Card still created with sparse data; flag data_sparse: true
Identity collision suspected Surface in state/people/_to_merge.json; do not auto-merge
Boss explicitly disagrees with a behavior tag Tag retired; rule that produced it surfaces in next quarterly distillation review

Sample Output

{
  "name": "张三",
  "产出指标": {
    "active_projects": 8,
    "completed_30d": 2,
    "stalled_ratio": 0.375,
    "avg_response_hours": 27,
    "客户主动催办次数_30d": 4
  },
  "行为标签_BARS": [
    {
      "维度": "主动性",
      "锚点": "客户首次催才回应",
      "评分": 2,
      "依据邮件": ["msg-abc"],
      "rule_ref": "BARS-proactivity-3"
    }
  ],
  "关键事件_CCAR_30d": [
    {"date": "2026-04-22", "事件": "PRJ-001 客户投诉,未升级", "性质": "负向", "source_email_ids": ["msg-xyz"]}
  ],
  "网络中心度_ONA": {
    "信息中介度": 0.42,
    "孤立指数": 0.18,
    "解读": "中等枢纽,未被孤立"
  },
  "9_box_自动估": {
    "performance": "中下",
    "潜力": null,
    "建议象限": "Solid Performer 或 Underperformer看潜力定",
    "boss_to_confirm": true
  },
  "Topgrading_建议": null
}