# Log Outreach

> Close out a session — reconcile both trackers against the files on disk, update PROJECT_NOTES with the phase and next action, and push anything vault-worthy to the Hermes vault. Run at the end of every working session.

- Skill: `faaz17/log-outreach` (Agent Skill)
- Install (CLI): `npx skillmds@latest add faaz17/log-outreach`
- Raw SKILL.md: https://api.skillmd.com/api/skills/faaz17/log-outreach/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: Faaz17 (https://skillmd.com/u/faaz17)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/faaz17/log-outreach

---


# /log-outreach, close the session

Usage: `/log-outreach`

The next session reads `PROJECT_NOTES.md` first. Whatever this skill writes is what the next session believes, so it has to be true.

## Steps

1. **Reconcile the trackers against disk.** For each person, compare `tracker.md` against the files in `drafts/` and `sent/`. The files win. Fix the tracker where they disagree, and note what was out of step — a recurring mismatch means a step in the workflow is being skipped.

2. **Update statuses.** Every draft has a `status` in its frontmatter that says exactly what still has to happen to it. Never end a session with a file in an unclear state.

3. **Set follow-up dates.** Anything sent this session gets `followup_due` at +6 days, in the frontmatter and the tracker.

4. **Update `PROJECT_NOTES.md`:**
   - The phase, and honestly — a phase whose deliverable does not exist is not done
   - What is blocked, and who unblocks it
   - What is still undecided
   - **One** next action
   - A new row in the session log: date, and what actually happened

5. **Push the vault-worthy parts.** Not everything belongs in the vault; this repo holds the operational detail. The vault gets:
   - A dev-log note in `10 Logs/` for a substantial session → `/obsidian-log`
   - A person note in `04 People/` for anyone who replied → `/obsidian-person`. Name, company, role, context. **No email address, no phone number**
   - An interview or call → one line in `09 Reference/Planned Events.md`
   - A decision about strategy or targeting → `/obsidian-decide`
   - Anything else worth keeping → `/obsidian-save`

   Read `_CLAUDE.md` at the vault root first. Its folder map and frontmatter schemas are authoritative.

6. **Mirror to Codex if the brain changed.** If anything in `.claude/agents/` or `.claude/rules/` was edited this session:
   ```bash
   cp .claude/agents/*.md .codex/agents/
   cp .claude/rules/*.md  .codex/rules/
   ```

7. **Report what was written.**

## Output format

```
## Session logged — <date>

**Did this session**
- <what actually happened>

**Trackers reconciled**
- <Person Name>: <n> rows, <n> corrected
- <Second Person>: <n> rows, <n> corrected
- Mismatches found: <what, or none>

**PROJECT_NOTES**
- Phase: <n> (<changed from / unchanged>)
- Next action: <one thing>

**Vault**
- <note> → <path>
- Or: nothing vault-worthy this session

**Codex mirror:** synced | not needed
```

## Rules

- Never log work that did not happen. An honest empty session is a session where the notes stay true.
- Never mark a phase complete when its deliverable is not on disk.
- Never write a contact's email address or phone number into the vault.
- One next action in PROJECT_NOTES.
- If the trackers and the files disagree repeatedly across sessions, say so in the report. That is a workflow bug, not a clerical one.

