Skip to content

sammasak/sammasak-skills

v0.1.0MIT

Personal agent skills for software development and homelab workflows.

agent-orchestration

Use when dispatching work to background or parallel subagents, defining custom subagents, or choosing between local agent dispatch and running Claude on another machine (herdr).

assigning-subagent-models

Use when writing or editing a Workflow script (agent()/pipeline()/parallel()), dispatching a subagent with the Agent tool, or writing a .claude/agents/*.md definition.

credentials

Use when running build, push, or deploy commands that need credentials (registry auth, API keys, tokens) in this homelab.

deep-modules

Use when designing or reviewing module boundaries, public APIs, traits/interfaces, or test seams — before adding a wrapper, helper, abstraction layer, or new public type. Not for Rust-specific lints, crates, or toolchain choices — rust-engineering owns those.

e2e-testing

Use when verifying a user flow in a running web app through the browser, beyond an HTTP status check.

knowledge-vault

Use when the user mentions a person, company, situation, or prior decision you don't recognise, when you need context from ~/knowledge, or when explicitly asked to write a runbook, ADR, or other durable reference to the vault (not ~/.claude MEMORY.md).

kubernetes-gitops

Use when changing or debugging anything in the homelab k3s cluster: manifests, Flux Kustomizations, HelmReleases, ingress, scaling, or node problems. Not for SOPS encryption (secrets-management) or confirming a finished deploy is live (verify-service).

lean-code

Use when about to add a comment, doc block, error variant, config option, helper, or test beyond what the change strictly needs — in any code writing or review. Not for Rust-specific lints, crates, or toolchain choices — rust-engineering owns those.

nix-flake-development

Use when editing ~/nixos-config, adding a NixOS or Home Manager module, updating a flake input, or rebuilding/deploying a homelab host.

ntfy-notifications

Use when sending a notification to ntfy from a homelab service, loop, script, or agent.

orchestrated-review

Use when reviewing an implementation after a task is complete, including after an implementer finishes a task in subagent-driven-development.

pi-offload

Use when a small, mechanical, machine-checkable task (lint or clippy fixes, adding tests, small refactors, repetitive edits) could be delegated to the free-tier Pi worker instead of spending your own context. Not for design, security-sensitive code, or work without a check command.

rust-engineering

Use when writing Rust code in a homelab repo, adding crates, changing Cargo workspace lints or profiles, running Rust gates, applying the type pillar (illegal states unrepresentable, newtypes, typed errors), or building a container image from a Rust binary.

sdlc-pipeline

Use when driving the sdlc:* stage machine in a repo whose devenv defines platform.sdlc (rust preset stages: sketch -> model -> test -> review -> perf -> security; sdlc:done is the aggregate task).

secrets-management

Use when creating, encrypting, editing, or rotating a SOPS secret in homelab-gitops or nixos-config, changing age recipients, or wiring secret delivery (Flux decryption, sops-nix). Not for loading already-provisioned credentials at build or deploy time — route that to credentials. Not for application code that reads env vars or tokens at runtime.

verify-service

Use when a homelab service was just deployed or changed, before reporting it done or live, including named apps behind Authentik. Not for diagnosing WHY a deploy or cluster is broken — route that to kubernetes-gitops.