A personal Copilot CLI agent that helps me (and maybe you) track what I'm actually spending my days doing.
I shipped this repo publicly so others can fork it, gut the personal bits, and adapt it. Nothing here references my actual work — all of that lives in a gitignored private/ directory on my laptop. The only thing committed is the generic agent definition, skills, and templates.
- Accepts a free-form "I'm starting on X" dump (with optional links) and turns it into:
- A tracking issue or PR link (when relevant)
- An entry on a GitHub Project (v2) board with status To do / In progress / Paused / Done
- A durable internal note in
private/tasks/<task-id>/
- Models concurrent work natively. I have ADHD and routinely have several things in flight at once —
start-tasknever auto-pauses anything. Switching focus is cheap (switch-to); pausing is an explicit, deliberate action. - Reviews Slack output a few times a day and proposes tracking entries for significant time-sinks or notable threads — without marking anything read.
- Reads Outlook calendar (via WorkIQ) for morning briefings and meeting prep.
- Turns Teams meeting transcripts into durable, Obsidian-friendly notes.
- Peeks at running Copilot CLI sessions to figure out what I've actually been doing when I forget to tell it.
- Produces a shareable end-of-day summary and a "what should I be doing today" morning brief.
- Auto-mark Slack messages as read.
- Post to your project board on your behalf without confirmation on the first run of a new skill.
- Commit anything that lives under
private/— gitignore is enforced.
- GitHub Copilot CLI
- MCP servers:
- A GitHub Project (v2) board with a single-select
Statusfield including optionsTo do,In progress,Paused,Done. AddPausedvia the project's field settings if it isn't present.
- Clone this repo to wherever you keep your tools.
- Copy
private/config.example.jsontoprivate/config.jsonand fill in your board info:{ "board": { "owner": "your-org-or-user", "owner_type": "org", "project_number": 12345, "status_field_id": "PVTSSF_...", "status_options": { "todo": "...", "in_progress": "...", "paused": "...", "done": "..." } }, "user": { "login": "your-github-handle" }, "tracking_repo": "your-github-handle/waddy" } - Initialize
private/state.json:{ "active_tasks": [], "focus": null, "paused_tasks": [], "recent_completed": [], "tasks": {} } - Open Copilot CLI in this directory. The repo-level custom agent in
.github/agents/waddy.mdwill load automatically. - Try
waddy, start a task: experimenting with waddy.
| Path | What it is |
|---|---|
.github/agents/ |
Custom agent profiles loaded by Copilot CLI |
skills/ |
Composable skill instructions (each is a SKILL.md) |
skills/_lib/ |
Shared conventions referenced by multiple skills |
templates/ |
Generic body templates for issues and board cards |
docs/ |
Setup guides for optional integrations (Google Calendar, etc.) |
private/ (gitignored) |
All real-work state, raw captures, durable notes |
See docs/origin.md for the verbatim prompt that
kicked off this project, plus the follow-up that shaped the multi-active
task model.
Built collaboratively with Copilot CLI itself. The design intentionally favors observability over autopilot — waddy mostly proposes and asks; the human stays in the loop on what gets committed to memory and the board.
MIT — see LICENSE.