Initial import
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
# AGENTS.md
|
||||
|
||||
## Overview
|
||||
|
||||
`have` is a tiny compiled Zig CLI that lists executable command names available
|
||||
through `PATH`. It exists as an agent-safe availability primitive for comparing a
|
||||
run-tool allowlist against what the local Unix system can actually execute.
|
||||
|
||||
## How to build
|
||||
|
||||
```sh
|
||||
zig build
|
||||
```
|
||||
|
||||
## How to test
|
||||
|
||||
```sh
|
||||
zig build test
|
||||
```
|
||||
|
||||
## Constraints
|
||||
|
||||
- One source file: `have.zig`.
|
||||
- POSIX-shaped: inspect `PATH` directories and executable bits only.
|
||||
- No package-manager knowledge, shell builtins, aliases, functions, login shells,
|
||||
network access, mutation, config files, JSON default, color, pager, or daemon
|
||||
behavior.
|
||||
- stdout is one command name per line; diagnostics go to stderr.
|
||||
- This is an inspection primitive. Keep OS/package inventory in separate tools if
|
||||
it is ever needed.
|
||||
|
||||
## Requirement Governance
|
||||
|
||||
`REQUIREMENTS.md` is the requirement authority for this repository and is checked
|
||||
with `redgate`. Before implementation work, read the applicable requirement row;
|
||||
if none covers durable behavior, update `REQUIREMENTS.md` first or stop and ask.
|
||||
For behavior intended to stick, add or update a failing smoke/contract proof
|
||||
before implementation unless that would be fake or disproportionate. Before
|
||||
handoff, compare the user request and diff against `REQUIREMENTS.md`; report
|
||||
`REQUIREMENT IMPACT: updated <rows>` or exactly
|
||||
`REQUIREMENT IMPACT: none - <specific reason>`.
|
||||
Reference in New Issue
Block a user