thefilesareinthecomputer
UserPortable agent skills, subagents and commands, with per-harness station specs.
Categories
Indexed Skills (30)
ai-slop-magic-eraser
Strips the tells of machine-generated writing while preserving meaning exactly, then corrects errors, hallucinations, contradictions and inventions. Removes hedging, sycophancy, meta-commentary, inflated register, formulaic cadence, em dashes and emojis, and equally fixes the opposite failure - clipped aphoristic prose that asserts instead of informs. Use when text is described as reading like AI, like ChatGPT, generic, templated, bloated, corny, cringe, or "not how I talk"; when it reads as clipped, noir, preachy, or like it is performing authority; when polishing any model-drafted document before it ships; when asked to de-slop, tighten, or humanize writing. Read it BEFORE drafting a document someone else will read. Ships a linter (scripts/slop_check.py). Not for code logic.
dimensional-data-modeling
Designs, reviews, and hardens Kimball-style dimensional models - star schemas, conformed dimensions, bus matrix, slowly changing dimensions. Use when modeling analytical data for a warehouse, lakehouse, or BI semantic layer - declaring a fact table's grain, deciding whether something is a fact or a dimension attribute, picking an SCD type for an attribute that changes, or drafting the bus matrix that makes cross-process reporting reconcile. MUST be used whenever star-schema DDL, a dbt mart, or a model spec is reviewed or handed to an ETL team, because mixed grains, nullable foreign keys and a type 2 dimension keyed on its business key are cheap to catch there and expensive once history is loaded. Ships an offline checker (scripts/dim_check.py).
django
Builds, operates, and hardens Django and Django REST Framework projects - from a cold start or inside an existing codebase. Use when scaffolding a new Django/DRF project, when adding or changing models, serializers, viewsets, permissions, or migrations, when inheriting an unfamiliar Django repo and needing to orient in it, when an endpoint is slow or the ORM is issuing hundreds of queries (N+1), when a migration needs to ship without downtime, when an API is or might be exposed (DRF's default permission is AllowAny - it fails OPEN), and when reviewing Django code before merge or deploy. Ships a deterministic AST-based checker (scripts/django_check.py) for the DRF footguns that `manage.py check --deploy` does not catch, and drives Django's own tooling rather than duplicating it.
docker
Scaffolds, operates, reviews and hardens containerized projects - from a cold start or inside an existing repo. Use when containerizing an app, when authoring or editing any Dockerfile/Containerfile/compose file, when inheriting an unfamiliar repo that has one, when a build is slow, an image is fat, or the layer cache never hits, when a container runs as root or leaks secrets into layers, when a container will not start or dies mysteriously (137/OOM, 126, 127), when debugging a container, reclaiming disk, or pushing to a registry, and when reviewing container config before it ships. Also use before granting a container ANY host privilege (Docker socket, privileged, host network, bind-mounting /), which warrants a hard stop. Ships scripts/docker_check.py and drives hadolint and trivy.
frontend-aesthetics
Raises the visual quality of agent-generated UI so it stops reading as AI slop, and audits existing UI against a catalog of tells. Use BEFORE writing the first line of markup for any user-facing surface (landing page, marketing site, dashboard, app screen, docs site) - not after, when the defaults are already baked in. Also use whenever a UI is described as looking generic, templated, "AI-generated", soulless, or "like every other site", when asked to make something look better/more premium/less default, when redesigning or critiquing an existing interface, or when reviewing UI a model produced. Ships a deterministic linter (scripts/slop_check.py) for the countable tells; the judgment calls stay human. Not for chart/data-viz design, and not for layout BUGS (that is debugging, not taste).
machine-learning
Builds, ships and operates predictive models - framing the problem, constructing features and splits, training reproducibly, serving, and knowing when to retrain. Use when deciding whether something is an ML problem, defining a target and the baseline it must beat, designing splits for time-ordered or grouped data, choosing a model family and a tuning budget, reviewing training code, or diagnosing a model that validated well and disappoints in production - train/serve skew, drift, retraining triggers. Covers leakage prevention, imbalance, encoding and missingness. Not for whether an improvement is real (statistics), stack selection or LLM, RAG and agent design (ai-engineering), or pipelines and warehouses (data-engineering). Ships an offline AST auditor (scripts/ml_check.py).
agent-cc-configs-sync
Seeds a new device or idempotently reconciles an existing one against the Claude Code station spec in specs/claude-code/ - pulls the latest ~/.agents first, vets the inbound delta and alerts on anything breaking or critical, runs sync-skills.sh, applies the global CLAUDE.md and RTK.md templates, then diffs settings, hooks, statuslines, keybindings, plugins and CLI deps item by item, asking the user which drifted items to apply. Invoked explicitly (/agent-cc-configs-sync) when setting up Claude Code on a new machine, bringing a device up to date with the specs, or checking a station for drift. External installs (brew, plugins, claude-mem) are an opt-in second step. The git commit/push ritual is repo-device-sync, not this.
agent-mail
Send and receive templated markdown messages between agents via <agent-root>/inbox/ folders - the file-based channel between peer agents working separate repos on the same machine. Use when asked to message, notify, hand off to, or request something from another agent or repo ("tell the vault agent", "send them a design request", "reply to that message"); when asked whether another agent has answered or anything new arrived; when a session-start notice reports unprocessed inbox messages that need reading, acting on, and resolving; for the closing sweep that buckets remaining messages by what they still owe; and to send to any inbox path. Human email, Slack, and calendar invitations are different systems and are not this.
ai-agent-project-scaffold
Stand up a new AI/agent project - or add an AI subsystem to an existing repo - starting from a requirements intake and ending in a committed full stack. Use when the user says "scaffold an agent project", "bootstrap a RAG/agent repo", "add an agent to this codebase", "add an AI/LLM feature to our existing app"; when they ask for the stack for a specific system they intend to build ("get me a stack", "which stack should we use"), as opposed to open-ended options questions, which go to ai-engineering; when they make ANY "build me an agent that does X" request, because the intake may rightly conclude a plain script suffices; and when a vague AI build idea needs shaping first, in which case it calls interview-me and idea-refine. Hands implementation to agent-skills.
ai-engineering-update
The write path for the ai-engineering tooling corpus - keeps it current, deduplicated, and honest about what we have actually seen. Three jobs. DISCOVER new AI tools and fold them in ("refresh the AI tooling", "any new agent frameworks", "add these AI links"). VERIFY what changed ("check the catalog for staleness", "is X still current", "did that project get archived"). RECORD first-hand experience with a tool, good or bad ("note that X broke for us", "log that Y worked", "that framework's docs were wrong") - use it whenever a tool in the corpus is actually used and something is learned, not only during a maintenance pass. Wraps scripts/ledger.py and the deep-research skill.
ai-engineering
Authoritative source of truth on AI tooling and how to choose it - the knowledge behind building AI agents and AI systems. Use when choosing between agent frameworks, harnesses, memory, RAG, ingestion, serving or eval components; when weighing an architecture for an agent/LLM system; when asked "what's the current state of X", "what are my options for Y", "is Z still maintained", or "what license is Z"; and when reviewing whether an AI design honors sound engineering practice. Answers come from the bundled dated corpus, not from training memory. Standing up a new AI project or adding an AI subsystem to an existing repo goes to ai-agent-project-scaffold; updating the corpus goes to ai-engineering-update; general engineering discipline to agent-skills; MCP servers to build-mcp-server.
code-kg
Builds and queries a SQLite+FTS5 knowledge graph over any codebase - import/dependency edges, symbols with line ranges, entry points, liveness tiers that shortlist dead code, agent-tooling layer, data-store inventory. Parses python, javascript/typescript, go, rust, c/c++, java, c#, powershell, bash, sql, terraform, docker/compose/CI yaml, make, html/css, json, toml and markdown, stdlib only; understands tsconfig aliases and Django/Next.js wiring. Use to index, map or query a repo ("what imports X", "blast radius", "find dead code", "what databases does this use"), orient in an unfamiliar repo, trace how two files connect, or fold test coverage in to find never-executed code. Markdown corpora go to obsidian-kg. Fully offline except `coverage run` and `data --inspect`, both consent-gated.
cover-me
Spawn a fresh-context senior peer (the supervisor subagent) to scrutinize in-flight work and catch it going off the rails - scope drift, context rot, rookie mistakes, lazy shortcuts, over-engineering, correctness and safety landmines. Non-blocking and advisory. MUST be used when the user asks for a second set of eyes, a look-over, a double-check, or review before declaring work finished ("get a second set of eyes on it", "cover me on this") - spawn the supervisor rather than reviewing inline, because the fresh unanchored context is the point. On mission-critical or irreversible work, long context, visible frustration, or repeated failure of the same fix, OFFER the review and spawn only on the user's go-ahead, never unprompted. Invoked as /cover-me or /supervisor.
data-engineering
Data platform engineering on Databricks, Microsoft Fabric, Snowflake and open source. Use when choosing a platform, layering or boundaries; when picking an engine or dataframe library or a job outgrew one machine; when onboarding a source and weighing CDC against cursor polling; when a dbt or SQLMesh project is laid out or reviewed; when an incremental model leaves stale rows or a MERGE runs far too long; when quality checks must be placed; when a bill grew or must be capped; when catalogs, grants, masking or record matching are set up; and when judging an inherited platform. MUST be used when rows go missing or duplicate while every run reports green. Routes grain and SCD to dimensional-data-modeling, RAG to ai-engineering, quality-threshold choice and anomaly judgment to statistics.
deep-research
Expanded, multi-angle web research - an upgrade over a single WebSearch. Decomposes a topic into angles, runs parallel researcher subagents (one per angle, source-cited and dated), cross-validates their findings for contradictions and source authority, then synthesizes one confidence-rated, source-cited brief. Provider- and project-agnostic; writes nothing outside its output unless asked. Use for "deep research", "research X thoroughly", "multi-angle", "what's the current state of X", "is X still true", any request for an answer that is "verified, not guessed" (--inline covers quick verified lookups), or any question where a single search is too shallow and accuracy matters.
hi
Session-start orientation ritual. Reads this workspace's state - living docs (README/SPEC/tasks-plan/tasks-todo), memory (file-based MEMORY.md + recent claude-mem activity), changelog, and git status - then reports a concise current-state briefing ending in the single next action. Read-only, writes nothing. Portable across any repo (discovers the workspace root). Triggers on "/hi", "get up to speed", "orient", "where are we", "catch up", "repo status" - but NOT for the status of an in-flight command, background task, or test run in the current session (answer those directly from session context).
meta-loop
Orchestration loop - plan, delegate to parallel workers, verify, synthesize - with a premium advisor consulted off the hot path. The session model orchestrates, fan-out runs as Agent calls against two pinned subagents (`reader` for read-only gathering, `worker` for anything that changes the tree), and the advisor agent is pulled in for decomposition critique, risk, and taste. MUST be used whenever the user asks to run something as a loop, orchestrate, fan out, or delegate to workers, whenever a requested task visibly splits into three or more independent subtasks, and for any mid-loop situation - verifying a worker's result against its claims, re-delegating a rejected subtask, or critiquing a decomposition. Also on "/meta-loop". Not for single-step tasks.
my-security-review-checklist
Pre-merge security gate for agent tooling - skills, subagents, slash commands, hooks, shell and sync scripts, dotfiles, settings.json, and plugin/MCP trust. Also scans shared tooling for user-specific absolute paths, device overfitting and hardcoded personal constants, and can fix them. Scans any file an agent reads as instructions for text hidden from the human reviewer (invisible Unicode, tag smuggling, zero-width characters, bidi overrides), so use it whenever asked whether a skill, prompt, rules file or pasted content has hidden instructions in it. MUST be used before committing any change to ~/.agents or ~/.claude, before keeping a new or changed hook, before trusting a plugin or MCP server, and for any automation that consumes untrusted agent/LLM/web output.
notes
End-of-session documentation sweep. Use when the user types /notes, says "take notes", "update the docs", "write up the session", or at the end of ANY work session - including in a fresh repo with no docs yet - to capture everything completed, learned, resolved, decided, planned, implemented, or discovered into the repo's living docs (SPEC.md, README.md, tasks/plan.md, tasks/todo.md, created if missing), enforce the hot-file size budgets, and roll finished work into tasks/completed/, the per-date cold-storage folder. Docs only - it never commits or pushes; a whole-session closeout that also commits belongs to wrap-up, and promoting knowledge to permanent memory belongs to reflect. A dictated one-line edit to a README is a plain edit, not a sweep.
o-o-d-a-loop
Structured thought partner for consequential decisions, running John Boyd's OODA loop plus decision theory, game theory, mechanism design and systems thinking. Classifies the decision by reversibility, stakes and time pressure, then exits with a committed act, an installed policy, or a scheduled decision, never "think about it more". Use when the user owns a live choice with real stakes - strategic ("should I take this job", "help me decide") or technical ("which database", "build vs buy", "migrate or rewrite"); when asked to stress-test or devil's-advocate a plan, design, or RFC; when the user keeps circling without converging; when asked how to get better at a recurring activity; or to review a past decision without outcome bias. Not for factual questions or trivial reversible picks.
obsidian-kg
Builds and queries a SQLite+FTS5 knowledge graph over any markdown corpus - an Obsidian vault, a docs tree, a knowledge base - addressing sections rather than whole files. Parses wikilinks, embeds, markdown links, frontmatter properties/aliases/tags and heading structure. Use when asked to index, search, query or traverse a vault or markdown corpus ("make this vault queryable", "what links to note Y", "backlinks for Z", "how are these notes connected"), when answering a factual question from a corpus too large to read, when a corpus needs summarizing over time, when a note needs its history traced, when generating an index of a vault, or when diagnosing link problems an ingest reported. Prefer it over grep for any corpus larger than context. Fully offline and deterministic.
obsidian
Universal Obsidian-flavored markdown standard plus a per-vault authoring workflow. Covers syntax (frontmatter/Properties, wiki-links, embeds, callouts, block refs, tags, tasks, tables, footnotes, MathJax, Mermaid, highlights) and the house style for notes that render cleanly in Obsidian's Live Preview. Probes each vault's .obsidian config and existing notes, then MIRRORS that vault's conventions instead of imposing defaults. Use when authoring or editing .md inside an Obsidian vault (a `.obsidian/` folder is present), when the user mentions Obsidian, a vault, wikilinks, [[links]], callouts, properties, embeds, block references, Dataview, Tasks, Templater, or Bases, or for any Obsidian syntax question. Prefer this over generic markdown whenever a vault is present.
reflect
End-of-session truth reconciliation. MUST be used when the user types /reflect, says "reflect", "reconcile", or "let's reconcile" - the sweep is a defined procedure with a user-approval gate, not an ad-hoc summary. Sweeps the session for anything newly learned, discovered, chosen, decided, or discussed that (a) should become permanent memory, or (b) invalidated an existing stated claim in any docs, comments, configs, or memory - then correct those so everything lines up with current truth. Distinct from /notes (the docs sweep) - reflect promotes durable knowledge to memory and fixes stale claims, then hands off to /notes. A whole-session closeout that also commits and pushes is /wrap-up, which runs this skill first.
repo-device-sync
Multi-device git sync ritual for repos worked on from several machines, sometimes concurrently. Fetches and diffs origin before work starts, reconciles inbound commits from other devices, re-fetches immediately before every push, and verifies branch parity afterward. Divergence is a stop-and-ask condition - never force-push, rebase shared history, or hard reset. Commits default to ONE per session and verify the staged set first, because `git commit` writes the whole index rather than the paths just added. MUST be used for ANY commit, push, or pull intent in such a repo, however casually phrased ("ok push this up", "ship it", "just commit it all") - the ritual is the point, not the git command.
skill-authoring
House profile for authoring and auditing Claude Code skills, subagents, commands, rules, and hooks that stay compliant with the open Agent Skills standard (agentskills.io) while using Claude Code extensions deliberately. Use whenever creating, editing, improving, renaming, or reviewing ANY skill, subagent, slash command, hook, or rules file - e.g. "make/write/build a skill to X", "change/update/fix/improve the X skill", "add a subagent/command for X", "audit my skills", "why isn't my skill triggering", or "which frontmatter fields are valid". Also use when deciding between a skill vs command vs subagent vs hook. Pairs with the skill-creator plugin for scaffolding and evals.
sprint-board
Plans, writes and audits agile backlogs as markdown - epics, features and user stories - against a fixed template, with a scaffolder and a linter. Use when asked what the epics, features and stories should be for a goal, repo or product idea; when a product idea needs turning into a workable, sequenced backlog; when handed a part-built or blank-template board to complete, repair, sequence or audit; when stories lack acceptance criteria or sizing and need them challenged; when a milestone needs dependency-ordered sequencing; or when an item is too big for one iteration and needs splitting. A repo's own tasks/plan.md and todo.md are working docs, not boards, and stay with their own skills. Also on /sprint-board.
statistics
Statistical analysis that states its n, its interval, and the assumption that would overturn its conclusion, using the Python standard library alone. Use when the question is whether a difference is real, how large a sample must be, whether a streak means anything, what a correlation actually supports, or whether an outlier is genuinely anomalous; when an analysis needs auditing for a p-value without an effect size, an in-sample result, or a best-of-many comparison reported as if one was tried; and for value at risk on returns, whether a model improvement is real and calibrated, whether a bet is positive expected value, and what threshold a recurring data check should fire at. Not for pipelines or warehouses (data-engineering), model building (machine-learning), or charts (dataviz).
teach-me
Teaches a topic and certifies understanding in one on-demand session, using validated learning science - pretest priming, worked teaching for novices, Feynman-style closed-book self-explanation, guardrailed Socratic probing, and a scored retrieval cert, recorded as a study-guide artifact in LEARNING/. Use when the user wants to be taught, learn, master, or get durably up to speed on a topic - "teach me X", "help me learn/understand X", "quiz me / certify me on X", "make me a study guide", "I just read this, make it stick" - especially right after a deep-research brief or any substantial document, and when re-testing a previously learned topic ("am I still solid on X"). Also on /teach-me. Not for orienting in a codebase, not for fact-finding, not for a one-line question.
wrap-up
Full session closeout in one pass - reflect, then notes, then commit, sync and push - ending with a clean tree on whichever branch the repo's own workflow says work belongs on. MUST be used when the user closes out a SESSION, however phrased - wrap up this session, end the session, close it out, that is everything for today - and whenever they name three or more of reflect, notes, commit, sync and push together in any order. Session scope is the discriminator. Wrapping up a task, a feature or a bug is not this, a mid-session save is not this, and a single verb alone belongs to its own skill. Context running high or long is a warning to finish current work, not a reason to fire. Also on /wrap-up.
cmon
Corrective for verbose output - distills the previous over-long reply down to its core essentials and restates it in as few words as it honestly takes, leading with the answer itself, keeping only the support that changes what the reader does next, then holds that terse register for the rest of the session. Use when the user fires /cmon, or says anything meaning the last reply was too long - "get to the point", "too long", "tldr", "stop rambling", "that could have been a sentence" - right after a long answer. The restatement adds nothing new - no apology, no preamble, no recap of the question - and afterward every reply leads with the answer and stops, returning to long form only when the user asks for depth or the material genuinely requires it.
Bio shown is the top-scored skill's repo description as a fallback — real GitHub bios land in a future update.