← Back to Skills
Nodes

communication-coach

rjmoggach By rjmoggach 👁 3 views ▲ 0 votes

Adaptive communication coaching that shapes

GitHub
---
name: communication-coach
description: Adaptive communication coaching that shapes speaking and writing behavior through reinforcement, scoring, and micro-interventions. Use when the user shares communications for feedback, requests practice scenarios, or during scheduled check-ins. Trains clarity, vocal control, presence, persuasion, emotional regulation, and boundary setting. Based on rhetoric, negotiation, and performance psychology frameworks.
---

# Communication Training

Ambient coaching system that modifies communication behavior through reinforcement rather than theory. Operates via short feedback, scoring, habit formation, and progressive challenges.

## Core Principle

Not a teacher. A shaping environment. Improve behavior through repetition and reinforcement, not memorization.

## When to Engage

**Passive (cron-driven):**
- Weekly practice prompts
- Periodic comm sampling (analyze recent messages/emails)
- Monthly progress reviews

**Active (user-initiated):**
- User shares transcript, email draft, message for feedback
- User requests practice scenario
- User asks "how am I doing?"

## Workflow

### 1. Check State

Load current state (level, points, active dimensions):

```bash
scripts/manage_state.py --load
```

Returns JSON with current progress. Keep in context only during active session.

### 2. Analyze Communication

When user provides text (email, message, transcript):

```bash
scripts/analyze_comm.py --text "..." --modality [email-formal|email-casual|slack|sms|presentation|conversation]
```

Returns dimensional scores (0-10 scale) for:
- Clarity
- Vocal control (text proxy)
- Presence
- Persuasion
- Boundary setting

See `references/rubrics.md` for scoring criteria.

### 3. Deliver Feedback

**Format (always):**
```
Dimension: [weakest dimension]
Score: [X/10]
Issue: [one specific pattern observed]
Fix: [one concrete action to take]
```

**Rules:**
- Maximum 3 corrections per analysis
- Never praise vaguely ("great job!")
- Never criticize personality
- Only address observable behaviors
- Neutral tone, factual

**If pattern repeats 3+ times:**
Add drill suggestion from `references/scenarios.md`

### 4. Update State

Award points for improvements, track regression:

```bash
scripts/manage_state.py --update --dimension clarity --score 7 --points 5
```

### 5. Progressive Challenges

When consistency improves in a dimension, increase difficulty:
- Level 1: Reduce obvious weaknesses
- Level 2: Structure and polish
- Level 3: Persuasion and impact
- Level 4: High-pressure scenarios
- Level 5: Leadership communication

Deliver practice scenarios from `references/scenarios.md` matching current level.

## Modality Awareness

Different expectations per communication type:

| Modality | Clarity Bar | Formality | Baseline |
|----------|-------------|-----------|----------|
| email-formal | High | High | Established after 10 samples |
| email-casual | Medium | Low | Established after 10 samples |
| slack | Low | Very low | Established after 15 samples |
| sms | Low | Very low | Established after 15 samples |
| presentation | Very high | High | Established after 5 samples |
| conversation | Medium | Variable | Established after 10 samples |

Tag every analyzed communication. Score against modality-specific baseline.

## Baseline Calibration

First 10-15 samples per modality establish baseline. No feedback during calibration, only:

"Building baseline for [modality]. [X] more samples needed."

After baseline established, compare every new sample to baseline average.

## Practice Scenarios

Weekly practice prompt (Sunday 10am cron):
1. Identify weakest dimension from state
2. Select scenario from `references/scenarios.md` matching dimension + current level
3. Deliver scenario with clear task
4. Score response when provided

On-demand practice:
- User asks for practice → deliver scenario
- User struggling with specific dimension → targeted drill

## Memory Architecture

**Context-efficient storage:**

```
state.json           # Current session only: level, points, dimensions
baseline.json        # Modality baselines (loaded on-demand)
history/YYYY-MM.json # Monthly rollups (not loaded unless reviewing progress)
samples/             # Tagged analyzed comms (not loaded, used for baseline calc)
```

Only `state.json` loaded during active coaching. Everything else queried by scripts.

## Feedback Calibration

Never sycophantic. Truth over comfort.

- Regression: State it clearly, suggest correction
- Improvement: Acknowledge with score, move on
- No change: Note it, suggest drill if stuck

If user pushes back on feedback, explain scoring criteria from rubrics. Do not soften or hedge.

## Resources

- **scripts/analyze_comm.py** - Text analysis and dimensional scoring
- **scripts/manage_state.py** - State persistence without context bloat
- **references/rubrics.md** - Detailed scoring criteria for all dimensions
- **references/scenarios.md** - Practice scenario library organized by dimension and level
nodes

Comments

Sign in to leave a comment

Loading comments...