Command-line interface for running CodeMie Plugins toolkits
Project description
EPAM AI/Run CodeMie Plugins CLI
A command-line interface for running AI/Run CodeMie Plugins toolkits without requiring devbox.
Table of Contents
- Overview
- Installation
- Configuration
- Commands
- Custom MCP Servers
- Graceful Shutdown
- Troubleshooting
- Contributing
- License
Overview
The CodeMie Plugins CLI provides a convenient way to interact with CodeMie toolkits and MCP (Model Context Protocol) servers without requiring devbox. It offers a unified interface for:
- Running development toolkits on repositories
- Managing and running MCP servers
- Configuring plugin settings
- Listing available commands and toolkits
This CLI is designed to be cross-platform and easy to use, with a focus on developer experience.
Installation
Using pip
The easiest way to install the CodeMie Plugins CLI is using pip:
pip install codemie-plugins
Using uvx (Recommended)
For a more isolated environment that doesn't conflict with existing Python environments, you can use uvx to run the CLI:
# Install
uvx pip install codemie-plugins
# Run
uvx codemie-plugins
For installation instructions for uvx, see the uv documentation.
From Source
To install from source:
# Clone the repository
git clone https://github.com/codemie/codemie-plugins.git
cd codemie-plugins
# Install using pip
pip install -e .
# Or using poetry
poetry install
Configuration
Setting Up Your Plugin Key
Before using the CLI, you need to set up your plugin key:
-
Generate a plugin key:
bash generate_plugin_key.sh -
Set the plugin key in your configuration:
codemie-plugins config set PLUGIN_KEY your-plugin-key
-
Alternatively, set it as an environment variable:
export PLUGIN_KEY=your-plugin-key
Configuration File
The CLI uses a configuration file located at ~/.codemie/config.json. You can manage this configuration using the config command:
# View current configuration
codemie-plugins config list
# Set a configuration value
codemie-plugins config set KEY VALUE
# Get a specific configuration value
codemie-plugins config get KEY
Environment Variables
The following environment variables can be used to configure the CLI:
PLUGIN_KEY: Authentication key for the plugin enginePLUGIN_ENGINE_URI: URI for the plugin engine (typically a NATS server)COMMAND_LINE_TOOL_TIMEOUT: Timeout for command line tools (in seconds)CODEMIE_PLUGINS_ROOT: Root directory for CodeMie plugins
Commands
Global Options
The following options are available for all commands:
--plugin-key TEXT Authentication key for the plugin engine
--plugin-engine-uri TEXT URI for the plugin engine (typically a NATS server)
--debug / --no-debug Enable debug mode
--version Show the version and exit
--help Show help message and exit
List Command
The list command displays available CLI commands:
codemie-plugins list [OPTIONS]
Options:
--verbose, -v: Display detailed information about each command
Example:
# List available commands
codemie-plugins list
# or with uvx
uvx codemie-plugins list
# List commands with detailed information
codemie-plugins list -v
# or with uvx
uvx codemie-plugins list -v
Config Command
The config command manages CLI configuration settings:
codemie-plugins config SUBCOMMAND [OPTIONS]
Subcommands:
list: List current configuration settings--all: Show all configuration including environment variables
set KEY VALUE: Set a configuration valueget KEY: Get a specific configuration value
Examples:
# List current configuration
codemie-plugins config list
# or with uvx
uvx codemie-plugins config list
# Show all configuration
codemie-plugins config list --all
# or with uvx
uvx codemie-plugins config list --all
# Set a configuration value
codemie-plugins config set PLUGIN_KEY your-plugin-key
# or with uvx
uvx codemie-plugins config set PLUGIN_KEY your-plugin-key
# Get a specific configuration value
codemie-plugins config get PLUGIN_KEY
# or with uvx
uvx codemie-plugins config get PLUGIN_KEY
MCP Command
The mcp command manages Model Context Protocol servers and connections:
codemie-plugins mcp SUBCOMMAND [OPTIONS]
Subcommands:
list: List available MCP serversrun: Run MCP with specified servers--servers, -s TEXT: Comma-separated list of server names to run (required)--env, -e TEXT: Server-specific environment variables (format: 'server_name=VAR1,VAR2')--timeout, -t INTEGER: Timeout in seconds
Examples:
# List available MCP servers
codemie-plugins mcp list
# or with uvx
uvx codemie-plugins mcp list
# Run a single server
codemie-plugins mcp run -s filesystem
# or with uvx
uvx codemie-plugins mcp run -s filesystem
# Run multiple servers
codemie-plugins mcp run -s filesystem,cli-mcp-server
# or with uvx
uvx codemie-plugins mcp run -s filesystem,cli-mcp-server
# Run with environment variables
codemie-plugins mcp run -s filesystem -e filesystem=FILE_PATHS
# or with uvx
uvx codemie-plugins mcp run -s filesystem -e filesystem=FILE_PATHS
Development Command
The development command provides development toolkit commands for working with repositories:
codemie-plugins development SUBCOMMAND [OPTIONS]
Subcommands:
run: Run development toolkit on a repository--repo-path PATH: Path to the repository directory--timeout, -t INTEGER: Timeout in seconds for command execution
Examples:
# Run development toolkit on current directory
codemie-plugins development run
# or with uvx
uvx codemie-plugins development run
# Run development toolkit on a specific repository
codemie-plugins development run --repo-path /path/to/repo
# or with uvx
uvx codemie-plugins development run --repo-path /path/to/repo
# Run with a custom timeout
codemie-plugins development run --timeout 600
# or with uvx
uvx codemie-plugins development run --timeout 600
Custom MCP Servers
You can define custom MCP servers in your global configuration file (~/.codemie/config.json). These servers will be automatically recognized and can be used alongside the predefined servers.
Configuration Format:
{
"mcpServers": {
"my-custom-server": {
"command": "node",
"args": ["/path/to/server.js"],
"transport": "stdio"
}
}
}
Using Custom Servers:
# List all available servers including custom ones
codemie-plugins mcp list
# or with uvx
uvx codemie-plugins mcp list
# Run a custom server
codemie-plugins mcp run -s my-custom-server
# or with uvx
uvx codemie-plugins mcp run -s my-custom-server
Graceful Shutdown
The CLI implements graceful shutdown handling to ensure that all processes are properly terminated when the CLI is interrupted (e.g., with Ctrl+C). This includes:
- Cancelling running asyncio tasks
- Terminating subprocesses
- Closing connections
Troubleshooting
If you encounter issues with the CLI, try the following:
-
Enable debug mode:
codemie-plugins --debug COMMAND # or with uvx uvx codemie-plugins --debug COMMAND
-
Check your configuration:
codemie-plugins config list --all # or with uvx uvx codemie-plugins config list --all
-
Ensure your plugin key is correctly set:
codemie-plugins config get PLUGIN_KEY # or with uvx uvx codemie-plugins config get PLUGIN_KEY
-
Verify that required environment variables are set for specific servers.
Contributing
Contributions to the CodeMie Plugins CLI are welcome! Please follow these steps:
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request
License
This project is licensed under the MIT License - see the LICENSE file for details.
© 2025 EPAM AI/Run CodeMie Team
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file codemie_plugins-0.1.102.tar.gz.
File metadata
- Download URL: codemie_plugins-0.1.102.tar.gz
- Upload date:
- Size: 44.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.2 CPython/3.13.2 Darwin/24.3.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
449ea092d9999fe4665acd3a30c2a28f1c61d952ae525ac18350d5a04baa6fce
|
|
| MD5 |
1c53a73a5ba0f4558384e3d4b7044a28
|
|
| BLAKE2b-256 |
028693cebb1b22b35552c6da5fbbd44c974e943d9300762267ab7bbdfd1c8a06
|
File details
Details for the file codemie_plugins-0.1.102-py3-none-any.whl.
File metadata
- Download URL: codemie_plugins-0.1.102-py3-none-any.whl
- Upload date:
- Size: 64.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.2 CPython/3.13.2 Darwin/24.3.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1a92a452b0b164bdf59744994489ec832f682a0409e5f53b787cd21ab1922b17
|
|
| MD5 |
bd8f43eddccbbeb1b562b1b6af65d051
|
|
| BLAKE2b-256 |
51fcd62374da5395dd31409774f566f43f5888a75c457fe8cb23a7d45bd210bd
|