git clone https://github.com/dir-ai/voyager-net && cp voyager-net/*.md ~/.claude/agents/Subagents overview
# voyager-net
**Voyager's network organ — a safe, read-only, *authorized* audit of one host or
domain you own, so an AI agent can find the falle in your infra and describe the
fix.**
Voyager penetrates the **web** (`@dir-ai/voyager`), the **repo**
(`@dir-ai/voyager-repo`), and — here — **networks**. This is the *sense*: it finds
problems. Applying fixes ("the hands") is a separate, consent-gated organ, by
design — an AI must never mutate live infrastructure on its own.
```bash
voyager-net scan yourhost.example.com --authorized
voyager-net scan 10.0.5.20 --authorized --ports 22,80,443,5432
```
## What it checks (read-only)
- **Resolve-once + IP pinning (every probe, HTTP included)** — a domain is
resolved a single time and **the DNS, port, TLS *and* HTTP probes are all pinned
to that one IP** via a custom socket lookup, so nothing re-resolves the name
mid-scan (closes the HTTP DNS-rebinding path). The resolved IP is classified
canonically (via `ipaddr.js`) and any non-public address — loopback, private,
link-local, CGNAT, NAT64, IPv4-mapped IPv6, metadata — is refused.
- **DNS** — A/AAAA/MX/TXT/CAA + email/CA hygiene, and it **grades the content**:
SPF `+all` (anyone may send) and DMARC `p=none` (no enforcement) are findings,
not just presence checks. All target-controlled records are injection-framed.
- **Ports** — a bounded common-service probe by plain TCP `connect()` with **real
states** (open / closed / filtered / unreachable — an OS timeout reads as
*filtered*, not closed), no SYN tricks, no payloads, no range/CIDR sweeps.
- **Service fingerprinting** — reads the banner a service *volunteers* on connect
(SSH, SMTP, FTP, POP3, IMAP) to identify product + version (framed).
- **Unauthenticated-service detection** — for auth-expecting services (Redis,
Memcached, Elasticsearch, CouchDB, Docker API, ZooKeeper) it sends ONE benign,
read-only protocol hello (e.g. Redis `PING`) and reports the service as exposed
only if it answers *without* asking for credentials. Honest scope: this and the
TLS/HTTP inspectors DO send bytes (a ClientHello, a `GET /`, a protocol hello) —
the audit is active-but-safe (no writes, no mutation, no exploit), not purely
passive, and it runs only against the host you authorized.
- **TLS** — the full set of **accepted** protocol versions (not just the
negotiated one), chain trust against the system store (**any** validation
failure is reported, not only self-signed), RSA key size (EC/EdDSA exempted),
certificate expiry/issuer.
- **HTTP hygiene (graded)** — status, Server banner, **HSTS/CSP quality** (weak
`max-age`, `unsafe-inline`/wildcard — not just presence), clickjacking
protection, **per-cookie** Secure/HttpOnly (each cookie evaluated on its own),
**CORS** wildcard *and* the dangerous credentials-with-origin case, version-leak,
and HTTP→HTTPS redirect. All pinned to the vetted IP.
- **Honest partial** — an open TLS/HTTP port that couldn't be inspected is
reported as *UNKNOWN*, never folded into a "no issues" verdict.
Findings that name a detected service+version suggest checking it against a CVE
feed — voyager-net detects the version; **CVE *matching* stays a lookup, and CVE
*probing* (Nuclei &c.) is out of scope** — that is active testing, a separate,
more-gated capability, not a read-only sense.
Each finding carries a **severity**, **confidence**, and a **described fix** — e.g.
"certificate expires in 6d → renew and automate ACME", "mysql reachable publicly →
restrict to a private network", "no DMARC → publish `v=DMARC1; p=quarantine`".
## Safety — non-negotiable
- **Authorized-only, fail-closed.** Without `--authorized` (CLI) / `authorized:true`
(MCP) it refuses. You assert you own / may test the target.
- **One host or domain only.** CIDR ranges, IP ranges, lists, wildcards, and URLs
are rejected — it can never become a mass scanner.
- **Cloud metadata endpoints are hard-blocked** (169.254.169.254 etc.).
- **Read-only.** It never applies a fix, exploits, floods, or mutates anything.
Bounded concurrency and timeouts; a plain TCP connect, not a scanner's SYN sweep.
- **Untrusted output framed.** Every target-controlled string — banners,
certificate subject/issuer/SANs, Server/CSP headers, CORS value, **and DNS
TXT/CAA/MX records** — is injection-stripped before your model sees it.
- **Exit codes:** `0` clean · `1` high/critical finding(s) · `2` tool error / not authorized.
> Scanning infrastructure you do not own or have explicit permission to test may
> be illegal in your jurisdiction. This tool is for auditing **your own** systems.
## MCP
```bash
voyager-net mcp
```
Tool: `scan_host` — same audit, fail-closed (`authorized` defaults off).
## Library
```ts
import { scan } from '@dir-ai/voyager-net'
const brief = await scan('yourhost.example.com', { authorized: true })
const urgent = brief.findings.filter((f) => f.severity === 'high' || f.severity === 'critical')
```
## Roadmap
Wrap Prowler/Steampipe (cloud config), Trivy (CVE), Hubble (flow) under the same
trust contract; attack-path correlation; drift (IaC declared ↔ actual). Then —
separately and consent-gated — the remediation "hands".
## License
MIT
What people ask about voyager-net
What is dir-ai/voyager-net?
+
dir-ai/voyager-net is subagents for the Claude AI ecosystem with 0 GitHub stars.
How do I install voyager-net?
+
You can install voyager-net by cloning the repository (https://github.com/dir-ai/voyager-net) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.
Is dir-ai/voyager-net safe to use?
+
dir-ai/voyager-net has not been audited yet by our security agent. Review the original repository on GitHub before using it in production.
Who maintains dir-ai/voyager-net?
+
dir-ai/voyager-net is maintained by dir-ai. The last recorded GitHub activity is from yesterday, with 0 open issues.
Are there alternatives to voyager-net?
+
Yes. On ClaudeWave you can browse similar subagents at /categories/agents, sorted by popularity or recent activity.
Deploy voyager-net to your cloud
Ship this repo to production in minutes. Each platform spins up its own environment with editable env vars.
Maintain this repo? Add a badge to your README
Drop the badge into your GitHub README to show it's tracked on ClaudeWave. Each badge links back to this page and reflects the live Trust Score.
[](https://claudewave.com/repo/dir-ai-voyager-net)<a href="https://claudewave.com/repo/dir-ai-voyager-net"><img src="https://claudewave.com/api/badge/dir-ai-voyager-net" alt="Featured on ClaudeWave: dir-ai/voyager-net" width="320" height="64" /></a>More Subagents
The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.
The agent that grows with you
Java 面试 & 后端通用面试指南,覆盖计算机基础、数据库、分布式、高并发、系统设计与 AI 应用开发
Build Agentic workflows, RAG pipelines, with rich AI model and tool support on one collaborative workspace. Deploy on cloud, VPC, or self-hosted, so teams move from prototype to production without rebuilding the stack.
The agent engineering platform.
Turn any codebase, with its docs, SQL schemas, configs, and PDFs, into a queryable knowledge graph. A /graphify skill for Claude Code, Cursor, Codex, and Gemini CLI: local deterministic AST parsing, every edge explained, no vector store.