Docs · Source · git clone https://github.com/Aitherium/awskills · The Aither World
The Aither World is an operating system for agents — a Linux you can hand to one, the runtimes it works in, and the tools it works with. awnix is the Linux underneath it; awskills is one of its 64 bricks — each installs on its own, runs offline, and needs no account.
Start here: Copy one .md into your agent's skills dir and tell it to use that skill.
Learn to run coding agents at program scale — from measured telemetry, not vibes. Free, MIT-licensed. The operating doctrine, plus 40+ battle-tested skills.
Most advice about working with AI coding agents is somebody's feeling. This repo is one operator's logs: 27,939 prompts across 3,183 sessions over 210 days, re-measured on a disjoint 34-day window (5,244 human prompts, 9,715 machine-written agent dispatches), then distilled into rules you can install into your own setup in about ten minutes.
Everything here came out of running a real platform — 260 services, ~166 containers, three repos — with agents doing most of the typing. The skills are the parts that survived.
Read it online → · Read it in the repo →
The skills below are procedures. The Codex is the doctrine underneath them — what makes a codebase run by agents get harder to break over time instead of quietly rotting while every dashboard stays green.
| The path — 4 chapters, ~1 hour | Never used a coding agent? From nothing to one real, verified change on your own repository. Then local models, then tools/skills/packs. |
| The eighteen laws | Every one was a real failure first. Grouped into Enforcement · Silence · Adoption · Deployment · Trust. |
The laws in one line each:
Enforcement — a rule nothing asserts is a suggestion · make it a check, not a ticket · watch your gate fail · mutate the test, not just the code
Silence — design for the silence · a check that cannot run must not pass · the symptom names the innocent · a checker in the wrong place found nothing · detection without delivery is not detection
Adoption — a gate that floods gets switched off · open green, ratchet down · measure it again
Deployment — written is not deployed · you wrote it, that does not mean it ships · generate, never copy · the defect lives in the union
Trust — fail closed, then prove the happy path · never trust the caller for an authorization decision
Why this exists. The failures that cost days do not throw. They return 200, render correctly, log nothing, and leave the container healthy — a missing thing is indistinguishable from a thing nobody wanted. Eighteen laws is what it took to make a system able to notice.
| Skill | What it teaches |
|---|---|
awknowledge |
The doctrine. 13 measured rules for running an agent at program scale: prompt shape, live-proof gates, plan documents as files not modes, persistent memory with an index, when to orchestrate vs stay solo, when to compact, how to route models. Installs itself into your rules/memory/plans directories without overwriting anything. |
ramble-driven-development |
The prompt-shape law. Median human prompt: 56 characters. But the 5.9% over 1,000 chars carry 78% of everything typed. Ramble to load intent, poke to steer, and put the precision in the harness — 90% of machine-written dispatches name a file path against 6% of human ones. Includes how to mine your transcripts, and the two filters that otherwise inflate your median by 33x. |
git clone https://github.com/Aitherium/awskills
cd awskills
bash scripts/install-awskills.sh # Windows: pwsh -File scripts/Install-AitherSkills.ps1Then tell your agent: "use the awknowledge skill".
The one rule to take away if you read nothing else: the careful, fully-specified prompt still has to exist — you just shouldn't be the one typing it. Put your standards in a rules file once, add a gate that can fail, and your prompts collapse to "get it done." You don't type your standards. You install them.
⚠️ Doing this on a bare setup with no gates produces confident garbage at speed. Build the gate first. Both skills say so up front.
If you have a computer and access to an AI agent, you can run your own agent on your own hardware, for free, today. Install the pack and open the front door:
git clone https://github.com/Aitherium/awskills
cd awskills
bash scripts/install-awskills.sh # Windows: pwsh -File scripts/Install-AitherSkills.ps1Then tell your agent: "use the aither-start skill".
| Skill | What it gets you |
|---|---|
aither-start |
The front door. Zero → working agent on your own machine: detect the hardware, install the toolkit, run a model that actually fits, wire it into the agent you already use. Every step ends in a check that can fail. |
agents-everywhere |
Idea → sharable tool. Compose awdk, awsh, MCP, WebMCP, PWA, Codex, Claude Code, and other agent CLIs behind awnest/awnboard/awiam/awbac/awdit, then scaffold a reviewable tools/agent/<name>/ bundle. |
local-inference |
A language model on your box for $0 — pick Ollama / llama.cpp / vLLM for the machine you have, size the model so it doesn't OOM, serve it OpenAI-compatible, prove it with a real round-trip. Includes tool-calling setup and the failure modes that look like success. |
install-skills |
Install this pack into any agent — Claude Code, OpenClaw, Hermes, Cursor, Goose, Codex, Gemini CLI. Explains the two layouts (SKILL.md folder vs flat slash-command) and why the wrong one makes an agent "not see" skills that are right there. |
repo-is-not-a-runtime |
The doctrine underneath the cleanup. Two rules: a repo is a source artifact, not a runtime; and every ephemeral an agent creates needs an owner, a TTL and a reaper. Measured: a checkout that was 0.4% .git and 99.6% runtime data + agent debris. Ships repo-hygiene-audit.sh — a gate that fails, because doctrine without a gate is a wish. |
agent-disk-hygiene |
Your agents are quietly eating your disk. A real checkout grew to 1.15 TB — of which .git was 4.7 GB; the rest was agent debris, led by 295 GB of abandoned worktrees. How to reap them safely, and the git log --branches trap that makes every worktree look dirty forever so nothing ever gets cleaned. Ships agent-worktree-reaper.sh. |
concurrent-safe-git |
You do not have this working tree to yourself. The moment two agents (or an agent and a cron loop) share a checkout, ordinary git turns destructive: a bare git commit ships whatever somebody else staged. Two real incidents — a reset --hard that wiped a session's uncommitted work and re-deployed an already-fixed data leak, and a 10-line fix that committed 270 lines. The pathspec commit form, the four commands to never run, and the git update-index --refresh trick for a merge git only thinks is unsafe (measured: 7 blocked files, 1 real, all 7 kept their content). |
docker-wsl2-disk-reclaim |
Your drive is full, you pruned 200GB, and nothing changed. Docker Desktop's VHDX never shrinks — its data disk is mounted without discard. The three-layer accounting model (VHDX 2.0TB ≥ ext4 1.6TB ≥ docker system df 634GB), why fstrim before compaction is mandatory, and why moving the file to another drive doesn't help. Ships docker-wsl2-reclaim.sh. |
docker-wsl2-build-safety |
Stop bulk image builds from crashing Docker Desktop's WSL2 backend and taking every container down — plus the day-distribution check that tells a VM storage collapse apart from a failing disk. They look identical: 44k disk I/O errors in an hour, Device offlined, "Docker Desktop is unable to start". One is a config problem; the other is a hardware purchase. |
docker-network-ops |
Container DNS lies to you. Docker's embedded resolver 127.0.0.11 is a goroutine inside dockerd, not a kernel service — measured failing 38–65% of queries with clean 2s timeouts, sustained, while conntrack sat at 11% and Udp InErrors=0. Why no kernel counter will ever show it, why musl/glibc/nginx each fail differently in the same container, the silent --bind-interfaces race that leaves dnsmasq Up (healthy) serving nothing, and the six measurement traps that each produced a confident wrong answer. Ships docker-net-doctor.py. |
openclaw |
Install OpenClaw, point it at your model instead of a paid API, and connect the AitherOS toolset with one command (aither integrate openclaw). |
hermes-agent |
Install Nous Research's Hermes — self-improving, persistent memory, cron automation — on your own inference. Includes the two config shapes that silently do nothing if you get them wrong. |
tau |
Install Tau — a minimalist Python terminal coding agent — on your own model via ~/.tau/catalog.toml. Includes the folder-only skill layout tau enforces (bare .md is silently skipped) and the /skill:name invocation. |
deer-flow |
Run DeerFlow — ByteDance's LangGraph super-agent harness for long autonomous research/coding runs — on your own endpoint, with MCP servers and per-tool timeouts. |
ods |
Stand up ODS: one installer turns a PC/Mac/Linux box into a private AI server — inference, chat UI, voice, agents, workflows, RAG, image gen, all in Docker, CPU fallback included. |
ship-an-app-free |
Idea → working app → public URL, on free tiers only. GitHub Pages + Actions, Cloudflare Workers when you need a backend. No credit card, no server to rent. |
github-actions-image-pipeline |
Build once, deploy many. GitHub Actions has no cross-workflow dependency, so two workflows that both build an image build it twice on every push — and an ML base is a 40–56 minute build, cold. The division-of-labor fix: one workflow builds, deployers docker buildx imagetools create-retag the :latest in seconds. Plus the 10GB cache that evicts your base, the disk-reclaim an ML base needs on a hosted runner, the actions: read permission github-script silently needs, and the never-exercised-path chain — every step a workflow never ran fails on a real latent bug the first time it runs. |
Everything above is free. No paid API key is required anywhere in that path.
awskills/
├── codex/ # the Developer Codex — the reading path + the eighteen laws
├── skills/ # skill files (.md) — install into any agent, see `install-skills`
├── scripts/ # standalone scripts you can run directly
├── tools/ # MCP tools / CLI utilities
└── packs/ # themed bundles (docker, deploy, security)
The Agent Skills standard wants skills/<name>/SKILL.md; Claude Code
slash commands want a flat .claude/commands/<name>.md. This repo ships flat files and the
installer converts per target — so you don't have to care:
bash scripts/install-awskills.sh --list # what's detected
bash scripts/install-awskills.sh --dry-run # show, write nothing
bash scripts/install-awskills.sh --target openclaw # just one agent
bash scripts/install-awskills.sh --only local-inference # just one skillNothing is overwritten without --force, so re-running is safe. Full per-agent path table in
install-skills.
Docker Desktop on Windows wedges its WSL2 Linux engine: the docker API returns 500 Internal Server Error, or docker stop/recreate dies with tried to kill container, but did not receive an exit event (common on nvidia-runtime / GPU containers). The GUI looks healthy; the daemon is dead.
scripts/Recover-Docker.ps1 does a complete teardown in the right order — kill the UI + backends → wsl --shutdown → reap vmmem/wslservice zombies → bounce the Windows services → cold-start Docker Desktop → wait for the engine → clean dead containers + restart exited ones. No reboot, container volumes intact, healthy in ~30–60s.
Run it directly:
# one-shot recovery (run elevated for the service bounce)
pwsh -File scripts/Recover-Docker.ps1
# 30s watchdog — auto-recovers on failure
pwsh -File scripts/Recover-Docker.ps1 -MonitorAs a Claude Code skill: copy skills/recover-docker.md into your project's .claude/commands/ and scripts/Recover-Docker.ps1 somewhere on disk, then run /recover-docker (or /recover-docker --monitor). The agent detects the wedge, runs recovery, verifies with docker version / docker ps, and reports which containers came back.
📖 Background: Self-Healing Docker: One Command to Un-Wedge the WSL2 Engine
Open-core release hygiene. Three parameterized tools (nothing project-specific — every rule is a flag) plus a /moat-guard skill that drives them:
| Tool | Job |
|---|---|
tools/check_package_leaks.py |
Pre-publish gate. Inspect a built wheel/sdist; fail (non-zero exit) if it bundles forbidden files/imports or is missing a required keystone. Drop it in CI before twine upload. |
tools/find_leaky_releases.py |
Audit what already shipped. List index versions below a cutoff and, with --verify, download each wheel to prove the leak. Prints the exact yank checklist (indexes have no yank API). |
tools/purge_public_leaks.sh |
Scrub the public GitHub surface. Delete pre-cutoff releases + tags and filter a leaked file out of the repo's entire history (mirror force-push). Dry-run by default. |
# CI gate: fail the build if it bundles secrets or imports an internal package
python tools/check_package_leaks.py dist/mypkg-2.0.0-py3-none-any.whl \
--forbid-path '*/secrets*.py' --forbid-import mycorp_internal \
--require-file '*/licensing.py'
# Audit a published project and prove which versions leak
python tools/find_leaky_releases.py mypkg --cutoff 2.0.0 --verify \
--forbid-path '*/nanogpt.py'
# Plan a purge (dry-run), then execute once you've read it
bash tools/purge_public_leaks.sh --repo me/mypkg --keep-from 2.0.0 --leak-path src/secret.py
bash tools/purge_public_leaks.sh --repo me/mypkg --keep-from 2.0.0 --leak-path src/secret.py \
--execute --rewrite-history # irreversible — breaks pinned installs & forksAs a Claude Code skill: copy skills/moat-guard.md into .claude/commands/ and run /moat-guard check (pre-publish), /moat-guard find (audit), or /moat-guard purge (destructive — always dry-runs first, confirms before force-pushing).
⚠️ Purging shrinks exposure but cannot un-distribute what already shipped. If a removed file carried a secret, rotate it.
Make a model fit where bf16 won't — on a smaller GPU, or beside another model on
the same card. tools/quantize_model.py drives
AutoRound and bakes in the gotchas that
otherwise produce a broken or un-loadable artifact.
The default is RTN (round-to-nearest, --iters 0): weight-only, no
calibration data, no forward pass, ~<2 GB peak VRAM, ~1 minute. It runs on your
CPU + GPU together (host-RAM offload) — $0, fully local, and enough for
most models. Calibrated AWQ (--iters > 0) is higher quality but needs a real
GPU, and is refused on architectures whose calibrated path crashes (per-layer
head dims) with a clear steer back to RTN.
# Preview the plan — no weight load, no GPU, no write
python tools/quantize_model.py google/gemma-3-12b-it --dry-run
# RTN 4-bit, local + free (keeps lm_head + multimodal projectors in bf16)
python tools/quantize_model.py google/gemma-3-12b-it -o ./gemma-3-12b-it-awq
# Calibrated AWQ on a GPU (refused on het-head models — use RTN there)
python tools/quantize_model.py mistralai/Mistral-7B-Instruct-v0.3 \
-o ./mistral-7b-awq --iters 200 --nsamples 128What it gets right for you: uses AutoRound, not llm-compressor (which silently
downgrades transformers); keeps lm_head + vision/audio projectors in bf16
(vLLM loaders require it); exports compressed-tensors so un-quantized modules
stay plain; and detects heterogeneous head dims to avoid the calibrated-mode
crash. Serve the result with vllm serve <outdir> --quantization awq_marlin.
As a Claude Code skill: copy skills/model-quantization.md into
.claude/commands/ and tools/quantize_model.py onto disk, then run
/model-quantization <model-id> -o <outdir>. The agent dry-runs first, runs RTN
by default, and reports the output path + serve command. Needs
pip install auto-round torch transformers.
Agents burn most of their tokens re-sending bulky context — verbose JSON tool output, retrieved
docs, file dumps. headroom (headroom-ai) crushes that
content with a SmartCrusher pipeline — measured ~46% token savings on an 87 KB tool blob —
while protecting conversation/user text so answers don't degrade. Two ways in: an automatic
pre-send hook at the single LLM chokepoint (flag-gated, graceful no-op — if the sidecar is off,
calls just proceed uncompressed), and agent-callable tools (headroom_compress(content),
headroom_stats()) from the free headroom tool pack.
export AITHER_HEADROOM_ENABLED=true # turn on the automatic pre-send hook
curl http://127.0.0.1:8788/health # sidecar healthy? → {"ok":true,"headroom":"0.25.0"}
# prove the savings on a realistic payload before trusting the ratioGive an adk agent the tools self-service with apply_pack_self("headroom") (free, no entitlement).
Present bulky context as the content blob (conversation text is protected and barely compresses;
below ~800 chars it no-ops). See skills/aither-headroom.md.
A reboot, a crash, or a closed terminal and your Claude Code conversations are gone — not
deleted, just unfindable. You reopen N terminals, cd into each project, run claude,
then /resume and squint at a list of UUIDs trying to remember which was which.
scripts/Resume-ClaudeSessions.ps1 reads Claude Code's
own session journals (~/.claude/projects/<encoded-cwd>/<session-id>.jsonl), recovers each
session's AI title, last prompt, working directory, git branch and last-active time, lets
you pick, and reopens them — each in its own terminal tab or tmux window. Read-only against
your history; it never mutates the journals.
# interactive picker — choose which to bring back
pwsh -File scripts/Resume-ClaudeSessions.ps1
# reopen the most-recent session for every project directory, no prompt
pwsh -File scripts/Resume-ClaudeSessions.ps1 -PerDir -All
# only sessions matching some text, from the last day
pwsh -File scripts/Resume-ClaudeSessions.ps1 -Filter payments -LookbackHours 24
# over SSH? resume into tmux — the windows survive a disconnect
pwsh -File scripts/Resume-ClaudeSessions.ps1 -Tmux -Select 1,3Cross-platform (PowerShell 7): Windows Terminal tabs on Windows, tmux windows anywhere,
Terminal.app on macOS — and if none of those exist it prints the commands rather than
pretending it launched something. -DryRun prints the resolved session ids to stdout.
⚠️ The gotcha this exists to solve: sub-agent sidechains (agent-*.jsonl) and workflow journals are rewritten constantly, so by write-time they crowd out your real sessions. A naive "most recently modified N journals" scan surfaces almost none of them. This filters to genuine top-level conversations before truncating the scan window.
⚠️ Second gotcha, fixed in the engine: resumed tabs used to come up fully monochrome whenever you launched them from inside a Claude Code session. Claude Code exportsNO_COLOR=1to its subprocesses so tool output comes back clean — and the terminal this engine spawns is one of those subprocesses, so the new window, every shell in it, and everyclaudeinside those shells inherited it. It looks exactly like a terminal-theme problem and is not one. The engine now scrubs the variable per tab. If you edit the launch command, keep that scrub — and delete the variable rather than blanking it, since the check is!("NO_COLOR" in process.env)(presence, not value), soNO_COLOR=""still kills colour.
As a Claude Code skill: copy skills/resume-all.md into .claude/commands/ and the script
onto disk, then run /resume-all (or /resume-all all, or /resume-all <filter text>).
OmniNode Protocol (by SUM-INNOVATION) is a trustless, peer-to-peer network that pools ordinary machines into a fabric big enough to run models no single device could hold — any device with a chip can become a node. Standing one up shouldn't be a ten-step wiki page.
scripts/omninode-node-up.sh takes a fresh machine (Linux / macOS /
Windows-WSL2) from nothing installed → a live, discoverable node: detect hardware → install Rust if
missing → clone + build omni-node → verify two peers discover each other over libp2p/mDNS (or --listen
to run a persistent node). If awdk is present it can also
adk mesh onboard the node so your agents use it — one motion, not two projects.
./scripts/omninode-node-up.sh # build + self-verify P2P discovery
./scripts/omninode-node-up.sh --listen # run a persistent mesh node
./scripts/omninode-node-up.sh --adk # + enroll into AitherMesh for adk agentsVerified end-to-end on a 12-core Linux box: clone → build → NODE OK, P2P discovery live. See
skills/omninode-node.md. No credentials, no account, no central server.
Five skills for the coherent substrate the OmniNode node plugs into. Each is a "set it up, then use it" guide grounded in real commands — standing up compute and having your agents use it is one motion, not five projects.
| Skill | What it sets up |
|---|---|
awdk |
The agent toolkit — pip install awdk → adk onboard --quick → adk run. Your model, your loop, your data on your box; manage from the portal. |
aither-discord-agent |
Deploy any awdk agent as a Discord bot with one automated onboarding command — adk onboard --discord installs your pack, validates the bot token live, prints the invite link, verifies identity/tools, and launches. Every DM/@mention runs your agent's own loop. No paid tier needed (hand-rolled fallback). |
awnode |
The body — a local MCP server (adk mcp node) exposing GPU, local inference, ComfyUI, and files to agents; or bootstrap the box as a full inference node. |
aitherconnect |
The seam — adk connect / adk mesh onboard (--headscale behind NAT) to wire a machine, agent, and browser into AitherOS and the mesh. |
aitherzero |
The provisioner — one config.psd1 + bootstrap.ps1 to stand up bare-metal/on-prem/cloud/hybrid, with a generated-from-inventory config editor and az_* agent tools. |
aithermesh |
The fabric — one playbook (Invoke-AitherPlaybook deploy-mesh-agent) to create a private WireGuard mesh, join nodes to the overlay, and deploy agents onto them; nodes defined in config/nodes.yaml. |
bonsai-27b |
A model to run on a node — PrismML's 1-bit Bonsai-27B (Q1_0, 3.8 GB) served on a plain CPU box via the PrismML llama.cpp fork; a 27B model on a laptop. |
graph-rag-agent |
Knowledge on tap — adk ingest a folder/codebase into a knowledge graph, then an agent (adk create-app + recall/search_knowledge) that answers from your material. Local-first graph RAG, no separate vector DB. |
graph-a-repo |
The operational runbook — graph a repo OR a KB end-to-end and prove both halves: the embedder returns the right-dimension vector (rag_verify_embedder, 768 for nomic-embed-text) AND retrieval returns the ingested content (rag_verify_retrieval — an empty graph answers 200 with zero hits). Picks code (CodeRankEmbed + codegraph_*) vs prose (nomic-embed-text) embedder; bakes in the traps (code≠text vector spaces, fleet-vector parity, adk chat not adk query). Front door for the graphrag toolpack. |
aither-code-intelligence |
The operational layer — how to run prospector+codegraph+headroom for real and prove they still work. A 60-second health check, nine silent failure modes with the symptom you actually see (stale paths, orphaned embeddings, mount traps, self-healers killing slow indexers, OOMKilled=false hiding a real OOM), and why hybrid search needs Reciprocal Rank Fusion (measured F1 0.083 → 0.293 → 0.470). Every bug in it reported healthy while broken. |
aither-codegraph |
The what — a call-graph-aware code index. adk run auto-indexes a Python project; agents gain code_search/code_context (symbols, signatures, callers, callees, blast radius). Fleet path: the managed CodeGraph service + codegraph_* MCP tools. |
aither-prospector |
The where — a semantic file-explorer. apply_pack_self("prospector") → map_build(repo) then map_localize("where is auth?") returns the dirs to search first, so CodeGraph/grep only look where it matters. Free pack, dependency-free builder. |
aither-agent-notebook |
The reviewable unit of work — turn "build X" into a runnable .anb Agent Notebook of typed cells (plan / prompt / tool_call / agent_delegate / human checkpoint / result). adk notebook plan "…" → run → status → export to Jupyter; every run is cost-tracked and can be replayed/diffed against a baseline. Six agent tools (notebook_*) proxy the Genesis /notebooks API. The durable counterpart to a one-shot adk forge. |
Generic, project-agnostic slash commands — pure prompt-skills, no code or dependencies:
| Skill | What it does |
|---|---|
secretguard |
Scan git history for leaked secrets with gitleaks; purge a file from history (filter-repo) or allowlist a false positive. Never echoes secret values. |
security-audit |
Code + dependency + config audit against the OWASP Top 10 — injection, crypto, access control, secret exposure — with severity-ranked findings. |
dependencies |
Audit / update / prune dependencies and check licenses across pip, npm/yarn, and Docker base images (pip-audit, npm audit, safety). |
performance |
Profile and optimize: cProfile/memory_profiler, hotspot hunting, caching, N+1 queries, algorithmic complexity. Measure first. |
refactor |
Apply clean-code refactors — extract method, replace conditionals with polymorphism, simplify nested logic — without changing behavior. |
compare-versions |
Diff two versions of a file/commit/release: structural + behavioral changes, breaking-change risk, and a migration checklist. |
CLI utilities you can run directly — all parameterized, no AitherOS dependency:
| Tool | What it does |
|---|---|
tools/check_exports.py |
Validate a Python package: __all__ entries that don't resolve (ghost exports), __version__ vs pyproject.toml drift, and orphan modules nothing imports. Stdlib-only. |
tools/validate_compose_ports.py |
Lint docker-compose for host-port collisions (across one or many -f files), malformed mappings, and unpublished container ports. --strict to fail CI. |
tools/Backup-DockerVolumes.ps1 |
Snapshot Docker named volumes → timestamped .tgz + manifest.json, via a throwaway Alpine container. -Pattern/-SkipPattern/-DryRun, auto-prunes old snapshots. |
tools/quantize_model.py |
Quantize an LLM to 4-bit with AutoRound. RTN runs free on local CPU+GPU (--iters 0, default); keeps lm_head/multimodal projectors in bf16, exports compressed-tensors, and refuses calibrated mode on het-head architectures that would crash. --dry-run to preview. |
PowerShell dev utilities (tools/powershell/)
Standalone PS7 helpers — no module, no setup, just pwsh -File:
| Script | What it does |
|---|---|
Invoke-FileGrep.ps1 |
Recursive regex content search with context lines. |
Invoke-BulkReplace.ps1 |
Regex find/replace across globs, with -DryRun and backreferences. |
Invoke-FileDiff.ps1 |
Unified diff of two files (or inline strings). |
Invoke-FileSplice.ps1 |
Surgically replace a line range in a text file. |
New-GitBranch.ps1 |
Create a branch with a conventional prefix (configurable). |
New-GitCommit.ps1 |
Stage + commit with Conventional Commits validation. |
More agent-ops glue is on the way. Star the repo to follow along — and PRs/issues welcome.
MIT © Aitherium. Use it, fork it, ship it.
Standalone tools that share one idea: replace something you would otherwise have to trust with something you can check.
Each installs on its own, works offline, and needs no account.
| instead of trusting | you check | |
|---|---|---|
| awdk | a framework's idea of how your agents should run | one loop you can read, pointed at a backend you already pay for |
| awskills (you are here) | that an agent knows your procedure | the procedure written down, versioned, and loadable by any agent |
| awpack | that the pack you want shipped inside somebody's SDK, under whatever licence that SDK happens to carry | the pack as its own versioned artifact, with its own licence, that any agent runtime can install |
| awm | that memory stayed in its lane | tenant:user:project scopes, so a write cannot cross a boundary |
| awdesk | that the agent is somewhere behind a browser tab | a tray icon, a face on your desktop, and the decision card that pops when it needs you |
| awnode | a vendor's cloud with every prompt | a local gateway routing to backends you chose |
| awgraph | that grep found everything | an AST + tree-sitter call graph an agent can traverse |
| awgit | that no one else is editing this file | a lease, refused at commit time if you do not hold it |
| awdelphi | one agent's confident take on a decision | the round trace, the anonymity, and who dissents |
| awclassify | a filename, a folder, or whoever last touched it | doc_type, visibility, audience and topics, with the evidence lines that decided each |
| awtoll | that your tooling is saving you context | the measured token cost of each tool call, and what the alternative cost |
| awseal | that the artifact came from who you think | an Ed25519 seal — the key that verifies is not the key that forges |
| awshare | that the download is intact | content-addressed bundles, verified on fetch |
| awnest | that there is a person on the other end | a verdict with evidence, where "we could not tell" is not "yes" |
| awrena | a leaderboard someone can edit, and votes nobody counted | a scored duel with both answers kept, and a result bound to them |
| awnboard | a share link anyone who sees it can use | an invitation addressed to one person, for one gate, revocable |
| awnix | that the box is what you left it as | an immutable image you built, with atomic rollback |
| awrecover | that the restore worked | a restore that fully lands or does not land at all |
| awstorage | a du you ran last month, and a peers file that says 3 TB free | an inventory snapshot per node with a diff since the last one, and each tree classified re-fetchable or not |
| awrelay | a SaaS in the middle of your agents | findings, alerts and coordination over your own transport |
| awask | that anyone read the paragraph where you asked | the ask itself, with a button that steers the session that raised it |
| awmail | a mailbox somebody else can read | mail your agents send and receive over your own server |
| awswarm | that a model either fits your GPU or it doesn't run at all | a placement plan and an acquisition-probability estimate before you spend on a run |
| awfind | one vendor's idea of the web | results from whichever providers you configured |
| awbrowse | that the page said what you were told | the render, the DOM and the requests it made |
| awvoice | that a cloud vendor may hold your audio | a transcript and a wav from a service you host |
| awvision | a filename and a caption somebody wrote | what a model actually reports about the pixels |
| awscreen | a selector that was true when the page was written | the elements actually rendered, by what they look like |
| awbeads | that a layout your users built survives the next deploy | the arrangement as data you can read back, diff, and hand to another surface |
| awbonsai | that inference always means a request left the machine | a WebGPU model answering on the tab's own GPU, with a consent record logged before it ever loaded |
| gawbbonet | the model to keep a 300-message campaign coherent by itself | campaign facts recalled from scoped memory you can list and edit |
| aitherkvcache | a vendor's quantisation defaults | sub-byte KV cache kernels you can benchmark yourself |
| awrtifact | a hand-rolled split script and a hand-edited worker manifest | byte-verified parts in a release, served with Range + CORS, sizes asserted by a live gate |
| AitherZero | a pile of scripts nobody has numbered | numbered, discoverable automation with declarative playbooks |
| AitherConnect | what a page tells your browser to do | a federated search and desktop bridge you host |
| awreason | a confident paragraph | the phases it went through, and every tool call it made to get there |
| awrecurse | that everything you pasted in was actually read | which slices it opened, and what it concluded from each |
| awprism | the first explanation that fits | the ranked alternatives, and the observation that separates them |
| awrepl | what the agent believes the value is | the value, printed from the live session |
| awreport | that the report you pasted carried no token in it | a redacted report, and the duplicate it merged into instead of filing twice |
| awresearch | a summary of pages nobody opened | every claim against the source it came from |
| awfocus | twelve terminal tabs and a bad memory | one command that names every session, finds any transcript, and opens or steers the one you want |
| awgym | that a world model learned anything from the games it saw | transitions captured from real play, fed back, and the retrodiction score falling on grids it never saw |
| awpredict | a model because it trained without erroring | its prediction against a self-updating lookup, on the rows that are actually novel |
| awevolve | that your optimisation loop is finding anything | every version it kept, the score that version earned, and the edit that produced it |
| awsh | that you already know the name of the command | what it decided your line meant, before it acts on it |
| awrise | that a scheduled agent ran at all, and ran exactly once | a durable record of every wake -- fired, skipped, overlapped or timed out -- each with its reason |
| awkno | that the docs site is up, or that you remember the family | the whole ecosystem in your terminal, with no network at all |
| awwall | that a service only talks to the hosts you think it talks to | an explicit egress allowlist, where a denial names the rule that denied it |
| awembed | a general-purpose embedder that has never seen your code | a held-out split of whole directories, scored teacher vs student vs int8 |
| awtax | a closed tax app's sealed file you can never read again | a plain, provider-neutral schema of every figure, with the page it came from |
| awsettings | that you will remember to re-approve the same thing on every box you work from | one profile, unioned rather than overwritten, with the credentials left behind |
| awavatar | a cloud 3D vendor's opaque task id | a manifest with a sha256, a licence and a rig-audit verdict per file |
awnix is the ground floor — A Linux you can hand to an agent — immutable base, capabilities included.
Every repository here is public. Each publishes an aither-manifest.json beside its page, so any surface can read every sibling's — the network is browsable from any node in it.
| repo | what it is | pages |
|---|---|---|
| awdk | Build AI agent fleets — 3 lines, any backend, local or cloud | docs |
| awskills (you are here) | Portable agent skills — self-contained procedures an agent loads on demand | docs |
| awpack | First-party agent packs — the ones we build, versioned and installable on their own | docs |
| awm | A portable, scoped agent memory | docs |
| awdesk | Aither World Desk -- the desktop body of AitherOS Online: tray, avatars, decision cards, the Living Desktop as an overlay | docs |
| awnode | A lightweight local gateway — bridges your apps to the AI backends you chose | docs |
| awrun | A priority-aware queue and dispatcher for agentic runs and ad-hoc CI builds. It also judges whether the runner pool is big enough for the queue it is draining, and can ask a host to grow it -- reserving capacity is zero-sum, so a saturated pool needs more of it, not a different share of it | docs |
| awgraph | A semantic code graph for agents — AST + tree-sitter, call graphs | docs |
| awgit | Semantic version control on top of git — edit-ops and leases | docs |
| awdelphi | Anonymous multi-round expert panels — a converged answer with a trace | docs |
| awclassify | Classify any document -- what it is, who may read it, who it is for, what it is about | — |
| awtoll | What every tool call costs you in context, measured from your own transcripts | docs |
| awseal | Sign an artifact so a stranger can verify it | docs |
| awshare | Publish an artifact and fetch it back verified | docs |
| awdit | An append-only audit trail whose gaps are DETECTABLE | docs |
| awbac | Role-based access control that fails closed and explains itself | docs |
| awiam | Who is this caller? A directory and session store that fails honestly | docs |
| awtunnel | Reach a service that has no public address | docs |
| awnest | Prove there is a human before you let them into the nest | docs |
| awrena | Put two agents head to head and get a verdict you can check | docs |
| awnboard | A front gate you can put in front of anything, and hand someone the key to | docs |
| awnix | A Linux you can hand to an agent — immutable base, capabilities included | docs |
| awrecover | Labelled snapshots with an all-or-nothing restore | docs |
| awstorage | Every drive on every node, indexed, classified and diffed -- so you can see what you own before you delete it | docs |
| awrelay | Portable agent messaging — findings, alerts, coordination | docs |
| awask | Your agent asks you a question — and acts on your answer | docs |
| awmail | Give an agent an email address — send, and actually receive | docs |
| awnet | The agentic web — agents host a mesh, and agents join one | docs |
| awswarm | Run one model too big for any single GPU across a pool of small ones | — |
| awfind | A portable search client — query, results, ranking | docs |
| awbrowse | A portable browser client — navigate, console, network, DOM, screenshot | docs |
| awvoice | Hear and speak — transcribe audio, synthesize a voice | docs |
| awvision | See an image — describe it, ask it a question, compare two | docs |
| awscreen | See this machine — what is on screen, and where to click it | docs |
| awkit | Render an agent panel from a tool result — one component, any React app | — |
| awbeads | A spatial canvas for a page — arrange things, connect them, and keep the arrangement | — |
| awbonsai | Run a real model in the visitor's own browser — no server round trip, no upload | — |
| awknowledge | How to run a coding agent so the result survives — the laws, with evidence | docs |
| awbrain | Your history as a wiki of linked markdown — claims pinned to the evidence | — |
| gawbbonet | GobboNet campaigns with a real agent brain — scoped memory, graph recall | docs |
| aitherkvcache | Near-optimal KV cache quantization for LLM inference — sub-byte compression | docs |
| awrtifact | Deliberately chunk artifacts into GitHub release assets — the productized aitherkvcache mirror lane | docs |
| AitherZero | PowerShell 7+ automation framework — numbered, self-describing scripts | docs |
| AitherConnect | Browser extension — federated AI search, page context, and the Living OS overlay | docs |
| awreason | A portable reasoning client — sessions, phases, thoughts, and the chain that produced the answer | docs |
| awrecurse | Answer a question over a context far larger than the window — recursively, with the trace kept | docs |
| awprism | Turn a failure into ranked hypotheses — and say what would confirm each one | docs |
| awrepl | A REPL an agent can actually use — state that survives between turns | docs |
| awreport | File a bug report that has already scrubbed your secrets and collapsed the duplicate | — |
| awresearch | Ask a research question, get a cited report you can check | docs |
| awfocus | See, search and steer every Claude session from one command | docs |
| awgym | An ARC training gym — a game a world model can watch, and six roles that play through it | docs |
| awpredict | Predict what your environment does next, and how surprised you were | docs |
| awevolve | Point an agent at a file and a command that scores it, and let it improve | — |
| awsh | Your terminal answers you -- type a question where a command would go | docs |
| awrise | Wake an agent on a schedule, let it do one thing, and put it back to sleep | docs |
| awkno | The man page for the Aither World — every brick, stack and law, offline | docs |
| awwall | Say what a workload may reach, and watch everything else fail closed | docs |
| awrouter | OpenRouter for your own fleet: pick a model backend by cost/latency/ capability, fail over, fit the context window, stream. Standalone, OpenAI-compatible, no Aither-specifics required to be valuable | — |
| awembed | Train an embedding model that knows your corpus, and prove it beats the big one | docs |
| awtax | Turn any tax PDF -- returns, W-2, 1099, statements, even scans -- into structured data you can check | docs |
| awflow | A deterministic workflow runtime — chain agent calls with journal replay and budget control | docs |
| awsettings | Your agent's permissions and config, following you to the next machine | docs |
| awavatar | One character spec in, a rigged, animated, multi-style avatar pack out | docs |