6.6 KiB
skills_env — 本机环境档案(模板)
复制本文件到
~\skills_env.md后逐项核对。此文件只留在本机,不进 git: 每台电脑的路径/IP/凭据不同。skills 中凡是机器相关的参数都从这里取值。 值为KEY = value形式,方便脚本和模型直接检索。
同步仓库
SKILLS_REPO_URL = http://git.rpchannel.com/bowei/skills-win.git
SKILLS_REPO_USER = bowei
SKILLS_REPO_PASS = <填写,或留空表示已存入 Windows 凭据管理器>
CLAUDE_SKILLS_DIR = C:\Users\<user>\.claude\skills # 唯一 git 检出(主副本)
CODEX_SKILLS_DIR = C:\Users\<user>\.codex\skills # 全量镜像,全是 junction
AGENTS_SKILLS_DIR = C:\Users\<user>\.agents\skills # 跨工具别名目录;只做发现/修复,不全量铺
OPENCODE_CONFIG_DIR = C:\Users\<user>\.config\opencode # OpenCode 全局配置;skills 数组登记 ~/.codex/skills(sync_opencode_skills.ps1 管理)
凭据说明:首次 clone 成功后运行 git config --global credential.helper manager,
让 Windows 凭据管理器接管,此后 SKILLS_REPO_PASS 可以清空。
gitea 服务端(tools-sync 的 gitea_doctor 用;不自建 gitea 就整节留空)
GITEA_SSH_HOST = <gitea 宿主机地址,同网段/VPN 内的直连地址优先>
GITEA_SSH_PORT = 22
GITEA_SSH_HOST_ALT = <走公网跳板时的地址,没有就留空>
GITEA_SSH_PORT_ALT = <跳板端口,没有就留空>
GITEA_SSH_USER = <登录用户>
GITEA_HOST_KEY_FP = <SHA256:... 主机公钥指纹,用于确认连对了机器>
GITEA_CONTAINER = gitea
GITEA_DOCKER_BIN = /usr/local/bin/docker
GITEA_DATA_DIR = <宿主机上 bind 到容器 /data 的目录>
GITEA_COMPOSE_FILE = <docker-compose.yml 路径,没用 compose 就留空>
GITEA_HTTP_LOCAL = http://localhost:3000
填写要点:脚本要免密登录,先把本机公钥加进服务端的 authorized_keys 并实测一次。
GITEA_DOCKER_BIN 写绝对路径——ssh 非交互登录通常不加载登录 shell 的 PATH,
docker 会找不到。GITEA_HOST_KEY_FP 不是可选项:有跳板时它是你唯一能确认
"连上的确实是那台机器"的凭据。
Python / Conda
CONDA_ROOT = C:\ProgramData\miniconda3
CONDA_LANGGRAPH_PYTHON = C:\Users\<user>\.conda\envs\langgraph\python.exe
LangGraph 工作流仓库(各 flow skill 的 driver 从这里取项目根)
LANGGRAPH_DESIGN_ROOT = <LangGraph 工程总目录,如 E:\LangGraph_Design>
SIM_RTL_FLOW_ROOT = {LANGGRAPH_DESIGN_ROOT}\sim-rtl-flow
ZYNQ_IMX6_FLOW_ROOT = {LANGGRAPH_DESIGN_ROOT}\zynq-imx6-flow
FPGA_IMX6_FLOW_ROOT = {LANGGRAPH_DESIGN_ROOT}\FPGA-imx6-flow
FPGA_GOLDENREF_ROOT = {LANGGRAPH_DESIGN_ROOT}\fpga-goldenref-flow
DPD_MIG_FLOW_ROOT = {LANGGRAPH_DESIGN_ROOT}\dpd-mig-flow
KICAD_FLOW_ROOT = {LANGGRAPH_DESIGN_ROOT}\kicad-flow
XILINX_SMOD_ROOT = <SMOD 各制式工程的父目录,如 E:\Xilinx_design\smod(dpd-mig-flow 在此下找移植目标)>
EDA / 硬件工具
VIVADO_ROOT = <Vivado 安装根目录,如 C:\Xilinx\Vivado\2018.1 —— 必须实测,不同机器盘符不同>
VIVADO_PATH = <上一行 + \bin\vivado.bat>
SDK_ROOT = <Xilinx SDK 安装根,如 D:\Xilinx\SDK\2018.1;含 bin\bootgen.bat / bin\program_flash.bat>
KICAD_PYTHONPATH = C:\Program Files\KiCad\10.0\bin\Lib\site-packages
MATLAB_ROOT = <MATLAB 安装根目录,如 D:\MATLAB\R2025b>
MATLAB_AGENTIC_ROOT = C:\Users\<user>\.matlab\agentic-toolkits
MATLAB_MCP_EXE = {MATLAB_AGENTIC_ROOT}\bin\matlab-mcp-server.exe
板卡 / 仪器 IP
N9320B_HOST = 192.168.1.147 # Keysight N9320B 频谱仪
SMOD_BOARD_IP = 192.168.1.143 # SMOD 板(ATSC 激励器远程升级)
SMOD imx6 设备与交叉编译 VM(smod_atsc_dev / fpga_update 使用)
SMOD_REPO_ROOT = <ATSC 激励器 Vivado 工程根,同时是 git 仓库根>
SMOD_SSH_USER = root # imx6 SSH/网页登录名(老 dropbear)
SMOD_SSH_PASS = <填写>
SMOD_WEB_USER = <网页 Remote Update 账号,与 SSH 不同>
SMOD_WEB_PASS = <填写>
CROSS_VM_HOST = <交叉编译 VM 的 IP —— 随 VMware 网段变化,必须实测>
CROSS_VM_USER = <填写>
CROSS_VM_PASS = <填写>
MCP 注册配置(真源:MCP_DESIGN_ROOT\mcp_list.md)
MCP_DESIGN_ROOT = E:\MCP_design
每个 MCP 在 Claude Code(~\.claude.json 的 mcpServers)和 Codex(codex mcp add,
读用 codex mcp list --json)中应使用同一份 command/args/env。注意 Codex 侧
~\.codex\config.toml 的 [mcp_servers.*] 节不生效,手写无用;且它的注册存储
不跨 codex-cli 升级存活,所以下表是 Codex 侧唯一可重建的真源,每次同步都要核对。
同步时对两侧用户级注册表取并集,确保任一侧新增的可移植 MCP 都同步到另一侧;
mcp_list.md 继续用于发现“两侧都漏装”的本地工程。托管连接器、插件动态 MCP、
Codex 内置运行时 MCP(node_repl / cua_repl)不进入这个并集。
标准配置如下(路径变量引用上文条目):
| name | command | args | env |
|---|---|---|---|
| vivado-mcp | {CONDA_LANGGRAPH_PYTHON} | E:\MCP_design\vivado-mcp-main\run_server.py(Codex)/ -m vivado_mcp(Claude) | VIVADO_PATH={VIVADO_PATH} |
| mcp_n9320b | {CONDA_LANGGRAPH_PYTHON} | E:\MCP_design\mcp_n9320b\n9320b_mcp.py | N9320B_HOST={N9320B_HOST} |
| cubemx | E:\MCP_design\MCP_cubemx\cubemx-mcp.venv\Scripts\python.exe | E:\MCP_design\MCP_cubemx\cubemx-mcp\server\main.py | PYTHONPATH=E:\MCP_design\MCP_cubemx\cubemx-mcp\server |
| kicad | node | E:\MCP_design\KiCAD-MCP-Server\dist\index.js | NODE_ENV=production; PYTHONPATH={KICAD_PYTHONPATH}; KICAD_AUTO_LAUNCH=false |
| simetrix | \Scripts\mcp-simetrix.exe | SIMETRIX_PROJECT_ROOT=E:\ | |
| matlab | {MATLAB_MCP_EXE} | --matlab-session-mode=existing --extension-file=...\simulink\tools\tools.json |
Codex 侧所有 stdio MCP 额外加 PYTHONIOENCODING=utf-8、PYTHONUTF8=1。
MathWorks matlab MCP 是特例:Claude 侧要设 alwaysLoad=true;Codex 侧本应有
tool_timeout_sec=600 与 env_vars=["WINDIR"],但 codex-cli 0.150.1 无接口可设,
属已知缺口(记录在 tools-sync 的 references/codex_mcp_wanted_keys.json)。
MATLAB 与 Simulink 共用该条目。
本机状态备注(同步时更新)
LAST_SYNC = <日期>
TODO = <遗留事项>