Skip to content

Commit 22b46c8

Browse files
authored
feat: add doggo completion spec (#2398)
1 parent 7ad6594 commit 22b46c8

File tree

1 file changed

+136
-0
lines changed

1 file changed

+136
-0
lines changed

src/doggo.ts

Lines changed: 136 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,136 @@
1+
const completionSpec: Fig.Spec = {
2+
name: "doggo",
3+
description: "DNS Client for Humans",
4+
options: [
5+
{
6+
name: "--version",
7+
description: "Output version",
8+
},
9+
{
10+
name: ["--help", "-h"],
11+
description: "Output help",
12+
},
13+
{
14+
name: ["-q", "--query"],
15+
insertValue: "-q {cursor}",
16+
description: "Hostname to query the DNS records for (e.g., example.com)",
17+
},
18+
{
19+
name: ["-t", "--type"],
20+
insertValue: "-t {cursor}",
21+
description: "Type of the DNS Record (A, MX, NS, etc.)",
22+
},
23+
{
24+
name: ["-n", "--nameserver"],
25+
insertValue: "-n {cursor}",
26+
description:
27+
"Address of a specific nameserver to send queries to (e.g., 9.9.9.9, 8.8.8.8)",
28+
},
29+
{
30+
name: ["-c", "--class"],
31+
insertValue: "-c {cursor}",
32+
description: "Network class of the DNS record (IN, CH, HS, etc.)",
33+
},
34+
{
35+
name: ["-x", "--reverse"],
36+
insertValue: "-x {cursor}",
37+
description: "Performs a reverse DNS lookup for an IPv4 or IPv6 address",
38+
},
39+
{
40+
name: "--strategy",
41+
description: "Specify strategy to query nameservers (all, random, first)",
42+
requiresSeparator: true,
43+
},
44+
{
45+
name: "--ndots",
46+
description: "Specify ndots parameter",
47+
requiresSeparator: true,
48+
},
49+
{
50+
name: "--search",
51+
description: "Use the search list defined in resolv.conf (default: true)",
52+
},
53+
{
54+
name: "--timeout",
55+
description:
56+
"Specify timeout (in seconds) for the resolver to return a response",
57+
},
58+
{
59+
name: ["-4", "--ipv4"],
60+
description: "Use IPv4 only",
61+
},
62+
{
63+
name: ["-6", "--ipv6"],
64+
description: "Use IPv4 only",
65+
},
66+
{
67+
name: "--tls-hostname",
68+
description: "Provide a hostname for TLS certificate verification",
69+
requiresSeparator: true,
70+
},
71+
{
72+
name: "--skip-hostname-verification",
73+
description: "Skip TLS Hostname Verification for DoT lookups",
74+
},
75+
{
76+
name: "--aa",
77+
description: "Set Authoritative Answer flag",
78+
},
79+
{
80+
name: "--ad",
81+
description: "Set Authenticated Data flag",
82+
},
83+
{
84+
name: "--cd",
85+
description: "Set Checking Disabled flag",
86+
},
87+
{
88+
name: "--rd",
89+
description: "Set Recursion Desired flag (default: true)",
90+
},
91+
{
92+
name: "--z",
93+
description: "Set Z flag (reserved for future use)",
94+
},
95+
{
96+
name: "--do",
97+
description: "Set DNSSEC OK flag",
98+
},
99+
{
100+
name: ["-J", "--json"],
101+
description: "Format the output as JSON",
102+
},
103+
{
104+
name: "--short",
105+
description: "Short output format (shows only the response section)",
106+
},
107+
{
108+
name: "--color",
109+
description: "Enable/disable colored output (default: true)",
110+
},
111+
{
112+
name: "--debug",
113+
description: "Enable debug logging",
114+
},
115+
{
116+
name: "--time",
117+
description: "Show query response time",
118+
},
119+
],
120+
args: [
121+
{
122+
name: "domain",
123+
description: "Hostname to query the DNS records for (e.g., example.com)",
124+
},
125+
{
126+
name: "type",
127+
description: "Type of the DNS Record (A, MX, NS, etc.)",
128+
},
129+
{
130+
name: "nameserver",
131+
description:
132+
"Address of a specific nameserver to send queries to (e.g., 9.9.9.9, 8.8.8.8)",
133+
},
134+
],
135+
};
136+
export default completionSpec;

0 commit comments

Comments
 (0)