This guide provides comprehensive documentation for the NLP2CMD Command Line Interface.
pip install nlp2cmd
The CLI uses the following syntax pattern:
nlp2cmd [OPTIONS] COMMAND [ARGS]
| Option | Short | Description |
|---|---|---|
--query |
-q |
Single query to process (required for text queries) |
--dsl |
-d |
DSL type: auto, sql, shell, docker, kubernetes, dql |
--interactive |
-i |
Start interactive mode |
--explain |
ย | Explain how the result was produced |
--auto-repair |
ย | Auto-apply repairs when possible |
--help |
-h |
Show help message |
# Basic query (auto-detects DSL)
nlp2cmd --query "your natural language query"
# Specific DSL
nlp2cmd --dsl sql --query "show users from Warsaw"
nlp2cmd --dsl shell --query "find files larger than 100MB"
nlp2cmd --dsl docker --query "show all containers"
nlp2cmd --dsl kubernetes --query "scale nginx deployment"
nlp2cmd --dsl dql --query "find active users"
# Start interactive REPL
nlp2cmd --interactive
# With specific DSL
nlp2cmd --interactive --dsl shell
# Analyze system environment
nlp2cmd analyze-env
# Save to file
nlp2cmd analyze-env --output environment.json
# Validate configuration file
nlp2cmd validate config.json
# Repair file with backup
nlp2cmd repair docker-compose.yml --backup
# Validate without backup
nlp2cmd repair nginx.conf
nlp2cmd --dsl sql --query "show all users where city is Warsaw"
Supported databases:
Example outputs:
SELECT * FROM users WHERE city = 'Warsaw';
SELECT COUNT(*) FROM orders WHERE created_at > '2024-01-01';
nlp2cmd --dsl shell --query "find all log files larger than 10MB"
Example outputs:
find . -type f -name "*.log" -size +10MB -exec ls -lh {} \;
ps aux | grep nginx | head -10
df -h | grep -E "^/dev/"
nlp2cmd --dsl docker --query "show all running containers"
Example outputs:
docker ps
docker ps -a
docker images
docker-compose up -d
nlp2cmd --dsl kubernetes --query "scale deployment nginx to 3 replicas"
Example outputs:
kubectl scale deployment nginx --replicas=3
kubectl get pods
kubectl apply -f deployment.yaml
nlp2cmd --dsl dql --query "find all active users"
Example outputs:
SELECT u FROM User u WHERE u.active = true;
SELECT e FROM Employee e WHERE e.department.name = 'IT';
nlp2cmd --explain --query "check system status"
Output includes:
nlp2cmd --auto-repair --query "fix nginx configuration"
Features:
In interactive mode, you can use special commands:
nlp2cmd> !env # Show environment info
nlp2cmd> !tools # List detected tools
nlp2cmd> !files # List config files
nlp2cmd> !history # Show command history
nlp2cmd> !clear # Clear history
nlp2cmd> help # Show help
nlp2cmd> exit # Exit interactive mode
# Check system status
nlp2cmd --query "check system health"
# Find and clean log files
nlp2cmd --dsl shell --query "find and delete log files older than 30 days"
# Docker operations
nlp2cmd --dsl docker --query "restart all containers with image nginx"
# Kubernetes scaling
nlp2cmd --dsl kubernetes --query "scale deployment based on CPU usage"
# Database queries
nlp2cmd --dsl sql --query "show top 10 customers by revenue"
# File analysis
nlp2cmd --dsl shell --query "count lines in all python files"
# Log analysis
nlp2cmd --dsl shell --query "find error patterns in access logs"
# Environment analysis
nlp2cmd analyze-env
# Configuration validation
nlp2cmd validate /etc/nginx/nginx.conf
# System monitoring
nlp2cmd --query "monitor disk space and alert if below 10%"
$ nlp2cmd --query "show users"
SELECT * FROM users;
๐ โฑ๏ธ Time: 13.7ms | ๐ป CPU: 0.0% | ๐ง RAM: 54.8MB (0.1%) | โก Energy: 0.120mJ
$ nlp2cmd --explain --query "show users"
# Unknown: sql/select
Source: rules
Domain: sql
Confidence: 0.95
Latency: 2.1ms
SELECT * FROM users;
๐ โฑ๏ธ Time: 15.2ms | ๐ป CPU: 0.0% | ๐ง RAM: 55.0MB (0.1%) | โก Energy: 0.133mJ
โ
Status: success
๐ Confidence: 100%
๐ Generated command:
โญโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ
โ docker ps -a โ
โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ
๐ โฑ๏ธ Time: 2.2ms | ๐ป CPU: 0.0% | ๐ง RAM: 55.2MB (0.1%) | โก Energy: 0.019mJ
Every command execution now displays comprehensive resource metrics:
| Metric | Description | Format |
|---|---|---|
| Time | Execution time in milliseconds | โฑ๏ธ Time: 13.7ms |
| CPU | CPU usage percentage during execution | ๐ป CPU: 0.0% |
| RAM | Memory usage in MB and percentage | ๐ง RAM: 54.8MB (0.1%) |
| Energy | Estimated energy consumption | โก Energy: 0.120mJ |
# Fast DSL generation
$ nlp2cmd --dsl sql --query "show users"
SELECT * FROM users;
๐ โฑ๏ธ Time: 2.2ms | ๐ป CPU: 0.0% | ๐ง RAM: 55.2MB (0.1%) | โก Energy: 0.019mJ
# Thermodynamic optimization
$ nlp2cmd --query "optimize resource allocation"
[Optimization solution...]
๐ โฑ๏ธ Time: 1125.7ms | ๐ป CPU: 0.0% | ๐ง RAM: 59.3MB (0.1%) | โก Energy: 0.011J
โ nlp2cmd "show users"
โ
nlp2cmd --query "show users"
โ nlp2cmd --dsl invalid --query "show users"
โ
nlp2cmd --dsl sql --query "show users"
โ nlp2cmd validate nonexistent.json
โ
nlp2cmd validate existing-config.json
pip show nlp2cmd--help to see correct options--explain for detailed outputnlp2cmd analyze-env#!/bin/bash
# Automated system check
echo "Checking system health..."
nlp2cmd --query "check system health" > health_report.txt
echo "Analyzing logs..."
nlp2cmd --dsl shell --query "find recent errors in logs" >> health_report.txt
echo "Checking Docker status..."
nlp2cmd --dsl docker --query "show container status" >> health_report.txt
# Daily system maintenance
0 2 * * * /usr/local/bin/nlp2cmd --query "cleanup temporary files"
0 3 * * 0 /usr/local/bin/nlp2cmd analyze-env --output /var/log/system_analysis.json
# GitHub Actions example
- name: Analyze environment
run: nlp2cmd analyze-env --output env_analysis.json
- name: Validate configurations
run: |
nlp2cmd validate docker-compose.yml
nlp2cmd validate k8s/deployment.yaml
--dsl sql is faster than auto-detection