deepctl-plugin-example 0.1.10__tar.gz → 0.1.11__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,61 @@
1
+ Metadata-Version: 2.4
2
+ Name: deepctl-plugin-example
3
+ Version: 0.1.11
4
+ Summary: Example plugin for deepctl
5
+ Author-email: Deepgram <devrel@deepgram.com>
6
+ Maintainer-email: Deepgram <devrel@deepgram.com>
7
+ License-Expression: MIT
8
+ Keywords: deepgram,cli,plugin,example
9
+ Classifier: Development Status :: 3 - Alpha
10
+ Classifier: Intended Audience :: Developers
11
+ Classifier: Programming Language :: Python :: 3
12
+ Classifier: Programming Language :: Python :: 3.10
13
+ Classifier: Programming Language :: Python :: 3.11
14
+ Classifier: Programming Language :: Python :: 3.12
15
+ Requires-Python: >=3.10
16
+ Description-Content-Type: text/markdown
17
+ Requires-Dist: deepctl-core>=0.1.10
18
+ Requires-Dist: click>=8.0.0
19
+ Requires-Dist: rich>=13.0.0
20
+
21
+ # deepctl-plugin-example
22
+
23
+ > Part of [deepctl](https://github.com/deepgram/cli) — Official Deepgram CLI
24
+
25
+ Example plugin for deepctl
26
+
27
+ ## Installation
28
+
29
+ This package is included with deepctl and does not need to be installed separately.
30
+
31
+ ### Install deepctl
32
+
33
+ ```bash
34
+ # Install with pip
35
+ pip install deepctl
36
+
37
+ # Or install with uv
38
+ uv tool install deepctl
39
+
40
+ # Or install with pipx
41
+ pipx install deepctl
42
+
43
+ # Or run without installing
44
+ uvx deepctl --help
45
+ pipx run deepctl --help
46
+ ```
47
+
48
+ ## Commands
49
+
50
+ | Command | Entry Point |
51
+ |---------|-------------|
52
+ | `deepctl example` | `deepctl_plugin_example.command:ExampleCommand` |
53
+
54
+ ## Dependencies
55
+
56
+ - `click>=8.0.0`
57
+ - `rich>=13.0.0`
58
+
59
+ ## License
60
+
61
+ MIT — see [LICENSE](../../LICENSE)
@@ -0,0 +1,41 @@
1
+ # deepctl-plugin-example
2
+
3
+ > Part of [deepctl](https://github.com/deepgram/cli) — Official Deepgram CLI
4
+
5
+ Example plugin for deepctl
6
+
7
+ ## Installation
8
+
9
+ This package is included with deepctl and does not need to be installed separately.
10
+
11
+ ### Install deepctl
12
+
13
+ ```bash
14
+ # Install with pip
15
+ pip install deepctl
16
+
17
+ # Or install with uv
18
+ uv tool install deepctl
19
+
20
+ # Or install with pipx
21
+ pipx install deepctl
22
+
23
+ # Or run without installing
24
+ uvx deepctl --help
25
+ pipx run deepctl --help
26
+ ```
27
+
28
+ ## Commands
29
+
30
+ | Command | Entry Point |
31
+ |---------|-------------|
32
+ | `deepctl example` | `deepctl_plugin_example.command:ExampleCommand` |
33
+
34
+ ## Dependencies
35
+
36
+ - `click>=8.0.0`
37
+ - `rich>=13.0.0`
38
+
39
+ ## License
40
+
41
+ MIT — see [LICENSE](../../LICENSE)
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "deepctl-plugin-example"
7
- version = "0.1.10"
7
+ version = "0.1.11" # x-release-please-version
8
8
  description = "Example plugin for deepctl"
9
9
  readme = "README.md"
10
10
  license = "MIT"
@@ -20,7 +20,11 @@ classifiers = [
20
20
  ]
21
21
  keywords = ["deepgram", "cli", "plugin", "example"]
22
22
  requires-python = ">=3.10"
23
- dependencies = ["deepctl-core>=0.1.10", "click>=8.0.0", "rich>=13.0.0"]
23
+ dependencies = [
24
+ "deepctl-core>=0.1.10",
25
+ "click>=8.0.0",
26
+ "rich>=13.0.0",
27
+ ]
24
28
 
25
29
  [project.entry-points."deepctl.plugins"]
26
30
  example = "deepctl_plugin_example.command:ExampleCommand"
@@ -0,0 +1,61 @@
1
+ Metadata-Version: 2.4
2
+ Name: deepctl-plugin-example
3
+ Version: 0.1.11
4
+ Summary: Example plugin for deepctl
5
+ Author-email: Deepgram <devrel@deepgram.com>
6
+ Maintainer-email: Deepgram <devrel@deepgram.com>
7
+ License-Expression: MIT
8
+ Keywords: deepgram,cli,plugin,example
9
+ Classifier: Development Status :: 3 - Alpha
10
+ Classifier: Intended Audience :: Developers
11
+ Classifier: Programming Language :: Python :: 3
12
+ Classifier: Programming Language :: Python :: 3.10
13
+ Classifier: Programming Language :: Python :: 3.11
14
+ Classifier: Programming Language :: Python :: 3.12
15
+ Requires-Python: >=3.10
16
+ Description-Content-Type: text/markdown
17
+ Requires-Dist: deepctl-core>=0.1.10
18
+ Requires-Dist: click>=8.0.0
19
+ Requires-Dist: rich>=13.0.0
20
+
21
+ # deepctl-plugin-example
22
+
23
+ > Part of [deepctl](https://github.com/deepgram/cli) — Official Deepgram CLI
24
+
25
+ Example plugin for deepctl
26
+
27
+ ## Installation
28
+
29
+ This package is included with deepctl and does not need to be installed separately.
30
+
31
+ ### Install deepctl
32
+
33
+ ```bash
34
+ # Install with pip
35
+ pip install deepctl
36
+
37
+ # Or install with uv
38
+ uv tool install deepctl
39
+
40
+ # Or install with pipx
41
+ pipx install deepctl
42
+
43
+ # Or run without installing
44
+ uvx deepctl --help
45
+ pipx run deepctl --help
46
+ ```
47
+
48
+ ## Commands
49
+
50
+ | Command | Entry Point |
51
+ |---------|-------------|
52
+ | `deepctl example` | `deepctl_plugin_example.command:ExampleCommand` |
53
+
54
+ ## Dependencies
55
+
56
+ - `click>=8.0.0`
57
+ - `rich>=13.0.0`
58
+
59
+ ## License
60
+
61
+ MIT — see [LICENSE](../../LICENSE)
@@ -1,147 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: deepctl-plugin-example
3
- Version: 0.1.10
4
- Summary: Example plugin for deepctl
5
- Author-email: Deepgram <devrel@deepgram.com>
6
- Maintainer-email: Deepgram <devrel@deepgram.com>
7
- License-Expression: MIT
8
- Keywords: deepgram,cli,plugin,example
9
- Classifier: Development Status :: 3 - Alpha
10
- Classifier: Intended Audience :: Developers
11
- Classifier: Programming Language :: Python :: 3
12
- Classifier: Programming Language :: Python :: 3.10
13
- Classifier: Programming Language :: Python :: 3.11
14
- Classifier: Programming Language :: Python :: 3.12
15
- Requires-Python: >=3.10
16
- Description-Content-Type: text/markdown
17
- Requires-Dist: deepctl-core>=0.1.10
18
- Requires-Dist: click>=8.0.0
19
- Requires-Dist: rich>=13.0.0
20
-
21
- # deepctl Plugin Example
22
-
23
- An example plugin for deepctl demonstrating how to create and distribute custom commands as separate packages.
24
-
25
- ## Overview
26
-
27
- This plugin shows how to extend deepctl with custom commands that can be:
28
-
29
- - Developed independently
30
- - Distributed via PyPI
31
- - Installed alongside the CLI
32
- - Discovered automatically at runtime
33
-
34
- **Note:** This plugin is NOT a dependency of deepctl. It must be installed separately to demonstrate how the plugin system works for third-party developers. This example plugin is published to PyPI with each deepctl release to ensure the documentation is always testable.
35
-
36
- ## Installation
37
-
38
- ### Development Installation
39
-
40
- To install the plugin in development mode:
41
-
42
- ```bash
43
- # From the plugin directory
44
- pip install -e .
45
-
46
- # Or using uv
47
- uv pip install -e .
48
- ```
49
-
50
- ### Production Installation
51
-
52
- For users who have deepctl installed globally:
53
-
54
- ```bash
55
- # Recommended: Using pipx (if deepctl was installed with pipx)
56
- pipx install deepctl # If not already installed
57
- pipx inject deepctl deepctl-plugin-example
58
-
59
- # Alternative: Using pip (only works in development environments)
60
- pip install deepctl deepctl-plugin-example
61
- ```
62
-
63
- **Note:** If you installed deepctl with `uv tool install`, plugin installation requires manual workarounds. We recommend using pipx for the best plugin experience.
64
-
65
- ## Usage
66
-
67
- Once installed, the plugin command becomes available in the CLI:
68
-
69
- ```bash
70
- # Basic usage
71
- deepctl example
72
-
73
- # Custom greeting
74
- deepctl example --greeting "Howdy" --name "Partner"
75
-
76
- # Show plugin system information
77
- deepctl example --show-info
78
- ```
79
-
80
- ## How It Works
81
-
82
- 1. **Entry Point Registration**: The plugin registers itself via the `deepctl.plugins` entry point in `pyproject.toml`
83
- 2. **Command Discovery**: The CLI's PluginManager discovers the plugin at runtime using `importlib.metadata`
84
- 3. **Command Loading**: The plugin's command class is instantiated and added to the CLI
85
- 4. **Execution**: When the user runs the command, the plugin's `handle()` method is called
86
-
87
- ## Creating Your Own Plugin
88
-
89
- To create your own deepctl plugin:
90
-
91
- 1. **Copy this example package** as a starting point
92
- 2. **Rename the package** and update metadata in `pyproject.toml`
93
- 3. **Implement your command** by modifying the `command.py` file
94
- 4. **Define arguments** in the `get_arguments()` method
95
- 5. **Implement logic** in the `handle()` method
96
- 6. **Test locally** with `pip install -e .`
97
- 7. **Publish to PyPI** when ready
98
- 8. **Users install it** with `pipx inject deepctl your-plugin-name`
99
-
100
- ### Key Requirements
101
-
102
- - Must inherit from `deepctl_core.BaseCommand`
103
- - Must implement required properties: `name`, `help`
104
- - Must implement `handle()` method
105
- - Must be registered via entry point
106
-
107
- ### Example Command Structure
108
-
109
- ```python
110
- from deepctl_core import BaseCommand
111
-
112
- class MyCommand(BaseCommand):
113
- name = "mycommand"
114
- help = "Description of my command"
115
-
116
- def handle(self, config, auth_manager, client, **kwargs):
117
- # Your command logic here
118
- pass
119
- ```
120
-
121
- ## Development
122
-
123
- ### Running Tests
124
-
125
- ```bash
126
- uv run pytest
127
- ```
128
-
129
- ### Building the Package
130
-
131
- ```bash
132
- python -m build
133
- ```
134
-
135
- ## Plugin Capabilities
136
-
137
- Plugins have access to:
138
-
139
- - Configuration management via `Config`
140
- - Authentication via `AuthManager`
141
- - Deepgram API client via `DeepgramClient`
142
- - Rich terminal output via `rich`
143
- - Command-line argument parsing via `click`
144
-
145
- ## License
146
-
147
- MIT
@@ -1,127 +0,0 @@
1
- # deepctl Plugin Example
2
-
3
- An example plugin for deepctl demonstrating how to create and distribute custom commands as separate packages.
4
-
5
- ## Overview
6
-
7
- This plugin shows how to extend deepctl with custom commands that can be:
8
-
9
- - Developed independently
10
- - Distributed via PyPI
11
- - Installed alongside the CLI
12
- - Discovered automatically at runtime
13
-
14
- **Note:** This plugin is NOT a dependency of deepctl. It must be installed separately to demonstrate how the plugin system works for third-party developers. This example plugin is published to PyPI with each deepctl release to ensure the documentation is always testable.
15
-
16
- ## Installation
17
-
18
- ### Development Installation
19
-
20
- To install the plugin in development mode:
21
-
22
- ```bash
23
- # From the plugin directory
24
- pip install -e .
25
-
26
- # Or using uv
27
- uv pip install -e .
28
- ```
29
-
30
- ### Production Installation
31
-
32
- For users who have deepctl installed globally:
33
-
34
- ```bash
35
- # Recommended: Using pipx (if deepctl was installed with pipx)
36
- pipx install deepctl # If not already installed
37
- pipx inject deepctl deepctl-plugin-example
38
-
39
- # Alternative: Using pip (only works in development environments)
40
- pip install deepctl deepctl-plugin-example
41
- ```
42
-
43
- **Note:** If you installed deepctl with `uv tool install`, plugin installation requires manual workarounds. We recommend using pipx for the best plugin experience.
44
-
45
- ## Usage
46
-
47
- Once installed, the plugin command becomes available in the CLI:
48
-
49
- ```bash
50
- # Basic usage
51
- deepctl example
52
-
53
- # Custom greeting
54
- deepctl example --greeting "Howdy" --name "Partner"
55
-
56
- # Show plugin system information
57
- deepctl example --show-info
58
- ```
59
-
60
- ## How It Works
61
-
62
- 1. **Entry Point Registration**: The plugin registers itself via the `deepctl.plugins` entry point in `pyproject.toml`
63
- 2. **Command Discovery**: The CLI's PluginManager discovers the plugin at runtime using `importlib.metadata`
64
- 3. **Command Loading**: The plugin's command class is instantiated and added to the CLI
65
- 4. **Execution**: When the user runs the command, the plugin's `handle()` method is called
66
-
67
- ## Creating Your Own Plugin
68
-
69
- To create your own deepctl plugin:
70
-
71
- 1. **Copy this example package** as a starting point
72
- 2. **Rename the package** and update metadata in `pyproject.toml`
73
- 3. **Implement your command** by modifying the `command.py` file
74
- 4. **Define arguments** in the `get_arguments()` method
75
- 5. **Implement logic** in the `handle()` method
76
- 6. **Test locally** with `pip install -e .`
77
- 7. **Publish to PyPI** when ready
78
- 8. **Users install it** with `pipx inject deepctl your-plugin-name`
79
-
80
- ### Key Requirements
81
-
82
- - Must inherit from `deepctl_core.BaseCommand`
83
- - Must implement required properties: `name`, `help`
84
- - Must implement `handle()` method
85
- - Must be registered via entry point
86
-
87
- ### Example Command Structure
88
-
89
- ```python
90
- from deepctl_core import BaseCommand
91
-
92
- class MyCommand(BaseCommand):
93
- name = "mycommand"
94
- help = "Description of my command"
95
-
96
- def handle(self, config, auth_manager, client, **kwargs):
97
- # Your command logic here
98
- pass
99
- ```
100
-
101
- ## Development
102
-
103
- ### Running Tests
104
-
105
- ```bash
106
- uv run pytest
107
- ```
108
-
109
- ### Building the Package
110
-
111
- ```bash
112
- python -m build
113
- ```
114
-
115
- ## Plugin Capabilities
116
-
117
- Plugins have access to:
118
-
119
- - Configuration management via `Config`
120
- - Authentication via `AuthManager`
121
- - Deepgram API client via `DeepgramClient`
122
- - Rich terminal output via `rich`
123
- - Command-line argument parsing via `click`
124
-
125
- ## License
126
-
127
- MIT
@@ -1,147 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: deepctl-plugin-example
3
- Version: 0.1.10
4
- Summary: Example plugin for deepctl
5
- Author-email: Deepgram <devrel@deepgram.com>
6
- Maintainer-email: Deepgram <devrel@deepgram.com>
7
- License-Expression: MIT
8
- Keywords: deepgram,cli,plugin,example
9
- Classifier: Development Status :: 3 - Alpha
10
- Classifier: Intended Audience :: Developers
11
- Classifier: Programming Language :: Python :: 3
12
- Classifier: Programming Language :: Python :: 3.10
13
- Classifier: Programming Language :: Python :: 3.11
14
- Classifier: Programming Language :: Python :: 3.12
15
- Requires-Python: >=3.10
16
- Description-Content-Type: text/markdown
17
- Requires-Dist: deepctl-core>=0.1.10
18
- Requires-Dist: click>=8.0.0
19
- Requires-Dist: rich>=13.0.0
20
-
21
- # deepctl Plugin Example
22
-
23
- An example plugin for deepctl demonstrating how to create and distribute custom commands as separate packages.
24
-
25
- ## Overview
26
-
27
- This plugin shows how to extend deepctl with custom commands that can be:
28
-
29
- - Developed independently
30
- - Distributed via PyPI
31
- - Installed alongside the CLI
32
- - Discovered automatically at runtime
33
-
34
- **Note:** This plugin is NOT a dependency of deepctl. It must be installed separately to demonstrate how the plugin system works for third-party developers. This example plugin is published to PyPI with each deepctl release to ensure the documentation is always testable.
35
-
36
- ## Installation
37
-
38
- ### Development Installation
39
-
40
- To install the plugin in development mode:
41
-
42
- ```bash
43
- # From the plugin directory
44
- pip install -e .
45
-
46
- # Or using uv
47
- uv pip install -e .
48
- ```
49
-
50
- ### Production Installation
51
-
52
- For users who have deepctl installed globally:
53
-
54
- ```bash
55
- # Recommended: Using pipx (if deepctl was installed with pipx)
56
- pipx install deepctl # If not already installed
57
- pipx inject deepctl deepctl-plugin-example
58
-
59
- # Alternative: Using pip (only works in development environments)
60
- pip install deepctl deepctl-plugin-example
61
- ```
62
-
63
- **Note:** If you installed deepctl with `uv tool install`, plugin installation requires manual workarounds. We recommend using pipx for the best plugin experience.
64
-
65
- ## Usage
66
-
67
- Once installed, the plugin command becomes available in the CLI:
68
-
69
- ```bash
70
- # Basic usage
71
- deepctl example
72
-
73
- # Custom greeting
74
- deepctl example --greeting "Howdy" --name "Partner"
75
-
76
- # Show plugin system information
77
- deepctl example --show-info
78
- ```
79
-
80
- ## How It Works
81
-
82
- 1. **Entry Point Registration**: The plugin registers itself via the `deepctl.plugins` entry point in `pyproject.toml`
83
- 2. **Command Discovery**: The CLI's PluginManager discovers the plugin at runtime using `importlib.metadata`
84
- 3. **Command Loading**: The plugin's command class is instantiated and added to the CLI
85
- 4. **Execution**: When the user runs the command, the plugin's `handle()` method is called
86
-
87
- ## Creating Your Own Plugin
88
-
89
- To create your own deepctl plugin:
90
-
91
- 1. **Copy this example package** as a starting point
92
- 2. **Rename the package** and update metadata in `pyproject.toml`
93
- 3. **Implement your command** by modifying the `command.py` file
94
- 4. **Define arguments** in the `get_arguments()` method
95
- 5. **Implement logic** in the `handle()` method
96
- 6. **Test locally** with `pip install -e .`
97
- 7. **Publish to PyPI** when ready
98
- 8. **Users install it** with `pipx inject deepctl your-plugin-name`
99
-
100
- ### Key Requirements
101
-
102
- - Must inherit from `deepctl_core.BaseCommand`
103
- - Must implement required properties: `name`, `help`
104
- - Must implement `handle()` method
105
- - Must be registered via entry point
106
-
107
- ### Example Command Structure
108
-
109
- ```python
110
- from deepctl_core import BaseCommand
111
-
112
- class MyCommand(BaseCommand):
113
- name = "mycommand"
114
- help = "Description of my command"
115
-
116
- def handle(self, config, auth_manager, client, **kwargs):
117
- # Your command logic here
118
- pass
119
- ```
120
-
121
- ## Development
122
-
123
- ### Running Tests
124
-
125
- ```bash
126
- uv run pytest
127
- ```
128
-
129
- ### Building the Package
130
-
131
- ```bash
132
- python -m build
133
- ```
134
-
135
- ## Plugin Capabilities
136
-
137
- Plugins have access to:
138
-
139
- - Configuration management via `Config`
140
- - Authentication via `AuthManager`
141
- - Deepgram API client via `DeepgramClient`
142
- - Rich terminal output via `rich`
143
- - Command-line argument parsing via `click`
144
-
145
- ## License
146
-
147
- MIT