17 个稳定版本
新 1.0.18 | 2024 年 8 月 24 日 |
---|---|
1.0.17 | 2024 年 8 月 23 日 |
1.0.13 | 2024 年 8 月 22 日 |
1.0.10 | 2024 年 8 月 21 日 |
1.0.7 | 2024 年 8 月 20 日 |
在 命令行实用程序 中排名 280
每月下载量 2,047
45KB
1K SLoC
Shell Chat:提升您的命令行体验
增强您的命令行工作流程
欢迎使用 ShellChat,您的智能命令行助手,将自然语言请求转换为精确的 shell 命令。告别记住复杂的命令语法——只需描述您需要的内容,让 ShellChat 来处理其余的部分。
环境感知功能
ShellChat 设计为能够根据您的 操作系统 和 shell 环境进行上下文感知。它根据您的具体设置定制生成的命令,确保每个命令都能无缝运行。
灵活的语言支持
ShellChat 最强大的功能之一是能够理解和处理任何自然语言给出的命令。无论您喜欢使用英语、德语还是其他任何语言,ShellChat 都可以解释您的请求并生成相应的 shell 命令。下面的示例展示了英语和德语中的命令,展示了工具的多功能性。
架构概述
ShellChat 是建立在由两个主要组件组成的强大架构之上的
-
服务器 (sc-serve 或 Docker 镜像): 服务器处理与 AI 提供商相关的敏感配置,包括访问密钥和其他关键凭证。它作为中央处理单元,解释用户命令并安全地管理与 AI 提供商的交互。服务器是用 Rust 开发的,使其非常快速且性能出色。
-
客户端 (sc): 客户端是一个轻量级界面,与服务器通信而不需要直接访问服务器的部署。这种分离确保敏感数据保持安全且从客户端无法访问。通信协议设计为支持无限数量的并发客户端,允许可扩展的并行处理命令。客户端也是用 Rust 开发的,这有助于其速度和可靠性。
示例
以下是一些示例,说明 ShellChat 如何帮助您将日常任务转换为高效的 shell 命令,包括英语和德语的示例
示例 1:统计所有命名空间中部署的 Pod 数量
输入: sc list how many pods are deployed in all namespaces
输出
kubectl get pods --all-namespaces | grep -v NAME | wc -l
示例 2:显示特定命名空间中的 Pod(德语)
输入: sc zeige pods in dem ollama namespace
输出
kubectl get pods -n ollama
示例 3:显示最后 3 次Git提交的历史
输入: sc show history of last 3 commits
输出
git log -3
示例 4:显示最后一次提交的差异(德语)
输入: sc zeige diff des letzten commit
输出
git log -1 --pretty=%H | xargs git diff
示例 5:显示当前仓库的Git用户和邮箱
输入: sc show git user and email of the current git repo
输出
git config --get user.name && git config --get user.email
示例 6:递归列出前 10 个最大文件
输入: sc list 10 largest files recursive
输出
find . -type f -exec du -h {} + | sort -rh | head -n 10
示例 7:列出所有CSV文件
输入: sc list csv files
输出
ls *.csv
示例 8:递归列出所有CSV文件
输入: sc list csv files recursive
输出
find . -type f -name "*.csv"
示例 9:显示Gitlab上的最后一次管道状态
输入: sc show Gitlab last pipeline status of gitlab host https://some_host and some_project
输出
curl -s --header "PRIVATE-TOKEN: <your_access_token>" "https://some_host/api/v4/projects/some_project/pipelines/latest" | jq '.status'
结论
ShellChat是任何希望在不同语言之间简化命令行交互的人的完美工具。通过将自然语言(无论是英语、德语还是其他语言)转换为shell命令,它使复杂的操作变得简单且易于访问。无论您是在管理Kubernetes pods、检查Git历史还是探索文件系统,ShellChat都旨在提高您的生产力。
依赖项
~24–40MB
~723K SLoC