DeepSeek Harness (DSH) adopts a plugin-based architecture. When developing AI agents that need to interact frequently with CI/CD pipelines or Kubernetes clusters, manually checking logs or operating dashboards is often inefficient. The DSH DevOps plugin addresses this by providing a visual Web console and a set of automatically registered AI tools, integrating GitLab and Kubernetes management capabilities directly into DSH workflows.
This is a networked tool plugin maintained by Jackson-chen97, designed to address the pain points developers face when performing DevOps operations in a DSH environment.
Core Features¶
The plugin provides a complete set of DevOps management capabilities, covering two main scenarios: GitLab and Kubernetes:
- GitLab Integration: Create, review, and close Merge Requests (MRs) via API, manage labels, and monitor CI/CD pipelines, job details, and build logs.
- Kubernetes Integration: Inspect deployment status, Pod lists and restart counts, K8s events, retrieve Pod logs, and perform image changes and rollback restart operations.
- Web Console: Provides a dual-card switcher (GitLab project / K8s context), supports multi-level tabs (MRs/Tags/Pipelines/Deployments/Events) and a global search dropdown; actions are driven by modal dialogs.
- Multi-configuration Support: Supports configuring multiple GitLab servers and multiple kubeconfig files, with direct switching available in the dashboard and settings interface.
- Webhooks and Alerts: Supports receiving GitLab webhooks and triggering notifications; a background polling mechanism detects pipeline failures and Pod anomalies.
- Internationalization and Self-Signed Clusters: Includes built-in Chinese and English dictionaries that switch with the DSH system language; supports request-level CA binding for self-signed clusters via kubeconfig.
Installation and Activation¶
Local checkout is recommended. Because dsh-type-meta may have missing dependencies on npm, local checkout is the most reliable installation path.
- Clone the repository
Create a local tools directory and clone the code:
mkdir -p ~/dev/tools
cd ~/dev/tools
git clone https://github.com/Jackson-chen97/dsh-devops
cd dsh-devops
- Register the plugin
Use the DSH plugin command to register the local path in the web configuration file:
dsh plugin --profile web add "~/dev/tools/dsh-devops"
-
Restart DSH
The plugin includes its owncordis.patch.yml, which is applied automatically after installation. After restarting DSH, the Web UI typically opens automatically athttp://127.0.0.1:3080/. -
Configure
Open the “DevOps” tab in DSH settings, click “Add server” to add GitLab information (URL + Token), and click “Add config file” to add a kubeconfig path. Configuration is saved by default in~/.dsh-devops/config.
Typical Usage¶
After configuration, you can operate through the Web console or call AI tools directly through conversation.
1. Check Pipeline Status
Ask directly in conversation: “Check the latest pipeline status” or “List the job details for pipeline #42”.
2. Monitor a Pipeline
Enter: “Monitor the main branch pipeline and inform me of the result when it completes”. The plugin starts background polling and feeds status changes back to the AI.
3. Create and Review MRs
Enter: “Create MR fix/login to main branch, with title ‘Fix login’ and reviewer zhangsan”. The AI automatically calls the gitlab_mr_create tool and triggers pipeline monitoring.
For review, you can directly say: “Approve !128” or “Request changes on !128”.
4. K8s Operations
Inspect deployments: “List the Pods in the current namespace”.
Check logs: “Get the last 100 lines of logs for Pod my-pod”.
The AI tools in the plugin (such as devops_config, k8s_deployment_status, gitlab_mr_review, etc.) are automatically registered when the plugin loads and can be used without additional YAML configuration files.
Notes¶
- Local Checkout Required: Ensure you install using local checkout to avoid runtime errors caused by missing
dsh-type-metadependencies. - Configuration Location: Configuration saved in the Settings UI is located at
~/.dsh-devops/config; AI tool calls read this configuration. - Permission Scope: The plugin runs with the permissions of the current DSH process. Ensure the DSH process has sufficient permissions to access the target GitLab server and Kubernetes cluster.
- License: This project uses the MIT license.