文章目录

agent安装

安装wsl

wsl安装并迁移目录
如果装了wsl但不记得有没有迁移可以运行reg query HKCU\Software\Microsoft\Windows\CurrentVersion\Lxss /s | findstr BasePath

ext4.vhdx = 你的整个 Linux 世界

在这里插入图片描述

如何使用wsl

powershell 运行 wsl启动

PS C:\Users\zhouj> wsl

windows目录和linux目录对应关系,怎么互相访问

在这里插入图片描述

C:\ → /mnt/c D:\ → /mnt/d \\wsl$\Ubuntu-22.04\xxx

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

wsl里的/root /home

在这里插入图片描述

~ = 当前用户的家目录

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

如何看自己 是什么用户

在这里插入图片描述

创建一个普通用户

adduser zhoujx
在这里插入图片描述
在这里插入图片描述

给用户 sudo 权限(非常重要)

给用户 sudo 权限(非常重要)

👉 否则你以后装软件会很麻烦

执行:

usermod -aG sudo zhouj

在当前用户(zhoujx)执行:
groups
👉 输出示例
zhoujx sudo
👉 ✔ 如果看到 sudo
说明 已经加成功

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

/etc/sudoers 这个文件才是真正决定:👉 谁可以用 sudo

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

sudo规则完整结构:谁,在什么地方,可以用/以谁的身份,执行哪些命令

<谁> <在哪些主机> = (以谁的身份) <可以执行什么命令>
👉 其实就是一句话:
谁,在什么地方,可以用谁的身份,执行哪些命令

以谁的身份”在 Linux 命令行里的代名词,就是 sudo -u xx
如果不加 -u 默认是root
“我要以 mysql 的身份去删掉缓存。”
你的命令行语言就是:“sudo -u mysql rm -rf /cache/*”
当你想说:“我要以 www-data 的身份去重启服务。”
你的命令行语言就是:“sudo -u www-data nginx -s reload”
只有一种情况你可以不写 -u xx,那就是当你以 root 的身份执行命令时:
“以 root 的身份执行安装” = sudo -u root apt install
因为大家太常用了,所以 Linux 允许你把 -u root 省略掉,直接简写成:sudo apt install。在这里插入图片描述在这里插入图片描述
在这里插入图片描述

sudoers 里的命令就不用输入密码吗?
不是的!默认情况下,依然要输入密码,但输的是“你自己的密码”,而不是“root”或“目标用户”的密码。
如果你希望执行某些命令时连自己的密码都不用输,必须在 sudoers 配置文件里显式加上 NOPASSWD: 关键字。
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在 sudoers 的语法里,NOPASSWD: 就像一个开关(或者叫前缀),它会一直向后生效,直到遇到下一组不同的权限定义或者行尾。
在这里插入图片描述在这里插入图片描述在这里插入图片描述

使用 sudo 的核心目的,就是为了让你不需要知道别人的密码,甚至不需要手动切换用户(不用执行 su -),就能直接以别人的身份去跑命令
在 sudoers 文件中,配置的格式通常是这样的:
谁 在什么机器=(以谁的身份) 执行什么命令
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

使用 sudo -i 或 sudo su -(依赖 sudoers)
原理:借用 sudo 的特权去敲开切换用户的大门。

规则:系统会要求你输入你自己的密码。

结论:这就必须在 sudoers 里面配置了。比如你必须拥有 ALL=(ALL) 权限,系统才会允许你通过 sudo -i 直接免密(免对方密码)切到 root

切换到新用户测试 su - xx

在这里插入图片描述

- 的作用是:让你“完整切换成该用户的登录环境”

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

WSL 默认 root 是没有密码的。

在这里插入图片描述
在这里插入图片描述

zhoujx@LAPTOP-A2QR4P66:~$ sudo -i
[sudo] password for zhoujx:
Sorry, try again.
[sudo] password for zhoujx:
zhoujx is not in the sudoers file. This incident will be reported.

zhoujx is not in the sudoers file
👉 意味着:
👉 你的用户 zhoujx 没有 sudo 权限

(强制用 root 启动 WSL)✅ 推荐
在 Windows PowerShell 执行:
wsl -u root
👉 你会直接进入:
root@LAPTOP-xxx:#
给 zhoujx 加 sudo 权限
在 root 下执行:
usermod -aG sudo zhoujx

在这里插入图片描述

在这里插入图片描述

把 WSL 默认用户改成普通用户

wsl执行

把 WSL 默认用户改成 zhoujx(避免每次都是 root)

vim /etc/wsl.conf
添加
[user]
default=zhoujx
然后powershell执行
wsl --shutdown

在这里插入图片描述

wsl配置代理(Windows 有代理 ✔WSL 没走代理 ❌)

问题:启动wsl后显示:
检测到 localhost 代理配置,但未镜像到 WSL。NAT 模式下的 WSL 不支持 localhost 代理

# C:\Users\你的用户名\.wslconfig
[wsl2]
networkingMode=mirrored
autoProxy=true
dnsTunneling=true
# PowerShell
wsl --shutdown
wsl

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

测试:
curl -I https://www.baidu.com

daili/tizi: 让你的网络请求“绕一个中间服务器再出去”

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

daili软件具体干什么

在这里插入图片描述
在这里插入图片描述

vscode 把 C:\Users\用户vscode-remote-wsl\stable 移走

这个目录通常存放的是 VS Code 在 WSL(Windows Subsystem for Linux)环境下运行所需的服务端核心文件(Commit 具体的程序文件)。如果你删除了它,下次你在 WSL 中打开 VS Code 时,它会重新下载,可能会导致启动缓慢或报错

在这里插入图片描述
在这里插入图片描述
用软链接(最简单):
1、在d盘创建目录:D:\VSCodeData\vscode-remote-wsl
2、移动目录到 D 盘【先关闭 VS Code 和所有 WSL 远程会话】

# powershell
Move-Item -Path "C:\Users\zhouj\vscode-remote-wsl" -Destination "D:\VSCodeData\vscode-remote-wsl"

3、PowerShell 创建目录符号链接(管理员 PowerShell 执行)

New-Item -ItemType SymbolicLink `
  -Path "C:\Users\zhouj\vscode-remote-wsl" `
  -Target "D:\VSCodeData\vscode-remote-wsl"

4、检查是否创建成功

Get-Item "C:\Users\zhouj\vscode-remote-wsl" | Format-List FullName,LinkType,Target

如果成功,一般能看到:

LinkType : SymbolicLink
Target : {D:\VSCodeData\vscode-remote-wsl}

也可以直接试:

Get-ChildItem "C:\Users\zhouj\vscode-remote-wsl"

如果能看到 D 盘里的内容,说明链接正常。

这样就相当于原来的 C:\Users\zhouj\vscode-remote-wsl 指向了 D 盘

👉 效果:

VS Code 以为还在 C 盘
实际存储在 D 盘

wsl安装agent

[wsl安装code][自己搜索官方网址,不能写出来。。。。。。。。]
在这里插入图片描述
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc && source ~/.bashrc
在这里插入图片描述

在这里插入图片描述
zsh 就是另一个比 bash 更“花哨、智能、舒服”的命令解释器。

.bashrc 是 bash shell 的启动配置文件
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

agent+ WSL + VS Code 的最舒服开发流

在这里插入图片描述
在这里插入图片描述

vscode安装remote-wsl扩展
在这里插入图片描述

常用工具

sudo apt update
sudo apt install -y git curl unzip zip build-essential jq ripgrep fd-find

ripgrep 这类工具会让终端开发和智能体配合更顺。
Git 身份

git config --global user.name "你的名字"
git config --global user.email "你的邮箱"
git config --global core.autocrlf input

core.autocrlf input 在 Windows + WSL 混合场景里通常比乱转行尾更省心。
SSH key

ssh-keygen -t ed25519 -C "你的邮箱"

然后把公钥配到 GitHub/GitLab。

pycharm

pycharm可以打开wsl里的项目目录,选择wsl里的解释器。

安装cc-switch

cc-switch安装
cc-switch使用

CC Switch 会自动将配置写入对应 CLI 工具的配置文件:

指定wsl里的agent的配置目录
在这里插入图片描述

手动配置的方法

只要模型平台提供了兼容 Anthropic API 请求的 BASE URL,都可以进行调用,如果没有,也可以加一层代理进行转发
手动配置可以用环境变量,也可以放到对应cli的配置目录下

环境变量
配置目录

vscode 安装 code for vscode

agent login
在这里插入图片描述

asdf 版本管理工具

asdf,它是一个版本管理工具。官方把它叫做 “multiple runtime version manager”,意思是:用一个工具统一管理很多开发工具/语言的版本

你可以把它理解成:
以前:
Node 用 nvm
Python 可能用 pyenv
Ruby 可能用 rbenv
用 asdf 以后:
一个 asdf 管很多种工具版本
它支持按项目切换版本。比如你进 A 项目时用 Node 18,进 B 项目时自动切到 Node 20。它通常通过项目里的 .tool-versions 文件记录“这个项目该用什么版本”
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

asdf 把版本下载到哪里?

默认情况下,asdf 会把 插件、已安装的工具版本、shims 这些数据放在
$HOME/.asdf 下面。官方现在用环境变量 ASDF_DATA_DIR 表示这个目录;如果你不自己改,它通常就是 ~/.asdf

在这里插入图片描述

echo $ASDF_DATA_DIR

在这里插入图片描述
在这里插入图片描述

常用命令

asdf plugin add <name> 是官方命令,意思就是给某个工具加插件,因为 asdf 要靠插件才知道怎么管理这个工具. asdf plugin list查看已经安装的插件

在这里插入图片描述

“插件”到底是什么

asdf 想成一个“总管家”,但它自己不懂每一种工具怎么安装
asdf 需要先装一个“对应工具的说明书/适配器”,这就是 插件

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

看某个工具有哪些版本可装 asdf list all xx

在这里插入图片描述

asdf install 安装

在这里插入图片描述

设置当前项目使用哪个版本 asdf set

在这里插入图片描述

设置“全局默认版本”asdf set -u

在这里插入图片描述

asdf current 查看当前版本

在这里插入图片描述

卸载某个版本 asdf uninstall

在这里插入图片描述

更新 shim asdf reshim

在这里插入图片描述

shim = 夹在命令和真实程序之间的转发层,负责把 python、node 这些命令导向正确版本

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

tmux = 在一个终端里开很多终端,并且能让会话后台持续存在的工具

tmux 是一个“终端多路复用器”。官方的意思是:你可以在一个终端窗口里开多个终端会话,还可以把它们暂时断开但继续运行,之后再接回来。官方就把这个叫做 detach / reattach

在这里插入图片描述
在这里插入图片描述

session/window/pane

session = 一个工作区
window = 工作区里的一个标签页
pane = 标签页里的一个分屏小窗
这里的窗口就是下面的window的意思
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

常用命令

tmux 大部分快捷键都要先按前缀键。默认前缀是:Ctrl + b

在这里插入图片描述

启动tmux

在这里插入图片描述

新建一个带名字的 session:tmux new -s xx

在这里插入图片描述

查看当前有哪些 session。tmux ls

在这里插入图片描述

重新连接某个 session tmux attach -t

在这里插入图片描述
在这里插入图片描述

暂时退出,但不关闭里面程序 Ctrl+b 然后按 d

在这里插入图片描述

新建一个 window Ctrl+b 然后按 c

在这里插入图片描述
在这里插入图片描述

切换 window。Ctrl+b 然后按 n。Ctrl+b 然后按 p Ctrl+b 然后按 p

在这里插入图片描述

分屏 pane ctrl+b %/"

在这里插入图片描述

在 pane 之间切换.Ctrl+b 然后按方向键

在这里插入图片描述

关闭当前 pane 或 window exit

在这里插入图片描述

总结

在这里插入图片描述
在这里插入图片描述

启动agent

agent 3种模式,默认模式,接收编辑模式,计划模式

在这里插入图片描述

agent 多行输入 +enter

先输入\,在点击回车就换行了
在这里插入图片描述

ctrl + g 会打开 vscode的一个标签页

写完之后点击保存,agent会把vscode的内容全部放到输入框里

type here xx,不要回车,直接在这里输入

在这里插入图片描述

跳过所有权限检测 dangerously-skip-permissions

bypass permissions on (绕过权限)
在这里插入图片描述

终端执行 c --resume 恢复对话,或者/resume

c --resume 1d03347e-bd39-4a3e-8029-9e465e79851e

/effort (努力)调 agent在当前任务里“愿意花多少思考量”。 思考深度(标准思考,进阶思考)

在这里插入图片描述
在这里插入图片描述

/tasks 查看后台任务,ctrl+b 放到后台

在这里插入图片描述

x关掉到后台服务 esc或<-等都是关掉当前展示后台任务的窗口

在这里插入图片描述

/rewind 回滚 或 连续按2下esc也是取去到到回滚界面

在这里插入图片描述

/compact 压缩,后面可跟摘要重点保留什么【可选的自定义摘要说明】,压缩后ctrl+o查看压缩后的上下文

在这里插入图片描述

/clear 清除对话历史并释放上下文.后面的任务跟之前的没有关系就可以使用

/init 生成c.md,也可手动更改

C.md 是 agent 用于理解项目背景、约束条件和特定工作流的核心配置文件
C 会将 C.md 的内容直接注入到它的 System Prompt(系统提示词) 中。
每次启动都会加载
在这里插入图片描述
在这里插入图片描述

/memory 也可以打开C.md

在这里插入图片描述

第 3 个 Open auto-memory folder 的意思是:

👉 打开自动记忆所在的文件夹

也就是把 C/工具当前用于存放 auto-memory(自动记忆) 的目录直接打开给你看。

Hook功能

运行用户在执行工具的前后等等时机,执行一段自己指定的逻辑。
比如c写完代码后自动格式化
在这里插入图片描述
在这里插入图片描述

选择希望在哪个工具之后

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

skill

在这里插入图片描述

subagent

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

skill与subagent

skill共享主上下文,占用主上下文窗口
subagent有独立的上下文,只有活干完,才给主窗口返回
在这里插入图片描述

plugin

全家桶安装包,把skill,hooks等打包在一起,一键安装就可以
在这里插入图片描述

在这里插入图片描述

如下的插件只包含了skills,有的插件可能包含skill,mcp等等

在这里插入图片描述

Logo

欢迎加入DeepSeek 技术社区。在这里,你可以找到志同道合的朋友,共同探索AI技术的奥秘。

更多推荐