You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
151 lines
7.4 KiB
151 lines
7.4 KiB
|
2 months ago
|
---
|
||
|
|
name: "connect"
|
||
|
|
description: "Manage Microsoft Connect (perf review) tracking inside the Obsidian vault. Reads the active Connect markdown in D:\\Repos\\Obsidian\\04 - Connects\\, cross-references the rest of the vault for evidence (daily notes, squad meetings, status updates, decisions), and emits weekly check-ins, draft narratives, 1:1 prep digests, and gap warnings. Triggers: 'connect', 'connect check-in', 'connect prep', 'connect draft', or any /connect subcommand."
|
||
|
|
---
|
||
|
|
|
||
|
|
## Connect Skill
|
||
|
|
|
||
|
|
Helps the user track and stay on top of their Microsoft Connect (perf review)
|
||
|
|
period using their Obsidian vault as the source of truth.
|
||
|
|
|
||
|
|
**Vault root:** `D:\Repos\Obsidian\`
|
||
|
|
**Connect folder:** `D:\Repos\Obsidian\04 - Connects\`
|
||
|
|
**Templates:** `D:\Repos\Obsidian\04 - Connects\Templates\`
|
||
|
|
**Output folders (skill writes here):**
|
||
|
|
- `04 - Connects\Check-ins\YYYY-MM-DD.md`
|
||
|
|
- `04 - Connects\Drafts\YYYY-MM.md`
|
||
|
|
|
||
|
|
The skill is **read-only** outside `04 - Connects\` — never modify daily notes, squad notes, or meeting notes. Only emit new files inside `04 - Connects\`.
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
### Active Connect doc
|
||
|
|
|
||
|
|
The user authors one markdown per Connect period (e.g. `2026-H1.md`) directly in
|
||
|
|
`04 - Connects\`. The "active" doc is the one whose frontmatter has
|
||
|
|
`status: active`. Use this PowerShell to find it:
|
||
|
|
|
||
|
|
```powershell
|
||
|
|
Get-ChildItem 'D:\Repos\Obsidian\04 - Connects\*.md' -File | ForEach-Object {
|
||
|
|
$head = Get-Content $_.FullName -TotalCount 12 -ErrorAction SilentlyContinue
|
||
|
|
if ($head -match 'status:\s*active') { $_.FullName }
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
If multiple are marked active, prefer the one whose `period` lexically sorts last
|
||
|
|
and warn the user. If none are active, tell the user and offer `/connect new`.
|
||
|
|
|
||
|
|
### Connect doc convention (for parsing)
|
||
|
|
|
||
|
|
```yaml
|
||
|
|
---
|
||
|
|
type: connect
|
||
|
|
period: 2026-H1
|
||
|
|
status: active
|
||
|
|
start: 2026-01-01
|
||
|
|
end: 2026-06-30
|
||
|
|
manager: <name>
|
||
|
|
---
|
||
|
|
```
|
||
|
|
|
||
|
|
Body sections:
|
||
|
|
- `## Core Priority N — <title>` — one per priority. Sub-fields:
|
||
|
|
- `**Tags:** #cp/<tag1> #cp/<tag2>` — these are the tag hooks for evidence rollup.
|
||
|
|
- `**What success looks like:**`
|
||
|
|
- `**Key results / milestones:**`
|
||
|
|
- `**People / projects / keywords:**`
|
||
|
|
- `## Growth & Learning`
|
||
|
|
- `## Manager check-in notes`
|
||
|
|
- `## Submitted Connect`
|
||
|
|
|
||
|
|
### Evidence sources (READ ONLY)
|
||
|
|
|
||
|
|
Scan these for evidence to attribute to priorities:
|
||
|
|
|
||
|
|
1. `01 - Daily\*.md` — look in `## ✅ Tasks`, `## 📌 Highlights`, `## 🌙 Reflection` (Wins/Lessons), `## ✅ Action Items`, `## 💬 Teams Activity`, `## 🗓️ Meetings`.
|
||
|
|
2. `02 - Meetings\**\*.md` and `03 - Squads\**\Meetings\*.md` — meeting summaries, decisions, action items.
|
||
|
|
3. `03 - Squads\**\Status Updates\*.md` — explicit status writeups.
|
||
|
|
4. `03 - Squads\**\04 - Decisions.md` — squad decisions.
|
||
|
|
5. `00 - Inbox\*.md` — only if the file is dated within the window.
|
||
|
|
|
||
|
|
### Matching strategy (apply in order, dedupe)
|
||
|
|
|
||
|
|
1. **Tag match** — `#cp/<tag>` anywhere in a note attributes that note to the matching priority.
|
||
|
|
2. **Keyword/people/project match** — extract terms from each priority's `**People / projects / keywords:**` line plus the priority title; case-insensitive substring match against note body. Be conservative — require at least one strong match (a project/person, not a generic word).
|
||
|
|
3. **Recency window** — defaults: weekly = last 7 days, period-to-date = since `start` in frontmatter, custom = whatever the user passes.
|
||
|
|
|
||
|
|
When emitting evidence, always cite the source note as an Obsidian wikilink (e.g. `[[2026-05-11]]`, `[[2026-05-12 - OMR Reliability Cross-Squad Meetup]]`).
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Subcommands
|
||
|
|
|
||
|
|
The user may invoke any of these. If they say `/connect` with no subcommand, ask which one — show the table of options. If they describe an intent in natural language ("how am I doing on connect?"), pick the closest subcommand.
|
||
|
|
|
||
|
|
### `/connect status`
|
||
|
|
Show:
|
||
|
|
- The active Connect doc path + period + days remaining until `end`.
|
||
|
|
- Each Core Priority: title, tag hooks, **last evidence date** found in the vault, **count of evidence items** in the period.
|
||
|
|
- Cold priorities (no evidence in last 14 days).
|
||
|
|
- Top 3 gaps.
|
||
|
|
|
||
|
|
Do NOT write any file. Just respond.
|
||
|
|
|
||
|
|
### `/connect evidence [priority] [--since YYYY-MM-DD]`
|
||
|
|
List every evidence snippet matched, grouped by priority. If `priority` is omitted, do all. If `--since` omitted, default to last 7 days.
|
||
|
|
|
||
|
|
For each snippet include: source wikilink, date, one-line summary, why it matched (tag vs keyword).
|
||
|
|
|
||
|
|
Do NOT write any file. Just respond.
|
||
|
|
|
||
|
|
### `/connect checkin`
|
||
|
|
Generate a weekly check-in note from `Templates\Check-in.md`. Fill in:
|
||
|
|
- Per-priority new evidence (last 7 days), summarized in 1–3 bullets each.
|
||
|
|
- Gaps / risks (priorities with thin evidence, action items going stale).
|
||
|
|
- Suggested next actions (concrete, attributable to a priority).
|
||
|
|
- Cold priorities (>14d silent).
|
||
|
|
- "For the manager 1:1" section — punchy, max 5 bullets.
|
||
|
|
|
||
|
|
Save to `04 - Connects\Check-ins\YYYY-MM-DD.md` (use today's date in PT). If a check-in already exists for today, ask before overwriting; default to appending a `## Re-run HH:MM` section.
|
||
|
|
|
||
|
|
Then briefly tell the user the path and the top 3 highlights.
|
||
|
|
|
||
|
|
### `/connect draft`
|
||
|
|
Produce a narrative draft per priority suitable for pasting into HR Web. Style:
|
||
|
|
- 1–3 paragraphs per priority, written in first person, past/present tense as appropriate.
|
||
|
|
- Lead with impact ("what changed in the world"), then approach, then evidence.
|
||
|
|
- Reference specific work (project names, decisions, metrics) — pull these from the vault evidence.
|
||
|
|
- No fluff, no buzzwords beyond what the user already uses.
|
||
|
|
|
||
|
|
Save to `04 - Connects\Drafts\YYYY-MM.md` (current month). Overwrite freely; this is a draft.
|
||
|
|
|
||
|
|
Then summarize what's in the draft and flag any priority where evidence felt thin.
|
||
|
|
|
||
|
|
### `/connect prep <name>`
|
||
|
|
Pull Connect-relevant evidence since the last 1:1 with `<name>` (look in `02 - Meetings\` for the most recent file containing that name, or fall back to last 14 days). Output as a markdown digest grouped by priority. Do NOT write a file unless the user asks.
|
||
|
|
|
||
|
|
If `<name>` matches the `manager:` frontmatter, this is a manager-prep run — include the Submitted Connect snippet from the doc and a "what I'd like to discuss" section.
|
||
|
|
|
||
|
|
### `/connect new <period>`
|
||
|
|
Scaffold a new Connect markdown:
|
||
|
|
1. Find the current active doc and set its frontmatter to `status: archived`.
|
||
|
|
2. Copy `Templates\Connect Period.md` to `04 - Connects\<period>.md` (e.g. `2026-H2.md`).
|
||
|
|
3. Substitute `{{period}}`, `{{start}}`, `{{end}}` based on the period name (H1 = Jan 1–Jun 30, H2 = Jul 1–Dec 31 of the year embedded in the period).
|
||
|
|
4. Tell the user to fill in titles, tags, and goals, then re-run `/connect status`.
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Implementation notes
|
||
|
|
|
||
|
|
- Use PowerShell `Get-ChildItem` + `Select-String` (or `grep` tool) to scan files efficiently. For large scans batch by month rather than reading every file.
|
||
|
|
- Always parse frontmatter via simple line-based regex; don't pull in YAML libs.
|
||
|
|
- Use `[[wikilink]]` style with the file's basename (no `.md`, no path) for Obsidian compatibility.
|
||
|
|
- All "today" decisions use America/Los_Angeles. Use `Get-Date` formatted as `yyyy-MM-dd`.
|
||
|
|
- When generating, be honest about gaps. Do not fabricate evidence. If a priority truly has no matched notes, say so explicitly.
|
||
|
|
- Sensitivity: Connect content is private. Never send drafts via Teams/email automatically. Files inside the Obsidian vault are fine.
|
||
|
|
|
||
|
|
## First-run guidance
|
||
|
|
|
||
|
|
If `04 - Connects\` has no `*.md` other than the templates, tell the user:
|
||
|
|
> "No Connect doc yet. Run `/connect new 2026-H1` (or your current period) to scaffold one, then fill in your Core Priorities and tags."
|