Port from superagent-ai/grok-cli: verify subsystem (run-recipe detection + environment manifest + hermes verify smoke runner)
Scoped port of grok-cli's verify subsystem:
- agent/verify/recipes.py: static run-recipe detection mirroring grok's
detection order (Node frameworks w/ lockfile-based package-manager
choice, Django/FastAPI/Flask/generic Python, Go, Rust, Maven/Gradle,
Makefile targets, docker-compose)
- agent/verify/environment.py: versioned, user-editable manifest at
<project>/.hermes/environment.json; tolerant loader; manifest wins
over fresh detection
- agent/verify/runner.py: bootstrap -> build -> test -> background start
-> HTTP readiness poll -> process-group teardown, structured result
- hermes verify CLI command (--detect-only, --save, --skip-start,
--phase, --port, --json)
Sources:
https://github.com/superagent-ai/grok-cli/blob/main/src/verify/recipes.ts
https://github.com/superagent-ai/grok-cli/blob/main/src/verify/environment.ts