
The skills that don't belong to any one project.
Skills installed with skilletor live in
whichever repo owns them — a Perl module keeps its Perl skill, a Kubernetes cluster repo
keeps its cluster skill. This repo holds the rest: knowledge that applies across many
projects and has no single home of its own.
The rule: a skill lives here only as long as nothing else claims it. The moment a
skill belongs to one specific project, it moves there and this repo drops the link.
| Group |
Skills |
What it holds |
| authoring |
5 |
Skills about skills — writing them, mining them out of existing code, compressing them, the library's own rules, and the agent team that consumes them |
| claude |
4 |
Working with Claude itself — headless spawning, talking across running sessions, routing work across model tiers, building plugins for Claude Code |
| codex |
3 |
Working with Codex — non-interactive runs, reaching threads that already exist, building plugins |
| compliance-and-governance |
14 |
EU law for an AI platform as engineering work — GDPR, AI Act, data and IP, consumer and B2B contracts, billing and tax, accessibility, content safety, cybersecurity, with German overlays |
| databases |
1 |
Data stores themselves — PostgreSQL with pgvector and Apache AGE: schema, indexes, retrieval, consistency, recovery |
| development |
2 |
Engineering practice independent of language — debugging discipline, project scaffolding |
| git |
2 |
How repositories are used, and how commit messages are written |
| hermes-agent |
1 |
NousResearch Hermes Agent — extending the agent, its messaging gateway, and the Desktop and Dashboard surfaces |
| javascript |
2 |
React and Electron — renderer, library choice and React Flow; main/preload boundary, security, packaging and updates |
| perl |
12 |
House style, object systems including Mojo::Base, typing, DSL sugar, async, MCP, XS and Alien, release tooling |
| smart-home |
9 |
Home Assistant with its automations and extensions, FRITZ!Box, radio networks, device families, ESPHome and MQTT, cameras and media |
| social-media |
2 |
LinkedIn and Twitch — platform mechanics, content practice, and the DACH legal duties that have no US equivalent |
| storytold-craft |
16 |
Operating the Storytold Craft editors as an agent — one skill per application, its CLI and MCP server, plus an overview that routes between them |
| system-and-network-administration |
19 |
Machines, routers and switches, virtualization, directory services, hosting, storage, containers, Kubernetes, TLS and PKI, job queues, admin automation |
Each group README describes every skill in it: what it covers, and when to load it.
| Skill |
What it is |
| getty-agent-team |
A whole multi-agent setup for a project: subagents, briefing-preloaded skills, karr wiring |
| getty-skill-library |
Where a skill lives, what it is named, and how an edit reaches its consumers |
| skill-authoring |
Writing a SKILL.md that fires from its description and then gets followed |
| skill-compressor |
Shrinking or merging skills without losing the rules that drive behaviour |
| skill-mining |
Deriving skill content from a codebase instead of inventing conventions |
| Skill |
What it is |
| claude-code-plugin-engineering |
Building a Claude Code plugin: picking the mechanism, hooks and mods, loading, distribution |
| claude-cross-session |
One Claude session starting, watching and messaging another |
| claude-headless |
Driving Claude Code as a subprocess: -p, JSON, permissions, the multi-turn channel |
| model-routing |
Choosing a model tier by the hardest dimension the work routinely hits |
| Skill |
What it is |
| codex-cross-session |
Reaching an existing Codex thread: the queue, the daemon, --remote |
| codex-headless |
codex exec non-interactively: JSONL events, sandboxes, resuming a thread |
| codex-plugin-engineering |
Building a Codex plugin: package formats, hooks, MCP, and what each host actually runs |
| Skill |
What it is |
| eu-ai-act |
AI Act classification and duties per feature, actor and model version, on the 2026-amended timeline |
| eu-ai-data-ip |
Rights for training data, RAG sources, scraping, model weights and outputs, with German copyright overlay |
| eu-platform-accessibility |
EAA and BFSG scope, then complete user journeys tested with keyboard and screen reader |
| eu-platform-agent-assurance |
Compliance evidence, release gates and agent permissions for agent-built software |
| eu-platform-billing-tax |
Metering, VAT and OSS, German e-invoicing, retention, credits and payment-regulation screening |
| eu-platform-business-contracts |
B2B contracts in both directions: DPAs, SLAs, vendor terms, Data Act switching, promises as controls |
| eu-platform-compliance |
The entry point: platform profile, applicability register, routing to the specialists |
| eu-platform-consumer-commerce |
B2C checkout, pricing, withdrawal, cancellation and digital-product remedies, German adapter |
| eu-platform-content-safety |
DSA classification, notices and appeals, minors, government orders, German DDG and youth law |
| eu-platform-cybersecurity |
Security controls and evidence, NIS2/BSIG and CRA scope, incident reporting clocks |
| eu-platform-data-governance |
Data lifecycle: inventory, retention, deletion, RAG and training provenance, vendors and transfers |
| eu-platform-privacy |
GDPR roles, lawful bases, DPIA, rights, automated decisions and breaches, BDSG overlay |
| eu-platform-regulatory-watch |
Versioned legal source register and change-impact review, without self-installed monitoring |
| eu-platform-tracking-marketing |
Cookies, SDKs, consent and direct marketing — device access, processing and contact kept apart |
| Skill |
What it is |
| postgres-vector-graph |
PostgreSQL 18 with pgvector and Apache AGE: relational, vector and graph in one system |
| Skill |
What it is |
| getty-git-commit-style |
Imperative summary, one body line per change, and the Changes file every repo keeps: format, entries, version line |
| getty-git-usage |
Linear history: rebase over merge, and --force-with-lease after it |
| Skill |
What it is |
| hermes-plugin-engineering |
Extending Hermes Agent: tools, hooks, middleware, providers, gateway adapters, Desktop |
| Skill |
What it is |
| getty-perl-core |
The base layer: module loading, object-system choice, errors, subroutine shape |
| getty-perl-distribution |
Creating a CPAN distribution, or bringing an existing one to house standard |
| getty-perl-moo |
Moo classes and roles — roles for reuse, inheritance only for a stable is-a |
| getty-perl-moose |
The same shape in Moose, plus make_immutable on every class |
| getty-perl-sugar |
Designing a new DSL: registering keywords, a metadata registry, one shared runner |
| getty-perl-typing |
Whether a project needs a type system at all, and which one is cheap here |
| perl-alien |
Alien::Build: providing a C library or tool through CPAN |
| perl-io-async-future |
PEVANS-style async Perl, and its unforgiving lifetime rules |
| perl-mcp |
Building an MCP server in Perl with MCP::Server |
| perl-mojo |
Mojo::Base as an object system, plus the Mojo::* toolkit around it |
| perl-release-dist-ini |
Dist::Zilla for any distribution, independent of the author bundle |
| perl-xs |
The Perl/C boundary, and why an .xs file is C behind a preprocessor |
| Skill |
What it is |
| fritzbox-operator |
FRITZ!Box APIs, HA integrations, DECT heating and buttons, presence, provider firmware, recovery |
| home-assistant-automations |
Automations as behaviour contracts: triggers, restart-safe timing, manual override, presence, Assist and MCP |
| home-assistant-hacs |
HACS and community extensions: when to install, frontend debugging, updates and recovery |
| home-assistant-operator |
Running Home Assistant: install types, backups, registries, APIs, recorder, performance, integration development |
| smart-home-architecture |
The whole home: subsystems and control ownership, protocol and hub choice, purchasing, migration |
| smart-home-devices |
Exact-model integration decisions for Hue, Shelly, Tuya, SONOFF, Aqara and other device families |
| smart-home-esphome-mqtt |
ESPHome firmware and MQTT: boards, API and OTA, broker design, discovery, availability |
| smart-home-radio |
Zigbee, ZHA, Zigbee2MQTT, Matter and Thread, BLE, Z-Wave — commissioning, diagnosis, migration |
| smart-home-video-media |
Cameras, NVRs, doorbells, go2rtc and Frigate, TVs and media players in Home Assistant |
| Skill |
What it is |
| linkedin |
Formats, how distribution actually works, and the DACH legal duties |
| twitch |
Channel operation end to end: encoder, growth, chat, monetization, moderation |
| Skill |
What it is |
| storytold-artcraft |
ArtCraft's generative workflow and Rust client — an integration boundary, no operator CLI |
| storytold-artcraftx |
The experimental ArtCraft-X Tauri app: its IPC boundary and development lifecycle |
| storytold-cadcraft |
CADCraft drawings: geometry commands, units and layouts, DXF/DWG interchange |
| storytold-craft |
The overview: which product owns which task, and where the twelve CLIs differ |
| storytold-craft-launcher |
Installing, updating and locating the Craft applications |
| storytold-deckcraft |
DeckCraft presentations: slides, shapes, layouts, export coverage |
| storytold-designcraft |
DesignCraft page layout: spreads, frames, threaded stories, publication export |
| storytold-effectcraft |
EffectCraft motion graphics: compositions, keyframes, expressions, render jobs |
| storytold-filmcraft |
FilmCraft timelines: media health, tick-based timing, export jobs |
| storytold-gridcraft |
GridCraft spreadsheets: formulas, calculation oracles, round-trip fidelity |
| storytold-lightcraft |
LightCraft photo catalogs: RAW development, originals and sidecars, exports |
| storytold-pdfcraft |
PdfCraft: reading, organizing, annotating, editing and securing existing PDFs |
| storytold-photocraft |
PhotoCraft layered raster images: PSD/PSB, masks, smart objects, exports |
| storytold-soundcraft |
SoundCraft multitrack sessions: media, routing, automation, offline bounces |
| storytold-vectorcraft |
VectorCraft documents: object queries, live appearance, artboard export |
| storytold-wordcraft |
WordCraft documents: styles, sections, tracked changes, export |
| Skill |
What it is |
| cisco-ios-router |
Classic IOS 15.x routers: ACLs, NAT, zone-based firewall, IP SLA failover, rollback safety net |
| cisco-small-business-switch |
Cisco SG/SF/CBS switches: the IOS look-alike CLI, general ports, system mode, firmware path |
| docker |
Docker images and Compose stacks: build, wiring, operation, recovery — routed by task |
| docker-engine-api |
Writing a client that speaks the Engine HTTP API instead of shelling out to docker |
| docker-registry |
Registries and pull-through caches: protocol, clients, mirror fallback, retention |
| gearman |
Gearman job queues: server, clients and workers, persistence, protocol, retries and idempotency |
| hetzner-operator |
Hetzner Cloud, Robot and managed hosting: networking, VPN access, storage, recovery, cost |
| kubernetes-cilium-concepts |
Cilium replacing CNI, kube-proxy, policy, encryption and ingress at once |
| kubernetes-concepts |
Control plane, resource hierarchy, and how ownership and selectors tie it together |
| kubernetes-gpu |
The four layers that must line up before a pod can use a GPU |
| kubernetes-rke2 |
RKE2 and K3s as one topic, with the differences named where they exist |
| mikrotik-routeros |
RouterOS 7: one CLI grammar, safe mode, firewall, NAT, bridge VLANs, failover, WireGuard |
| network-device-ssh-cli |
Scripted SSH to routers and switches: legacy algorithms, in-band logins, pagers, netcli.py |
| proxmox-ve |
Proxmox VE and Backup Server: VMs and containers, storage, PBS jobs, bridges, upgrades |
| rex |
Perl Rex automation: Rexfiles, transports, idempotency, and operating it safely |
| samba-active-directory |
Samba AD DCs and member file servers: provisioning, DNS, FSMO, SYSVOL, client joins, ACLs |
| ssl-tls-pki |
TLS, public Web PKI, private CAs, ACME and mTLS — design, operation, debugging |
| storage-engineering |
Storage from the access contract and failure model: block, file, object, HA, DR, backup, Kubernetes, sizing |
| vllm-operator |
Running vLLM on small GPU hardware: capacity, caching, benchmarking, tuning (German) |
An owner name on its own is enough — it resolves to that owner's skills repo:
skilletor add Getty --project # github.com/Getty/skills, as source `getty`
skilletor available getty # see what's on offer
skilletor install getty-perl-moo@getty getty-git-usage@getty --project
With a local checkout, point the same source name at it in your user config
(~/.claude/skilletor.json); it then overrides the git source and is read
directly on every sync:
{ "sources": { "getty": { "local": "<checkout>" } } }
The same files also ship as a plugin for Claude Code (.claude-plugin/) and for
Codex (.codex-plugin/) — three distribution routes, one source of truth.
getty- prefixed skills prescribe — a house convention chosen over other valid
options, or the API of Getty's own software. Unprefixed skills are reference —
documentation of how a public tool or protocol behaves, equally true for anyone.
The full naming and placement rules are themselves a skill:
getty-skill-library.
Write it where it's used first. Only pull it in here once a second, unrelated project
needs the same knowledge — that's the signal it has outgrown a single home. The
workbench for that is the authoring group: skill-authoring
for the content, getty-skill-library for placement, naming, and the way an edit
reaches its consumers.
A skill has to be listed in four places — its group README, the group table and the
skill table above, and both plugin manifests. bin/check-listings holds them against
the directories and names what is missing; it exits non-zero, so it fits a hook or CI.
Consumers hold installed copies, not these files. Edit a skill here, and a consuming
project picks the change up at its next skilletor sync; an edit made to the installed
copy is overwritten by that same sync. getty-skill-library has the details.
Copyright (c) 2026 Torsten Raudssus.
This is free software; you can redistribute it and/or modify it under the terms of the
Artistic License 2.0 — the Perl licence, because that is where most of this
came from.