← all publishers

conorluddy

@conorluddy source repo

32 published skills

  1. Discord Server · conorluddy bundle
    Manage a Discord server via CLI commands. Use this skill whenever the user mentions Discord, wants to post messages, manage channels or roles, check member lists, send embeds, or do anything related to Discord server management. Trigger phrases: "post to Discord", "check the server", "announce", "who's in the Discord", "create a channel", "set up a role", "manage server", "assign role", "send message to Discord", "read Discord messages".
    0
    installs
  2. Tokextract · conorluddy
    Extract a design system (DTCG tokens + DESIGN.md + audit) from any SwiftUI codebase
    0
    installs
  3. Obsidian Link · conorluddy
    Link, inspect, or unlink a project's Claude Code agents and skills in an Obsidian vault. Four modes: `/obsidian-link` (link, default), `/obsidian-link status` (health check), `/obsidian-link unlink <project>` (remove), `/obsidian-link init` (configure plan frontmatter in CLAUDE.md). Handles idempotency, broken symlink detection, Plans symlink, and auto-generates an Obsidian index note with wikilinks.
    0
    installs
  4. Obsidian Github Issue Fetcher · conorluddy bundle
    Fetch GitHub issues into Obsidian as markdown notes — turn your vault into an issue tracker with Dataview queries, tags, and graph view. Fetch issues as notes, GitHub issues in Obsidian, issue tracker in vault, Dataview issues dashboard. Four modes: `/obsidian-github-issue-fetcher` (fetch, default), `/obsidian-github-issue-fetcher status` (last fetch info), `/obsidian-github-issue-fetcher init` (configure vault path), `/obsidian-github-issue-fetcher --dry-run` (preview without writing). Also supports `--force` to re-fetch all issues regardless of changes.
    0
    installs
  5. IOS Aso · conorluddy bundle
    Generate a paste-ready English (U.S.) App Store Optimization metadata file (ASO.md) for an iOS app by scanning its Swift/SwiftUI codebase. Produces App Name (30), Subtitle (30), Keywords (100), Promotional Text, Description, category recommendations, screenshot caption suggestions, IAP names, and a research-notes appendix grounded in the codebase. Use this skill whenever the user mentions ASO, App Store Optimization, App Store metadata, app store listing, app name, app subtitle, keywords field, App Store Connect copy, App Store keywords, app store description, promotional text, custom product pages, or wants help writing/auditing/improving the metadata for an iOS App Store submission — even if they don't say "ASO" explicitly. Also trigger when the user asks to prepare an app for submission, audit a listing for rejection risk, pick a category, or extract keywords from a codebase.
    0
    installs
  6. Openhue · conorluddy bundle
    Control Philips Hue lights from the CLI. Use this skill whenever the user wants to control smart lights, adjust brightness or color, manage lighting scenes, or automate lighting. Examples include turning lights on/off, setting brightness levels, changing colors, controlling multiple lights/rooms at once, discovering light bridges, or configuring Hue bridge connections. Works with individual lights, entire rooms, or batch operations across multiple devices.
    0
    installs
  7. And Then · conorluddy
    Ambiguity-first planning — identify and resolve unknowns before committing to a plan. Use when the user wants to plan, scope, or think through work before building.
    0
    installs
  8. Sonos CLI · conorluddy bundle
    Control Sonos speakers from the CLI using the `sonos` command. Translates natural language requests into sonos CLI commands for playback, volume, grouping, queue management, and music search. Use this skill whenever the user mentions Sonos, asks to play music on a speaker, control volume on a room, group or ungroup speakers, manage their Sonos queue, or references speaker names like "Kitchen" or "TV". Trigger phrases: "play X on Sonos", "turn up the kitchen speaker", "pause Sonos", "what's playing on Sonos", "group my speakers", "play my Sonos favorites", "Sonos volume", "skip track on Sonos", "add to Sonos queue".
    0
    installs
  9. Team Work · conorluddy bundle
    Decompose the current session's jobs-to-be-done into a parallelizable task plan for an agent team. Assigns each task a model tier (haiku / sonnet / opus) and a specialist subagent when one fits. Organises work into dependency waves with no shared-file edits inside a wave to avoid merge conflicts. Use this skill whenever the user says "team this up", "use a team", "use agent teams", "delegate this", "split this work", "parallelize this", "fan this out", "divide and conquer", or otherwise asks to coordinate multiple agents on work already discussed in the session. Also trigger when the user says a task is big and wants help farming it out, or when they explicitly invoke /team-work.
    0
    installs
  10. Spec Speak · conorluddy bundle
    Convert any subject matter — rough feature ideas, brain-dumps, meeting notes, loose PRDs, existing docs — into a rigorous, testable spec written to industry requirements standards (EARS templates, RFC 2119 keywords, INCOSE/ISO 29148 rules, Gherkin acceptance criteria). Use this skill whenever the user wants to write, rewrite, tighten, or formalize a PRD, technical spec, requirements document, or acceptance criteria, or says things like "spec this out", "formalize this", "turn these notes into a spec", "write requirements for", "make this testable", "tighten this doc", or shares loose product thinking that needs to become an unambiguous document. Also use it to audit an existing spec for ambiguity, weak words, and untestable requirements.
    0
    installs
  11. Code Review · conorluddy bundle
    Review code against Conor's style guide — naming, progressive disclosure, function design, error handling, agentic patterns, and token economics. Use this skill whenever the user asks for a code review, says things like "review this", "check my code", "look over this PR", "roast this", asks for feedback on a diff/branch/file, or after finishing an implementation and wants a pass before commit. Also trigger proactively after substantial code changes where a self-review would catch issues. Produces a structured findings report grouped by severity (blocker / major / minor / nit) with file:line references and concrete suggested fixes — not generic platitudes.
    0
    installs
  12. Liquid Glass · conorluddy bundle
    Implement iOS 26 Liquid Glass effects in SwiftUI and UIKit. Use this skill whenever the user mentions liquid glass, glass effects, glassEffect, iOS 26 UI design, translucent navigation bars, glass morphing, GlassEffectContainer, or wants to add the new Apple glass material to their app. Also use when migrating an existing app's UI to iOS 26 style, or when the user asks about glass button styles, tab bar minimization, or the new sheet presentations.
    0
    installs
  13. Claude Md Kit · conorluddy bundle
    Compose or extend a project's CLAUDE.md from a library of stack-agnostic, composable prompt-segment modules (naming, error handling, testing, agentic patterns, a condensed spec-speak, etc.) stored as standalone files under references/. Use this skill whenever the user wants to bootstrap a new CLAUDE.md, add a specific convention module to an existing one, or audit a CLAUDE.md against the standard module set. Also use when the user says "compose a CLAUDE.md", "give me a starter CLAUDE.md", "add the [topic] module", or "what conventions are we missing".
    0
    installs
  14. Github Labels · conorluddy
    Set up structured GitHub issue labels for any repository. Installs curated label groups (priority, clarity, risk, blast radius, size, parallelism, sequencing, type, and special labels) using the GitHub CLI. Use this skill when a user mentions "set up labels", "github labels", "label taxonomy", or wants to organise their issue tracker.
    0
    installs
  15. Swift Accessibility Agent · conorluddy
    Swift Accessibility Agent
    0
    installs
  16. Vestige Why · conorluddy
    Use this skill when you want to know where a memory came from, need to explain its provenance, or must audit what was captured and when. Fire when the user says "where did this come from?", "explain that memory", "why do we have mem_X?", "show provenance for X", "what's the source of mem_X?", or "trace this memory back". Works for both memories and pre-approval candidates. Soft-deleted memories are included — provenance is always inspectable.
    0
    installs
  17. Vestige Show · conorluddy bundle
    Expand a Vestige memory at higher fidelity once you have its handle (a `mem_<ULID>` string). Use this skill after `vestige-recall` returns a card whose `one_liner` isn't enough, when the user says "show me memory <id>", "expand <id>", "what does <id> say in full?", "read me memory <id>", or whenever you need the *body*, *rationale*, or *source content* of a memory rather than the compact handle. Depth ladder — one_liner → summary → compressed → full. Default is summary; pass `--depth full` to read the entire body.
    0
    installs
  18. Vestige Review · conorluddy
    Review Vestige code against this repo's CODESTYLE.md, CLAUDE.md, and PRD — naming, progressive disclosure, error handling, agentic patterns, and the seven hard architectural rules (soft-delete only, project-scope boundary, immutable migrations, one-way crate deps, newtype IDs, MCP intent-not-mechanics, no daemon). Use when the user says "vestige-review", "review this", "review my branch", "check my code", "look over this PR/diff", "roast this", "is this ready to merge", or after finishing work in any Vestige crate. Prefer over the global code-review skill inside this repo — it layers Vestige-specific rules on top of the style guide and produces findings grouped by severity (blocker / major / minor / nit) with file:line citations and concrete fixes.
    0
    installs
  19. Vestige Forget · conorluddy bundle
    Soft-delete a Vestige memory by its handle (`mem_<ULID>`) when the memory is wrong, superseded, or stale. Fire when a decision has been reversed, a note is no longer accurate, an open question has been answered, or the user says "forget memory <id>", "that's outdated", "remove <id>", "drop that memory", "we don't do that anymore". Flips status to `deleted` and drops the memory from search results — the row stays in the journal. Reversible via `vestige-restore`.
    0
    installs
  20. Vestige Recall · conorluddy bundle
    Search Vestige memory before a decision, refactor, or library choice — any time you suspect "we already discussed this". Fire when the user says "have we decided this?", "what did we say about X?", "look up our notes on Y", "is this already settled?", "search memory for Z". Lexical (BM25) by default; `--hybrid` for merged lexical + semantic recall (requires `vestige embed --all`); `--semantic` for cosine-only. Returns ranked compact cards with `mem_<ULID>` handles. Use `vestige-show <id>` to expand.
    0
    installs
  21. Vestige Context · conorluddy bundle
    Render the project's Vestige context pack — summary, recent decisions, open questions, recent activity — as a budget-bounded brief. Use at session start, before unfamiliar work, after a long pause, or when the user says "what's the state of this project?", "where are we?", "catch me up", "what have we decided?", "what's outstanding?", "give me the rundown". Returns a JSON envelope with `summary`, `decisions[]`, `open_questions[]`, `recent[]`. Token budget defaults to 1200 — pass `--budget-tokens` to adjust.
    0
    installs
  22. Vestige Restore · conorluddy bundle
    Restore a previously soft-deleted Vestige memory by its handle (`mem_<ULID>`). Use when a memory was forgotten in error, when the situation has reverted (a decision that was reversed gets re-affirmed), or the user says "bring back <id>", "restore <id>", "undo that forget", "that memory should still be there". Re-flips status from `deleted` to `active` and re-indexes the memory's representations into FTS. Note — embeddings are left stale by restore (they'll re-embed on the next `vestige embed` run).
    0
    installs
  23. Vestige Sources · conorluddy
    Use this skill when you need the raw source receipts for a memory or candidate — the typed evidence rows, not the narrative walk. Fire when the user says "what sources back mem_X?", "show me the source receipts", "list the sources for mem_X", or "filter sources by kind agent_session". Use `vestige-why` when you want the full provenance narrative including events; use this skill when you want the tabular source index only.
    0
    installs
  24. Vestige Trace List · conorluddy
    Use this skill when you want to audit what queries the agent or CLI has run against project memory. Fire when the user says "what queries did the agent run?", "show recent trace events", "did anyone search for X recently?", or "list traces by caller mcp". Every vestige search, recall, expand, and context call writes a query_events row automatically — this skill surfaces them. Use vestige-trace-show to expand a single trace.
    0
    installs
  25. Vestige Trace Show · conorluddy
    Use this skill when you want to expand a specific trace to its full detail — the query text, mode requested vs resolved, provider, result IDs, and scores. Fire when the user says "expand trace_X", "show me what trace_X returned", or "what did that search find?". Use vestige-trace-list first to find the trace_id, then this skill to inspect one in full.
    0
    installs
  26. Vestige Record Note · conorluddy bundle
    Capture a general project note to Vestige memory for non-trivial facts, workarounds, gotchas, aha moments, TILs, code smells, or durable TODOs — anything worth keeping that isn't a decision, preference, or open question. Fire on "good to know:", "TIL", "note that…", "heads up:", "FYI:", "turns out…", "the reason X happens is…", "TODO:", "smell:", "careful — X", or when the user says "jot this down", "note that down", "remember this fact". Default importance 0.5. Returns the new handle (`mem_<ULID>`).
    0
    installs
  27. Vestige Trace Replay · conorluddy
    Use this skill to re-run a stored trace against the current memory store and diff the results against the original — answering "would the agent get the same answer today?". Fire when the user says "re-run trace_X", "replay that search", "diff trace_X against current state", or "did the answers drift?". Read-only: writes a NEW query_events row tagged with replay_of; never mutates the original trace or any memory. provider_match=false flags embedding drift.
    0
    installs
  28. Vestige Auto Memorise · conorluddy bundle
    Fires automatically — without the user asking — when the conversation produces something a future session would want. Watch for decisions ("we'll go with…", "settled — X"), preferences ("I prefer…", "always…", "never…", "make sure to…"), open questions ("TBD", "unclear whether…", "follow-up:"), TILs / aha moments, gotchas ("careful — X breaks Y"), smells, workarounds, root causes, and broken assumptions. Probe `vestige recall` first to dedup, then dispatch to `vestige <subcommand> add`. Surface: `Recorded <kind> mem_<ULID>.` Do not wait for "remember this".
    0
    installs
  29. Vestige Scan Sessions · conorluddy
    Mine recent local coding-agent transcripts for memories worth keeping, using the `vestige_scan_sessions` MCP tool. Fire at session start (to catch up on what happened in prior sessions), when the user says "scan my sessions", "what did we work on recently?", "catch up from my transcripts", "ingest recent sessions", "mine my history", or when picking up a project after a pause. The tool hands you redacted, cursor-advanced turns from this project's Claude Code and Codex transcripts; you extract decisions/notes/preferences/questions inline and file each via `vestige_propose_candidate`. Opt-in — requires `[mcp] allow_scan_sessions = true` in `.vestige/config.toml`. Candidates land in the assimilation inbox for human review, never as durable memories directly.
    0
    installs
  30. Vestige Record Decision · conorluddy bundle
    Capture a project decision to Vestige memory when committing to an architectural choice, picking approach A over B, settling a tradeoff, or choosing a library / framework / pattern. Fire on "we'll go with…", "let's use…", "decision:…", "I'm choosing X over Y because…", "settled — we use…", "going with X", or when the user says "capture that decision", "remember this", "record it". Decisions ground future reasoning and feed every `vestige context` pack. Captures body, rationale (the why), and importance (default 0.7). Returns the new handle (`mem_<ULID>`).
    0
    installs
  31. Vestige Record Question · conorluddy bundle
    Capture an open question to Vestige memory when an ambiguity can't be resolved now and needs a human, investigation, or later session. Fire on "TBD:", "open question:", "we should figure out…", "unclear whether…", "follow-up:", "to investigate:", "leaving X open", or when the user says "capture that as a question", "we'll come back to that", "park that for now", "good question — note it down". Questions surface in every `vestige context` pack until `vestige-forget`'d (typically when answered via `vestige-record-decision`). Default importance 0.5. Returns the new handle (`mem_<ULID>`).
    0
    installs
  32. Vestige Record Preference · conorluddy bundle
    Capture a user preference to Vestige memory when the human expresses a convention, opinion, or "how I like things done". Fire on "I prefer X", "always use Y", "don't do Z", "we always…", "never…", "I like…", "I don't like…", "make sure to…", "do not…", "convention:…", "rule:…", "house style:", "in this project we…", or when correcting your own output to match what the user just said. Preferences constrain every future agent run via the `vestige context` pack. Default importance 0.6. Returns the new handle (`mem_<ULID>`).
    0
    installs