deepctl-cmd-plugin 0.1.10__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,161 @@
1
+ # Byte-compiled / optimized / DLL files
2
+ __pycache__/
3
+ *.py[cod]
4
+ *$py.class
5
+
6
+ # C extensions
7
+ *.so
8
+
9
+ # Distribution / packaging
10
+ .Python
11
+ build/
12
+ develop-eggs/
13
+ dist/
14
+ downloads/
15
+ eggs/
16
+ .eggs/
17
+ lib/
18
+ lib64/
19
+ parts/
20
+ sdist/
21
+ var/
22
+ wheels/
23
+ pip-wheel-metadata/
24
+ share/python-wheels/
25
+ *.egg-info/
26
+ .installed.cfg
27
+ *.egg
28
+ MANIFEST
29
+
30
+ # PyInstaller
31
+ # Usually these files are written by a python script from a template
32
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
33
+ *.manifest
34
+ *.spec
35
+
36
+ # Installer logs
37
+ pip-log.txt
38
+ pip-delete-this-directory.txt
39
+
40
+ # Unit test / coverage reports
41
+ htmlcov/
42
+ .tox/
43
+ .nox/
44
+ .coverage
45
+ .coverage.*
46
+ .cache
47
+ nosetests.xml
48
+ coverage.xml
49
+ *.cover
50
+ *.py,cover
51
+ .hypothesis/
52
+ .pytest_cache/
53
+
54
+ # Translations
55
+ *.mo
56
+ *.pot
57
+
58
+ # Django stuff:
59
+ *.log
60
+ local_settings.py
61
+ db.sqlite3
62
+ db.sqlite3-journal
63
+
64
+ # Flask stuff:
65
+ instance/
66
+ .webassets-cache
67
+
68
+ # Scrapy stuff:
69
+ .scrapy
70
+
71
+ # Sphinx documentation
72
+ docs/_build/
73
+
74
+ # PyBuilder
75
+ target/
76
+
77
+ # Jupyter Notebook
78
+ .ipynb_checkpoints
79
+
80
+ # IPython
81
+ profile_default/
82
+ ipython_config.py
83
+
84
+ # pyenv
85
+ .python-version
86
+
87
+ # pipenv
88
+ # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
89
+ # However, in case of collaboration, if having platform-specific dependencies or dependencies
90
+ # having no cross-platform support, pipenv may install dependencies that don't work, or not
91
+ # install all needed dependencies.
92
+ #Pipfile.lock
93
+
94
+ # PEP 582; used by e.g. github.com/David-OConnor/pyflow
95
+ __pypackages__/
96
+
97
+ # Celery stuff
98
+ celerybeat-schedule
99
+ celerybeat.pid
100
+
101
+ # SageMatch home
102
+ .sage.d/
103
+
104
+ # Environments
105
+ .env
106
+ .venv
107
+ env/
108
+ venv/
109
+ ENV/
110
+ env.bak/
111
+ venv.bak/
112
+
113
+ # Spyder project settings
114
+ .spyderproject
115
+ .spyproject
116
+
117
+ # Rope project settings
118
+ .ropeproject
119
+
120
+ # mkdocs documentation
121
+ /site
122
+
123
+ # mypy
124
+ .mypy_cache/
125
+ .dmypy.json
126
+ dmypy.json
127
+
128
+ # Pyre type checker
129
+ .pyre/
130
+
131
+ # uv
132
+ .uv_cache/
133
+ uv.lock
134
+
135
+ # IDEs
136
+ .vscode/
137
+ .idea/
138
+ *.swp
139
+ *.swo
140
+ *~
141
+
142
+ # OS
143
+ .DS_Store
144
+ .DS_Store?
145
+ ._*
146
+ .Spotlight-V100
147
+ .Trashes
148
+ ehthumbs.db
149
+ Thumbs.db
150
+
151
+ # Project specific
152
+ *.log
153
+ .env.local
154
+ .env.development
155
+ .env.test
156
+ .env.production
157
+
158
+ # tmps
159
+ tmp_chatface/
160
+ tmp_community-turbo/
161
+ tmp_deepgram-cli/
@@ -0,0 +1,85 @@
1
+ Metadata-Version: 2.4
2
+ Name: deepctl-cmd-plugin
3
+ Version: 0.1.10
4
+ Summary: Plugin management command for deepctl
5
+ Author-email: Deepgram DevRel <devrel@deepgram.com>
6
+ Requires-Python: >=3.10
7
+ Requires-Dist: deepctl-core>=0.1.10
8
+ Requires-Dist: packaging>=21.0
9
+ Requires-Dist: toml>=0.10.2
10
+ Description-Content-Type: text/markdown
11
+
12
+ # deepctl-cmd-plugin
13
+
14
+ Plugin management command for deepctl CLI.
15
+
16
+ ## Description
17
+
18
+ This command provides plugin management functionality for deepctl, allowing users to:
19
+
20
+ - Search for available plugins in the registry
21
+ - Install plugins from PyPI, GitHub, or local paths
22
+ - List installed plugins
23
+ - Update plugins to newer versions
24
+ - Remove plugins
25
+
26
+ This solves the environment isolation issue that occurs when deepctl is installed via pipx, uv, brew, or other package managers that create isolated environments.
27
+
28
+ ## Commands
29
+
30
+ - `deepctl plugin search [query]` - Search for available plugins
31
+ - `deepctl plugin install <package>` - Install a plugin
32
+ - `deepctl plugin list` - List installed plugins
33
+ - `deepctl plugin update <package>` - Update a plugin
34
+ - `deepctl plugin remove <package>` - Remove a plugin
35
+
36
+ ## Examples
37
+
38
+ ### Search for plugins
39
+
40
+ ```bash
41
+ # Show all available plugins
42
+ deepctl plugin search
43
+
44
+ # Search for plugins by keyword
45
+ deepctl plugin search audio
46
+
47
+ # Show only installed plugins
48
+ deepctl plugin search --installed
49
+
50
+ # Show only available (not installed) plugins
51
+ deepctl plugin search --available
52
+ ```
53
+
54
+ ### Install plugins
55
+
56
+ ```bash
57
+ # Install from PyPI
58
+ deepctl plugin install deepctl-plugin-example
59
+
60
+ # Install from GitHub
61
+ deepctl plugin install git+https://github.com/deepgram/deepctl-plugin-custom.git
62
+
63
+ # Install specific version
64
+ deepctl plugin install deepctl-plugin-example==1.0.0
65
+
66
+ # Install from local directory
67
+ deepctl plugin install -e /path/to/plugin
68
+ ```
69
+
70
+ ## How it works
71
+
72
+ The plugin command automatically detects how deepctl was installed:
73
+
74
+ - **pip/pipx/uv**: Plugins install directly into the same environment
75
+ - **System installations (brew, apt, etc.)**: Plugins install into an isolated environment at `~/.deepctl/plugins/venv`
76
+
77
+ This approach ensures all installation methods support plugins while maintaining system package manager integrity.
78
+
79
+ ## Plugin Registry
80
+
81
+ The `plugin search` command shows plugins from a curated registry. Currently, the registry is hardcoded but will eventually fetch from a `.well-known` URL or plugin registry service.
82
+
83
+ ## Development
84
+
85
+ This is a built-in command that is part of the deepctl core distribution.
@@ -0,0 +1,74 @@
1
+ # deepctl-cmd-plugin
2
+
3
+ Plugin management command for deepctl CLI.
4
+
5
+ ## Description
6
+
7
+ This command provides plugin management functionality for deepctl, allowing users to:
8
+
9
+ - Search for available plugins in the registry
10
+ - Install plugins from PyPI, GitHub, or local paths
11
+ - List installed plugins
12
+ - Update plugins to newer versions
13
+ - Remove plugins
14
+
15
+ This solves the environment isolation issue that occurs when deepctl is installed via pipx, uv, brew, or other package managers that create isolated environments.
16
+
17
+ ## Commands
18
+
19
+ - `deepctl plugin search [query]` - Search for available plugins
20
+ - `deepctl plugin install <package>` - Install a plugin
21
+ - `deepctl plugin list` - List installed plugins
22
+ - `deepctl plugin update <package>` - Update a plugin
23
+ - `deepctl plugin remove <package>` - Remove a plugin
24
+
25
+ ## Examples
26
+
27
+ ### Search for plugins
28
+
29
+ ```bash
30
+ # Show all available plugins
31
+ deepctl plugin search
32
+
33
+ # Search for plugins by keyword
34
+ deepctl plugin search audio
35
+
36
+ # Show only installed plugins
37
+ deepctl plugin search --installed
38
+
39
+ # Show only available (not installed) plugins
40
+ deepctl plugin search --available
41
+ ```
42
+
43
+ ### Install plugins
44
+
45
+ ```bash
46
+ # Install from PyPI
47
+ deepctl plugin install deepctl-plugin-example
48
+
49
+ # Install from GitHub
50
+ deepctl plugin install git+https://github.com/deepgram/deepctl-plugin-custom.git
51
+
52
+ # Install specific version
53
+ deepctl plugin install deepctl-plugin-example==1.0.0
54
+
55
+ # Install from local directory
56
+ deepctl plugin install -e /path/to/plugin
57
+ ```
58
+
59
+ ## How it works
60
+
61
+ The plugin command automatically detects how deepctl was installed:
62
+
63
+ - **pip/pipx/uv**: Plugins install directly into the same environment
64
+ - **System installations (brew, apt, etc.)**: Plugins install into an isolated environment at `~/.deepctl/plugins/venv`
65
+
66
+ This approach ensures all installation methods support plugins while maintaining system package manager integrity.
67
+
68
+ ## Plugin Registry
69
+
70
+ The `plugin search` command shows plugins from a curated registry. Currently, the registry is hardcoded but will eventually fetch from a `.well-known` URL or plugin registry service.
71
+
72
+ ## Development
73
+
74
+ This is a built-in command that is part of the deepctl core distribution.
@@ -0,0 +1,18 @@
1
+ [project]
2
+ name = "deepctl-cmd-plugin"
3
+ description = "Plugin management command for deepctl"
4
+ readme = "README.md"
5
+ version = "0.1.10"
6
+ requires-python = ">=3.10"
7
+ authors = [{ name = "Deepgram DevRel", email = "devrel@deepgram.com" }]
8
+ dependencies = ["deepctl-core>=0.1.10", "packaging>=21.0", "toml>=0.10.2"]
9
+
10
+ [project.entry-points."deepctl.commands"]
11
+ plugin = "deepctl_cmd_plugin.command:PluginCommand"
12
+
13
+ [build-system]
14
+ requires = ["hatchling"]
15
+ build-backend = "hatchling.build"
16
+
17
+ [tool.hatch.build.targets.wheel]
18
+ packages = ["src/deepctl_cmd_plugin"]
@@ -0,0 +1,5 @@
1
+ """Plugin management command for deepctl."""
2
+
3
+ from .command import PluginCommand
4
+
5
+ __all__ = ["PluginCommand"]