实在是等不到 GitHub Copilot Cli 了, 只能自己上手写了 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
Cells
V2EX    程序员

实在是等不到 GitHub Copilot Cli 了, 只能自己上手写了

  •  1
     
  •   Cells 2023-03-08 10:03:06 +08:00 3628 次点击
    这是一个创建于 951 天前的主题,其中的信息可能已经有所发展或是发生改变。

    加入 GitHub Copilot Cliwaitlist 好久了, 一直没给通知

    昨天自己用 chatgpt 实现了一版简单的先用着

    gif

    图里我是映射了别名

    # 如果有全局代理的话, 第三项路由可以不填 alias ??="chatgpt-cli zsh openAI_APIKey http://127.0.0.1:7890" 

    多少有点简陋, 不过我需要的功能基本上都有了

    • 询问命令
    • 交互式执行
    • 在本次问题的基础上提出建议
    • 复制到剪贴板
    • 将执行的或复制到剪贴板的命令推送到 XX 中 (小众需求, 还未实现)

    Github

    17 条回复    2023-03-10 09:17:10 +08:00
    learningman
        1
    learningman  
       2023-03-08 10:15:32 +08:00 via Android
    我 off waitlist 了,但是真的不好用来着。。。
    终端一个换行都没有的地方搞这些,真的是过度设计了
    Cells
        2
    Cells  
    OP
       2023-03-08 10:21:52 +08:00
    @learningman 换行的话可以用反斜杠 \, 我是觉得有时候这种工具问一个不常用的命令挺方便的, 比如 ffmpeg 的, 这个动图就是用这个问的 视频转动图. 省得去谷歌查了, 查了之后还得再去找解释. 这种的话就能一次性都解决了
    kaiger
        3
    kaiger  
       2023-03-08 10:50:17 +08:00   1
    非交互会不会好一点,命令直接复制到剪贴板。
    Cells
        4
    Cells  
    OP
       2023-03-08 10:57:30 +08:00
    我认为是看到反馈的命令之后, 确认下是否正确, 再去进行下一步.

    如果直接复制到剪切板的话, 可能会覆盖掉我本身复制过来的信息.

    不过应该可以添加一个 `是否默认复制到剪贴板` 的配置项来解决.
    yan17
        5
    yan17  
       2023-03-08 11:28:57 +08:00
    @Cells 我觉得没有必要复制到剪贴板,我更习惯用终端自带的 选中就复制,不过配置项也可以
    yan17
        6
    yan17  
    2023-03-08 11:33:24 +08:00
    为什么在输入问题的时候,删除中文需要按两下呢? golang 的输入问题吗?
    Cells
        7
    Cells  
    OP
       2023-03-08 11:36:12 +08:00
    @yan17 我都不知道有 选中复制 的功能, 我做的时候想法是尽量少用鼠标, 所以交互里添加了复制到剪贴板的功能.
    Freakr
        8
    Freakr  
       2023-03-08 11:36:33 +08:00
    @yan17 两个问号是配置的别名
    Freakr
        9
    Freakr  
       2023-03-08 11:37:23 +08:00
    @Freakr 理解错了……
    Freakr
        10
    Freakr  
       2023-03-08 11:38:36 +08:00
    @yan17 locale 看看是用的 UTF-8 么
    Cells
        11
    Cells  
    OP
       2023-03-08 11:41:06 +08:00
    @Freakr @yan17 我本地也是, 哈哈, 编码我试了 GBK 和 UTF8 都不行, 抽空我再找找吧
    yan17
        12
    yan17  
       2023-03-08 11:43:26 +08:00
    @Freakr 是 utf-8 ,
    $ locale
    LANG=en_US.UTF-8
    LANGUAGE=
    LC_CTYPE="en_US.UTF-8"
    LC_NUMERIC=zh_CN.UTF-8
    LC_TIME=zh_CN.UTF-8
    LC_COLLATE="en_US.UTF-8"
    LC_MOnETARY=zh_CN.UTF-8
    LC_MESSAGES="en_US.UTF-8"
    LC_PAPER=zh_CN.UTF-8
    LC_NAME=zh_CN.UTF-8
    LC_ADDRESS=zh_CN.UTF-8
    LC_TELEPHOnE=zh_CN.UTF-8
    LC_MEASUREMENT=zh_CN.UTF-8
    LC_IDENTIFICATION=zh_CN.UTF-8
    LC_ALL=
    我试了下,ubuntu 自带的终端 和 terminator 都是这样,go version go1.20.1 linux/amd64
    yan17
        13
    yan17  
       2023-03-08 11:44:28 +08:00
    @Cells 我用的 terminator 这个终端支持选中复制,需要配置一下,是有一些终端不支持
    Cells
        14
    Cells  
    OP
       2023-03-08 15:45:59 +08:00
    @yan17 中文的问题已经解决了, 顺带优化了下样式
    ziyangfeng348508
        15
    ziyangfeng348508  
       2023-03-08 19:42:30 +08:00 via Android
    github 上面有个 shell gpt
    Cells
        16
    Cells  
    OP
       2023-03-09 08:57:51 +08:00
    @ziyangfeng348508 发现的确是做的很不错
    vihv
        17
    vihv  
       2023-03-10 09:17:10 +08:00 via Android
    有个 lazyshell,纯 zsh 脚本
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2512 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 23ms UTC 15:34 PVG 23:34 LAX 08:34 JFK 11:34
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86