Agent workflows · engineering contracts

AER

Final release 6.1.0 · archived

Archived at 6.1.0, with public source and npm releases preserved: independent engineering skills and recoverable project-local installation.

  • Public source
  • On npm

My role: Rule design, installer architecture, client integration, release engineering, and evidence preservation.

  • @aaarslan/aer on npm
  • 13 independent skills
  • Node.js >=24.11.1 · ESM
  • Claude Code + Codex
  • Zero runtime dependencies

At a glance

Problem
Engineering instructions need to be independently usable and installed without overwriting the repository owner's work.
My contribution
I built 13 independent skills, explicit Claude Code and Codex integrations, and a zero-dependency installer with ownership and recovery checks.
Outcome
Final release 6.1.0 is published and the repository is archived. Small local comparisons showed no clear overall advantage; I chose focused guidance over maintaining a broad rules layer.

An optional working example

What should an installer refuse to touch?

Install a virtual repo. Change a managed file. Find out what happens next.

Safe delivery starts with knowing which bytes belong to whom.

How AER is built and installedCanonical kernel and skill content produces portable skills and explicit native controls. The aer install command plans owned project-local changes, checks collisions and drift, and records recoverable transactions. The aer check command inspects integrity without repair; aer uninstall preserves consumer content.Canonical corpuskernel/ · profilesskills/ · resources13 independent skillsbuildPortable skillsNative controlsaer installYour repositorycollision · driftinventory · recoveryaer checkaer uninstallinspect integritypreserve owner bytes

One canonical corpus supplies independent skills and explicit integrations, with ownership checks around project-local changes.

In words

  1. kernel/ owns the compact contract and profiles; skills/ owns 13 independent task bodies and resources.
  2. Small deterministic renderers produce portable metadata and explicit Codex or Claude Code controls.
  3. aer install --destination codex:.agents/skills plans project-local changes.
  4. Complete inventories, collision refusal, drift checks, and pending transactions guard install, moves, and recovery.
  5. aer check inspects without repair; aer uninstall preserves consumer bytes outside owned content.

Derived from the v6.0.1 public repository (kernel/, skills/, integrations/, src/) and packed-artifact checks.

Engineering decisions

  1. 01decision

    Keep skills independently usable

    Each skill carries its own safety context and directly named resources. V6.0.1 removes transitive reference copies while preserving standalone use: 38 references rather than 170. The contract and web-UI skill retain one canonical browser-conditional interaction clause.

    TradeoffNamed references must include their operative guidance without depending on an absent sibling. The patch retires obsolete copies only when the consumer has not edited them.

  2. 02decision

    Make ownership and recovery explicit

    Complete inventories, hashes, exact mutation guards, and pending transactions protect installation, selection changes, moves, and uninstall. Unowned collisions and modified owned content refuse before mutation.

    TradeoffA refused update requires the owner to inspect and preserve their edits. Interrupted operations resume with the creating package; v5 remains a separate pinned exit workflow.

  3. 03decision

    Distinguish client controls from useful behavior

    Portable skills use standard metadata. Explicit native representations add manual invocation controls; Claude review skills bind a Read, Grep, Glob reviewer. Local protocol fixtures exercise those controls without model trials or provider spending.

    TradeoffPlugin output styles are a documented optional delivery path with user-style override costs; AER has no plugin artifact. Discovery and tool controls remain version-specific evidence and do not establish model efficacy.

What you can verify

Source and release links checked .

Scope and limits

The October comparisons used refactored AER content on interactive pi 1.4.0 with qwen3.8-max at low thinking. Small standalone-skill trials and a full-kernel webapp comparison with a fresh repair round did not establish a clear overall code-quality advantage. One model and harness, restricted tools, tiny unblinded samples, and an inconclusive original webapp round limit interpretation. Cached-token counts are not billed cost; no general efficacy or statistical significance is established. See the retirement field note for scope and limitations.

A short walkthrough

  1. 01

    Choose a profile, skills, and explicit destination representations; preview in a disposable repository.

  2. 02

    Install, inspect the complete inventory, and use check to detect drift without repair.

  3. 03

    Preserve edits and follow the pending-operation or pinned v5 recovery path before changing ownership.

Curious how this is built? Look under the desk.

pocket terminal · ~/desk

A small terminal for this site. It prints only what is on the site; type help for commands.

The prompt needs JavaScript. Every destination is also in the navigation above.

ls work

7 products · * featured

Your turn: try open skillcheck, coffee, or help.

Loading terminal commands…

Type a command and press Enter. Try help, ls, open followed by a project name, why followed by a project name, inspect, trail, cat about, notes, contact, resume, coffee, whoami, or clear. Tab completes; the up and down arrows recall earlier commands. Escape closes the terminal.