<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>效率工具 on OHTLY Blog</title>
    <link>https://blog.ohtly.com/tags/%E6%95%88%E7%8E%87%E5%B7%A5%E5%85%B7/</link>
    <description>Recent content in 效率工具 on OHTLY Blog</description>
    <generator>Hugo</generator>
    <language>zh-cn</language>
    <lastBuildDate>Wed, 24 Jun 2026 18:26:29 +0800</lastBuildDate>
    <atom:link href="https://blog.ohtly.com/tags/%E6%95%88%E7%8E%87%E5%B7%A5%E5%85%B7/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>同时适配 OpenCode 和 Codex CLI 的配置方法</title>
      <link>https://blog.ohtly.com/posts/2026-06-24-codex-opencode-coexist/</link>
      <pubDate>Wed, 24 Jun 2026 16:47:06 +0800</pubDate>
      <guid>https://blog.ohtly.com/posts/2026-06-24-codex-opencode-coexist/</guid>
      <description>&lt;h2 id=&#34;问题&#34;&gt;&#xA;  问题&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#%e9%97%ae%e9%a2%98&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;链接到标题&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;链接到标题&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;两个终端 AI 编码 agent 各有优势，但配置格式完全不互通。&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;OpenCode&lt;/strong&gt;：配置在 &lt;code&gt;.opencode/&lt;/code&gt; 目录，subagent 用 Markdown + YAML frontmatter，权限控制细粒度&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Codex CLI（OpenAI）&lt;/strong&gt;：配置在 &lt;code&gt;.codex/&lt;/code&gt; 目录，custom agent 用 TOML 格式，权限模型粗粒度&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Skills&lt;/strong&gt; 加载路径两边也不同&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;如果继续分别在 &lt;code&gt;.opencode/skills/&lt;/code&gt; 和 &lt;code&gt;.codex/skills/&lt;/code&gt; 各放一份，维护成本会翻倍。更新一条命令模板要改两个文件，迟早不同步。&lt;/p&gt;&#xA;&lt;p&gt;本文记录了一个实际项目的配置方案：&lt;strong&gt;Skill 放共享层，Agent 放独立层，AGENTS.md 做通用索引&lt;/strong&gt;。&lt;/p&gt;&#xA;&lt;h2 id=&#34;全貌对比&#34;&gt;&#xA;  全貌对比&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#%e5%85%a8%e8%b2%8c%e5%af%b9%e6%af%94&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;链接到标题&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;链接到标题&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;先看两个工具的配置差异：&lt;/p&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;th&gt;项目&lt;/th&gt;&#xA;          &lt;th&gt;OpenCode&lt;/th&gt;&#xA;          &lt;th&gt;Codex CLI&lt;/th&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;Skills 目录&lt;/td&gt;&#xA;          &lt;td&gt;&lt;code&gt;.opencode/skills/&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td&gt;&lt;code&gt;.codex/skills/&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;通用 Skills&lt;/td&gt;&#xA;          &lt;td&gt;&lt;code&gt;.agents/skills/&lt;/code&gt; ✅&lt;/td&gt;&#xA;          &lt;td&gt;&lt;code&gt;.agents/skills/&lt;/code&gt; ✅&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;Subagent 目录&lt;/td&gt;&#xA;          &lt;td&gt;&lt;code&gt;.opencode/agents/*.md&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td&gt;&lt;code&gt;.codex/agents/*.toml&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;项目配置&lt;/td&gt;&#xA;          &lt;td&gt;&lt;code&gt;opencode.json&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td&gt;&lt;code&gt;.codex/config.toml&lt;/code&gt; 或全局&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;权限粒度&lt;/td&gt;&#xA;          &lt;td&gt;YAML permission 细粒度（按工具/按命令）&lt;/td&gt;&#xA;          &lt;td&gt;sandbox_mode 粗粒度（read-only / workspace-write / danger-full-access）&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;AGENTS.md&lt;/td&gt;&#xA;          &lt;td&gt;✅ 根目录&lt;/td&gt;&#xA;          &lt;td&gt;✅ 根目录&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;p&gt;两个关键发现：&lt;/p&gt;</description>
    </item>
    <item>
      <title>Skill &#43; Subagent ：用 OpenCode 替代 Terraform 做阿里云运维</title>
      <link>https://blog.ohtly.com/posts/2026-06-18-opencode-aliyun-subagent/</link>
      <pubDate>Thu, 18 Jun 2026 17:20:28 +0800</pubDate>
      <guid>https://blog.ohtly.com/posts/2026-06-18-opencode-aliyun-subagent/</guid>
      <description>&lt;h2 id=&#34;从-terraform-说起&#34;&gt;&#xA;  从 Terraform 说起&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#%e4%bb%8e-terraform-%e8%af%b4%e8%b5%b7&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;链接到标题&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;链接到标题&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;之前一直用 Terraform 管理阿里云资源：DNS 记录、安全组规则、ECS 查询。&lt;/p&gt;&#xA;&lt;p&gt;Terraform 是优秀的基础设施编排工具，但日常运维中使用它有些痛点：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;操作重&lt;/strong&gt;：改一条 DNS 记录也要跑完改 HCL → plan → apply 全套流程&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;State 维护繁琐&lt;/strong&gt;：即使使用 OSS 后端，每次操作前要 pull state，操作后要 push state。多人操作时还要处理 lock 超时或冲突&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;查询不便&lt;/strong&gt;：查一条 DNS 记录，要么 &lt;code&gt;terraform state list&lt;/code&gt; 再 grep，要么混用 aliyun CLI，反而多一套工具&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;过设计&lt;/strong&gt;：只有几台 ECS、几十条 DNS 记录的场景，Terraform 的&amp;quot;全量声明式&amp;quot;模型过于笨重&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;这些痛点本质上是因为：&lt;strong&gt;Terraform 是为&amp;quot;基础设施全生命周期管理&amp;quot;设计的，不是为&amp;quot;今天改条记录明天加个端口&amp;quot;设计的。&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;而日常运维中后者才是常态。&lt;/p&gt;&#xA;&lt;h2 id=&#34;更轻量的方案aliyun-cli&#34;&gt;&#xA;  更轻量的方案：aliyun CLI&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#%e6%9b%b4%e8%bd%bb%e9%87%8f%e7%9a%84%e6%96%b9%e6%a1%88aliyun-cli&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;链接到标题&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;链接到标题&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;aliyun CLI 一条命令就能完成 Terraform 改 HCL → plan → apply 三件事：&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# 查 DNS 记录&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;aliyun alidns DescribeDomainRecords --DomainName example.com&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# 添加 A 记录&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;aliyun alidns AddDomainRecord --DomainName example.com --RR www --Type A --Value 1.2.3.4&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# 更新 A 记录&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;aliyun alidns UpdateDomainRecord --RecordId &amp;lt;id&amp;gt; --RR www --Type A --Value 5.6.7.8&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# 查安全组规则&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;aliyun ecs DescribeSecurityGroupAttribute --SecurityGroupId &amp;lt;sg-id&amp;gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;找到正确的命令和参数比跑 Terraform 快得多。但问题在于：&lt;strong&gt;每次都记不住这些命令的参数格式。&lt;/strong&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>OpenCode 静态记忆架构从零配置指南</title>
      <link>https://blog.ohtly.com/posts/2026-06-18-opencode-static-memory-guide/</link>
      <pubDate>Thu, 18 Jun 2026 15:02:38 +0800</pubDate>
      <guid>https://blog.ohtly.com/posts/2026-06-18-opencode-static-memory-guide/</guid>
      <description>&lt;h2 id=&#34;问题&#34;&gt;&#xA;  问题&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#%e9%97%ae%e9%a2%98&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;链接到标题&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;链接到标题&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;每次启动 OpenCode，agent 对你的项目结构、主机信息、常用操作一无所知。&lt;/p&gt;&#xA;&lt;p&gt;今天查过的主机列表，明天又要重新解释。这周写过的部署流程，下周 agent 又忘了。每次都在重复——低效且容易遗漏。&lt;/p&gt;&#xA;&lt;p&gt;解决思路是用配置文件构建&amp;quot;静态记忆&amp;quot;：一次配置，提交 git，每个新会话自动生效。&lt;/p&gt;&#xA;&lt;h2 id=&#34;什么是静态记忆架构&#34;&gt;&#xA;  什么是静态记忆架构&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#%e4%bb%80%e4%b9%88%e6%98%af%e9%9d%99%e6%80%81%e8%ae%b0%e5%bf%86%e6%9e%b6%e6%9e%84&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;链接到标题&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;链接到标题&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;静态记忆 = 提交到 git 的配置文件，OpenCode 每次启动自动读取或按需加载。&lt;/p&gt;&#xA;&lt;p&gt;它和&amp;quot;动态记忆&amp;quot;（MCP 插件、向量数据库）的区别：静态记忆没有运行时依赖，不消耗额外服务，修改就是改 .md 文件提交 git。&lt;/p&gt;&#xA;&lt;p&gt;完整架构由四层组成：&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;~/.config/opencode/AGENTS.md          ← 全局层（个人规则）&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;./AGENTS.md                            ← 项目层（路由 + 懒加载规则）&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;.opencode/opencode.json                ← 配置层（instructions + 权限）&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;.opencode/skills/&amp;lt;name&amp;gt;/SKILL.md       ← 技能层（按需加载的工作流）&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;docs/*.md                              ← 内容层（按需读取的知识库）&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;下面逐层搭建。&lt;/p&gt;&#xA;&lt;h2 id=&#34;第一层全局-agentsmd&#34;&gt;&#xA;  第一层：全局 AGENTS.md&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#%e7%ac%ac%e4%b8%80%e5%b1%82%e5%85%a8%e5%b1%80-agentsmd&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;链接到标题&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;链接到标题&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;全局规则放在 &lt;code&gt;~/.config/opencode/AGENTS.md&lt;/code&gt;，所有项目都生效，不提交 git。&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-markdown&#34; data-lang=&#34;markdown&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;用中文回答问题。&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;回答简洁，不废话，不说&amp;#34;好的&amp;#34;、&amp;#34;明白了&amp;#34;等开场白。&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;适合放这里的内容：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;你的名字和称呼方式&lt;/li&gt;&#xA;&lt;li&gt;语言偏好&lt;/li&gt;&#xA;&lt;li&gt;通用的回复风格要求&lt;/li&gt;&#xA;&lt;li&gt;个人常用快捷键或工作流偏好&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;第二层项目-agentsmd&#34;&gt;&#xA;  第二层：项目 AGENTS.md&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#%e7%ac%ac%e4%ba%8c%e5%b1%82%e9%a1%b9%e7%9b%ae-agentsmd&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;链接到标题&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;链接到标题&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;项目根目录的 &lt;code&gt;AGENTS.md&lt;/code&gt; 是静态记忆的核心。运行 &lt;code&gt;opencode /init&lt;/code&gt; 可以自动生成骨架。&lt;/p&gt;</description>
    </item>
    <item>
      <title>macOS 下用函数快速启动 VS Code SSH Remote</title>
      <link>https://blog.ohtly.com/posts/2026-06-14-rcode/</link>
      <pubDate>Sun, 14 Jun 2026 19:59:37 +0800</pubDate>
      <guid>https://blog.ohtly.com/posts/2026-06-14-rcode/</guid>
      <description>&lt;h2 id=&#34;背景&#34;&gt;&#xA;  背景&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#%e8%83%8c%e6%99%af&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;链接到标题&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;链接到标题&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;日常开发免不了频繁通过 VS Code 的 Remote SSH 连接远程服务器。每次都要敲：&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;code --remote ssh-remote+some-host /home/user/project&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;路径要记、主机名要打、目录要拼，烦。&lt;/p&gt;&#xA;&lt;p&gt;能不能 &lt;code&gt;rcode my-server&lt;/code&gt; 就完事？&lt;/p&gt;&#xA;&lt;h2 id=&#34;其他方案对比&#34;&gt;&#xA;  其他方案对比&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#%e5%85%b6%e4%bb%96%e6%96%b9%e6%a1%88%e5%af%b9%e6%af%94&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;链接到标题&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;链接到标题&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;先看看除了敲命令，还有哪些方式打开 Remote SSH：&lt;/p&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;th&gt;方案&lt;/th&gt;&#xA;          &lt;th&gt;操作步骤&lt;/th&gt;&#xA;          &lt;th&gt;评价&lt;/th&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;VS Code 命令面板&lt;/td&gt;&#xA;          &lt;td&gt;&lt;code&gt;F1&lt;/code&gt; → &amp;ldquo;Remote-SSH: Connect to Host&amp;hellip;&amp;rdquo; → 选主机 → &lt;code&gt;File &amp;gt; Open Folder&lt;/code&gt; → 选目录&lt;/td&gt;&#xA;          &lt;td&gt;点选四五次，慢&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;本地终端 &lt;code&gt;code --remote&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td&gt;&lt;code&gt;code --remote ssh-remote+some-host /home/user/project&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td&gt;可用，但路径要自己记&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;macOS &lt;code&gt;open&lt;/code&gt; 打开 URL&lt;/td&gt;&#xA;          &lt;td&gt;&lt;code&gt;open vscode://vscode-remote/ssh-remote+some-host/home/user/project&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td&gt;可脚本化，但路径写死&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;Markdown/HTML 中放 VS Code 链接&lt;/td&gt;&#xA;          &lt;td&gt;在文档里写 &lt;code&gt;vscode://vscode-remote/ssh-remote+some-host/home/user/project&lt;/code&gt;，浏览器点击触发&lt;/td&gt;&#xA;          &lt;td&gt;适合文档入口，但仍然路径写死&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;终端别名/函数&lt;/td&gt;&#xA;          &lt;td&gt;本文方案&lt;/td&gt;&#xA;          &lt;td&gt;一行搞定&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;p&gt;这里容易踩一个坑：&lt;code&gt;code&lt;/code&gt; 是本地 macOS 上的 VS Code CLI，不是远程服务器上的命令。已经 SSH 登录到远程机器后再敲 &lt;code&gt;code .&lt;/code&gt;，通常只会得到 &lt;code&gt;command not found&lt;/code&gt;。&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
