Navigate and query self-hosted Harbor container registry instances via REST API. Use when the user asks about Harbor projects, container images, repositories, artifacts, tags, vulnerability scans, replication policies, robot accounts, storage quotas, or audit logs. Triggers on mentions of Harbor, container registry, image repositories, docker images, artifact scanning, CVEs in images, replication, or requests to check what images exist or have been recently pushed. Supports multiple Harbor instances.
Query self-hosted Harbor v2.x container registry instances via REST API v2.0 using the bundled go run ~/.claude/scripts/harbor-navigator/main.go CLI wrapper. Reads credentials from ~/.netrc. Uses unauthenticated access for read operations (works with OIDC instances where all projects are public). See references/api_endpoints.md for full endpoint reference.
Scan ~/.netrc for Harbor hostnames:
go run ~/.claude/scripts/harbor-navigator/main.go discover
go run ~/.claude/scripts/harbor-navigator/main.go discover myorg # custom substring
Test a connection (use hostname or substring):
go run ~/.claude/scripts/harbor-navigator/main.go acme test
All commands: go run ~/.claude/scripts/harbor-navigator/main.go <host> <command> [args...]
<host> is a hostname or substring matching a ~/.netrc entry. The script auto-filters for harbor hosts.
go run ~/.claude/scripts/harbor-navigator/main.go acme projects 25go run ~/.claude/scripts/harbor-navigator/main.go acme project-info my-projectgo run ~/.claude/scripts/harbor-navigator/main.go acme repos my-project 25go run ~/.claude/scripts/harbor-navigator/main.go acme artifacts my-project/my-repo 25
go run ~/.claude/scripts/harbor-navigator/main.go acme tags my-project/my-repogo run ~/.claude/scripts/harbor-navigator/main.go acme search "nginx"go run ~/.claude/scripts/harbor-navigator/main.go acme recent-pushes my-project 20
go run ~/.claude/scripts/harbor-navigator/main.go acme recent-pushes # all projects
go run ~/.claude/scripts/harbor-navigator/main.go acme vulns my-project/my-repo latest
go run ~/.claude/scripts/harbor-navigator/main.go acme scan my-project/my-repo latestgo run ~/.claude/scripts/harbor-navigator/main.go acme replication-policiesgo run ~/.claude/scripts/harbor-navigator/main.go acme replication-runs 5 10go run ~/.claude/scripts/harbor-navigator/main.go acme registriesgo run ~/.claude/scripts/harbor-navigator/main.go acme system-infogo run ~/.claude/scripts/harbor-navigator/main.go acme healthgo run ~/.claude/scripts/harbor-navigator/main.go acme labels g (g=global, p=project)go run ~/.claude/scripts/harbor-navigator/main.go acme gcgo run ~/.claude/scripts/harbor-navigator/main.go acme quotasgo run ~/.claude/scripts/harbor-navigator/main.go acme robot-accountsgo run ~/.claude/scripts/harbor-navigator/main.go acme audit-log 25Note: Some admin endpoints (gc, quotas, robot-accounts, audit-log) require authenticated access and may fail with unauthenticated mode.
go run ~/.claude/scripts/harbor-navigator/main.go acme whoamigo run ~/.claude/scripts/harbor-navigator/main.go acme testprojects to see all projects and repo countsrepos <project> to browse repositoriesartifacts <project/repo> to see images with scan statustags <project/repo> to see available tagsvulns <project/repo> <tag> to view CVEs on specific imagessearch <term> to find specific images across all projectsrecent-pushes to see what was updated recentlyCategory:other