Skip to content

关于自定义指令 #19

Description

@ilovesusu

@lyricat 在你的计划中,这个自定义指令是干啥的,有相对具体的定义吗?

我最近打算用语音控制一些软件的打开,或者是执行预定义的shell。

下面是我的一些想法,然后个GPT聊完后的结果!我直接完整的贴上来吧!我感觉还是很实用的!


🚀语音输入法 + 自定义指令系统(Linux)

🎯 背景

当前语音输入法主要能力集中在:

  • 语音转文字(Speech-to-Text)

但在 Linux 开发环境中,用户更需要的是:

语音 + 自动化 + 系统操作 + AI 工作流的一体化能力

因此希望在保留基础语音输入能力的前提下,引入“语音指令系统(Voice Command System)”。


✨ 核心目标

在不破坏现有语音输入体验的基础上,新增一层:

语音 → 指令解析 → 执行动作(或输出文本)

两种模式并存:

  • 📝 纯输入模式(默认):语音 → 文字输入
  • ⚙️ 指令模式:语音 → 自动执行动作

🧠 功能设计建议

1️⃣ 保留基础能力(必须)

用户说:今天开会在下午三点
输出:今天开会在下午三点

✔ 不做任何解析
✔ 不影响输入延迟
✔ 保持输入法本质


2️⃣ 自定义语音指令(核心能力)

示例 1:Shell 命令

语音:重启 nginx

执行:

sudo systemctl restart nginx

示例 2:开发任务

语音:启动项目

执行:

pnpm install
pnpm dev

示例 3:Git 操作

语音:提交代码

执行:

git add .
git commit -m "auto commit"
git push

(可扩展 AI 自动生成 commit message)


示例 4:AI 操作

语音:解释一下

行为:

  • 获取当前选中文本
  • 调用 LLM
  • 返回解释结果(弹窗 / 替换 / 复制)

示例 5:窗口控制

语音:打开 vscode

执行:

code

语音:切换窗口

模拟快捷键:

Alt + Tab

示例 6:浏览器

语音:打开知乎

执行:

xdg-open https://zhihu.com

示例 7:系统操作

语音:锁屏

执行:

loginctl lock-session

3️⃣ 工作流(Macro / Pipeline)

支持多步骤语音指令:

语音:开始工作

执行:

  • 打开 VSCode
  • 打开 Terminal
  • 启动浏览器
  • 打开 Notion
  • 启动项目

语音:下班

执行:

  • git push
  • 关闭应用
  • 同步文件
  • 锁屏 / 关机

4️⃣ YAML/DSL 自定义指令系统(强烈建议)

允许用户定义语音映射:

commands:
  - trigger: "启动博客"
    steps:
      - exec: code ~/blog
      - exec: kitty
      - exec: pnpm dev
      - speak: "博客已启动"

  - trigger: "查公网IP"
    steps:
      - exec: curl ifconfig.me
      - copy_output: true

5️⃣ AI 集成能力(可选但强烈建议)

支持:

  • clipboard → AI → clipboard
  • selection → AI → replace
  • prompt optimization
  • code explanation
  • translation

示例:

语音:翻译一下

流程:

  • 获取剪贴板
  • AI 翻译
  • 自动回填

6️⃣ 安全机制(必须)

危险命令必须确认:

rm -rf /
shutdown now
format disk

建议:

  • 二次确认
  • 或 whitelist 机制
  • 或 sandbox mode

🧩 架构建议(实现思路)

建议系统拆分为:

Speech-to-Text Layer
        ↓
Intent Parser(规则 + LLM)
        ↓
Command Router
        ↓
Executor Plugins

插件类型:

  • shell plugin
  • window manager plugin
  • browser plugin
  • ai plugin
  • clipboard plugin
  • system plugin

💡 Demo 场景合集

🧑‍💻 开发者模式

  • “启动项目”
  • “提交代码”
  • “查看日志”
  • “释放显存”
  • “重启服务”

⚡ 生产力模式

  • “开始工作”
  • “生成日报”
  • “总结今天任务”
  • “翻译选中文本”

🧠 AI 增强模式

  • “解释这段代码”
  • “优化这个 prompt”
  • “生成 commit message”

🪟 系统控制

  • “打开 vscode”
  • “锁屏”
  • “切换窗口”
  • “最大化窗口”

🚀 总结

该功能本质是:

从「语音输入法」升级为「语音驱动的 Linux 自动化系统」

它将语音输入从:

❌ 输入工具

升级为:

✅ 操作系统级控制接口


如果你愿意,我觉得你可以拆下任务,然后一起开发一下!如果你觉得不必要很臃肿,那我就fork 自己弄弄看!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions