{"_id":"@aaarslan/aer","_rev":"4-af8367a439ce183d4a2a2cc303092faa","name":"@aaarslan/aer","dist-tags":{"latest":"5.0.0"},"versions":{"3.0.1":{"name":"@aaarslan/aer","version":"3.0.1","keywords":["ai-agents","claude-code","openai-codex","engineering-rules","developer-tools"],"license":"MIT","_id":"@aaarslan/aer@3.0.1","maintainers":[{"name":"aaarslan","email":"arslan.abdallah@gmail.com"}],"homepage":"https://github.com/aaarslan/agent-engineering-rules#readme","bugs":{"url":"https://github.com/aaarslan/agent-engineering-rules/issues"},"bin":{"aer":"tools/aer.mjs"},"dist":{"shasum":"aa29426514306a8eb9d608f1a81ac5e093fbc9f6","tarball":"https://registry.npmjs.org/@aaarslan/aer/-/aer-3.0.1.tgz","fileCount":95,"integrity":"sha512-7ZpY3PChm90vtW2TkthZbmge+tSWNQm/RhzzI6QStYdMz07fAS+Pz6ieXoAIIxDbQbpAHsVSzltGum51NsFhTw==","signatures":[{"sig":"MEUCIQDhvASMWa1UcoPQj90d1/0IiufytxVcShhnSVEl50q/8AIgLPpZ4LgbvsT3AC+QfH9Vp5ZfG4HHByfnwH/JneRna1k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":302137},"type":"module","engines":{"node":">=24"},"gitHead":"bdb0b8704e03c20c14fc235643e2a272bbceee5d","scripts":{"test":"node --test tools/build-distributions.test.mjs tools/validate-source.test.mjs tools/validate-public-content.test.mjs tools/aer.test.mjs tools/install-distribution.test.mjs","test:cli":"node --test tools/aer.test.mjs tools/install-distribution.test.mjs","validate":"node tools/validate-public-content.mjs && node tools/validate-source.mjs && node tools/build-distributions.mjs && node tools/validate-distributions.mjs","test:packed":"node tools/packed-install-smoke.mjs","release:check":"npm test && npm run validate && npm run validate:research && npm run test:packed","prepublishOnly":"npm run release:check","validate:research":"node --test tools/preflight-evals.test.mjs tools/live-ab-eval.test.mjs && node tools/preflight-evals.mjs && node tools/validate-runtime-loads.mjs --json"},"_npmUser":{"name":"aaarslan","email":"arslan.abdallah@gmail.com"},"repository":{"url":"git+https://github.com/aaarslan/agent-engineering-rules.git","type":"git"},"_npmVersion":"11.19.0","description":"Project-local engineering rules for Claude Code and OpenAI Codex","directories":{},"_nodeVersion":"26.7.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aer_3.0.1_1788036675817_0.8189350302732523","host":"s3://npm-registry-packages-npm-production"}},"3.1.0":{"name":"@aaarslan/aer","version":"3.1.0","keywords":["ai-agents","claude-code","openai-codex","engineering-rules","developer-tools"],"license":"MIT","_id":"@aaarslan/aer@3.1.0","maintainers":[{"name":"aaarslan","email":"arslan.abdallah@gmail.com"}],"homepage":"https://github.com/aaarslan/agent-engineering-rules#readme","bugs":{"url":"https://github.com/aaarslan/agent-engineering-rules/issues"},"bin":{"aer":"tools/aer.mjs"},"dist":{"shasum":"ea49a9fd7db1f988841fd66159fa97f0fe6dda8b","tarball":"https://registry.npmjs.org/@aaarslan/aer/-/aer-3.1.0.tgz","fileCount":95,"integrity":"sha512-edomPnMhiCiKuwjPGqIem7EuM9O8IppwwxxQ+Bd3HAqxUnQXEmefu2lhBuxzEWMehoOp70UIX6QY048XA/tstQ==","signatures":[{"sig":"MEUCIH3MMjVJeT8NOAKFuOGnTizX1k0Bu7mWzGINHkFL1G1yAiEA4gLXtTe1SzCKxwS2pEz0anUwvPoum6S19wUfCP6IOIA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":383506},"type":"module","engines":{"node":">=24"},"gitHead":"d51044eecffaad793d56b6ba503056c256db459b","scripts":{"test":"node --test tools/build-distributions.test.mjs tools/validate-source.test.mjs tools/validate-public-content.test.mjs tools/aer.test.mjs tools/install-distribution.test.mjs tools/tool-contracts.test.mjs tools/guidance-regressions.test.mjs","test:cli":"node --test tools/aer.test.mjs tools/install-distribution.test.mjs","validate":"node tools/validate-public-content.mjs && node tools/validate-source.mjs && node tools/build-distributions.mjs && node tools/validate-distributions.mjs","test:packed":"node tools/packed-install-smoke.mjs","release:check":"npm test && npm run validate && npm run validate:research && npm run test:packed","prepublishOnly":"npm run release:check","validate:research":"node --test tools/preflight-evals.test.mjs tools/live-ab-eval.test.mjs && node tools/preflight-evals.mjs && node tools/validate-runtime-loads.mjs --json"},"_npmUser":{"name":"aaarslan","email":"arslan.abdallah@gmail.com"},"repository":{"url":"git+https://github.com/aaarslan/agent-engineering-rules.git","type":"git"},"_npmVersion":"11.19.0","description":"Project-local engineering rules for Claude Code and OpenAI Codex","directories":{},"_nodeVersion":"26.7.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aer_3.1.0_1788263964351_0.5106701158675451","host":"s3://npm-registry-packages-npm-production"}},"3.1.1":{"name":"@aaarslan/aer","version":"3.1.1","keywords":["ai-agents","claude-code","openai-codex","engineering-rules","developer-tools"],"license":"MIT","_id":"@aaarslan/aer@3.1.1","maintainers":[{"name":"aaarslan","email":"arslan.abdallah@gmail.com"}],"homepage":"https://github.com/aaarslan/agent-engineering-rules#readme","bugs":{"url":"https://github.com/aaarslan/agent-engineering-rules/issues"},"bin":{"aer":"tools/aer.mjs"},"dist":{"shasum":"71fbc425b93faeeebe3107c90ba630f30741165b","tarball":"https://registry.npmjs.org/@aaarslan/aer/-/aer-3.1.1.tgz","fileCount":95,"integrity":"sha512-ySJUWIZPlB89BtoKdSrWACVMJT46u6P2/zFqU0EIYI9xH6aKRhq8mMBx/oMigby6JnnTFRopPAF2h7OsYz+ICg==","signatures":[{"sig":"MEQCIDclbFl9wQKyAcFrWZYcHX07NJgacOqfT2+f7Su2brSyAiAbzElzwGInDTRws32L8aaTGx9j18dO3pdviigFEP89hg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":394808},"type":"module","engines":{"node":">=24"},"gitHead":"c1353c7993b4ff78e09963b01207d8b2d2c5d29e","scripts":{"test":"node --test tools/build-distributions.test.mjs tools/validate-source.test.mjs tools/validate-public-content.test.mjs tools/aer.test.mjs tools/install-distribution.test.mjs tools/tool-contracts.test.mjs tools/guidance-regressions.test.mjs tools/hardening-regressions.test.mjs","test:cli":"node --test tools/aer.test.mjs tools/install-distribution.test.mjs","validate":"node tools/validate-public-content.mjs && node tools/validate-source.mjs && node tools/build-distributions.mjs && node tools/validate-distributions.mjs","test:packed":"node tools/packed-install-smoke.mjs","release:check":"npm test && npm run validate && npm run validate:research && npm run test:packed","prepublishOnly":"npm run release:check","validate:research":"node --test tools/preflight-evals.test.mjs tools/live-ab-eval.test.mjs && node tools/preflight-evals.mjs && node tools/validate-runtime-loads.mjs --json"},"_npmUser":{"name":"aaarslan","email":"arslan.abdallah@gmail.com"},"repository":{"url":"git+https://github.com/aaarslan/agent-engineering-rules.git","type":"git"},"_npmVersion":"11.19.0","description":"Project-local engineering rules for Claude Code and OpenAI Codex","directories":{},"_nodeVersion":"26.7.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aer_3.1.1_1788283619082_0.006681696771048795","host":"s3://npm-registry-packages-npm-production"}},"5.0.0":{"_id":"@aaarslan/aer@5.0.0","bin":{"aer":"tools/aer.mjs"},"bugs":{"url":"https://github.com/aaarslan/agent-engineering-rules/issues"},"dist":{"shasum":"6afecc659e18a9fa1387c114c08551c99fef3e53","tarball":"https://registry.npmjs.org/@aaarslan/aer/-/aer-5.0.0.tgz","fileCount":96,"integrity":"sha512-HwLIZ1acYMflc3KP9Gswrn0T2NtS1sBq+GcHd7/TBKxQUQ4tJ3CRuptR2j/ck+WZ2EnkhjIZ6PeyrQjbTzXSwQ==","signatures":[{"sig":"MEUCIQDJR/uQH4ykEQRgd+QJbXegULA+erHlPJxCo9awM7L1PwIgXiyYWHeUDEuF256Mw7yOeFP+Q7JEBl6Pu0a+vfkXJyU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCCrFcpa0111acLNoyWXuKkDuOmRscmf1e7JGl/MiqM3gIhAMoobmMjdWSFoyHc3HSpg3JBGehjYBMbYBKq37Lv8TO2"}],"unpackedSize":320894},"name":"@aaarslan/aer","type":"module","_from":"file:C:/Users/aarsl/.codex/visualizations/2026/09/12/01a09647-149b-7f43-a591-dc71b2fd991e/v5-release/aaarslan-aer-5.0.0.tgz","engines":{"node":">=24"},"license":"MIT","scripts":{"test":"node --test tools/build-distributions.test.mjs tools/validate-source.test.mjs tools/validate-public-content.test.mjs tools/aer.test.mjs tools/install-distribution.test.mjs tools/tool-contracts.test.mjs tools/guidance-regressions.test.mjs tools/hardening-regressions.test.mjs","test:cli":"node --test tools/aer.test.mjs tools/install-distribution.test.mjs","validate":"node tools/validate-public-content.mjs && node tools/validate-source.mjs && node tools/build-distributions.mjs && node tools/validate-distributions.mjs","test:packed":"node tools/packed-install-smoke.mjs","release:check":"npm test && npm run validate && npm run validate:research && npm run test:packed","prepublishOnly":"npm run release:check","validate:research":"node --test tools/validate-corpus.test.mjs && node tools/validate-corpus.mjs && node tools/validate-runtime-loads.mjs --json"},"version":"5.0.0","_npmUser":{"name":"aaarslan","email":"arslan.abdallah@gmail.com"},"homepage":"https://github.com/aaarslan/agent-engineering-rules#readme","keywords":["ai-agents","claude-code","openai-codex","engineering-rules","developer-tools"],"_resolved":"C:\\Users\\aarsl\\.codex\\visualizations\\2026\\09\\12\\01a09647-149b-7f43-a591-dc71b2fd991e\\v5-release\\aaarslan-aer-5.0.0.tgz","_integrity":"sha512-HwLIZ1acYMflc3KP9Gswrn0T2NtS1sBq+GcHd7/TBKxQUQ4tJ3CRuptR2j/ck+WZ2EnkhjIZ6PeyrQjbTzXSwQ==","repository":{"url":"git+https://github.com/aaarslan/agent-engineering-rules.git","type":"git"},"_npmVersion":"11.19.0","description":"Project-local engineering rules for Claude Code and OpenAI Codex","directories":{},"maintainers":[{"name":"aaarslan","email":"arslan.abdallah@gmail.com"}],"_nodeVersion":"26.7.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/aer_5.0.0_1789247442900_0.4245320703484883"}}},"time":{"created":"2026-08-29T20:51:15.618Z","modified":"2026-09-12T21:10:43.135Z","3.0.1":"2026-08-29T20:51:15.973Z","3.1.0":"2026-09-01T11:59:24.481Z","3.1.1":"2026-09-01T17:26:59.240Z","5.0.0":"2026-09-12T21:10:42.988Z"},"bugs":{"url":"https://github.com/aaarslan/agent-engineering-rules/issues"},"license":"MIT","homepage":"https://github.com/aaarslan/agent-engineering-rules#readme","keywords":["ai-agents","claude-code","openai-codex","engineering-rules","developer-tools"],"repository":{"url":"git+https://github.com/aaarslan/agent-engineering-rules.git","type":"git"},"description":"Project-local engineering rules for Claude Code and OpenAI Codex","maintainers":[{"name":"aaarslan","email":"arslan.abdallah@gmail.com"}],"readme":"# Agent Engineering Rules\n\n[![Validate](https://github.com/aaarslan/agent-engineering-rules/actions/workflows/validate.yml/badge.svg)](https://github.com/aaarslan/agent-engineering-rules/actions/workflows/validate.yml)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)\n\n**Complete engineering, simple implementation, proportionate verification.**\n\nAER installs a compact, model-neutral engineering contract for Claude Code and Codex in one selected repository. The contract asks agents to repair owning defects, preserve exact behavior, complete real integrations, supply missing technical judgment, and support completion claims with relevant evidence.\n\nV5 succeeds v3.1.1 directly. V4 is skipped; its branch remains historical evidence. Read the [release notes](CHANGELOG.md), [review and implementation plan](docs/decisions/5.0.0-review-and-plan.md), and [grievance inventory](source/evals/grievances.json) for the requirements and decisions. V5 makes no general efficacy claim.\n\n## Install\n\nUse Node.js 24 or newer and a Git repository:\n\n```bash\nnpm install --global @aaarslan/aer@5.0.0\naer init --host claude --target <project> --dry-run\naer init --host claude --target <project>\n```\n\nSelect `codex` or `both` only when the project uses those hosts. The default assurance profile is `standard`; alternatives are `prototype` and `high-assurance`. No stack context is selected by default.\n\nGlobal installation only makes the executable available. Managed content and ownership records stay in the selected project. From a source checkout, use `node tools/aer.mjs` instead of `aer`. See [INSTALL.md](INSTALL.md) for updates, profiles, contexts, collisions, recovery and uninstall.\n\n## Engineering contract\n\nCompleteness determines what must work; simplicity determines how it is built. A large refactor or subsystem replacement is appropriate when evidence supports it. Small patches, large diffs, added layers and test counts are not quality signals.\n\nThe kernel uses stable directives, normative strength, an explicit execution order and a completion predicate. It keeps universal responsibilities in the initial contract: ownership, exact input/output behavior, lifecycle, authorization, secrets, data integrity, migration, recovery, accessibility and operations. User product constraints remain authoritative; proposed mechanisms still require engineering judgment.\n\n| Layer | Purpose |\n| --- | --- |\n| Kernel | Always-active engineering obligations and completion conditions |\n| Assurance profile | Evidence investment suited to lifespan, exposure, contract stability and failure cost |\n| Task skill | Concern-specific guidance when the task calls for it |\n| Reference | Design, security, data, UI or verification detail read only when relevant |\n| Optional diagnostic | A selected calculation or heuristic with a bounded, explicit result |\n\nEvery implementation needs enough evidence of its real behavior. It does not automatically need permanent test infrastructure. Durable coverage protects stable contracts; relevant production regressions and repository gates still apply. Reuse passing evidence unless a change or unresolved concern invalidates it.\n\nCompletion requires working behavior, coherent consumers and artifacts, relevant evidence, and honest limits. Reports distinguish direct exercises, regression coverage, existing checks and material omissions. V5 imposes no report parser, mandatory verifier run, command ledger, automatic broad-suite loop or hook-based completion gate.\n\n## Optional diagnostics\n\n`aer verify` selects one diagnostic; it neither runs a project test suite nor certifies completion:\n\n```bash\naer verify contrast '#ffffff' '#000000'\naer verify slop --root <project>\naer verify size --check <file>\n```\n\nAfter installation, the equivalent entrypoint is `node agent-rules/tools/aer-verify.mjs <check> <args>`. Contrast checks only supplied opaque color pairs; slop and size findings require contextual review. See [the diagnostic contracts](INSTALL.md#optional-diagnostics).\n\n## Delivery and trust\n\nClaude receives a managed `CLAUDE.md` block, native rules and skills, and an optional read-only reviewer. Codex receives a managed `AGENTS.md` block and native skills. Both receive on-demand references and diagnostic files. [Current host documentation](docs/capability-matrix.md) supports the layouts; installation is not proof of model adherence.\n\nThe dependency-free installer checks boundaries, symbolic links, collisions, ownership hashes and interrupted updates. It preserves consumer-owned text and configuration. `aer doctor` inspects integrity without repair. AER does not install permissions, hooks, consumer CI, global agent settings, services or accounts; prose is not a security boundary.\n\n## Evidence and contribution\n\n[Evaluation policy](docs/evaluation.md) distinguishes structural checks, historical outcomes and future paid research. Frozen history remains intact. The dormant execution harnesses are removed, and CI never dispatches a provider.\n\nRun the provider-free release gate at a meaningful integration boundary:\n\n```bash\nnpm run release:check\n```\n\nEdit rules in `source/`, update the shared `MANIFEST` in `tools/manifest.mjs` when paths change, and regenerate `dist/` with `node tools/build-distributions.mjs`. Runtime tools ship once at package root; the installer copies the required files into the selected project.\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md), [AGENTS.md](AGENTS.md), [CHANGELOG.md](CHANGELOG.md), and [tools/README.md](tools/README.md). Report vulnerabilities through the private [security advisory form](https://github.com/aaarslan/agent-engineering-rules/security/advisories/new). MIT licensed.\n","readmeFilename":"README.md"}