尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

firestart:一行命令启动你的日常应用和网页

firestart:一行命令启动你的日常应用和网页 为什么做这个发现自己每天每次使用电脑时都要一系列固定的操作码代码时要打开 VSCode查资料要打开浏览器记笔记会打开Typora遇到难题问 AI 要启动 Deepseek Harness、Chatbox喜欢边听歌边工作摸鱼时偶尔还会刷会知乎、 bilibili…… 于是想着能不能把这些高频操作“打包”起来做个 CLI 工具一行命令启动我常用的软件和网页。安装已发布到PyPi可通过以下命令安装pipinstallfirestart如果显示报错可能是您所用的PyPI 镜像并未同步更新请临时使用PyPI官方源pipinstall--index-url https://pypi.org/simple firestart安装完成后终端里直接用fire命令。核心概念firestart 里存的东西分两类类型存的是什么能直接启动吗例子“单发弹药”实际内容网站 URL 或 exe 路径 启动参数能bilibili、vscode“组合弹药”一组“单发弹药名”一行命令逐个启动dev启动 vscode terminal typora命令详解add — 添加单发弹药fireadd名称目标[--args参数1,参数2][--cwd工作目录]最常见的三个场景1. 添加网站fireaddbilibili https://www.bilibili.com fireaddzhihu https://www.zhihu.com2. 添加本地应用fireaddtyporaC:\Program Files\Typora\Typora.exe3. 带启动参数和工作目录# VSCode 启动后直接打开指定项目fireaddcodeC:\Users\你\AppData\Local\Programs\Microsoft VS Code\Code.exe--argsC:\project\myapp--args多个参数用逗号分隔例如--args -p,8080,-v→[-p, 8080, -v]workspace — 管理组合弹药fire workspaceadd名称弹药1弹药2...# 创建组合弹药fire workspace list# 列出所有组合弹药fire workspace remove名称# 删除组合弹药创建组合弹药前必须先有单发弹药——组合弹药存的是单发弹药的引用名不是拷贝。# 先储备弹药fireaddvscodeC:\...\vscode.exe--argsC:\projectfireaddterminalwt.exefireaddtyporaC:\Program Files\Typora\Typora.exe# 再组合成组合弹药fire workspaceadddev vscode terminal typora# 以后一条命令同时启动全部fire dev点火fire弹药名直接敲名字就点燃——不需要写open、不需要写start。如果是组合弹药会同时启动里面所有弹药。fire bilibili# 打开 B 站fire dev# 点燃组合弹药VSCode 终端 Notion 一起开fire morning# 摸鱼组合弹药知乎 B 站 网易云remove — 删除单发弹药fire remove名称⚠️ 组合弹药请用fire workspace remove 名称不用fire remove。list — 列出弹药库fire list# 简洁模式fire list-v# 详细模式显示完整路径和参数输出示例单发弹药: bilibili zhihu code 组合弹药: dev (3 发) morning (3 发)browser — 管理默认浏览器打开网站时默认用系统浏览器。如果你常用的是其他浏览器可以全局设置一次fire browsersetC:\Program Files\Mozilla Firefox\firefox.exe# 设置fire browser show# 查看当前设置fire browserclear# 清除恢复系统默认设置后用FireStart启动所有网站都会用这个浏览器打开。如果浏览器被卸载了、启动失败会自动更改到系统默认浏览器不会卡死。config — 打开配置文件fire config用系统默认编辑器Windows 是记事本打开配置文件。配置文件是纯 JSON你可以直接手写或手动编辑。配置文件位置~/.firestart.json用户主目录下比如C:\Users\Administrator\.firestart.jsonexport / import — 导入导出换电脑必备fireexport# 输出到终端fireexportmy-config.json# 导出到文件fireimportmy-config.json# 导入默认合并到现有配置fireimportmy-config.json--overwrite# 覆盖现有配置示例配置文件格式~/.firestart.json的完整格式{_settings:{browser:C:\\Program Files\\Mozilla Firefox\\firefox.exe},bilibili:https://www.bilibili.com,zhihu:https://www.zhihu.com,code:{target:C:\\Users\\你\\AppData\\Local\\Programs\\Microsoft VS Code\\Code.exe,args:[C:\\project\\myapp]},dev:{items:[bilibili,zhihu,code]}}key含义_settings全局设置默认浏览器字符串值网站 URL 或 本地程序路径{target, args}{本地程序路径启动参数}{items: [...]}组合弹药格式项目结构firestart/ ├── __init__.py # 版本号 ├── cli.py # 核心 └── config.py # 配置文件读写 常量 setup.py # 打包配置 requirements.txt # 依赖click8.0.0核心技术点速览技术说明click框架作为 CLI 入口框架定义 add/workspace 等核心命令组继承click.Group重写resolve_command将非子命令参数识别为「弹药」触发启动subprocess.Popen非阻塞启动后立即返回CLI不卡壳webbrowser标准库没配自定义浏览器时的 fallback使用默认浏览器JSON pathlib跨平台配置文件在用户主目录创作声明灵感源于日常使用电脑的高频痛点。技术栈选择及项目整体设计由本人完成代码编写有采用 AI 辅助实现。二次开发请注明出处。遵循Unix设计哲学“只做并做好一件事”。对我而言能用技术解决自身一个微小而真切的需求便是最大的欣慰。
返回列表