Skip to content

Commit 7deb2ba

Browse files
committed
docs: add community files from SDK template
- CONTRIBUTING.md — dev workflow, conventions, new command guide - SECURITY.md — vulnerability reporting policy - CODEOWNERS — DX team review requirement - PULL_REQUEST_TEMPLATE.md — PR checklist - Issue templates: bug report, feature request, docs improvement Adapted from deepgram-python-sdk for CLI-specific context.
1 parent b61acfa commit 7deb2ba

7 files changed

Lines changed: 463 additions & 0 deletions

File tree

.github/CODEOWNERS

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# Global code owners - these users will be requested for review on all PRs
2+
# DX TEAM Members
3+
* @lukeocodes
Lines changed: 184 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,184 @@
1+
name: "Bug report"
2+
description: Report something that is broken or crashes
3+
title: "[Bug]: "
4+
labels: ["bug", "needs-triage"]
5+
assignees: []
6+
body:
7+
- type: markdown
8+
attributes:
9+
value: |
10+
Thanks for filing a bug. Please give a **minimal** repro when you can.
11+
- type: input
12+
id: summary
13+
attributes:
14+
label: Summary
15+
description: Short one-liner of the problem
16+
placeholder: "Crash when running dg transcribe on a large file"
17+
validations:
18+
required: true
19+
20+
- type: textarea
21+
id: what_happened
22+
attributes:
23+
label: What happened?
24+
description: Tell us what you saw and what you expected instead
25+
placeholder: |
26+
Actual:
27+
- ...
28+
29+
Expected:
30+
- ...
31+
validations:
32+
required: true
33+
34+
- type: textarea
35+
id: repro_steps
36+
attributes:
37+
label: Steps to reproduce
38+
description: Numbered steps; include inputs that matter (model, options, etc.)
39+
placeholder: |
40+
1. Install deepctl 0.2.2
41+
2. Run dg transcribe large-file.wav
42+
3. Observe error XYZ
43+
validations:
44+
required: true
45+
46+
- type: textarea
47+
id: command
48+
attributes:
49+
label: Command and output
50+
description: Full command you ran and the output (redact secrets).
51+
render: text
52+
placeholder: |
53+
$ dg transcribe audio.wav --model nova-3
54+
Error: ...
55+
validations:
56+
required: true
57+
58+
- type: textarea
59+
id: logs
60+
attributes:
61+
label: Logs / traceback
62+
description: Full stack trace or error message (use --verbose for more detail)
63+
render: text
64+
validations:
65+
required: false
66+
67+
- type: dropdown
68+
id: command_area
69+
attributes:
70+
label: Command area
71+
options:
72+
- transcribe
73+
- speak
74+
- listen
75+
- read
76+
- models / keys / members / billing
77+
- login / auth
78+
- mcp
79+
- debug
80+
- init
81+
- plugin
82+
- other
83+
validations:
84+
required: true
85+
86+
- type: dropdown
87+
id: repro_rate
88+
attributes:
89+
label: How often?
90+
options:
91+
- Always
92+
- Often
93+
- Sometimes
94+
- Rarely
95+
- Only once
96+
validations:
97+
required: true
98+
99+
- type: checkboxes
100+
id: regression
101+
attributes:
102+
label: Is this a regression?
103+
options:
104+
- label: "Yes, it worked in an earlier version"
105+
required: false
106+
107+
- type: input
108+
id: worked_version
109+
attributes:
110+
label: Last working version (if known)
111+
placeholder: "0.2.1"
112+
validations:
113+
required: false
114+
115+
- type: input
116+
id: cli_version
117+
attributes:
118+
label: CLI version
119+
description: Output of `dg --version`
120+
placeholder: "deepctl, version 0.2.2"
121+
validations:
122+
required: true
123+
124+
- type: input
125+
id: python_version
126+
attributes:
127+
label: Python version
128+
placeholder: "3.11.9"
129+
validations:
130+
required: true
131+
132+
- type: dropdown
133+
id: install_method
134+
attributes:
135+
label: Install method
136+
options:
137+
- curl installer (install.sh / install.ps1)
138+
- pip
139+
- pipx
140+
- uv tool
141+
- From source
142+
validations:
143+
required: false
144+
145+
- type: dropdown
146+
id: os
147+
attributes:
148+
label: OS
149+
multiple: true
150+
options:
151+
- macOS (Intel)
152+
- macOS (Apple Silicon)
153+
- Linux (x86_64)
154+
- Linux (arm64)
155+
- Windows
156+
- Other
157+
validations:
158+
required: true
159+
160+
- type: textarea
161+
id: extra_env
162+
attributes:
163+
label: Environment details
164+
description: Anything else? Docker, CI, proxies, corporate network, etc.
165+
render: text
166+
validations:
167+
required: false
168+
169+
- type: input
170+
id: request_id
171+
attributes:
172+
label: Request ID (optional)
173+
description: From API error messages or response headers (`dg-request-id`)
174+
placeholder: "req_def456"
175+
validations:
176+
required: false
177+
178+
- type: checkboxes
179+
id: conduct
180+
attributes:
181+
label: Code of Conduct
182+
options:
183+
- label: I agree to follow this project's Code of Conduct
184+
required: true
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
name: "Docs improvement"
2+
description: Fix or improve documentation, examples, or help text
3+
title: "[Docs]: "
4+
labels: ["documentation", "needs-triage"]
5+
body:
6+
- type: input
7+
id: page
8+
attributes:
9+
label: Affected page or section
10+
placeholder: "README.md, dg speak --help, packages/deepctl-cmd-speak/README.md"
11+
validations:
12+
required: true
13+
14+
- type: textarea
15+
id: issue
16+
attributes:
17+
label: What is unclear or wrong?
18+
placeholder: "Option --encoding is not documented; example is outdated"
19+
validations:
20+
required: true
21+
22+
- type: textarea
23+
id: suggestion
24+
attributes:
25+
label: Suggested change
26+
render: markdown
27+
placeholder: "Replace snippet with... Add note about..."
28+
validations:
29+
required: false
30+
31+
- type: textarea
32+
id: example
33+
attributes:
34+
label: Example code (if any)
35+
render: bash
36+
placeholder: "# short snippet"
37+
validations:
38+
required: false
Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
name: "Feature request"
2+
description: Suggest a new capability or command
3+
title: "[Feature]: "
4+
labels: ["enhancement", "needs-triage"]
5+
body:
6+
- type: input
7+
id: summary
8+
attributes:
9+
label: Summary
10+
placeholder: "Add dg agent command for interactive voice conversations"
11+
validations:
12+
required: true
13+
14+
- type: textarea
15+
id: problem
16+
attributes:
17+
label: Problem to solve
18+
description: What user problem does this address?
19+
placeholder: "Today I need to write a lot of code to set up a voice agent..."
20+
validations:
21+
required: true
22+
23+
- type: textarea
24+
id: proposal
25+
attributes:
26+
label: Proposed solution
27+
description: Command shape, flags, defaults. Keep it simple.
28+
render: bash
29+
placeholder: |
30+
# Example
31+
dg agent --prompt "You are a helpful assistant" --voice aura-2-asteria-en
32+
validations:
33+
required: true
34+
35+
- type: textarea
36+
id: alternatives
37+
attributes:
38+
label: Alternatives considered
39+
placeholder: "Use the API directly; use dg api; do nothing"
40+
validations:
41+
required: false
42+
43+
- type: dropdown
44+
id: scope
45+
attributes:
46+
label: Scope
47+
options:
48+
- New command
49+
- Enhancement to existing command
50+
- Core / framework change
51+
- Plugin system
52+
- Docs / examples only
53+
validations:
54+
required: true
55+
56+
- type: dropdown
57+
id: priority
58+
attributes:
59+
label: Priority
60+
options:
61+
- Nice to have
62+
- Important
63+
- High impact
64+
- Blocker
65+
validations:
66+
required: false
67+
68+
- type: textarea
69+
id: context
70+
attributes:
71+
label: Extra context / links
72+
placeholder: "Related issues, forum threads, API docs, etc."
73+
validations:
74+
required: false

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
## Summary
2+
3+
<!-- Brief description of what this PR does -->
4+
5+
## Changes
6+
7+
<!-- Bullet list of changes -->
8+
9+
-
10+
11+
## Test plan
12+
13+
<!-- How was this tested? -->
14+
15+
- [ ] `make check` passes (format, lint, typecheck)
16+
- [ ] `make dev` passes (format, lint, tests)
17+
- [ ] Manual testing of affected commands
18+
19+
## Related issues
20+
21+
<!-- Link related issues: Fixes #123, Related to #456 -->

.github/SECURITY.md

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# Security Policy
2+
3+
## Reporting a Vulnerability
4+
5+
If you discover a security vulnerability in the Deepgram CLI, please report it responsibly.
6+
7+
**Do NOT open a public GitHub issue for security vulnerabilities.**
8+
9+
Instead, please email [security@deepgram.com](mailto:security@deepgram.com) with:
10+
11+
- A description of the vulnerability
12+
- Steps to reproduce
13+
- Potential impact
14+
- Suggested fix (if any)
15+
16+
We will acknowledge receipt within 48 hours and provide an estimated timeline for a fix.
17+
18+
## Supported Versions
19+
20+
| Version | Supported |
21+
|---------|-----------|
22+
| Latest | Yes |
23+
| < Latest | Best effort |
24+
25+
## Credential Safety
26+
27+
The Deepgram CLI stores credentials in your system keyring (macOS Keychain, Linux Secret Service, Windows Credential Manager). API keys are never written to plaintext config files.
28+
29+
When using environment variables (`DEEPGRAM_API_KEY`), ensure they are not logged or exposed in CI output.

0 commit comments

Comments
 (0)