os-linux
Skill6 starsChanged 8 months agoApache-2.0View on GitHub
Identify and operate Linux hosts, VMs, and containers: distro and ABI boundaries, services, resource limits, networking, and evidence-based recovery.
In this repository141 other files it gives its agents.
- AGENTS.mdAGENTS.md
- ad-bingSkill
- ad-frameworksSkill
- ad-googleSkill
- ad-linkedinSkill
- ad-metaSkill
- ad-redditSkill
- ad-tiktokSkill
- ad-xSkill
- ad-youtubeSkill
- ai-agent-designSkill
- ai-cost-finopsSkill
- ai-evals-designSkill
- ai-prompt-injection-defenseSkill
- ai-rag-patternsSkill
- analytical-reportSkill
- ats-optimizationSkill
- browser-backlink-submissionSkill
- browser-social-account-maintenanceSkill
- chef-budget-mealsSkill
- coaching-frameworksSkill
- code-review-lensesSkill
- code-reviewSkill
- content-auditSkill
- content-formatsSkill
- content-geoSkill
- content-groundingSkill
- content-humanizeSkill
- content-locale-humanize-arSkill
- content-locale-humanize-deSkill
- content-locale-humanize-esSkill
- content-locale-humanize-frSkill
- content-locale-humanize-hiSkill
- content-locale-humanize-itSkill
- content-locale-humanize-jaSkill
- content-locale-humanize-koSkill
- content-locale-humanize-ptSkill
- content-locale-humanizeSkill
- content-locale-humanize-thSkill
- content-locale-humanize-zhSkill
- content-translateSkill
- content-voiceSkill
- cover-letterSkill
- device-computer-automationSkill
- device-mobile-automationSkill
- document-exportSkill
- geo-visibility-auditSkill
- git-workflowSkill
- issue-diagnosisSkill
- learning-scienceSkill
- marketing-social-gtmSkill
- markup-landing-pageSkill
- octomind-cliSkill
- octomind-configSkill
- octomind-runtimeSkill
- octomind-supervisorSkill
- octomind-workflowSkill
- os-alpineSkill
- os-debianSkill
- os-fedoraSkill
- The first 60 shown.
The file
We split this skill into the rules it gives an agent
10 rules. About 0 are common, 5 are distinctive, and 5 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈5
Distinctive · estimate
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- could be automatic: a setting could enforce it
- Distinctive: line 22
Use for Linux administration, troubleshooting, and deployment work.
- Very specific: line 32
Read /etc/os-release, or /usr/lib/os-release only when the former is absent.
- Very specific: line 34
Check PID 1, mounts, namespaces, and the runtime's metadata.
- Distinctive: line 38
Use the active manager: systemd, OpenRC, or the container supervisor.
- Distinctive: line 40
Keep site overrides in supported configuration/drop-in locations instead of editing vendor files.
- Very specific: line 47
Treat a cgroup v1 host as a migration item: Kubernetes 1.35+ kubelets refuse to start on cgroup v1 by default, and Docker Engine 29 …
- Distinctive: line 48
Use pressure-stall information when available to distinguish resource stalls from simple utilization.
- Very specific: line 49
Check both filesystem space and inodes, mount options, quotas, and deleted-but-open files.
- Distinctive: line 55
Keep package sources, signing trust, architecture, and release consistent.
- Very specific: line 62
Read identity inside the intended Linux target, with /proc mounted:
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Overview
Use for Linux administration, troubleshooting, and deployment work. Establish what system the commands will affect, then use its distribution guide for package and release details. This foundation covers shared operational contracts, not a universal installer.
Mental model
Kernel, distribution userspace, libc, service manager, and deployment boundary are separate facts. A container shares a kernel while carrying different userspace; its root user, filesystem, and resource limits need not describe the host.
Identify the target
- Guidance checked 2026-10-12 against current kernel, systemd, and container-runtime documentation. Distribution-supported kernels often backport fixes; an older upstream version string alone does not prove an unpatched vulnerability. Check the vendor advisory and installed package revision.
- Record the target host/container, effective identity, distribution
ID/VERSION_ID, architecture, libc, init/service manager, and deployment mode before changing state. The workstation running the assistant is not necessarily the target. - Read
/etc/os-release, or/usr/lib/os-releaseonly when the former is absent. Do not merge both files.ID_LIKEsuggests ancestry, not interchangeable repositories or upgrade paths. unamereports the running kernel and machine architecture, not the distribution release, package architecture, CPU feature baseline, or glibc/musl ABI. Inspect the artifact and target before selecting binaries.- Check PID 1, mounts, namespaces, and the runtime's metadata. A present
systemctlbinary does not prove systemd is managing this environment. WSL, containers, chroots, image builds, and full hosts have different lifecycle owners.
Services and configuration
- Use the active manager: systemd, OpenRC, or the container supervisor. Don't install another init system merely because a familiar command fails.
- On systemd, inspect the exact unit and its drop-ins with
systemctl cat/show, plus boundedjournalctl -uoutput. Check the correct system or user manager; service names vary by distro. - Keep site overrides in supported configuration/drop-in locations instead of editing vendor files. Validate application configuration before activating it.
daemon-reloadrereads systemd units; servicereloadrereads application configuration only when supported;restartstops and starts the service.enablechanges boot activation and does not itself start the service. Choose the operation the change needs.- A process being active or a port listening is not application readiness. Verify the original symptom, dependency behavior, and an appropriate health request after a change.
Resource and network diagnosis
- Identify the process's actual cgroup before interpreting memory or CPU pressure. On cgroup v2, inspect effective limits and relevant
memory.events,memory.current,memory.max, andcpu.stat; ancestor limits also apply. Host-wide free memory does not rule out a container OOM. - Treat a cgroup v1 host as a migration item: Kubernetes 1.35+ kubelets refuse to start on cgroup v1 by default, and Docker Engine 29 deprecates it. Check
stat -fc %T /sys/fs/cgroup(cgroup2fsmeans v2) before applying resource-limit advice. - Use pressure-stall information when available to distinguish resource stalls from simple utilization. Correlate events over time; one CPU or memory snapshot is weak evidence.
- Check both filesystem space and inodes, mount options, quotas, and deleted-but-open files.
duanddfanswer different questions. Don't delete logs, volumes, or caches indiscriminately to make a metric look healthy. - Separate listener, DNS, routing, firewall, TLS, and upstream failure. Use the target's network namespace and resolver configuration; public DNS success does not prove application resolution works.
- Identify the owning network/firewall stack before edits: NetworkManager, networkd, Netplan, firewalld, nftables, or another manager. Editing a generated file or an underlying ruleset can be overwritten or conflict with its owner. Preserve a recovery path when changing remote connectivity.
Changes and failure contracts
- Keep package sources, signing trust, architecture, and release consistent. Installed state differs from fresh repository metadata; report which evidence a query used. Do not bypass signature checks or mix release repositories to satisfy a missing dependency.
- Diagnose Unix permissions, ACLs, mount restrictions, capabilities, and SELinux/AppArmor policy separately. Don't replace a precise fix with
chmod -R 777, privileged containers, or disabled enforcement. - Match shell syntax and utilities to the target. BusyBox and GNU flags differ;
shis not necessarily Bash. Preserve command exit status and stderr instead of chaining unrelated fallback commands until one succeeds. - Work within the authorized target and change scope. Before a disruptive change, establish the affected service/data, configuration owner, rollback or recovery method, and verification. A snapshot is not a proven application-consistent backup; package rollback does not reverse a data migration.
Example
Read identity inside the intended Linux target, with /proc mounted:
set -eu
if [ -r /etc/os-release ]; then
cat /etc/os-release
elif [ ! -e /etc/os-release ] && [ -r /usr/lib/os-release ]; then
cat /usr/lib/os-release
else
printf '%s\n' 'OS identity unavailable; do not guess a distribution.' >&2
exit 1
fi
uname -sr
uname -m
cat /proc/1/comm
cat /proc/self/cgroupThis identifies context; it does not prove the target is the host or a service is healthy. Missing tools, denied access, and absent procfs data remain explicit evidence gaps.
Checklist
- Target, userspace, ABI, manager, and host/container boundary are established.
- Diagnosis cites actual evidence and distinguishes uncertainty from absence.
- Proposed changes preserve package trust, security controls, data, and remote access.
- Verification checks the original behavior; unexecuted checks are stated.
References
- OS identity format, systemctl semantics.
- Kernel cgroup v2, systemd delegation, pressure-stall information.
- Container resource limits.
- Distribution-specific operations: Alpine, RHEL, Fedora, Debian, Ubuntu.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

