Skip to content

v0.2.1 — ship 3 missing skills + 2 hooks + PII scrub

Latest

Choose a tag to compare

@the-sid-dani the-sid-dani released this 19 May 06:25
· 5 commits to main since this release

Point release — ships three productivity skills and two SessionStart/PreToolUse hooks that should have been in v0.2.0 but were missing from the extractor's allowlist. Plus a PII scrub of the new ship surface caught and fixed before the bundle ever left.

Re-extracted from daily-agents@46729b0.

Skills added (3)

  • /todo — Task tracking in personal Notion Action Items [DB]. Read-mostly: surfaces today's/tomorrow's tasks (/todo today), supports quick capture (/todo add "..."), and completion (/todo done "..."). Respects PARA-aligned schema (1st-5th Priority, LNO Category, Kanban Status, Projects [DB] relation). Wraps the official ntn CLI + Notion HTTP API. Never creates databases, renames properties, or deletes tasks (only Done/Archived status changes).
  • /end-of-day — Nightly task reconciliation routine. Cross-references today's calendar / meeting transcripts / sent emails / (optionally) Slack outbound messages against open Notion Action Items to propose done-candidates and surface new commitments not yet tracked. Never auto-marks done. Closes the loop where overdue items get done same-day but stay flagged "overdue", or tasks with no due date never surface in "today" views.
  • /atlassian-attach — Upload files (screenshots, diagrams, PDFs) as attachments to a Jira issue or Confluence page. Fills the gap the official Atlassian MCP leaves open (no attachment-upload tools). Pure stdlib Python via REST API; pairs naturally with /confluence-publish-markdown and /jira-decompose-epic. Auth via ATLASSIAN_BASIC_AUTH (classic API token only); instance via ATLASSIAN_INSTANCE env or --instance <name> CLI flag.

Hooks added (2)

  • session-start-tasks.mjs — SessionStart hook injects current Notion task state (overdue + due today, 1st Priority) into session context so the assistant is always aware of pending tasks before responding. Fails silently if NOTION_API_TOKEN / NOTION_ACTION_ITEMS_DS env vars are missing. Pairs with /todo.
  • pre-slack-draft-contact-check.mjs — PreToolUse hook that, when drafting/sending a Slack message to a known contact, emits the contact-file context to stderr so the model sees relationship + open commitments + tone notes BEFORE the draft lands. Requires a .claude/.slack-id-map.json (Slack user IDs → contact slugs) and contact files at <workspace.root>/3-Resources/contacts/<slug>.md. Auto-discovers workspace root via glob — works for any workspace name set by /bootstrap.

Changed

  • scripts/extract-template.sh allowlist: 45 → 48 skills, 7 → 9 hooks copied.
  • atlassian-attach/scripts/attach.py: removed hardcoded sambatv Atlassian-subdomain default; now empty default with clear error pointing to ATLASSIAN_INSTANCE env or --instance flag.

PII scrub (caught + fixed before extraction)

  • Hooks: "Beru is always aware" → "the assistant is always aware"; "When Sid says..." → "When the user says..."; named-incident narrative in pre-slack-draft-contact-check header rewritten to generic setup instructions.
  • /todo: "Samba TV workspace" + siddani09@gmail.com reference rewritten; "Sid promised X to Y" example → <user.name> promised X to Y.
  • /todo/lib/ntn.sh: "Sid's convention from MEMORY""PARA-aligned convention".
  • /atlassian-attach docs: sambatv.atlassian.net URLs → acme.atlassian.net; AITF-450 examples → PROJ-450.

Upgrading

git pull
# No installer re-run needed — the new skills/hooks load on next claude launch.

The two new hooks are already wired in .claude/settings.json and fail silently if their setup is missing — so they're zero-config and zero-friction for fork users who haven't opted in.

Acceptance gate

All three extractor Phase 10 leakage passes (PII / path-refs / T1 invariant) clean on this export.

🤖 Generated with Claude Code