SashaMarchuk
UserSasha Marchuk's Claude Code plugins — opinionated tooling for ticket management, automation, and everyday engineering workflows. Marketplace install: /plugin marketplace add SashaMarchuk/claude-plugins
Categories
Indexed Skills (33)
ultra
Backing skill for the /ultra:run and /ultra:resume slash commands — multi-agent swarm with adversarial validation, structured debates, devil's advocate, and anti-AI-slop checks. Users invoke this via /ultra:run (or /ultra:resume); never via a bare /ultra. Supports tiers (--small/--medium/--large/--xl), multi-terminal coordination, and wrapping other skills.
build-copy-page
(beta) Assemble the self-contained, byte-exact copy page (out/index.html) plus out/README.md, per-card out/payloads/UNNN.json, and out/.gitignore from every kept brief and each created project's instructions. The reliable floor - always runs before any browser automation. Called by the run skill at the build-page step. Self-contained - no conversation history assumed.
config
(beta) Edit a migration run's settings between steps - profile tier, worker/seed parallelism, cost and brief thresholds, naming scheme, and the bucket role display labels - and re-author or swap the source/sink connector via a short interview. Writes the authoritative fields through bin/state.sh and mirrors record-only fields into config.yaml. Use when the user types /claude-migrate:config, or says "change the tier", "set parallelism", "raise the cost limit", "rename the buckets", "swap the connector", "use the live source instead of the export".
confirm
(beta) The interactive gate skill you run whenever the migration controller BLOCKS for a human decision. Runs the right gate round for the current blocked_reason - the filter-gate round (what migrates, naming, onboarding, memories, project grouping) plus the cost estimate, or the auto-reoffer + login/browser checks before browser seeding - then persists your answers, clears the block, and hands back to the controller. Use when the user types /claude-migrate:confirm, or says "confirm what migrates", "approve the migration", "run the browser accelerator".
distill-brief
(beta) Distill ONE kept chat into a paste-ready first message at briefs/UNNN.brief.md plus a target title at briefs/UNNN.name.txt; standing requirements only; summarize long chats and overflow to a project knowledge doc above max_brief_tokens. Called by launch-worker.sh in parallel subprocesses. Self-contained - no conversation history assumed.
extract
(beta) The `split` step. Runs SOURCE enumerate + extract_unit + extract_projects (+ unit_project_ref) to write one normalized unit per chat into units/pending/ and per-project artifacts into project/<PNN__slug>/; live-mode secret-strip; seeds the preflight_* counters. Called by the `run` controller at step `split`. Self-contained - no conversation history assumed.
health
Diagnose a run's health and offer fixes for common failure modes. Checks stale locks, orphaned in-progress topics, corrupt state.json, counter drift, missing artifacts. Proposes repairs but does NOT auto-apply them.
init
Bootstrap a new analyzer run. Creates .planning/ultra-analyzer/<run-name>/ with state.json, config template, and seeds template. Use when starting a new analysis of ANY corpus (Mongo, filesystem, HTTP API, browser, SQLite, JSONL, etc.).
preflight-value
(beta) Score the migration value of ONE already-claimed chat unit into value/UNNN.value.json with a categorical {bucket, value, confidence, reason, looks_duplicate_of?}, then release. No token math, no GROUPED. Called by launch-worker.sh in parallel subprocesses. Self-contained - no conversation history assumed.
progress
Show current analyzer run status in a human-readable format. Reads state.json and prints the pipeline step, counters, gate verdicts, and what the user should do next.
resume
(beta) Crash-safe resume for an interrupted migration. Dumps current progress, clears orphan locks, requeues orphaned in-progress units, re-renames any chat that already had its first turn (awaited_ok) but was not renamed, re-polls a seeded chat for its first turn, runs a destination dedupe probe on any ambiguous "opened" chat before re-seeding, re-opens a blocked user gate, then hands back to the controller. Use when the user types /claude-migrate:resume, or says "resume my migration", "continue where I left off", "I dropped the export, pick it up".
run
Advance the analyzer pipeline by one step based on state.json. Runs gates (/ultra) at critical boundaries, pauses for user action when blocked. Idempotent and resume-safe.
sink
(beta) Universal SINK executor for claude-migrate. Reads the run's sink-connector.md contract and executes exactly ONE of 7 contract operations (prepare, dedupe_probe, create_project, seed_unit, finalize_unit, finalize_run, rate_limit_check). Sink-agnostic - knows nothing about the specific destination; all behavior lives in the run's sink-connector.md. Called by the apply-unit skill and bin/sink-adapter.sh. Self-contained - no conversation history assumed.
source
(beta) Universal SOURCE executor for claude-migrate. Reads the run's source-connector.md contract and executes exactly ONE of 7 contract operations (enumerate, extract_unit, extract_projects, unit_project_ref, account_check, citation_anchor, forbidden_fields). Source-agnostic - knows nothing about the specific source; all behavior lives in the run's source-connector.md. Called by the extract skill and bin/adapter.sh. Self-contained - no conversation history assumed.
synthesize-project
(beta) Build per-project Custom Instructions (migration + steady variants) and copy knowledge docs for every destination project that has at least one kept chat assigned. Skips zero-kept projects. Called by the run skill at the synthesize step. Self-contained - no conversation history assumed.
verify
(beta) The verify gate - run node bin/verify-copy-page.cjs for a headless byte-exact copy-page check, spawn a cross-model brief==source audit on a different model than distilled the briefs, reconcile apply/*.result.json, flag injection-class briefs, and surface the kept==0 message. Re-runnable on demand. Use when the user types /claude-migrate:verify, or says "verify the migration", "re-run the copy-page check", "audit the briefs".
clickup
ClickUp ticket creation, modification, and workspace management with enforced quality standards. Creates consistent tickets using Connextra user stories, evidence-only descriptions, fuzzy list aliases, first-name teammate resolution, bug-keyword type inference, priority-keyword inference, duplicate detection, idempotent create, and preview-and-edit confirmation. Includes a two-step onboarding wizard, persistent user config + memory files, and a stale-config reminder. Use when the user types /clickup, /clickup --auto, /clickup --onboard, /clickup --memory, /clickup --status, /clickup --workspace, or says "create a ticket", "add to backlog", "put in ClickUp", "make a task", "file a bug in ClickUp", "create a ClickUp task", or references a ClickUp list, task, or workflow.
gevent
Google Calendar event management with Google Meet. Creates, updates, and cancels events via `npx @googleworkspace/cli`. Always attaches a configurable notes bot, checks for conflicts before creating, guards against past-time typos, and resolves attendee names against the shared `~/.claude/shared/identity.json` teammate roster (same file `/clickup` uses). Two-step onboarding writes `~/.claude/gevent/config.json` (calendar defaults + always-include list) and shares user + teammates with `/clickup`. Use when the user types `/gevent`, `/gevent:schedule`, `/gevent:schedule --auto`, `/gevent:onboard`, `/gevent:status`, `/gevent:calendar`, or says "schedule a call", "set up a meeting", "book a call with X", "move the meeting to Y", "cancel the Z call", or references a Google Meet / Calendar event.
analyze-unit
Execute ONE already-claimed topic file. Runs its queries via the universal connector, writes findings, invokes validator, releases topic. Self-contained — no conversation history assumed. Called by launch-terminal.sh in parallel subprocesses.
connector-init
Interactively generate a custom connector.md for a run by interviewing the user about their data source. Use when no template fits (e.g. a proprietary API, a custom on-disk format, a browser-driven extraction).
connector
Universal source connector. Reads the run-specific connector.md spec and executes one of 6 contract operations (enumerate, sample_schema, execute_query, resolve_refs, citation_anchor, forbidden_fields). Source-agnostic — works for any data type as long as the run's connector.md defines how.
discover-topics
Generate self-contained topic files from config.yaml + seeds.md. Delegates schema sampling and unit enumeration to the configured connector. Output is markdown topic files under topics/pending/.
explore
Socratic interview to help decide WHAT to analyze and WHY before committing to seeds. Use when you have a data source but don't yet know the right questions to ask.
help
Show the ultra-analyzer command guide with onboarding flow and per-step recovery. Use when the user doesn't know where to start, is stuck at a step, or wants a command reference.
list-runs
List all ultra-analyzer runs in the current project, with current step, status, profile, and key counters. Use to find where you left off across multiple analyses.
next
Reads state.json and tells the user the single next action to take. Unlike /run which advances state, /next only ADVISES — it won't invoke /ultra gates or launch workers. Use when you forgot where you left off or want to know before committing.
pause
Write a handoff document for a run so you can switch contexts and resume cleanly later (or hand off to someone else). Snapshots state, notes pending decisions, lists next actions.
resume-run
Resume an interrupted analyzer run from its last checkpoint. Alias for /ultra-analyzer:run with explicit resume semantics and a progress dump first.
scan
Quick assessment of a data source BEFORE committing to a full run. Estimates unit count, size, field inventory, and suggests a connector template. Use to decide "is this worth analyzing" or "which connector fits".
set-profile
Switch a run's profile tier (small/medium/large/xl). Controls /ultra gate rigor, worker model, validator model, topic target count, and suggested parallelism.
synthesize-report
Opus synthesis across all PASS findings into synthesis/REPORT.md. Triangulates redundancy pairs, flags divergence without averaging, produces Top-N compelling findings with narrative + curated quotes. Runs after Gate 2 (/ultra pre-synthesize) approves.
validate-finding
Validate a single findings file against grounding, schema, anti-hallucination, forbidden-fields, and contradiction-honesty checks. Runs on a DIFFERENT model than the worker to prevent hallucination capture.
log-time
Generate a paste-ready time-log for Redmine (or any tracker the user's config describes) by cross-checking the evidence sources the user configured — calendar events, task-tracker activity, Claude Code session history, meeting transcripts, spreadsheets, or any custom source. Behavior (sources, target tickets, day rules, output format) comes from the free-form config at ~/.claude/log-time/config.md; the skill itself makes no assumptions about working hours or which sources exist. Use ANY time the user wants to log time, prep daily/weekly tracker entries, reconstruct what they did on past dates, batch-fill timesheets, or asks "what was I working on between X and Y" with the intent of logging hours. Trigger on phrases like "/log-time", "log my time", "log time", "time log", "redmine entries", "timesheet", "fill in my hours". Evidence-only output with confidence ratings; read-only against every source.
Bio shown is the top-scored skill's repo description as a fallback — real GitHub bios land in a future update.