diff --git a/bin/agent-machine b/bin/agent-machine index d146a78..1b9f8c6 100755 --- a/bin/agent-machine +++ b/bin/agent-machine @@ -44,6 +44,16 @@ delegate_python_cli() { return 127 } +delegate_registry_resolver() { + ROOT="$(repo_root_guess || true)" + if [ -n "${ROOT:-}" ] && [ -d "$ROOT/src/agent_machine" ]; then + PYTHONPATH="$ROOT/src${PYTHONPATH:+:$PYTHONPATH}" python3 -m agent_machine.agent_registry "$@" + return $? + fi + printf '%s\n' "agent-machine: Agent Registry resolver unavailable; repository package sources not found." >&2 + return 127 +} + print_help() { cat <<'EOF' agent-machine: SourceOS Agent Machine local node substrate CLI @@ -59,6 +69,7 @@ Usage: agent-machine render quadlet [--compare ] agent-machine render k8s [--compare ] agent-machine policy resolve --policy-dir --deployment-receipt-id [--expected-status allowed] + agent-machine registry resolve --grant-dir --requested-agent-identity-ref --session-ref [--expected-status active] agent-machine activate evaluate [policy.json] --deployment-receipt-id [--policy-dir ] [--storage-receipt-dir ] [--pretty] agent-machine steer stub-response [--status not_configured|noop] [--pretty] agent-machine steer serve-stub [--host 127.0.0.1] [--port 8080] [--status not_configured|noop] @@ -282,6 +293,16 @@ case "$COMMAND" in shift || true delegate_python_cli policy "$@" ;; + registry) + shift || true + if [ "${1:-}" = "resolve" ]; then + shift || true + delegate_registry_resolver "$@" + else + printf '%s\n' "agent-machine: unsupported registry subcommand: ${1:-}" >&2 + exit 2 + fi + ;; activate) shift || true delegate_python_cli activate "$@"